/* GLOBAL: fonts, brand tokens, reset, typography, layout and buttons. */
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap");
:root {
  --purple: #66239b;
  --ink: #241331;
  --lime: #d9f37d;
  --soft: #f6f3f8;
  --muted: #6d6573;
}
* {
  box-sizing: border-box;
}
body {
  font-family: "DM Sans", Arial, sans-serif;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.7;
}
a {
  color: inherit;
  text-decoration: none;
}
img {
  max-width: 100%;
}
h1,
h2,
h3,
h4 {
  font-family: Manrope, Arial, sans-serif;
  line-height: 1.12;
  font-weight: 800;
  letter-spacing: -0.045em;
}
h1 {
  font-size: clamp(44px, 5.7vw, 82px);
}
h2 {
  font-size: clamp(34px, 3.65vw, 52px);
}
h3 {
  font-size: 25px;
}
h4 {
  font-size: 17px;
}
p {
  margin-bottom: 22px;
}
em {
  font-style: normal;
  color: var(--purple);
}
.container {
  max-width: 1280px;
  padding-left: 32px;
  padding-right: 32px;
}
.topbar {
  background: var(--purple);
  color: white;
  font-size: 12px;
  padding: 9px 0;
  letter-spacing: 0.035em;
}
.topbar a {
  border-bottom: 1px solid #b993d5;
}
header {
  background: white;
  box-shadow: 0 2px 15px #24133108;
}
.navbar {
  min-height: 100px;
  gap: 20px;
}
.navbar-brand {
  max-width: 285px;
  flex-shrink: 1;
}
.navbar-brand img {
  width: 100%;
}
.navbar .nav-link {
  font-size: 13px;
  color: var(--ink);
  font-weight: 700;
  padding: 12px !important;
  white-space: nowrap;
}
.navbar .nav-link:hover,
.navbar .nav-link.active {
  color: var(--purple);
}
.navbar .btn {
  margin-left: 22px;
  padding: 12px 19px;
  font-size: 13px;
}
.btn {
  border-radius: 4px;
  padding: 16px 25px;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 700;
  transition: 0.2s;
  display: inline-flex;
  gap: 24px;
  align-items: center;
  justify-content: center;
}
.btn span {
  font-size: 20px;
  line-height: 1;
}
.btn:hover {
  transform: translateY(-2px);
}
.btn-purple {
  background: var(--purple);
  color: #fff;
}
.btn-purple:hover {
  background: #4b1378;
  color: #fff;
}
.btn-lime {
  background: var(--lime);
  color: var(--ink);
}
.btn-lime:hover {
  background: #c9e96a;
}
.btn-light {
  background: #fff;
  color: var(--purple);
}
.text-link {
  padding: 8px 0;
  border-bottom: 1px solid var(--purple);
  border-radius: 0;
  color: var(--purple);
  font-weight: 700;
  font-size: 14px;
}
