:root{--ink:#14222b;--muted:#56636c;--paper:#f9fafb;--line:#dce2e5;--blue:#255bea;--lime:#e1fa82}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.wrap{width:min(1180px,100% - 96px);margin-inline:auto}.demo-banner{text-align:center;background:var(--ink);color:#fff;letter-spacing:.09em;padding:9px 24px;font-size:12px}.demo-banner span{letter-spacing:0;color:#d0d8de;margin-left:18px}.header{justify-content:space-between;align-items:center;gap:32px;min-height:110px;display:flex}.brand{letter-spacing:-1.3px;white-space:nowrap;font-size:29px;font-weight:800}.brand-mark{color:var(--blue);margin-right:10px;font-size:36px}.brand-dot{color:var(--blue)}nav{flex-wrap:wrap;gap:27px;display:flex}nav a{color:var(--muted);border-bottom:2px solid #0000;padding:8px 0;font-size:14px}nav a:hover,nav a[aria-current]{color:var(--ink);border-color:var(--blue)}.eyebrow{letter-spacing:.12em;font-size:13px;font-weight:700}.hero{padding:74px 0 0}.hero h1,.page-heading h1{letter-spacing:-.065em;margin:28px 0 38px;font-size:clamp(3.4rem,8.8vw,7.5rem);font-weight:750;line-height:1.02}.hero h1 span,.page-heading h1 span{color:var(--blue)}.hero-bottom{justify-content:space-between;align-items:center;gap:40px;margin-bottom:74px;display:flex}.hero-bottom p{max-width:540px;color:var(--muted);margin:0;font-size:21px;line-height:1.65}.button{background:var(--blue);color:#fff;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:16px 30px;font-size:15px;font-weight:700;display:inline-flex}.button:hover{background:#1548ca}.hero-rule{border-top:1px solid var(--line);letter-spacing:.1em;color:var(--muted);justify-content:space-between;padding:19px 0;font-size:12px;display:flex}h2{letter-spacing:-.045em;margin:20px 0 24px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.14}h3{letter-spacing:-.03em;margin:0 0 14px;font-size:23px;line-height:1.3}p{color:var(--muted)}.services-section{background:#edf1f5;margin-top:24px;padding:74px 0 80px}.section-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.text-link{border-bottom:1px solid var(--ink);padding-bottom:3px;font-size:15px;font-weight:700;display:inline-block}.text-link:hover{color:var(--blue);border-color:var(--blue)}.service-list{margin-top:30px}.service{border-top:1px solid #cdd7df;grid-template-columns:64px 1fr 1.2fr;gap:24px;padding:31px 0;display:grid}.service:last-child{border-bottom:1px solid #cdd7df}.index{color:var(--blue);font-size:14px;font-weight:700}.service h3{margin:0}.service p{max-width:510px;margin:0}.note-section{grid-template-columns:1fr 1.1fr;column-gap:80px;padding:88px 0 96px;display:grid}.note-section .eyebrow{grid-column:1/-1}.note-section h2{grid-row:2/4}.note-section p{margin-top:24px;font-size:20px}.note-section .text-link{justify-self:start}.footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;padding:32px 0;display:flex}.footer .brand{font-size:23px}.footer p,.footer>span{font-size:12px}.page-heading{border-bottom:1px solid var(--line);padding:66px 0 64px}.page-heading h1{font-size:clamp(3rem,7vw,6.1rem)}.intro{max-width:640px;margin:0;font-size:21px}.content-section{padding-top:66px;padding-bottom:88px}.about-grid{grid-template-columns:1fr 1.2fr;gap:70px;display:grid}.about-grid h2{margin-top:0}.large-copy{margin-top:0;font-size:23px}.values{margin-top:36px}.values article{border-top:1px solid var(--line);padding:24px 0}.values p{margin:0}.process{padding-top:72px}.three-columns{grid-template-columns:repeat(3,1fr);gap:44px;margin-top:38px;display:grid}.three-columns article{border-top:2px solid var(--blue);padding-top:24px}.project-grid{grid-template-columns:repeat(2,1fr);gap:54px 30px;display:grid}.project-cover{border-radius:4px;flex-direction:column;justify-content:space-between;min-height:320px;padding:28px;display:flex}.project-cover>span,.project-cover small{letter-spacing:.12em;font-size:12px}.project-cover strong{letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(2rem,4vw,3.2rem)}.project-cover strong span{color:var(--lime)}.project-cover.blue{background:var(--blue);color:#fff}.project-cover.lime{background:var(--lime);color:var(--ink)}.project-cover.lime strong span{color:var(--blue)}.project-cover.ink{background:var(--ink);color:#fff}.project h2{max-width:430px;margin:22px 0 10px;font-size:26px}.project p{margin:0;font-size:14px}.journal-list{max-width:850px}.journal-list article{border-bottom:1px solid var(--line);margin-bottom:38px;padding:0 0 36px}.journal-list h2{font-size:36px}.journal-list p{font-size:18px}.contact-grid{grid-template-columns:1fr 1fr;gap:80px;display:grid}.contact-card{background:#edf1f5;border-radius:4px;align-self:start;padding:38px}.contact-card .text-link{margin-top:14px}@media (max-width:900px){.wrap{width:calc(100% - 48px)}.header{flex-direction:column;align-items:flex-start;gap:16px;padding:24px 0}nav{gap:22px}.hero{padding-top:45px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:28px;margin-bottom:45px}.service{grid-template-columns:40px 1fr}.service p{grid-column:2}.note-section,.about-grid,.contact-grid{grid-template-columns:1fr;gap:24px}.note-section h2{grid-row:auto}.note-section p{margin-top:0}.three-columns{gap:24px}.project-cover{min-height:270px}.footer{gap:12px}}@media (max-width:560px){.demo-banner span{display:none}.wrap{width:calc(100% - 36px)}nav{gap:17px}nav a{font-size:13px}.hero h1{font-size:3.65rem}.hero-bottom p,.intro{font-size:18px}.hero-rule{gap:16px;font-size:10px}.hero-rule span:last-child{display:none}.services-section,.content-section{padding-top:44px;padding-bottom:48px}.section-heading{flex-direction:column;align-items:flex-start;gap:8px}.service{gap:12px;padding:26px 0}.service h3{font-size:21px}.note-section{padding-top:56px;padding-bottom:60px}.project-grid,.three-columns{grid-template-columns:1fr}.project-cover{min-height:260px}.project-cover strong{font-size:39px}.page-heading{padding-top:40px;padding-bottom:40px}.page-heading h1{font-size:3.25rem}.journal-list h2{font-size:29px}.contact-card{padding:27px}.footer{flex-direction:column;align-items:flex-start}.footer p{margin:0}.footer>span{font-size:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
