/* One font registry for every route. Do not redeclare these faces in page CSS.
   `optional` can permanently leave a page in Helvetica-Bold when loading misses
   its short deadline. Preload the three critical weights and allow late loads. */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("assets/header/manrope-400.ttf") format("truetype");
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 500;
  font-display: block;
  src: url("assets/manrope-500.ttf") format("truetype");
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 600;
  font-display: block;
  src: url("assets/manrope-600.ttf") format("truetype");
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  font-display: block;
  src: url("assets/manrope-700.ttf") format("truetype");
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 800;
  font-display: block;
  src: url("assets/manrope-800.ttf") format("truetype");
}
@font-face {
  font-family: "Manrope ExtraLight";
  font-style: normal;
  font-weight: 200;
  font-display: block;
  src: url("assets/footer/manrope-200.ttf") format("truetype");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("assets/inter-400.ttf") format("truetype");
}

html {
  font-synthesis: none;
  text-rendering: geometricPrecision;
}

/* The same service content uses the homepage's type scale on both routes.
   Page styles own layout only; typography lives here, including breakpoints. */
.home-services__title,
.services__title {
  font-family: "Manrope", sans-serif;
  font-size: 90px;
  font-weight: 700;
  line-height: .9;
  letter-spacing: -.04em;
}
.home-services__intro,
.services__intro {
  color: rgb(27 27 27 / 72%);
  font-family: "Manrope", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -.03em;
}
.home-service-row__title,
.service-row__title {
  font-family: "Manrope", sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -.02em;
}
.home-service-row__tags li,
.service-tag {
  font-family: "Manrope", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
}
.home-service-row > p,
.service-row__description {
  color: rgb(27 27 27 / 72%);
  font-family: "Manrope", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -.02em;
}
@media (max-width: 1620px) {
  .home-services__title, .services__title { font-size: clamp(58px, 6.25vw, 90px); }
  .home-service-row__title, .service-row__title { font-size: clamp(28px, 2.7vw, 40px); }
  .home-service-row__tags li, .service-tag { font-size: 14px; line-height: 20px; }
  .home-service-row > p, .service-row__description { font-size: 16px; line-height: 1.45; }
}
@media (max-width: 767px) {
  .home-services__title, .services__title { font-size: clamp(44px, 13.6vw, 58px); }
  .home-services__intro, .services__intro { font-size: 16px; line-height: 1.45; }
  .home-service-row__title, .service-row__title { font-size: clamp(27px, 8vw, 34px); }
  .home-service-row__tags li, .service-tag { font-size: 13px; line-height: 18px; }
}
