body.service-page{
  --service-bg:#0E1114;
  --service-bg-elev:#171B20;
  --service-bg-elev-2:#1E232A;
  --service-teal:#2F6FED;
  --service-teal-light:#64A3FF;
  --service-ink:#EDF1F3;
  --service-ink-soft:#9AA6AD;
  --service-line:rgba(255,255,255,.08);
  --service-radius-lg:28px;
  --service-radius-md:18px;
  --service-container:1220px;
  background:var(--service-bg);
  color:var(--service-ink);
}

body.service-page header.site{
  position:fixed;
  inset-inline:0;
  top:18px;
  z-index:60;
  background:transparent;
  border:0;
  padding:0;
}

body.service-page header.site .nav-row{
  max-width:var(--service-container);
  margin:0 auto;
  padding:10px 14px 10px 20px;
  background:rgba(23,27,32,.82);
  backdrop-filter:blur(14px);
  border:1px solid var(--service-line);
  border-radius:999px;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}

body.service-page .logo b,
body.service-page nav.main-menu a,
body.service-page .header-cta .btn-solid{
  color:#fff;
}

body.service-page .logo span{color:var(--service-teal-light);}
body.service-page nav.main-menu a{border-radius:999px;}
body.service-page nav.main-menu a:hover,
body.service-page nav.main-menu .current-menu-item a{background:var(--service-bg-elev-2);}
body.service-page .phone-mini{color:var(--service-ink-soft);}
body.service-page .phone-mini b{color:var(--service-ink);}
body.service-page .header-cta .btn-solid{
  background:var(--service-teal);
  border-color:var(--service-teal);
  border-radius:999px;
  color:#fff;
}
body.service-page .header-cta .btn-solid:hover{
  background:var(--service-teal-light);
  border-color:var(--service-teal-light);
  color:#fff;
}
body.service-page .menu-toggle{color:var(--service-ink);}
body.service-page .mobile-menu{
  background:var(--service-bg-elev);
  border-top:1px solid var(--service-line);
}

.service-container{
  width:min(100% - 56px,var(--service-container));
  margin-inline:auto;
}

.service-hero{
  padding:170px 0 90px;
  background:radial-gradient(120% 100% at 75% 0%,#122B4A 0%,var(--service-bg) 55%);
}

.service-hero__inner{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:60px;
  align-items:center;
}

.service-hero__content{min-width:0;}
.service-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 16px;
  padding:7px 16px;
  border-radius:999px;
  background:rgba(47,111,237,.14);
  color:var(--service-teal-light);
  font-size:13px;
  font-weight:700;
}
.service-eyebrow__dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--service-teal-light);
}
.service-hero h1{
  max-width:760px;
  margin:0 0 20px;
  color:#fff;
  font-size:clamp(32px,4.8vw,58px);
  font-weight:800;
  line-height:1.35;
}
.service-hero__excerpt{
  max-width:560px;
  margin:0 0 34px;
  color:rgba(237,241,243,.75);
  font-size:17px;
  line-height:1.9;
}
.service-hero__media{
  aspect-ratio:4/3;
  overflow:hidden;
  background:var(--service-bg-elev);
  border:1px solid var(--service-line);
  border-radius:var(--service-radius-lg);
  box-shadow:0 10px 28px rgba(0,0,0,.35);
}
.service-hero__image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.service-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:48px;
  padding:13px 26px;
  border:1.5px solid transparent;
  border-radius:999px;
  font-size:15px;
  font-weight:700;
  line-height:1.4;
  text-decoration:none;
  transition:all .25s ease;
}
.service-button--primary{
  background:var(--service-teal);
  color:#071A33;
}
.service-button--primary:hover{
  background:var(--service-teal-light);
  color:#071A33;
  transform:translateY(-2px);
}
.service-button--light{
  background:var(--service-ink);
  color:#16201E;
}
.service-button--light:hover{
  background:var(--service-teal-light);
  color:#071A33;
  transform:translateY(-2px);
}
.service-button:focus-visible{
  outline:2px solid var(--service-teal-light);
  outline-offset:3px;
}

.service-content{
  max-width:820px;
  padding-top:76px;
  padding-bottom:90px;
  color:var(--service-ink-soft);
  font-size:16px;
  line-height:1.95;
}
.service-content > *{max-width:100%;}
.service-content h2,
.service-content h3,
.service-content h4{
  margin:2em 0 .7em;
  color:var(--service-ink);
  line-height:1.45;
}
.service-content h2{font-size:32px;}
.service-content h3{font-size:24px;}
.service-content h4{font-size:19px;}
.service-content p{margin:0 0 1.25em;}
.service-content ul,
.service-content ol{margin:1.25em 0;padding-inline-start:1.6em;}
.service-content li{margin:.4em 0;}
.service-content a{color:var(--service-teal-light);}
.service-content img,
.service-content figure{max-width:100%;height:auto;}
.service-content blockquote,
.service-content .wp-block-group,
.service-content .wp-block-details{
  padding:24px;
  background:var(--service-bg-elev);
  border:1px solid var(--service-line);
  border-radius:var(--service-radius-md);
}

.service-related{
  padding:0 0 90px;
}
.service-related h2{
  margin:0 0 24px;
  color:var(--service-ink);
  font-size:clamp(26px,3vw,38px);
}
.service-related__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:18px;
}
.service-related__item{
  display:flex;
  min-height:90px;
  align-items:center;
  gap:16px;
  padding:14px;
  color:var(--service-ink);
  background:var(--service-bg-elev);
  border:1px solid var(--service-line);
  border-radius:var(--service-radius-md);
  text-decoration:none;
  transition:transform .25s ease,border-color .25s ease;
}
.service-related__item:hover{
  color:var(--service-ink);
  border-color:var(--service-teal);
  transform:translateY(-2px);
}
.service-related__image{
  width:64px;
  height:64px;
  flex:0 0 64px;
  object-fit:cover;
  border-radius:12px;
}
.service-related__item span{font-weight:700;line-height:1.6;}

.service-cta{
  padding:70px 0;
  background:var(--service-bg-elev);
  border-top:1px solid var(--service-line);
  border-bottom:1px solid var(--service-line);
}
.service-cta__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.service-cta h2{
  max-width:700px;
  margin:0;
  color:var(--service-ink);
  font-size:clamp(24px,3vw,36px);
  line-height:1.45;
}

body.service-page footer.site{
  background:var(--service-bg);
  color:var(--service-ink-soft);
}

@media(max-width:900px){
  .service-hero__inner{grid-template-columns:1fr;gap:32px;}
  .service-hero__media{max-width:680px;}
  .service-cta__inner{align-items:flex-start;flex-direction:column;}
}

@media(max-width:640px){
  body.service-page header.site{top:10px;}
  body.service-page header.site .nav-row{width:calc(100% - 28px);}
  .service-container{width:min(100% - 36px,var(--service-container));}
  .service-hero{padding:120px 0 56px;}
  .service-hero h1{font-size:30px;}
  .service-hero__excerpt{font-size:15.5px;}
  .service-content{padding-top:56px;padding-bottom:64px;font-size:15px;}
  .service-content h2{font-size:27px;}
  .service-content h3{font-size:22px;}
  .service-related{padding-bottom:64px;}
  .service-cta{padding:56px 0;}
  .service-cta h2{font-size:26px;}
  .service-button{width:100%;}
}
