:root {
  --page-bg: #ffffff;
  --text: #111111;
  --focus: #2f49e8;
  --container: min(1296px, calc(100% - 40px));
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--page-bg); }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--text);
  background: var(--page-bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
.container { width: var(--container); margin-inline: auto; }
.page { position: relative; overflow: hidden; min-height: 100vh; background: var(--page-bg); }
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.art, .art img { display: block; }
.asset-link { display: inline-block; text-decoration: none; border-radius: 999px; transition: transform .18s ease, filter .18s ease; cursor: pointer; }
.asset-link:hover { transform: translateY(-2px); filter: brightness(1.04); }
.asset-link:focus-visible { outline: 3px solid var(--focus); outline-offset: 5px; }
.logo { object-fit: contain; }
.logo--hero, .logo--footer { width: 185px; height: auto; }

.hero { position: relative; padding: 30px 0 0; }
.hero__inner { display: flex; flex-direction: column; }
.hero__nav { display: flex; align-items: center; justify-content: space-between; min-height: 45px; }
.hero__top-cta, .hero__top-cta-art, .hero__top-cta-art img { width: 308px; }
.hero__content {
  display: grid;
  grid-template-columns: 785px 470px;
  align-items: start;
  justify-content: space-between;
  gap: 41px;
  margin-top: 48px;
}
.hero__copy { min-width: 0; }
.hero__tag { width: 205px; }
.hero__title { width: 785px; margin-top: 36px; }
.hero__subtitle { width: 407px; margin-top: 38px; }
.hero__visual { width: 470px; margin-top: 28px; }
.hero__mobile-cta { display: none; }

.section { position: relative; }
.section-title { margin-inline: 0; }
.section-copy { margin-top: 28px; }
.asset-grid { display: grid; margin-inline: auto; padding: 0; }
.asset-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: start; }
.section-cta { width: 418px; margin-inline: auto; }
.section-cta__art, .section-cta__art img { width: 100%; }

.why { padding-top: 22px; padding-bottom: 63px; }
.why__intro { display: grid; grid-template-columns: 560px 626px; justify-content: space-between; align-items: start; }
.why__title { width: 560px; }
.why__copy { width: 626px; padding-top: 3px; }
.why__cards { margin-top: 39px; }
.why-card, .why-card img { width: 100%; height: 223px; }
.why__cta { display: block; margin-top: 32px; }

.models { padding-bottom: 78px; }
.models__title { width: 729px; }
.models__copy { width: 461px; }
.models__cards { margin-top: 48px; }
.model-card, .model-card img { width: 100%; }

.data { padding-bottom: 83px; }
.data__title { width: 731px; }
.data__copy { width: 463px; }
.data__content { display: grid; grid-template-columns: 636px 636px; gap: 24px; align-items: start; margin-top: 16px; }
.data__stats { display: grid; grid-template-columns: repeat(2, 308px); gap: 20px; }
.stat-card, .stat-card img { width: 308px; }
.data__chart, .data__chart img { width: 636px; }

.reviews { padding-bottom: 46px; }
.reviews__title { width: 831px; }
.reviews__cards { margin-top: 54px; }
.review-card, .review-card img { width: 100%; }
.reviews__cta { display: block; margin-top: 25px; }

.footer { padding: 0 0 33px; }
.footer__inner { display: grid; grid-template-columns: 185px 1fr 146px; align-items: center; gap: 40px; }
.logo--footer { width: 185px; }
.footer__links { display: flex; align-items: center; justify-content: center; gap: 64px; }
.footer__legal-link { border-radius: 4px; opacity: .86; }
.footer__legal-link--privacy, .footer__legal-link--privacy img { width: 247px; }
.footer__legal-link--agreement, .footer__legal-link--agreement img { width: 243px; }
.footer__copyright { width: 146px; justify-self: end; opacity: .86; }

@media (max-width: 1360px) and (min-width: 768px) {
  :root { --container: min(1180px, calc(100% - 40px)); }
  .hero__content { grid-template-columns: minmax(0, 1fr) 410px; gap: 28px; }
  .hero__title { width: min(720px, 100%); }
  .hero__visual { width: 410px; }
  .why__intro { grid-template-columns: minmax(0, 500px) minmax(0, 560px); gap: 40px; }
  .why__title, .why__copy { width: 100%; }
  .asset-grid--three { gap: 20px; }
  .data__content { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
  .data__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat-card, .stat-card img, .data__chart, .data__chart img { width: 100%; }
  .footer__inner { grid-template-columns: 185px minmax(0, 1fr) 146px; gap: 28px; }
  .footer__links { gap: 32px; }
}

@media (max-width: 767px) {
  :root { --container: min(366px, calc(100% - 24px)); }
  .asset-link:hover { transform: none; filter: none; }
  .logo--hero, .logo--footer { width: 139px; }
  .hero { padding-top: 12px; }
  .hero__nav { min-height: auto; justify-content: flex-start; }
  .hero__top-cta { display: none; }
  .hero__content { display: flex; flex-direction: column; gap: 0; margin-top: 20px; }
  .hero__tag { width: 147px; }
  .hero__title { width: min(361px, 100%); margin-top: 20px; }
  .hero__subtitle { width: 285px; margin-top: 32px; }
  .hero__mobile-cta { display: block; width: min(366px, 100%); margin-top: 34px; }
  .hero__mobile-cta img { width: 100%; }
  .hero__visual { width: min(353px, 100%); margin-top: 28px; margin-inline: auto; }
  .section-copy { margin-top: 12px; }
  .asset-grid--three { grid-template-columns: minmax(0, 1fr); gap: 12px; justify-items: center; }
  .section-cta { width: min(366px, 100%); }
  .why { padding-top: 28px; padding-bottom: 45px; }
  .why__intro { display: flex; flex-direction: column; align-items: flex-start; }
  .why__title { width: 320px; }
  .why__copy { width: 312px; padding-top: 23px; }
  .why__cards { margin-top: 29px; gap: 12px; }
  .why-card, .why-card img { width: min(366px, 100%); height: auto; }
  .why__cta { margin-top: 28px; }
  .models { padding-bottom: 43px; }
  .models__title { width: 247px; }
  .models__copy { width: 323px; margin-top: 25px; }
  .models__cards { margin-top: 22px; gap: 12px; }
  .model-card, .model-card img { width: min(366px, 100%); }
  .data { padding-bottom: 48px; }
  .data__title { width: 307px; }
  .data__copy { width: 325px; margin-top: 25px; }
  .data__content { display: flex; flex-direction: column; gap: 15px; margin-top: 22px; }
  .data__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 178px)); justify-content: center; gap: 10px; }
  .stat-card, .stat-card img { width: 178px; }
  .data__chart, .data__chart img { width: min(366px, 100%); }
  .reviews { padding-bottom: 40px; }
  .reviews__title { width: 259px; }
  .reviews__cards { margin-top: 25px; gap: 12px; }
  .review-card, .review-card img { width: min(366px, 100%); }
  .reviews__cta { margin-top: 33px; }
  .footer { padding-bottom: 18px; }
  .footer__inner { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
  .footer__links { flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 18px; }
  .footer__legal-link--privacy, .footer__legal-link--privacy img { width: 185px; }
  .footer__legal-link--agreement, .footer__legal-link--agreement img { width: 182px; }
  .footer__copyright { width: 110px; align-self: flex-end; margin-top: -7px; }
}

@media (max-width: 374px) {
  :root { --container: calc(100% - 16px); }
  .data__stats { grid-template-columns: repeat(2, minmax(0, calc((100vw - 28px) / 2))); gap: 8px; }
  .stat-card, .stat-card img { width: 100%; }
}
