/* Russian copy needs a wider measure and room for Cyrillic ascenders. */
.l-front-page h1,
.l-front-page h2,
.l-front-page h3,
.s-modal h2 {
  line-height: 1.12;
  text-wrap: balance;
  overflow-wrap: normal;
}
.l-front-page .s-hero .s__title {
  width: min(100%, 1100px) !important;
  max-width: 1100px !important;
  white-space: pre-line;
  font-size: clamp(34px, 8vw, 112px);
  margin-inline: auto;
}
.l-front-page .s-usps .s__title {
  max-width: 22ch;
  font-size: clamp(28px, 4.2vw, 62px);
}
.l-front-page .s-usps .b__title {
  font-size: clamp(24px, 2.4vw, 32px);
  line-height: 1.15;
}
.l-front-page .b-execution .b__title {
  width: min(100%, 18ch);
  max-width: 18ch;
  font-size: clamp(28px, 3.2vw, 48px);
}
.l-front-page .s-work .b-quote .b__content {
  font-size: clamp(32px, 3vw, 46px);
  line-height: 1.22;
}
.l-front-page .s-work .b-quote .b__text {
  width: 100%;
  max-width: none;
  white-space: pre-line;
  text-wrap: pretty;
}
.l-front-page .s-catchphrase .s__title {
  width: min(100%, 1100px);
  max-width: 24ch;
  font-size: clamp(30px, 4.5vw, 72px);
  line-height: 1.14;
  margin-inline: auto;
  white-space: pre-line;
}
.l-front-page .s-pricing .b-recurring__top .b__title {
  font-size: clamp(22px, 1.9vw, 28px);
}
.l-front-page .s-pricing .s__title {
  font-size: clamp(26px, 2.05vw, 38px);
  line-height: 1.2;
  white-space: pre-line;
}
.l-front-page .s-faq .s__title {
  font-size: clamp(22px, 2.1vw, 32px);
  min-width: 0;
  max-width: 24ch;
  text-wrap: balance;
}
.l-front-page .s-faq .s__top { gap: 32px; }
.l-front-page .s-faq .s__text { flex: 0 0 auto; min-width: 148px; line-height: 1.4; }
.l-front-page .b-calculator .pc-results { align-items: stretch; }
.l-front-page .b-calculator .pc-value { font: 400 clamp(24px, 2.2vw, 36px)/1.2 'Supply Mono', monospace; letter-spacing: -.07em; text-wrap: balance; }
.l-front-page .b-calculator .pc-value--price { font-size: clamp(22px, 1.8vw, 32px); }
.l-front-page .b-calculator .pc-note { margin: 0; padding: 0 8px; color: #686868; font-size: 14px; line-height: 1.45; max-width: 66ch; }
@media (max-width: 700px) { .l-front-page .s-faq .s__top { display: grid; gap: 16px; } }
.l-front-page .s-final-cta .s__title {
  font-size: clamp(32px, 4.5vw, 72px);
  line-height: 1.16;
}
.s-modal .b-form__left h2 {
  font-size: clamp(24px, 2.1vw, 32px);
  line-height: 1.16;
}
.l-front-page .s-pricing .b-calculator .b__top > .b__text {
  width: 100%;
  max-width: 64ch;
  line-height: 1.4;
}
.l-front-page .b-delivery .b__projects {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  height: auto;
  align-items: stretch;
}
.l-front-page .b-delivery .sb-project {
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 132px;
}
.l-front-page .b-delivery .sb__description {
  margin-bottom: 16px;
}
.l-front-page .b-delivery .sb__footer {
  height: auto;
  margin-top: auto;
  align-items: center;
}
.l-front-page .b-delivery .sb__meta {
  min-width: 0;
  flex-wrap: wrap;
  gap: 6px;
}
.l-front-page .b-delivery .sb__link {
  flex-shrink: 0;
}
@media (min-width: 601px) and (max-width: 1100px) {
  .l-front-page .s-work .b-quote .b__content { font-size: 42px; }
  .l-front-page .b-delivery .b__projects { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .l-front-page .s-work .b-quote .b__content { font-size: 28px; }
  .l-front-page .b-delivery .b__projects { grid-template-columns: 1fr; }
  .l-front-page .s-hero .s__title { font-size: clamp(28px, 8vw, 42px); }
  .l-front-page .s-usps .s__title { font-size: clamp(24px, 6.5vw, 32px); }
  .l-front-page .s-catchphrase .s__title { font-size: clamp(26px, 7vw, 40px); }
  .l-front-page .s-faq .b__toggle { font-size: 16px; line-height: 1.25; }
}
