/* Foundations retained from style.css for the redesign service page.
   Keep before search-pages.css and editorial.css. Values and responsive order
   are unchanged; obsolete homepage illustrations, forms and sections are omitted. */
@font-face{font-family:Manrope;src:url('/assets/manrope-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/manrope-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/manrope-800.woff2') format('woff2');font-weight:800;font-display:swap}
:root{--paper:#f4f2ec;--ink:#151a22;--muted:#5c6269;--line:#d6d8d0;--accent:#334eff;--lime:#d8fa6c;--white:#fff;--cobalt:#304aed}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;color:inherit}
button:disabled{cursor:default}
a{color:inherit}
img{display:block;max-width:100%}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{letter-spacing:-.055em;line-height:1.08;font-weight:600}
p{color:var(--muted)}
h2{font-size:clamp(38px,4.6vw,66px)}
[hidden]{display:none!important}
::selection{background:var(--lime);color:var(--ink)}
:focus-visible{outline:3px solid #d28c00;outline-offset:5px}
.wrap{width:min(1360px,calc(100% - 96px));margin-inline:auto}
.section{padding-block:110px}
.eyebrow,.section-kicker{font-size:10px;letter-spacing:.13em;font-weight:600}
.subtle{color:#71767b}
.accent{color:var(--accent)}
.lime{color:var(--lime)}
.skip-link{position:fixed;left:20px;top:-100px;background:var(--lime);padding:12px 18px;color:var(--ink);z-index:100}
.skip-link:focus{top:12px}
.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;z-index:20}
.brand{display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-size:28px;line-height:1;font-weight:800;letter-spacing:-1.8px;white-space:nowrap}
.brand-labs{font-weight:400}
.brand-period{color:var(--accent)}
.brand-symbol{width:27px;height:32px;margin-right:8px}
.site-header nav{display:flex;gap:29px;align-items:center}
.site-header nav>a{font-size:11px;text-decoration:none}
.site-header nav>a:not(.button){padding-block:15px;color:#d3d8e0}
.site-header nav>a:not(.button):hover{color:var(--lime)}
.menu-toggle{display:none}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:18px 23px;min-height:54px;border:1px solid var(--ink);border-radius:5px;background:var(--ink);color:white;text-decoration:none;font-size:12px;font-weight:600;transition:transform .2s,background .2s,box-shadow .2s}
.button span{font-size:22px;line-height:1;font-weight:400}
.button:hover{transform:translateY(-2px);background:var(--accent);border-color:var(--accent);box-shadow:0 8px 24px #151a2215}
.button.small{padding:12px 17px;font-size:10px;min-height:44px}
.button.full{width:100%}
.text-link{display:inline-flex;align-items:center;gap:25px;font-size:12px;text-decoration:none;border-bottom:1px solid currentColor;padding-block:7px}
.text-link span{font-size:17px}
.section-kicker{display:flex;justify-content:space-between;gap:24px;color:#626975;font-size:9px;padding-bottom:30px}
details{border-bottom:1px solid #cfd6c9}
summary{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:23px 0;cursor:pointer;font-size:13px;list-style:none}
summary::-webkit-details-marker{display:none}
summary span{font-size:23px;font-weight:400;color:#808879;line-height:1}
details[open] summary span{transform:rotate(45deg)}
details p{font-size:12px;line-height:1.95;padding-bottom:24px;max-width:500px}
.site-header>a:not(.brand){font-size:12px}

@media(max-width:1100px){
  .wrap{width:calc(100% - 64px)}
  .site-header nav{gap:20px}
  .site-header nav>a{font-size:10px}
  .section{padding-block:85px}
}
@media(max-width:800px){
  .wrap{width:calc(100% - 44px)}
  .site-header{height:85px}
  .brand{font-size:25px}
  .site-header nav{display:none;position:absolute;top:77px;left:0;right:0;background:#232b37;border:1px solid #465160;border-radius:8px;padding:20px;box-shadow:0 16px 30px #0003;flex-direction:column;align-items:stretch;gap:4px}
  .site-header nav.open{display:flex}
  .site-header nav>a{font-size:13px}
  .site-header nav>a:not(.button){padding:10px 4px}
  .menu-toggle{display:flex;align-items:center;gap:16px;background:transparent;border:1px solid #6d7683;border-radius:4px;color:white;font-size:10px;padding:9px 12px;min-height:42px}
  .menu-toggle>span{font-size:20px;line-height:1}
  h2{font-size:48px}
  .section-kicker{font-size:8px}
  .section-kicker>span:last-child{font-size:7px}
  summary{font-size:12px}
  details p{font-size:11px}
  .site-header>a:not(.brand){font-size:11px}
}
@media(max-width:560px){
  .wrap{width:calc(100% - 36px)}
  .site-header{height:78px}
  .brand{font-size:24px;gap:5px}
  .brand-symbol{width:23px;height:28px;margin-right:5px}
  .site-header nav{top:73px}
  .section{padding-block:68px}
  .section-kicker{font-size:7px;letter-spacing:.08em;padding-bottom:25px;gap:15px}
  .section-kicker>span:last-child{font-size:5px;text-align:right}
  h2{font-size:42px}
  summary{font-size:13px;padding-block:22px}
  details p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
