@font-face{font-family:'Barlow';font-weight:400;font-display:swap;src:url(fonts/barlow-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-weight:600;font-display:swap;src:url(fonts/barlow-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2')}

/* Drawing Office neutrals; accent is the mid stop of the logo gradient (#364f89) so the page matches the mark. */
:root{
  --ground:#EDEFF0;--surface:#FFFFFF;--ink:#26282B;--muted:#5E6266;--line:#C9CDD1;--accent:#364F89;--accent-text:#364F89;
  --sans:'Barlow',system-ui,sans-serif;--mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0}
body{background:var(--surface);color:var(--ink);font:400 1.0625rem/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--accent-text)}
.wrap{max-width:68rem;margin:0 auto;padding:0 1.5rem}
.label{font:500 .75rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

header{border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;gap:.75rem;height:4.5rem}
.brand{display:flex}
.brand img{height:2.6rem;width:auto}
.contact a[href^="tel"]{color:var(--ink);text-decoration:none}

.hero{padding:6rem 0 5rem}
.hero h1{font-weight:600;font-size:clamp(2.1rem,5vw,3.5rem);line-height:1.1;letter-spacing:-.02em;max-width:20ch;margin-top:1.25rem}
.hero p{margin-top:1.5rem;max-width:44ch;font-size:1.2rem;color:var(--muted)}

.lines{background:var(--ground);border-block:1px solid var(--line);padding:4.5rem 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:2rem}
.grid div{background:var(--surface);padding:1.75rem 1.5rem 2rem}
.grid .label{color:var(--accent-text)}
.grid h2{font-weight:600;font-size:1.3rem;margin-top:.9rem}
.grid p{margin-top:.5rem;color:var(--muted);font-size:1rem}

.contact{padding:4.5rem 0}
.contact .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:2rem;margin-top:1.5rem}
.contact address{font-style:normal;color:var(--muted)}
.contact .big{font-size:1.35rem;font-weight:600}

footer{border-top:1px solid var(--line);padding:2rem 0;font-size:.875rem;color:var(--muted)}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}

.prose{padding:4rem 0 5rem;max-width:42rem}
.prose h1{font-weight:600;font-size:2.25rem;letter-spacing:-.02em;margin-top:1rem}
.prose h2{font-weight:600;font-size:1.2rem;margin-top:2rem}
.prose p{margin-top:.6rem;color:var(--muted)}
