/* ═══════════════════════════════════════════════════════════════
   MPH SERVICES — IDENTITY STYLESHEET v3.1.0 (class-scoped, DUAL-guarded: legacy selectors retained pending per-widget retirement)
   IT-360 Group · replaces all v1.x–v2.x iterations
   POLICY: Section A = effects Elementor cannot do natively (permanent).
   Section B = compensations for Elementor 4 importer stripping widget
   classes/settings — each rule here can be retired once its value is
   baked into the widget natively in the editor (see CHANGELOG-MPH.md).
   ═══════════════════════════════════════════════════════════════ */
:root{--mph-navy:#042B56;--mph-navy-deep:#032042;--mph-ink:#021732;--mph-steel:#525557;--mph-sky:#8FB0D4;--mph-glow:#3E6FA8;--mph-paper:#F6F8FA;--mph-line:#DCE1E7;--mph-ease:cubic-bezier(.2,.65,.25,1);--mph-mono:'IBM Plex Mono',monospace;--mph-disp:'Montserrat',sans-serif}
html{scroll-behavior:smooth}body{background:var(--mph-paper)}

/* ═══ SECTION A — PERMANENT EFFECTS ═══ */
/* A1 gear signature */
.mph-gear-svg{width:100%;height:auto;animation:mphspin 110s linear infinite}
@keyframes mphspin{to{transform:rotate(360deg)}}
body .mph-hero .mph-gearwrap{position:absolute;right:-15vw;top:50%;transform:translateY(-50%);width:min(58vw,800px);opacity:.45;z-index:0;pointer-events:none;color:var(--mph-sky)}
body .mph-c-info .mph-gearwrap{position:absolute;right:-140px;bottom:-140px;top:auto;transform:none;width:340px;opacity:.09;color:var(--mph-navy);pointer-events:none}
body .mph-band .mph-gearwrap,body .mph-cta-band .mph-gearwrap,body .mph-emg .mph-gearwrap{position:absolute;right:-200px;bottom:-180px;top:auto;transform:none;width:560px;opacity:.1;color:#fff;pointer-events:none}
body .elementor-widget-html:has(.mph-gearwrap){position:static !important}
body .mph-hero .elementor-widget-html{position:static !important}
body .mph-hero,body .mph-band,body .mph-c-info,body .mph-cta-band,body .mph-emg{position:relative !important}
.mph-caps{position:relative !important;overflow:hidden}
.mph-caps::before{content:"";position:absolute;left:-270px;top:110px;width:560px;height:560px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none' stroke='%23042B56' stroke-width='2'><circle cx='200' cy='200' r='150' stroke-dasharray='3 6'/><circle cx='200' cy='200' r='120'/><circle cx='200' cy='200' r='58'/><circle cx='200' cy='200' r='18'/><path d='M200 50l-15 26h30z'/><path d='M200 350l-15-26h30z'/><path d='M50 200l26-15v30z'/><path d='M350 200l-26-15v30z'/><path d='M94 94l8 29 21-21z'/><path d='M306 306l-8-29-21 21z'/><path d='M306 94l-29 8 21 21z'/><path d='M94 306l29-8-21-21z'/><line x1='200' y1='30' x2='200' y2='370' stroke-dasharray='12 8' opacity='.5'/><line x1='30' y1='200' x2='370' y2='200' stroke-dasharray='12 8' opacity='.5'/></svg>") center/contain no-repeat;opacity:.07;pointer-events:none;animation:mphspin 160s linear infinite reverse}
.mph-band{overflow:hidden}
.mph-band::after{content:"";position:absolute;right:-240px;bottom:-180px;width:620px;height:620px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none' stroke='%23ffffff' stroke-width='2'><circle cx='200' cy='200' r='150' stroke-dasharray='3 6'/><circle cx='200' cy='200' r='120'/><circle cx='200' cy='200' r='58'/><circle cx='200' cy='200' r='18'/><path d='M200 50l-15 26h30z'/><path d='M200 350l-15-26h30z'/><path d='M50 200l26-15v30z'/><path d='M350 200l-26-15v30z'/><path d='M94 94l8 29 21-21z'/><path d='M306 306l-8-29-21 21z'/><path d='M306 94l-29 8 21 21z'/><path d='M94 306l29-8-21-21z'/></svg>") center/contain no-repeat;opacity:.1;pointer-events:none;animation:mphspin 140s linear infinite;z-index:0}
body .mph-band > .e-con-inner{position:relative;z-index:1}
.mph-progcog{position:fixed;right:22px;bottom:22px;width:52px;height:52px;z-index:150;opacity:.85;pointer-events:none;color:var(--mph-navy);filter:drop-shadow(0 4px 10px rgba(2,23,50,.3))}
.mph-progcog .mph-gear-svg{animation:none;stroke-width:11}
/* A2 hero atmosphere */
.mph-hero{min-height:960px !important;display:flex !important;align-items:center !important;overflow:hidden !important;color:#EAF0F6}
.mph-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(2,23,50,.96) 0%,rgba(3,32,66,.84) 46%,rgba(4,43,86,.5) 100%);z-index:0}
.mph-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(1000px 560px at 76% 44%,rgba(62,111,168,.34),transparent 62%);animation:mphbreathe 9s ease-in-out infinite alternate;z-index:0}
@keyframes mphbreathe{from{opacity:.45}to{opacity:1}}
.mph-subhero{min-height:430px !important}
body .mph-hero-inner{position:static !important;padding:0}
body .mph-hero-inner > .e-con-inner{position:static !important;padding-top:clamp(80px,9vw,140px);padding-bottom:clamp(70px,8vw,120px)}
.mph-eyebrow{font-family:var(--mph-mono);font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--mph-sky);display:flex;align-items:center;gap:14px;margin-bottom:22px}
.mph-eyebrow::before{content:"";width:44px;height:1px;background:var(--mph-sky)}
/* A3 marquee */
.mph-seam{margin-top:-72px;position:relative;z-index:5}
.mph-marquee{background:#fff;box-shadow:0 30px 70px -30px rgba(2,23,50,.45);border:1px solid rgba(4,43,86,.08);padding:24px 0;overflow:hidden;position:relative}
.mph-marquee::before,.mph-marquee::after{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}
.mph-marquee::before{left:0;background:linear-gradient(90deg,#fff,transparent)}
.mph-marquee::after{right:0;background:linear-gradient(-90deg,#fff,transparent)}
.mph-track{display:flex;width:max-content;animation:mphscrollx 40s linear infinite}
.mph-marquee:hover .mph-track{animation-play-state:paused}
.mph-track span{font-family:var(--mph-mono);font-size:12.5px;letter-spacing:2.5px;text-transform:uppercase;color:var(--mph-steel);white-space:nowrap;padding-right:52px}
.mph-track span::after{content:"⚙";font-size:11px;color:var(--mph-navy);opacity:.55;margin-left:52px}
@keyframes mphscrollx{to{transform:translateX(-50%)}}
/* A4 capability row hover flood */
body .mph-cap-row{display:flex !important;align-items:center !important;min-height:0 !important;padding:28px 20px;border-bottom:1px solid var(--mph-line);position:relative;isolation:isolate;cursor:pointer;transition:color .25s}
.mph-cap-row:first-of-type{border-top:1px solid var(--mph-line)}
.mph-cap-row::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,var(--mph-navy),var(--mph-navy-deep));transform:scaleY(0);transform-origin:bottom;transition:transform .38s var(--mph-ease);z-index:-1}
.mph-cap-row:hover::before{transform:none;transform-origin:top}
body .mph-cap-row > .e-con-inner{display:grid !important;grid-template-columns:116px 1fr 1.45fr 56px;gap:26px;align-items:center !important;width:100% !important}
body .mph-cap-row .elementor-widget{margin:0 !important}
.mph-idx{font-family:var(--mph-disp);font-weight:800;font-size:42px;line-height:1;color:transparent;-webkit-text-stroke:1.3px var(--mph-navy);transition:.25s}
.mph-cap-row:hover .mph-idx{color:#fff;-webkit-text-stroke:0}
.mph-idx small{display:block;font-family:var(--mph-mono);-webkit-text-stroke:0;color:var(--mph-steel);font-size:10px;letter-spacing:2px;margin-top:6px}
.mph-cap-row:hover .mph-idx small{color:var(--mph-sky)}
body .mph-cap-title .elementor-heading-title,body .mph-caps .mph-cap-row .elementor-widget-heading .elementor-heading-title,
body .mph-cap-row .elementor-widget-heading .elementor-heading-title{font-family:var(--mph-disp) !important;font-weight:700 !important;font-size:18.5px !important;text-transform:uppercase !important;letter-spacing:.3px;color:#16232F !important;transition:color .25s}
body .mph-cap-row:hover .mph-cap-title .elementor-heading-title,body .mph-caps .mph-cap-row:hover .elementor-widget-heading .elementor-heading-title,body .mph-cap-row:hover .elementor-widget-heading .elementor-heading-title{color:#fff !important}
body .mph-cap-desc p,body .mph-cap-row .elementor-widget-text-editor p{font-size:14.5px !important;color:#4A5560 !important;margin:0 !important;transition:color .25s;max-width:none}
body .mph-cap-row:hover .mph-cap-desc p,body .mph-cap-row:hover .elementor-widget-text-editor p{color:#C7D4E2 !important}
.mph-go{font-size:24px;color:var(--mph-navy);justify-self:end;transition:transform .3s var(--mph-ease),color .25s}
.mph-cap-row:hover .mph-go{transform:translateX(8px);color:#fff}
/* A5 photo duotone hover */
.mph-shot{position:relative;overflow:hidden;box-shadow:0 24px 50px -26px rgba(3,32,66,.4);width:100% !important;max-width:100% !important;display:block !important}
body .mph-shot > .e-con-inner{width:100%;padding:0}
body .mph-shot .elementor-widget-image,body .mph-shot .elementor-widget-image .elementor-widget-container,body .mph-shot .elementor-widget-image img{width:100% !important;height:100%}
body .mph-shot img{aspect-ratio:4/3;object-fit:cover;filter:grayscale(1) brightness(.92);transform:scale(1.04);transition:filter .6s var(--mph-ease),transform .8s var(--mph-ease)}
.mph-shot::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,43,86,.42),rgba(4,43,86,.12));mix-blend-mode:multiply;transition:opacity .6s;pointer-events:none}
.mph-shot:hover img{filter:grayscale(0) brightness(1);transform:scale(1.1)}
.mph-shot:hover::after{opacity:.35}
.mph-shot-tag{position:absolute;left:18px;bottom:16px;z-index:2;font-family:var(--mph-mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#fff;background:rgba(2,23,50,.72);padding:7px 12px}
body .mph-pframe{position:relative;overflow:hidden;box-shadow:0 40px 90px -40px rgba(0,0,0,.6);height:100% !important;align-self:stretch}
body .mph-pframe > .e-con-inner{height:100% !important;padding:0 !important}
body .mph-pframe .elementor-widget-image,body .mph-pframe .elementor-widget-image .elementor-widget-container{height:100% !important}
body .mph-pframe img{width:100% !important;height:100% !important;min-height:420px;object-fit:cover;filter:grayscale(.35)}
.mph-pframe::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,32,66,.5),rgba(3,32,66,.08));mix-blend-mode:multiply;pointer-events:none}
.mph-ptag{position:absolute;bottom:14px;left:14px;z-index:2;background:rgba(2,23,50,.8);color:#C9D6E4;font-family:var(--mph-mono);font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;padding:7px 12px}
/* A6 misc chrome */
.mph-dim{display:flex;align-items:center;color:var(--mph-steel);font-family:var(--mph-mono);font-size:11px;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:26px}
.mph-dim::before,.mph-dim::after{content:"";flex:1;height:1px;background:var(--mph-line)}
.mph-dim::before{margin-right:14px}.mph-dim::after{margin-left:14px}
.mph-dim-dark{color:var(--mph-sky)}.mph-dim-dark::before,.mph-dim-dark::after{background:#1E4470}
.mph-spec{margin-top:36px;display:flex;flex-wrap:wrap;row-gap:20px}
.mph-spec div{padding:0 clamp(20px,3vw,42px);border-left:1px solid rgba(255,255,255,.18)}
.mph-spec div:first-child{padding-left:0;border-left:0}
.mph-spec b{display:block;font-family:var(--mph-disp);font-weight:800;font-size:clamp(22px,2.4vw,30px);color:#fff}
.mph-spec span{font-family:var(--mph-mono);font-size:10.5px;letter-spacing:2px;color:var(--mph-sky);text-transform:uppercase}
.mph-counters{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);margin-top:32px}
.mph-counters div{background:rgba(2,23,50,.5);padding:22px 24px}
.mph-counters b{font-family:var(--mph-disp);font-weight:800;font-size:clamp(24px,2.4vw,30px);color:#fff;display:block}
.mph-counters span{font-family:var(--mph-mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--mph-sky)}
.mph-contact-list{list-style:none;margin:0;padding:0;position:relative;z-index:1}
.mph-contact-list li{padding:14px 0;border-bottom:1px solid var(--mph-line);display:flex;gap:18px;font-size:15px}
.mph-contact-list li b{font-family:var(--mph-mono);font-weight:500;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--mph-steel);min-width:88px;padding-top:4px}
.mph-also{font-family:var(--mph-mono);font-size:12px;letter-spacing:1px;color:var(--mph-steel);flex:1;min-width:0}
/* A7 stuck entrance animations neutralised (importer defect) */
body .elementor-invisible{visibility:visible !important;opacity:1 !important;animation:none !important}

/* ═══ SECTION B — IMPORT COMPENSATIONS (retire as values go native) ═══ */
/* B1 layout: boxed containers wrap children in .e-con-inner */
body .mph-header{background:#fff !important;backdrop-filter:none !important;box-shadow:0 1px 0 rgba(4,43,86,.1);padding:12px 0;position:relative;z-index:300}
body .mph-header > .e-con-inner{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;flex-wrap:nowrap !important;gap:24px;width:100%}
body header.elementor-location-header{position:relative;z-index:300}
body .mph-logo,body header.elementor-location-header .elementor-widget-image{width:auto !important;max-width:240px;flex-shrink:0}
body .mph-logo img,body header.elementor-location-header .elementor-widget-image img{height:80px !important;width:auto !important;max-width:none !important;filter:none !important;box-shadow:none !important;background:none !important}
body .mph-header.elementor-sticky--effects .mph-logo img,.elementor-sticky--effects .mph-logo img,body .elementor-sticky--effects header .elementor-widget-image img{height:60px !important}
body .mph-nav,body header.elementor-location-header .elementor-widget-n-menu,body header.elementor-location-header .elementor-widget-nav-menu{flex-grow:1}
body .mph-nav .elementor-nav-menu a,body .mph-header .elementor-nav-menu a{font-weight:600;font-size:14.5px;color:#16232F}
body .mph-nav .elementor-item:after,body .mph-header .elementor-item:after{background:var(--mph-navy) !important}
body .mph-header .mph-btn,body header.elementor-location-header .elementor-widget-button{flex-shrink:0;width:auto !important}
/* mobile nav — full-screen overlay (tuned 2026-07-07: right burger, opaque bg, centred, even spacing, white X, larger logo) */
@media(max-width:1024px){
/* hide header CTA + tighten + centre + edge padding */
body .mph-header .mph-btn,body .mph-header .elementor-widget-button{display:none !important}
body .mph-header{padding:10px 0 !important}
body .mph-header > .e-con-inner{position:static !important;align-items:center !important;padding-left:18px !important;padding-right:18px !important}
body .mph-header .elementor-widget-nav-menu,body .mph-header .elementor-widget-nav-menu > .elementor-widget-container{position:static !important;display:flex !important;flex-direction:row !important;justify-content:flex-end !important;align-items:center !important}
body .mph-header .elementor-menu-toggle{position:absolute !important;right:18px !important;top:50% !important;transform:translateY(-50%) !important;margin:0 !important;color:var(--mph-navy) !important;background:transparent !important;box-shadow:none !important;border:0 !important;padding:0 !important;z-index:99999 !important}
body .mph-header .elementor-menu-toggle svg,body .mph-header .elementor-menu-toggle i{font-size:34px !important;width:34px !important;height:34px !important;fill:var(--mph-navy)}
/* white, larger X when the overlay is open */
body .mph-header .elementor-menu-toggle.elementor-active{color:#fff !important}
body .mph-header .elementor-menu-toggle.elementor-active svg,body .mph-header .elementor-menu-toggle.elementor-active i{fill:#fff !important;color:#fff !important;font-size:42px !important;width:42px !important;height:42px !important}
/* slightly larger mobile logo */
body .mph-logo img,body header.elementor-location-header .elementor-widget-image img{height:78px !important}
/* full-screen overlay when open — opaque, vertically + horizontally centred */
body .mph-nav .elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown,
body .mph-nav .elementor-nav-menu--dropdown[aria-hidden="false"]{position:fixed !important;inset:0 !important;top:0 !important;left:0 !important;width:100vw !important;height:100dvh !important;min-height:100vh !important;max-height:none !important;margin:0 !important;padding:24px !important;border:0 !important;border-radius:0 !important;background:#081527 !important;display:flex !important;flex-direction:column;justify-content:center !important;align-items:center !important;overflow:auto !important;z-index:99998 !important}
body .mph-nav .elementor-nav-menu--dropdown ul.elementor-nav-menu{display:flex !important;flex-direction:column;align-items:center;justify-content:center;gap:0;width:100%;max-width:420px;margin:0 auto !important;padding:0 !important;border:0}
body .mph-nav .elementor-nav-menu--dropdown li.menu-item{width:100%;margin:0 !important;padding:0 !important;border:0 !important}
body .mph-nav .elementor-nav-menu--dropdown a.elementor-item{font-family:var(--mph-disp) !important;font-weight:800 !important;font-size:22px !important;line-height:1 !important;text-transform:uppercase !important;letter-spacing:.5px;color:#fff !important;text-align:center !important;padding:20px 12px !important;margin:0 !important;border:0 !important;background:transparent !important;white-space:normal !important;display:block !important;width:100% !important}
body .mph-nav .elementor-nav-menu--dropdown a.elementor-item:hover,body .mph-nav .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active{color:var(--mph-sky) !important;background:transparent !important}
}
/* edge gutter — matches mockup .wrap clamp(20,4vw,32); no text hugs the screen edge on mobile/tablet */
@media(max-width:1024px){
body .elementor > .e-con > .e-con-inner{padding-left:clamp(20px,4vw,32px) !important;padding-right:clamp(20px,4vw,32px) !important}
body .mph-band-grid > .e-con-inner{padding-left:0 !important;padding-right:0 !important}
}
body .mph-hero-ctas > .e-con-inner{display:flex !important;flex-direction:row !important;gap:14px;flex-wrap:wrap}
body .mph-strip-row > .e-con-inner{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:20px !important;width:100% !important;max-width:100% !important}
body .mph-strip-row{display:block !important}
body .mph-strip-row > .e-con-inner > .e-con{width:100% !important;max-width:100% !important;min-width:0 !important;flex:1 1 0% !important}
body .mph-band-grid{display:block !important}
/* band-grid two-col compensation (relocated 2026-07-07: was after @media, overrode mobile stack) */
body .mph-band-grid > .e-con-inner{display:grid !important;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,76px);align-items:center;width:100%;margin:0 auto !important;padding-left:clamp(20px,4vw,32px);padding-right:clamp(20px,4vw,32px)}
body .mph-band-grid > .e-con-inner > .e-con{flex:1 1 0% !important;width:100% !important;max-width:100% !important}


body .mph-card{display:block !important;padding:0 !important;background:#fff;box-shadow:0 40px 100px -40px rgba(2,23,50,.4);border:1px solid rgba(4,43,86,.08)}
body .mph-card > .e-con-inner{display:grid !important;grid-template-columns:1fr 1.1fr;padding:0 !important;align-items:stretch !important;gap:0 !important;width:100% !important;max-width:100% !important}
body .mph-card > .e-con-inner > .e-con{margin:0 !important;width:100% !important;max-width:100% !important;flex:1 1 0% !important}
body .mph-steps-grid{display:block !important}
body .mph-steps-grid > .e-con-inner{display:grid !important;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:44px;width:100% !important}
body .mph-steps-grid > .e-con-inner > .e-con{flex:1 1 0% !important}
body .mph-emg-inner{display:block !important}
body .mph-emg-inner > .e-con-inner{display:flex !important;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap;width:100%}
body .mph-svc-layout{display:block !important}
body .mph-svc-layout > .e-con-inner{display:grid !important;grid-template-columns:264px 1fr;gap:56px;align-items:start;width:100%}
body .mph-footer{display:block !important;background:var(--mph-ink);color:#7E93AA;padding:30px 0;font-family:var(--mph-mono);font-size:12px}
body .mph-footer > .e-con-inner{display:flex !important;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%}
body .mph-footer p{margin:0 !important;color:#7E93AA !important;font-family:var(--mph-mono) !important;font-size:12px !important}
body .mph-cap-more{display:block !important}
body .mph-cap-more > .e-con-inner{display:flex !important;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;width:100%}

body.page-id-41 .mph-contact-sec{padding-top:0 !important}
body.page-id-41 .mph-contact-sec .mph-card{margin-top:-130px !important;position:relative;z-index:5}
/* B2 typography: widget classes stripped by importer — structural bindings */
body .mph-h1 .elementor-heading-title,body .mph-hero-inner .elementor-widget-heading .elementor-heading-title{color:#fff !important;font-family:var(--mph-disp) !important;font-weight:900 !important;text-transform:uppercase !important;font-size:clamp(38px,6vw,88px) !important;line-height:.98 !important;letter-spacing:-1px !important}
body .mph-h1 .elementor-heading-title span,body .mph-hero-inner .elementor-widget-heading .elementor-heading-title span{color:transparent !important;-webkit-text-stroke:1.5px var(--mph-sky)}
body .mph-hero-sub p,body .mph-hero-inner .elementor-widget-text-editor p{color:#B9C9DA !important;font-size:clamp(15.5px,1.4vw,19px) !important;max-width:54ch}
body .mph-btn .elementor-button,body .mph-hero-ctas .elementor-widget-button .elementor-button,body .mph-header .elementor-widget-button .elementor-button,body .mph-cta-band .elementor-widget-button .elementor-button{background-color:var(--mph-navy) !important;color:#fff !important;border-radius:0 !important;padding:14px 28px;font-family:var(--mph-disp);font-weight:700;font-size:13px;letter-spacing:.6px;text-transform:uppercase}
body .mph-btn-ghost .elementor-button,body .mph-hero-ctas .elementor-widget-button:last-of-type .elementor-button,body .mph-emg .elementor-widget-button .elementor-button{background:transparent !important;border:1px solid rgba(255,255,255,.42) !important;color:#fff !important;border-radius:0 !important}
body .mph-btn-ghost .elementor-button:hover,body .mph-hero-ctas .elementor-widget-button:last-of-type .elementor-button:hover,body .mph-emg .elementor-widget-button .elementor-button:hover{border-color:#fff !important;background:rgba(255,255,255,.09) !important}
body .mph-h2 .elementor-heading-title,body .mph-caps .elementor-widget-heading .elementor-heading-title,body .mph-story .elementor-widget-heading .elementor-heading-title,body .mph-steps .elementor-widget-heading .elementor-heading-title,body .mph-svc-layout .elementor-widget-heading .elementor-heading-title{font-family:var(--mph-disp) !important;font-weight:800 !important;text-transform:uppercase !important;font-size:clamp(28px,3.6vw,48px) !important;line-height:1.05 !important;color:var(--mph-navy) !important;letter-spacing:-.5px}
body .mph-h2-light .elementor-heading-title,body .mph-band-h .elementor-heading-title,body .mph-band .elementor-widget-heading .elementor-heading-title,body .mph-cta-band .elementor-widget-heading .elementor-heading-title,body .mph-emg .elementor-widget-heading .elementor-heading-title{font-family:var(--mph-disp) !important;font-weight:800 !important;text-transform:uppercase !important;font-size:clamp(26px,2.7vw,40px) !important;line-height:1.05 !important;color:#fff !important;letter-spacing:-.5px}
body .mph-c-info .mph-h2 .elementor-heading-title,body .mph-c-info .elementor-widget-heading .elementor-heading-title,body .mph-c-info h2.elementor-heading-title{font-family:var(--mph-disp) !important;font-weight:800 !important;text-transform:uppercase !important;font-size:clamp(26px,1.8vw,34px) !important;line-height:1.15 !important;margin:0 !important;letter-spacing:-.2px;color:var(--mph-navy) !important}
body .mph-c-info .mph-h2,body .mph-c-info .elementor-widget-heading{margin:0 0 34px 0 !important}
body .mph-step-h .elementor-heading-title,body .mph-step .elementor-widget-heading .elementor-heading-title{font-size:16.5px !important;font-weight:700 !important;color:#16232F !important}
body .mph-step-p p,body .mph-step .elementor-widget-text-editor p{font-size:14px !important;color:#4A5560 !important;margin:0 !important}
body .mph-lede p,body .mph-lede-p p,body .mph-caps > .e-con-inner > .elementor-widget-text-editor p,body .mph-story .elementor-widget-text-editor p{color:#3A4652;font-size:17px}
body .mph-band .elementor-widget-text-editor p,body .mph-cta-band .elementor-widget-text-editor p,body .mph-emg .elementor-widget-text-editor p,body .mph-band-p p{color:#B9C9DA !important;margin-bottom:16px}
body .mph-btn-ghost-dark .elementor-button,body .mph-cap-more .elementor-widget-button .elementor-button{background:none !important;border:0 !important;padding:0 !important;color:var(--mph-navy) !important;font-size:13.5px;letter-spacing:.5px;box-shadow:none !important;font-family:var(--mph-disp);font-weight:700;text-transform:uppercase}
/* B3 services register (icon-list class stripped) */
.mph-svc-layout{padding:clamp(70px,8vw,100px) 0}
.mph-toc,body .mph-svc-layout .elementor-widget-table-of-contents{position:sticky;top:130px}
.mph-svcat{padding:40px 0 46px;border-bottom:1px solid var(--mph-line)}
.mph-svchead{display:flex;gap:24px;align-items:baseline;margin-bottom:22px}
.mph-svc-h{font-family:var(--mph-disp);font-weight:800;text-transform:uppercase;font-size:clamp(21px,2.2vw,30px);color:var(--mph-navy) !important;margin:0}
.mph-ref{font-family:var(--mph-mono);font-size:10.5px;letter-spacing:2px;color:var(--mph-steel)}
.mph-step-n{font-family:var(--mph-disp);font-weight:800;font-size:42px;line-height:1;color:transparent;-webkit-text-stroke:1.3px var(--mph-navy);display:block;margin-bottom:14px}
body .mph-svcitems .elementor-icon-list-items,body .mph-svcat .elementor-icon-list-items{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 26px}
body .mph-svcitems .elementor-icon-list-item,body .mph-svcat .elementor-icon-list-item{border-bottom:1px dashed var(--mph-line);padding:9px 0}
body .mph-svcitems .elementor-icon-list-icon i,body .mph-svcitems .elementor-icon-list-icon svg,body .mph-svcat .elementor-icon-list-icon i,body .mph-svcat .elementor-icon-list-icon svg{color:var(--mph-navy) !important;fill:var(--mph-navy) !important;font-size:12px !important}
body .mph-svcitems .elementor-icon-list-text,body .mph-svcat .elementor-icon-list-text{font-size:14.5px !important;color:#38434F !important}
.mph-svc-photos{margin:52px 0}
/* B4 sections chrome */
.mph-caps{padding:clamp(80px,10vw,120px) 0;background:linear-gradient(var(--mph-paper) 0%,#EEF2F6 100%)}
.mph-strip{background:#EEF2F6;padding:0 0 clamp(80px,10vw,110px)}
.mph-band{background:linear-gradient(150deg,var(--mph-navy) 0%,var(--mph-ink) 90%);clip-path:polygon(0 0,100% 5vw,100% 100%,0 100%);margin-top:-5vw;padding:calc(clamp(80px,10vw,120px) + 5vw) 0 clamp(150px,15vw,210px) !important;color:#DCE4EC}
.mph-story{padding:clamp(80px,9vw,120px) 0}
.mph-steps{background:#EEF2F6;padding:clamp(80px,9vw,120px) 0}
.mph-step{background:#fff;border:1px solid var(--mph-line);padding:30px 26px;transition:transform .3s var(--mph-ease),box-shadow .3s var(--mph-ease)}
.mph-step:hover{transform:translateY(-6px);box-shadow:0 26px 50px -26px rgba(4,43,86,.3)}
.mph-cta-band{background:linear-gradient(150deg,var(--mph-navy),var(--mph-ink));padding:clamp(60px,7vw,90px) 0;text-align:center;color:#fff;overflow:hidden}
.mph-emg{background:linear-gradient(150deg,var(--mph-navy),var(--mph-ink));padding:clamp(50px,6vw,70px) 0;color:#fff;overflow:hidden}
.mph-contact-sec{padding:clamp(70px,9vw,110px) 0}
body .mph-c-info{background:linear-gradient(160deg,#F2F5F8,#E9EEF3);padding:0 !important;height:100% !important;overflow:hidden}
body .mph-c-form{padding:0 !important;height:100% !important}
body .mph-c-info > .e-con-inner,body .mph-c-form > .e-con-inner{padding:clamp(40px,4vw,56px) !important;height:100%;display:flex;flex-direction:column;justify-content:flex-start !important}
body .mph-c-info .elementor-widget,body .mph-c-form .elementor-widget{margin:0 !important}
body .mph-form .elementor-field-group,body .mph-c-form .elementor-field-group{margin-bottom:14px !important}
body .mph-form .elementor-field-group label,body .mph-c-form .elementor-field-group label{margin-bottom:6px !important;display:block;font-family:var(--mph-mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--mph-steel)}
body .mph-form .elementor-field,body .mph-c-form .elementor-field{border:1px solid var(--mph-line) !important;background:var(--mph-paper) !important;border-radius:0 !important;padding:13px 15px}
body .mph-form .elementor-field:focus,body .mph-c-form .elementor-field:focus{border-color:var(--mph-glow);box-shadow:0 0 0 3px rgba(62,111,168,.16)}
body .mph-form .elementor-button,body .mph-c-form .elementor-button{width:100% !important;background-color:var(--mph-navy) !important;color:#fff !important;border:0 !important;border-radius:0 !important;font-family:var(--mph-disp);font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:16px;margin-top:6px}
body .mph-form .elementor-button:hover,body .mph-c-form .elementor-button:hover{background-color:var(--mph-glow) !important}
.mph-map{margin-top:52px;box-shadow:0 34px 80px -36px rgba(4,43,86,.35);border:1px solid var(--mph-line)}
.mph-map iframe{filter:grayscale(.5)}
/* ═══ RESPONSIVE ═══ */
@media(max-width:1024px){body .mph-svc-layout > .e-con-inner{grid-template-columns:1fr}.mph-toc,body .mph-svc-layout .elementor-widget-table-of-contents{display:none}}
@media(max-width:880px){
 body .mph-cap-row > .e-con-inner{grid-template-columns:72px 1fr;grid-template-rows:auto auto;row-gap:8px}
 .mph-idx{font-size:30px}.mph-go{display:none}
 body .mph-band-grid > .e-con-inner,body .mph-card > .e-con-inner{grid-template-columns:1fr}
 body .mph-strip-row > .e-con-inner{grid-template-columns:1fr 1fr !important}
 body .mph-steps-grid > .e-con-inner{grid-template-columns:1fr 1fr}
 body .mph-hero .mph-gearwrap{right:-38vw;width:92vw;opacity:.16}
 body .mph-svcitems .elementor-icon-list-items,body .mph-svcat .elementor-icon-list-items{grid-template-columns:1fr 1fr}
 body .mph-logo img,body header.elementor-location-header .elementor-widget-image img{height:78px !important}
 .mph-hero{min-height:640px !important}}
@media(max-width:560px){
 body .mph-strip-row > .e-con-inner,body .mph-steps-grid > .e-con-inner,body .mph-svcitems .elementor-icon-list-items,body .mph-svcat .elementor-icon-list-items{grid-template-columns:1fr !important}
 .mph-spec div{padding:0 16px}
 .mph-progcog{width:42px;height:42px;right:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){.mph-gear-svg,.mph-track,.mph-hero::after,.mph-caps::before,.mph-band::after{animation:none !important}}
/* ═══ NATIVE-REBUILD SUPPORT (HTML content widgets → native Elementor) ═══ */
/* eyebrow as native heading widget */
body .mph-eyebrow .elementor-widget-container{margin:0}
body .mph-eyebrow .elementor-heading-title{font-family:var(--mph-mono) !important;font-weight:400 !important;font-size:12px !important;letter-spacing:4px !important;text-transform:uppercase !important;color:inherit !important;line-height:1.4;margin:0;background:none;-webkit-text-stroke:0}
/* contact card as native icon-list (label+value rows, icons hidden) */
body .mph-contact-list .elementor-icon-list-items{display:block;position:relative;z-index:1}
body .mph-contact-list .elementor-icon-list-icon{display:none !important}
body .mph-contact-list .elementor-icon-list-item{border-bottom:1px solid var(--mph-line);padding:14px 0 !important;display:block;margin:0}
body .mph-contact-list .elementor-icon-list-text{display:flex;gap:18px;font-size:15px;padding:0;color:#2A3A4A}
body .mph-contact-list .elementor-icon-list-text b{font-family:var(--mph-mono);font-weight:500;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--mph-steel);min-width:88px;padding-top:4px;flex-shrink:0}
body .mph-contact-list .elementor-icon-list-text span{flex:1;min-width:0}
/* v3.2.4 native-rebuild support: mph-dim heading, mph-also text-editor, mph-spec+mph-counters icon-list */
html body .mph-dim.elementor-widget-heading .elementor-heading-title{font-family:var(--mph-mono)!important;font-size:11px!important;font-weight:500!important;letter-spacing:2.5px!important;text-transform:uppercase!important;color:inherit!important;line-height:1!important;margin:0!important}
body .mph-also p{margin:0;font-family:var(--mph-mono);font-size:12px;letter-spacing:1px;color:var(--mph-steel)}
body .mph-spec .elementor-icon-list-items{display:flex;flex-wrap:wrap;row-gap:20px;margin-top:36px}
body .mph-spec .elementor-icon-list-icon{display:none!important}
body .mph-spec .elementor-icon-list-item{display:block;margin:0;padding:0 clamp(20px,3vw,42px);border-left:1px solid rgba(255,255,255,.18)}
body .mph-spec .elementor-icon-list-item:first-child{padding-left:0;border-left:0}
body .mph-spec .elementor-icon-list-text{display:block}
body .mph-spec .elementor-icon-list-text b{display:block;font-family:var(--mph-disp);font-weight:800;font-size:clamp(22px,2.4vw,30px);color:#fff}
body .mph-spec .elementor-icon-list-text span{font-family:var(--mph-mono);font-size:10.5px;letter-spacing:2px;color:var(--mph-sky);text-transform:uppercase}
body .mph-counters .elementor-icon-list-items{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14);margin-top:32px}
body .mph-counters .elementor-icon-list-icon{display:none!important}
body .mph-counters .elementor-icon-list-item{display:block;margin:0;background:rgba(2,23,50,.5);padding:22px 24px}
body .mph-counters .elementor-icon-list-text{display:block}
body .mph-counters .elementor-icon-list-text b{display:block;font-family:var(--mph-disp);font-weight:800;font-size:clamp(24px,2.4vw,30px);color:#fff}
body .mph-counters .elementor-icon-list-text span{font-family:var(--mph-mono);font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--mph-sky)}
/* v3.2.6 svc-h heading + svchead container layout */
html body .mph-svc-h.elementor-widget-heading .elementor-heading-title{font-family:var(--mph-disp)!important;font-weight:800!important;text-transform:uppercase!important;font-size:clamp(21px,2.2vw,30px)!important;color:var(--mph-navy)!important;line-height:1.05!important;margin:0!important}
body .mph-svchead.e-con{--flex-direction:row;flex-direction:row;--gap:24px;gap:24px;--align-items:baseline;align-items:baseline;flex-wrap:nowrap;margin-bottom:22px}
body .mph-svchead-body.e-con{--flex-direction:column;flex-direction:column;--gap:4px;gap:4px;flex:1 1 auto}
/* v3.2.2 eyebrow-as-heading: beat hero blanket heading rule (0,3,2 + !important) */
html body .mph-eyebrow.elementor-widget-heading .elementor-heading-title{font-family:var(--mph-mono)!important;font-size:12px!important;font-weight:500!important;letter-spacing:4px!important;line-height:1!important;text-transform:uppercase!important;color:var(--mph-sky)!important}

/* v3.2.8 Fluent Forms (.mph-ff) styled to MPH identity */
.mph-ff .ff-el-input--label label{font-family:var(--mph-mono)!important;font-size:10.5px!important;letter-spacing:2px!important;text-transform:uppercase!important;color:var(--mph-steel)!important;font-weight:500!important;margin-bottom:7px!important}
.mph-ff .ff-el-form-control{border:1px solid var(--mph-line)!important;border-radius:0!important;padding:12px 14px!important;font-family:var(--mph-disp)!important;font-size:15px!important;background:#fff!important;color:var(--mph-ink)!important;width:100%!important}
.mph-ff .ff-el-form-control:focus{border-color:var(--mph-navy)!important;box-shadow:0 0 0 2px rgba(4,43,86,.12)!important}
.mph-ff textarea.ff-el-form-control{min-height:120px!important}
.mph-ff .ff-el-group{margin-bottom:16px!important}
.mph-ff .ff-btn-submit,.mph-ff button.ff-btn-submit{background:var(--mph-navy)!important;background-color:var(--mph-navy)!important;color:#fff!important;font-family:var(--mph-mono)!important;text-transform:uppercase!important;letter-spacing:1.5px!important;font-size:12px!important;font-weight:500!important;border:0!important;border-radius:0!important;padding:15px 30px!important}
.mph-ff .ff-btn-submit:hover{background:var(--mph-navy-deep)!important}
.mph-ff .ff-el-input--content input[type=checkbox]{margin-right:9px!important;accent-color:var(--mph-navy)!important}
.mph-ff .ff-el-input--content label{font-family:var(--mph-disp)!important;font-size:13px!important;color:var(--mph-steel)!important;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}
