@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&display=swap');

:root{
  --black:#1d1d1f;
  --gray:#6e6e73;
  --light:#f5f5f7;
  --white:#fff;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--white);color:var(--black);
  font-family:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:inherit}
.container{width:min(calc(100% - 48px),var(--max));margin:0 auto}

.header{
  position:absolute;top:0;left:0;right:0;z-index:10;
  background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(20px);
}
.nav{
  height:72px;display:flex;align-items:center;justify-content:space-between;
}
.brand{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;letter-spacing:-.02em}
.brand-mark{
  width:26px;height:26px;border-radius:50%;background:var(--black);color:#fff;
  display:grid;place-items:center;font-size:11px;font-weight:600;
}
.header-link{
  font-size:13px;color:var(--black);transition:opacity .2s ease;
}
.header-link:hover{opacity:.55}
.header-link span{margin-left:5px}

.hero{
  min-height:790px;display:flex;align-items:center;text-align:center;
  padding:125px 0 100px;background:var(--white);
}
.hero-inner{display:flex;flex-direction:column;align-items:center}
.eyebrow{
  margin:0 0 25px;color:#8a8a8f;font-size:10px;font-weight:600;
  letter-spacing:.17em;text-transform:uppercase;
}
.hero h1{
  max-width:1000px;margin:0;
  font:400 clamp(56px,8vw,108px)/.95 "Manrope",-apple-system,sans-serif;
  letter-spacing:-.075em;
}
.hero h1 span{color:#8b8b90}
.hero-copy{
  max-width:570px;margin:30px auto 32px;color:var(--gray);
  font-size:17px;line-height:1.65;
}
.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:0 21px;border-radius:999px;
  font-size:12px;font-weight:600;transition:transform .2s ease,opacity .2s ease;
}
.button:hover{transform:translateY(-2px)}
.button-dark{background:var(--black);color:#fff}
.button-light{background:#fff;color:var(--black)}
.button b{margin-left:8px;font-weight:400}
.coming-soon{
  margin:24px 0 0;color:#9a9a9f;font-size:11px;
}


.services{
  padding:150px 0 165px;
  background:#f5f5f7;
}
.services-inner{display:block}
.services-heading{text-align:left;margin-bottom:85px}
.services-heading .eyebrow{margin-bottom:22px}
.services-heading h2{
  margin:0;
  font:400 clamp(44px,5.8vw,76px)/.98 "Manrope",-apple-system,sans-serif;
  letter-spacing:-.065em;
}
.service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  background:#e2e2e5;
  gap:1px;
}
.service-card{
  min-height:310px;
  padding:42px 34px 36px;
  background:#f5f5f7;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.service-number{
  color:#9a9a9f;
  font-size:10px;
  line-height:1;
}
.service-content{margin-top:auto;padding-top:85px}
.service h3{
  margin:0 0 14px;
  font:500 22px/1.2 "Manrope",-apple-system,sans-serif;
  letter-spacing:-.035em;
}
.service p{
  margin:0;
  max-width:330px;
  color:#747478;
  font-size:14px;
  line-height:1.65;
}

.cta{
  background:var(--black);color:#fff;text-align:center;
  padding:150px 0 145px;
}
.cta-inner{display:flex;flex-direction:column;align-items:center}
.cta .eyebrow{color:#8d8d93}
.cta h2{
  margin:0;font:400 clamp(50px,7vw,92px)/.97 "Manrope",-apple-system,sans-serif;
  letter-spacing:-.07em;
}
.cta h2 span{color:#77777c}
.cta-copy{
  max-width:500px;margin:29px auto 32px;color:#a0a0a5;
  font-size:15px;line-height:1.7;
}
.email{margin-top:17px;color:#85858a;font-size:11px}
.cta-note{margin:55px 0 0;color:#66666b;font-size:11px}

.footer{padding:34px 0;background:#fff}
.footer-inner{display:flex;align-items:center;justify-content:space-between}
.footer p{margin:0;color:#8a8a8f;font-size:11px}

@media(max-width:700px){
  .container{width:min(calc(100% - 32px),var(--max))}
  .nav{height:64px}
  .brand{font-size:12px}
  .header-link{font-size:12px}
  .hero{min-height:680px;padding:115px 0 80px}
  .hero h1{font-size:51px}
  .hero-copy{font-size:15px;margin-top:25px}

  .services{padding:100px 0 110px}
  .services-heading h2{font-size:44px}
  .services-heading{margin-bottom:55px}
  .service-grid{grid-template-columns:1fr}
  .service-card{min-height:250px;padding:30px 25px}
  .service-content{padding-top:65px}
  .service h3{font-size:20px}
  .cta{padding:105px 0 100px}
  .cta h2{font-size:48px}
  .cta-copy{font-size:14px}
  .cta-note{margin-top:45px}
  .footer-inner{display:block;text-align:center}
  .footer p{margin-top:18px}
}
@media(max-width:420px){
  .header-link{font-size:11px}
  .hero h1{font-size:46px}
}
