

*,
*::before,
*::after {
  box-sizing:border-box;
  margin:0;
  padding:0;
}
html {
  scroll-behavior:smooth;
}
body,
button,
input,
textarea,
select {
  font:inherit;
  color:inherit;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  font-weight:inherit;
  font-size:inherit;
  margin:0;
}
a {
  text-decoration:none;
  color:inherit;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
}
button {
  background:none;
  border:none;
  cursor:pointer;
  font:inherit;
}
ul,
ol {
  list-style:none;
  margin:0;
  padding:0;
}
img,
picture,
video,
canvas,
svg {
  display:block;
  max-width:100%;
  height:auto;
}
input,
button,
textarea,
select {
  font:inherit;
}
table {
  border-collapse:collapse;
  border-spacing:0;
}
:root {
  --wrapper-width: 100%;
  --container-width: 1280px;
  --container-width-lg: 1320px;
  --container-padding: 16px;
  --header-height: 72px;
  --grid-gap: 32px;
  --grid-gap-lg: 48px;
  --grid-gap-xl: 64px;
  --font-base: 'Inter', sans-serif;
  --font-title: 'Manrope', sans-serif;
  --fz-body: 1rem;
  --fz-text-large: clamp(1.5rem, 0.563rem + 4.17vw, 4rem);
  --fw-text-large: 700;
  --lh-text-large: 1.2;
  --fz-h1: clamp(1.5rem, 0.938rem + 2.5vw, 3rem);
  --fw-h1: 700;
  --lh-h1: 1.15;
  --fz-h2: clamp(1.5rem, 1.031rem + 2.08vw, 2.75rem);
  --fw-h2: 700;
  --lh-h2: 1.2;
  --fz-h3: clamp(1.25rem, 0.969rem + 1.25vw, 2rem);
  --fw-h3: 600;
  --lh-h3: 1.4;
  --fz-h4: 24px;
  --fw-h4: 600;
  --lh-h4: 1.4;
  --fz-h5: 18px;
  --fw-h5: 600;
  --lh-h5: 1.5;
  --fz-h6: 16px;
  --fw-h6: 600;
  --lh-h6: 1.5;
  --fw-strong: 600;
  --gray-50: #f8fafc;
  --gray-100: #f1f5f9;
  --gray-200: #e2e8f0;
  --gray-300: #cbd5e1;
  --gray-400: #94a3b8;
  --gray-500: #64748b;
  --gray-600: #475569;
  --gray-700: #334155;
  --gray-800: #1e293b;
  --gray-900: #0f172a;
  --black-color: #000;
  --white-color: #fff;
  --dark-color: #20293a;
  --main-color: #5145c3;
  --accent-color: #5145c3;
  --yellow-color: #ffbc12;
  --pink-color: #f34c9e;
  --gradient-btn: linear-gradient(180deg, #9264fa 0%, #7443e4 100%);
  --gradient-text: linear-gradient(180deg, #9264fa 0%, #7443e4 100%);
  --body-bg-color: var(--white-color);
  --bg-gray-color: #fafafa;
  --bg-purple-color: #3c3293;
  --bg-purple-light-color: #edeffc;
  --title-color: #222939;
  --text-color: rgba(0, 0, 0, 0.7);
  --text-gray-color: rgba(0, 0, 0, 0.6);
  --text-danger-color: #bc271a;
  --icon-gray-color: var(--gray-400);
  --input-bg-color: var(--white-color);
  --input-placeholder-color: var(--gray-400);
  --input-border-color: #d1d5db;
  --input-focus-border-color: var(--main-color);
  --input-text-color: var(--text-color);
  --danger-color: #dc2626;
  --danger-bg-color: #fef2f2;
  --success-color: #16a34a;
  --success-bg-color: #f0fdf4;
  --warning-color: #f59e0b;
  --warning-bg-color: #fffbeb;
  --info-color: #0ea5e9;
  --info-bg-color: #eff6ff;
  --line-dark-color: rgba(0, 0, 0, 0.12);
  --line-light-color: rgba(255, 255, 255, 0.15);
  --card-shadow: 0 0 96px 0 rgba(0, 0, 0, 0.08);
  --card-border: #f7f7f7;
  --card-radius: 24px;
  --card-padding: 32px;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.12), 0 4px 6px rgba(0, 0, 0, 0.08);
  --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.15), 0 10px 10px rgba(0, 0, 0, 0.1);
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;
  --br-8: 8px;
  --br-12: 12px;
  --br-16: 16px;
  --br-24: 24px;
  --br-32: 32px;
  --br-48: 48px;
  --br-56: 56px;
  --br-64: 64px;
  --pd-24: 24px;
  --pd-32: 32px;
  --pd-48: 48px;
  --pd-64: 64px;
  --animation-fade: fade 0.3s ease-in-out;
  --transition: 0.3s ease;
}
@media(max-width: 1024px) {
  :root {
    --grid-gap: 24px;
    --card-padding: 24px;
  }
}
@media(max-width: 480px) {
  :root {
    --grid-gap: 16px;
    --card-radius: 16px;
  }
}
.text-accent {
  color:var(--accent-color);
}
html {
  font-size:var(--fz-body);
  scroll-behavior:smooth;
}
html,
body {
  color:var(--text-color);
}
body {
  min-height:100vh;
  min-width:320px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  font-family:var(--font-base);
  font-size:var(--fz-body);
  font-weight:400;
  line-height:1.5;
  color:var(--text-color);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body.lock-scroll {
  overflow:hidden;
}
.page__wrapper {
  width:100%;
  flex:1;
  padding:24px;
  margin:0 auto;
}
@media(max-width: 800px) {
  .page__wrapper {
    padding:16px;
  }
}
@media(max-width: 599px) {
  .page__wrapper {
    padding:0;
  }
}
.page__main {
  flex:1;
}
footer {
  margin-top:auto;
}
.container {
  width:100%;
  max-width:var(--container-width);
  margin:0 auto;
}
@media(max-width: 1340px) {
  .container {
    padding:0 48px;
  }
}
@media(max-width: 1280px) {
  .container {
    padding:0 32px;
  }
}
@media(max-width: 1280px) {
  .container {
    padding:0 32px;
  }
}
@media(max-width: 1024px) {
  .container {
    padding:0 24px;
  }
}
@media(max-width: 767px) {
  .container {
    padding:0 16px;
  }
}
img {
  display:inline-block;
  max-width:100%;
  height:auto;
  object-fit:cover;
}
a {
  cursor:pointer;
  font-size:inherit;
  color:inherit;
  transition:all .2s ease-in-out;
}
a:hover {
  text-decoration:none;
}
input,
button,
textarea,
select {
  font-family:var(--font-base);
}
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance:button;
  cursor:pointer;
  border:none;
  outline:none;
  background:none;
  font-size:inherit;
}
button {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
}
input {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  border:none;
  outline:none;
  border-radius:0;
  padding:0;
  background:none;
  font-family:inherit;
  font-size:inherit;
  line-height:inherit;
  color:inherit;
}
input::placeholder {
  color:#666;
}
strong,
.strong {
  color:var(--title-color);
  font-weight:700;
}
p {
  hyphens:none;
  word-wrap:normal;
  overflow-wrap:normal;
}
.hidden {
  display:none !important;
}
hr {
  margin:2rem 0;
  border:none;
  border-top:1px solid var(--line-dark-color);
}
.section {
  padding:clamp(3rem,1.727rem + 6.36vw,6.5rem) 0;
}
.section--radius {
  border-radius:24px;
}
@media(max-width: 599px) {
  .section--radius {
    border-radius:16px;
  }
}
.section__heading {
  display:flex;
  flex-direction:column;
  margin:0 auto;
  margin-bottom:clamp(2rem,1.143rem + 3.81vw,4rem);
}
.section__heading.is-center {
  justify-content:center;
  max-width:800px;
  text-align:center;
}
.section__title {
  color:var(--title-color);
  font-family:var(--font-title);
  font-size:clamp(1.5rem,.857rem + 2.86vw,3rem);
  font-weight:800;
  line-height:1.15;
  letter-spacing:-0.03em;
}
@media(max-width: 640px) {
  .section__title {
    letter-spacing:0;
    line-height:1.4;
  }
}
@media(max-width: 599px) {
  .section__title {
    font-weight:700;
  }
}
@media(max-width: 393px) {
  .section__title {
    font-size:24px;
  }
}
.section__subtitle {
  color:var(--title-color);
  opacity:.7;
  font-size:18px;
  line-height:1.5;
  margin-top:20px;
}
@media(max-width: 599px) {
  .section__subtitle {
    margin-top:12px;
    font-size:16px;
  }
}
.grid {
  display:grid;
  gap:var(--grid-gap);
}
.grid--2 {
  grid-template-columns:repeat(2, 1fr);
}
.grid--3 {
  grid-template-columns:repeat(3, 1fr);
}
.grid--4 {
  grid-template-columns:repeat(4, 1fr);
}
.bg-purple {
  background-color:var(--bg-purple-color);
}
.bg-purple-light {
  background-color:var(--bg-purple-light-color);
}
.bg-map {
  background-color:var(--bg-purple-color);
  background-image:url("../images/mneposilka/bg-map.webp");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  border-radius:var(--card-radius);
  padding:48px;
  position:relative;
  overflow:hidden;
  z-index:0;
}
.bg-map::before,
.bg-map::after {
  content:"";
  display:block;
  width:360px;
  height:360px;
  position:absolute;
  filter:blur(100px);
  z-index:-1;
  opacity:.6;
}
.bg-map::before {
  background:var(--yellow-color);
  top:-180px;
  left:-180px;
}
.bg-map::after {
  background:var(--pink-color);
  bottom:-140px;
  right:-140px;
}
.bg-map .section__heading {
  margin-bottom:clamp(2rem,1.143rem + 3.81vw,3rem);
}
.bg-map .section__title,
.bg-map .section__subtitle {
  color:var(--white-color) !important;
  opacity:1 !important;
}
@media(max-width: 1024px) {
  .bg-map {
    padding:32px;
  }
}
@media(max-width: 480px) {
  .bg-map {
    padding:32px 24px;
    padding-bottom:24px;
  }
  .bg-map::before {
    display:none;
  }
  .bg-map::after {
    opacity:.4;
    bottom:inherit;
    right:inherit;
    top:-150px;
    left:50%;
    transform:translateX(-50%);
  }
}
.card {
  display:flex;
  flex-direction:column;
  gap:16px;
  background:var(--white-color);
  border:1px solid var(--card-border);
  box-shadow:var(--card-shadow);
  padding:var(--card-padding);
  border-radius:var(--card-radius);
  transition:all .25s ease-in-out;
}
.card:hover {
  transform:translateY(-6px);
}
@media(max-width: 1024px) {
  .card:hover {
    transform:none !important;
  }
}
.card.is-center {
  align-items:center;
  text-align:center;
}
.card__title {
  color:var(--title-color);
  font-family:var(--font-title);
  font-size:20px;
  font-weight:700;
  line-height:1.3;
  margin-bottom:8px;
}
.card__text {
  color:var(--text-color);
  font-size:16px;
  line-height:1.5;
}
@media(max-width: 393px) {
  .card__text {
    font-size:15px;
  }
}
.card svg {
  flex-shrink:0;
  display:inline-block;
}
@media(max-width: 1024px) {
  .card {
    border-radius:24px !important;
    padding:24px;
  }
  .card__title {
    font-size:18px;
  }
}
@media(max-width: 480px) {
  .card {
    border-radius:16px !important;
  }
}
.text-accent {
  color:var(--accent-color);
}
.text-yellow {
  color:var(--yellow-color);
}
@keyframes dotFlash {
  0% {
    opacity:1;
    transform:scale(1);
  }
  50% {
    opacity:.5;
    transform:scale(1.2);
  }
  100% {
    opacity:1;
    transform:scale(1);
  }
}
@keyframes float {
  0%,100% {
    transform:translateY(0);
  }
  50% {
    transform:translateY(-8px);
  }
}
.accordion {
  display:flex;
  flex-direction:column;
  gap:16px;
  width:100%;
  max-width:800px;
  margin:0 auto;
  margin-top:48px;
}
.accordion__item {
  display:flex;
  flex-direction:column;
  border-radius:16px;
  background:var(--white-color);
  box-shadow:var(--card-shadow);
  border:1px solid rgba(0,0,0,.04);
  border-left:3px solid var(--main-color);
  transition:all .3s ease-in-out;
  overflow:hidden;
}
.accordion__item:hover {
  background:var(--bg-green-color);
  border-color:var(--main-color);
}
.accordion__item:hover .accordion__item-icon {
  background:var(--main-color);
}
.accordion__item:hover .accordion__item-icon::after {
  color:#fff;
}
.accordion__item-head {
  cursor:pointer;
  padding:24px;
  display:flex;
  align-items:center;
  gap:16px;
  transition:all .3s ease-in-out;
}
.accordion__title {
  width:100%;
  color:var(--title-color);
  font-family:var(--font-title);
  font-size:18px;
  font-weight:700;
  line-height:1.4;
  transition:color .3s ease-in-out;
}
.accordion__title span {
  font-weight:600;
}
.accordion__item-icon {
  flex-shrink:0;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  position:relative;
  transition:all .4s ease;
}
.accordion__item-icon::after {
  content:"+";
  display:inline-block;
  color:var(--main-color);
  font-family:var(--font-base);
  font-size:26px;
  font-weight:500;
  line-height:1;
  position:relative;
  top:-2px;
}
.accordion__item-body {
  color:var(--text-color);
  font-size:15px;
  height:0;
  overflow:hidden;
  transition:height .3s ease;
}
.accordion__item-body-inner {
  padding:12px 24px 24px;
  padding-top:8px;
}
.accordion__item.active {
  border-color:var(--main-color);
  background:#fff;
  box-shadow:var(--card-shadow);
}
.accordion__item.active .accordion__item-head {
  padding-bottom:0;
}
.accordion__item.active .accordion__title {
  color:var(--title-color);
}
.accordion__item.active .accordion__item-icon {
  transform:rotate(-45deg);
  background-color:var(--main-color);
  border-color:rgba(0,0,0,0);
}
.accordion__item.active .accordion__item-icon::after {
  color:var(--white-color);
  opacity:1;
}
@media(max-width: 480px) {
  .accordion__item {
    border-radius:16px;
  }
  .accordion__item-head {
    padding:16px;
  }
  .accordion__title {
    font-size:16px;
  }
  .accordion__item-icon {
    width:28px;
    height:28px;
  }
  .accordion__item-icon::after {
    font-size:24px;
  }
  .accordion__item-body {
    font-size:15px;
  }
  .accordion__item-body-inner {
    padding:8px 16px 16px;
  }
}
.pb-0 {
  padding-bottom:0px;
}
#btnScrollTop {
  cursor:pointer;
  display:inline-block;
  width:48px;
  height:48px;
  color:#fff;
  background-color:var(--main-color);
  border-radius:12px;
  position:fixed;
  bottom:32px;
  right:32px;
  z-index:10;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:all .3s ease-in;
}
#btnScrollTop.show {
  opacity:.8;
  visibility:visible;
  pointer-events:all;
}
#btnScrollTop.show:hover {
  opacity:1;
}
#btnScrollTop::before {
  content:"";
  flex-shrink:0;
  display:inline-block;
  width:16px;
  height:16px;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg width='20' height='20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='m10.598 5.013 8.154 8.281c.33.33.33.865 0 1.195l-.499.5a.844.844 0 0 1-1.195 0L10 7.796 2.942 14.98a.844.844 0 0 1-1.195 0l-.5-.499a.844.844 0 0 1 0-1.195l8.155-8.281a.85.85 0 0 1 1.196.007Z' fill='%23fff'/%3e%3c/svg%3e");
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
}
#btnScrollTop:hover {
  opacity:1;
}
@media(max-width: 599px) {
  #btnScrollTop {
    right:16px;
    bottom:16px;
  }
}
.btn {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  cursor:pointer;
  border:none;
  outline:none;
  background:none;
  font-size:inherit;
  text-decoration:none;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  height:64px;
  padding:0 40px;
  color:#fff;
  background:var(--gradient-btn);
  border-radius:16px;
  box-shadow:0 8px 16px 0 rgba(84,65,203,.49);
  font-family:var(--font-title);
  font-size:17px;
  font-weight:700;
  line-height:1.5;
  text-align:center;
  transition:all .3s ease-in-out;
}
.btn:hover {
  opacity:.8;
  box-shadow:none;
  transform:translateY(-2px);
}
@media(max-width: 1024px) {
  .btn:hover {
    transform:none;
  }
}
.btn:active {
  transform:scale(0.9);
}
.btn--white {
  opacity:1 !important;
  color:var(--main-color) !important;
  background:var(--white-color) !important;
}
.btn--white .btn__icon {
  background:url("../images/mneposilka/icons/ic-btn_search-p.svg") no-repeat center;
  background-size:cover;
}
.btn__icon {
  width:20px;
  height:20px;
  display:inline-block;
  flex-shrink:0;
  margin-right:8px;
  background:url("../images/mneposilka/icons/ic-btn_search.svg") no-repeat center;
  background-size:cover;
}
.btn--minwidth {
  min-width:320px;
}
@media(max-width: 480px) {
  .btn--minwidth {
    min-width:100%;
  }
}
.btn-wrapper {
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  margin-top:48px;
}
@media(max-width: 480px) {
  .btn-wrapper {
    margin-top:32px;
  }
}
@media(max-width: 480px) {
  .btn {
    width:100%;
    height:56px;
    padding:0 24px;
    border-radius:12px;
    font-size:15px;
  }
  .btn:hover {
    opacity:1;
  }
}
.logo {
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.logo__icon {
  display:inline-block;
  flex-shrink:0;
  width:32px;
  height:32px;
}
.logo__text {
  display:flex;
  color:var(--title-color);
  font-family:var(--font-title);
  font-weight:800;
  font-size:22px;
  line-height:1;
}
.logo__text span {
  color:var(--main-color);
}
@media(max-width: 599px) {
  .logo {
    gap:12px;
  }
  .logo__text {
    font-size:18px;
    flex-direction:column;
  }
}
.delivery-card {
  cursor:pointer;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  background:hsla(0,0%,100%,.08);
  border:1px solid hsla(0,0%,100%,.04);
  border-radius:12px;
  padding:12px;
  transition:all .3s ease-in-out;
}
.delivery-card:hover {
  background:var(--white-color);
  border-color:rgba(0,0,0,0);
}
.delivery-card:hover .delivery-card__img {
  border-color:#e6e6e6;
}
.delivery-card:hover .delivery-card__title {
  color:var(--main-color);
}
.delivery-card__img {
  flex-shrink:0;
  display:inline-block;
  width:56px;
  height:56px;
  border-radius:50%;
  border:1px solid #fff;
  overflow:hidden;
}
.delivery-card__img img {
  flex-shrink:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
@media(max-width: 480px) {
  .delivery-card__img {
    width:56px;
    height:56px;
  }
}
.delivery-card__title {
  color:hsla(0,0%,100%,.8);
  font-family:var(--font-title);
  font-size:14px;
  font-weight:700;
  line-height:1.4;
}
@media(max-width: 393px) {
  .delivery-card__title {
    font-size:13px;
  }
}
@media(max-width: 800px) {
  .delivery-card {
    padding:16px;
  }
}
@media(max-width: 480px) {
  .delivery-card {
    border-radius:16px;
  }
}
.features-card__icon {
  width:64px;
  height:64px;
  flex-shrink:0;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  background:var(--main-color);
  border-radius:16px;
  transition:.3s ease-in-out;
}
.features-card:hover {
  background:var(--white-color);
}
.testimonials-card {
  transform:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  border:none !important;
  padding:0 !important;
  padding-top:8px !important;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:center;
  text-align:center;
}
.testimonials-card__rating {
  flex-shrink:0;
  display:inline-block;
  width:104px;
  height:16px;
  background:url("../images/mneposilka/icons/rating.svg") no-repeat center;
  background-size:cover;
  margin-bottom:16px;
}
.testimonials-card__text {
  font-style:italic;
}
.testimonials-card__bottom {
  order:-1;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:16px;
}
.testimonials-card__user-ava {
  width:80px;
  height:80px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  color:var(--white-color);
  background:var(--main-color);
  border-radius:50%;
  border:4px solid rgba(84,65,203,.16);
  font-family:var(--font-title);
  font-size:20px;
  font-weight:700;
  line-height:1;
  text-align:center;
  position:relative;
  z-index:0;
}
.testimonials-card__user-ava::before {
  content:"";
  display:block;
  width:125%;
  height:125%;
  background:rgba(84,65,203,.16);
  background-size:cover;
  border-radius:50%;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  z-index:-1;
}
.testimonials-card__user-info {
  display:flex;
  flex-direction:column;
}
.testimonials-card__user-name {
  color:var(--title-color);
  font-family:var(--font-title);
  font-size:18px;
  font-weight:700;
  margin-bottom:8px;
}
.testimonials-card__user-location {
  font-size:15px;
  color:var(--text-gray-color);
}
.form-input {
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  outline:none;
  border:none;
  display:block;
  width:100%;
  height:64px;
  padding:0 20px;
  font-size:16px;
  font-weight:400;
  line-height:1.5;
  color:var(--text-color);
  background-color:#fff;
  background-clip:padding-box;
  border:1px solid #e2e2e2;
  border-radius:16px;
  transition:all .15s ease-in-out;
  margin-bottom:16px;
}
.form-input::placeholder {
  color:#64748b;
}
.form-input:focus {
  transform:scale(1.02);
  background:#fff;
  border:2px solid var(--main-color);
}
@media(max-width: 1024px) {
  .form-input:focus {
    transform:none;
  }
}
.form-input.input-error {
  background:var(--danger-bg-color);
  border:1px solid var(--danger-color);
}
.form-input.input-error::placeholder {
  color:var(--danger-color);
}
@media(max-width: 640px) {
  .form-input {
    height:56px;
    border-radius:12px;
  }
}
.form {
  display:flex;
  flex-direction:column;
  width:100%;
}
.form.is-fixed {
  max-width:480px;
  border-radius:24px;
  box-shadow:var(--shadow-sm);
}
.form--glass {
  backdrop-filter:blur(24px);
  box-shadow:0 0 96px 0 rgba(0,0,0,.08);
  background:linear-gradient(180deg, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.6) 100%);
}
.form__group {
  display:grid;
  grid-template-columns:auto 220px;
  align-items:center;
  gap:16px;
}
.form__group .btn {
  padding:0 20px;
}
@media(max-width: 767px) {
  .form__group {
    grid-template-columns:1fr;
  }
}
.form__header {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  margin-bottom:24px;
  text-align:center;
}
.form__title {
  color:var(--title-color);
  font-family:var(--font-title);
  font-size:32px;
  font-weight:700;
  line-height:1.4;
}
.form__descr {
  color:var(--text-color);
  font-size:16px;
  font-weight:400;
}
.form__secure {
  margin-top:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:var(--text-gray-color);
  font-size:13px;
  font-weight:400;
}
.form__secure svg {
  flex-shrink:0;
  display:inline-block;
  width:18px;
  height:18px;
}
@media(max-width: 480px) {
  .form__title {
    font-size:24px;
  }
}
.form-track {
  gap:0;
  position:relative;
  transform:none !important;
  border:none !important;
  border-radius:32px;
  box-shadow:none !important;
  box-shadow:0 0 96px 0 rgba(0,0,0,.08) !important;
  padding:32px 48px;
  position:relative;
}
.form-track__body {
  display:flex;
  flex-direction:column;
  gap:16px;
}
.form-track__item {
  height:64px;
  position:relative;
}
@media(max-width: 640px) {
  .form-track__item {
    height:56px;
  }
}
.form-track__input {
  height:100%;
  padding-left:44px;
  transform:none !important;
}
.form-track .input-icon {
  display:inline-block;
  width:20px;
  height:20px;
  position:absolute;
  top:50%;
  left:16px;
  transform:translateY(-50%);
}
.form-track__btn {
  width:100%;
}
.header {
  width:100%;
  background:var(--white-color);
}
.header--fixed {
  width:100%;
  max-width:1280px;
  border-radius:16px;
  padding:0 16px !important;
  padding-left:24px !important;
  border:1px solid var(--card-border);
  position:relative;
  z-index:0;
}
.header__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:72px;
}
.header__nav {
  display:flex;
  align-items:center;
  gap:32px;
}
.header__nav-list {
  display:flex;
  list-style:none;
  gap:48px;
}
.header__nav-link {
  color:var(--text-color);
  font-family:var(--font-title);
  font-size:15px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.01em;
  transition:var(--transition);
}
.header__nav-link:hover {
  color:var(--main-color);
}
.header__burger {
  display:none;
}
.footer {
  background:#201e37;
  color:hsla(0,0%,100%,.5);
  font-size:14px;
  line-height:1.4;
}
.footer a {
  color:inherit;
  text-decoration:none;
}
.footer a:hover {
  text-decoration:underline;
  color:var(--white-color);
}
.footer__top {
  padding:32px 0;
}
.footer__top-container {
  display:flex;
  justify-content:space-between;
  gap:32px;
}
.footer__list {
  list-style:none;
  width:25%;
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.footer__title {
  color:var(--white-color);
  font-family:var(--font-title);
  font-size:18px;
  font-weight:600;
  margin-bottom:4px;
}
.footer__bottom {
  border-top:1px solid hsla(0,0%,100%,.1);
  padding:16px 0;
}
.footer__bottom-container {
  display:flex;
  justify-content:space-between;
  gap:24px;
}
.footer__payments {
  flex-shrink:0;
  display:flex;
  gap:8px;
}
.footer__payments img {
  flex-shrink:0;
}
@media(max-width: 1024px) {
  .footer__top-container {
    gap:24px;
  }
}
@media(max-width: 992px) {
  .footer__top-container {
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:24px;
  }
  .footer__list {
    width:100%;
  }
}
@media(max-width: 800px) {
  .footer__bottom-container {
    flex-direction:column;
  }
}
@media(max-width: 599px) {
  .footer__top-container {
    grid-template-columns:1fr;
    gap:20px;
  }
  .footer__title {
    font-size:16px;
    margin-bottom:0;
  }
  .footer__bottom-container {
    text-align:center;
    gap:12px;
  }
  .footer__payments {
    flex-direction:column;
    align-items:center;
  }
}
.hero {
  padding:24px 0;
  padding-bottom:32px;
  position:relative;
  overflow:hidden;
}
.hero__grid {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:64px 0;
}
.hero__grid-left {
  width:100%;
  max-width:592px;
}
.hero__grid-right {
  width:100%;
  max-width:684px;
  position:relative;
  z-index:0;
}
.hero__content {
  position:relative;
  z-index:1;
}
.hero__people {
  display:inline-flex;
  align-items:center;
  padding:8px 16px;
  background:#fff;
  border-radius:100px;
  box-shadow:var(--card-shadow);
  font-family:var(--fornt-title);
  font-size:12px;
  font-weight:500;
  margin-bottom:16px;
}
.hero__people-dot {
  flex-shrink:0;
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--success-color);
  animation:dotFlash 1.5s ease-in-out infinite forwards;
  margin-right:8px;
}
.hero__title {
  font-weight:700;
  margin-bottom:24px;
}
.hero__descr {
  color:var(--title-color);
  font-size:17px;
  line-height:1.6;
  opacity:.8;
}
.hero__map {
  display:block;
  position:absolute;
  top:-64px;
  left:-80px;
  z-index:-1;
}
.hero__map img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero__form {
  max-width:520px !important;
  margin-left:auto;
  border:2px solid rgba(0,0,0,0) !important;
  transition:all .3s ease-in-out;
  position:relative;
  top:20px;
}
.hero__form:hover {
  transform:scale(1.02) !important;
  background:#fff;
}
@media(max-width: 1024px) {
  .hero__form:hover {
    transform:none !important;
  }
}
.hero__delivery {
  border-radius:16px;
  padding:16px 0;
}
.how-works__item {
  position:relative;
  border-top:4px solid var(--main-color);
}
.how-works__item-number {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:40px;
  height:40px;
  color:var(--white-color);
  background:var(--main-color);
  border-radius:50%;
  font-size:14px;
  font-weight:700;
  line-height:1;
  position:absolute;
  top:-12px;
  right:-12px;
  transition:all .3s ease-in-out;
}
.features__wrapper {
  width:100%;
  max-width:1216px;
  margin:0 auto;
}
.features__grid {
  gap:24px;
}
.features .features-card {
  background:none !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
}
.features .features-card__icon {
  background:hsla(0,0%,100%,.04);
  border:1px solid hsla(0,0%,100%,.04);
  backdrop-filter:blur(10px);
}
.features .features-card:hover .features-card__icon {
  border-color:var(--yellow-color);
}
.features .card__title {
  color:var(--white-color);
}
.features .card__descr {
  color:hsla(0,0%,100%,.8);
  font-size:15px;
}
.cabinet__grid {
  align-items:center;
  gap:var(--grid-gap-xl);
}
.cabinet__text {
  margin-top:24px;
  font-size:17px;
}
.cabinet__img {
  width:100%;
  border-radius:32px;
  position:relative;
  z-index:0;
  animation:float 3s ease-in-out infinite;
}
.cabinet__img::after {
  content:"";
  display:block;
  width:100%;
  height:50%;
  background:#fff;
  box-shadow:0 48px 80px 0 rgba(84,65,203,.2);
  border-radius:32px;
  position:absolute;
  bottom:0;
  left:50%;
  transform:translateX(-50%);
  z-index:-1;
}
.cabinet__img img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:drop-shadow(0 24px 40px 0 rgba(77, 83, 103, 0.24));
}
.cabinet__content .section__heading {
  margin-bottom:48px;
}
.testimonials__slider {
  width:100%;
  max-width:720px;
  margin:0 auto;
}
.testimonials__rating {
  margin-top:32px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  text-align:center;
}
.testimonials__rating-users {
  display:inline-block;
  flex-shrink:0;
}
.testimonials__rating-info {
  display:flex;
  flex-direction:column;
}
.testimonials__rating-number {
  font-family:var(--font-title);
  font-size:32px;
  font-weight:800;
  letter-spacing:-2px;
  line-height:1;
  margin-bottom:8px;
}
.testimonials__rating-text {
  font-size:14px;
}
.faq__accordion {
  width:100%;
  max-width:800px;
  margin:0 auto;
}
.cta__form {
  max-width:640px !important;
  margin:0 auto;
  padding:16px;
  backdrop-filter:blur(24px);
  background:hsla(0,0%,100%,.08);
}
.cta__form .form-input:focus {
  border-color:var(--yellow-color);
}
@media(max-width: 1024px) {
  .header__nav {
    display:none;
  }
  .hero__grid {
    padding-top:32px;
    width:100%;
    max-width:800px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:32px;
  }
  .hero__grid-left,
  .hero__grid-right {
    max-width:100%;
  }
  .hero__map {
    display:none;
  }
  .hero__content {
    text-align:center;
  }
  .hero__title {
    margin-bottom:24px;
  }
  .hero__map {
    left:50%;
    transform:translateX(-50%);
    top:0;
  }
  .hero__form {
    margin:0 auto;
    top:inherit;
  }
  .features__grid {
    grid-template-columns:repeat(2, 1fr);
    row-gap:32px;
  }
  .cabinet .section__subtitle {
    font-size:16px;
  }
  .cta .section__heading {
    margin-bottom:32px;
  }
}
@media(max-width: 992px) {
  .delivery-card {
    border-radius:12px;
  }
  .cabinet {
    padding:64px 0;
  }
  .cabinet__grid {
    grid-template-columns:1fr;
    gap:48px;
  }
  .cabinet__img {
    order:-1;
    width:60%;
    margin:0 auto;
  }
  .cabinet .section__heading {
    text-align:center;
    margin-bottom:0;
  }
  .cabinet__content {
    width:100%;
    max-width:800px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .cabinet .btn {
    margin-top:32px;
  }
}
@media(max-width: 800px) {
  .hero__grid {
    gap:32px;
  }
  .hero__title {
    margin-bottom:16px;
  }
  .how-works__grid {
    grid-template-columns:repeat(2, 1fr);
    gap:24px;
  }
}
@media(max-width: 767px) {
  .how-works__grid {
    grid-template-columns:1fr;
    gap:48px;
  }
  .how-works__item {
    padding-top:32px;
  }
  .how-works__item-number {
    right:inherit;
    top:-20px;
    left:50%;
    transform:translateX(-50%);
  }
  .cabinet .section__subtitle {
    font-size:16px;
    margin-top:24px;
  }
}
@media(max-width: 640px) {
  .hero__form {
    padding:24px 32px;
  }
  .hero__form .form__header {
    display:none;
  }
  .features__grid {
    grid-template-columns:1fr;
  }
  .features-card {
    align-items:center;
    text-align:center;
  }
  .features-card__icon {
    width:56px;
    height:56px;
  }
  .features-card__icon svg {
    width:22px;
    height:22px;
  }
  .testimonials .section__subtitle {
    display:none;
  }
}
@media(max-width: 599px) {
  .header--fixed {
    padding:0 16px !important;
    border-radius:10px;
  }
  .hero {
    padding-top:16px;
  }
  .hero__grid {
    padding-bottom:48px;
  }
  .hero__descr {
    font-size:16px;
  }
  .hero__form {
    padding:16px !important;
    border-radius:16px !important;
  }
  .cabinet__grid {
    gap:32px;
  }
  .faq__accordion {
    gap:16px;
  }
  .accordion__item {
    border-radius:16px;
  }
  .accordion__item-head {
    padding:16px;
  }
  .accordion__title {
    font-size:18px;
  }
  .cta__form {
    border-radius:24px;
  }
}
@media(max-width: 480px) {
  .hero {
    padding-bottom:48px;
  }
  .hero__grid {
    gap:24px;
    padding-bottom:24px;
  }
  .hero__title {
    margin-bottom:16px;
  }
  .hero__descr {
    font-size:15px;
  }
  .hero__delivery {
    border-radius:12px;
    padding:12px 0;
  }
  .cabinet {
    padding:48px 0;
  }
  .cabinet__img {
    width:80%;
  }
  .cabinet__text {
    font-size:16px;
  }
  .testimonials-card__text {
    font-size:15px;
  }
  .accordion__item {
    border-radius:10px;
  }
  .accordion__title {
    font-size:16px;
  }
  .accordion__item-body {
    font-size:14px;
  }
  .cta .section__heading {
    margin-bottom:24px;
  }
  .cta .section__title {
    font-size:24px;
  }
  .cta__form {
    margin-top:0;
  }
}
@media(max-width: 393px) {
  .hero__descr {
    font-size:15px;
  }
  .cabinet__img {
    width:100%;
  }
  .testimonials-card__user-ava {
    width:56px;
    height:56px;
    font-size:16px;
  }
  .testimonials-card__user-name {
    font-size:16px;
    font-weight:600;
  }
}



.animate-scroll {
	opacity: 0;
	transform: translateY(30px);
	transition:
		opacity 0.6s ease,
		transform 0.6s ease;
}

.animate-scroll--visible {
	opacity: 1;
	transform: translateY(0);
}

.animate-scroll.delay-1 {
	transition-delay: 0.1s;
}
.animate-scroll.delay-2 {
	transition-delay: 0.2s;
}
.animate-scroll.delay-3 {
	transition-delay: 0.3s;
}
.animate-scroll.delay-4 {
	transition-delay: 0.4s;
}
.animate-scroll.delay-5 {
	transition-delay: 0.5s;
}

.animate-scroll.delay-5 {
	transition-delay: 0.6s;
}



.live-notification {
	position: fixed;
	bottom: 24px;
	right: -100%;
	background: var(--white-color);
	border-radius: var(--radius-md);
	box-shadow: 0px 0px 96px 0px rgba(34, 60, 80, 0.2);
	padding: 16px 20px;
	z-index: 999;
	transition: right 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	max-width: 380px;
	border-left: 4px solid var(--pink-color);
	backdrop-filter: blur(8px);
	margin-top: 24px;
}

.live-notification--show {
	right: 24px;
}

.live-notification__content {
	display: flex;
	align-items: center;
	gap: 12px;
}

.live-notification__icon {
	font-size: 28px;
	flex-shrink: 0;
	background: var(--bg-purple-light-color);
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
}

.live-notification__text {
	font-size: 14px;
	line-height: 1.45;
	color: var(--text-gray-color);
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.live-notification__user {
	color: var(--title-color);
	font-size: 15px;
	font-weight: 700;
	font-family: var(--font-title);
}

.live-notification__service {
	color: var(--main-color);
	font-weight: 600;
}

@media (max-width: 800px) {
	.live-notification {
		bottom: 16px;
		right: 16px;
		padding: 12px;
	}

	.live-notification--show {
		right: 16px;
	}
}

@media (max-width: 480px) {
	.live-notification__icon {
		font-size: 24px;
		width: 40px;
		height: 40px;
	}

	.live-notification__text {
		font-size: 12px;
	}

	.live-notification__user {
		font-size: 14px;
	}
}


.services__track {
  display:flex;
  gap:16px;
  padding:0 16px;
  overflow-x:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.services__track::-webkit-scrollbar {
  display:none;
}
.services__slide {
  flex:0 0 calc((100% - 16px * 6) / 7);
  min-width:96px;
}

.delivery-card {
  cursor:default;
}
@media(max-width: 1024px) {
  .services__slide {
    flex:0 0 calc((100% - 16px * 4) / 5);
  }
}
@media(max-width: 800px) {
  .services__slide {
    flex:0 0 calc((100% - 16px * 3) / 4);
  }
}
@media(max-width: 640px) {
  .services__track {
    gap:12px;
  }
  .services__slide {
    flex:0 0 calc((100% - 12px * 2) / 3);
  }
}
@media(max-width: 480px) {
  .services__slide {
    flex:0 0 calc((100% - 12px) / 2);
  }
}


.testimonials__slider {
  position:relative;
}
.testimonials__track {
  display:flex;
  gap:16px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.testimonials__track::-webkit-scrollbar {
  display:none;
}
.testimonials__track:focus-visible {
  outline:2px solid var(--main-color);
  outline-offset:4px;
}
.testimonials__slide {
  flex:0 0 100%;
  scroll-snap-align:start;
  display:flex;
}
.testimonials__slide .testimonials-card {
  width:100%;
}
.testimonials__arrow {
  cursor:pointer;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  width:48px;
  height:48px;
  background:#f6f5fd;
  box-shadow:var(--card-shadow);
  border:0;
  border-radius:50%;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  color:var(--main-color);
  transition:background .3s ease-in-out, color .3s ease-in-out;
  z-index:1;
}
.testimonials__arrow:hover {
  background:var(--main-color);
  color:#fff;
}
.testimonials__arrow--prev {
  left:-80px;
}
.testimonials__arrow--next {
  right:-80px;
}
.testimonials__pagination {
  display:flex;
  width:100%;
  justify-content:center;
  gap:8px;
  margin-top:32px;
}
.testimonials__dot {
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(0, 0, 0, .12);
  cursor:pointer;
  transition:transform .2s linear, background .2s linear;
}
.testimonials__dot.is-active {
  background:var(--main-color);
  transform:scale(1.4);
}
@media(max-width: 1024px) {
  .testimonials__arrow {
    display:none;
  }
}


.burger {
  width:28px;
  height:22px;
  padding:0;
  border:0;
  background:none;
  position:relative;
  z-index:30;
}
.burger__line {
  display:block;
  width:100%;
  height:2px;
  border-radius:100px;
  background:var(--title-color);
  transition:transform .25s ease-in-out, opacity .2s ease-in-out;
}
.burger__line:not(:last-child) {
  margin-bottom:6px;
}
.burger.is-active .burger__line:first-child {
  transform:translateY(8px) rotate(45deg);
}
.burger.is-active .burger__line:nth-child(2) {
  opacity:0;
}
.burger.is-active .burger__line:last-child {
  transform:translateY(-8px) rotate(-45deg);
}

@media(max-width: 1024px) {
  .header__burger {
    display:block;
  }
  
  .header--fixed {
    z-index:25;
  }
  .header__nav {
    display:flex;
    position:fixed;
    inset:0 0 0 auto;
    width:min(320px, 86vw);
    padding:96px 24px 32px;
    align-items:flex-start;
    background:var(--white-color);
    box-shadow:-8px 0 32px rgba(22, 35, 58, .12);
    transform:translateX(100%);
    transition:transform .3s ease-in-out;
    z-index:20;
  }
  .header__nav.is-open {
    transform:translateX(0);
  }
  .header__nav-list {
    flex-direction:column;
    align-items:flex-start;
    gap:20px;
  }
}
body.lock-scroll {
  overflow:hidden;
}


.header.is-scrolled {
  box-shadow:0 6px 24px rgba(22, 35, 58, .08);
}


.form-track__error {
  display:none;
  margin-top:8px;
  color:var(--text-danger-color);
  font-size:14px;
  line-height:1.4;
}
.form-track__input.input-error {
  border-color:var(--text-danger-color) !important;
}


.form-track__btn.is-loading {
  cursor:default;
  opacity:.7;
}


.footer__custom-text {
  font-size:14px;
  line-height:1.6;
}
.footer__custom-text p:not(:last-child) {
  margin-bottom:8px;
}
.footer__custom-text a {
  text-decoration:underline;
}
