@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
*{box-sizing:border-box}:root{--blue:#00afef;--blue-2:#1674c4;--blue-3:#0a58a5;--blue-pale:#eaf7fd;--navy:#07192b;--ink:#101820;--muted:#64727d;--paper:#f6f8f7;--white:#fff;--line:#d8e1e5;--shadow:0 24px 70px rgba(7,25,43,.12)}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.6;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}.page{overflow:hidden}.shell{width:min(1240px,calc(100% - 48px));margin-inline:auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.header-row{min-height:80px;display:grid;grid-template-columns:200px 1fr auto;align-items:center;gap:28px}.brand-logo{display:flex;align-items:center;justify-content:center;width:184px;height:58px;padding:2px 8px;background:#fff;border-radius:7px}.brand-logo img{width:auto;height:53px;object-fit:contain}.nav{display:flex;align-items:center;justify-content:center;gap:24px}.nav>a,.nav-drop>a{position:relative;padding:30px 0 25px;color:#2a343b;font-size:13px;font-weight:760}.nav>a:after,.nav-drop>a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:.2s}.nav>a:hover:after,.nav>a.active:after,.nav-drop>a:hover:after,.nav-drop>a.active:after{transform:scaleX(1)}.nav-drop{position:relative}.nav-drop>a span{font-size:11px;margin-left:4px}.drop-menu{position:absolute;top:68px;left:-24px;width:290px;padding:12px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.nav-drop:hover .drop-menu,.nav-drop:focus-within .drop-menu{opacity:1;visibility:visible;transform:none}.drop-menu a{display:block;padding:10px 12px;border-radius:4px;font-size:12px;font-weight:700}.drop-menu a:hover{background:var(--blue-pale);color:var(--blue-3)}.header-actions{display:flex;align-items:center;gap:12px}.head-phone{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:760}.ui-icon{width:19px;height:19px;display:block;flex:0 0 auto}.head-phone .ui-icon{color:var(--blue-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 19px;border:1px solid transparent;border-radius:4px;font-size:13px;font-weight:820;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(10,88,165,.13)}.btn-blue{background:var(--blue-2);color:#fff}.btn-white{background:#fff;color:var(--blue-3)}.btn-outline{border-color:#bcc8cf;background:transparent}.btn-outline-white{border-color:rgba(255,255,255,.5);color:#fff}.menu-btn{display:none;background:none;border:0;padding:8px}.menu-btn span{display:block;width:24px;height:2px;margin:5px;background:#111}.mobile-menu{display:none}.hero,.page-hero{background:linear-gradient(180deg,#fbfcfa,#f2f6f6)}.hero{padding:92px 0 74px}.page-hero{padding:82px 0 70px}.hero-grid,.page-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.eyebrow{margin:0 0 18px;color:#5d6b73;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.eyebrow:before{content:"";display:inline-block;width:28px;height:2px;margin:0 10px 3px 0;background:var(--blue)}.eyebrow.light{color:#d6f3ff}.eyebrow.light:before{background:#fff}h1,h2,h3{margin:0;line-height:1.04;letter-spacing:-.045em}h1{font-size:clamp(52px,6.2vw,88px);font-weight:760}h2{font-size:clamp(39px,4.8vw,65px);font-weight:730}h3{font-size:24px;font-weight:730}.hero h1 span,.page-hero h1 span{color:var(--blue-2)}.hero-lead{max-width:780px;margin:28px 0 0;color:#4e5d66;font-size:18px}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:34px}.arrow-link{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:800}.arrow-link .ui-icon{transition:.2s}.arrow-link:hover .ui-icon{transform:translateX(4px)}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid var(--line)}.hero-proof div{padding:19px 18px 0 0}.hero-proof strong,.hero-proof span{display:block}.hero-proof strong{font-size:17px}.hero-proof span{margin-top:3px;color:var(--muted);font-size:11px}.ops-card,.record-card,.service-symbol{background:var(--navy);color:#fff;border-radius:7px;box-shadow:var(--shadow);overflow:hidden}.ops-head,.record-title{display:flex;align-items:center;gap:8px;padding:17px 20px;border-bottom:1px solid rgba(255,255,255,.12);font-size:12px}.ops-head small{margin-left:auto;color:#91a9b8}.live-dot{width:8px;height:8px;border-radius:50%;background:#45dc9d;box-shadow:0 0 0 4px rgba(69,220,157,.12)}.ops-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid rgba(255,255,255,.12)}.ops-metrics div{padding:20px;border-right:1px solid rgba(255,255,255,.1)}.ops-metrics span,.ops-metrics strong{display:block}.ops-metrics span{color:#8da2af;font-size:10px;text-transform:uppercase}.ops-metrics strong{margin-top:5px;font-size:20px}.ops-feed{padding:8px 20px}.ops-feed div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:12px}.ops-feed span{color:#c7d4dc}.ops-feed b{color:#72d6ff;font-size:10px;text-transform:uppercase}.ops-foot{display:flex;justify-content:space-between;padding:15px 20px;background:rgba(255,255,255,.04);color:#8fa4b0;font-size:10px}.record-card dl{margin:0}.record-card dl div{display:grid;grid-template-columns:135px 1fr;gap:18px;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.record-card dt{color:#8fa4b0;font-size:11px}.record-card dd{margin:0;font-size:13px;font-weight:730}.stat-strip{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat-grid div{padding:32px 26px;border-right:1px solid var(--line)}.stat-grid div:first-child{padding-left:0}.stat-grid div:last-child{border-right:0}.stat-grid strong,.stat-grid span{display:block}.stat-grid strong{font-size:25px}.stat-grid span{margin-top:5px;color:var(--muted);font-size:11px}.section{padding:102px 0;border-bottom:1px solid var(--line)}.section-soft{background:#eef4f6}.section-blue,.cta-band,.map-band{background:linear-gradient(135deg,var(--blue-3),var(--blue));color:#fff;border-bottom:0}.section-head,.editorial-grid{display:grid;grid-template-columns:88px 1fr;gap:30px;margin-bottom:52px}.section-no{padding-top:8px;color:#84919a;font-size:11px;font-weight:850}.section-head>div>p:last-child,.editorial-grid>div>p{max-width:800px;color:var(--muted);font-size:16px}.editorial-grid>div>p{margin:18px 0 0}.section-head h2,.editorial-grid h2{max-width:930px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bdc9ce;border-left:1px solid #bdc9ce}.service-card{min-height:310px;padding:26px;border-right:1px solid #bdc9ce;border-bottom:1px solid #bdc9ce;background:#fbfcfa;transition:.22s}.service-card:hover{background:#fff;transform:translateY(-3px);box-shadow:0 18px 40px rgba(7,25,43,.08)}.service-top{display:flex;align-items:center;justify-content:space-between}.service-top>span{color:#81909a;font-size:10px;font-weight:850}.icon-box{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--blue-pale);color:var(--blue-2)}.service-card h3{margin:62px 0 12px;font-size:23px}.service-card p{min-height:88px;margin:0;color:#5e6d76;font-size:13px}.service-card .arrow-link{margin-top:18px;color:var(--blue-3);font-size:11px}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.section-blue h2{color:#fff}.lead-light{color:#d9f1fa;font-size:17px}.blue-list{border-top:1px solid rgba(255,255,255,.28)}.blue-list>div{display:grid;grid-template-columns:48px 1fr;gap:10px;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.22)}.blue-list span{color:#d9f2ff;font-size:11px;font-weight:850}.blue-list p{margin:0}.blue-list b{color:#fff}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bec9ce;border-left:1px solid #bec9ce}.industry-grid span{padding:24px;border-right:1px solid #bec9ce;border-bottom:1px solid #bec9ce;background:#fbfcfa;font-size:13px;font-weight:760}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process{padding:27px;border:1px solid #c8d2d6;background:#fff}.process>span{color:var(--blue-2);font-size:10px;font-weight:850}.process h3{margin:48px 0 10px}.process p{margin:0;color:var(--muted);font-size:13px}.cta-band,.map-band{padding:78px 0}.cta-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}.cta-band h2{max-width:860px;color:#fff}.cta-actions{display:flex;gap:10px}.dual-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quote-card{padding:38px;border:1px solid #bcc9ce;background:#fff}.quote-card small{color:var(--blue-2);font-size:10px;font-weight:850;text-transform:uppercase}.quote-card h3{margin:62px 0 18px;font-size:34px}.quote-card p{margin:0;color:var(--muted)}.tag-board{display:flex;flex-wrap:wrap;gap:8px}.tag-board span{padding:12px 14px;border:1px solid #c7d3d8;background:#fff;font-size:12px;font-weight:720}.industry-stack{border-top:1px solid rgba(255,255,255,.25)}.industry-stack div{display:grid;grid-template-columns:50px 1fr;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.22)}.industry-stack span{font-size:10px;color:#d8f2ff}.industry-stack b{font-size:15px}.office-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bec9ce;border-left:1px solid #bec9ce}.office-card{min-height:220px;padding:27px;border-right:1px solid #bec9ce;border-bottom:1px solid #bec9ce;background:#fbfcfa}.office-card.main{background:var(--blue-pale)}.office-card small{color:#6f7f88;font-size:10px;font-weight:850;text-transform:uppercase}.office-card h3{margin:48px 0 9px}.office-card p{margin:0;color:#5f6d75;font-size:13px}.map-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:56px;align-items:center}.map-band h2{color:#fff}.map-band p{color:#e7f7fd}.map-frame{overflow:hidden;border:1px solid rgba(255,255,255,.3);background:var(--navy);box-shadow:var(--shadow)}.map-frame iframe{display:block;width:100%;height:410px;border:0;filter:grayscale(.55) saturate(.8) hue-rotate(155deg)}.map-large iframe{height:610px}.hero-index{border-top:1px solid #bdc9ce}.hero-index a{display:grid;grid-template-columns:42px 1fr 22px;align-items:center;padding:13px 0;border-bottom:1px solid #bdc9ce}.hero-index span{color:#81909a;font-size:10px}.hero-index b{font-size:13px}.hero-index .ui-icon{color:var(--blue-2)}.practice-list{border-top:1px solid #bdc9ce}.practice-row{display:grid;grid-template-columns:70px 1fr 150px;gap:25px;align-items:center;padding:30px 0;border-bottom:1px solid #bdc9ce}.practice-row>span{color:#7f8e97;font-size:11px;font-weight:850}.practice-row h2{font-size:34px}.practice-row p{max-width:760px;margin:8px 0 0;color:var(--muted);font-size:14px}.practice-row .arrow-link{justify-self:end;color:var(--blue-3);font-size:11px}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #bdc9ce;border-left:1px solid #bdc9ce}.team-card{min-height:360px;padding:30px;border-right:1px solid #bdc9ce;border-bottom:1px solid #bdc9ce;background:#fbfcfa}.team-number{color:#81909a;font-size:10px;font-weight:850}.team-icon{width:54px;height:54px;display:flex;align-items:center;justify-content:center;margin-top:55px;border-radius:50%;background:var(--blue-pale);color:var(--blue-2)}.team-icon .ui-icon{width:27px;height:27px}.team-card h2{margin-top:18px;font-size:36px}.team-card .role{color:var(--blue-3);font-weight:760}.team-card p:last-child{color:var(--muted);font-size:14px}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:start}.contact-grid h2{font-size:52px}.contact-grid>div>p{color:var(--muted)}.contact-form{margin-top:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form label{display:block;margin-bottom:12px;color:#4e5c65;font-size:11px;font-weight:780;text-transform:uppercase}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;min-height:50px;margin-top:6px;padding:11px 12px;border:1px solid #bdc9ce;background:#fff;outline:none;text-transform:none;color:#182026}.contact-form textarea{min-height:100px;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue-2);box-shadow:0 0 0 3px rgba(0,175,239,.1)}.form-actions{display:flex;gap:10px;margin-top:4px}.contact-form small{display:block;margin-top:12px;color:#79868e}.site-footer{padding:55px 0 24px;background:var(--navy);color:#fff}.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:45px}.footer-brand .brand-logo{margin-bottom:18px}.site-footer strong{display:block;margin-bottom:12px;font-size:12px}.site-footer a,.site-footer p{display:block;margin:6px 0;color:#a8bbc7;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:#8399a6;font-size:10px}.back-top{position:fixed;right:20px;bottom:20px;z-index:30;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.5);background:var(--blue-2);color:#fff;opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s}.back-top.show{opacity:1;pointer-events:auto;transform:none}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .58s ease,transform .58s ease}.js .reveal.visible{opacity:1;transform:none}@media(max-width:1100px){.header-row{grid-template-columns:1fr auto}.nav,.header-actions{display:none}.menu-btn{display:block}.mobile-menu.open{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:12px 24px 20px;background:#fff;border-top:1px solid var(--line)}.mobile-menu a{padding:11px;border:1px solid var(--line);font-size:12px;font-weight:760}.hero-grid,.page-hero-grid,.split,.map-grid,.contact-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.stat-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}}@media(max-width:720px){html{scroll-padding-top:72px}.shell{width:min(100% - 28px,1240px)}.header-row{min-height:68px}.brand-logo{width:160px;height:50px}.brand-logo img{height:45px}.hero,.page-hero{padding:56px 0}.hero-grid,.page-hero-grid{gap:38px}h1{font-size:47px}h2{font-size:39px}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-proof{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}.section{padding:70px 0}.section-head,.editorial-grid{grid-template-columns:1fr;gap:10px;margin-bottom:32px}.service-grid,.process-grid,.industry-grid,.office-grid,.team-grid,.dual-cards{grid-template-columns:1fr}.practice-row{grid-template-columns:42px 1fr}.practice-row .arrow-link{grid-column:2;justify-self:start}.map-frame iframe,.map-large iframe{height:340px}.cta-grid{grid-template-columns:1fr}.cta-actions,.form-actions{flex-direction:column}.form-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;gap:8px}.record-card dl div{grid-template-columns:110px 1fr}}@media(max-width:480px){h1{font-size:41px}.stat-grid,.footer-grid{grid-template-columns:1fr}.mobile-menu.open{grid-template-columns:1fr}.ops-metrics{grid-template-columns:1fr}.ops-metrics div{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}}
.service-symbol{padding:34px;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(155deg,#07192b,#0a3155)}
.service-symbol:before{content:"";display:block;width:90px;height:90px;margin-bottom:auto;border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,rgba(0,175,239,.22),rgba(22,116,196,.06))}
.service-symbol span,.service-symbol strong{display:block}.service-symbol span{color:#90a9b8;font-size:11px;text-transform:uppercase}.service-symbol strong{margin-top:10px;color:#fff;font-size:31px;line-height:1.06;letter-spacing:-.04em}
.scope-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bdc9ce;border-left:1px solid #bdc9ce}
.scope-card{min-height:190px;padding:24px;border-right:1px solid #bdc9ce;border-bottom:1px solid #bdc9ce;background:#fff}
.scope-card span{color:var(--blue-2);font-size:10px;font-weight:850}.scope-card p{margin:60px 0 0;font-size:14px;font-weight:650}
.cta-card{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:36px;border:1px solid #bdc9ce;background:#fff}
.cta-card h2{font-size:42px}
@media(max-width:1100px){.scope-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.scope-grid{grid-template-columns:1fr}.cta-card{align-items:flex-start;flex-direction:column}.service-symbol{min-height:280px}}


/* ===== Sankhla landing-page colour system ===== */
:root{
  --bg:#061226;
  --bg2:#0a1933;
  --bg3:#102550;
  --panel:#132b5b;
  --panel2:#0c2148;
  --blue:#4f88ff;
  --blue2:#7aa9ff;
  --cyan:#43b8f5;
  --text:#edf4ff;
  --muted:#afbdd4;
  --muted2:#8294b2;
  --line:rgba(146,177,235,.18);
  --softline:rgba(255,255,255,.09);
  --shadow:0 28px 85px rgba(0,0,0,.32);
}
html{background:#061226}
body{
  background:
    radial-gradient(circle at 85% 5%,rgba(67,184,245,.10),transparent 22%),
    radial-gradient(circle at 8% 24%,rgba(79,136,255,.09),transparent 24%),
    var(--bg);
  color:var(--text);
}
.page{background:transparent}
.site-header{
  background:rgba(6,18,38,.95);
  border-bottom:1px solid var(--softline);
  box-shadow:0 10px 28px rgba(0,0,0,.10)
}
.brand-logo{
  width:205px;
  height:60px;
  padding:4px 10px;
  border-radius:10px;
  background:#fff;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12)
}
.brand-logo img{height:52px;width:auto;max-width:100%;object-fit:contain}
.nav>a,.nav-drop>a{color:#d9e4f6}
.nav>a:after,.nav-drop>a:after{background:linear-gradient(90deg,var(--blue),var(--cyan))}
.nav>a:hover,.nav-drop>a:hover,.nav>a.active,.nav-drop>a.active{color:#fff}
.drop-menu{
  background:rgba(6,18,38,.99);
  border-color:rgba(126,166,238,.20);
  box-shadow:0 24px 55px rgba(0,0,0,.38)
}
.drop-menu a{color:#dbe6f7}
.drop-menu a:hover{background:linear-gradient(135deg,rgba(79,136,255,.16),rgba(67,184,245,.12));color:#fff}
.head-phone{color:#fff}
.head-phone .ui-icon{color:#8fc2ff}
.btn-blue{
  color:#fff;
  background:linear-gradient(135deg,var(--blue),var(--cyan));
  border-color:transparent
}
.btn-outline{color:#edf4ff;border-color:rgba(166,193,245,.28);background:rgba(255,255,255,.04)}
.mobile-menu{background:#071426;border-color:rgba(127,166,235,.20)}
.mobile-menu a{color:#e3ecfa;border-color:rgba(143,177,239,.15);background:rgba(255,255,255,.03)}

.hero,.page-hero{
  color:#fff;
  background:
    radial-gradient(circle at 88% 14%,rgba(67,184,245,.20),transparent 29%),
    radial-gradient(circle at 15% 35%,rgba(79,136,255,.18),transparent 28%),
    linear-gradient(90deg,#020917 0%,#051027 46%,#0f2149 100%);
  border-bottom:1px solid var(--softline)
}
.hero h1,.page-hero h1{color:#fff}
.hero h1 span,.page-hero h1 span{
  background:linear-gradient(90deg,#6fa9ff 0%,#63c7ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent
}
.eyebrow{color:#9fc1ff}
.eyebrow:before{background:linear-gradient(90deg,var(--blue),var(--cyan))}
.hero-lead{color:#d7e3f6}
.arrow-link{color:#fff}
.hero-proof{border-color:var(--line)}
.hero-proof strong{color:#fff}
.hero-proof span{color:#8fa4c3}

.ops-card,.record-card,.service-symbol{
  background:linear-gradient(145deg,rgba(25,52,111,.94),rgba(15,38,87,.94));
  border:1px solid rgba(112,158,255,.26);
  box-shadow:var(--shadow)
}
.ops-head,.record-title{border-color:rgba(255,255,255,.12)}
.ops-metrics{border-color:rgba(255,255,255,.12)}
.ops-metrics div{border-color:rgba(255,255,255,.10)}
.ops-metrics span,.record-card dt,.service-symbol span{color:#91a4c6}
.ops-feed div{border-color:rgba(255,255,255,.08)}
.ops-feed span{color:#d5e1f3}
.ops-feed b{color:#63c7ff}
.ops-foot{color:#91a3c4;background:rgba(255,255,255,.04)}
.record-card dd,.service-symbol strong{color:#fff}

.stat-strip{
  background:#08162d;
  border-color:var(--softline)
}
.stat-grid div{border-color:var(--line)}
.stat-grid strong{color:#fff}
.stat-grid span{color:#8295b7}

.section{
  background:#061226;
  border-color:var(--softline);
  color:#edf4ff
}
.section-soft{background:radial-gradient(circle at 90% 20%,rgba(79,136,255,.08),transparent 24%),linear-gradient(180deg,#09182f,#0a1c38)}
.section-blue,.cta-band,.map-band{
  background:
    radial-gradient(circle at 85% 10%,rgba(67,184,245,.17),transparent 26%),
    linear-gradient(135deg,#0a2f6f,#155da8 54%,#167fc1);
  color:#fff
}
.section h2,.section h3,.cta-band h2,.map-band h2{color:#fff}
.section-head>div>p:last-child,.editorial-grid>div>p,.practice-row p,.team-card p:last-child,.quote-card p,.office-card p,.process p,.contact-grid>div>p{color:var(--muted)}
.section-no{color:#6f89b5}

.service-grid,.industry-grid,.office-grid,.team-grid,.scope-grid,.practice-list{border-color:var(--line)}
.service-card,.industry-grid span,.process,.quote-card,.office-card,.team-card,.scope-card,.cta-card{
  background:linear-gradient(180deg,rgba(18,43,91,.88),rgba(11,31,70,.92));
  border-color:var(--line);
  color:#fff
}
.service-card:hover,.process:hover,.office-card:hover,.team-card:hover,.scope-card:hover{
  background:linear-gradient(180deg,rgba(25,55,112,.96),rgba(14,38,83,.96));
  box-shadow:0 18px 50px rgba(0,0,0,.24)
}
.service-card p{color:#afbdd4}
.service-card .arrow-link,.practice-row .arrow-link{color:#8fc2ff}
.service-top>span,.team-number,.scope-card span{color:#7aa9ff}
.icon-box,.team-icon{
  color:#63c7ff;
  background:rgba(79,136,255,.13);
  border:1px solid rgba(126,166,238,.17)
}
.process>span{color:#7aa9ff}
.industry-grid span{color:#e6efff}
.office-card.main{background:linear-gradient(145deg,rgba(30,72,145,.94),rgba(18,50,105,.95))}
.office-card small{color:#8fb0dc}
.quote-card small{color:#79b6ff}
.tag-board span{
  color:#e7efff;
  background:rgba(255,255,255,.04);
  border-color:var(--line)
}
.industry-stack div,.blue-list>div{border-color:rgba(255,255,255,.20)}
.hero-index{border-color:var(--line)}
.hero-index a{border-color:var(--line);color:#edf4ff}
.hero-index span{color:#7f9bc4}
.hero-index .ui-icon{color:#63c7ff}
.practice-row{border-color:var(--line)}
.practice-row>span{color:#7896c8}
.practice-row h2{color:#fff}
.team-card .role{color:#7aa9ff}

.contact-form label{color:#b7c7e4}
.contact-form input,.contact-form select,.contact-form textarea{
  color:#fff;
  background:rgba(39,75,151,.43);
  border-color:rgba(116,159,255,.25)
}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#91a4c6}
.contact-form select option{color:#111;background:#fff}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{
  border-color:#80b2ff;
  box-shadow:0 0 0 3px rgba(82,141,255,.15)
}
.contact-form small{color:#91a3c4}
.map-frame{
  border-color:rgba(112,158,255,.30);
  background:#071426
}
.map-frame iframe{filter:grayscale(.28) saturate(.9) hue-rotate(145deg) brightness(.86) contrast(1.08)}
.btn-white{background:#fff;color:#0b4f91}
.btn-outline-white{color:#fff;border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.03)}

.site-footer{
  background:#030b1c;
  border-top:1px solid var(--softline)
}
.site-footer a,.site-footer p{color:#9fb0cd}
.footer-bottom{color:#7890b3;border-color:rgba(255,255,255,.10)}
.back-top{background:linear-gradient(135deg,var(--blue),var(--cyan));border-color:rgba(255,255,255,.24)}

@media(max-width:1100px){
  .mobile-menu.open{background:#071426;border-color:var(--softline)}
}

/* brand/icon repair 20260920-8 */
.header-row{grid-template-columns:270px 1fr auto;min-height:88px}
.brand,.brand-logo{display:inline-flex;align-items:center}
.brand-logo{width:auto!important;height:auto!important;min-width:0!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
.brand-logo img{display:block!important;width:auto!important;height:70px!important;max-width:255px!important;object-fit:contain!important;filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))}
.footer-brand .brand-logo img{height:74px!important;max-width:270px!important}
.site-footer .brand-logo{background:transparent!important}
.content-glyph{width:42px;height:42px;display:flex;align-items:center;justify-content:center;flex:0 0 42px;border-radius:12px;color:#63c7ff;background:linear-gradient(145deg,rgba(79,136,255,.17),rgba(67,184,245,.08));border:1px solid rgba(126,166,238,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.content-glyph .ui-icon{width:22px;height:22px}
.big-icon{width:92px;height:92px;display:flex;align-items:center;justify-content:center;margin-bottom:auto;border-radius:20px;color:#63c7ff;background:linear-gradient(145deg,rgba(79,136,255,.18),rgba(67,184,245,.08));border:1px solid rgba(126,166,238,.24)}
.big-icon .ui-icon{width:46px;height:46px}.service-symbol:before{display:none!important}
.scope-card{position:relative}.scope-card .scope-glyph{position:absolute;top:50px;left:24px}.scope-card p{margin-top:76px!important}
.process .process-glyph{margin-top:28px}.process h3{margin-top:18px!important}
.office-card .office-glyph{margin-top:32px}.office-card h3{margin-top:18px!important}
.quote-card .quote-glyph{margin-top:42px}.quote-card h3{margin-top:20px!important}
.hero-index a{grid-template-columns:42px 42px 1fr 22px!important}.hero-index a .service-glyph{margin-right:12px}
.practice-row{grid-template-columns:48px 46px 1fr 150px!important}.practice-row .practice-glyph{margin-left:6px}.practice-row>.arrow-link{grid-column:auto!important}
.tag-board span{display:inline-flex;align-items:center;gap:8px}.tag-board span:before{content:"✓";display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;color:#63c7ff;background:rgba(79,136,255,.12);border:1px solid rgba(126,166,238,.18);font-size:11px}
@media(max-width:1100px){.header-row{grid-template-columns:1fr auto;min-height:78px}.brand-logo img{height:60px!important;max-width:225px!important}}
@media(max-width:720px){.header-row{min-height:70px}.brand-logo img{height:52px!important;max-width:195px!important}.footer-brand .brand-logo img{height:60px!important}.practice-row{grid-template-columns:34px 42px 1fr!important}.practice-row>.arrow-link{grid-column:3!important}}


/* ===== mobile responsiveness hardening v20260920-9 ===== */
html,body{max-width:100%;overflow-x:hidden}
*,*:before,*:after{min-width:0}
img,svg,video,canvas,iframe{max-width:100%}
input,select,textarea,button{max-width:100%}
.hero-grid>*,.page-hero-grid>*,.split>*,.contact-grid>*,.map-grid>*,.footer-grid>*{min-width:0}
.service-card,.scope-card,.team-card,.office-card,.process,.quote-card,.record-card,.ops-card,.service-symbol{overflow-wrap:anywhere}
.record-card dd,.service-symbol strong,.hero-index b,.practice-row h2,.team-card h2{overflow-wrap:anywhere}

@media(max-width:1100px){
  .shell{width:min(100% - 36px,1240px)}
  .site-header{position:sticky;top:0}
  .header-row{grid-template-columns:1fr auto!important;gap:14px;min-height:76px!important}
  .brand-logo img{height:56px!important;max-width:210px!important}
  .nav,.header-actions{display:none!important}
  .menu-btn{display:block!important;width:44px;height:44px;padding:8px;margin-left:auto;border:1px solid rgba(130,166,233,.22);border-radius:10px;background:rgba(255,255,255,.04)}
  .menu-btn span{width:24px;height:2px;margin:5px auto;background:#e8f1ff;border-radius:2px}
  .mobile-menu.open{
    display:flex!important;flex-direction:column!important;gap:6px!important;
    max-height:calc(100vh - 76px);overflow:auto;
    padding:12px 18px 18px!important;background:#071426!important;
    border-top:1px solid rgba(255,255,255,.08)!important
  }
  .mobile-menu a{
    display:block;padding:13px 14px!important;border:1px solid rgba(143,177,239,.14)!important;
    border-radius:8px;background:rgba(255,255,255,.035)!important;color:#e9f1ff!important;
    font-size:14px!important;font-weight:740!important
  }
  .hero-grid,.page-hero-grid,.split,.map-grid,.contact-grid{grid-template-columns:minmax(0,1fr)!important;gap:38px!important}
  .service-grid,.scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .stat-grid,.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .office-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hero,.page-hero{padding:66px 0 58px!important}
  h1{font-size:clamp(48px,8vw,68px)!important}
  h2{font-size:clamp(38px,6vw,54px)!important}
}

@media(max-width:760px){
  html{scroll-padding-top:72px}
  body{-webkit-text-size-adjust:100%}
  .shell{width:calc(100% - 28px)!important}
  .header-row{min-height:70px!important;gap:10px!important}
  .brand-logo img{height:48px!important;max-width:178px!important}
  .menu-btn{width:42px;height:42px}
  .mobile-menu.open{max-height:calc(100vh - 70px)}
  .hero,.page-hero{padding:50px 0 44px!important}
  .hero-grid,.page-hero-grid{gap:30px!important}
  h1{font-size:clamp(38px,11vw,48px)!important;line-height:1.02!important;letter-spacing:-.04em!important}
  h2{font-size:clamp(31px,9vw,40px)!important;line-height:1.06!important}
  h3{font-size:22px!important}
  .hero-lead{margin-top:20px!important;font-size:16px!important;line-height:1.65}
  .eyebrow{font-size:10px!important;margin-bottom:14px!important}
  .hero-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-top:26px!important}
  .hero-actions .btn,.hero-actions .arrow-link{width:100%;justify-content:center;text-align:center}
  .btn{width:100%;min-height:50px;padding:13px 16px}
  .hero-proof{grid-template-columns:1fr!important;margin-top:32px!important}
  .hero-proof div{padding:14px 0!important;border-bottom:1px solid var(--line)}
  .hero-proof div:last-child{border-bottom:0}
  .ops-card,.record-card,.service-symbol{border-radius:12px}
  .ops-head,.record-title{padding:14px 15px!important}
  .ops-metrics{grid-template-columns:1fr!important}
  .ops-metrics div{padding:14px 15px!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.09)}
  .ops-feed{padding:6px 15px!important}
  .ops-feed div{gap:14px}
  .ops-foot{padding:13px 15px!important;flex-direction:column;gap:4px}
  .record-card dl div{grid-template-columns:92px minmax(0,1fr)!important;gap:12px!important;padding:13px 15px!important}
  .record-card dd{font-size:12px!important}
  .service-symbol{min-height:240px!important;padding:24px!important}
  .service-symbol strong{font-size:25px!important}
  .big-icon{width:74px!important;height:74px!important;border-radius:18px}
  .big-icon .ui-icon{width:36px!important;height:36px!important}

  .stat-grid{grid-template-columns:1fr 1fr!important}
  .stat-grid div{padding:20px 14px!important}
  .stat-grid strong{font-size:20px!important}
  .stat-grid span{font-size:10px!important}

  .section{padding:64px 0!important}
  .section-head,.editorial-grid{grid-template-columns:1fr!important;gap:8px!important;margin-bottom:30px!important}
  .section-no{padding-top:0!important}
  .section-head>div>p:last-child,.editorial-grid>div>p{font-size:15px!important}
  .service-grid,.scope-grid,.process-grid,.industry-grid,.office-grid,.team-grid,.dual-cards{grid-template-columns:minmax(0,1fr)!important}
  .service-card,.scope-card,.team-card,.office-card,.process,.quote-card{min-height:0!important;padding:22px!important}
  .service-card h3{margin:34px 0 10px!important}
  .service-card p{min-height:0!important}
  .scope-card .scope-glyph{position:static!important;margin-top:20px}
  .scope-card p{margin-top:20px!important}
  .process .process-glyph{margin-top:20px!important}
  .process h3{margin-top:14px!important}
  .office-card .office-glyph{margin-top:22px!important}
  .office-card h3{margin-top:14px!important}
  .quote-card .quote-glyph{margin-top:24px!important}
  .quote-card h3{margin-top:16px!important;font-size:30px!important}
  .content-glyph{width:40px;height:40px;flex-basis:40px}

  .industry-grid span{padding:18px!important}
  .tag-board{display:grid!important;grid-template-columns:1fr!important}
  .tag-board span{width:100%;padding:12px 13px!important}

  .practice-row{
    grid-template-columns:34px 42px minmax(0,1fr)!important;
    gap:12px!important;padding:24px 0!important;align-items:start!important
  }
  .practice-row h2{font-size:29px!important}
  .practice-row p{font-size:14px!important}
  .practice-row>.arrow-link{grid-column:3!important;justify-self:start!important;margin-top:2px}
  .practice-glyph{margin-left:0!important}

  .team-card h2{font-size:31px!important}
  .team-icon{margin-top:28px!important}
  .contact-grid h2{font-size:38px!important}
  .form-grid{grid-template-columns:1fr!important;gap:0!important}
  .contact-form input,.contact-form select,.contact-form textarea{font-size:16px!important}
  .form-actions{display:flex!important;flex-direction:column!important}
  .map-frame iframe,.map-large iframe{height:300px!important}

  .cta-band,.map-band{padding:60px 0!important}
  .cta-grid{grid-template-columns:1fr!important;gap:24px!important}
  .cta-actions{display:flex!important;flex-direction:column!important;gap:10px!important}
  .cta-card{flex-direction:column!important;align-items:stretch!important;padding:24px!important}
  .cta-card h2{font-size:34px!important}

  .hero-index a{
    grid-template-columns:28px 40px minmax(0,1fr) 20px!important;
    gap:8px!important;padding:12px 0!important
  }
  .hero-index b{font-size:12px!important}
  .hero-index .content-glyph{width:36px;height:36px;flex-basis:36px}

  .footer-grid{grid-template-columns:1fr!important;gap:28px!important}
  .footer-brand .brand-logo img{height:58px!important;max-width:220px!important}
  .footer-bottom{flex-direction:column!important;gap:8px!important}
  .back-top{right:14px!important;bottom:14px!important;width:40px!important;height:40px!important}
}

@media(max-width:480px){
  .shell{width:calc(100% - 22px)!important}
  .brand-logo img{height:44px!important;max-width:162px!important}
  h1{font-size:38px!important}
  h2{font-size:31px!important}
  .stat-grid{grid-template-columns:1fr!important}
  .stat-grid div{border-right:0!important;border-bottom:1px solid var(--line)}
  .practice-row{grid-template-columns:30px 38px minmax(0,1fr)!important;gap:9px!important}
  .practice-row h2{font-size:26px!important}
  .record-card dl div{grid-template-columns:1fr!important;gap:4px!important}
  .record-card dt{font-size:10px!important}
  .service-symbol{min-height:220px!important}
  .map-frame iframe,.map-large iframe{height:260px!important}
}


/* ===== numbered-card cleanup: remove decorative icons sitewide ===== */
.icon-box,
.team-icon,
.content-glyph,
.big-icon,
.scope-glyph,
.process-glyph,
.office-glyph,
.quote-glyph,
.service-glyph,
.practice-glyph{
  display:none!important;
}
.service-top{justify-content:flex-start!important}
.scope-card p{margin-top:34px!important}
.process h3{margin-top:34px!important}
.office-card h3{margin-top:34px!important}
.quote-card h3{margin-top:34px!important}
.hero-index a{grid-template-columns:42px minmax(0,1fr) 22px!important}
.practice-row{grid-template-columns:48px minmax(0,1fr) 150px!important}
.practice-row>.arrow-link{grid-column:auto!important}
@media(max-width:760px){
  .hero-index a{grid-template-columns:30px minmax(0,1fr) 20px!important}
  .practice-row{grid-template-columns:34px minmax(0,1fr)!important}
  .practice-row>.arrow-link{grid-column:2!important}
  .scope-card p{margin-top:24px!important}
  .process h3,.office-card h3,.quote-card h3{margin-top:24px!important}
}
@media(max-width:480px){
  .practice-row{grid-template-columns:30px minmax(0,1fr)!important}
}


/* ===== clean card system v20260920-10: no decorative numbers or icons ===== */
.service-top,
.section-no,
.scope-card > span,
.process > span,
.practice-row > span,
.hero-index a > span,
.team-number,
.blue-list > div > span,
.icon-box,
.team-icon,
.content-glyph,
.big-icon,
.scope-glyph,
.process-glyph,
.office-glyph,
.quote-glyph,
.service-glyph,
.practice-glyph{
  display:none!important;
}

/* remove the space that was reserved for numbers/icons */
.service-card h3{margin-top:0!important}
.scope-card p{margin-top:0!important}
.process h3{margin-top:0!important}
.office-card h3{margin-top:0!important}
.quote-card h3{margin-top:0!important}
.team-card h2{margin-top:0!important}
.section-head,
.editorial-grid{grid-template-columns:minmax(0,1fr)!important}
.hero-index a{grid-template-columns:minmax(0,1fr) 22px!important}
.practice-row{grid-template-columns:minmax(0,1fr) 150px!important}
.practice-row>.arrow-link{grid-column:auto!important}
.blue-list>div{grid-template-columns:minmax(0,1fr)!important}
.service-card{padding-top:26px!important}

@media(max-width:760px){
  .hero-index a{grid-template-columns:minmax(0,1fr) 20px!important}
  .practice-row{grid-template-columns:minmax(0,1fr)!important}
  .practice-row>.arrow-link{grid-column:1!important}
  .service-card{padding-top:22px!important}
}


/* ===== v20260920-11: keep icons, remove numbers only ===== */
.section-no,
.scope-card > span,
.process > span,
.practice-row > span,
.hero-index a > span,
.team-number,
.blue-list > div > span,
.service-top > span{
  display:none!important;
}

.service-top{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
}
.icon-box,
.team-icon,
.content-glyph,
.big-icon,
.scope-glyph,
.process-glyph,
.office-glyph,
.quote-glyph,
.service-glyph,
.practice-glyph{
  display:flex!important;
}
.service-card h3{margin:34px 0 10px!important}
.scope-card p{margin-top:76px!important}
.process h3{margin-top:18px!important}
.office-card h3{margin-top:18px!important}
.quote-card h3{margin-top:20px!important}
.team-card h2{margin-top:18px!important}
.section-head,.editorial-grid{grid-template-columns:minmax(0,1fr)!important}
.hero-index a{grid-template-columns:42px minmax(0,1fr) 22px!important}
.practice-row{grid-template-columns:46px minmax(0,1fr) 150px!important}
.practice-row>.arrow-link{grid-column:auto!important}
.blue-list>div{grid-template-columns:minmax(0,1fr)!important}
.service-card{padding-top:26px!important}

@media(max-width:760px){
  .service-card h3{margin:30px 0 10px!important}
  .scope-card p{margin-top:20px!important}
  .process h3{margin-top:14px!important}
  .office-card h3{margin-top:14px!important}
  .quote-card h3{margin-top:16px!important}
  .hero-index a{grid-template-columns:40px minmax(0,1fr) 20px!important}
  .practice-row{grid-template-columns:42px minmax(0,1fr)!important}
  .practice-row>.arrow-link{grid-column:2!important}
}
@media(max-width:480px){
  .practice-row{grid-template-columns:38px minmax(0,1fr)!important}
}


/* ===== Insights archive responsive fix v20260920-12 ===== */
.insight-archive .practice-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px 24px!important;
  padding:28px 0 28px 62px!important;
}
.insight-archive .practice-row>span:not(.practice-glyph){
  display:none!important;
}
.insight-archive .practice-row>.practice-glyph{
  position:absolute!important;
  left:0!important;
  top:26px!important;
  width:42px!important;
  height:42px!important;
  display:flex!important;
}
.insight-archive .practice-row>div{
  grid-column:1!important;
  min-width:0!important;
  width:100%!important;
}
.insight-archive .practice-row h2{
  margin:0!important;
  max-width:none!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.insight-archive .practice-row>.arrow-link{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  white-space:nowrap!important;
}

@media(max-width:760px){
  .insight-archive .practice-row{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:12px!important;
    padding:24px 0!important;
  }
  .insight-archive .practice-row>.practice-glyph{
    position:static!important;
    width:40px!important;
    height:40px!important;
    flex:0 0 40px!important;
    margin:0 0 4px!important;
  }
  .insight-archive .practice-row>div{
    width:100%!important;
    min-width:100%!important;
  }
  .insight-archive .practice-row h2{
    width:100%!important;
    font-size:clamp(24px,7.5vw,32px)!important;
    line-height:1.12!important;
    letter-spacing:-.025em!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .insight-archive .practice-row>.arrow-link{
    align-self:flex-start!important;
    justify-self:start!important;
    grid-column:auto!important;
    grid-row:auto!important;
    margin-top:2px!important;
  }
}

@media(max-width:480px){
  .insight-archive .practice-row{
    padding:22px 0!important;
  }
  .insight-archive .practice-row h2{
    font-size:25px!important;
    line-height:1.14!important;
  }
}


/* ===== SEO content support v20260920-13 ===== */
.seo-faq{padding:64px 0;border-top:1px solid var(--softline);background:#08162d}
.seo-faq .faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line)}
.seo-faq article{padding:28px;border-right:1px solid var(--line);background:rgba(255,255,255,.02)}
.seo-faq article:last-child{border-right:0}
.seo-faq h3{margin:0 0 12px;font-size:20px;line-height:1.25}
.seo-faq p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.related-seo{padding:54px 0;border-top:1px solid var(--softline);background:#071426}
.related-seo .related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line)}
.related-seo a{display:block;padding:24px;border-right:1px solid var(--line);color:#fff;text-decoration:none}
.related-seo a:last-child{border-right:0}
.related-seo a:hover{background:rgba(79,136,255,.08)}
.related-seo small{display:block;color:#7aa9ff;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:9px}
.related-seo strong{font-size:17px;line-height:1.35}
.seo-note{font-size:12px;color:#91a4c6;line-height:1.6}
@media(max-width:760px){
  .seo-faq,.related-seo{padding:48px 0}
  .seo-faq .faq-grid,.related-seo .related-grid{grid-template-columns:1fr}
  .seo-faq article,.related-seo a{border-right:0;border-bottom:1px solid var(--line);padding:22px}
  .seo-faq article:last-child,.related-seo a:last-child{border-bottom:0}
}


/* ===== Practice Areas layout hardening v20260920-14 =====
   Do not let the content column depend on JS-injected icons. */
.practice-area-list .practice-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:14px 28px!important;
  align-items:center!important;
  padding:30px 0 30px 64px!important;
}
.practice-area-list .practice-row>span:not(.practice-glyph){
  display:none!important;
}
.practice-area-list .practice-row>.practice-glyph{
  position:absolute!important;
  left:0!important;
  top:30px!important;
  width:44px!important;
  height:44px!important;
  display:flex!important;
  margin:0!important;
}
.practice-area-list .practice-row>div{
  grid-column:1!important;
  min-width:0!important;
  width:100%!important;
}
.practice-area-list .practice-row h2{
  margin:0!important;
  max-width:none!important;
  width:auto!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
.practice-area-list .practice-row p{
  max-width:780px!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.practice-area-list .practice-row>.arrow-link{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  white-space:nowrap!important;
  margin:0!important;
}

@media(max-width:760px){
  .practice-area-list .practice-row{
    grid-template-columns:minmax(0,1fr)!important;
    padding:24px 0 24px 54px!important;
    gap:10px!important;
    align-items:start!important;
  }
  .practice-area-list .practice-row>.practice-glyph{
    top:24px!important;
    width:38px!important;
    height:38px!important;
  }
  .practice-area-list .practice-row>div{
    grid-column:1!important;
  }
  .practice-area-list .practice-row h2{
    font-size:clamp(25px,7.5vw,32px)!important;
    line-height:1.12!important;
    letter-spacing:-.025em!important;
  }
  .practice-area-list .practice-row p{
    font-size:14px!important;
    line-height:1.65!important;
  }
  .practice-area-list .practice-row>.arrow-link{
    grid-column:1!important;
    grid-row:auto!important;
    justify-self:start!important;
    margin-top:4px!important;
  }
}


/* ===== Services hero index mobile hardening v20260920-15 ===== */
.services-hero-index a{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  width:100%!important;
  padding:16px 0!important;
}
.services-hero-index a>span:not(.service-glyph){
  display:none!important;
}
.services-hero-index .service-glyph{
  display:flex!important;
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  margin:0!important;
}
.services-hero-index b{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  font-size:15px!important;
  line-height:1.3!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
.services-hero-index a>svg:not(.service-glyph){
  flex:0 0 22px!important;
  width:22px!important;
  height:22px!important;
  margin-left:auto!important;
}
@media(max-width:760px){
  .services-hero-index{
    width:100%!important;
    min-width:0!important;
  }
  .services-hero-index a{
    gap:12px!important;
    padding:15px 0!important;
  }
  .services-hero-index .service-glyph{
    flex-basis:40px!important;
    width:40px!important;
    height:40px!important;
  }
  .services-hero-index b{
    font-size:16px!important;
    line-height:1.28!important;
  }
}
@media(max-width:480px){
  .services-hero-index a{
    gap:10px!important;
    padding:14px 0!important;
  }
  .services-hero-index .service-glyph{
    flex-basis:38px!important;
    width:38px!important;
    height:38px!important;
  }
  .services-hero-index b{
    font-size:15px!important;
  }
}


/* ===== Footer utility links v20260921-1 ===== */
.footer-bottom .footer-sitemap-link{display:inline-block;margin:0;color:#a8bbc7;font-size:10px;font-weight:700}
.footer-bottom .footer-sitemap-link:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}

/* ===== Fixed shared header offset v20260921-2 ===== */
body{padding-top:80px}
@media(max-width:720px){body{padding-top:68px}}


/* =====================================================================
   SANKHLA UI SYSTEM — premium polish v20260921-3
   Final override layer. Keep this block at the end of theme.css.
   ===================================================================== */
:root{
  --ui-bg:#061225;
  --ui-bg-2:#081a32;
  --ui-panel:#0b2142;
  --ui-panel-2:#12305e;
  --ui-panel-hover:#173a70;
  --ui-blue:#459cff;
  --ui-cyan:#55c7ff;
  --ui-white:#f7faff;
  --ui-text:#dce8fa;
  --ui-muted:#9db0cc;
  --ui-line:rgba(151,187,241,.16);
  --ui-line-strong:rgba(151,187,241,.26);
  --ui-shadow:0 18px 48px rgba(0,0,0,.22);
  --ui-shadow-hover:0 24px 62px rgba(0,0,0,.31);
  --ui-radius:18px;
  --ui-radius-sm:13px;
  --font-display:"Segoe UI Variable Display","Aptos Display","Segoe UI",Arial,sans-serif;
  --font-body:"Segoe UI Variable Text","Aptos","Segoe UI",Inter,Arial,sans-serif;
}
html{background:var(--ui-bg);scroll-padding-top:96px}
body{
  padding-top:88px!important;
  background:
    radial-gradient(circle at 84% 3%,rgba(69,156,255,.10),transparent 24%),
    radial-gradient(circle at 5% 22%,rgba(85,199,255,.055),transparent 22%),
    var(--ui-bg)!important;
  color:var(--ui-text);
  font-family:var(--font-body)!important;
  font-size:16px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,.nav>a,.nav-drop>a,.btn,.hero-index b,.practice-row h2,.team-card h2,.quote-card h3,.service-card h3,.office-card h3{
  font-family:var(--font-display)!important;
  letter-spacing:-.035em;
}
h1{font-size:clamp(50px,5.6vw,78px)!important;line-height:1.025!important;font-weight:750!important}
h2{font-size:clamp(37px,4vw,55px)!important;line-height:1.07!important;font-weight:720!important}
h3{font-weight:720!important}
p{line-height:1.72}
.shell{width:min(1220px,calc(100% - 56px))!important}

/* fixed master header */
.site-header{
  position:fixed!important;
  top:0!important;left:0!important;right:0!important;
  z-index:1000!important;
  background:rgba(4,14,31,.88)!important;
  border-bottom:1px solid rgba(151,187,241,.12)!important;
  box-shadow:0 8px 28px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(18px) saturate(140%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(140%)!important;
  transition:background .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}
.site-header.is-scrolled{
  background:rgba(3,12,27,.96)!important;
  border-color:rgba(151,187,241,.18)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.28)!important;
}
.header-row{
  min-height:88px!important;
  grid-template-columns:245px minmax(0,1fr) auto!important;
  gap:24px!important;
}
.brand-logo img{
  height:64px!important;
  max-width:230px!important;
  filter:drop-shadow(0 7px 18px rgba(0,0,0,.20))!important;
}
.nav{gap:8px!important}
.nav>a,.nav-drop>a{
  padding:12px 13px!important;
  border-radius:10px!important;
  color:#cbdaf0!important;
  font-size:12.5px!important;
  font-weight:720!important;
  letter-spacing:0!important;
  transition:color .18s ease,background .18s ease!important;
}
.nav>a:after,.nav-drop>a:after{display:none!important}
.nav>a:hover,.nav-drop>a:hover,.nav>a.active,.nav-drop>a.active{
  color:#fff!important;
  background:rgba(89,162,255,.11)!important;
}
.drop-menu{
  top:56px!important;
  left:-12px!important;
  width:300px!important;
  padding:10px!important;
  border:1px solid var(--ui-line)!important;
  border-radius:15px!important;
  background:rgba(7,24,48,.98)!important;
  box-shadow:0 24px 64px rgba(0,0,0,.35)!important;
}
.drop-menu a{
  padding:11px 12px!important;
  border-radius:9px!important;
  color:#c8d9f0!important;
  font-size:12.5px!important;
}
.drop-menu a:hover{background:rgba(69,156,255,.12)!important;color:#fff!important}
.head-phone{color:#d7e4f6!important;font-size:12px!important}
.head-phone .ui-icon{color:var(--ui-cyan)!important}
.btn{
  min-height:46px!important;
  border-radius:12px!important;
  padding:11px 18px!important;
  font-size:12.5px!important;
  font-weight:760!important;
  letter-spacing:0!important;
}
.btn-blue{
  color:#fff!important;
  background:linear-gradient(135deg,#257fdf,#4daeff)!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 10px 26px rgba(37,127,223,.25)!important;
}
.btn-blue:hover{box-shadow:0 16px 34px rgba(37,127,223,.33)!important}
.btn-outline{border-color:var(--ui-line-strong)!important;color:#d9e7fa!important;background:rgba(255,255,255,.025)!important}
.btn-white{border-color:#fff!important;background:#fff!important;color:#0b4f91!important}
.btn-outline-white{border-color:rgba(255,255,255,.38)!important;background:rgba(255,255,255,.04)!important}

/* page surfaces and section rhythm */
.hero,.page-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 80% 10%,rgba(69,156,255,.15),transparent 28%),
    linear-gradient(180deg,#081a34 0%,#07172e 100%)!important;
  border-bottom:1px solid var(--ui-line)!important;
}
.hero:before,.page-hero:before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(110deg,rgba(255,255,255,.018),transparent 35%);
  pointer-events:none;
}
.hero{padding:88px 0 76px!important}
.page-hero{padding:72px 0 64px!important}
.hero-grid,.page-hero-grid{gap:62px!important}
.hero-lead{
  max-width:720px!important;
  margin-top:24px!important;
  color:#afc1da!important;
  font-size:17px!important;
  line-height:1.72!important;
}
.eyebrow{
  margin-bottom:16px!important;
  color:#84a9d8!important;
  font-size:10.5px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
}
.eyebrow:before{width:24px!important;height:2px!important;background:linear-gradient(90deg,var(--ui-blue),var(--ui-cyan))!important}
.hero h1 span,.page-hero h1 span{color:#74b7ff!important}
.section{
  padding:82px 0!important;
  background:transparent!important;
  border-bottom:1px solid rgba(151,187,241,.085)!important;
}
.section-soft{
  background:
    radial-gradient(circle at 88% 18%,rgba(69,156,255,.065),transparent 25%),
    linear-gradient(180deg,#08182f,#091b35)!important;
}
.section-blue,.cta-band,.map-band{
  background:
    radial-gradient(circle at 86% 5%,rgba(111,205,255,.18),transparent 25%),
    linear-gradient(135deg,#0b4387 0%,#176bb5 55%,#188bd2 100%)!important;
}
.section-head,.editorial-grid{
  grid-template-columns:62px minmax(0,1fr)!important;
  gap:24px!important;
  margin-bottom:38px!important;
}
.section-no{padding-top:9px!important;color:#7293c4!important;font-size:10px!important;letter-spacing:.08em!important}
.section-head h2,.editorial-grid h2{max-width:900px!important}
.section-head>div>p:last-child,.editorial-grid>div>p,.contact-grid>div>p{
  max-width:780px!important;
  color:var(--ui-muted)!important;
  font-size:15px!important;
}

/* reusable premium cards */
.service-grid,.scope-grid,.industry-grid,.office-grid,.team-grid,.process-grid,.stat-grid{
  border:0!important;
  gap:14px!important;
  background:transparent!important;
}
.service-card,.scope-card,.process,.office-card,.team-card,.quote-card,.stat-grid>div,.related-seo a{
  border:1px solid var(--ui-line)!important;
  border-radius:var(--ui-radius)!important;
  background:
    radial-gradient(circle at 90% 0%,rgba(84,158,255,.08),transparent 34%),
    linear-gradient(180deg,rgba(18,47,91,.94),rgba(9,29,58,.96))!important;
  box-shadow:var(--ui-shadow)!important;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease!important;
}
.service-card:hover,.scope-card:hover,.process:hover,.office-card:hover,.team-card:hover,.quote-card:hover,.stat-grid>div:hover,.related-seo a:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(108,174,255,.30)!important;
  background:
    radial-gradient(circle at 90% 0%,rgba(84,158,255,.13),transparent 34%),
    linear-gradient(180deg,rgba(23,58,111,.97),rgba(12,35,70,.98))!important;
  box-shadow:var(--ui-shadow-hover)!important;
}

/* homepage hero operations card */
.ops-card,.record-card,.service-symbol{
  border:1px solid var(--ui-line)!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 90% 5%,rgba(73,160,255,.09),transparent 30%),
    linear-gradient(180deg,#0a2142,#07182f)!important;
  box-shadow:0 30px 80px rgba(0,0,0,.30)!important;
}
.ops-head,.record-title{padding:16px 18px!important;border-color:var(--ui-line)!important}
.ops-head b{font-size:12px!important}
.ops-head small{color:#8099bb!important}
.ops-metrics{border-color:var(--ui-line)!important}
.ops-metrics div{padding:18px!important;border-color:var(--ui-line)!important}
.ops-metrics strong{font-size:18px!important}
.ops-feed{padding:7px 18px!important}
.ops-feed div{padding:12px 0!important;border-color:rgba(151,187,241,.10)!important}
.ops-foot{padding:14px 18px!important}
.hero-proof{
  gap:8px!important;
  margin-top:36px!important;
  padding-top:0!important;
  border:0!important;
}
.hero-proof div{
  padding:14px 16px!important;
  border:1px solid rgba(151,187,241,.12)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.025)!important;
}
.hero-proof strong{font-size:15px!important}
.hero-proof span{font-size:10.5px!important;color:#8fa5c3!important}

/* stats strip: remove table look */
.stat-strip{
  padding:22px 0 30px!important;
  background:#06152a!important;
  border-top:0!important;
  border-bottom:1px solid var(--ui-line)!important;
}
.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.stat-grid>div{
  min-height:112px!important;
  padding:23px 22px!important;
  border-right:1px solid var(--ui-line)!important;
  border-bottom:1px solid var(--ui-line)!important;
}
.stat-grid strong{font-size:22px!important;color:#fff!important}
.stat-grid span{margin-top:6px!important;color:#8ea6c6!important;font-size:11px!important}

/* service cards */
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.service-card{
  min-height:286px!important;
  padding:24px!important;
  display:flex!important;
  flex-direction:column!important;
}
.service-top>span{color:#7397cb!important;font-size:9.5px!important}
.icon-box,.team-icon{
  width:50px!important;height:50px!important;
  border:1px solid rgba(112,178,255,.20)!important;
  border-radius:14px!important;
  color:#66c8ff!important;
  background:linear-gradient(145deg,rgba(69,156,255,.18),rgba(85,199,255,.06))!important;
}
.icon-box .ui-icon,.team-icon .ui-icon{width:23px!important;height:23px!important}
.service-card h3{margin:30px 0 10px!important;font-size:21px!important;line-height:1.18!important}
.service-card p{min-height:0!important;color:#a9bad2!important;font-size:13px!important;line-height:1.65!important}
.service-card .arrow-link{margin-top:auto!important;padding-top:20px!important;color:#7cb9ff!important;font-size:11px!important}

/* industry tiles */
.industry-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.industry-grid>span{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-height:82px!important;
  padding:16px 18px!important;
  border:1px solid var(--ui-line)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,rgba(17,45,87,.92),rgba(10,30,60,.96))!important;
  box-shadow:0 12px 34px rgba(0,0,0,.15)!important;
  color:#eaf2ff!important;
  font-size:13.5px!important;
  font-weight:720!important;
}
.industry-grid>span:hover{border-color:rgba(108,174,255,.30)!important;background:linear-gradient(180deg,rgba(24,59,111,.96),rgba(13,36,71,.98))!important}
.industry-glyph{
  width:38px!important;height:38px!important;flex:0 0 38px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border-radius:11px!important;
  color:#68caff!important;
  background:rgba(69,156,255,.11)!important;
  border:1px solid rgba(112,178,255,.17)!important;
}
.industry-glyph .ui-icon{width:19px!important;height:19px!important}
.industry-label{font:inherit!important;color:inherit!important}

/* process cards */
.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.process{min-height:218px!important;padding:24px!important}
.process>span:not(.process-glyph){color:#7197ca!important;font-size:9px!important;letter-spacing:.1em!important}
.process-glyph,.scope-glyph,.office-glyph,.quote-glyph,.practice-glyph,.service-glyph{
  width:44px!important;height:44px!important;flex:0 0 44px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border-radius:13px!important;
  color:#66c8ff!important;
  background:linear-gradient(145deg,rgba(69,156,255,.17),rgba(85,199,255,.06))!important;
  border:1px solid rgba(112,178,255,.18)!important;
}
.process h3{margin:16px 0 9px!important;font-size:22px!important}
.process p{color:#aabbd3!important;font-size:13px!important;line-height:1.65!important}

/* practice areas + insights: card rows rather than separator lines */
.practice-list,.practice-area-list,.insight-archive{border:0!important}
.practice-row,
.practice-area-list .practice-row,
.insight-archive .practice-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:center!important;
  margin:0 0 12px!important;
  padding:20px 22px!important;
  border:1px solid var(--ui-line)!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(16,43,84,.88),rgba(9,28,57,.94))!important;
  box-shadow:0 12px 34px rgba(0,0,0,.13)!important;
  transition:transform .2s ease,border-color .2s ease,background .2s ease!important;
}
.practice-row:hover,.practice-area-list .practice-row:hover,.insight-archive .practice-row:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(108,174,255,.30)!important;
  background:linear-gradient(180deg,rgba(23,57,108,.94),rgba(12,34,69,.98))!important;
}
.practice-row>span:not(.practice-glyph),
.practice-area-list .practice-row>span:not(.practice-glyph),
.insight-archive .practice-row>span:not(.practice-glyph){display:none!important}
.practice-row>.practice-glyph,
.practice-area-list .practice-row>.practice-glyph,
.insight-archive .practice-row>.practice-glyph{
  position:static!important;
  grid-column:1!important;grid-row:1!important;
  margin:0!important;
}
.practice-row>div,.practice-area-list .practice-row>div,.insight-archive .practice-row>div{
  grid-column:2!important;grid-row:1!important;width:auto!important;min-width:0!important;
}
.practice-row h2,.practice-area-list .practice-row h2,.insight-archive .practice-row h2{
  margin:0!important;
  color:#f5f8ff!important;
  font-size:clamp(22px,2vw,30px)!important;
  line-height:1.16!important;
  letter-spacing:-.035em!important;
}
.practice-row p,.practice-area-list .practice-row p,.insight-archive .practice-row p{
  max-width:760px!important;
  margin:7px 0 0!important;
  color:#9fb2ce!important;
  font-size:13.5px!important;
  line-height:1.62!important;
}
.practice-row>.arrow-link,.practice-area-list .practice-row>.arrow-link,.insight-archive .practice-row>.arrow-link{
  grid-column:3!important;grid-row:1!important;
  justify-self:end!important;
  margin:0!important;
  color:#80bdff!important;
  font-size:11px!important;
  white-space:nowrap!important;
}

/* legacy hero-index lists */
.hero-index{border:0!important}
.hero-index a{
  grid-template-columns:46px minmax(0,1fr) auto!important;
  gap:16px!important;
  margin-bottom:11px!important;
  padding:18px 20px!important;
  border:1px solid var(--ui-line)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,rgba(16,43,84,.88),rgba(9,28,57,.94))!important;
}
.hero-index a:hover{background:linear-gradient(180deg,rgba(23,57,108,.94),rgba(12,34,69,.98))!important}
.hero-index b{font-size:18px!important;color:#f3f7ff!important}
.hero-index span{color:#7898c4!important}

/* office / contact */
.contact-grid{gap:34px!important;align-items:stretch!important}
.contact-form{
  margin-top:24px!important;
  padding:25px!important;
  border:1px solid var(--ui-line)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(15,41,80,.88),rgba(8,26,54,.95))!important;
  box-shadow:var(--ui-shadow)!important;
}
.contact-form label{color:#b9cae0!important;font-size:10px!important;letter-spacing:.08em!important}
.contact-form input,.contact-form select,.contact-form textarea{
  min-height:48px!important;
  border:1px solid rgba(151,187,241,.18)!important;
  border-radius:10px!important;
  background:#071a34!important;
  color:#f4f8ff!important;
}
.contact-form textarea{min-height:112px!important}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{
  border-color:#4daeff!important;
  box-shadow:0 0 0 3px rgba(77,174,255,.12)!important;
}
.contact-form small{color:#8399b9!important;line-height:1.55!important}
.map-frame{
  border:1px solid var(--ui-line)!important;
  border-radius:18px!important;
  background:#07182e!important;
  box-shadow:var(--ui-shadow)!important;
}
.map-frame iframe{filter:grayscale(.25) saturate(.85) hue-rotate(165deg)!important}
.office-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.office-card{
  min-height:230px!important;
  padding:25px!important;
  display:flex!important;
  flex-direction:column!important;
}
.office-card.main{
  background:
    radial-gradient(circle at 90% 0%,rgba(85,199,255,.12),transparent 34%),
    linear-gradient(145deg,rgba(27,73,142,.97),rgba(14,44,91,.98))!important;
}
.office-card small{color:#8cb1df!important;font-size:9.5px!important;letter-spacing:.09em!important}
.office-card h3{margin:16px 0 9px!important;font-size:25px!important}
.office-card p{color:#adc0da!important;font-size:13px!important;line-height:1.65!important}

/* about page */
.dual-cards{gap:14px!important}
.quote-card{padding:28px!important}
.quote-card small{color:#80bdff!important;font-size:9.5px!important;letter-spacing:.1em!important}
.quote-card h3{margin:18px 0 12px!important;font-size:29px!important;line-height:1.17!important}
.quote-card p{color:#a9bad2!important;font-size:13.5px!important}
.tag-board{gap:8px!important}
.tag-board span{
  padding:10px 13px!important;
  border:1px solid var(--ui-line)!important;
  border-radius:999px!important;
  background:rgba(69,156,255,.055)!important;
  color:#cbdaf0!important;
  font-size:11.5px!important;
  font-weight:650!important;
}
.industry-stack{border:0!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.industry-stack div{
  display:grid!important;
  grid-template-columns:32px 1fr!important;
  align-items:center!important;
  gap:10px!important;
  padding:13px 14px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:12px!important;
  background:rgba(5,25,56,.18)!important;
}
.industry-stack span{color:#a9d6ff!important;font-size:9px!important}
.industry-stack b{font-size:13.5px!important;color:#fff!important}

/* service / scope / related content */
.scope-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.scope-card{min-height:176px!important;padding:22px!important}
.scope-card p{margin:16px 0 0!important;color:#d5e2f4!important;font-size:13.5px!important}
.service-symbol{min-height:315px!important;padding:28px!important}
.big-icon{
  width:72px!important;height:72px!important;
  border-radius:18px!important;
  color:#66c8ff!important;
  background:linear-gradient(145deg,rgba(69,156,255,.18),rgba(85,199,255,.06))!important;
  border:1px solid rgba(112,178,255,.18)!important;
}
.big-icon .ui-icon{width:34px!important;height:34px!important}
.related-seo{padding:48px 0!important;background:#07152b!important;border-color:var(--ui-line)!important}
.related-seo .related-grid{gap:12px!important;border:0!important}
.related-seo a{padding:21px!important;border-right:1px solid var(--ui-line)!important}
.related-seo strong{font-size:15px!important}

/* CTA */
.cta-band,.map-band{padding:64px 0!important}
.cta-grid{align-items:center!important}
.cta-band h2{max-width:780px!important}
.cta-actions{gap:9px!important}

/* footer */
.site-footer{
  padding:54px 0 22px!important;
  background:
    radial-gradient(circle at 8% 10%,rgba(69,156,255,.055),transparent 24%),
    #030b1b!important;
  border-top:1px solid rgba(151,187,241,.11)!important;
}
.footer-grid{grid-template-columns:1.55fr 1fr 1fr 1fr!important;gap:38px!important}
.footer-brand .brand-logo img{height:66px!important;max-width:245px!important}
.site-footer strong{margin-bottom:13px!important;color:#f6f9ff!important;font-size:11.5px!important;letter-spacing:.04em!important}
.site-footer a,.site-footer p{margin:7px 0!important;color:#92a8c6!important;font-size:12px!important;line-height:1.55!important}
.site-footer a{width:max-content;max-width:100%;transition:color .17s ease,transform .17s ease!important}
.site-footer a:hover{color:#e9f4ff!important;transform:translateX(2px)}
.footer-bottom{
  display:grid!important;
  grid-template-columns:1fr auto auto!important;
  gap:18px!important;
  align-items:center!important;
  margin-top:34px!important;
  padding-top:17px!important;
  color:#7089ad!important;
  font-size:10px!important;
}
.footer-bottom .footer-sitemap-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:5px 11px!important;
  border:1px solid var(--ui-line)!important;
  border-radius:999px!important;
  color:#9bb3d2!important;
  font-size:10px!important;
  text-decoration:none!important;
}
.back-top{
  right:18px!important;bottom:18px!important;
  width:46px!important;height:46px!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#277fdc,#55b7ff)!important;
  box-shadow:0 12px 30px rgba(39,127,220,.30)!important;
}

/* responsive */
@media(max-width:1100px){
  body{padding-top:76px!important}
  html{scroll-padding-top:84px!important}
  .site-header{position:fixed!important}
  .header-row{min-height:76px!important;grid-template-columns:1fr auto!important}
  .brand-logo img{height:55px!important;max-width:205px!important}
  .menu-btn{
    display:block!important;
    width:43px!important;height:43px!important;padding:9px!important;
    border:1px solid var(--ui-line)!important;
    border-radius:11px!important;
    background:rgba(255,255,255,.035)!important;
  }
  .menu-btn span{background:#e9f3ff!important;margin:4px auto!important}
  .mobile-menu.open{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    max-height:calc(100vh - 76px)!important;
    overflow:auto!important;
    padding:14px 20px 20px!important;
    background:rgba(4,14,31,.98)!important;
    border-top:1px solid var(--ui-line)!important;
  }
  .mobile-menu a{
    padding:12px 13px!important;
    border:1px solid var(--ui-line)!important;
    border-radius:10px!important;
    color:#d5e2f4!important;
    background:rgba(255,255,255,.025)!important;
  }
  .service-grid,.scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .industry-grid,.process-grid,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .office-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  body{padding-top:70px!important}
  html{scroll-padding-top:78px!important}
  .shell{width:calc(100% - 28px)!important}
  .header-row{min-height:70px!important}
  .brand-logo img{height:48px!important;max-width:178px!important}
  .mobile-menu.open{grid-template-columns:1fr!important;max-height:calc(100vh - 70px)!important}
  .hero,.page-hero{padding:48px 0 44px!important}
  .hero-grid,.page-hero-grid,.split,.contact-grid,.map-grid{grid-template-columns:1fr!important;gap:28px!important}
  h1{font-size:clamp(37px,10.5vw,46px)!important}
  h2{font-size:clamp(30px,8.5vw,39px)!important}
  .hero-lead{font-size:15.5px!important}
  .hero-actions{gap:12px!important}
  .hero-proof{grid-template-columns:1fr!important}
  .section{padding:60px 0!important}
  .section-head,.editorial-grid{grid-template-columns:1fr!important;gap:7px!important;margin-bottom:28px!important}
  .section-no{padding:0!important}
  .service-grid,.scope-grid,.industry-grid,.process-grid,.office-grid,.team-grid,.dual-cards,.stat-grid{grid-template-columns:1fr!important}
  .service-card,.scope-card,.process,.office-card,.team-card,.quote-card{padding:20px!important;min-height:0!important}
  .industry-grid>span{min-height:70px!important}
  .practice-row,.practice-area-list .practice-row,.insight-archive .practice-row{
    grid-template-columns:44px minmax(0,1fr)!important;
    gap:13px!important;
    padding:17px!important;
  }
  .practice-row>.practice-glyph,.practice-area-list .practice-row>.practice-glyph,.insight-archive .practice-row>.practice-glyph{grid-column:1!important;grid-row:1!important}
  .practice-row>div,.practice-area-list .practice-row>div,.insight-archive .practice-row>div{grid-column:2!important;grid-row:1!important}
  .practice-row>.arrow-link,.practice-area-list .practice-row>.arrow-link,.insight-archive .practice-row>.arrow-link{
    grid-column:2!important;grid-row:2!important;justify-self:start!important;
  }
  .practice-row h2,.practice-area-list .practice-row h2,.insight-archive .practice-row h2{font-size:24px!important}
  .hero-index a{grid-template-columns:42px minmax(0,1fr)!important;padding:16px!important}
  .hero-index a>svg{display:none!important}
  .hero-index b{font-size:16px!important}
  .industry-stack{grid-template-columns:1fr!important}
  .contact-form{padding:20px!important}
  .map-frame iframe,.map-large iframe{height:320px!important}
  .footer-grid{grid-template-columns:1fr 1fr!important;gap:26px!important}
  .footer-bottom{grid-template-columns:1fr!important;gap:8px!important}
  .footer-bottom .footer-sitemap-link{justify-self:start!important}
}
@media(max-width:520px){
  .footer-grid{grid-template-columns:1fr!important}
  .cta-actions,.form-actions{flex-direction:column!important;align-items:stretch!important}
  .cta-actions .btn,.form-actions .btn{width:100%!important}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}


/* =====================================================================
   LAYOUT CONFLICT REPAIR v20260921-4
   Numbers stay hidden; their grid tracks must not remain reserved.
   Generated icons must override legacy direct-span hiding rules.
   ===================================================================== */
.section-head,
.editorial-grid{
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
}
.section-head>.section-no,
.editorial-grid>.section-no{
  display:none!important;
}
.section-head>div,
.editorial-grid>div{
  grid-column:1!important;
  width:100%!important;
  max-width:1050px!important;
  min-width:0!important;
}
.section-head h2,
.editorial-grid h2{
  width:100%!important;
  max-width:980px!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.section-head>div>p:last-child,
.editorial-grid>div>p{
  width:100%!important;
  max-width:820px!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

/* Restore generated icons that legacy "hide number spans" selectors catch. */
.scope-card>.scope-glyph,
.process>.process-glyph,
.practice-row>.practice-glyph,
.practice-area-list .practice-row>.practice-glyph,
.insight-archive .practice-row>.practice-glyph,
.hero-index a>.service-glyph{
  display:flex!important;
}

/* Keep actual numeric labels hidden while icons remain visible. */
.scope-card>span:not(.scope-glyph),
.process>span:not(.process-glyph),
.practice-row>span:not(.practice-glyph),
.practice-area-list .practice-row>span:not(.practice-glyph),
.insight-archive .practice-row>span:not(.practice-glyph),
.hero-index a>span:not(.service-glyph),
.blue-list>div>span{
  display:none!important;
}

/* Industry icon spans inherit old industry-tile styles unless explicitly reset. */
.industry-grid>.industry-label,
.industry-grid>span>.industry-glyph{
  min-height:0!important;
}
.industry-grid>span>.industry-glyph{
  display:inline-flex!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
}
.industry-grid>span>.industry-label{
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}

/* Structural safeguards: content grids must always consume their container. */
.hero-grid,
.page-hero-grid,
.section-head,
.editorial-grid,
.split,
.contact-grid,
.map-grid,
.service-grid,
.scope-grid,
.process-grid,
.industry-grid,
.office-grid,
.team-grid,
.stat-grid,
.footer-grid{
  width:100%!important;
  min-width:0!important;
}
.hero-grid>*,
.page-hero-grid>*,
.section-head>*,
.editorial-grid>*,
.split>*,
.contact-grid>*,
.map-grid>*{
  min-width:0!important;
}

/* One-child hero grids should not waste a phantom second column. */
.hero-grid:has(>:only-child),
.page-hero-grid:has(>:only-child){
  grid-template-columns:minmax(0,1fr)!important;
}

/* Prevent unintended vertical word stacking in primary content. */
main h1,
main h2,
main h3,
main p,
main a,
main b,
main strong{
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}

/* Desktop section headings should read horizontally, not as narrow rails. */
@media(min-width:761px){
  .section-head,
  .editorial-grid{
    display:block!important;
  }
  .section-head>div,
  .editorial-grid>div{
    max-width:1050px!important;
  }
}

/* Mobile retains natural full-width flow. */
@media(max-width:760px){
  .section-head>div,
  .editorial-grid>div,
  .section-head h2,
  .editorial-grid h2{
    max-width:none!important;
  }
}


/* =====================================================================
   CONTAINER GUTTER REPAIR v20260921-5
   Grid classes are also .shell elements; preserve centered site gutters.
   ===================================================================== */
.shell{
  width:min(1320px,calc(100% - 64px))!important;
  max-width:1320px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero-grid,
.page-hero-grid,
.section-head,
.editorial-grid,
.service-grid,
.scope-grid,
.industry-grid,
.process-grid,
.office-grid,
.team-grid,
.stat-grid,
.contact-grid,
.map-grid,
.split,
.footer-grid,
.cta-grid,
.dual-cards,
.practice-list,
.practice-area-list,
.insight-archive,
.tag-board,
.industry-stack{
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:1100px){
  .shell{
    width:calc(100% - 40px)!important;
    max-width:none!important;
  }
}
@media(max-width:760px){
  .shell{
    width:calc(100% - 28px)!important;
    max-width:none!important;
  }
}


/* Contact enquiry without map v20260921-6 */
#enquiry .contact-grid{
  grid-template-columns:minmax(0,900px)!important;
  justify-content:center!important;
  align-items:start!important;
}
#enquiry .contact-grid>div{
  width:100%!important;
  max-width:900px!important;
}


/* =====================================================================
   HEADER NAVIGATION UPGRADE v20260921-7
   Larger navigation + Company dropdown (Our Company / Our Team)
   ===================================================================== */
@media(min-width:1101px){
  body{padding-top:94px!important}
  html{scroll-padding-top:102px!important}
  .header-row{
    min-height:94px!important;
    grid-template-columns:235px minmax(0,1fr) auto!important;
    gap:24px!important;
  }
  .brand-logo img{
    height:67px!important;
    max-width:235px!important;
  }
  .nav{
    gap:7px!important;
  }
  .nav>a,
  .nav-drop>a{
    padding:14px 15px!important;
    border-radius:11px!important;
    font-size:14px!important;
    line-height:1.1!important;
    font-weight:750!important;
  }
  .nav-drop>a span{
    margin-left:6px!important;
    font-size:12px!important;
  }
  .drop-menu{
    top:61px!important;
    width:310px!important;
    padding:11px!important;
    border-radius:16px!important;
  }
  .company-menu{
    width:210px!important;
  }
  .drop-menu a{
    padding:12px 13px!important;
    font-size:13.5px!important;
    line-height:1.35!important;
  }
  .head-phone{
    font-size:12.5px!important;
  }
  .header-actions{
    gap:13px!important;
  }
  .header-actions .btn{
    min-height:50px!important;
    padding:12px 19px!important;
    font-size:13px!important;
  }
}


/* =====================================================================
   MODERN SHARED HEADER + FOOTER v20260921-8
   ===================================================================== */
:root{
  --font-display:"Manrope","Inter","Segoe UI",Arial,sans-serif!important;
  --font-body:"Inter","Segoe UI",Arial,sans-serif!important;
}
body{font-family:var(--font-body)!important}
h1,h2,h3,.nav,.header-actions,.site-footer{font-family:var(--font-display)!important}

/* Header: minimal, contemporary, less template-like */
.site-header{
  background:rgba(3,12,27,.86)!important;
  border-bottom:1px solid rgba(148,184,237,.10)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(22px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(145%)!important;
}
.site-header.is-scrolled{
  background:rgba(3,11,25,.96)!important;
  border-color:rgba(148,184,237,.15)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.25)!important;
}
@media(min-width:1101px){
  body{padding-top:88px!important}
  html{scroll-padding-top:96px!important}
  .header-row{
    min-height:88px!important;
    grid-template-columns:224px minmax(0,1fr) auto!important;
    gap:26px!important;
  }
  .brand-logo img{height:62px!important;max-width:220px!important}
  .nav{gap:3px!important}
  .nav>a,.nav-drop>a{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    min-height:44px!important;
    padding:0 13px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#aebfd8!important;
    font-size:14px!important;
    font-weight:600!important;
    letter-spacing:-.01em!important;
    box-shadow:none!important;
  }
  .nav>a:hover,.nav-drop>a:hover{color:#f7fbff!important;background:transparent!important}
  .nav>a.active,.nav-drop>a.active{
    color:#fff!important;
    background:transparent!important;
    box-shadow:inset 0 -2px 0 #51afff!important;
  }
  .nav-chevron{
    width:16px!important;height:16px!important;
    opacity:.62;
    transition:transform .18s ease,opacity .18s ease;
  }
  .nav-drop:hover .nav-chevron,.nav-drop:focus-within .nav-chevron{transform:rotate(180deg);opacity:1}
  .drop-menu{
    top:52px!important;
    padding:10px!important;
    border:1px solid rgba(137,177,235,.15)!important;
    border-radius:16px!important;
    background:rgba(8,24,49,.98)!important;
    box-shadow:0 28px 70px rgba(0,0,0,.38)!important;
    backdrop-filter:blur(18px)!important;
  }
  .company-menu{left:-10px!important;width:225px!important}
  .services-menu{
    left:-145px!important;
    width:520px!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:4px!important;
  }
  .drop-menu a{
    display:flex!important;
    align-items:center!important;
    min-height:44px!important;
    padding:10px 12px!important;
    border:1px solid transparent!important;
    border-radius:10px!important;
    color:#b8c9df!important;
    font-family:var(--font-body)!important;
    font-size:13px!important;
    font-weight:550!important;
    letter-spacing:-.01em!important;
  }
  .drop-menu a:hover{
    color:#fff!important;
    background:rgba(77,163,255,.09)!important;
    border-color:rgba(100,174,255,.12)!important;
    transform:none!important;
  }
  .header-actions{gap:14px!important}
  .header-contact{
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    padding:7px 0!important;
    color:#c8d8ec!important;
  }
  .header-contact>.ui-icon{width:18px!important;height:18px!important;color:#64c7ff!important}
  .header-contact span{display:grid!important;gap:1px!important}
  .header-contact small{
    color:#7189aa!important;
    font-family:var(--font-body)!important;
    font-size:9px!important;
    font-weight:600!important;
    line-height:1!important;
    text-transform:uppercase!important;
    letter-spacing:.08em!important;
  }
  .header-contact strong{
    color:#dce8f7!important;
    font-family:var(--font-body)!important;
    font-size:11.5px!important;
    font-weight:650!important;
    line-height:1.15!important;
    letter-spacing:0!important;
  }
  .header-cta{
    display:inline-flex!important;
    align-items:center!important;
    gap:9px!important;
    min-height:44px!important;
    padding:0 16px!important;
    border:1px solid rgba(114,194,255,.22)!important;
    border-radius:11px!important;
    color:#fff!important;
    background:linear-gradient(135deg,#257ed9,#45a9f5)!important;
    box-shadow:0 10px 26px rgba(30,125,218,.22)!important;
    font-size:12.5px!important;
    font-weight:700!important;
    letter-spacing:-.01em!important;
    transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
  }
  .header-cta:hover{transform:translateY(-1px)!important;box-shadow:0 14px 32px rgba(30,125,218,.30)!important;filter:brightness(1.04)}
  .cta-arrow{width:17px!important;height:17px!important}
}

/* Mobile menu: full modern sheet rather than old boxed links */
@media(max-width:1100px){
  .mobile-menu.open{
    gap:0!important;
    padding:10px 20px 20px!important;
    background:rgba(3,12,27,.985)!important;
    border-top:1px solid rgba(148,184,237,.10)!important;
    box-shadow:0 24px 50px rgba(0,0,0,.30)!important;
  }
  .mobile-menu a{
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:11px 4px!important;
    border:0!important;
    border-bottom:1px solid rgba(148,184,237,.09)!important;
    border-radius:0!important;
    background:transparent!important;
    color:#c8d8ec!important;
    font-family:var(--font-display)!important;
    font-size:15px!important;
    font-weight:600!important;
  }
  .mobile-menu .mobile-cta{
    margin-top:12px!important;
    padding:0 15px!important;
    border:1px solid rgba(112,190,255,.22)!important;
    border-radius:11px!important;
    background:linear-gradient(135deg,#257ed9,#45a9f5)!important;
    color:#fff!important;
  }
  .mobile-menu .cta-arrow{width:17px!important;height:17px!important}
  .menu-btn{border-radius:12px!important;background:rgba(255,255,255,.025)!important}
}

/* Footer: editorial brand block + clean navigation */
.site-footer{
  padding:72px 0 28px!important;
  background:
    radial-gradient(circle at 12% 2%,rgba(68,156,255,.075),transparent 27%),
    linear-gradient(180deg,#040d1d 0%,#020817 100%)!important;
  border-top:1px solid rgba(148,184,237,.10)!important;
}
.footer-modern{display:grid!important;gap:34px!important}
.footer-main{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(520px,.9fr)!important;
  gap:72px!important;
  align-items:start!important;
}
.footer-brand{max-width:600px!important}
.footer-brand .brand-logo{margin:0 0 26px!important}
.footer-brand .brand-logo img{height:64px!important;max-width:240px!important}
.footer-eyebrow{
  margin:0 0 13px!important;
  color:#6fa8df!important;
  font-family:var(--font-body)!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}
.site-footer .footer-brand h2{
  max-width:560px!important;
  margin:0!important;
  color:#f5f8ff!important;
  font-family:var(--font-display)!important;
  font-size:clamp(31px,3vw,45px)!important;
  font-weight:650!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
}
.footer-lead{
  max-width:590px!important;
  margin:18px 0 0!important;
  color:#8fa5c2!important;
  font-family:var(--font-body)!important;
  font-size:13px!important;
  line-height:1.7!important;
}
.footer-contact-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px 18px!important;
  margin-top:24px!important;
}
.site-footer .footer-contact-row a{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
  color:#b9cce3!important;
  font-family:var(--font-body)!important;
  font-size:12px!important;
  font-weight:550!important;
  transform:none!important;
}
.footer-contact-row .ui-icon{width:17px!important;height:17px!important;color:#5ebfff!important}
.footer-nav{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:34px!important;
  padding-top:11px!important;
}
.footer-col{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
.footer-title{
  display:block!important;
  margin:0 0 16px!important;
  color:#6f89aa!important;
  font-family:var(--font-body)!important;
  font-size:9.5px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.site-footer .footer-col a{
  margin:0 0 10px!important;
  color:#a7bad2!important;
  font-family:var(--font-body)!important;
  font-size:12.5px!important;
  font-weight:500!important;
  line-height:1.4!important;
  transform:none!important;
}
.site-footer .footer-col a:hover{color:#fff!important;transform:none!important}
.footer-cta-strip{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  padding:20px 22px!important;
  border:1px solid rgba(148,184,237,.11)!important;
  border-radius:16px!important;
  background:linear-gradient(90deg,rgba(50,122,214,.11),rgba(74,175,245,.04))!important;
}
.footer-cta-strip>div{display:grid!important;gap:3px!important}
.footer-cta-strip>div>span{
  color:#6f8fb8!important;
  font-family:var(--font-body)!important;
  font-size:9.5px!important;
  font-weight:700!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
.footer-cta-strip>div>strong{
  color:#e9f2ff!important;
  font-family:var(--font-display)!important;
  font-size:17px!important;
  font-weight:600!important;
  letter-spacing:-.02em!important;
}
.footer-cta-btn{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  min-height:42px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid rgba(108,181,255,.18)!important;
  border-radius:10px!important;
  background:rgba(75,165,246,.10)!important;
  color:#a9d5ff!important;
  font-family:var(--font-body)!important;
  font-size:11.5px!important;
  font-weight:650!important;
  transform:none!important;
}
.footer-cta-btn:hover{color:#fff!important;background:rgba(75,165,246,.16)!important;transform:none!important}
.footer-cta-btn .cta-arrow{width:16px!important;height:16px!important}
.site-footer .footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  margin-top:0!important;
  padding-top:20px!important;
  border-top:1px solid rgba(148,184,237,.09)!important;
  color:#667f9f!important;
  font-family:var(--font-body)!important;
  font-size:10px!important;
  line-height:1.5!important;
}

@media(max-width:1100px){
  .footer-main{grid-template-columns:1fr!important;gap:42px!important}
  .footer-brand{max-width:680px!important}
  .footer-nav{max-width:720px!important}
}
@media(max-width:760px){
  .site-footer{padding:54px 0 22px!important}
  .footer-main{gap:34px!important}
  .site-footer .footer-brand h2{font-size:32px!important}
  .footer-nav{grid-template-columns:1fr 1fr!important;gap:26px 32px!important}
  .footer-cta-strip{align-items:flex-start!important;flex-direction:column!important;padding:18px!important}
  .site-footer .footer-bottom{align-items:flex-start!important;flex-direction:column!important;gap:7px!important}
}
@media(max-width:480px){
  .footer-nav{grid-template-columns:1fr!important}
}


/* =====================================================================
   FULL-CARD NAVIGATION v20260921-9
   Single-destination cards are links; redundant footer CTAs are removed.
   ===================================================================== */
a.card-link{
  color:inherit!important;
  text-decoration:none!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent;
}
.card-link-label{display:none!important}

.service-card.card-link{
  position:relative!important;
  min-height:248px!important;
  padding:22px 22px 24px!important;
}
.service-card.card-link:not(:has(.icon-box)){min-height:188px!important}
.service-card.card-link h3{margin-bottom:9px!important}
.service-card.card-link h3:after{
  content:"↗";
  display:inline-block;
  margin-left:9px;
  color:#6fc2ff;
  font-family:var(--font-body)!important;
  font-size:.64em;
  font-weight:500;
  line-height:1;
  vertical-align:.16em;
  opacity:.68;
  transition:transform .18s ease,opacity .18s ease;
}
.service-card.card-link:hover h3:after,
.service-card.card-link:focus-visible h3:after{
  transform:translate(3px,-3px);
  opacity:1;
}
.service-card.card-link:focus-visible,
.practice-row.card-link:focus-visible{
  outline:2px solid #62baff!important;
  outline-offset:3px!important;
}
.service-card.card-link p{margin-bottom:0!important}

.practice-row.card-link,
.practice-area-list .practice-row.card-link,
.insight-archive .practice-row.card-link{
  position:relative!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  padding:18px 20px!important;
  cursor:pointer!important;
}
.practice-row.card-link h2:after,
.practice-area-list .practice-row.card-link h2:after,
.insight-archive .practice-row.card-link h2:after{
  content:"→";
  display:inline-block;
  margin-left:10px;
  color:#6fc2ff;
  font-family:var(--font-body)!important;
  font-size:.62em;
  font-weight:500;
  vertical-align:.12em;
  opacity:.58;
  transition:transform .18s ease,opacity .18s ease;
}
.practice-row.card-link:hover h2:after,
.practice-row.card-link:focus-visible h2:after{
  transform:translateX(4px);
  opacity:1;
}

/* These were already whole-link components; keep the same interaction language. */
.hero-index a,
.related-seo a{cursor:pointer!important}

@media(max-width:760px){
  .service-card.card-link,
  .service-card.card-link:not(:has(.icon-box)){
    min-height:0!important;
    padding:19px!important;
  }
  .practice-row.card-link,
  .practice-area-list .practice-row.card-link,
  .insight-archive .practice-row.card-link{
    grid-template-columns:42px minmax(0,1fr)!important;
    padding:16px!important;
  }
}


/* =====================================================================
   FULL-CARD VISUAL CONFIRMATION v20260921-11
   Remove legacy CTA footer space and make clickable cards visibly compact.
   ===================================================================== */
.service-card.card-link{
  min-height:220px!important;
  padding:22px!important;
  justify-content:flex-start!important;
}
.service-card.card-link:not(:has(.icon-box)){
  min-height:160px!important;
}
.service-card.card-link .service-top{
  margin-bottom:18px!important;
}
.service-card.card-link h3{
  margin:0 0 10px!important;
}
.service-card.card-link p{
  margin:0!important;
}
.service-card.card-link:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(105,184,255,.42)!important;
  box-shadow:0 24px 58px rgba(0,0,0,.32)!important;
}
.practice-row.card-link,
.practice-area-list .practice-row.card-link,
.insight-archive .practice-row.card-link{
  padding-top:16px!important;
  padding-bottom:16px!important;
}
@media(max-width:760px){
  .service-card.card-link,
  .service-card.card-link:not(:has(.icon-box)){
    min-height:0!important;
  }
}


/* =====================================================================
   ICON LAYOUT SAFETY v20260921-12
   Generated icons always occupy their own layout space and never overlap copy.
   ===================================================================== */
.scope-card,
.process,
.office-card,
.quote-card,
.team-card,
.service-card{
  position:relative!important;
}

/* Reset every generated glyph away from legacy absolute coordinates. */
.scope-card>.scope-glyph,
.process>.process-glyph,
.office-card>.office-glyph,
.quote-card>.quote-glyph,
.practice-row>.practice-glyph,
.practice-area-list .practice-row>.practice-glyph,
.insight-archive .practice-row>.practice-glyph,
.hero-index a>.service-glyph,
.service-symbol>.big-icon{
  position:static!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  inset:auto!important;
  float:none!important;
  transform:none!important;
  z-index:auto!important;
}

/* Vertical cards: icon gets a dedicated row above copy. */
.scope-card,
.process,
.office-card,
.quote-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
}

.scope-card>.scope-glyph,
.process>.process-glyph{
  order:1!important;
  margin:0 0 18px 0!important;
}
.scope-card>p{
  order:2!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
}
.process>h3{
  order:2!important;
  width:100%!important;
  margin:0 0 9px!important;
  position:static!important;
}
.process>p{
  order:3!important;
  width:100%!important;
  margin:0!important;
  position:static!important;
}

/* Office / quote cards keep their small label, then icon, then text. */
.office-card>small,
.quote-card>small{
  order:1!important;
  width:100%!important;
  margin:0 0 16px!important;
  position:static!important;
}
.office-card>.office-glyph,
.quote-card>.quote-glyph{
  order:2!important;
  margin:0 0 18px!important;
}
.office-card>h3,
.quote-card>h3{
  order:3!important;
  width:100%!important;
  margin:0 0 9px!important;
  position:static!important;
}
.office-card>p,
.quote-card>p{
  order:4!important;
  width:100%!important;
  margin:0!important;
  position:static!important;
}

/* Grid/list glyphs stay in their own grid cell, never over the title. */
.practice-row>.practice-glyph,
.practice-area-list .practice-row>.practice-glyph,
.insight-archive .practice-row>.practice-glyph,
.hero-index a>.service-glyph{
  margin:0!important;
  align-self:center!important;
  justify-self:start!important;
}
.practice-row>div,
.practice-area-list .practice-row>div,
.insight-archive .practice-row>div,
.hero-index a>b{
  min-width:0!important;
  position:static!important;
}

/* Service card icon is contained by service-top; prevent any inherited positioning. */
.service-card .service-top{
  position:static!important;
  width:100%!important;
  min-height:50px!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
}
.service-card .icon-box,
.team-card .team-icon{
  position:static!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  inset:auto!important;
  transform:none!important;
  flex:0 0 auto!important;
}

/* A generic safety net for generated content-glyphs inside cards. */
.scope-card .content-glyph,
.process .content-glyph,
.office-card .content-glyph,
.quote-card .content-glyph,
.practice-row .content-glyph,
.hero-index .content-glyph{
  max-width:48px!important;
  max-height:48px!important;
  flex-shrink:0!important;
}

@media(max-width:760px){
  .scope-card>.scope-glyph,
  .process>.process-glyph,
  .office-card>.office-glyph,
  .quote-card>.quote-glyph{
    margin-bottom:14px!important;
  }
}


/* =====================================================================
   LANDING-PAGE DESIGN LANGUAGE v20260921-13
   Reuses the strongest visual language from the Sankhla landing page:
   gradient icon tiles, accent lines, premium panel depth and richer menus.
   ===================================================================== */
:root{
  --lp-blue:#4f88ff;
  --lp-violet:#7c5cff;
  --lp-cyan:#43b8f5;
  --lp-panel-a:rgba(19,43,91,.78);
  --lp-panel-b:rgba(10,29,61,.88);
  --lp-line:rgba(146,177,235,.18);
  --lp-shadow:0 22px 56px rgba(0,0,0,.26);
}

/* Landing-page icon treatment */
.icon-box,
.team-icon,
.scope-glyph,
.process-glyph,
.office-glyph,
.quote-glyph,
.service-glyph,
.practice-glyph,
.industry-glyph,
.big-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  flex:0 0 46px!important;
  border:0!important;
  border-radius:13px!important;
  color:#fff!important;
  background:linear-gradient(135deg,var(--lp-blue),var(--lp-violet))!important;
  box-shadow:0 11px 28px rgba(79,136,255,.23)!important;
}
.big-icon{
  width:68px!important;
  height:68px!important;
  min-width:68px!important;
  min-height:68px!important;
  flex-basis:68px!important;
  border-radius:18px!important;
}
.icon-box .ui-icon,
.team-icon .ui-icon,
.scope-glyph .ui-icon,
.process-glyph .ui-icon,
.office-glyph .ui-icon,
.quote-glyph .ui-icon,
.service-glyph .ui-icon,
.practice-glyph .ui-icon,
.industry-glyph .ui-icon{
  width:25px!important;
  height:25px!important;
  color:#fff!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  transition:transform .2s ease!important;
}
.big-icon .ui-icon{width:32px!important;height:32px!important}
.service-card:hover .ui-icon,
.scope-card:hover .ui-icon,
.process:hover .ui-icon,
.office-card:hover .ui-icon,
.quote-card:hover .ui-icon,
.practice-row:hover .ui-icon,
.industry-grid>span:hover .ui-icon{
  transform:scale(1.08)!important;
}

/* Premium tile treatment from landing page */
.service-card,
.scope-card,
.process,
.office-card,
.quote-card,
.team-card{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid var(--lp-line)!important;
  background:linear-gradient(145deg,var(--lp-panel-a),var(--lp-panel-b))!important;
  box-shadow:0 10px 32px rgba(0,0,0,.12)!important;
}
.service-card:after,
.scope-card:after,
.process:after,
.office-card:after,
.quote-card:after,
.team-card:after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:3px!important;
  background:linear-gradient(90deg,var(--lp-blue),var(--lp-violet))!important;
  opacity:.75!important;
  pointer-events:none!important;
}
.service-card:hover,
.scope-card:hover,
.process:hover,
.office-card:hover,
.quote-card:hover,
.team-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(118,165,255,.34)!important;
  box-shadow:var(--lp-shadow)!important;
}

/* Keep the icon safely above copy in vertical cards. */
.scope-card>.scope-glyph,
.process>.process-glyph,
.office-card>.office-glyph,
.quote-card>.quote-glyph{
  margin-top:4px!important;
  margin-bottom:18px!important;
}

/* Specialist service cards generated without icons get the same rhythm. */
.service-card .service-top{
  min-height:46px!important;
  margin-bottom:18px!important;
}
.service-card .service-top .icon-box{
  margin:0!important;
}

/* Industry tiles adopt the landing-page quick-nav feel. */
.industry-grid>span{
  min-height:76px!important;
  border:1px solid var(--lp-line)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.035)!important;
  box-shadow:none!important;
  transition:transform .2s ease,border-color .2s ease,background .2s ease!important;
}
.industry-grid>span:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(114,164,255,.46)!important;
  background:rgba(79,136,255,.08)!important;
  box-shadow:none!important;
}
.industry-grid>span>.industry-glyph{
  width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex-basis:40px!important;
  border-radius:11px!important;
}

/* Header dropdowns: landing-page richness with secondary descriptions. */
.drop-menu a{
  display:block!important;
  padding:11px 12px!important;
  border-radius:9px!important;
}
.drop-menu a>span{
  display:block!important;
  color:inherit!important;
  font:inherit!important;
}
.drop-menu a small{
  display:block!important;
  margin-top:3px!important;
  color:#8296b8!important;
  font-family:var(--font-body)!important;
  font-size:10px!important;
  font-weight:500!important;
  line-height:1.35!important;
  letter-spacing:0!important;
}
.drop-menu a:hover{
  background:linear-gradient(135deg,rgba(79,136,255,.16),rgba(124,92,255,.12))!important;
}
.services-menu{
  width:590px!important;
}
.company-menu{
  width:260px!important;
}

/* Buttons gain the same blue-violet premium accent. */
.btn-blue,
.header-cta,
.mobile-menu .mobile-cta{
  background:linear-gradient(135deg,var(--lp-blue),var(--lp-violet))!important;
  box-shadow:0 12px 30px rgba(79,136,255,.22)!important;
}
.btn-blue:hover,
.header-cta:hover,
.mobile-menu .mobile-cta:hover{
  box-shadow:0 16px 38px rgba(79,136,255,.31)!important;
}

/* Content list rows get a quieter version of the same accent language. */
.practice-row.card-link,
.practice-area-list .practice-row.card-link,
.insight-archive .practice-row.card-link,
.hero-index a{
  border-color:var(--lp-line)!important;
  background:linear-gradient(145deg,rgba(19,43,91,.58),rgba(10,29,61,.72))!important;
}
.practice-row.card-link:hover,
.practice-area-list .practice-row.card-link:hover,
.insight-archive .practice-row.card-link:hover,
.hero-index a:hover{
  border-color:rgba(118,165,255,.34)!important;
  background:linear-gradient(145deg,rgba(25,53,108,.72),rgba(12,34,70,.82))!important;
}

@media(max-width:1100px){
  .services-menu{width:auto!important}
}
@media(max-width:760px){
  .icon-box,
  .team-icon,
  .scope-glyph,
  .process-glyph,
  .office-glyph,
  .quote-glyph,
  .service-glyph,
  .practice-glyph{
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex-basis:44px!important;
  }
}


/* Unified lead form UI v20260921-14 */
.lead-status{min-height:20px;margin:10px 0 0;color:#90a8c7;font-size:12px}
.lead-modal{position:fixed;inset:0;z-index:2200;display:none;align-items:center;justify-content:center;padding:22px}
.lead-modal.open{display:flex}
.lead-modal-backdrop{position:absolute;inset:0;background:rgba(1,7,17,.72);backdrop-filter:blur(8px)}
.lead-modal-card{position:relative;width:min(520px,100%);padding:32px;border:1px solid rgba(135,183,245,.18);border-radius:20px;background:linear-gradient(145deg,#0e2850,#081a35);box-shadow:0 30px 90px rgba(0,0,0,.45);text-align:center}
.lead-modal-close{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.06);color:#dce9f9;font-size:22px;cursor:pointer}
.lead-modal-icon{width:58px;height:58px;margin:0 auto 18px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#4f88ff,#7c5cff);color:#fff;font-size:26px;font-weight:800}
.lead-modal-card h3{margin:0 0 10px;font-size:26px}
.lead-modal-card p{margin:0 auto 22px;max-width:420px;color:#a7bad3;font-size:14px;line-height:1.65}
.lead-modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.lead-modal-card>small{display:block;margin-top:16px;color:#7790b1}
#leadSubmit:disabled{opacity:.65;cursor:wait}
@media(max-width:600px){.lead-modal-card{padding:26px 20px}.lead-modal-actions{flex-direction:column}.lead-modal-actions .btn{width:100%}}


/* Lead loading animation v20260921-22 */
.lead-status{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:22px!important;
}
.lead-status.is-loading:before{
  content:""!important;
  width:14px!important;
  height:14px!important;
  flex:0 0 14px!important;
  border:2px solid rgba(125,174,235,.25)!important;
  border-top-color:#6dbdff!important;
  border-radius:50%!important;
  animation:leadSpin .75s linear infinite!important;
}
.lead-status.is-error{color:#ffaaa9!important}
.lead-btn-spinner{
  display:inline-block!important;
  width:15px!important;
  height:15px!important;
  margin-right:8px!important;
  border:2px solid rgba(255,255,255,.35)!important;
  border-top-color:#fff!important;
  border-radius:50%!important;
  vertical-align:-2px!important;
  animation:leadSpin .75s linear infinite!important;
}
@keyframes leadSpin{to{transform:rotate(360deg)}}

/* =====================================================================
   MYND-INSPIRED HEADER + FOOTER v20260921-30
   Clean light navigation + restrained enterprise footer.
   Inspired by the visual hierarchy of myndsolution.com, while retaining
   Sankhla branding, navigation, enquiry paths and mobile behaviour.
   ===================================================================== */
:root{
  --mynd-header:#ffffff;
  --mynd-header-text:#202830;
  --mynd-header-muted:#66727c;
  --mynd-header-line:#e4e9ec;
  --mynd-action:#10263f;
  --mynd-action-hover:#173b61;
  --mynd-footer:#0b1118;
  --mynd-footer-2:#101820;
  --mynd-footer-text:#f5f7f8;
  --mynd-footer-muted:#a9b4bd;
  --mynd-footer-line:rgba(255,255,255,.12);
}

/* Header — light, flat, precise */
.site-header,
.site-header.is-scrolled{
  background:rgba(255,255,255,.985)!important;
  border-bottom:1px solid var(--mynd-header-line)!important;
  box-shadow:0 7px 24px rgba(12,25,38,.07)!important;
  backdrop-filter:blur(14px) saturate(120%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(120%)!important;
}
@media(min-width:1101px){
  body{padding-top:84px!important}
  html{scroll-padding-top:92px!important}
  .header-row{
    min-height:84px!important;
    grid-template-columns:220px minmax(0,1fr) auto!important;
    gap:26px!important;
  }
  .brand-logo img{
    height:58px!important;
    max-width:214px!important;
    filter:none!important;
  }
  .nav{
    gap:24px!important;
    justify-content:center!important;
  }
  .nav>a,
  .nav-drop>a{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    min-height:84px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:var(--mynd-header-text)!important;
    font-size:13px!important;
    font-weight:650!important;
    letter-spacing:0!important;
  }
  .nav>a:after,
  .nav-drop>a:after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:2px!important;
    border-radius:2px!important;
    background:#1683d8!important;
    transform:scaleX(0)!important;
    transform-origin:left!important;
    transition:transform .2s ease!important;
  }
  .nav>a:hover,
  .nav-drop>a:hover,
  .nav>a.active,
  .nav-drop>a.active{
    color:#0d1720!important;
    background:transparent!important;
  }
  .nav>a:hover:after,
  .nav-drop>a:hover:after,
  .nav>a.active:after,
  .nav-drop>a.active:after{
    transform:scaleX(1)!important;
  }
  .nav-chevron{
    width:14px!important;
    height:14px!important;
    color:#7a8791!important;
  }
  .drop-menu{
    top:72px!important;
    left:-18px!important;
    padding:10px!important;
    border:1px solid var(--mynd-header-line)!important;
    border-radius:7px!important;
    background:#fff!important;
    box-shadow:0 20px 46px rgba(15,29,43,.14)!important;
  }
  .drop-menu a{
    padding:11px 12px!important;
    border-radius:5px!important;
    color:#26313a!important;
    background:transparent!important;
    font-size:12px!important;
    font-weight:650!important;
  }
  .drop-menu a small{
    color:#7b8790!important;
    font-size:10px!important;
    font-weight:500!important;
  }
  .drop-menu a:hover{
    color:#0e5e99!important;
    background:#f4f8fb!important;
  }
  .header-actions{
    gap:16px!important;
  }
  .header-contact{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    color:#39444c!important;
    font-size:12px!important;
    font-weight:650!important;
    white-space:nowrap!important;
  }
  .header-contact .ui-icon{
    width:17px!important;
    height:17px!important;
    color:#1683d8!important;
  }
  .header-contact small{display:none!important}
  .header-contact strong{
    color:#26313a!important;
    font-size:12px!important;
    font-weight:700!important;
  }
  .header-cta{
    min-height:42px!important;
    padding:0 17px!important;
    border:1px solid var(--mynd-action)!important;
    border-radius:4px!important;
    background:var(--mynd-action)!important;
    color:#fff!important;
    box-shadow:none!important;
    font-size:12px!important;
    font-weight:700!important;
    letter-spacing:0!important;
  }
  .header-cta:hover{
    background:var(--mynd-action-hover)!important;
    border-color:var(--mynd-action-hover)!important;
    box-shadow:0 9px 22px rgba(16,38,63,.16)!important;
    transform:translateY(-1px)!important;
  }
}

/* Mobile header follows the same light enterprise treatment */
@media(max-width:1100px){
  body{padding-top:72px!important}
  html{scroll-padding-top:80px!important}
  .site-header,
  .site-header.is-scrolled{
    background:#fff!important;
    border-bottom:1px solid var(--mynd-header-line)!important;
  }
  .header-row{
    min-height:72px!important;
    grid-template-columns:1fr auto!important;
    gap:12px!important;
  }
  .brand-logo img{
    height:51px!important;
    max-width:190px!important;
    filter:none!important;
  }
  .menu-btn{
    display:block!important;
    width:42px!important;
    height:42px!important;
    padding:8px!important;
    border:1px solid var(--mynd-header-line)!important;
    border-radius:6px!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .menu-btn span{
    width:23px!important;
    height:2px!important;
    margin:4px auto!important;
    border-radius:2px!important;
    background:#17222b!important;
  }
  .mobile-menu.open{
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
    max-height:calc(100vh - 72px)!important;
    overflow:auto!important;
    padding:6px 20px 18px!important;
    background:#fff!important;
    border-top:1px solid var(--mynd-header-line)!important;
    box-shadow:0 18px 36px rgba(15,29,43,.10)!important;
  }
  .mobile-menu a{
    min-height:46px!important;
    padding:11px 2px!important;
    border:0!important;
    border-bottom:1px solid #edf0f2!important;
    border-radius:0!important;
    background:transparent!important;
    color:#25303a!important;
    font-size:14px!important;
    font-weight:650!important;
  }
  .mobile-menu .mobile-cta{
    min-height:44px!important;
    margin-top:12px!important;
    padding:0 14px!important;
    border:1px solid var(--mynd-action)!important;
    border-radius:4px!important;
    background:var(--mynd-action)!important;
    color:#fff!important;
    justify-content:center!important;
  }
}
@media(max-width:760px){
  body{padding-top:68px!important}
  html{scroll-padding-top:76px!important}
  .header-row{min-height:68px!important}
  .brand-logo img{height:47px!important;max-width:176px!important}
  .mobile-menu.open{max-height:calc(100vh - 68px)!important}
}

/* Footer — dark, understated and editorial */
.site-footer{
  position:relative!important;
  padding:72px 0 28px!important;
  border-top:0!important;
  background:var(--mynd-footer)!important;
  background-image:none!important;
  color:var(--mynd-footer-text)!important;
  box-shadow:none!important;
}
.site-footer:before,
.site-footer:after{display:none!important}
.footer-modern{position:relative!important}
.footer-main{
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(470px,.85fr)!important;
  gap:78px!important;
  align-items:start!important;
  padding-bottom:46px!important;
  border-bottom:1px solid var(--mynd-footer-line)!important;
}
.site-footer .footer-brand{
  max-width:620px!important;
}
.site-footer .footer-brand .brand-logo{
  display:inline-flex!important;
  width:max-content!important;
  height:auto!important;
  padding:4px 9px!important;
  margin:0 0 24px!important;
  border:0!important;
  border-radius:4px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.site-footer .footer-brand .brand-logo img{
  height:56px!important;
  max-width:220px!important;
  filter:none!important;
}
.footer-eyebrow{
  margin:0 0 12px!important;
  color:#8fa1ae!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}
.site-footer .footer-brand h2{
  max-width:560px!important;
  margin:0!important;
  color:#fff!important;
  font-size:clamp(31px,3.2vw,44px)!important;
  line-height:1.07!important;
  letter-spacing:-.035em!important;
  font-weight:650!important;
}
.footer-lead{
  max-width:590px!important;
  margin:18px 0 0!important;
  color:var(--mynd-footer-muted)!important;
  font-size:13.5px!important;
  line-height:1.75!important;
}
.footer-contact-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px 24px!important;
  margin-top:24px!important;
}
.footer-contact-row a{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#dce4e9!important;
  font-size:12px!important;
  font-weight:600!important;
}
.footer-contact-row a:hover{color:#fff!important}
.footer-contact-row .ui-icon{
  width:17px!important;
  height:17px!important;
  color:#7fbbe5!important;
}
.footer-nav{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px 34px!important;
  padding-top:8px!important;
}
.footer-col{display:flex!important;flex-direction:column!important}
.footer-title{
  margin-bottom:14px!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:750!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.footer-col a{
  width:max-content!important;
  max-width:100%!important;
  padding:5px 0!important;
  color:#aeb9c1!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.45!important;
}
.footer-col a:hover{
  color:#fff!important;
  transform:none!important;
}
.footer-cta-strip{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  margin:0!important;
  padding:26px 0!important;
  border:0!important;
  border-bottom:1px solid var(--mynd-footer-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.footer-cta-strip div{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:8px 18px!important;
}
.footer-cta-strip span{
  color:#7f909c!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
.footer-cta-strip strong{
  color:#fff!important;
  font-size:17px!important;
  font-weight:620!important;
  letter-spacing:-.015em!important;
}
.footer-cta-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:42px!important;
  padding:0 16px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  border-radius:4px!important;
  background:transparent!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:700!important;
}
.footer-cta-btn:hover{
  border-color:#fff!important;
  background:#fff!important;
  color:#0b1118!important;
}
.site-footer .footer-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:22px 0 0!important;
  border:0!important;
  color:#75848f!important;
  font-size:10px!important;
  line-height:1.5!important;
}
.site-footer .footer-bottom .footer-sitemap-link{
  color:#93a1aa!important;
}
.site-footer .footer-bottom .footer-sitemap-link:hover{color:#fff!important}

@media(max-width:1100px){
  .footer-main{
    grid-template-columns:1fr!important;
    gap:42px!important;
  }
  .site-footer .footer-brand{max-width:700px!important}
  .footer-nav{max-width:760px!important}
}
@media(max-width:760px){
  .site-footer{padding:52px 0 22px!important}
  .footer-main{gap:34px!important;padding-bottom:34px!important}
  .site-footer .footer-brand .brand-logo{margin-bottom:20px!important}
  .site-footer .footer-brand .brand-logo img{height:50px!important}
  .site-footer .footer-brand h2{font-size:31px!important}
  .footer-nav{grid-template-columns:1fr 1fr!important;gap:26px 28px!important}
  .footer-cta-strip{
    align-items:flex-start!important;
    flex-direction:column!important;
    padding:22px 0!important;
  }
  .footer-cta-strip div{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:5px!important;
  }
  .site-footer .footer-bottom{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:6px!important;
  }
}
@media(max-width:480px){
  .footer-nav{grid-template-columns:1fr!important}
}

/* =====================================================================
   LIGHT FOOTER MATCHING HEADER v20260921-31
   Footer now uses the same clean white enterprise palette as the header.
   ===================================================================== */
.site-footer{
  background:#fff!important;
  background-image:none!important;
  color:#202830!important;
  border-top:1px solid #e4e9ec!important;
  box-shadow:none!important;
}
.site-footer .footer-main{
  border-bottom:1px solid #e4e9ec!important;
}
.site-footer .footer-brand .brand-logo{
  background:#fff!important;
  border:1px solid #edf0f2!important;
  box-shadow:none!important;
}
.site-footer .footer-brand h2{
  color:#202830!important;
}
.site-footer .footer-eyebrow{
  color:#6f7c86!important;
}
.site-footer .footer-lead{
  color:#66727c!important;
}
.site-footer .footer-contact-row a{
  color:#39444c!important;
}
.site-footer .footer-contact-row a:hover{
  color:#0e5e99!important;
}
.site-footer .footer-contact-row .ui-icon{
  color:#1683d8!important;
}
.site-footer .footer-title{
  color:#202830!important;
}
.site-footer .footer-col a{
  color:#66727c!important;
}
.site-footer .footer-col a:hover{
  color:#0e5e99!important;
}
.site-footer .footer-cta-strip{
  border-bottom:1px solid #e4e9ec!important;
  background:#fff!important;
}
.site-footer .footer-cta-strip span{
  color:#7a8791!important;
}
.site-footer .footer-cta-strip strong{
  color:#202830!important;
}
.site-footer .footer-cta-btn{
  border-color:#10263f!important;
  background:#10263f!important;
  color:#fff!important;
}
.site-footer .footer-cta-btn:hover{
  border-color:#173b61!important;
  background:#173b61!important;
  color:#fff!important;
}
.site-footer .footer-bottom{
  color:#7a8791!important;
}
.site-footer .footer-bottom .footer-sitemap-link{
  color:#66727c!important;
}
.site-footer .footer-bottom .footer-sitemap-link:hover{
  color:#0e5e99!important;
}

/* SMART SCROLL HEADER v20260921-32 */
.site-header{
  transform:translateY(0)!important;
  will-change:transform!important;
  transition:transform .28s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}
.site-header.is-hidden{
  transform:translateY(calc(-100% - 2px))!important;
  box-shadow:none!important;
}
.site-header:focus-within,
.site-header:hover{
  transform:translateY(0)!important;
}
@media (prefers-reduced-motion:reduce){
  .site-header{transition:none!important}
}

/* TESTIMONIALS PAGE v20260921-34 */
.testimonial-hero{
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 15%,rgba(22,131,216,.11),transparent 28%),
    linear-gradient(180deg,#fff 0%,#f7fafc 100%);
}
.testimonial-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);
  gap:64px;
  align-items:center;
}
.testimonial-hero .hero-lead{
  max-width:760px;
}
.testimonial-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:18px 24px;
  align-items:center;
  margin-top:30px;
}
.testimonial-text-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#31404c;
  font-size:.92rem;
  font-weight:800;
  text-decoration:none;
}
.testimonial-text-link span{
  transition:transform .2s ease;
}
.testimonial-text-link:hover{
  color:#0e5e99;
}
.testimonial-text-link:hover span{
  transform:translateX(4px);
}
.testimonial-proof{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:28px;
}
.testimonial-proof span{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 11px;
  border:1px solid #dde5ea;
  border-radius:999px;
  background:rgba(255,255,255,.88);
  color:#62707b;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.01em;
}
.testimonial-summary{
  overflow:hidden;
  border:1px solid #dfe6eb;
  border-radius:20px;
  background:#fff;
  box-shadow:0 24px 70px rgba(15,43,68,.11);
}
.testimonial-summary-head{
  display:flex;
  align-items:center;
  gap:10px;
  padding:20px 22px;
  border-bottom:1px solid #e8edf0;
  color:#27333c;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.testimonial-summary-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
}
.testimonial-summary-grid>div{
  min-height:142px;
  padding:24px 22px;
  border-right:1px solid #edf1f3;
  border-bottom:1px solid #edf1f3;
}
.testimonial-summary-grid>div:nth-child(2n){
  border-right:0;
}
.testimonial-summary-grid>div:nth-last-child(-n+2){
  border-bottom:0;
}
.testimonial-summary-grid span{
  display:block;
  margin-bottom:16px;
  color:#1683d8;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.08em;
}
.testimonial-summary-grid strong{
  display:block;
  margin-bottom:6px;
  color:#1f2a33;
  font-size:1rem;
}
.testimonial-summary-grid small{
  display:block;
  color:#74808a;
  line-height:1.45;
}
.testimonial-trust-strip{
  border-top:1px solid #e7ecef;
  border-bottom:1px solid #e7ecef;
  background:#fff;
}
.testimonial-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.testimonial-trust-grid>div{
  padding:20px 26px;
  border-right:1px solid #e7ecef;
}
.testimonial-trust-grid>div:last-child{
  border-right:0;
}
.testimonial-trust-grid span{
  display:block;
  margin-bottom:5px;
  color:#89949c;
  font-size:.68rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.testimonial-trust-grid strong{
  color:#26323b;
  font-size:.94rem;
}
.testimonial-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.testimonial-grid-premium{
  align-items:stretch;
}
.testimonial-card{
  position:relative;
  display:flex;
  min-height:420px;
  flex-direction:column;
  padding:28px;
  border:1px solid #dfe6ea;
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 44px rgba(16,38,63,.065);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.testimonial-card:hover{
  transform:translateY(-4px);
  border-color:#c8d7e1;
  box-shadow:0 22px 58px rgba(16,38,63,.10);
}
.testimonial-card-featured{
  border-color:#cbdfea;
  background:linear-gradient(180deg,#fff 0%,#f8fbfd 100%);
}
.testimonial-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:25px;
}
.testimonial-icon{
  display:grid;
  width:42px;
  height:42px;
  flex:0 0 42px;
  place-items:center;
  border-radius:12px;
  background:#10263f;
  color:#fff;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.05em;
}
.testimonial-meta{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:7px;
  margin:0;
}
.testimonial-meta span{
  padding:6px 8px;
  border-radius:6px;
  background:#eef4f7;
  color:#456176;
  font-size:.66rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.testimonial-card blockquote{
  margin:0 0 18px;
  color:#202830;
  font-family:Manrope,Inter,sans-serif;
  font-size:1.18rem;
  font-weight:750;
  line-height:1.5;
}
.testimonial-card>p{
  margin:0;
  color:#65717b;
  line-height:1.75;
}
.testimonial-card-foot{
  margin-top:auto;
  padding-top:26px;
  border-top:1px solid #e9edf0;
}
.testimonial-card-foot span{
  display:block;
  margin-bottom:5px;
  color:#909aa2;
  font-size:.67rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.testimonial-card-foot strong{
  color:#33414b;
  font-size:.82rem;
  line-height:1.5;
}
.testimonial-capability-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.testimonial-capability{
  display:flex;
  min-height:270px;
  flex-direction:column;
  padding:26px;
  border:1px solid #e1e6e9;
  border-radius:16px;
  background:#fff;
}
.testimonial-capability>span{
  display:block;
  margin-bottom:34px;
  color:#1683d8;
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.08em;
}
.testimonial-capability h3{
  margin:0 0 10px;
  color:#202830;
  font-size:1.05rem;
}
.testimonial-capability p{
  margin:0;
  color:#68747d;
  font-size:.92rem;
  line-height:1.65;
}
.testimonial-capability a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
  padding-top:22px;
  color:#244761;
  font-size:.82rem;
  font-weight:850;
  text-decoration:none;
}
.testimonial-capability a:hover{
  color:#0e5e99;
}
.testimonial-work-section{
  background:#fff;
}
.testimonial-work-grid{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:72px;
  align-items:start;
}
.testimonial-work-grid h2{
  max-width:560px;
}
.testimonial-work-lead{
  max-width:590px;
  color:#68747d;
  line-height:1.75;
}
.testimonial-work-steps{
  border-top:1px solid #dfe5e8;
}
.testimonial-work-steps article{
  display:grid;
  grid-template-columns:52px 1fr;
  gap:22px;
  padding:24px 0;
  border-bottom:1px solid #dfe5e8;
}
.testimonial-work-steps article>span{
  color:#1683d8;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
}
.testimonial-work-steps h3{
  margin:0 0 7px;
  color:#222e37;
  font-size:1rem;
}
.testimonial-work-steps p{
  margin:0;
  color:#6a7680;
  font-size:.9rem;
  line-height:1.65;
}
.testimonial-sector-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:64px;
  align-items:center;
}
.testimonial-sector-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.testimonial-sector-list span{
  display:flex;
  align-items:center;
  min-height:54px;
  padding:12px 16px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  background:rgba(255,255,255,.07);
  color:#f4f7f9;
  font-size:.84rem;
  font-weight:750;
}
.testimonial-note{
  display:grid;
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
  gap:48px;
  align-items:start;
}
.testimonial-note h2{
  margin-top:0;
}
.testimonial-note-copy{
  padding:28px 30px;
  border-left:3px solid #1683d8;
  background:#f7f9fa;
  color:#5f6b74;
  line-height:1.75;
}
.testimonial-note-copy p{
  margin:0 0 14px;
}
.testimonial-note-copy p:last-child{
  margin-bottom:0;
}
.testimonial-cta-section{
  padding-top:30px;
}
.testimonial-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
  padding:38px 42px;
  border:1px solid #dbe4e9;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbfd 0%,#fff 65%);
  box-shadow:0 18px 54px rgba(16,38,63,.06);
}
.testimonial-cta>div:first-child{
  max-width:760px;
}
.testimonial-cta h2{
  margin:0 0 10px;
}
.testimonial-cta p{
  margin:0;
  color:#66727c;
  line-height:1.7;
}
.testimonial-cta-actions{
  display:flex;
  min-width:220px;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
}
@media(max-width:1050px){
  .testimonial-hero-grid{grid-template-columns:1fr;gap:36px}
  .testimonial-summary{max-width:760px}
  .testimonial-capability-grid{grid-template-columns:1fr 1fr}
  .testimonial-work-grid{grid-template-columns:1fr;gap:36px}
  .testimonial-sector-grid{grid-template-columns:1fr;gap:34px}
}
@media(max-width:900px){
  .testimonial-grid{grid-template-columns:1fr}
  .testimonial-card{min-height:0}
  .testimonial-trust-grid{grid-template-columns:1fr 1fr}
  .testimonial-trust-grid>div:nth-child(2){border-right:0}
  .testimonial-trust-grid>div:nth-child(-n+2){border-bottom:1px solid #e7ecef}
  .testimonial-note{grid-template-columns:1fr;gap:20px}
  .testimonial-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:640px){
  .testimonial-summary-grid{grid-template-columns:1fr}
  .testimonial-summary-grid>div,
  .testimonial-summary-grid>div:nth-child(2n),
  .testimonial-summary-grid>div:nth-last-child(-n+2){
    min-height:auto;
    border-right:0;
    border-bottom:1px solid #edf1f3;
  }
  .testimonial-summary-grid>div:last-child{border-bottom:0}
  .testimonial-trust-grid{grid-template-columns:1fr}
  .testimonial-trust-grid>div,
  .testimonial-trust-grid>div:nth-child(2){
    border-right:0;
    border-bottom:1px solid #e7ecef;
  }
  .testimonial-trust-grid>div:last-child{border-bottom:0}
  .testimonial-capability-grid{grid-template-columns:1fr}
  .testimonial-sector-list{grid-template-columns:1fr}
  .testimonial-card{padding:23px}
  .testimonial-card-top{align-items:flex-start;flex-direction:column}
  .testimonial-meta{justify-content:flex-start}
  .testimonial-work-steps article{grid-template-columns:38px 1fr;gap:12px}
  .testimonial-note-copy{padding:23px 22px}
  .testimonial-cta{padding:28px 24px}
}

/* GLOBAL ALTERNATING GRADIENT SECTION SYSTEM v20260921-35 */
main > section.site-band-color{
  --muted:rgba(235,243,249,.76);
  --line:rgba(255,255,255,.16);
  --blue-2:#ff4aa2;
  --blue-3:#ffffff;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 86% 8%,rgba(236,44,145,.40),transparent 34%),
    radial-gradient(circle at 15% 92%,rgba(25,132,216,.34),transparent 38%),
    linear-gradient(122deg,#102b58 0%,#183c77 56%,#7a2f7c 100%)!important;
  color:#fff!important;
  border-bottom-color:rgba(255,255,255,.15)!important;
}
main > section.site-band-color::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:2px;
  background:linear-gradient(90deg,#1683d8 0%,#7b64d8 48%,#ec2c91 100%);
  pointer-events:none;
}
main > section.site-band-color > *{
  position:relative;
  z-index:1;
}
main > section.site-band-white{
  --muted:#68747d;
  --line:#dfe6ea;
  --blue-2:#1683d8;
  --blue-3:#10263f;
  background:#fff!important;
  color:#202830!important;
  border-bottom-color:#e4e9ec!important;
}
main > section.site-band-color h1,
main > section.site-band-color h2{
  color:#fff!important;
}
main > section.site-band-color .hero-lead,
main > section.site-band-color .section-head>div>p:last-child,
main > section.site-band-color .editorial-grid>div>p,
main > section.site-band-color .lead-light,
main > section.site-band-color .testimonial-work-lead{
  color:rgba(238,244,249,.78)!important;
}
main > section.site-band-color .section-no{
  color:rgba(255,255,255,.58)!important;
}
main > section.site-band-color .eyebrow{
  color:#ff77bb!important;
}
main > section.site-band-color .eyebrow:before{
  background:linear-gradient(90deg,#36a3ff,#ff3d9f)!important;
}
main > section.site-band-color .hero h1 span,
main > section.site-band-color.page-hero h1 span,
main > section.site-band-color .page-hero h1 span{
  color:#ff4aa2!important;
}
main > section.site-band-color :is(
  .stat-strip,
  .service-card,
  .industry-grid span,
  .process,
  .quote-card,
  .tag-board span,
  .office-card,
  .team-card,
  .scope-card,
  .cta-card,
  .testimonial-summary,
  .testimonial-trust-strip,
  .testimonial-card,
  .testimonial-capability,
  .testimonial-note-copy,
  .testimonial-cta
){
  --muted:#68747d;
  --line:#dfe6ea;
  --blue-2:#1683d8;
  --blue-3:#10263f;
  color:#202830!important;
}
main > section.site-band-color :is(
  .service-card,
  .process,
  .quote-card,
  .office-card,
  .team-card,
  .scope-card,
  .cta-card,
  .testimonial-summary,
  .testimonial-card,
  .testimonial-capability,
  .testimonial-note-copy,
  .testimonial-cta
) :is(h1,h2,h3,strong,b){
  color:#202830!important;
}
main > section.site-band-color :is(
  .service-card,
  .process,
  .quote-card,
  .office-card,
  .team-card,
  .scope-card,
  .cta-card,
  .testimonial-summary,
  .testimonial-card,
  .testimonial-capability,
  .testimonial-note-copy,
  .testimonial-cta
) p{
  color:#65717b!important;
}
main > section.site-band-color .record-card,
main > section.site-band-color .ops-card,
main > section.site-band-color .service-symbol{
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 24px 68px rgba(4,15,35,.28);
}
main > section.site-band-color .header-cta,
main > section.site-band-color .btn-blue{
  border-color:#ec2c91!important;
  background:#ec2c91!important;
  color:#fff!important;
  box-shadow:0 12px 34px rgba(236,44,145,.24);
}
main > section.site-band-color .header-cta:hover,
main > section.site-band-color .btn-blue:hover{
  border-color:#d91d7e!important;
  background:#d91d7e!important;
}
main > section.site-band-color .testimonial-text-link,
main > section.site-band-color .arrow-link{
  color:#fff;
}
main > section.site-band-white h1,
main > section.site-band-white h2{
  color:#202830!important;
}
main > section.site-band-white .hero-lead,
main > section.site-band-white .section-head>div>p:last-child,
main > section.site-band-white .editorial-grid>div>p,
main > section.site-band-white .lead-light{
  color:#66727c!important;
}
main > section.site-band-white .eyebrow,
main > section.site-band-white .eyebrow.light{
  color:#5d6b73!important;
}
main > section.site-band-white .eyebrow:before,
main > section.site-band-white .eyebrow.light:before{
  background:#1683d8!important;
}
main > section.site-band-white.section-blue,
main > section.site-band-white.cta-band,
main > section.site-band-white.map-band{
  background:#fff!important;
  color:#202830!important;
}
main > section.site-band-white .blue-list{
  border-top-color:#dbe3e8!important;
}
main > section.site-band-white .blue-list>div{
  border-bottom-color:#dbe3e8!important;
}
main > section.site-band-white .blue-list span{
  color:#1683d8!important;
}
main > section.site-band-white .btn-white{
  background:#10263f!important;
  color:#fff!important;
}
main > section.site-band-white .btn-outline-white{
  border-color:#bcc8cf!important;
  color:#10263f!important;
}
main > section.site-band-white .testimonial-sector-list span{
  border-color:#dce4e9!important;
  background:#f7f9fa!important;
  color:#33414b!important;
}
main > section.site-band-white .testimonial-text-link{
  color:#31404c!important;
}
@media(max-width:900px){
  main > section.site-band-color{
    background:
      radial-gradient(circle at 88% 5%,rgba(236,44,145,.32),transparent 34%),
      radial-gradient(circle at 8% 94%,rgba(25,132,216,.28),transparent 36%),
      linear-gradient(128deg,#102b58 0%,#183a70 58%,#6f306f 100%)!important;
  }
}

/* SITE-WIDE VISUAL QA v20260921-36
   Crisp navigation, image-backed alternating sections, 5x2 ten-card grids,
   and explicit light/dark card contrast across shared page components. */

/* --- Crisp white header / navigation --- */
.site-header,
.site-header.is-scrolled{
  background:#ffffff!important;
  border-bottom:1px solid #dfe6ea!important;
  box-shadow:0 5px 18px rgba(16,38,63,.075)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.site-header *{
  text-shadow:none!important;
  -webkit-font-smoothing:antialiased;
}
@media(min-width:1101px){
  .nav>a,
  .nav-drop>a{
    color:#202b34!important;
    font-weight:700!important;
  }
  .nav>a:hover,
  .nav-drop>a:hover,
  .nav>a.active,
  .nav-drop>a.active{
    color:#071827!important;
  }
  .drop-menu{
    top:73px!important;
    padding:9px!important;
    border:1px solid #d9e1e6!important;
    border-radius:8px!important;
    background:#fff!important;
    box-shadow:0 16px 38px rgba(16,38,63,.12)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    opacity:0;
  }
  .nav-drop:hover .drop-menu,
  .nav-drop:focus-within .drop-menu{
    opacity:1!important;
  }
  .drop-menu a{
    color:#24313b!important;
    background:#fff!important;
    font-weight:700!important;
    opacity:1!important;
  }
  .drop-menu a small{
    color:#77848e!important;
    font-weight:550!important;
    opacity:1!important;
  }
  .drop-menu a:hover{
    background:#f1f6fa!important;
    color:#0d609f!important;
  }
}
.header-contact,
.header-contact strong,
.head-phone{
  color:#27343e!important;
}
.header-contact .ui-icon,
.head-phone .ui-icon{
  color:#1683d8!important;
}

/* --- Alternating section surfaces with real image assets --- */
main > section.site-band-color{
  background-color:#143a72!important;
  background-image:
    linear-gradient(112deg,rgba(10,43,88,.94) 0%,rgba(23,67,132,.88) 54%,rgba(139,46,132,.84) 100%),
    url('/assets/corporate-grid-dark.svg')!important;
  background-position:center,center!important;
  background-repeat:no-repeat,no-repeat!important;
  background-size:cover,cover!important;
  color:#fff!important;
}
main > section.site-band-white{
  background-color:#fff!important;
  background-image:
    linear-gradient(rgba(255,255,255,.955),rgba(255,255,255,.955)),
    url('/assets/corporate-grid-light.svg')!important;
  background-position:center,center!important;
  background-repeat:no-repeat,no-repeat!important;
  background-size:cover,cover!important;
  color:#202830!important;
}

/* Hero sections feel fuller without becoming visually busy. */
main > section.page-hero.site-band-color{
  background-image:
    linear-gradient(108deg,rgba(8,42,85,.95) 0%,rgba(24,67,137,.87) 55%,rgba(150,45,132,.82) 100%),
    url('/assets/corporate-grid-dark.svg')!important;
}
main > section.site-band-color::after{
  height:3px!important;
  background:linear-gradient(90deg,#1898ef 0%,#7664e8 48%,#ed2f91 100%)!important;
}

/* --- Core typography contrast --- */
main > section.site-band-color :is(h1,h2,h3,h4){
  color:#fff!important;
}
main > section.site-band-color :is(
  .hero-lead,
  .lead-light,
  .section-head>div>p:last-child,
  .editorial-grid>div>p,
  .testimonial-work-lead
){
  color:rgba(239,245,250,.84)!important;
}
main > section.site-band-color .section-no{
  color:rgba(255,255,255,.68)!important;
}
main > section.site-band-color .eyebrow,
main > section.site-band-color .eyebrow.light{
  color:#ff80bd!important;
}
main > section.site-band-color .eyebrow:before,
main > section.site-band-color .eyebrow.light:before{
  background:linear-gradient(90deg,#31a8ff,#ff3b9b)!important;
}
main > section.site-band-white :is(h1,h2,h3,h4){
  color:#202830!important;
}
main > section.site-band-white :is(
  .hero-lead,
  .lead-light,
  .section-head>div>p:last-child,
  .editorial-grid>div>p,
  .testimonial-work-lead
){
  color:#65727c!important;
}

/* --- Dark cards inside gradient sections: never allow dark-on-dark text --- */
main > section.site-band-color :is(
  .service-card,
  .practice-row,
  .office-card,
  .team-card,
  .quote-card,
  .process,
  .scope-card,
  .cta-card,
  .testimonial-card,
  .testimonial-capability
){
  background:
    linear-gradient(145deg,rgba(24,58,111,.96),rgba(17,42,81,.94))!important;
  border:1px solid rgba(118,166,235,.34)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(5,22,51,.16)!important;
}
main > section.site-band-color :is(
  .service-card,
  .practice-row,
  .office-card,
  .team-card,
  .quote-card,
  .process,
  .scope-card,
  .cta-card,
  .testimonial-card,
  .testimonial-capability
) :is(h1,h2,h3,h4,strong,b){
  color:#fff!important;
}
main > section.site-band-color :is(
  .service-card,
  .practice-row,
  .office-card,
  .team-card,
  .quote-card,
  .process,
  .scope-card,
  .cta-card,
  .testimonial-card,
  .testimonial-capability
) p{
  color:rgba(231,239,247,.79)!important;
}
main > section.site-band-color :is(
  .service-card,
  .practice-row,
  .office-card,
  .team-card,
  .quote-card,
  .process,
  .scope-card,
  .cta-card,
  .testimonial-card,
  .testimonial-capability
) small{
  color:rgba(196,216,235,.76)!important;
}
main > section.site-band-color .service-top>span,
main > section.site-band-color .practice-row>span{
  color:#87c9ff!important;
}
main > section.site-band-color .icon-box,
main > section.site-band-color .team-icon{
  background:linear-gradient(135deg,#3d8fff,#7c55ff)!important;
  color:#fff!important;
}
main > section.site-band-color :is(.arrow-link,.card-link-label){
  color:#79cbff!important;
}
main > section.site-band-color .office-card.main{
  background:linear-gradient(145deg,rgba(30,79,148,.97),rgba(18,53,103,.95))!important;
}

/* Supporting panels inside colored sections remain readable. */
main > section.site-band-color :is(
  .record-card,
  .ops-card,
  .service-symbol,
  .testimonial-summary
){
  color:#fff!important;
}
main > section.site-band-color :is(
  .record-card,
  .ops-card,
  .service-symbol,
  .testimonial-summary
) :is(h2,h3,strong,b,dt,dd){
  color:#fff!important;
}
main > section.site-band-color .hero-index{
  border-color:rgba(255,255,255,.20)!important;
}
main > section.site-band-color .hero-index a{
  border-color:rgba(255,255,255,.18)!important;
}
main > section.site-band-color .hero-index b{
  color:#fff!important;
}
main > section.site-band-color .hero-index span{
  color:#81c8ff!important;
}
main > section.site-band-color .blue-list p,
main > section.site-band-color .blue-list b{
  color:#fff!important;
}

/* --- White sections: stronger surface definition and clean contrast --- */
main > section.site-band-white :is(
  .service-card,
  .office-card,
  .team-card,
  .quote-card,
  .process,
  .scope-card,
  .cta-card,
  .testimonial-card,
  .testimonial-capability
){
  background:rgba(255,255,255,.94)!important;
  border:1px solid #dce5ea!important;
  color:#202830!important;
  box-shadow:0 10px 28px rgba(16,38,63,.055)!important;
}
main > section.site-band-white :is(
  .service-card,
  .office-card,
  .team-card,
  .quote-card,
  .process,
  .scope-card,
  .cta-card,
  .testimonial-card,
  .testimonial-capability
) :is(h1,h2,h3,h4,strong,b){
  color:#202830!important;
}
main > section.site-band-white :is(
  .service-card,
  .office-card,
  .team-card,
  .quote-card,
  .process,
  .scope-card,
  .cta-card,
  .testimonial-card,
  .testimonial-capability
) p{
  color:#64717b!important;
}

/* Practice / archive rows get a deliberate high-contrast slate treatment on white. */
main > section.site-band-white .practice-list{
  border-top:0!important;
}
main > section.site-band-white .practice-row{
  margin-bottom:12px!important;
  padding:22px 22px!important;
  border:1px solid #d8e1e7!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#72819d 0%,#536986 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(31,54,82,.075)!important;
}
main > section.site-band-white .practice-row :is(h2,h3,strong,b){
  color:#fff!important;
}
main > section.site-band-white .practice-row p{
  color:rgba(236,243,248,.78)!important;
}
main > section.site-band-white .practice-row>span{
  color:#b7dcff!important;
}
main > section.site-band-white .practice-row :is(.arrow-link,.card-link-label){
  color:#78ceff!important;
}

/* Practice rows on colored bands stay dark navy but with guaranteed white type. */
main > section.site-band-color .practice-list{
  border-top-color:rgba(255,255,255,.12)!important;
}
main > section.site-band-color .practice-row{
  margin-bottom:12px!important;
  padding:22px!important;
  border-radius:15px!important;
}

/* Office location readability. */
main > section.site-band-color .office-card :is(h3,strong){
  color:#fff!important;
}
main > section.site-band-color .office-card p{
  color:rgba(230,239,247,.78)!important;
}
main > section.site-band-color .office-card small{
  color:#96cfff!important;
}

/* --- 10 cards = 5 columns x 2 rows on desktop --- */
.service-grid.grid-ten{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  border:0!important;
}
.service-grid.grid-ten .service-card{
  min-height:255px!important;
  border:1px solid #dce4e9!important;
  border-radius:16px!important;
  padding:22px!important;
}
.service-grid.grid-ten .service-card h3{
  margin:42px 0 10px!important;
  font-size:20px!important;
  line-height:1.16!important;
}
.service-grid.grid-ten .service-card p{
  min-height:66px!important;
  line-height:1.6!important;
}
@media(max-width:1220px){
  .service-grid.grid-ten{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:980px){
  .service-grid.grid-ten{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:720px){
  .service-grid.grid-ten{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
  .service-grid.grid-ten{grid-template-columns:1fr!important}
}

/* --- General service grids: cleaner cards on every page --- */
.service-grid{
  gap:14px!important;
  border:0!important;
}
.service-grid .service-card{
  border:1px solid #dce4e9!important;
  border-radius:16px!important;
}
.site-band-color .service-grid .service-card{
  border-color:rgba(118,166,235,.34)!important;
}

/* --- Contact forms / white controls --- */
.site-band-white .contact-form input,
.site-band-white .contact-form select,
.site-band-white .contact-form textarea{
  border:1px solid #cfd9df!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#18232c!important;
  box-shadow:0 1px 0 rgba(16,38,63,.02)!important;
}
.site-band-white .contact-form input:focus,
.site-band-white .contact-form select:focus,
.site-band-white .contact-form textarea:focus{
  border-color:#1683d8!important;
  box-shadow:0 0 0 3px rgba(22,131,216,.10)!important;
}

/* --- White bands get more definition without becoming grey blocks --- */
main > section.site-band-white{
  border-top:0!important;
  border-bottom:1px solid #e2e8ec!important;
}
main > section.site-band-white .section-head{
  position:relative;
}
main > section.site-band-white .section-head:after{
  content:"";
  position:absolute;
  left:0;
  bottom:-18px;
  width:64px;
  height:2px;
  background:linear-gradient(90deg,#1683d8,#e33b94);
}

/* --- Mobile card and section readability --- */
@media(max-width:760px){
  main > section.site-band-color,
  main > section.page-hero.site-band-color{
    background-image:
      linear-gradient(125deg,rgba(10,43,88,.95),rgba(24,65,125,.91) 58%,rgba(119,48,118,.86)),
      url('/assets/corporate-grid-dark.svg')!important;
  }
  main > section.site-band-white{
    background-image:
      linear-gradient(rgba(255,255,255,.97),rgba(255,255,255,.97)),
      url('/assets/corporate-grid-light.svg')!important;
  }
  .service-grid{gap:12px!important}
  .practice-row{border-radius:12px!important}
}

/* FINAL CONTRAST + COMPONENT CLEANUP v20260921-37
   Resolves remaining specificity collisions on homepage industries,
   About chips, Testimonials and shared gradient/white components. */

/* Homepage / shared industry cards */
main > section.site-band-color .industry-grid{
  border-color:rgba(255,255,255,.16)!important;
}
main > section.site-band-color .industry-grid span{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#f7fbff!important;
  font-weight:750!important;
}
main > section.site-band-color .industry-grid span::before{
  color:#fff!important;
}
main > section.site-band-white .industry-grid{
  border-color:#dce5ea!important;
}
main > section.site-band-white .industry-grid span{
  background:rgba(255,255,255,.94)!important;
  border-color:#dce5ea!important;
  color:#2d3b46!important;
  font-weight:750!important;
}

/* About / shared tag chips */
main > section.site-band-white .tag-board span{
  background:#f7fafc!important;
  border:1px solid #d7e3ea!important;
  color:#31414d!important;
  font-weight:700!important;
  box-shadow:0 3px 10px rgba(16,38,63,.035)!important;
}
main > section.site-band-white .tag-board span::before{
  color:#1683d8!important;
  background:#eaf4fb!important;
  border-color:#cfe4f3!important;
}
main > section.site-band-color .tag-board span{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
}
main > section.site-band-color .tag-board span::before{
  color:#fff!important;
  background:rgba(89,162,255,.18)!important;
  border-color:rgba(255,255,255,.18)!important;
}

/* Industry stacks on gradient bands */
main > section.site-band-color .industry-stack b{
  color:#fff!important;
}
main > section.site-band-color .industry-stack span{
  color:#80caff!important;
}
main > section.site-band-color .industry-stack div{
  border-color:rgba(255,255,255,.19)!important;
}

/* Testimonials: quote + footer contrast */
main > section.site-band-color .testimonial-card blockquote{
  color:#fff!important;
}
main > section.site-band-color .testimonial-card-foot{
  border-top-color:rgba(255,255,255,.28)!important;
}
main > section.site-band-color .testimonial-card-foot span{
  color:#8fcfff!important;
}
main > section.site-band-color .testimonial-card-foot strong{
  color:#fff!important;
}
main > section.site-band-color .testimonial-meta span{
  background:#fff!important;
  color:#355875!important;
}
main > section.site-band-color .testimonial-icon{
  background:#092c59!important;
  color:#fff!important;
}

/* Testimonials workflow on gradient bands */
main > section.site-band-color .testimonial-work-steps{
  border-top-color:rgba(255,255,255,.40)!important;
}
main > section.site-band-color .testimonial-work-steps article{
  border-bottom-color:rgba(255,255,255,.36)!important;
}
main > section.site-band-color .testimonial-work-steps article>span{
  color:#31a8ff!important;
}
main > section.site-band-color .testimonial-work-steps h3{
  color:#fff!important;
}
main > section.site-band-color .testimonial-work-steps p{
  color:rgba(228,238,247,.72)!important;
}
main > section.site-band-color .testimonial-work-lead{
  color:rgba(239,245,250,.86)!important;
}

/* Testimonial sector chips */
main > section.site-band-color .testimonial-sector-list span{
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.19)!important;
  color:#fff!important;
}
main > section.site-band-white .testimonial-sector-list span{
  background:#f7fafc!important;
  border-color:#dce5ea!important;
  color:#31414d!important;
}

/* Ensure generic colored-band card headings never inherit dark theme text */
main > section.site-band-color :is(
  .industry-grid span,
  .tag-board span,
  .testimonial-card blockquote,
  .testimonial-work-steps h3,
  .testimonial-sector-list span,
  .industry-stack b
){
  text-shadow:none!important;
}

/* Slightly stronger white-band visual hierarchy */
main > section.site-band-white .section-head h2,
main > section.site-band-white .editorial-grid h2{
  color:#1f2a33!important;
}
main > section.site-band-white .section-head>div>p:last-child,
main > section.site-band-white .editorial-grid>div>p{
  color:#64717b!important;
}

/* Keep 5x2 Insights resource cards compact and aligned */
.service-grid.grid-ten{
  align-items:stretch!important;
}
.service-grid.grid-ten .service-card{
  display:flex!important;
  flex-direction:column!important;
}
.service-grid.grid-ten .service-top{
  min-height:46px!important;
}
.service-grid.grid-ten .service-card p{
  margin-top:auto!important;
}

/* HOME OUTSOURCING SECTION v20260921-38 */
.outsourcing-section{
  position:relative;
}
.outsourcing-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:76px;
  align-items:center;
}
.outsourcing-copy h2{
  max-width:620px;
  margin-bottom:20px;
}
.outsourcing-copy .lead-light{
  max-width:650px;
  margin-bottom:26px;
  line-height:1.75;
}
.outsourcing-proof{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 28px;
}
.outsourcing-proof span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border:1px solid #dbe4e9;
  border-radius:999px;
  background:#f7fafc;
  color:#50606c;
  font-size:11px;
  font-weight:750;
}
.outsourcing-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#0e5e99;
  font-size:12px;
  font-weight:850;
  text-decoration:none;
}
.outsourcing-link .ui-icon{
  width:17px;
  height:17px;
  transition:transform .2s ease;
}
.outsourcing-link:hover .ui-icon{
  transform:translateX(4px);
}
.outsourcing-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.outsourcing-card{
  min-height:205px;
  padding:24px;
  border:1px solid #dbe4e9;
  border-radius:16px;
  background:rgba(255,255,255,.94);
  box-shadow:0 10px 28px rgba(16,38,63,.055);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.outsourcing-card:hover{
  transform:translateY(-3px);
  border-color:#c6d6e1;
  box-shadow:0 18px 42px rgba(16,38,63,.09);
}
.outsourcing-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:26px;
}
.outsourcing-card-head>span{
  display:grid;
  width:36px;
  height:36px;
  place-items:center;
  border-radius:10px;
  background:#10263f;
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
}
.outsourcing-card-head small{
  color:#7d8a94;
  font-size:9.5px;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.outsourcing-card h3{
  margin:0 0 9px;
  color:#202830;
  font-size:19px;
  line-height:1.2;
}
.outsourcing-card p{
  margin:0;
  color:#65727c;
  font-size:13px;
  line-height:1.65;
}

/* The outsourcing block is the white band in the alternating site rhythm. */
main > section.site-band-white.outsourcing-section .eyebrow,
main > section.site-band-white.outsourcing-section .eyebrow.light{
  color:#5d6b73!important;
}
main > section.site-band-white.outsourcing-section .eyebrow:before,
main > section.site-band-white.outsourcing-section .eyebrow.light:before{
  background:linear-gradient(90deg,#1683d8,#e33b94)!important;
}
main > section.site-band-white.outsourcing-section .lead-light{
  color:#64717b!important;
}
main > section.site-band-white.outsourcing-section h2{
  color:#202830!important;
}

/* Fallback if page order ever makes this a colored band. */
main > section.site-band-color.outsourcing-section .outsourcing-proof span{
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  color:#f3f7fb;
}
main > section.site-band-color.outsourcing-section .outsourcing-link{
  color:#8dd2ff;
}
main > section.site-band-color.outsourcing-section .outsourcing-card{
  border-color:rgba(118,166,235,.34);
  background:linear-gradient(145deg,rgba(24,58,111,.96),rgba(17,42,81,.94));
  box-shadow:0 12px 30px rgba(5,22,51,.16);
}
main > section.site-band-color.outsourcing-section .outsourcing-card h3{
  color:#fff;
}
main > section.site-band-color.outsourcing-section .outsourcing-card p{
  color:rgba(231,239,247,.80);
}
main > section.site-band-color.outsourcing-section .outsourcing-card-head small{
  color:#9fd5ff;
}
@media(max-width:1050px){
  .outsourcing-layout{
    grid-template-columns:1fr;
    gap:38px;
  }
}
@media(max-width:700px){
  .outsourcing-grid{
    grid-template-columns:1fr;
  }
  .outsourcing-card{
    min-height:0;
  }
}

/* SITE-WIDE COMPONENT POLISH v20260921-39
   Upgrades recurring layouts found across Services, Team, Practice Areas,
   service-detail pages and article/support pages. */

/* Services page hero index — compact 2-column navigation cards. */
.services-hero-index{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  border:0!important;
}
.services-hero-index a{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:58px!important;
  padding:11px 13px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.055)!important;
  text-decoration:none!important;
}
.services-hero-index a>span:not(.service-glyph){
  flex:0 0 24px!important;
  color:#8fd0ff!important;
  font-size:9.5px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
}
.services-hero-index .service-glyph{
  position:static!important;
  flex:0 0 38px!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  margin:0!important;
}
.services-hero-index b{
  min-width:0!important;
  flex:1 1 auto!important;
  color:#fff!important;
  font-size:13px!important;
  line-height:1.25!important;
}
.services-hero-index>a>.ui-icon{
  flex:0 0 16px!important;
  width:16px!important;
  height:16px!important;
  color:#77c8ff!important;
}
.services-hero-index a:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(133,190,255,.34)!important;
  background:rgba(255,255,255,.09)!important;
}

/* All 4-item delivery/benefit lists become compact cards instead of text rules. */
.split .blue-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  border:0!important;
}
.split .blue-list>div{
  display:block!important;
  min-height:150px!important;
  padding:20px!important;
  border:1px solid transparent!important;
  border-radius:15px!important;
}
.split .blue-list>div>span{
  display:grid!important;
  width:34px!important;
  height:34px!important;
  margin:0 0 24px!important;
  place-items:center!important;
  border-radius:9px!important;
  font-size:10px!important;
  font-weight:900!important;
}
.split .blue-list p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.6!important;
}
.split .blue-list p b{
  display:block!important;
  margin-bottom:5px!important;
  font-size:14px!important;
}
main > section.site-band-white .split .blue-list>div{
  border-color:#dbe4e9!important;
  background:rgba(255,255,255,.95)!important;
  box-shadow:0 8px 24px rgba(16,38,63,.045)!important;
}
main > section.site-band-white .split .blue-list>div>span{
  background:#eaf4fb!important;
  color:#1683d8!important;
}
main > section.site-band-white .split .blue-list p{
  color:#63717b!important;
}
main > section.site-band-white .split .blue-list p b{
  color:#202830!important;
}
main > section.site-band-color .split .blue-list>div{
  border-color:rgba(255,255,255,.17)!important;
  background:rgba(7,31,70,.28)!important;
}
main > section.site-band-color .split .blue-list>div>span{
  background:rgba(64,154,255,.17)!important;
  color:#90d1ff!important;
}
main > section.site-band-color .split .blue-list p{
  color:rgba(233,241,248,.80)!important;
}
main > section.site-band-color .split .blue-list p b{
  color:#fff!important;
}

/* Scope-of-support grids — equal-height, readable, card based. */
.scope-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
  border:0!important;
}
.scope-card{
  display:flex!important;
  min-height:185px!important;
  flex-direction:column!important;
  padding:22px!important;
  border-radius:16px!important;
}
.scope-card>span:not(.scope-glyph){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:9px!important;
  font-size:10px!important;
  font-weight:900!important;
}
.scope-card>.scope-glyph,
.scope-card>.content-glyph{
  position:static!important;
  inset:auto!important;
  margin:20px 0 0!important;
  transform:none!important;
}
.scope-card p{
  margin:auto 0 0!important;
  padding-top:18px!important;
  font-size:13px!important;
  line-height:1.55!important;
}
main > section.site-band-white .scope-card>span:not(.scope-glyph){
  background:#eaf4fb!important;
  color:#1683d8!important;
}
main > section.site-band-white .scope-card p{
  color:#53626d!important;
}
main > section.site-band-color .scope-card>span:not(.scope-glyph){
  background:rgba(64,154,255,.17)!important;
  color:#94d5ff!important;
}
main > section.site-band-color .scope-card p{
  color:rgba(232,240,248,.82)!important;
}

/* Practice Areas hub — 8 areas as compact 2-column cards. */
.practice-area-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  border:0!important;
}
.practice-area-list .practice-row{
  position:relative!important;
  display:block!important;
  min-height:190px!important;
  padding:24px 22px 24px 82px!important;
  border:1px solid #dbe4e9!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.95)!important;
  box-shadow:0 8px 26px rgba(16,38,63,.05)!important;
}
.practice-area-list .practice-row>.practice-glyph{
  position:absolute!important;
  top:24px!important;
  left:22px!important;
  width:42px!important;
  height:42px!important;
  margin:0!important;
}
.practice-area-list .practice-row>span:not(.practice-glyph){
  display:none!important;
}
.practice-area-list .practice-row>div{
  width:100%!important;
}
.practice-area-list .practice-row h2{
  margin:2px 0 10px!important;
  color:#202830!important;
  font-size:23px!important;
  line-height:1.18!important;
}
.practice-area-list .practice-row p{
  margin:0!important;
  color:#64717b!important;
  font-size:13px!important;
  line-height:1.6!important;
}
.practice-area-list .practice-row:hover{
  transform:translateY(-3px)!important;
  border-color:#c6d6e1!important;
  background:#fff!important;
  box-shadow:0 16px 38px rgba(16,38,63,.08)!important;
}

/* Team grid — reduce dead space and improve visual rhythm. */
.team-grid{
  gap:14px!important;
  border:0!important;
}
.team-card{
  min-height:330px!important;
  padding:27px!important;
  border-radius:16px!important;
}
.team-card .team-number{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:9px!important;
  background:#eaf4fb!important;
  color:#1683d8!important;
}
.team-card .team-icon{
  margin-top:28px!important;
}
.team-card h2{
  margin-top:18px!important;
  font-size:31px!important;
  line-height:1.12!important;
}
.team-card .role{
  margin-top:6px!important;
  color:#315b7a!important;
  font-size:12px!important;
  font-weight:800!important;
}
.team-card p:last-child{
  color:#61707a!important;
  line-height:1.65!important;
}

/* About mission/vision cards. */
.dual-cards{
  gap:14px!important;
}
.dual-cards .quote-card{
  min-height:330px!important;
  padding:30px!important;
  border-radius:16px!important;
}
.dual-cards .quote-card .quote-glyph{
  margin-top:28px!important;
}
.dual-cards .quote-card h3{
  margin-top:18px!important;
  font-size:29px!important;
  line-height:1.18!important;
}

/* Office/location grids — remove table-like joins. */
.office-grid{
  gap:14px!important;
  border:0!important;
}
.office-card{
  min-height:215px!important;
  padding:26px!important;
  border-radius:16px!important;
}
.office-card .office-glyph{
  margin-top:24px!important;
}
.office-card h3{
  margin-top:16px!important;
}

/* FAQ cards inherit the page's alternating band instead of looking like a separate old theme. */
.seo-faq .faq-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  border:0!important;
}
.seo-faq article{
  min-height:220px!important;
  padding:24px!important;
  border:1px solid transparent!important;
  border-radius:15px!important;
}
.seo-faq h3{
  margin:0 0 12px!important;
  font-size:18px!important;
  line-height:1.3!important;
}
.seo-faq p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.68!important;
}
main > section.site-band-white.seo-faq article{
  border-color:#dbe4e9!important;
  background:rgba(255,255,255,.95)!important;
}
main > section.site-band-white.seo-faq h3{
  color:#202830!important;
}
main > section.site-band-white.seo-faq p{
  color:#64717b!important;
}
main > section.site-band-color.seo-faq article{
  border-color:rgba(255,255,255,.17)!important;
  background:rgba(7,31,70,.28)!important;
}
main > section.site-band-color.seo-faq h3{
  color:#fff!important;
}
main > section.site-band-color.seo-faq p{
  color:rgba(232,240,248,.80)!important;
}

/* Related-resource links become clear cards. */
.related-seo .related-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  border:0!important;
}
.related-seo .related-grid a{
  min-height:128px!important;
  padding:22px!important;
  border:1px solid transparent!important;
  border-radius:14px!important;
  text-decoration:none!important;
}
.related-seo small{
  margin-bottom:12px!important;
}
main > section.site-band-white.related-seo .related-grid a{
  border-color:#dbe4e9!important;
  background:#fff!important;
  color:#202830!important;
}
main > section.site-band-white.related-seo small{
  color:#1683d8!important;
}
main > section.site-band-color.related-seo .related-grid a{
  border-color:rgba(255,255,255,.17)!important;
  background:rgba(7,31,70,.28)!important;
  color:#fff!important;
}
main > section.site-band-color.related-seo small{
  color:#8fd0ff!important;
}

@media(max-width:1050px){
  .services-hero-index{grid-template-columns:1fr!important}
  .scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:800px){
  .practice-area-list{grid-template-columns:1fr!important}
  .split .blue-list{grid-template-columns:1fr 1fr!important}
}
@media(max-width:620px){
  .split .blue-list,
  .scope-grid,
  .seo-faq .faq-grid,
  .related-seo .related-grid{
    grid-template-columns:1fr!important;
  }
  .practice-area-list .practice-row{
    min-height:0!important;
  }
}

