.container {
  width: min(1320px, 100% - 2.5rem);
}

.btn {
  padding: 1.05rem 2.1rem;
  font-size: 0.87rem;
}

.btn--sm {
  padding: 0.65rem 1.25rem;
  font-size: 0.79rem;
}

.header__inner {
  padding-block: 0.75rem;
}

.hero__grid {
  padding-block: clamp(6.5rem, 12vw, 10rem);
  min-height: min(88vh, 880px);
}

.hero__eyebrow {
  font-size: 0.78rem;
  margin-bottom: 1.6rem;
}

.hero h1 {
  font-size: clamp(2.6rem, 6.4vw, 5.6rem);
  margin-bottom: 1.5rem;
}

.hero p {
  font-size: clamp(1.05rem, 1.6vw, 1.22rem);
  margin-bottom: 2.25rem;
  max-width: 640px;
}

.hero__card {
  padding: clamp(2rem, 3.4vw, 2.6rem);
}

.hero__phone {
  font-size: 1.5rem;
}

.hero__contact li {
  font-size: 0.95rem;
}

.facts__item {
  padding: 1.85rem 1.9rem;
}

.facts__item b {
  font-size: clamp(2rem, 2.8vw, 2.6rem);
}

.facts__item span {
  font-size: 0.72rem;
}

.section {
  padding-block: clamp(5.5rem, 10vw, 9rem);
}

.section-title {
  max-width: 780px;
  margin-bottom: clamp(2.5rem, 5vw, 3.75rem);
}

.section-title h2 {
  font-size: clamp(2rem, 3.6vw, 3rem);
  margin-bottom: 1.15rem;
}

.section-title p {
  font-size: 1.08rem;
}

.section-head2 {
  margin-bottom: clamp(2.5rem, 5vw, 3.75rem);
}

.section-head2 h2 {
  font-size: clamp(2rem, 3.6vw, 3rem);
  margin-bottom: 1.15rem;
}

.section-head2 p {
  font-size: 1.08rem;
}

.usp__icon {
  width: 54px;
  height: 54px;
}

.usp__icon svg {
  width: 25px;
  height: 25px;
}

.usp h3 {
  font-size: 1.12rem;
}

.usp p {
  font-size: 0.95rem;
}

.card {
  padding: clamp(1.75rem, 2.8vw, 2.35rem);
}

.card h3 {
  font-size: 1.3rem;
}

.card p {
  font-size: 0.98rem;
}

.card__icon {
  width: 58px;
  height: 58px;
}

.card__icon svg {
  width: 27px;
  height: 27px;
}

.row-item {
  padding: clamp(1.75rem, 3.4vw, 2.6rem) 0;
}

.row-item__num {
  font-size: 1.15rem;
}

.row-item__body h3 {
  font-size: 1.45rem;
}

.row-item__body p {
  font-size: 1rem;
}

.sector {
  padding: 1.15rem 1.3rem;
  font-size: 0.97rem;
}

.service-detail {
  padding-block: clamp(3rem, 6vw, 4.75rem);
}

.service-detail__content h2 {
  font-size: clamp(1.7rem, 3vw, 2.35rem);
}

.service-detail__content p {
  font-size: 1.05rem;
}

.service-detail__panel {
  padding: clamp(2.25rem, 4vw, 3.25rem);
}

.service-detail__panel h3 {
  font-size: 1.25rem;
}

.step {
  padding-top: 1.6rem;
}

.step__num {
  font-size: 2.9rem;
}

.step h3 {
  font-size: 1.15rem;
}

.step p {
  font-size: 0.95rem;
}

.stat b {
  font-size: clamp(2.2rem, 4vw, 3.2rem);
}

.stat span {
  font-size: 0.75rem;
}

.cta h2 {
  font-size: clamp(1.9rem, 3.6vw, 2.7rem);
}

.cta p {
  font-size: 1.08rem;
}

.contact-item {
  padding: 1.25rem 1.4rem;
}

.contact-item strong {
  font-size: 1rem;
}

.accordion summary {
  font-size: 1.1rem;
  padding: 1.55rem 1.25rem;
}

.accordion .accordion__body {
  font-size: 1rem;
}

.chips a {
  padding: 0.6rem 1.2rem;
}

.job-card__head h3 {
  font-size: 1.5rem;
}

.page-hero__inner {
  padding-block: clamp(4rem, 8vw, 7rem);
}

.page-hero h1 {
  font-size: clamp(2.4rem, 4.8vw, 3.8rem);
}

.page-hero p {
  font-size: 1.1rem;
  max-width: 780px;
}

.footer__grid {
  padding-block: clamp(3rem, 6vw, 4.5rem);
}

.footer__claim {
  font-size: 0.97rem;
}

.footer__col a,
.footer__col span {
  font-size: 0.95rem;
}
