/* =========================================================
   Metahive theme · design system
   Navy #05021a · Panel #0b0733 · Cyan #1fc5ff · Poppins
   ========================================================= */
:root{--navy:#05021a;--panel:#0b0733;--deep:#130d4a;--cy:#1fc5ff;--ice:#9fe3ff;--txt:#b4b1d8;--dim:#8e8ab8;--line:rgba(255,255,255,.1);--hh:88px;--cut:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);--cut-sm:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);--hexp:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hh) + 20px)}
body{margin:0;background:var(--navy);color:#fff;font-family:Poppins,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--cy)}a:hover{color:#fff}
:focus-visible{outline:2px solid var(--cy);outline-offset:3px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.wp-site-blocks{padding:0}
.wp-site-blocks>*+*{margin-block-start:0}
:where(.mh-main) :where(.wp-block-group){margin-block-start:0}
:where(.is-layout-flow)>*{margin-block-start:0}
.wrap{max-width:1280px;margin-left:auto!important;margin-right:auto!important;padding-left:40px;padding-right:40px;width:100%}
.wrap.narrow{max-width:900px}
.cy{color:var(--cy)}
.muted{color:var(--txt)}
.dim{color:#4e4a86}
.hex{clip-path:var(--hexp)}
.eyebrow,.wp-block-paragraph.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ice)}
.eyebrow::before{content:"";flex:none;width:10px;height:11.5px;background:var(--cy);clip-path:var(--hexp)}
.disp,.is-style-mh-display{font-weight:700;text-transform:uppercase;letter-spacing:-.025em;line-height:1!important;color:#fff}
h1,h2,h3,h4{font-family:Poppins,Arial,sans-serif;color:#fff;letter-spacing:0;margin:0}
p{margin:0}
.ico{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.arr{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
a:hover>.arr,a:hover .arr{transform:translateX(3px)}

/* ---------- Buttons ---------- */
.btn,.wp-block-button.is-style-mh-primary .wp-block-button__link,.wp-block-button.is-style-mh-ghost .wp-block-button__link,.wp-block-button .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;font:600 15px/1 Poppins,Arial,sans-serif;text-decoration:none;border:0;border-radius:0;cursor:pointer;clip-path:var(--cut-sm);transition:background .2s,color .2s}
.btn-primary,.wp-block-button__link,.wp-block-button.is-style-mh-primary .wp-block-button__link{background:var(--cy);color:var(--navy)}
.btn-primary:hover,.wp-block-button__link:hover,.wp-block-button.is-style-mh-primary .wp-block-button__link:hover{background:#fff;color:var(--navy)}
.btn-ghost,.wp-block-button.is-style-mh-ghost .wp-block-button__link{position:relative;isolation:isolate;background:rgba(255,255,255,.32);color:#fff}
.btn-ghost::before,.wp-block-button.is-style-mh-ghost .wp-block-button__link::before{content:"";position:absolute;inset:1px;z-index:-1;background:var(--panel);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}
.btn-ghost:hover,.wp-block-button.is-style-mh-ghost .wp-block-button__link:hover{background:var(--cy);color:var(--cy)}
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}
.hbtns{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.lnk{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--cy);text-decoration:none}
.lnk:hover{color:#fff}
.sq-btn{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:#fff;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);transition:background .2s,color .2s}
.sq-btn svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sq-btn:hover:not(:disabled){background:var(--cy);color:var(--navy);box-shadow:none}
.sq-btn:disabled{opacity:.3;cursor:default}

/* ---------- Header ---------- */
.site-header{position:relative;z-index:100}
.mh-header{position:fixed;left:0;right:0;top:0;z-index:100;border-bottom:1px solid rgba(255,255,255,.08);transition:background .3s,box-shadow .3s}
.admin-bar .mh-header{top:32px}
.mh-header.is-scrolled,.mh-header.is-open{background:rgba(5,2,26,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.mh-header-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--hh)}
.mh-logo{display:flex;align-items:center;flex:none}
.mh-logo-img{height:46px;width:auto;display:block}
.mh-logo-txt{font-weight:700;font-size:20px;color:#fff;text-transform:uppercase}
.mh-nav{display:flex;align-items:center;flex:1;justify-content:center}
.mh-nav-cta{display:none}
.mh-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.mh-menu .mi{position:relative;display:flex;align-items:center}
.mh-menu .mi.mega{position:static}
.mh-menu .nl{display:inline-flex;align-items:center;padding:10px 12px;font-size:14px;font-weight:500;color:#e6e4fb;text-decoration:none;white-space:nowrap}
.mh-menu .mi:hover>.nl,.mh-menu .mi.is-active>.nl,.mh-menu .mi.open>.nl{color:var(--cy)}
.dd-tog{display:inline-flex;align-items:center;justify-content:center;width:22px;height:30px;margin-left:-8px;padding:0;background:none;border:0;color:#e6e4fb;cursor:pointer}
.dd-tog svg{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.mi:hover>.dd-tog,.mi.open>.dd-tog{color:var(--cy)}
.mi:hover>.dd-tog svg,.mi.open>.dd-tog svg{transform:rotate(180deg)}
.dd{display:none;position:absolute;top:100%;left:0;z-index:20;padding-top:12px}
.mi.mega>.dd{left:40px;right:40px;top:calc(var(--hh) - 14px)}
.mi:hover>.dd,.mi:focus-within>.dd,.mi.open>.dd{display:block}
.ddp{min-width:300px;padding:14px 6px;background:var(--panel);border:1px solid rgba(255,255,255,.12);border-top:2px solid var(--cy);box-shadow:0 30px 60px rgba(0,0,0,.45)}
.mi.mega .ddp{padding:26px 20px;max-width:1200px;margin:0 auto}
.dd-mega{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.ddh{padding:0 14px 8px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ice)}
.ddh a{color:inherit;text-decoration:none}
.ddl{display:flex;align-items:center;gap:14px;padding:11px 14px;color:#fff;text-decoration:none}
.ddl:hover{background:rgba(31,197,255,.1);color:#fff}
.ddl.sub{padding:6px 14px 6px 64px}
.ddl.sub b{font-size:13px;font-weight:400;color:var(--txt)}
.ddl .hx{flex:0 0 36px;height:41px;display:flex;align-items:center;justify-content:center;background:rgba(31,197,255,.14);clip-path:var(--hexp);color:var(--cy)}
.ddl .hx .ico{width:18px;height:18px}
.ddl:hover .hx{background:var(--cy);color:var(--navy)}
.ddl b{display:block;font-size:14px;font-weight:600}
.ddl small{display:block;margin-top:2px;font-size:12px;color:#9a97c4}
.dd-card{display:flex;flex-direction:column;justify-content:space-between;gap:16px;padding:22px;background:var(--cy);color:var(--navy);text-decoration:none;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}
.dd-card:hover{background:#fff;color:var(--navy)}
.dd-k{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.dd-t{font-size:20px;font-weight:700;line-height:1.25}
.dd-l{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600}
.mh-cta{min-height:46px;padding:0 24px;font-size:14px}
.mh-burger{display:none;width:46px;height:46px;padding:0;background:none;border:0;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.mh-burger i{display:block;width:20px;height:2px;background:#fff;transition:transform .25s,opacity .25s}
.mh-burger[aria-expanded="true"] i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mh-burger[aria-expanded="true"] i:nth-child(2){opacity:0}
.mh-burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- Page headers (levels) ---------- */
.ihero{position:relative;overflow:hidden;padding-top:var(--hh);background:radial-gradient(40% 60% at 80% 35%,rgba(31,197,255,.24),rgba(31,197,255,0) 70%),radial-gradient(40% 60% at 0% 100%,rgba(91,75,255,.3),rgba(91,75,255,0) 70%),linear-gradient(180deg,#0b0733 0%,#05021a 100%);border-bottom:1px solid rgba(255,255,255,.08)}
.ihero-grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:40px;align-items:center;padding-top:56px;padding-bottom:80px}
.ihero.l1 .ihero-grid{padding-bottom:88px}
.ihero.l3 .ihero-grid{grid-template-columns:minmax(0,1fr);padding-top:48px;padding-bottom:56px}
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:0;list-style:none;font-size:13px;color:var(--dim)}
.crumb li{margin:0}
.crumb a{color:var(--txt);text-decoration:none}
.crumb a:hover{color:var(--cy)}
.crumb li+li::before{content:"";display:inline-block;width:6px;height:7px;margin-right:10px;background:var(--cy);clip-path:var(--hexp);vertical-align:middle}
.crumb li[aria-current]{color:#fff}
.crumb-yoast span{color:var(--txt)}
.crumb-yoast a{color:var(--txt);text-decoration:none}
.crumb-yoast .breadcrumb_last{color:#fff}
.ititle,.ihero h1{margin:22px 0 0!important;font-size:clamp(40px,6vw,72px)!important;font-weight:700!important;line-height:1!important;letter-spacing:-.025em;text-transform:uppercase}
.ihero.l1 h1{font-size:clamp(44px,6.6vw,84px)!important}
.ihero.l3 h1{font-size:clamp(34px,4.6vw,56px)!important}
.ilead,.ihero .wp-block-post-excerpt{max-width:600px;margin:24px 0 0!important;font-size:18px;line-height:1.7;color:var(--txt)}
.ihero .wp-block-post-excerpt__excerpt{margin:0}
.hmeta{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0;padding:0}
.hmeta li{padding:8px 12px;font-size:13px;font-weight:500;color:#e6e4fb;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.hc{position:relative;width:420px;height:380px}
.hc span{position:absolute;width:118px;height:136px;display:flex;align-items:center;justify-content:center;clip-path:var(--hexp)}
.hc .g{background:rgba(255,255,255,.035)}
.hc .l{background:linear-gradient(160deg,rgba(31,197,255,.28),rgba(31,197,255,.04))}
.hc .d{background:linear-gradient(160deg,#2a2378,#130d4a)}
.hc .lit{width:150px;height:173px;background:linear-gradient(160deg,#5fd8ff,#1fc5ff 45%,#0e7fd0);color:var(--navy)}
.hc .lit .ico{width:52px;height:52px}
.hc-lab{position:absolute;right:0;bottom:6px;font-style:normal;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ice)}
.kids{border-top:1px solid rgba(255,255,255,.1);background:rgba(5,2,26,.5)}
.kids-in{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-top:14px;padding-bottom:14px}
.kids-lab{margin-right:14px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#6f6c9c}
.kids a{padding:8px 12px;font-size:14px;color:#d8d6f0;text-decoration:none}
.kids a:hover{background:var(--cy);color:var(--navy)}
.no-hero{padding-top:var(--hh)}
.no-hero.home{padding-top:0}

/* ---------- Content area ---------- */
.mh-content>:not(.sec):not(.alignfull):not(.mh-full):not(.ihero):not(.home-hero):not(.cl):not(style):not(script){max-width:1200px;margin-left:auto;margin-right:auto;padding-left:40px;padding-right:40px}
.mh-content>p,.mh-content>ul,.mh-content>ol,.mh-content>h2,.mh-content>h3{max-width:900px!important}
.mh-content>*:first-child:not(.sec){margin-top:80px}
.mh-content>*:last-child:not(.sec){margin-bottom:80px}
.mh-content>p+p{margin-top:18px}
.prose-page{padding-top:70px;padding-bottom:90px}
.prose-page p,.prose p{font-size:17px;line-height:1.8;color:#c9c6e8}
.prose-page p+p,.prose p+p{margin-top:18px}
.prose-page h2,.prose h2{margin:44px 0 16px;font-size:28px;font-weight:700;line-height:1.25}
.prose-page h3,.prose h3{margin:32px 0 12px;font-size:21px;font-weight:600}
.prose-page ul,.prose-page ol,.prose ul,.prose ol{margin:18px 0;padding-left:22px;color:#c9c6e8;line-height:1.8}
.prose-page h2:first-child,.prose h2:first-child{margin-top:0}
.big,.prose p.big{font-size:22px!important;line-height:1.6!important;font-weight:500;color:#fff!important}

/* ---------- Sections ---------- */
.sec{padding:100px 0}
.sec.line{border-top:1px solid rgba(255,255,255,.08)}
.sec.tight{padding:70px 0}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap}
.sh>.wp-block-group{display:flex;flex-direction:column}
.sh h2,.sh .disp{margin-top:16px!important;font-size:clamp(30px,4vw,44px)}
.sh>p:not(.eyebrow),.sh .sh-note{max-width:440px;font-size:16px;line-height:1.7;color:var(--txt)}
.sh-col{display:flex;flex-direction:column}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.split.top{align-items:start}
.split h2{font-size:clamp(30px,4vw,44px);margin:16px 0 26px!important}
.media,.wp-block-image.media{position:relative;margin:0;overflow:hidden;background:radial-gradient(70% 80% at 50% 40%,rgba(31,197,255,.16),rgba(31,197,255,0) 70%),linear-gradient(160deg,#130d4a,#08042a);clip-path:var(--cut)}
.wp-block-image.media img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}
.media-ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:rgba(159,227,255,.55)}
.media-ph .ico{width:44px;height:44px}
.wp-block-list.is-style-mh-ticks,.ticks{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.is-style-mh-ticks li,.ticks li{display:flex;gap:14px;font-size:16px;line-height:1.6;color:#e6e4fb}
.is-style-mh-ticks li::before,.ticks li::before{content:"";flex:0 0 12px;height:14px;margin-top:5px;background:var(--cy);clip-path:var(--hexp)}
.capgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:52px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1)}
.cap{padding:34px 30px;background:var(--navy);transition:background .3s}
.cap:hover{background:#0e0840}
.cap .hxi{width:48px;height:55px;display:flex;align-items:center;justify-content:center;background:rgba(31,197,255,.14);clip-path:var(--hexp);color:var(--cy);transition:background .3s,color .3s}
.cap:hover .hxi{background:var(--cy);color:var(--navy)}
.cap h3{margin:22px 0 8px!important;font-size:19px;font-weight:600}
.cap p{font-size:14.5px;line-height:1.65;color:#a9a6d0}
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:52px}
.fl{position:relative;padding:26px 22px 24px;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.fl::before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,var(--cy),rgba(31,197,255,0))}
.fl .n,.fl>p:first-child{font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--cy)}
.fl h3{margin:14px 0 8px!important;font-size:17px;font-weight:600}
.fl p{font-size:14px;line-height:1.6;color:#a9a6d0}
.faq{border-top:1px solid rgba(255,255,255,.12)}
.faq .wp-block-details,.faq details{border-bottom:1px solid rgba(255,255,255,.12);margin:0}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:19px;font-weight:600;color:#fff}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:34px;height:34px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);color:var(--cy);font-size:20px;font-weight:400;transition:transform .3s,background .3s}
.faq details[open] summary::after{transform:rotate(45deg);background:var(--cy);color:var(--navy);box-shadow:none}
.faq summary:hover{color:var(--cy)}
.faq details>p,.faq details>*:not(summary){padding:0 60px 26px 0;font-size:16px;line-height:1.75;color:#c9c6e8;margin:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:500;color:#e6e4fb;text-decoration:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);transition:background .2s,color .2s}
.chip:hover{background:var(--cy);color:var(--navy);box-shadow:none}
.chip .arr{opacity:.6}
.band{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:center}
.band-t{margin-top:12px!important;font-size:22px;font-weight:600}

/* Cards (projects, posts) */
.pgrid,.wp-block-post-template.pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px;margin:40px 0 0;padding:0;list-style:none}
.pc{display:block;color:#fff;text-decoration:none}
.pc:hover{color:#fff}
.pc[hidden]{display:none}
.pc-media,.pc .wp-block-post-featured-image{position:relative;height:250px;margin:0;overflow:hidden;background:radial-gradient(70% 80% at 50% 40%,rgba(31,197,255,.16),rgba(31,197,255,0) 70%),linear-gradient(160deg,#130d4a,#08042a);clip-path:var(--cut-sm)}
.pc-media img,.pc .wp-block-post-featured-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.pc:hover .pc-media img{transform:scale(1.05)}
.pc-media::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--cy);transition:width .4s}
.pc:hover .pc-media::after{width:100%}
.pc-cat,.pc .wp-block-post-terms{display:block;margin-top:18px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--cy)}
.pc .wp-block-post-terms a{color:inherit;text-decoration:none}
.pc h3,.pc .wp-block-post-title{display:flex;justify-content:space-between;gap:12px;margin:8px 0 0!important;font-size:20px;font-weight:600;line-height:1.3}
.pc .wp-block-post-title a{color:#fff;text-decoration:none}
.pc h3 .arr{flex:none;margin-top:6px;opacity:0;color:var(--cy);transition:opacity .3s,transform .3s}
.pc:hover h3 .arr{opacity:1}
.pc p,.pc .wp-block-post-excerpt{margin:8px 0 0;font-size:14px;line-height:1.6;color:#a9a6d0}
.ftabs{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.1)}
.ftab{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;font:500 14px Poppins,Arial,sans-serif;color:#d8d6f0;background:transparent;border:0;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.ftab:hover{color:var(--cy);box-shadow:inset 0 0 0 1px rgba(31,197,255,.6)}
.ftab.on{background:var(--cy);color:var(--navy);box-shadow:none;font-weight:600}
.ftab small{font-size:11px;opacity:.65}
.pager,.wp-block-query-pagination{display:flex;justify-content:center;gap:6px;margin-top:60px}
.wp-block-query-pagination a,.wp-block-query-pagination span.page-numbers{min-width:44px;height:44px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;color:#d8d6f0;text-decoration:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.wp-block-query-pagination .current{background:var(--cy);color:var(--navy);box-shadow:none;font-weight:600}

/* Products */
.prod-feat{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);margin-top:48px;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.prod-feat .media{min-height:420px;clip-path:none}
.prod-feat .body{padding:48px}
.prod-feat h3{margin-top:16px!important;font-size:34px;font-weight:700}
.prodgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}
.prod{display:flex;flex-direction:column;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:box-shadow .3s}
.prod:hover{box-shadow:inset 0 0 0 1px rgba(31,197,255,.5)}
.prod .media{height:220px;clip-path:none}
.prod .body{display:flex;flex-direction:column;flex:1;padding:26px 26px 28px}
.prod h3{font-size:22px;font-weight:600}
.prod p,.prod-feat p{margin-top:10px;font-size:15px;line-height:1.65;color:var(--txt)}
.prod .lnk{margin-top:auto;padding-top:22px}
.tag{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;padding:6px 11px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);background:var(--cy)}
.mini{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
.mini span{padding:6px 10px;font-size:12px;font-weight:500;color:#d8d6f0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.specs{display:grid;grid-template-columns:1fr 1fr;margin:30px 0 0;border-top:1px solid rgba(255,255,255,.12)}
.specs>div{padding:16px 20px 16px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.specs dt{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#6f6c9c}
.specs dd{margin:6px 0 0;font-size:15px;font-weight:500}

/* Values, regions, stats */
.vals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:52px}
.val{padding:30px 26px;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.val .n,.val>p:first-child{font-size:44px;font-weight:700;line-height:1;color:rgba(31,197,255,.25)}
.val h3{margin:20px 0 8px!important;font-size:19px;font-weight:600}
.val p{font-size:14.5px;line-height:1.65;color:#a9a6d0}
.frame{position:relative;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12)}
.frame::before{content:"";position:absolute;top:-1px;left:-1px;width:18px;height:18px;border-top:2px solid var(--cy);border-left:2px solid var(--cy)}
.frame::after{content:"";position:absolute;bottom:-1px;right:-1px;width:18px;height:18px;border-bottom:2px solid var(--cy);border-right:2px solid var(--cy)}
.reach{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:44px}
.reach .frame{padding:30px}
.reach h3{font-size:24px;font-weight:700;text-transform:uppercase}
.reach p{margin-top:10px;font-size:14.5px;line-height:1.65;color:#a9a6d0}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:64px}
.stats .frame{padding:26px}
.stats .stat-v{font-size:40px;font-weight:700;text-transform:uppercase;line-height:1;color:var(--cy)}
.stats .stat-l{margin-top:8px;font-size:14px;color:var(--txt)}

/* Jobs */
.jobs{margin-top:44px;border-top:1px solid rgba(255,255,255,.12)}
.job{display:grid;grid-template-columns:minmax(0,1.6fr) 1fr 1fr auto;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid rgba(255,255,255,.12);color:#fff;text-decoration:none;transition:padding .3s}
.job:hover{padding-left:18px;color:#fff}
.job-t{font-size:22px;font-weight:600}
.job:hover .job-t{color:var(--cy)}
.job-m{font-size:14px;color:#a9a6d0}

/* CTA band */
.ctab{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:center;padding:64px;background:radial-gradient(60% 120% at 100% 0%,rgba(31,197,255,.35),rgba(31,197,255,0) 60%),linear-gradient(120deg,#130d4a,#0b0733);clip-path:var(--cut)}
.ctab h2{margin-top:16px!important;font-size:clamp(30px,4vw,48px)}
.ctab .muted{margin-top:18px;max-width:520px;font-size:16px;line-height:1.7}
.ctab .wp-block-buttons{flex-direction:column;min-width:240px}
.ctab .wp-block-button__link{width:100%}

/* Client marquee */
.cl{padding:90px 0 70px}
.cl-rows{display:flex;flex-direction:column;gap:14px;margin-top:44px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.cl-track{overflow:hidden}
.cl-run{display:flex;width:max-content;animation:mh-marquee 60s linear infinite}
.cl-b{animation-direction:reverse;animation-duration:54s}
.cl-rows:hover .cl-run{animation-play-state:paused}
.cl-cell{flex:none;width:220px;height:110px;margin-right:14px;display:flex;align-items:center;justify-content:center;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);transition:background .3s,box-shadow .3s}
.cl-cell img{display:block;opacity:.6;transition:opacity .3s}
.cl-cell:hover{background:var(--deep);box-shadow:inset 0 0 0 1px rgba(31,197,255,.45)}
.cl-cell:hover img{opacity:1}
@keyframes mh-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- Homepage ---------- */
.home-hero{position:relative;overflow:hidden;padding:calc(var(--hh) + 40px) 0 70px;background:radial-gradient(45% 55% at 74% 40%,rgba(31,197,255,.34),rgba(31,197,255,0) 70%),radial-gradient(40% 50% at 8% 90%,rgba(91,75,255,.42),rgba(91,75,255,0) 70%),linear-gradient(180deg,#0e0733 0%,#05021a 100%)}
.home-grid{display:grid;grid-template-columns:minmax(0,1fr) 600px;gap:20px;align-items:center}
.home-hero h1{margin-top:26px!important;font-size:clamp(44px,7vw,88px)!important;font-weight:700;line-height:1!important;letter-spacing:-.025em;text-transform:uppercase}
.home-hero .lead{max-width:520px;margin-top:30px!important;font-size:18px;line-height:1.7;color:var(--txt)}
.hive{position:relative;padding:10px 0}
.hexrow{display:flex;gap:8px}
.hexrow+.hexrow{margin-top:-26px}
.hexrow.odd{padding-left:63px}
.cell{flex:0 0 118px;width:118px;height:136px;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;padding:0 14px;text-align:center;font-size:10.5px;font-weight:500;line-height:1.3;letter-spacing:.06em;text-transform:uppercase;color:#e9f9ff;text-decoration:none}
.cell .ico{width:28px;height:28px}
.c-ghost{background:rgba(255,255,255,.035)}
.c-line{background:linear-gradient(160deg,rgba(31,197,255,.28),rgba(31,197,255,.04));color:#e9f9ff}
.c-line .ico,.c-deep .ico{color:var(--cy)}
.c-deep{background:linear-gradient(160deg,#2a2378,#130d4a);color:#e9f9ff}
.c-lit{background:linear-gradient(160deg,#5fd8ff,#1fc5ff 45%,#0e7fd0);color:var(--navy);font-weight:600}
.c-core{background:#130d4a}
.c-core img{width:62px;height:auto}
a.cell{transition:transform .2s,filter .2s}
a.cell:hover{transform:scale(1.05);filter:brightness(1.2);color:var(--navy);background:linear-gradient(160deg,#5fd8ff,#1fc5ff 45%,#0e7fd0)}
a.cell:hover .ico{color:var(--navy)}
.svc-row{display:flex;gap:10px;height:470px;margin-top:54px}
.panel{position:relative;flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;overflow:hidden;cursor:pointer;background:linear-gradient(170deg,#140f4a,#08051f);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);clip-path:var(--cut);transition:flex .5s ease,box-shadow .3s}
.panel.is-open,.panel:hover,.panel:focus-within{flex:2.6;box-shadow:inset 0 0 0 1px rgba(31,197,255,.55)}
.panel .pn{position:absolute;top:26px;left:30px;font-size:13px;font-weight:600;letter-spacing:.1em;color:var(--cy)}
.panel h3{font-size:22px;font-weight:700;line-height:1.2}
.pbody{max-height:0;overflow:hidden;opacity:0;transition:max-height .5s,opacity .4s}
.panel.is-open .pbody,.panel:hover .pbody,.panel:focus-within .pbody{max-height:320px;opacity:1}
.pbody p{margin-top:12px;font-size:15px;line-height:1.65;color:var(--txt)}
.plinks{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.plinks a{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;font-size:13px;font-weight:500;color:#e6e4fb;text-decoration:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.plinks a .ico{width:16px;height:16px;color:var(--cy)}
.plinks a:hover{background:var(--cy);color:var(--navy)}
.plinks a:hover .ico{color:var(--navy)}
.wk{margin-top:36px}
.wk-nav{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:-82px;margin-bottom:46px}
.wk-nav .lnk{margin-right:14px}
.wk-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 60px) / 4);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.wk-track::-webkit-scrollbar{display:none}
.wk-track .pc{scroll-snap-align:start}
.wk-track .pc-media{height:200px}
.wk-track .pc h3{font-size:18px}
.wk-track .pc p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wk-bar{position:relative;height:2px;margin-top:36px;background:rgba(255,255,255,.1)}
.wk-bar i{position:absolute;top:0;left:0;height:2px;width:25%;background:var(--cy);transition:left .3s,width .3s}
.steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:70px;text-align:center}
.steps::before{content:"";position:absolute;left:12%;right:12%;top:34px;height:2px;background:linear-gradient(90deg,rgba(31,197,255,0),var(--cy) 15%,var(--cy) 85%,rgba(31,197,255,0))}
.step{position:relative}
.step .hxn,.step>p:first-child{width:62px;height:70px;margin:0 auto;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--navy);background:var(--cy);clip-path:var(--hexp)}
.step h3{margin:22px 0 8px!important;font-size:19px;font-weight:600}
.step p:not(:first-child){font-size:14px;line-height:1.65;color:var(--txt)}

/* ---------- Contact ---------- */
.ct{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:28px;align-items:start}
.ct-side{padding-top:48px}
.ct-h{font-size:30px!important;font-weight:700;line-height:1.2}
.ways{display:flex;flex-direction:column;gap:10px;margin-top:26px}
.way{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 22px;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);color:#fff;text-decoration:none;transition:background .25s,box-shadow .25s}
.way:hover{background:var(--deep);box-shadow:inset 0 0 0 1px rgba(31,197,255,.6);color:#fff}
.way .hxi{width:46px;height:52px;display:flex;align-items:center;justify-content:center;background:rgba(31,197,255,.14);clip-path:var(--hexp);color:var(--cy)}
.way:hover .hxi{background:var(--cy);color:var(--navy)}
.way small,.office small{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.way b{display:block;margin-top:4px;font-size:19px;font-weight:600}
.way>.arr{color:var(--cy);opacity:.5}
.way:hover>.arr{opacity:1}
.office{margin-top:12px;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.office iframe{display:block;width:100%;height:220px;border:0;filter:invert(.9) hue-rotate(200deg) saturate(.6) brightness(.9)}
.office-b{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:22px}
.office-b b{display:block;margin-top:6px;font-size:15px;font-weight:500}
.office-b .lnk{grid-column:span 2}
.soc{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:22px}
.soc a,.mhf-soc a{padding:8px 12px;font-size:13px;color:#e6e4fb;text-decoration:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.soc a:hover,.mhf-soc a:hover{background:var(--cy);color:var(--navy);box-shadow:none}
.ct-form{position:relative;z-index:2;margin-top:0;padding:1px;background:rgba(255,255,255,.22);clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px)}
.ct-form-in{padding:40px;background:linear-gradient(170deg,#140f4a,#0a0630);clip-path:polygon(17px 0,100% 0,100% calc(100% - 17px),calc(100% - 17px) 100%,0 100%,0 17px)}
.ct-form-in .ct-h{margin:14px 0 26px!important}
.ct-note{margin-top:14px!important;font-size:13px;color:var(--txt)}
.page-contact-us .ihero-grid{padding-bottom:150px}
.page-contact-us .ct-form{margin-top:-120px}
.ct-sec{padding-top:0;padding-bottom:90px}
.sh-col.center{align-items:center;text-align:center}

/* Ninja Forms skin */
.nf-form-fields-required{margin-bottom:16px;font-size:12px;color:var(--dim)}
.nf-form-content{padding:0!important;max-width:none!important}
nf-fields-wrap{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
nf-fields-wrap>nf-field{grid-column:span 2;min-width:0}
nf-fields-wrap>nf-field:has(.one-half){grid-column:span 1}
.nf-field-container{margin:0!important;width:auto!important;float:none!important}
.nf-field-label label,.nf-field-label .nf-label-span{margin-bottom:6px;font-size:12px!important;font-weight:400!important;letter-spacing:.04em;color:var(--txt)!important}
.nf-form-content .ninja-forms-field:not([type=checkbox]):not([type=submit]):not([type=button]),.nf-form-content select.ninja-forms-field{width:100%;height:auto!important;padding:12px 2px!important;font:inherit!important;font-size:15px!important;color:#fff!important;background:rgba(255,255,255,.05)!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.25)!important;border-radius:0!important;box-shadow:none!important}
.nf-form-content select.ninja-forms-field option{color:var(--navy)}
.nf-form-content textarea.ninja-forms-field{min-height:110px}
.nf-form-content .ninja-forms-field:focus{border-bottom-color:var(--cy)!important;background:rgba(31,197,255,.06)!important;outline:0}
.nf-form-content .ninja-forms-field::placeholder{color:#6f6c9c}
.listselect-wrap .nf-field-element>div{background:transparent!important;border:0!important;box-shadow:none!important}
.listselect-wrap .nf-field-element>div::after{border-color:var(--cy)!important;color:var(--cy)!important}
.listcheckbox-wrap ul{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 0!important;padding:0!important;list-style:none!important}
.listcheckbox-wrap li{position:relative;margin:0!important;padding:0!important;list-style:none!important}
.listcheckbox-wrap li input{position:absolute;opacity:0;width:1px;height:1px}
.listcheckbox-wrap li label{display:inline-block!important;margin:0!important;padding:11px 15px!important;font-size:14px!important;font-weight:500!important;color:#e6e4fb!important;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:background .2s,box-shadow .2s,color .2s}
.listcheckbox-wrap li label::before,.listcheckbox-wrap li label::after{display:none!important}
.listcheckbox-wrap li label:hover{color:var(--cy)!important;box-shadow:inset 0 0 0 1px var(--cy)}
.listcheckbox-wrap li input:checked+label{background:var(--cy);color:var(--navy)!important;box-shadow:none;font-weight:600!important}
.listcheckbox-wrap li input:focus-visible+label{outline:2px solid var(--cy);outline-offset:2px}
.checkbox-wrap{display:flex!important;flex-direction:row-reverse;justify-content:flex-end;align-items:flex-start;gap:12px}
.checkbox-wrap .nf-field-label{margin:0!important;padding:0!important}
.checkbox-wrap .nf-field-label label{margin:0!important;padding:0!important;font-size:13px!important;line-height:1.6!important}
.checkbox-wrap .nf-field-element{width:auto!important;flex:none}
.checkbox-wrap input{width:16px;height:16px;margin-top:3px;accent-color:var(--cy)}
.submit-container{padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.submit-container input[type=submit],.submit-container input[type=button]{min-height:52px;padding:0 30px!important;font:600 15px Poppins,Arial,sans-serif!important;text-transform:none!important;color:var(--navy)!important;background:var(--cy)!important;border:0!important;border-radius:0!important;cursor:pointer;clip-path:var(--cut-sm)}
.submit-container input[type=submit]:hover{background:#fff!important}
.nf-error-msg,.ninja-forms-req-symbol{color:#ff9a9a!important}
.nf-error .ninja-forms-field{border-bottom-color:#ff9a9a!important}
.nf-response-msg{padding:24px;font-size:16px;color:#fff;background:rgba(31,197,255,.1);box-shadow:inset 0 0 0 1px rgba(31,197,255,.4)}

/* ---------- Article ---------- */
.art-media,.cs-media{margin-top:0}
.art-hero-img,.cs-hero-img{margin:0;overflow:hidden;clip-path:var(--cut)}
.art-hero-img img,.cs-hero-img img{display:block;width:100%;max-height:560px;object-fit:cover}
.art-sec{padding-top:60px}
.art{display:grid;grid-template-columns:240px minmax(0,760px);gap:64px;justify-content:center}
.art.no-toc{grid-template-columns:minmax(0,760px)}
.toc{position:sticky;top:calc(var(--hh) + 30px);align-self:start}
.toc ol{list-style:none;margin:18px 0 0;padding:0;border-left:1px solid rgba(255,255,255,.12)}
.toc a{display:block;margin-left:-1px;padding:9px 0 9px 16px;font-size:14px;color:var(--txt);text-decoration:none;border-left:2px solid transparent}
.toc a.on{color:#fff;border-left-color:var(--cy)}
.toc a:hover{color:var(--cy)}
.art-body blockquote{margin:30px 0;padding:24px 28px;border-left:3px solid var(--cy);background:rgba(31,197,255,.06);font-size:17px;line-height:1.7;color:#e6e4fb}
.art-body img{clip-path:var(--cut-sm)}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:50px;padding-top:26px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:var(--dim)}
.share a,.share button{padding:8px 12px;font:13px Poppins,Arial,sans-serif;color:#e6e4fb;text-decoration:none;background:none;border:0;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.share a:hover,.share button:hover{background:var(--cy);color:var(--navy)}

/* Search */
.mh-search .wp-block-search__inside-wrapper{max-width:560px;border:0;gap:8px}
.mh-search input{padding:14px;font:15px Poppins,Arial,sans-serif;color:#fff;background:rgba(255,255,255,.05);border:0;border-bottom:1px solid rgba(255,255,255,.25)}
.mh-search .wp-block-search__button{margin:0;padding:0 24px;font-weight:600;color:var(--navy);background:var(--cy);border:0;border-radius:0}
.mh-search+.chips{margin-top:40px}

/* ---------- Footer ---------- */
.mhf{padding-top:80px;border-top:1px solid rgba(255,255,255,.08);background:radial-gradient(60% 70% at 50% 100%,rgba(31,197,255,.22),rgba(31,197,255,0) 70%),var(--navy)}
.mhf-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.08)}
.mhf-logo{margin:0}
.mhf-logo img{height:46px;width:auto}
.mhf-tag{max-width:320px;margin:18px 0 0!important;font-size:14px;line-height:1.7;color:var(--txt)}
.mhf .wp-block-buttons{margin-top:26px}
.mhf .wp-block-button__link{min-height:48px;padding:0 24px;font-size:14px}
.mhf-h{margin:0 0 18px!important;font-size:12px!important;font-weight:600!important;letter-spacing:.16em;text-transform:uppercase;color:var(--ice)!important}
.mhf-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.mhf-list li{font-size:14px;color:#d8d6f0}
.mhf-list a{font-size:14px;color:#d8d6f0;text-decoration:none}
.mhf-list a:hover{color:var(--cy)}
.mhf-ct small{display:block;margin-bottom:4px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6f6c9c}
.mhf-soc{display:flex;flex-wrap:wrap;gap:6px;margin-top:22px!important}
.mhf-soc a{font-size:12px;padding:7px 11px}
.mhf-giant{margin:40px 0 0!important;overflow:hidden;font-size:clamp(60px,17vw,250px);font-weight:700;line-height:.82;letter-spacing:-.04em;text-transform:uppercase;text-align:center;white-space:nowrap;background:linear-gradient(180deg,rgba(191,238,255,.9),rgba(31,197,255,.5) 45%,rgba(31,197,255,0) 92%);-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none}
.mhf-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;padding-top:18px;padding-bottom:26px;font-size:13px;color:var(--dim)}
.mhf-bottom p{margin:0;font-size:13px;color:var(--dim)}
.mhf-bottom a{color:var(--dim);text-decoration:none}
.mhf-bottom a:hover{color:var(--cy)}

/* ---------- Motion preference ---------- */
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .mh-burger{display:inline-flex}
  .mh-header-cta{display:none}
  .mh-nav{position:fixed;left:0;right:0;top:var(--hh);bottom:0;display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:20px 20px 40px;overflow-y:auto;background:var(--navy)}
  .admin-bar .mh-nav{top:calc(var(--hh) + 46px)}
  .mh-header.is-open .mh-nav{display:flex}
  .mh-menu{flex-direction:column;align-items:stretch;gap:0}
  .mh-menu .mi{flex-wrap:wrap;border-bottom:1px solid rgba(255,255,255,.08)}
  .mh-menu .nl{flex:1;padding:16px 4px;font-size:17px}
  .dd-tog{width:46px;height:46px;margin:0}
  .dd,.mi.mega>.dd{position:static;display:none;width:100%;padding:0 0 14px}
  .mi:hover>.dd,.mi:focus-within>.dd{display:none}
  .mi.open>.dd{display:block}
  .ddp,.mi.mega .ddp{min-width:0;padding:6px 0;border:0;box-shadow:none;background:transparent}
  .dd-mega{grid-template-columns:1fr}
  .dd-card{display:none}
  .mh-nav-cta{display:block;margin-top:24px}
  .mh-nav-cta .btn{width:100%}
  .ihero-grid,.home-grid,.split,.ct,.prod-feat,.ctab{grid-template-columns:1fr!important}
  .hc{display:none}
  .hive{transform:scale(.82);transform-origin:top left;margin-bottom:-80px}
  .ct-form{margin-top:0}
  .page-contact-us .ihero-grid{padding-bottom:64px}
  .page-contact-us .ct-form{margin-top:0}
  .capgrid,.pgrid,.wp-block-post-template.pgrid,.prodgrid{grid-template-columns:1fr 1fr}
  .vals,.stats,.steps{grid-template-columns:1fr 1fr}
  .steps::before{display:none}
  .reach{grid-template-columns:1fr}
  .svc-row{flex-direction:column;height:auto}
  .panel{min-height:120px;padding-top:60px}
  .panel .pbody{max-height:none;opacity:1}
  .wk-track{grid-auto-columns:calc((100% - 20px) / 2)}
  .art{grid-template-columns:1fr}
  .toc{position:static}
  .job{grid-template-columns:1fr}
  .mhf-grid{grid-template-columns:1fr 1fr}
  .band{grid-template-columns:1fr}
}
@media (max-width:782px){.admin-bar .mh-header{top:46px}}
@media (max-width:640px){
  :root{--hh:72px}
  .wrap,.mh-content>:not(.sec):not(.alignfull):not(.mh-full){padding-left:20px;padding-right:20px}
  .mh-logo-img{height:38px}
  .sec{padding:70px 0}
  .capgrid,.pgrid,.wp-block-post-template.pgrid,.prodgrid,.vals,.stats,.steps{grid-template-columns:1fr}
  .hive{display:none}
  .wk-nav{margin-top:0;justify-content:flex-start}
  .wk-track{grid-auto-columns:82%}
  nf-fields-wrap,.office-b,.specs{grid-template-columns:1fr}
  nf-fields-wrap>nf-field{grid-column:auto!important}
  .office-b .lnk{grid-column:auto}
  .ct-form-in{padding:26px 20px}
  .ctab{padding:36px 24px}
  .prod-feat .body{padding:28px}
  .mhf-grid{grid-template-columns:1fr}
  .cl-cell{width:160px;height:84px}
  .cl-cell img{transform:scale(.8)}
}

/* Grids own their spacing: cancel the editor's default gap between blocks. */
.capgrid>*,.flow>*,.vals>*,.reach>*,.stats>*,.prodgrid>*,.steps>*,.split>*,.sh>*,.band>*,.home-grid>*,.ihero-grid>*,.mhf-grid>*,.prod-feat>*,.ctab>*,.pgrid>*,.cap>*:first-child,.ct>*{margin-block-start:0!important;margin-top:0}
.sh-col>*+*,.cap>*+*,.fl>*+*,.val>*+*,.frame>*+*,.body>*+*{margin-block-start:0}
.prose-page .mh-content>*{max-width:none!important;padding-left:0!important;padding-right:0!important;margin-top:0}
.prose-page .mh-content>*+*{margin-top:18px}
.prose-page .mh-content>h2{margin-top:44px}

/* Yoast breadcrumbs */
.crumb-yoast{font-size:13px;color:#4e4a86}
.crumb-yoast>span>span{color:var(--txt)}
/* Older page builder content stays visible and contained until it is rebuilt */
.mh-content .wpb_animate_when_almost_visible{opacity:1!important;animation:none!important}
.mh-content>.vc_row,.mh-content>.vc_section{max-width:1200px;margin-left:auto!important;margin-right:auto!important}
.mh-content .vc_row[data-vc-full-width]{left:auto!important;width:auto!important}

/* =========================================================
   1.0.2 refinements
   ========================================================= */
/* Menus: hover area reaches the dropdown, with a short close delay */
.mh-nav,.mh-menu{align-self:stretch}
.mh-menu{align-items:stretch;height:100%}
.mh-menu .mi{height:var(--hh)}
.dd{top:100%;padding-top:0;display:block;visibility:hidden;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .28s}
.mi:hover>.dd,.mi:focus-within>.dd,.mi.open>.dd{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition-delay:0s}
.mi.mega>.dd{top:100%;left:0;right:0;padding:0 40px}
.dd::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}

/* What we do panels: full borders on cut corners, icons, clearer states */
.panel{padding:0;background:var(--bd,rgba(255,255,255,.14));box-shadow:none!important;clip-path:var(--cut)}
.panel::before{content:"";position:absolute;inset:1px;background:radial-gradient(90% 55% at 85% 0%,rgba(31,197,255,.16),rgba(31,197,255,0) 60%),linear-gradient(170deg,#140f4a,#08051f);clip-path:polygon(15px 0,100% 0,100% calc(100% - 15px),calc(100% - 15px) 100%,0 100%,0 15px)}
.panel.is-open,.panel:hover,.panel:focus-within{--bd:rgba(31,197,255,.65)}
.pin{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:30px}
.pin .pn{top:28px;left:30px}
.pico{position:absolute;top:22px;right:24px;width:64px;height:74px;display:flex;align-items:center;justify-content:center;background:rgba(31,197,255,.12);color:var(--cy);clip-path:var(--hexp);transition:background .3s,color .3s}
.pico .ico{width:30px;height:30px}
.panel.is-open .pico,.panel:hover .pico{background:var(--cy);color:var(--navy)}
.ptext{padding-right:46px}
.panel.is-open .ptext,.panel:hover .ptext{padding-right:0}
.pplus{position:absolute;right:26px;bottom:30px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--cy);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);transition:opacity .2s}
.panel.is-open .pplus,.panel:hover .pplus{opacity:0}

/* Hive centre: brand mark */
.c-core{background:radial-gradient(circle at 50% 40%,#1d1660,#0b0733)}
.c-core img{width:74px;height:74px;object-fit:contain}
a.c-core:hover{background:radial-gradient(circle at 50% 40%,#2a2378,#130d4a);filter:none}

/* Key facts: calmer type */
.stats .frame{padding:24px 24px 26px}
.stats .stat-v{font-size:clamp(22px,2.2vw,28px);line-height:1.15}
.stats .stat-l{font-size:14px}

/* Social icons */
.mh-social{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0}
.mh-social li{margin:0}
.mh-social a{width:42px;height:42px;display:flex;align-items:center;justify-content:center;color:#e6e4fb;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:background .2s,color .2s,box-shadow .2s}
.mh-social a:hover{background:var(--cy);color:var(--navy);box-shadow:none}
.soc-ico{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* Project filter: one line, scrolls sideways when needed */
.ftabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.ftabs::-webkit-scrollbar{display:none}
.ftab{flex:none;white-space:nowrap;padding:10px 14px;font-size:13.5px}

/* Contact form */
.nf-form-content nf-fields-wrap{gap:20px}
.nf-form-content .nf-field-label{margin-bottom:8px!important}
.nf-form-content .nf-field-label label,.nf-form-content .nf-field-label .nf-label-span{font-size:13px!important;font-weight:500!important;letter-spacing:0!important;color:#d8d6f0!important}
.nf-form-content .ninja-forms-field:not([type=checkbox]):not([type=submit]):not([type=button]),.nf-form-content select.ninja-forms-field{padding:14px 16px!important;background:rgba(5,2,26,.55)!important;border:1px solid rgba(255,255,255,.14)!important;transition:border-color .2s,box-shadow .2s}
.nf-form-content .ninja-forms-field:focus{border-color:var(--cy)!important;box-shadow:0 0 0 3px rgba(31,197,255,.15)!important;background:rgba(5,2,26,.7)!important}
.nf-form-content select.ninja-forms-field{-webkit-appearance:none;appearance:none;padding-right:44px!important;cursor:pointer}
.nf-form-content .listselect-wrap .nf-field-element>div::after{right:16px!important}
.nf-form-content .listcheckbox-wrap .nf-field-element ul{gap:8px!important;margin:0!important;padding:0!important}
.nf-form-content .listcheckbox-wrap .nf-field-element li{position:relative;margin:0!important;padding:0!important}
.nf-form-content .listcheckbox-wrap .nf-field-element li input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;margin:0!important}
.nf-form-content .listcheckbox-wrap .nf-field-element li label{margin:0!important;padding:10px 14px!important;font-size:13.5px!important;line-height:1.2!important;background:rgba(5,2,26,.4)}
.nf-form-content .listcheckbox-wrap .nf-field-element li input:checked+label{background:var(--cy)!important}
.nf-form-content .checkbox-wrap{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:flex-start!important;gap:12px}
.nf-form-content .checkbox-wrap .nf-field-element{order:1;flex:none;width:auto!important;margin:0!important}
.nf-form-content .checkbox-wrap .nf-field-label{order:2;flex:1;margin:0!important}
.nf-form-content .checkbox-wrap input{width:18px!important;height:18px!important;margin:2px 0 0!important;accent-color:var(--cy)}
.nf-form-content .checkbox-wrap .nf-field-label label{font-size:13.5px!important;font-weight:400!important;color:var(--txt)!important;line-height:1.6!important}
.nf-form-content .nf-field-description,.nf-form-content .nf-input-limit{display:none}
.nf-form-content .nf-error-wrap{margin-top:6px}
.nf-form-content .nf-error-msg{font-size:12.5px}

/* Responsive: header, hero and hive on tablets and phones */
@media (max-width:1180px){
  .mh-menu .mi{height:auto}
  .dd,.mi.mega>.dd{display:none;visibility:visible;opacity:1;transform:none;pointer-events:auto;transition:none;padding:0 0 14px}
  .mi.open>.dd{display:block}
  .dd::before{display:none}
  .home-hero{padding-top:calc(var(--hh) + 24px)}
  .home-grid{gap:30px}
  .hive{transform:scale(.82);transform-origin:top center;margin:0 auto -84px;width:622px}
  .pin{padding:64px 24px 24px}
  .pico{top:14px;width:52px;height:60px}
  .pico .ico{width:24px;height:24px}
  .pplus{display:none}
  .ptext{padding-right:0}
  .ftabs{margin-right:-40px;padding-right:40px}
}
@media (max-width:820px){
  .hive{transform:scale(.7);margin-bottom:-140px}
  .ihero-grid{padding-top:36px;padding-bottom:56px}
}
@media (max-width:640px){
  .hive{display:block;transform:scale(.52);transform-origin:top left;width:622px;margin:0 0 -222px}
  .home-hero{padding-bottom:40px}
  .home-hero h1{font-size:40px!important}
  .home-hero .lead{font-size:16px}
  .ihero h1,.ititle{font-size:36px!important}
  .ilead,.ihero .wp-block-post-excerpt{font-size:16px}
  .hbtns .btn,.wp-block-buttons .wp-block-button{flex:1 1 auto}
  .hbtns .btn,.wp-block-buttons .wp-block-button__link{width:100%}
  .stats .stat-v{font-size:24px}
  .ftabs{margin-right:-20px;padding-right:20px}
}
@media (max-width:400px){.hive{transform:scale(.48);margin-bottom:-242px}}
@media (max-width:1180px){.home-grid{grid-template-columns:minmax(0,1fr)!important}.home-grid>*{min-width:0}}
.pplus{display:none!important}
.ptext{padding-right:0!important}
.panel:not(.is-open):not(:hover) h3{font-size:20px}

/* =========================================================
   1.0.3 · fluid hive and branded map
   ========================================================= */
/* Hive scales by cell size, so it always fills the available width */
.hive{--c:118px;--g:8px;transform:none!important;margin:0!important;width:auto!important;padding:10px 0}
.hexrow{gap:var(--g)}
.hexrow+.hexrow{margin-top:calc(var(--c) * -0.22)}
.hexrow.odd{padding-left:calc((var(--c) + var(--g)) / 2)}
.cell{flex:0 0 var(--c);width:var(--c);height:calc(var(--c) * 1.1547);padding:0 calc(var(--c) * .11)}
.c-core img{width:calc(var(--c) * .6);height:calc(var(--c) * .6)}
@media (max-width:1180px){
  .hive{--c:calc((min(100vw, 1180px) - 80px - 4 * var(--g)) / 5);display:block!important;max-width:760px;margin:10px auto 0!important}
  .hive{--c:min(140px, calc((100vw - 80px - 4 * var(--g)) / 5))}
  .home-hero .hive{justify-self:center}
}
@media (max-width:640px){
  .hive{--g:5px;--c:calc((100vw - 40px - 4 * var(--g)) / 5);margin-top:6px!important}
  .cell{gap:4px;padding:0 4px;font-size:7.5px;letter-spacing:.02em}
  .cell .ico{width:20px;height:20px}
}
@media (max-width:420px){
  .cell span{display:none}
  .cell .ico{width:22px;height:22px}
}

/* Branded map */
.mh-map{position:relative;height:260px;background:#070423;overflow:hidden;isolation:isolate}
.mh-map .leaflet-container{background:#070423;font-family:Poppins,Arial,sans-serif}
.mh-map .leaflet-tile-pane{filter:sepia(1) hue-rotate(195deg) saturate(2.6) brightness(.72) contrast(1.15)}
.mh-map::after{content:"";position:absolute;inset:0;z-index:400;pointer-events:none;background:radial-gradient(60% 70% at 50% 45%,rgba(31,197,255,0) 40%,rgba(5,2,26,.55) 100%)}
.mh-map .leaflet-control-attribution{font-size:9px;background:rgba(5,2,26,.75)!important;color:#8e8ab8}
.mh-map .leaflet-control-attribution a{color:#9fe3ff}
.mh-map .leaflet-control-zoom a{background:#0b0733!important;color:#fff!important;border-color:rgba(255,255,255,.15)!important}
.mh-pin{position:relative;width:34px;height:39px}
.mh-pin i{position:absolute;inset:0;background:var(--cy);clip-path:var(--hexp);box-shadow:0 0 0 2px #05021a}
.mh-pin b{position:absolute;inset:9px 8px;background:#05021a;clip-path:var(--hexp)}
.mh-pin::before{content:"";position:absolute;left:50%;top:50%;width:90px;height:90px;margin:-45px 0 0 -45px;border-radius:50%;background:radial-gradient(circle,rgba(31,197,255,.45),rgba(31,197,255,0) 70%);animation:mh-pulse 2.4s ease-out infinite}
@keyframes mh-pulse{0%{transform:scale(.3);opacity:1}100%{transform:scale(1.4);opacity:0}}
.mh-map-tag{position:absolute;left:14px;bottom:14px;z-index:450;padding:7px 11px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#05021a;background:var(--cy)}
.mh-map-fallback{display:flex;align-items:center;justify-content:center;height:100%;color:var(--ice);font-size:13px}

/* =========================================================
   1.0.4 · mobile menu, burger, balanced mobile hero, CTA buttons
   ========================================================= */
/* Burger: hexagon button with two lines that turn into an X */
.mh-burger{position:relative;width:48px;height:48px;padding:0;background:none;border:0;box-shadow:none;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#fff}
.mh-burger .bg{position:absolute;inset:0;background:rgba(31,197,255,.14);clip-path:var(--hexp);transition:background .25s}
.mh-burger:hover .bg,.mh-burger[aria-expanded="true"] .bg{background:var(--cy)}
.mh-burger i{position:relative;display:block;height:2px;background:currentColor;border-radius:2px;transition:transform .3s,width .3s,background .25s}
.mh-burger i:nth-of-type(1){width:20px}
.mh-burger i:nth-of-type(2){width:13px;margin-left:7px}
.mh-burger[aria-expanded="true"] i{background:var(--navy)}
.mh-burger[aria-expanded="true"] i:nth-of-type(1){transform:translateY(4px) rotate(45deg)}
.mh-burger[aria-expanded="true"] i:nth-of-type(2){width:20px;margin-left:0;transform:translateY(-4px) rotate(-45deg)}

@media (max-width:1180px){
  /* A blurred header would trap the fixed menu panel inside it, so the open menu uses a solid header */
  .mh-header.is-open{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:var(--navy)!important}
  .mh-nav{z-index:99;height:auto;padding:12px 20px 40px;border-top:1px solid rgba(255,255,255,.08);background:var(--navy)}
  .admin-bar .mh-header.is-open .mh-nav{top:var(--hh)}
  .mh-header.is-open .mh-nav{display:flex;animation:mh-drop .25s ease}
  .mh-menu{height:auto}
  .mh-menu .mi{min-height:0}
  .mh-menu .nl{font-size:18px;font-weight:600;color:#fff}
  .dd-tog{width:44px;height:44px;border-radius:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);color:#fff}
  .mi.open>.dd-tog{background:var(--cy);color:var(--navy)}
  .ddl{padding:10px 4px}
  .ddh{padding:10px 4px 6px}
}
@keyframes mh-drop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* Mobile hero: balanced glow, centred hive */
@media (max-width:1180px){
  .home-hero{background:radial-gradient(70% 40% at 50% 78%,rgba(31,197,255,.22),rgba(31,197,255,0) 70%),radial-gradient(60% 30% at 50% 20%,rgba(91,75,255,.25),rgba(91,75,255,0) 70%),linear-gradient(180deg,#0e0733 0%,#05021a 100%)}
  .home-grid>*:last-child{display:flex;justify-content:center}
  .hive{margin-left:auto!important;margin-right:auto!important}
}
@media (max-width:640px){
  .hive{--c:calc((100vw - 40px - 4 * var(--g)) / 5.5)}
  .home-hero{padding-bottom:56px}
}

/* CTA band: both buttons the same width */
.ctab .wp-block-buttons{flex-direction:column;align-items:stretch;min-width:260px}
.ctab .wp-block-button{width:100%;margin:0}
.ctab .wp-block-button__link{width:100%;justify-content:center}
@media (max-width:640px){.ctab .wp-block-buttons{min-width:0;width:100%}}
/* Breathing room between intro text and buttons */
.home-hero .wp-block-buttons,.ihero .hbtns{margin-top:36px!important}
.sh-col>.wp-block-buttons,.ctab .sh-col+.wp-block-buttons{margin-top:28px}
.ctab .wp-block-buttons{margin-top:0}
@media (max-width:640px){.home-hero .wp-block-buttons,.ihero .hbtns{margin-top:28px!important}}

/* 1.0.5 · five panels, only the active one expands */
.svc-row{gap:10px}
.panel,.panel:hover,.panel:focus-within{flex:1}
.panel.is-open{flex:3.2}
.panel:hover,.panel:focus-within{--bd:rgba(255,255,255,.3)}
.panel.is-open{--bd:rgba(31,197,255,.65)}
.panel .pbody{max-height:0;opacity:0}
.panel.is-open .pbody{max-height:360px;opacity:1}
.panel:hover .pico,.panel .pico{background:rgba(31,197,255,.12);color:var(--cy)}
.panel.is-open .pico{background:var(--cy);color:var(--navy)}
.panel:not(.is-open) h3{font-size:18px}
.panel:not(.is-open) .pico{width:52px;height:60px}
.panel:not(.is-open) .pico .ico{width:24px;height:24px}
.pmore{margin-top:18px}
.plinks a{background:rgba(5,2,26,.35)}
@media (max-width:1180px){
  .panel,.panel.is-open{flex:none}
  .panel .pbody{max-height:none;opacity:1}
  .panel:not(.is-open) h3{font-size:20px}
  .panel .pico,.panel:not(.is-open) .pico{background:rgba(31,197,255,.12);color:var(--cy);width:52px;height:60px}
}

/* =========================================================
   1.0.6 · hub cards, section bar, world map
   ========================================================= */
/* Card grids: separate cards with their own borders (no empty grey cells) */
.capgrid{background:none;border:0;gap:12px}
.cap{position:relative;background:var(--panel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);transition:background .3s,box-shadow .3s}
.cap:hover{background:var(--deep);box-shadow:inset 0 0 0 1px rgba(31,197,255,.5)}
.capgrid:has(>.cap:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}
.capgrid:has(>.cap:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.cap h3 a{color:#fff;text-decoration:none}
.cap h3 a::after{content:"";position:absolute;inset:0}
.cap:hover h3 a{color:var(--cy)}
.cap .lnk,.cap p:last-child a{position:relative;z-index:1}
.lnk:not(:has(svg))::after{content:"→";margin-left:6px;transition:margin .25s}
.lnk:not(:has(svg)):hover::after{margin-left:10px}
.cap p+p{margin-top:16px}
@media (max-width:1180px){.capgrid:has(>.cap:nth-child(4):last-child){grid-template-columns:1fr 1fr}}
@media (max-width:640px){.capgrid:has(>.cap:nth-child(4):last-child),.capgrid:has(>.cap:nth-child(2):last-child){grid-template-columns:1fr}}

/* "In this section": one tidy line of chips, scrolls on small screens */
.kids{background:rgba(5,2,26,.6)}
.kids-in{flex-wrap:nowrap;gap:8px;overflow-x:auto;scrollbar-width:none;padding-top:16px;padding-bottom:16px;-webkit-mask-image:linear-gradient(90deg,#000 92%,transparent);mask-image:linear-gradient(90deg,#000 92%,transparent)}
.kids-in::-webkit-scrollbar{display:none}
.kids-lab{flex:none;margin-right:8px}
.kids a{flex:none;white-space:nowrap;padding:8px 14px;font-size:13.5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.kids a:hover{box-shadow:none}

/* World map */
.world .sh{margin-bottom:10px}
.reach-map{position:relative;margin-top:40px}
.reach-map img{display:block;width:100%;height:auto;opacity:.95}
.reach-map::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(50% 60% at 62% 50%,rgba(31,197,255,.08),rgba(31,197,255,0) 70%)}
.rpin{position:absolute;z-index:2;width:0;height:0}
.rpin i{position:absolute;left:-8px;top:-9px;width:16px;height:18px;background:var(--cy);clip-path:var(--hexp)}
.rpin i::after{content:"";position:absolute;inset:4px;background:var(--navy);clip-path:var(--hexp)}
.rpin b{position:absolute;white-space:nowrap;padding:6px 10px;font-size:12px;font-weight:600;color:#fff;background:rgba(11,7,51,.92);box-shadow:inset 0 0 0 1px rgba(31,197,255,.45)}
.rpin b small{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--cy);margin-left:4px}
.rpin b::before{content:"";position:absolute;background:rgba(31,197,255,.6)}
.rp-t b{left:50%;bottom:30px;transform:translateX(-50%)}
.rp-t b::before{left:50%;top:100%;width:1px;height:20px}
.rp-b b{left:50%;top:30px;transform:translateX(-30%)}
.rp-b b::before{left:30%;bottom:100%;width:1px;height:20px}
.rp-l b{right:26px;top:50%;transform:translateY(-50%)}
.rp-l b::before{left:100%;top:50%;width:16px;height:1px}
.rp-r b{left:26px;top:50%;transform:translateY(-50%)}
.rp-r b::before{right:100%;top:50%;width:16px;height:1px}
.rpin.is-hq i{width:22px;height:25px;left:-11px;top:-12px}
.rpin.is-hq b{background:var(--cy);color:var(--navy);box-shadow:none}
.rpin.is-hq b small{color:var(--navy)}
.rpin.is-hq::before{content:"";position:absolute;left:-40px;top:-40px;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle,rgba(31,197,255,.45),rgba(31,197,255,0) 70%);animation:mh-pulse 2.4s ease-out infinite}
.rpin.is-hq.rp-t b{bottom:46px}
.rpin.is-hq.rp-t b::before{height:34px}
.reach-list{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:30px 0 0;padding:0}
.reach-list li{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:500;color:#e6e4fb;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.reach-list li i{width:10px;height:11.5px;background:var(--cy);clip-path:var(--hexp)}
.reach-list li.is-hq{background:var(--cy);color:var(--navy);box-shadow:none}
.reach-list li.is-hq i{background:var(--navy)}
.reach-list small{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
@media (max-width:900px){.rpin b{display:none}.rpin.is-hq b{display:block;font-size:10px;padding:4px 8px}}

/* ===== 1.0.7 ===== */
/* Page header: no location label. */
.hc-lab{display:none!important}

/* Burger: two plain lines, no hexagon. */
.mh-burger{width:44px;height:44px;gap:7px;align-items:flex-end;padding:0 10px}
.mh-burger .bg{display:none!important}
.mh-burger i,.mh-burger[aria-expanded="true"] i{background:#fff}
.mh-burger i:nth-of-type(1){width:24px}
.mh-burger i:nth-of-type(2){width:16px;margin-left:0}
.mh-burger:hover i{background:var(--cy)}
.mh-burger:hover i:nth-of-type(2){width:24px}
.mh-burger[aria-expanded="true"] i:nth-of-type(1){width:24px;transform:translateY(4.5px) rotate(45deg)}
.mh-burger[aria-expanded="true"] i:nth-of-type(2){width:24px;transform:translateY(-4.5px) rotate(-45deg)}
.mh-burger:focus-visible{outline:2px solid var(--cy);outline-offset:2px}

/* Consent checkbox: drop the Ninja Forms drawn box, style the real input. */
.nf-form-content .checkbox-wrap .nf-field-label label::before,
.nf-form-content .checkbox-wrap .nf-field-label label::after,
.nf-form-content .checkbox-wrap .nf-field-element::before,
.nf-form-content .checkbox-wrap .nf-field-element::after{display:none!important;content:none!important}
.nf-form-content .checkbox-wrap .nf-field-label label{padding-left:0!important;margin-left:0!important}
.nf-form-content .checkbox-wrap input[type=checkbox]{-webkit-appearance:none;appearance:none;position:static!important;opacity:1!important;display:grid;place-content:center;width:20px!important;height:20px!important;margin:1px 0 0!important;background:rgba(5,2,26,.55);border:1px solid rgba(31,197,255,.6);border-radius:3px;cursor:pointer;transition:background .2s,border-color .2s}
.nf-form-content .checkbox-wrap input[type=checkbox]::before{content:"";width:10px;height:6px;border:2px solid var(--navy);border-top:0;border-right:0;transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform .15s}
.nf-form-content .checkbox-wrap input[type=checkbox]:checked{background:var(--cy);border-color:var(--cy)}
.nf-form-content .checkbox-wrap input[type=checkbox]:checked::before{transform:translateY(-1px) rotate(-45deg) scale(1)}
.nf-form-content .checkbox-wrap input[type=checkbox]:focus-visible{outline:2px solid var(--cy);outline-offset:2px}
.nf-form-content .checkbox-wrap .nf-field-label label{font-size:13px!important;line-height:1.55!important}

/* Compact contact form so both columns balance. */
.ct{align-items:stretch}
.ct-side{display:flex;flex-direction:column}
.ct-side .office{flex:1;display:flex;flex-direction:column}
.ct-side .office .mh-map{flex:1;min-height:240px;height:auto}
.ct-form-in{padding:32px 34px}
.ct-form-in .ct-h{margin:10px 0 20px!important}
.nf-form-fields-required{display:none}
.nf-form-content nf-fields-wrap{gap:14px 16px!important}
.nf-form-content .nf-field-label{margin-bottom:6px!important}
.nf-form-content .nf-field-label label,.nf-form-content .nf-field-label .nf-label-span{font-size:12.5px!important}
.nf-form-content .ninja-forms-field:not([type=checkbox]):not([type=submit]):not([type=button]),.nf-form-content select.ninja-forms-field{padding:11px 14px!important;font-size:14.5px!important;line-height:1.4!important}
.nf-form-content textarea.ninja-forms-field{min-height:96px!important;height:96px!important}
.nf-form-content .listcheckbox-wrap .nf-field-element li label{padding:8px 12px!important;font-size:13px!important}
.nf-form-content .listcheckbox-wrap .nf-field-element ul{gap:6px!important}
.submit-container{padding-top:16px}
.submit-container input[type=submit],.submit-container input[type=button]{min-height:48px}
.ct-note{margin-top:12px}
@media (max-width:900px){.ct{align-items:start}.ct-side .office .mh-map{flex:none;height:240px}}

/* Product cards link to their pages. */
.prod h3 a,.prod-feat h3 a{color:inherit;text-decoration:none}
.prod h3 a:hover,.prod-feat h3 a:hover{color:var(--cy)}
.prod-feat .wp-block-buttons{gap:12px}

/* Collapsed service panels: banner style title, reading bottom to top. */
@media (min-width:1181px){
  .panel:not(.is-open) .pin{justify-content:flex-end;padding-bottom:30px}
  .panel:not(.is-open) .ptext h3{writing-mode:vertical-rl;transform:rotate(180deg);white-space:normal;max-height:360px;font-size:24px!important;font-weight:800;text-transform:uppercase;letter-spacing:.06em;line-height:1.12;text-align:left}
  .panel.is-open .ptext h3{writing-mode:horizontal-tb;transform:none;animation:mhFade .45s ease}
  .panel:not(.is-open):hover .ptext h3{color:var(--cy)}
}
@keyframes mhFade{from{opacity:0}to{opacity:1}}

/* 1.0.9 */
#open-roles{scroll-margin-top:100px}
/* Contact: one card for call and WhatsApp (same number), two hexagon actions. */
.way-dual:hover .hxi{background:var(--cy);color:var(--navy)}
.way-acts{display:flex;gap:6px}
.way-act{transition:background .2s,color .2s}
.way-act:hover,.way-act:focus-visible{background:var(--cy)!important;color:var(--navy)!important}
.way-dual b a:hover{color:var(--cy)!important}
/* Consent checkbox: check state shows instantly. */
.nf-form-content .checkbox-wrap input[type=checkbox],.nf-form-content .checkbox-wrap input[type=checkbox]::before{transition:none!important;animation:none!important}
.nf-form-content .checkbox-wrap label,.nf-form-content .checkbox-wrap .nf-field-element{transition:none!important}

/* ===== 1.1.0 ===== */
/* Consent checkbox: native control (instant, reliable repaint), branded colour. */
.nf-form-content .checkbox-wrap input[type=checkbox]{-webkit-appearance:checkbox!important;appearance:auto!important;display:inline-block!important;width:20px!important;height:20px!important;margin:1px 0 0!important;background:none!important;border:0!important;border-radius:0!important;accent-color:#1fc5ff;color-scheme:dark;cursor:pointer}
.nf-form-content .checkbox-wrap input[type=checkbox]::before{content:none!important;display:none!important}
.nf-form-content .checkbox-wrap .nf-field-label label{cursor:pointer}

/* Form errors: calm, on brand. */
.nf-form-content .nf-error .nf-field-element::after,.nf-form-content .nf-pass .nf-field-element::after,.nf-form-content .nf-field-element::after{display:none!important;content:none!important}
.nf-form-content .nf-error .ninja-forms-field:not([type=checkbox]),.nf-form-content .nf-error select.ninja-forms-field{border-color:rgba(255,120,140,.75)!important;box-shadow:0 0 0 3px rgba(255,120,140,.12)!important}
.nf-form-content .nf-pass .ninja-forms-field{border-color:rgba(255,255,255,.14)!important}
.nf-form-content .nf-error-wrap .nf-error-msg{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12px!important;line-height:1.4;color:#ff9bab!important}
.nf-form-content .nf-error-wrap .nf-error-msg::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:#ff7a8c}
.nf-form-content .checkbox-wrap+.nf-error-wrap,.nf-form-content .checkbox-container .nf-error-wrap{margin-left:32px}
.nf-form-content .nf-error.checkbox-container input[type=checkbox]{outline:1px solid rgba(255,120,140,.8);outline-offset:1px}
.nf-form-errors .nf-error-msg,.nf-after-form-content .nf-error-msg{margin-top:14px;padding:10px 14px;font-size:13px!important;color:#ffc2cb!important;background:rgba(255,120,140,.08);border-left:2px solid #ff7a8c}

/* Map marker: small hexagon, thin cyan outline, soft pulse. */
.mh-map-tag{display:none!important}
.mh-mk-wrap{background:none;border:0}
.mh-dot{position:relative;width:22px;height:25px;filter:drop-shadow(0 0 6px rgba(31,197,255,.55))}
.mh-dot i{position:absolute;inset:0;background:var(--cy);clip-path:var(--hexp)}
.mh-dot b{position:absolute;inset:2px;background:#0a0630;clip-path:var(--hexp)}
.mh-dot b::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:9px;margin:-4.5px 0 0 -4px;background:var(--cy);clip-path:var(--hexp)}
.mh-dot::before{content:"";position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;border:1px solid rgba(31,197,255,.8);animation:mh-ring 2.6s ease-out infinite}
@keyframes mh-ring{0%{transform:scale(1);opacity:.9}100%{transform:scale(3);opacity:0}}
@media (prefers-reduced-motion:reduce){.mh-dot::before{animation:none}}

/* ===== 1.1.1 ===== */
/* Mobile and tablet home hero: hive first, then the headline. */
@media (max-width:1180px){
  .home-grid>*:last-child{order:-1}
  .home-hero{padding-top:calc(var(--hh) + 18px)}
  .home-hero .hive{margin-top:0!important;margin-bottom:8px!important}
  .home-hero .eyebrow{margin-top:0}
}

/* Mobile menu: open instantly, no colour flash on the header. */
@media (max-width:1180px){
  .mh-header{transition:none}
  .mh-header.is-open .mh-nav{animation:mh-menu-in .22s ease-out both}
}
@keyframes mh-menu-in{from{opacity:0;transform:translate3d(0,-6px,0)}to{opacity:1;transform:none}}

/* World map pins: thin outline hexagon with a small centre, like the office map. */
.rpin i{left:-7px;top:-8px;width:14px;height:16px;filter:drop-shadow(0 0 4px rgba(31,197,255,.6))}
.rpin i::after{inset:1.5px;background:radial-gradient(circle,var(--cy) 0 2.2px,#0a0630 2.8px)}
.rpin.is-hq i{width:20px;height:23px;left:-10px;top:-11.5px}
.rpin.is-hq i::after{inset:2px;background:radial-gradient(circle,var(--cy) 0 3.2px,#0a0630 3.8px)}
