:root{--paper:#fafbf9;--ink:#232720;--muted:#62675e;--line:#dcdfd6;--blue:#3351df;--blue-dark:#2540c3;--body:'DM Sans',Arial,sans-serif;--display:'Archivo',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:var(--display);font-weight:500;letter-spacing:-.04em;line-height:1.1;text-wrap:balance}
p{text-wrap:pretty}
a{color:inherit;text-decoration:none;touch-action:manipulation}
a:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:2px}
img{width:100%;height:auto;display:block;object-fit:cover}
.wrap{width:min(1200px,100% - 48px);margin-inline:auto}
.skip{position:fixed;top:-80px;left:16px;background:var(--ink);color:#fff;padding:10px 14px;z-index:9}.skip:focus{top:12px}
.label{font-size:14px;color:var(--muted);margin-bottom:20px}

.header{display:flex;align-items:center;justify-content:space-between;gap:24px;height:96px}
.brand{display:flex;align-items:center;gap:10px;font:600 24px var(--display);letter-spacing:-.04em}
.brand img{width:30px;height:30px;filter:brightness(0)}
.header nav{display:flex;gap:32px;font-size:15px}
.header nav a{padding:8px 0}
.header nav a:hover{color:var(--blue)}

.hero{padding-block:96px 112px}
.hero-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:6%;align-items:end}
.hero h1{font-size:clamp(48px,6.2vw,92px);line-height:.98;letter-spacing:-.06em;white-space:nowrap}
.hero-intro{max-width:400px;padding-bottom:10px}
.hero-intro .lead{font-size:19px;line-height:1.55}
.hero-intro p+p{color:var(--muted);margin-top:14px}
.button{display:inline-flex;align-items:center;gap:14px;background:var(--blue);color:#fff;padding:13px 20px;border-radius:4px;font-size:15px;font-weight:500;margin-top:32px;transition:background-color .15s}
.button span{font-size:18px;line-height:1}
.button:hover{background:var(--blue-dark)}

.services,.work,.contact{border-top:1px solid var(--line)}
.services{padding-block:64px 96px}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:32px;margin-bottom:48px}
.section-heading h2{font-size:clamp(30px,3vw,40px)}
.section-heading>p{font-size:14px;color:var(--muted);text-align:right;line-height:1.6}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:48px}
.service-grid h3{font-size:22px;letter-spacing:-.03em;line-height:1.25;margin-bottom:14px}
.service-grid p{font-size:15px;color:var(--muted)}

.work{padding-block:72px 96px;display:grid;grid-template-columns:1.4fr 1fr;gap:72px;align-items:center}
.work img{aspect-ratio:16/10;border-radius:4px;object-position:50% 60%}
.work figcaption{font-size:13px;color:var(--muted);margin-top:12px}
.work h2{font-size:clamp(34px,3.6vw,48px);margin-bottom:20px}
.work-copy>p:last-child{font-size:18px;max-width:380px}

.contact{padding-block:72px 88px;display:grid;grid-template-columns:1.2fr 1fr;gap:72px;align-items:end}
.contact h2{font-size:clamp(34px,3.8vw,52px);max-width:480px}
.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.email{font:400 clamp(24px,2.4vw,32px) var(--display);letter-spacing:-.035em;display:inline-flex;align-items:center;gap:12px}
.email span{font-size:.8em;color:var(--blue)}
.email:hover{color:var(--blue)}
.phone{font-size:17px}.phone:hover{color:var(--blue)}
.contact-links p{font-size:14px;color:var(--muted);margin-top:4px}

.footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-block:24px 32px;font-size:14px;color:var(--muted)}
.footer a:hover{color:var(--ink)}

@media(max-width:1000px){.service-grid{grid-template-columns:1fr 1fr;gap:40px 48px}.work,.contact{gap:48px}}
@media(max-width:700px){
.wrap{width:calc(100% - 40px)}
.header{height:76px}.brand{font-size:21px;gap:8px}.brand img{width:26px;height:26px}.header nav{gap:20px;font-size:14px}
.hero{padding-block:48px 64px}.hero-layout{display:block}.hero h1{font-size:clamp(44px,13vw,72px);white-space:normal}.hero-intro{margin-top:32px;max-width:none}.hero-intro .lead{font-size:18px}
.services{padding-block:44px 56px}.section-heading{margin-bottom:32px}.section-heading>p{display:none}.service-grid{grid-template-columns:1fr;gap:28px}.service-grid h3{font-size:20px;margin-bottom:8px}
.work{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding-block:44px 56px}.work-copy>p:last-child{font-size:17px}
.contact{display:block;padding-block:44px 56px}.contact-links{margin-top:28px}.email{font-size:25px}
.footer{font-size:13px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
