.icon:before{
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: cover;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: cover;
  width:22px;
  height:22px;
  background-color: var(--black);
  display:block;
  content:'';
  transition: all .3s;
}
.icon {
  border-radius: 5px;
  transition: background-color 0.3s;
}
.icon.icon-services:before {
  mask-image: var(--icon-services);
  -webkit-mask-image: var(--icon-services);
  background-color: #0b2e13;
  height: 26px;
}
.icon.icon-portfolio:before {
  mask-image: var(--icon-portfolio);
  -webkit-mask-image: var(--icon-portfolio);
  background-color: #0b2e13;
}
.icon.icon-soc:before {
  mask-image: var(--icon-soc);
  -webkit-mask-image: var(--icon-soc);
  background-color: #0b2e13;
}
.icon.icon-home:before {
  mask-image: var(--icon-home);
  -webkit-mask-image: var(--icon-home);
  background-color: #0b2e13;
}
.icon.icon-contacts:before {
  mask-image: var(--icon-contacts);
  -webkit-mask-image: var(--icon-contacts);
  background-color: #0b2e13;
  height: 20px;
}
.icon-next {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #e3e3e3;
  margin: 0 0 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.icon.icon-next:before {
  mask-image: var(--icon-next);
  -webkit-mask-image: var(--icon-next);
  background-color: #0b2e13;
  height: 10px;
  width: 9px;
}
.icon.icon-brendy:before {
  mask-image: var(--icon-brendy);
  -webkit-mask-image: var(--icon-brendy);
  background-color: #acacac;
  width: 30px;
  height: 30px;
}
.icon.icon-poligrafia:before {
  mask-image: var(--icon-poligrafia);
  -webkit-mask-image: var(--icon-poligrafia);
  background-color: #acacac;
  width: 19px;
  height: 30px;
}
.icon.icon-site:before {
  mask-image: var(--icon-site);
  -webkit-mask-image: var(--icon-site);
  background-color: #acacac;
  width: 30px;
  height: 30px;
}
.menu-open {
  overflow: hidden;
}
.menu-open .site-header {
  position: initial !important;
}

.portfolio-filter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap:16px;
}
.portfolio-filter .icon:hover:before,
.portfolio-filter-active:before {
  background-color: #000000 !important;
}
.title-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
  margin: 0 0 1.5rem;
}
h1 {
  margin: 0 0 1.5rem;
  color: #27282d;
  font-size: var(--hero-title-size);
  font-weight: 600;
  line-height: var(--hero-title-line-height) 5rem;
  letter-spacing: var(--hero-title-letter-spacing);
  text-transform: uppercase;
}
.title-row h1 {
  margin: 0;
}
.pointer {
  cursor: pointer;
}
.cont-vn {
  padding: 40px 0 60px;
}
.b-krohki { display: flex; justify-content: flex-start; align-items: center; margin: 30px 0;}

.hlebn-krohki { color:var(--main-1); font-size: 14px;}
.hlebn-krohki a {color:#042a35}
.hlebn-krohki ul { list-style:none; padding:0; margin:0; display: flex; flex-wrap: wrap; align-items: center; }
.hlebn-krohki li { display:inline-block}
.hlebn-krohki-dev { padding:0 10px}


.topcontrol { width:60px; height:60px; position: fixed; z-index: 9999; bottom: 50px; right: 50px; cursor: pointer; text-align:center; background:url(../images/up-arrow.png) no-repeat center #c0282b;opacity: 0.5;filter:alpha(opacity=50);border-radius:50%; webkit-border-radius:50%; moz-border-radius:50%;}
.topcontrol:hover {opacity: 1;filter:alpha(opacity=100);}

.warnText {
  color: var(--color-accent);
  margin: 10px 0;
}
.hidden {
  display: none;
}
.disabled {
  color: #f7f7f7;
  cursor: pointer;
}
.b-cookie {
  display: block;
  filter: drop-shadow(0 0 27px rgba(0,0,0,.12));
  left: 50%;
  padding: 12px 24px;
  position: fixed;
  transform: translate3d(-50%,-24px,0);
  width: 640px; bottom:10px; background:#fff; border:#eaeaea solid 1px;border-radius: 12px; z-index: 55;}
.main-cu { font-family: Arial, Helvetica, sans-serif; display:flex; justify-content: center; align-items:center;}
.b-cookie-text { margin:0 70px 0 0; font-size:14px}
.b-cookie-text a { color:#ff3e37; text-decoration: underline; }
.b-cookie-but button {
  border-radius: 5px;
  padding: 12px 30px;
  margin: 0;
  background: var(--color-accent);
  border: none;
  color:#fff;
}

.support-bottom__text {
  font-size: 1rem;
  margin: 50px 0 0;
  padding: 10px 30px;
  border-radius: var(--support-card-radius);
  background-color: #fff;
}
.support-bottom__title {
  font-size: 2rem;
  color: var(--process-badge-color);
  text-transform: uppercase;
  font-weight: 600;
  line-height: normal;
}
.modal {
  display: none;
  border-radius: 1rem;
}
.modal-title {
  font-size: 2rem;
}
.modal-messageinfo {
  max-width: 700px !important;
}
.create-modal__title-cnt {
  font-size: 3rem;
  color: var(--color-accent);
  font-weight: 700;
}
.create-modal__title {
  font-size: 1.5rem;
  font-weight: 600;
}
.create-modal__text {
  padding: 1rem 0;
}
.create-modal-row {
  display: flex;
  align-items: flex-end;
  gap: 14px;
}
.create-modal-row__img {
  width: 30%;
  flex-shrink: 0;
}

.support-plans .support-plan__list-title {
  margin: 0;
  padding-top: 1rem;
  padding-bottom: 0.5rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  text-transform: none;

}
.support-plans .support-plan__list {
  display: grid;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 0.75rem;
  padding: 0;
  list-style: none;
  min-height: 150px;
}

.support-plans .support-plan__item {
  position: relative;
  min-height: 0.75rem;
  padding-left: 1.6rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.25;
}

.support-plans .support-plan__item::before {
  position: absolute;
  top: 0.1875rem;
  left: 0;
  width: 0.75rem;
  height: 0.5625rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 9'%3E%3Cpath d='M1 4.5 4.2 7.6 11 1' fill='none' stroke='%23000000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}
.support-plan__price {
  margin: 1rem auto;
  padding: 0.625rem 2.5rem;
  border-radius: 999px;
  background-color: var(--process-badge-color);;
  color: #ffffff;
  font-size: 0.975rem;
  font-weight: 600;
  line-height: 1;
  text-align: center;
}
@media only screen and (max-width: 750px){
  .b-cookie {
    width: 96%;
    box-sizing: border-box;
  }
}
@media only screen and (max-width: 400px){
  .b-cookie-text {
    margin: 0;
    text-align: center;
  }
  .main-cu {
    flex-direction: column;
    gap: 20px;
  }
  .fancybox-content {
    padding: 20px !important;
  }
}

.social-activity__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  color: #fff;
  font-size: calc(var(--hero-card-text-size) * 1.1);
}
.social-activity__cards1 {
  grid-row: 1/3;
  background: url("../images/about/about1.jpg") no-repeat left top / cover;
  border-radius: 20px;
  overflow: hidden;
  padding: 20px 39px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.social-activity__cards2 {
  background: url("../images/about/about2.jpg") no-repeat left top / cover;
  border-radius: 20px;
  overflow: hidden;
  padding: 0 35px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.social-activity__cards3 {
  background: url("../images/about/about3.jpg") no-repeat left top / cover;
  border-radius: 20px;
  overflow: hidden;
  padding: 20px 39px;
  display: flex;
  flex-direction: column;
}
.social-activity__cards-value {
  font-size: var(--hero-card-value-lg);
  font-weight: 600;
}
.social-project-card-full {
  display: flex;
  gap: 60px;
}

.partners-grid {
  display: grid;
  align-items: center;
  grid-template-columns: repeat(10, 1fr);
  gap: 30px;
}
.skip-link {
  position: absolute;
  left: var(--space-4);
  top: var(--space-4);
  z-index: 10;
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-1);
  background-color: var(--color-surface);
  transform: translateY(-200%);
  transition: transform var(--duration-fast) var(--easing-base);
}
.captcha-box {
  display: flex;
  gap: 20px;
}
.captcha-row {
  display: flex;
  align-items: center;
  gap: 20px;
}
#nc_captcha_refresh_button0 {
  background: url("../images/reload.svg") no-repeat center / contain;
  text-indent: -1000%;
  border: none;
  overflow: hidden;
  width: 40px;
  height: 40px;
}


.skip-link {
  position: absolute;
  left: var(--space-4);
  top: var(--space-4);
  z-index: 10;
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-1);
  background-color: var(--color-surface);
  transform: translateY(-200%);
  transition: transform var(--duration-fast) var(--easing-base);
}

.skip-link:focus-visible {
  transform: translateY(0);
}

.services-menu-open {
  overflow: hidden;
}

.site-header {
  position: relative;
  z-index: 40;
  padding-top: var(--site-header-section-padding-top);
  padding-bottom: var(--site-header-section-padding-bottom);
}

.site-header > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.site-header__inner {
  display: grid;
  grid-template-columns: var(--site-header-layout-columns);
  align-items: center;
  gap: var(--site-header-panel-gap);
  padding:
    var(--site-header-panel-padding-top)
    var(--site-header-panel-padding-right)
    var(--site-header-panel-padding-bottom)
    var(--site-header-panel-padding-left);
  background-color: var(--site-header-panel-bg);
  border-radius: var(--site-header-panel-radius);
}

.site-header__logo {
  display: inline-flex;
  align-items: center;
  width: min(100%, var(--site-header-logo-width));
  margin-top: var(--site-header-logo-margin-top);
  margin-right: var(--site-header-logo-margin-right);
}

.site-header__logo-image {
  display: block;
  width: 100%;
  height: auto;
}

.site-header__nav {
  min-width: 0;
}

.site-header__nav-list {
  display: flex;
  flex-direction: column;
  gap: var(--site-header-nav-gap);
  min-width: 0;
}

.site-header__nav-item {
  display: flex;
}

.site-header__nav-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  white-space: nowrap;
  font-size: var(--site-header-nav-font-size);
  font-weight: 400;
  line-height: var(--site-header-nav-line-height);
  color: var(--site-header-nav-color);
  transition: color var(--duration-base) var(--easing-base);
}

.site-header__nav-link:hover,
.site-header__nav-link:focus-visible {
  color: var(--site-header-nav-hover-color);
}

.site-header__nav-link--services {
  gap: 0;
}

.site-header__nav-link--services .site-header__nav-label {
  margin-left: var(--space-3);
}

.site-header__nav-link--services .site-header__nav-arrow {
  margin-left: var(--site-header-services-arrow-gap);
}

.site-header__nav-grid,
.site-header__nav-arrow,
.site-header__phone-icon {
  display: inline-block;
  flex: 0 0 auto;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.site-header__nav-grid {
  width: var(--site-header-nav-icon-size);
  height: var(--site-header-nav-icon-size);
  background-image: url("../images/header/nav-grid.png");
}

.site-header__nav-arrow {
  width: var(--site-header-nav-arrow-width);
  height: var(--site-header-nav-arrow-height);
  background-image: url("../images/header/nav-arrow.png");
}

.site-header__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--site-header-actions-gap);
  min-width: 0;
}

.site-header__phone {
  display: inline-flex;
  align-items: center;
  gap: var(--site-header-phone-gap);
  font-size: var(--site-header-phone-font-size);
  font-weight: var(--site-header-phone-font-weight);
  line-height: 1;
  white-space: nowrap;
}

.site-header__phone-icon {
  width: var(--site-header-phone-icon-size);
  height: var(--site-header-phone-icon-size);
  border-radius: 50%;
  background-image: url("../images/header/phone-icon.png");
}

.site-header__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--site-header-cta-min-height);
  padding-inline: var(--site-header-cta-padding-x);
  border-radius: var(--site-header-cta-radius);
  background-color: var(--site-header-cta-bg);
  color: var(--site-header-cta-color);
  font-size: var(--site-header-cta-font-size);
  font-weight: var(--site-header-cta-font-weight);
  line-height: 1;
  text-align: center;
  transition:
    background-color var(--duration-base) var(--easing-base),
    transform var(--duration-base) var(--easing-base);
}

.site-header__cta:hover,
.site-header__cta:focus-visible {
  background-color: #17181a;
}

.site-header__cta:active {
  transform: translateY(1px);
}

.site-header__burger {
  display: none;
  /*position: relative;*/
}

.site-header__burger-button {
  position: relative;
  z-index: 9;
  display: inline-flex;
  width: 2.875rem;
  height: 2.875rem;
  align-items: center;
  justify-content: center;
  border: 1px solid #8e8e8e;
  border-radius: 50%;
  background-color: var(--color-surface);
  cursor: pointer;
  list-style: none;
}

.site-header__burger-button::-webkit-details-marker {
  display: none;
}

.site-header__burger-button::before,
.site-header__burger-button::after {
  position: absolute;
  width: 1.125rem;
  height: 2px;
  background-color: var(--color-text);
  transition:
    transform var(--duration-base) var(--easing-base),
    box-shadow var(--duration-base) var(--easing-base),
    opacity var(--duration-base) var(--easing-base);
  content: "";
}

.site-header__burger-button::before {
  transform: translateY(0);
  box-shadow:
    0 -4px 0 var(--color-text),
    0 4px 0 var(--color-text);
}

.site-header__burger-button::after {
  opacity: 0;
  transform: rotate(0deg);
}

.site-header__burger[open] .site-header__burger-button::before {
  transform: rotate(45deg);
  box-shadow: none;
}

.site-header__burger[open] .site-header__burger-button::after {
  opacity: 1;
  transform: rotate(-45deg);
}

.site-header__burger[open] .site-header__burger-menu-box {
  animation: site-header-burger-menu-in var(--duration-fast) var(--easing-base);
}
.site-header__burger[open]::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  top: 0;
  background-color: rgba(0,0,0,0.3);
}
@keyframes site-header-burger-menu-in {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.site-header__burger-menu-box {
  position: absolute;
  top:0;
  right: 0;
  z-index: 5;
  width: 90%;
  height: 100%;
  padding: 60px 0.5rem 20px;
  background-color: var(--color-surface);
  box-shadow: var(--shadow-1);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap:20px;
  overflow: auto;
  /*border: 1px solid #c9c9c9;
  border-radius: 0.75rem;*/
}
.site-header__burger-menu {
  /*top: calc(100% + 0.5rem);*/
  display: grid;
  gap: 0.25rem;
  /*min-width: 13rem;*/
  width: 100%;
  padding: 0;
}
.site-header__burger-menu-info {
  padding: 0 0.625rem;
}
.site-header__burger-menu-phone {
  display: flex;
  align-items: center;
  gap:16px;
  font-size: 1.2rem;
}
.site-header__burger-link {
  display: flex;
  padding: 0.5rem 0.625rem;
  border-radius: 0.5rem;
  font-size: 0.9rem;
  line-height: 1.25;
  align-items: center;
  gap:16px;
}

.site-header__burger-link:hover,
.site-header__burger-link:focus-visible {
  background-color: #f2f2f2;
}

.site-header__burger-item--services {
  display: none;
}

.site-header__burger-menu ul {
  display: none;
  font-size: 0.9rem;
}
.site-header__burger-item-active ul {
  display: block;
  margin: 0 0 0 47px;
}
.site-header__burger-item-active ul li {
  margin: 6px 0;
}
.site-header__burger-item-active .icon-next {
  transform: rotate(90deg);
}
.services-mega-menu {
  position: fixed;
  inset: 0;
  z-index: 30;
}

.services-mega-menu[hidden] {
  display: none;
}

.services-mega-menu__backdrop {
  position: absolute;
  inset: 0;
  background-color: rgba(11, 13, 18, 0.88);
}

.services-mega-menu__panel {
  position: relative;
  z-index: 1;
  padding-top: var(--services-mega-menu-offset, 117px);
}

.services-mega-menu__panel-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 8.25rem;
  gap: 0.625rem;
}

.services-mega-menu__ghost {
  display: none;
  min-height: 19.875rem;
  border-radius: 0.625rem;
  background-color: transparent;
}

.services-mega-menu__tiles {
  display: grid;
  grid-template-columns: 1.25fr repeat(2, minmax(0, 0.83fr)) 1.25fr;
  gap: 0.625rem;
}

.services-tile {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 9.625rem;
  padding: 1rem;
  border-radius: 0.625rem;
  background-color: #d4d4d4;
  color: #1a1a1a;
  overflow: hidden;
}

.services-tile::before {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15, 16, 20, 0.04) 0%, rgba(15, 16, 20, 0.24) 100%);
  content: "";
}

.services-tile__label {
  position: relative;
  z-index: 1;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.services-tile--wide {
  min-height: 19.875rem;
}

.services-tile--create {
  grid-column: 1;
  grid-row: 1 / span 2;
  background:
    linear-gradient(180deg, rgba(10, 12, 16, 0.08) 0%, rgba(10, 12, 16, 0.58) 100%),
    url("../images/menu/create-sites.png") center / cover no-repeat;
  color: #ffffff;
}

.services-tile--branding {
  grid-column: 4;
  grid-row: 1 / span 2;
  background:
    linear-gradient(180deg, rgba(10, 12, 16, 0.08) 0%, rgba(10, 12, 16, 0.6) 100%),
    url("../images/menu/branding-design.png") center / cover no-repeat;
  color: #ffffff;
}

.services-tile--small {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 9.625rem;
  background: #d6d6d6;
}

.services-tile__icon {
  position: relative;
  z-index: 1;
  width: 2.25rem;
  height: 2.25rem;
  margin-bottom: 0.625rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.services-tile--small .services-tile__label {
  text-align: center;
}

.services-tile__icon--support {
  background-image: url("../images/menu/support.png");
}

.services-tile__icon--yandex {
  background-image: url("../images/menu/yandex-direct.png");
}

.services-tile__icon--promotion {
  background-image: url("../images/menu/promotion.png");
}

.services-tile--studio {
  background: #585858;
  color: #ffffff;
}

.services-tile__icon--studio {
  background-image: url("../images/menu/studio.png");
  background-size: contain;
  width: 6.75rem;
  height: 2.7rem;
  margin-bottom: 10px;
}

.services-mega-menu__contacts {
  display: grid;
  place-content: center;
  gap: 1rem;
  min-height: 19.875rem;
  border-radius: 0.625rem;
  background: #676767;
  color: #ffffff;
  text-align: center;
}

.services-mega-menu__contacts-icon {
  width: 1.5rem;
  height: 1.5rem;
  margin-inline: auto;
  background: url("../images/footer/icon-address.png") center / contain no-repeat;
  filter: brightness(5);
}

.services-mega-menu__contacts-text {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.logo,
.main-nav__list,
.site-header__contacts,
.button,
.section-heading,
.founder-card,
.contact-form,
.form-field,
.checkbox-field {
  display: flex;
  gap: var(--space-3);
}

.logo,
.site-header__contacts,
.button,
.checkbox-field {
  align-items: center;
}

.section-heading,
.contact-form,
.form-field {
  flex-direction: column;
}

.button {
  justify-content: center;
  padding: var(--space-3) var(--space-5);
  border: 1px solid transparent;
  border-radius: var(--radius-round);
  background-color: transparent;
}

.button--full {
  width: 100%;
}

.feature-card,
.founder-card,
.portfolio-card,
.process-card,
.price-card,
.support-card,
.review-card {
  min-height: 100%;
}

.form-field__control {
  width: 100%;
}

.hero-features {
  padding-top: var(--hero-features-section-padding-top);
  padding-bottom: calc(var(--hero-features-section-padding-bottom) * 1.5);
}

.hero-features > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.hero-features .feature-list {
  grid-template-columns: 1fr;
  gap: var(--hero-features-gap);
  grid-auto-rows: 1fr;
}

.hero-features .feature-list__item {
  display: flex;
  min-width: 0;
}

.hero-features .feature-card {
  position: relative;
  display: grid;
  align-content: start;
  width: 100%;
  height: 100%;
  gap: var(--hero-features-card-content-gap);
  min-height: var(--hero-features-card-min-height);
  padding:
    var(--hero-features-card-padding-top)
    var(--hero-features-card-padding-right)
    var(--hero-features-card-padding-bottom)
    var(--hero-features-card-padding-left);
  border-radius: var(--hero-features-card-radius);
  background-color: var(--color-surface-alt);
}

.hero-features .feature-card::before {
  position: absolute;
  top: 0;
  left: var(--hero-features-accent-left);
  width: var(--hero-features-accent-width);
  height: var(--hero-features-accent-height);
  background-color: var(--color-surface-dark);
  content: "";
}

.hero-features .feature-card__title,
.hero-features .feature-card__text {
  margin: 0;
}

.hero-features .feature-card__title {
  max-width: var(--hero-features-title-max-width);
  font-size: 1.15rem;
  font-weight: 600;
  line-height: var(--hero-features-title-line-height);
  letter-spacing: var(--hero-features-title-letter-spacing);
  text-transform: uppercase;
}

.hero-features .feature-card__text {
  margin-top: 1.25rem;
  max-width: var(--hero-features-text-max-width);
  font-size: var(--hero-features-text-size);
  font-weight: 400;
  line-height: var(--hero-features-text-line-height);
  color: var(--hero-features-text-color);
}

.about {
  padding-top: var(--about-section-padding-top);
  padding-bottom: var(--about-section-padding-bottom);
  background-color: var(--about-bg);
  color: var(--about-text-color);
}

.about > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.about__inner {
  grid-template-columns: var(--about-inner-columns);
  row-gap: var(--about-row-gap);
  column-gap: var(--about-column-gap);
}

.about .section-heading {
  gap: 0;
}

.about .section-heading__eyebrow {
  display: none;
}

.about .section-heading__title {
  max-width: var(--about-heading-max-width);
  margin: 0;
  color: var(--about-text-color);
  font-size: var(--about-heading-size);
  font-weight: 600;
  line-height: var(--about-heading-line-height);
  letter-spacing: var(--about-heading-letter-spacing);
  text-transform: uppercase;
}

.about__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--about-badge-width);
  min-height: var(--about-badge-min-height);
  padding-inline: var(--about-badge-padding-x);
  border-radius: var(--about-badge-radius);
  background-color: var(--color-accent);
  color: var(--color-text-inverse);
  font-size: var(--about-badge-size);
  font-weight: 400;
  line-height: var(--about-badge-line-height);
  text-align: center;
}

.about .founder-card {
  display: grid;
  grid-template-columns: var(--about-founder-columns);
  align-items: center;
  gap: var(--about-founder-gap);
  padding: var(--about-founder-padding);
  border: 1px solid var(--about-border-color);
  border-radius: var(--about-founder-radius);
  background-color: transparent;
}

.about .founder-card__media {
  width: min(100%, var(--about-founder-media-width));
  min-height: var(--about-founder-media-height);
  border-radius: 1.5rem;
  background: url("../images/about/founder.png") center / cover no-repeat;
}

.about .founder-card__body {
  display: grid;
  gap: var(--space-4);
}

.about .founder-card__title,
.about .founder-card__text,
.about .founder-card__link,
.about .advantage-item__title,
.about .advantage-item__text {
  margin: 0;
}

.about .founder-card__title {
  color: var(--about-text-color);
  font-size: var(--about-founder-title-size);
  font-weight: 400;
  line-height: 1.75rem;
  text-transform: uppercase;
}

.about .founder-card__text {
  color: var(--about-muted-color);
  font-size: var(--about-founder-text-size);
  font-weight: 400;
  line-height: var(--about-founder-text-line-height);
}

.about .founder-card__link {
  color: var(--about-text-color);
  font-size: var(--about-founder-link-size);
  font-weight: 400;
  line-height: 1.2;
}

.about__advantages {
  grid-template-columns: var(--about-advantages-columns);
  gap: var(--about-advantages-gap);
}

.about .advantage-item {
  display: grid;
  align-content: start;
  gap: var(--about-advantage-gap);
  min-height: 100%;
}

.about .advantage-item__title {
  color: var(--about-text-color);
  font-size: var(--about-advantage-title-size);
  font-weight: 400;
  line-height: 1.5rem;
  text-transform: uppercase;
}

.about .advantage-item__text {
  color: var(--about-muted-color);
  font-size: var(--about-advantage-text-size);
  font-weight: 400;
  line-height: var(--about-advantage-text-line-height);
}

.portfolio {
  padding-top: var(--portfolio-section-padding-top);
  padding-bottom: var(--portfolio-section-padding-bottom);
}

.portfolio > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.portfolio .section-heading {
  margin-bottom: calc(var(--portfolio-grid-gap) * 1.2);
  gap: 0;
}

.portfolio .section-heading__title {
  margin: 0;
  font-size: var(--about-heading-size);
  font-weight: 600;
  line-height: var(--about-heading-line-height);
  letter-spacing: var(--portfolio-heading-letter-spacing);
  text-transform: uppercase;
}

.portfolio-grid {
  grid-template-columns: 1fr;
  gap: var(--portfolio-grid-gap);
}

.portfolio-grid__aside,
.portfolio-grid__row,
.portfolio-grid2 {
  display: grid;
  gap: var(--portfolio-aside-gap);
}

.portfolio-grid__row--top,
.portfolio-grid__row--bottom {
  grid-template-columns: 1fr;
}

.portfolio-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--portfolio-card-radius);
  isolation: isolate;
  min-height: var(--portfolio-card-height);
  background-size: cover;
}

.portfolio-card--large {
  min-height: var(--portfolio-featured-min-height);
}

.portfolio-card--middle {
  min-height: var(--portfolio-card-md-height);
}

.portfolio-card--pro {
  min-height: var(--portfolio-card-sm-height);
  background-image: url("../images/portfolio/pro-chistota.png");
}

.portfolio-card--easylife {
  min-height: var(--portfolio-card-sm-height);
  background-image: url("../images/portfolio/easylife.png");
}

.portfolio-card--florissimo {
  display: grid;
  align-content: end;
  min-height: var(--portfolio-card-md-height);
  padding: var(--portfolio-florissimo-padding);
  background-image:
    linear-gradient(180deg, rgba(7, 9, 12, 0.18) 0%, rgba(7, 9, 12, 0.74) 100%),
    url("../images/portfolio/florissimo.png");
}

.portfolio-card--florissimo::before,
.portfolio-card--small::before {
  background: none;
}

.portfolio-card--small {
  min-height: var(--portfolio-card-sm-height);
}
.portfolio-card__title--sr {
  position: absolute;
  padding: 20px;
  z-index: 5;
  bottom: 0;
  left: 0;
  color: #fff;
  opacity: 0;
  transition: opacity .3s ease-in-out;
  font-size: 15px;
}
.portfolio-card__text--sr {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.portfolio-card-img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: all .3s ease-in-out;
  z-index: 2;
}
.portfolio-card:hover .portfolio-card-img {
  transform: scale(1.1);
}
.portfolio-card:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: linear-gradient(180deg, rgba(7, 9, 12, 0.18) 0%, rgba(7, 9, 12, 0.74) 100%);
  z-index: 3;
  display: block;
  opacity: 0;
  transition: opacity .3s ease-in-out;
}
.portfolio-card:hover:after {
  opacity: 1;
}
.portfolio-card:hover .portfolio-card__title--sr {
  opacity: 1;
}

.portfolio-card__content,
.portfolio-card__link {
  position: relative;
  z-index: 2;
}

.portfolio-card__overlay-link {
  position: absolute;
  inset: 0;
  z-index: 5;
}

.portfolio-card__content {
  display: grid;
  gap: 0.125rem;
  color: var(--color-text-inverse);
}

.portfolio-card--florissimo .portfolio-card__title,
.portfolio-card--florissimo .portfolio-card__text,
.portfolio-card__link {
  margin: 0;
}

.portfolio-card--florissimo .portfolio-card__title {
  font-size: calc(var(--portfolio-florissimo-title-size) / 1.5);
  font-weight: 500;
  line-height: var(--portfolio-florissimo-title-line-height);
  text-transform: none;
}

.portfolio-card--florissimo .portfolio-card__text {
  font-size: var(--portfolio-florissimo-text-size);
  font-weight: 400;
  line-height: var(--portfolio-florissimo-text-line-height);
}

.portfolio-card__link {
  display: inline-flex;
  align-items: center;
  gap: var(--portfolio-link-gap);
  margin-top: 1rem;
  padding-top: 0.875rem;
  border-top: 0.0625rem solid rgba(255, 255, 255, 0.62);
  color: var(--color-text-inverse);
  font-size: var(--portfolio-link-size);
  font-weight: 400;
  line-height: 1;
}

.portfolio-card__link-icon {
  width: 1.625rem;
  height: 1.625rem;
  background: url("../images/portfolio/link-arrow.png") center / contain no-repeat;
  flex: 0 0 auto;
}

.portfolio__button {
  min-height: 3.5rem;
  margin-top: var(--portfolio-button-margin-top);
  border-radius: var(--portfolio-button-radius);
  background-color: #232427;
  color: #ffffff;
  font-size: var(--portfolio-button-size);
  font-weight: 500;
  line-height: 1;
}

.portfolio__button:hover,
.portfolio__button:focus-visible {
  background-color: #17181a;
}
.portfolio-full {
  display: flex;
  justify-content: space-between;
  gap:2rem;
  margin: 2rem 0;
}
.portfolio-full-info p {
  line-height: 1.45;
}

.portfolio-full-info p + p {
  margin-top: 1rem;
}
.portfolio-full-info {
  width: 40%;
  flex-shrink: 0;
}
.portfolio-full__des {
  margin: 2rem 0;
}
.gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap:2rem;
}
.gallery-item img {
  transition: all 0.3s;
}
.gallery-item {
  overflow: hidden;
}
.gallery-item:hover img {
  transform: scale(1.1);
}
.pricing {
  padding-top: var(--pricing-section-padding-top);
  padding-bottom: var(--pricing-section-padding-bottom);
}

.pricing > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.pricing__head {
  display: grid;
  align-items: center;
  gap: var(--pricing-head-gap);
  margin-bottom: var(--pricing-head-margin-bottom);
}

.pricing .section-heading {
  gap: 0;
}

.pricing .section-heading__title {
  max-width: var(--pricing-heading-max-width);
  margin: 0;
  font-size: var(--about-heading-size);
  font-weight: 600;
  line-height: var(--about-heading-line-height);
  letter-spacing: -0.04em;
  text-transform: uppercase;
}

.pricing__note {
  max-width: var(--pricing-note-max-width);
  margin: 0;
  padding:
    var(--pricing-note-padding-top)
    var(--pricing-note-padding-right)
    var(--pricing-note-padding-bottom)
    var(--pricing-note-padding-left);
  border-radius: var(--pricing-note-radius);
  background-color: var(--pricing-note-bg);
  font-size: var(--pricing-note-size);
  font-weight: 400;
  line-height: var(--pricing-note-line-height);
  color: #464646;
}

.pricing-grid {
  gap: var(--pricing-grid-gap);
}

.pricing .price-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: var(--pricing-card-min-height);
  padding:
    3.125rem
    var(--pricing-card-padding-right)
    3.125rem
    var(--pricing-card-padding-left);
  border-radius: var(--pricing-card-radius);
  background-color: var(--pricing-card-bg);
  color: var(--color-text-inverse);
  text-align: center;
}

.pricing .price-card__title,
.pricing .price-card__price,
.pricing .price-card__text,
.pricing .price-card__meta,
.pricing .price-card__link {
  margin: 0;
}

.pricing .price-card__title {
  font-size: var(--pricing-card-title-size);
  font-weight: 600;
  line-height: 1.75rem;
  text-transform: uppercase;
}

.pricing .price-card__price {
  margin-top: var(--pricing-price-margin-top);
  padding: var(--pricing-price-padding-y) var(--pricing-price-padding-x);
  border-radius: var(--pricing-price-radius);
  background-color: var(--pricing-price-bg);
  color: var(--pricing-price-color);
  font-size: var(--pricing-price-size);
  font-weight: 600;
  line-height: var(--pricing-price-line-height);
}

.pricing .price-card__text {
  flex: 1 1 auto;
  max-width: 90%;
  margin-top: var(--pricing-text-margin-top);
  font-size: var(--pricing-text-size);
  font-weight: 400;
  line-height: var(--pricing-text-line-height);
  color: rgba(255, 255, 255, 0.9);
}

.pricing .price-card__meta {
  margin-top: 2.125rem;
  font-size: var(--pricing-meta-size);
  font-weight: 600;
  line-height: var(--pricing-meta-line-height);
}

.pricing .price-card__link {
  margin-top: var(--pricing-link-margin-top);
  color: rgba(255, 255, 255, 0.72);
  font-size: var(--pricing-link-size);
  font-weight: 400;
  line-height: var(--pricing-link-line-height);
  text-decoration: underline;
  text-decoration-thickness: 0.0625rem;
  text-underline-offset: 0.1875rem;
}

.pricing .price-card__link:hover,
.pricing .price-card__link:focus-visible {
  color: var(--color-text-inverse);
}

.pricing .price-card__button {
  min-height: var(--pricing-button-min-height);
  margin-top: var(--pricing-button-margin-top);
  border: 0.0625rem solid var(--pricing-button-border);
  border-radius: var(--pricing-button-radius);
  background-color: transparent;
  color: var(--color-text-inverse);
  font-size: var(--pricing-button-size);
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
}

.pricing .price-card__button:hover,
.pricing .price-card__button:focus-visible {
  background-color: rgba(255, 255, 255, 0.05);
}

.support-plans {
  padding-top: var(--support-section-padding-top);
  padding-bottom: var(--support-section-padding-bottom);
  background-color: var(--support-bg);
}

.support-plans > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.support-plans .section-heading {
  margin-bottom: var(--support-heading-margin-bottom);
  gap: 0;
}

.support-plans .section-heading__title {
  max-width: 100%;
  margin: 0;
  color: var(--color-text-inverse);
  font-size: var(--about-heading-size);
  font-weight: 600;
  line-height: var(--about-heading-line-height);
  letter-spacing: -0.04em;
  text-transform: uppercase;
}
.section-heading__des {
  font-size: 18px;
  color: #fff;
  margin: 1rem 0;
}
.support-grid {
  gap: var(--support-grid-gap);
}

.support-card {
  display: flex;
  flex-direction: column;
  /*min-height: var(--support-card-min-height);*/
  overflow: hidden;
  border-radius: var(--support-card-radius);
  background-color: var(--support-card-bg);
  color: var(--color-text);
}

.support-card__head {
  display: grid;
  align-content: start;
  min-height: var(--support-card-head-min-height);
  padding:
    var(--support-card-head-padding-top)
    var(--support-card-head-padding-x)
    var(--support-card-head-padding-bottom);
  background-color: var(--support-card-head-bg);
  text-align: center;
}

.support-card__eyebrow,
.support-card__title,
.support-card__text,
.support-card__price,
.support-card__link,
.support-card__meta-item {
  margin: 0;
}

.support-card__eyebrow {
  font-size: var(--support-card-eyebrow-size);
  font-weight: 400;
  line-height: var(--support-card-eyebrow-line-height);
  text-transform: lowercase;
}

.support-card__title {
  margin-top: 0.3125rem;
  font-size: calc(var(--support-card-title-size) * 1.5);
  font-weight: 600;
  line-height: var(--support-card-title-line-height);
  text-transform: uppercase;
}

.support-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding:
    var(--support-card-body-padding-top)
    var(--support-card-body-padding-right)
    var(--support-card-body-padding-bottom)
    var(--support-card-body-padding-left);
}

.support-card__text {
  /* min-height: var(--support-card-text-min-height);
  font-size: var(--support-card-text-size);*/
  font-weight: 400;
  /*line-height: var(--support-card-text-line-height);*/
  margin: 1rem 0;
  color: #4a4a4a;
  text-align: center;
}

.support-card__scale {
  margin-top: var(--support-scale-margin-top);
}

.support-card__scale-track {
  position: relative;
  height: var(--support-scale-thumb-size);
}

.support-card__slider {
  position: absolute;
  inset: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.support-card__scale-track::before {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: var(--support-scale-track-height);
  background-color: var(--support-scale-track-color);
  transform: translateY(-50%);
  content: "";
}

.support-card__scale-progress {
  position: absolute;
  top: 50%;
  left: 0;
  height: var(--support-scale-track-height);
  background-color: var(--support-scale-progress-color);
  transform: translateY(-50%);
}

.support-card__scale-thumb {
  position: absolute;
  top: 50%;
  width: var(--support-scale-thumb-size);
  height: var(--support-scale-thumb-size);
  border: 0.0625rem solid #d3d3d3;
  border-radius: 50%;
  background-color: #f6f6f6;
  transform: translate(-50%, -50%);
}

.support-card__scale-values {
  display: flex;
  justify-content: space-between;
  margin-top: 0.4375rem;
}

.support-card__scale-value {
  font-size: var(--support-scale-value-size);
  font-weight: 400;
  line-height: var(--support-scale-value-line-height);
  color: #6f6f6f;
}

.support-card__scale-value--active {
  color: #000;
}

.support-card__price {
  margin-top: var(--support-price-margin-top);
  color: #000;
  font-size: calc(var(--support-price-size) * 1.5);
  font-weight: 600;
  line-height: var(--support-price-line-height);
  text-align: center;
}

.support-card__meta-list {
  display: grid;
  gap: var(--support-meta-gap);
  margin: var(--support-meta-margin-top) 0 0;
  padding: 0;
  list-style: none;
}

.support-card__meta-item {
  position: relative;
  padding-left: 2.0625rem;
  font-size: var(--support-meta-size);
  font-weight: 400;
  line-height: var(--support-meta-line-height);
  color: #636363;
}

.support-card__meta-item strong {
  font-weight: 600;
  color: #333333;
}

.support-card__meta-item::before,
.support-card__meta-item::after {
  position: absolute;
  content: "";
}

.support-card__meta-item::before {
  top: 0.0625rem;
  left: 0;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background-color: #d8d8db;
}

.support-card__meta-item::after {
  top: 0.0625rem;
  left: 0;
  width: 1.25rem;
  height: 1.25rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.support-card__meta-item--rate::before {
}

.support-card__meta-item--rate::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='6.7' cy='5.9' r='2.1' fill='%23ffffff'/%3E%3Cpath d='M3.8 11.7c.7-1.9 2.5-3 4.7-3 1.4 0 2.6.4 3.5 1.1' fill='none' stroke='%23ffffff' stroke-width='1.4' stroke-linecap='round'/%3E%3Ccircle cx='14.2' cy='12.9' r='3.2' fill='none' stroke='%23ffffff' stroke-width='1.4'/%3E%3Cpath d='M14.2 11.3v1.9l1.3.8' fill='none' stroke='%23ffffff' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.support-card__meta-item--hours::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 10.1l2.5 2.6L14 7.3' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.support-card__link {
  margin-top: calc(var(--support-link-margin-top) * 1.3);
  color: #737373;
  font-size: var(--support-link-size);
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  text-decoration: underline;
  text-decoration-thickness: 0.0625rem;
  text-underline-offset: 0.1875rem;
}

.support-card__button {
  min-height: var(--support-button-min-height);
  margin-top: calc(var(--support-button-margin-top) * 1.2);
  border: 0.0625rem solid var(--support-button-border);
  border-radius: var(--support-button-radius);
  background-color: transparent;
  color: #404040;
  font-size: var(--support-button-size);
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.support-card__button:hover,
.support-card__button:focus-visible {
  background-color: rgba(0, 0, 0, 0.03);
}

.support-card:has(.support-card__button:hover) .support-card__head,
.support-card:has(.support-card__button:focus-visible) .support-card__head {
  background-color: var(--support-card-head-accent-bg);
  color: var(--color-text-inverse);
}

.support-card:has(.support-card__button:hover) .support-card__price,
.support-card:has(.support-card__button:focus-visible) .support-card__price {
  color: var(--color-accent);
}

.support-card:has(.support-card__button:hover) .support-card__scale-progress,
.support-card:has(.support-card__button:focus-visible) .support-card__scale-progress {
  background-color: var(--color-accent);
}

.support-card:has(.support-card__button:hover) .support-card__meta-item::before,
.support-card:has(.support-card__button:focus-visible) .support-card__meta-item::before {
  background-color: var(--color-accent);
}

.support-card:has(.support-card__button:hover) .support-card__button,
.support-card:has(.support-card__button:focus-visible) .support-card__button {
  border-color: rgba(213, 19, 42, 0.45);
  color: var(--color-accent);
}

.process {
  padding-top: var(--process-section-padding-top);
  padding-bottom: var(--process-section-padding-bottom);
  background-color: var(--process-bg);
  color: var(--color-text-inverse);
}

.process > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.process .section-heading {
  margin-bottom: 2.125rem;
  gap: 0;
}

.process .section-heading__title {
  max-width: var(--process-heading-max-width);
  margin: 0;
  color: var(--color-text-inverse);
  font-size: var(--about-heading-size);
  font-weight: 600;
  line-height: var(--about-heading-line-height);
  letter-spacing: var(--process-heading-letter-spacing);
  text-transform: uppercase;
}

.process .process-grid {
  grid-template-columns: var(--process-grid-columns);
  gap: var(--process-grid-gap);
}

.process-card {
  position: relative;
  min-height: var(--process-card-min-height);
  padding:
    var(--process-card-padding-top)
    var(--process-card-padding-right)
    var(--process-card-padding-bottom)
    var(--process-card-padding-left);
  border-radius: var(--process-card-radius);
  background-color: var(--process-card-bg);
  color: var(--color-text-inverse);
}

.process-card__badge {
  position: absolute;
  top: var(--process-badge-top);
  right: var(--process-badge-right);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--process-badge-size);
  height: var(--process-badge-size);
  border-radius: 50%;
  background-color: var(--process-badge-bg);
  box-shadow: var(--process-badge-shadow);
  color: var(--process-badge-color);
  font-size: var(--process-badge-font-size);
  font-weight: 600;
  line-height: var(--process-badge-line-height);
}

.process-card__title,
.process-card__list,
.process-card__item {
  margin: 0;
}

.process-card__title {
  max-width: var(--process-card-title-max-width);
  margin-bottom: var(--process-card-title-offset-bottom);
  color: var(--color-text-inverse);
  font-size: var(--process-card-title-size);
  font-weight: 400;
  line-height: var(--process-card-title-line-height);
  letter-spacing: var(--process-card-title-letter-spacing);
  text-transform: uppercase;
}

.process-card__list {
  display: grid;
  gap: var(--process-card-list-gap);
  padding: 0 0 0 0.75rem;
  list-style: none;
}

.process-card__item {
  position: relative;
  padding-left: 0.75rem;
  color: rgba(255, 255, 255, 0.92);
  font-size: var(--process-card-text-size);
  font-weight: 400;
  line-height: var(--process-card-text-line-height);
}

.process-card__item::before {
  position: absolute;
  top: var(--process-card-bullet-offset-top);
  left: 0;
  width: var(--process-card-bullet-size);
  height: var(--process-card-bullet-size);
  border-radius: 50%;
  background-color: currentColor;
  content: "";
}

.clients {
  padding-top: var(--clients-section-padding-top);
  padding-bottom: var(--clients-section-padding-bottom);
  background-color: #fefefe;
}

.clients > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.clients .section-heading {
  margin-bottom: var(--clients-heading-margin-bottom);
  gap: 0;
}

.clients .section-heading__title {
  max-width: var(--clients-heading-max-width);
  margin: 0;
  font-size: var(--about-heading-size);
  font-weight: 600;
  line-height: var(--about-heading-line-height);
  letter-spacing: -0.04em;
  text-transform: uppercase;
}

.clients__logos {
  max-width: var(--clients-logos-max-width);
  margin: 0;
}

.clients__logos-image {
  display: block;
  width: 100%;
  height: auto;
}

.reviews {
  padding-top: 0;
  padding-bottom: 6.25rem;
  background-color: #fefefe;
}

.reviews > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.reviews .reviews-grid {
  grid-template-columns: 1fr;
  gap: var(--reviews-grid-gap);
}

.review-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--reviews-card-gap);
  min-height: var(--reviews-card-min-height);
  padding:
    var(--reviews-card-padding-top)
    var(--reviews-card-padding-right)
    var(--reviews-card-padding-bottom)
    var(--reviews-card-padding-left);
  border-radius: var(--reviews-card-radius);
  background-color: var(--reviews-card-bg);
}

.review-card::before {
  position: absolute;
  top: var(--reviews-quote-top);
  right: var(--reviews-quote-right);
  color: #d0d0d0;
  font-size: var(--reviews-quote-size);
  font-weight: 600;
  line-height: 1;
  content: "“";
}

.review-card--featured {
  min-height: var(--reviews-card-featured-min-height);
}

.review-card__title,
.review-card__text,
.review-card__link {
  margin: 0;
}

.review-card__title {
  max-width: calc(100% - 4rem);
  font-size: 1.2375rem;
  font-weight: 600;
  line-height: var(--reviews-title-line-height);
}

.review-card__text {
  font-size: var(--reviews-text-size);
  font-weight: 400;
  line-height: var(--reviews-text-line-height);
  color: #5a5a5a;
}

.review-card__link {
  margin-top: auto;
  color: #4e4e4e;
  font-size: var(--reviews-link-size);
  font-weight: 600;
  line-height: var(--reviews-link-line-height);
  text-decoration: underline;
  text-decoration-thickness: 0.0625rem;
  text-underline-offset: 0.1875rem;
}

.review-card__link:hover,
.review-card__link:focus-visible {
  color: #242424;
}

.reviews .review-card--cta {
  justify-content: space-between;
  overflow: hidden;
  color: #2f2522;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0) 54%),
    #f3dedb;
}

.reviews .review-card--cta::before {
  display: none;
}

.reviews .review-card--cta .review-card__title {
  max-width: 100%;
}

.reviews .review-card__eyebrow {
  margin: 0;
  color: #8d5d56;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
}

.reviews .review-card__button {
  align-self: flex-start;
  margin-top: auto;
  color: #fff;
  text-decoration: none;
  background-color: #2f2522;
}

.reviews .review-card__button:hover,
.reviews .review-card__button:focus-visible {
  color: #fff;
  background-color: #4a3833;
}

.reviews .review-card__note {
  margin: 0;
  color: #6f514c;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.35;
}

.contact {
  padding-top: var(--contact-section-padding-top);
  padding-bottom: var(--contact-section-padding-bottom);
}

.contact > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.contact__inner {
  grid-template-columns: var(--contact-columns);
  column-gap: var(--contact-column-gap);
  row-gap: var(--contact-row-gap);
}

.contact__intro {
  display: grid;
  align-content: start;
  gap: var(--contact-intro-gap);
}

.contact__title,
.contact__text {
  margin: 0;
}

.contact__title {
  max-width: var(--contact-title-max-width);
  font-size: var(--about-heading-size);
  font-weight: 600;
  line-height: var(--about-heading-line-height);
  letter-spacing: -0.04em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.contact__text {
  max-width: var(--contact-text-max-width);
  font-size: var(--contact-text-size);
  font-weight: 400;
  line-height: var(--contact-text-line-height);
  color: #4f4f4f;
}

.contact-next {
  display: grid;
  gap: 1rem;
  max-width: var(--contact-text-max-width);
  margin-top: 0.75rem;
}

.contact-next__title {
  margin: 0;
  color: var(--color-text);
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  font-weight: 600;
  line-height: 1.15;
  text-transform: uppercase;
}

.contact-next__list {
  display: grid;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  counter-reset: contact-next;
  list-style: none;
}

.contact-next__item {
  position: relative;
  min-height: 2.75rem;
  padding: 0.1rem 0 0 3.5rem;
  color: #3c3c3c;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.45;
}

.contact-next__item::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 0.0625rem solid var(--color-accent);
  border-radius: 50%;
  background-color: #ffffff;
  color: var(--color-accent);
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1;
  content: counter(contact-next, decimal-leading-zero);
  counter-increment: contact-next;
}

.contact-next__note {
  margin: 0;
  padding: 1rem 1.125rem;
  border-left: 0.1875rem solid var(--color-accent);
  background-color: #f6f6f6;
  color: #4f4f4f;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.45;
}

.contact-form {
  width: 100%;
  gap: var(--contact-form-gap);
}

.contact .form-field {
  gap: 0.625rem;
}

.contact .form-field__label {
  padding-left: 1.5rem;
  font-size: var(--contact-label-size);
  font-weight: 600;
  line-height: var(--contact-label-line-height);
  color: #2b2b2b;
}

.contact .form-field__control {
  min-height: var(--contact-control-min-height);
  padding: var(--contact-control-padding-y) var(--contact-control-padding-x);
  border: 1px solid var(--contact-control-border-color);
  border-radius: var(--contact-control-radius);
  background-color: var(--contact-control-bg);
  font-size: var(--contact-control-size);
  font-weight: 400;
  line-height: 1.2;
  color: #2b2b2b;
  resize: none;
}

.contact textarea.form-field__control {
  min-height: var(--contact-control-textarea-min-height);
}

.contact .form-field__control:focus-visible {
  outline: 0.125rem solid rgba(213, 19, 42, 0.35);
  outline-offset: 0.125rem;
}
.captcha-box .form-field__control {
  min-height: auto;
  width: auto;
}
.contact .checkbox-field {
  margin-top: calc(0.75rem - var(--contact-form-gap));
  padding-left: 1.5rem;
  gap: var(--contact-checkbox-gap);
  align-items: flex-start;
}

.contact .checkbox-field__control {
  width: var(--contact-checkbox-size);
  height: var(--contact-checkbox-size);
  margin: 0.125rem 0 0;
  accent-color: var(--color-accent);
}

.contact .checkbox-field__label {
  font-size: var(--contact-checkbox-text-size);
  font-weight: 400;
  line-height: var(--contact-checkbox-text-line-height);
  color: #4f4f4f;
}

.checkbox-field__link {
  color: inherit;
  text-decoration: underline;
}

.contact-form__button {
  align-self: flex-start;
  margin-top: var(--contact-button-margin-top);
  min-height: var(--contact-button-min-height);
  min-width: var(--contact-button-min-width);
  padding-inline: var(--contact-button-padding-x);
  border-radius: var(--contact-button-radius);
  background-color: var(--color-accent);
  color: var(--color-text-inverse);
  font-size: var(--contact-button-size);
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.contact-form__button:hover,
.contact-form__button:focus-visible {
  background-color: var(--color-accent-hover);
}

.site-footer {
  padding-top: var(--site-footer-padding-top);
  padding-bottom: var(--site-footer-padding-bottom);
  background-color: var(--site-footer-bg);
}

.site-footer > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.site-footer__inner {
  grid-template-columns: var(--site-footer-columns);
  column-gap: var(--site-footer-column-gap);
  row-gap: var(--site-footer-row-gap);
  align-items: start;
}

.site-footer__brand {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto auto;
  justify-items: start;
  justify-self: start;
  align-self: stretch;
  gap: 0;
}

.site-footer__logo {
  display: flex;
  align-items: flex-start;
  height: 100%;
}

.site-footer__logo img {
  display: block;
  width: var(--site-footer-logo-width);
  height: auto;
}

.site-footer__brand-line {
  display: block;
  width: var(--site-footer-brand-line-width);
  height: var(--site-footer-brand-line-height);
  background-color: rgba(255, 255, 255, 0.82);
}

.site-footer__copyright {
  margin: 0;
  margin-top: 0.625rem;
  color: rgba(255, 255, 255, 0.95);
  font-size: var(--site-footer-copyright-size);
  font-weight: 400;
  line-height: var(--site-footer-copyright-line-height);
}

.footer-nav {
  min-width: 0;
  justify-self: start;
}

.footer-nav__columns {
  display: grid;
  grid-template-columns: var(--site-footer-nav-columns);
  column-gap: var(--site-footer-nav-column-gap);
  row-gap: var(--site-footer-row-gap);
}

.footer-nav__list {
  column-count: 2;
  column-gap: 70px;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer-nav__list li:not(:first-child) {
  margin: var(--site-footer-nav-gap) 0;
}
.footer-nav__link {
  color: rgba(255, 255, 255, 0.96);
  font-size: var(--site-footer-link-size);
  font-weight: 400;
  line-height: var(--site-footer-link-line-height);
  transition: color var(--duration-base) var(--easing-base);
}

.footer-nav__link:hover,
.footer-nav__link:focus-visible {
  color: #ffffff;
}

.site-footer__contacts {
  display: grid;
  justify-self: end;
  gap: var(--site-footer-contacts-gap);
  margin: 0;
  font-style: normal;
}

.site-footer__contact-row {
  display: grid;
  grid-template-columns: var(--site-footer-contact-icon-size) var(--site-footer-contact-divider-width) minmax(0, 1fr);
  align-items: center;
  column-gap: var(--site-footer-contact-gap);
  color: rgba(255, 255, 255, 0.96);
  text-decoration: none;
}

.site-footer__contact-icon {
  display: block;
  width: var(--site-footer-contact-icon-size);
  height: var(--site-footer-contact-icon-size);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.site-footer__contact-icon--address {
  background-image: url("../images/footer/icon-address.png");
}

.site-footer__contact-icon--phone {
  background-image: url("../images/footer/icon-phone.png");
}

.site-footer__contact-icon--mail {
  background-image: url("../images/footer/icon-mail.png");
}

.site-footer__contact-divider {
  display: block;
  width: var(--site-footer-contact-divider-width);
  height: var(--site-footer-contact-divider-height);
  background-color: rgba(255, 255, 255, 0.56);
}

.site-footer__contact-text {
  margin: 0;
  color: inherit;
  font-size: var(--site-footer-contact-text-size);
  font-weight: 400;
  line-height: var(--site-footer-contact-text-line-height);
}

.hero {
  padding-top: var(--hero-section-padding-top);
  padding-bottom: 0;
}

.hero > .container {
  width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
}

.hero__panel {
  display: grid;
  grid-template-columns: var(--hero-panel-columns);
  align-items: center;
  row-gap: var(--hero-panel-gap);
  column-gap: 0;
  padding:
    var(--hero-panel-padding-top)
    var(--hero-panel-padding-x)
    var(--hero-panel-padding-bottom);
  background-color: var(--color-surface-alt);
  border-radius: var(--hero-panel-radius);
  box-shadow: var(--shadow-hero);
}

.hero__content {
  display: grid;
  gap: var(--hero-content-gap);
  width: 100%;
  min-width: 0;
  padding-top: var(--hero-content-top-offset);
  padding-left: var(--hero-content-padding-left);
  padding-right: var(--hero-content-padding-right);
}

.hero__title {
  margin: 0;
  font-size: var(--hero-title-size);
  font-weight: 600;
  line-height: var(--hero-title-line-height);
  letter-spacing: var(--hero-title-letter-spacing);
  text-transform: uppercase;
}

.hero__title-line {
  display: block;
}

.hero__description {
  width: 100%;
  max-width: var(--hero-description-width);
  margin-top: var(--hero-description-offset-top);
  font-size: var(--hero-description-size);
  font-weight: 400;
  line-height: var(--hero-description-line-height);
  color: var(--hero-description-color);
}

.hero__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: start;
  justify-self: start;
  margin-top: var(--hero-button-offset-top);
  min-height: 3.5rem;
  padding: var(--hero-button-padding-y) var(--hero-button-padding-x);
  border-radius: var(--hero-button-radius);
  background-color: var(--color-accent);
  color: var(--color-accent-contrast);
  font-size: var(--hero-button-font-size);
  font-weight: var(--hero-button-font-weight);
  line-height: 1;
  transition: background-color var(--duration-base) var(--easing-base);
}

.hero__button:hover,
.hero__button:focus-visible {
  background-color: var(--color-accent-hover);
}

.hero__button:active {
  background-color: var(--color-accent-active);
}

.hero__aside {
  display: grid;
  gap: var(--hero-aside-gap);
  width: 100%;
  min-width: 0;
  max-width: var(--hero-aside-max-width);
  padding-top: var(--hero-aside-padding-top);
  padding-bottom: var(--hero-aside-padding-bottom);
}

.hero__aside-title {
  margin: 0;
  font-size: var(--hero-aside-title-size);
  font-weight: 600;
  line-height: var(--hero-aside-title-line-height);
  letter-spacing: var(--hero-title-letter-spacing);
  text-transform: uppercase;
}

.hero__cards {
  display: grid;
  grid-template-columns: var(--hero-cards-columns);
  gap: var(--hero-cards-gap);
  width: 100%;
  min-width: 0;
  grid-template-areas:
    "projects"
    "hours"
    "services";
}

.hero__card {
  position: relative;
  overflow: hidden;
  border-radius: var(--hero-card-radius);
  background-color: var(--color-surface-dark);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: var(--color-text-inverse);
  isolation: isolate;
}

.hero__card::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
}

.hero__card--projects {
  grid-area: projects;
  min-height: var(--hero-card-project-height);
  background-image: url("../images/hero/hero-projects.png");
}

.hero__card--projects::before {
  background: var(--hero-card-overlay-project);
}

.hero__card--hours {
  grid-area: hours;
  min-height: var(--hero-card-hours-height);
  background-image: url("../images/hero/hero-hours.png");
  background-position: right center;
}

.hero__card--hours::before {
  background: var(--hero-card-overlay-hours);
}

.hero__card--services {
  grid-area: services;
  min-height: var(--hero-card-services-height);
  background-image: url("../images/hero/hero-services.png");
}

.hero__card--services::before {
  background: var(--hero-card-overlay-services);
}

.hero__card-body,
.hero__metrics {
  position: relative;
  z-index: 1;
  height: 100%;
}

.hero__card-body {
  display: flex;
  gap: var(--hero-metric-gap);
  padding: var(--hero-card-padding);
}

.hero__card-body--bottom {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: var(--hero-card-padding-large);
}

.hero__card-body--inline {
  align-items: center;
  justify-content: flex-start;
  gap: var(--space-4);
  padding: var(--hero-card-padding);
}

.hero__metrics {
  display: grid;
  grid-template-columns: var(--hero-metric-columns);
  align-items: stretch;
}

.hero__metric {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: var(--hero-metric-gap);
  min-height: 100%;
  padding: var(--hero-metric-padding);
}

.hero__card--services .hero__metric:first-child {
  padding-right: calc(var(--hero-metric-padding) * 0.7);
}

.hero__card--services .hero__metric:last-child {
  padding-left: calc(var(--hero-metric-padding) * 0.7);
}

.hero__card-value,
.hero__card-text {
  margin: 0;
}

.hero__card-value {
  font-weight: 600;
  line-height: var(--hero-card-value-line-height);
  letter-spacing: var(--hero-title-letter-spacing);
}

.hero__card-value--project {
  font-size: var(--hero-card-value-xl);
}

.hero__card-value--hours {
  font-size: calc(var(--hero-card-value-lg) * 0.8);
}

.hero__card-value--service {
  font-size: var(--hero-card-value-lg);
}

.hero__card-text {
  width: min(100%, var(--hero-card-label-width));
  font-size: var(--hero-card-text-size);
  font-weight: 400;
  line-height: var(--hero-card-text-line-height);
  text-align: var(--hero-card-text-align);
}

.hero__card--projects .hero__card-text {
  font-size: calc(var(--hero-card-project-text-size) * 0.85);
  line-height: 1.1;
}

.hero__card-text--hours {
  width: var(--hero-card-hours-label-width);
  font-size: calc(var(--hero-card-text-size) * 1.1);
  text-align: left;
}

.hero__card-text--service {
  font-size: calc(var(--hero-card-text-size) * 1.1);
}

@media (min-width: 36rem) {
  .portfolio-grid__row--top {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portfolio-grid__row--bottom {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portfolio-card--easylife {
    grid-column: 1 / -1;
  }

  .hero-features .feature-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-header__inner {
    align-items: start;
  }

  .site-header__nav {
    grid-row: 2;
    grid-column: 1 / -1;
  }

  .site-header__logo {
    grid-row: 1;
    grid-column: 1;
  }

  .site-header__actions {
    grid-row: 1;
    grid-column: 2;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    justify-self: end;
  }

  .site-header__nav-list {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
  }

  .hero__cards {
    grid-template-areas:
      "projects hours"
      "projects services";
  }
}

@media (min-width: 650px) {
  .support-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 36rem) {
  .portfolio-grid2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }
  .portfolio-card__title--sr {
    font-size: initial;
    bottom: 20px;
  }
  .pricing__head {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  .pricing__note {
    justify-self: end;
  }



  .reviews .reviews-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .reviews .review-card--featured {
    grid-column: 1 / -1;
  }

  .pricing-grid,
  .reviews-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 62rem) {
  .support-plan__list-title {
    font-size: 1.125rem;
  }
  .support-plans .section-heading__title {
    white-space: nowrap;
  }

  .site-header__inner {
    align-items: start;
  }

  .site-header__nav-list {
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .site-header__actions {
    justify-content: flex-end;
    flex-wrap: wrap;
    align-items: center;
    justify-self: end;
  }

  .contact__inner {
    grid-template-columns: var(--contact-columns);
    align-items: start;
  }

  .feature-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .support-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .hero-features .feature-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .portfolio-grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.35fr);
    align-items: stretch;
  }

  .portfolio-grid2 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }

  .pricing-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .reviews .reviews-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr) minmax(0, 1fr);
    grid-auto-rows: 1fr;
  }

  .reviews .review-card--featured {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .portfolio-grid__aside {
    grid-template-rows: auto auto;
    gap: var(--portfolio-row-gap);
  }

  .portfolio-grid__row--top {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .portfolio-grid__row--bottom {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .portfolio-card--easylife {
    grid-column: auto;
  }

  .about__inner {
    grid-template-areas:
      "heading badge"
      "founder advantages";
  }

  .about .section-heading {
    grid-area: heading;
  }

  .about__badge {
    grid-area: badge;
    justify-self: end;
  }

  .about .founder-card {
    grid-area: founder;
  }

  .process-grid,
  .reviews-grid,
  .about__advantages {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .clients-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .about__advantages {
    grid-area: advantages;
    grid-column: auto;
    grid-template-areas: none;
    grid-template-columns: 1fr;
    align-items: stretch;
    align-self: center;
  }

  .about .advantage-item:nth-child(1) {
    grid-area: auto;
  }

  .about .advantage-item:nth-child(2) {
    grid-area: auto;
  }

  .about .advantage-item:nth-child(3) {
    grid-area: auto;
  }

  .hero__panel {
    align-items: center;
  }

  .hero__aside {
    justify-self: end;
  }

  .hero__card--projects {
    min-height: var(--hero-card-project-height);
  }

  .hero__card--hours {
    min-height: var(--hero-card-hours-height);
  }

  .hero__card--services {
    min-height: var(--hero-card-services-height);
  }
}

@media (min-width: 62rem) and (max-width: 74.998rem) {
  .site-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
  }

  .site-header__logo {
    grid-row: 1;
    grid-column: 1;
  }

  .site-header__nav {
    grid-row: 1;
    grid-column: 2;
  }

  .site-header__actions {
    grid-row: 1;
    grid-column: 3;
    justify-self: end;
  }

  .site-header__nav-list {
    flex-wrap: nowrap;
    align-items: center;
  }

  .site-header__nav-item--portfolio,
  .site-header__nav-item--social {
    display: none;
  }

  .site-header__nav-link--services {
    font-size: 0.875rem;
    line-height: 1.2;
  }

  .site-header__nav-link--services .site-header__nav-grid {
    width: 1rem;
    height: 1rem;
  }

  .site-header__nav-link--services .site-header__nav-arrow {
    width: 1.45rem;
    height: 0.8rem;
  }

  .site-header__burger {
    display: inline-flex;
    align-items: center;
    align-self: center;
  }

  .site-header__actions {
    flex-direction: row;
    align-items: center;
  }

  .hero__card-body.hero__card-body--bottom {
    padding: 16px;
  }

  .hero__card-value.hero__card-value--project {
    font-size: 4.375rem;
  }

  .hero__card-value.hero__card-value--hours {
    font-size: 2.125rem;
  }

  .hero__card-text.hero__card-text--hours {
    font-size: 1rem;
  }

  .hero__card-value.hero__card-value--service {
    font-size: 3rem;
  }

  .hero__card-text.hero__card-text--service {
    font-size: 1rem;
  }

  .support-card__price {
    font-size: 1.25rem;
  }

  .support-card__meta-value--rate {
    display: block;
  }
}

@media (max-width: 19.998rem) {
  .services-mega-menu {
    display: none;
  }
}

@media (min-width: 36rem) and (max-width: 61.998rem) {
  .hero__title-line {
    display: inline-block;
  }

  .site-header__logo {
    margin-top: -1.0rem;
  }

  .site-header__nav-list {
    justify-content: flex-start;
  }

  .support-card__price {
    font-size: 2.25rem;
  }

  .pricing__note {
    max-width: calc(var(--pricing-note-max-width) * 0.9);
  }

  .support-plans .section-heading__title {
    max-width: none;
  }

  .contact__title {
    max-width: 100%;
  }

  .contact__text {
    max-width: 100%;
  }

  .clients .section-heading__title {
    max-width: none;
  }
}

@media (min-width: 36rem) and (max-width: 47.998rem) {
  .services-mega-menu {
    overflow-y: auto;
    overscroll-behavior: contain;
    background-color: rgba(11, 13, 18, 0.88);
  }

  .services-mega-menu__backdrop {
    display: none;
  }

  .services-mega-menu__panel {
    padding-bottom: 1rem;
  }

  .services-mega-menu__panel-inner {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }

  .services-mega-menu__tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 9.625rem;
  }

  .services-tile--create {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .services-tile--support {
    grid-column: 2;
    grid-row: 1;
  }

  .services-tile--promotion {
    grid-column: 2;
    grid-row: 2;
  }

  .services-tile--yandex {
    grid-column: 1;
    grid-row: 3;
  }

  .services-tile--studio {
    grid-column: 2;
    grid-row: 3;
  }

  .services-tile--branding,
  .services-mega-menu__ghost {
    display: none;
  }

  .services-mega-menu__contacts {
    min-height: 9.625rem;
  }

  .site-footer {
    padding-top: 2rem;
    padding-bottom: 1rem;
  }

  .site-footer__inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "nav nav"
      "brand contacts";
  }

  .footer-nav {
    grid-area: nav;
    grid-column: 1 / -1;
    justify-self: stretch;
    margin-bottom: 1rem;
  }

  .site-footer__contacts {
    grid-area: contacts;
    justify-self: end;
    align-self: start;
  }

  .site-footer__brand {
    grid-area: brand;
    grid-template-rows: minmax(0, 1fr) auto auto;
    justify-self: start;
    align-self: stretch;
  }

  .site-footer__logo {
    margin-bottom: 1rem;
  }

  .site-footer__brand-line,
  .site-footer__copyright {
    align-self: end;
  }

  .process-card__title {
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .site-header__actions {
    flex-wrap: nowrap;
    gap: 0.75rem;
  }

  .site-header__cta {
    font-size: 0.875rem;
    padding-inline: 1.25rem;
  }

  .hero__card-value.hero__card-value--project {
    font-size: 4.7rem;
  }

  .hero__card-value.hero__card-value--hours {
    font-size: calc(var(--hero-card-value-lg) * 0.72);
  }

  .hero__card-value.hero__card-value--service {
    font-size: calc(var(--hero-card-value-lg) * 0.9);
  }

  .hero__cards {
    grid-template-columns: minmax(0, 0.81fr) minmax(0, 1.19fr);
  }

  .hero__card-body.hero__card-body--bottom {
    width: 100%;
  }

  .hero-features .feature-card__title {
    min-height: 2.5rem;
  }

  .pricing__head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .pricing .section-heading,
  .pricing .section-heading__title,
  .pricing__note {
    max-width: none;
    width: 100%;
  }

  .pricing__note {
    justify-self: stretch;
  }

  .pricing .price-card__title {
    font-size: 1.3rem;
  }

  .pricing .price-card__price {
    font-size: 1.5rem;
  }

  .pricing .price-card {
    padding-right: 1rem;
    padding-left: 1rem;
  }

  .support-card__price {
    font-size: 1.5rem;
  }

  .support-card__meta-value--rate {
    display: block;
  }
}

@media (max-width: 35.998rem) {
  .services-mega-menu {
    overflow-y: auto;
    overscroll-behavior: contain;
    background-color: rgba(11, 13, 18, 0.88);
  }

  .services-mega-menu__backdrop {
    display: none;
  }

  .services-mega-menu__panel {
    padding-bottom: 1rem;
  }

  .services-mega-menu__panel-inner {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }

  .services-mega-menu__tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 9.625rem;
  }

  .services-tile--create {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .services-tile--support {
    grid-column: 2;
    grid-row: 1;
  }

  .services-tile--promotion {
    grid-column: 2;
    grid-row: 2;
  }

  .services-tile--yandex {
    grid-column: 1;
    grid-row: 3;
  }

  .services-tile--studio {
    grid-column: 2;
    grid-row: 3;
  }

  .services-tile--branding,
  .services-mega-menu__ghost {
    display: none;
  }

  .services-mega-menu__contacts {
    min-height: 9.625rem;
  }

  .hero__title,
  .about .section-heading__title,
  .portfolio .section-heading__title,
  .pricing .section-heading__title,
  .support-plans .section-heading__title,
  .process .section-heading__title,
  .clients .section-heading__title,
  .contact__title {
    font-size: 2rem;
  }

  .hero__aside-title {
    font-size: 1.5rem;
  }

  .support-card__price {
    font-size: 2rem;
  }

  .about__badge {
    min-height: 3.75rem;
    font-size: 1.5rem;
  }

  .about .founder-card {
    width: 100%;
  }

  .about .founder-card__media {
    min-width: 0;
  }

  .contact__text {
    max-width: none;
  }

  .hero-features .feature-list {
    grid-auto-rows: auto;
  }

  .hero-features .feature-list__item {
    display: block;
  }

  .hero-features .feature-card {
    height: auto;
    min-height: auto;
    padding-left: calc(var(--hero-features-card-padding-left) + 0.5rem);
  }

  .hero-features .feature-card__title {
    min-height: 0;
    max-width: none;
    white-space: nowrap;
  }

  .hero-features .feature-card__text {
    max-width: none;
  }

  .process-card {
    min-height: auto;
  }

  .process-card__title {
    max-width: none;
    white-space: nowrap;
  }

  .site-footer {
    padding-top: 2rem;
    padding-bottom: 1.5rem;
  }

  .site-footer__inner {
    grid-template-columns: 1fr;
    grid-template-areas:
      "nav"
      "contacts"
      "brand";
  }

  .footer-nav {
    grid-area: nav;
    justify-self: stretch;
  }

  .footer-nav__columns {
    row-gap: var(--site-footer-nav-gap);
  }

  .site-footer__contacts {
    grid-area: contacts;
    justify-self: start;
  }

  .site-footer__brand {
    grid-area: brand;
    justify-self: start;
  }

  .site-footer__logo {
    margin-bottom: 1.5rem;
  }
  .footer-nav__list {
    column-count: 1;
  }
}

@media (min-width: 1200px) {
  .services-mega-menu__panel-inner {
    width: min(100% - (var(--container-padding) * 2), var(--hero-container-max));
    margin-inline: auto;
  }

  .services-mega-menu__panel-inner {
    grid-template-columns: minmax(0, 1fr) 12.375rem 8.25rem;
  }

  .services-mega-menu__ghost {
    display: block;
  }
}
@media (max-width: 1440px) {
  .support-card__title {
    font-size: calc(var(--support-card-title-size) * 1);
  }
}

@media (min-width: 1440px) {
  .services-mega-menu__panel-inner {
    grid-template-columns: minmax(0, 1fr) 18.5625rem 8.25rem;
  }

}

@media (min-width: 75rem) {
  .about__inner {
    grid-template-areas:
      "heading heading heading badge"
      "founder advantage-1 advantage-2 advantage-3";
  }

  .about__advantages {
    grid-area: auto;
    grid-column: 2 / -1;
    grid-template-areas: "advantage-1 advantage-2 advantage-3";
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .about .advantage-item:nth-child(1) {
    grid-area: advantage-1;
  }

  .about .advantage-item:nth-child(2) {
    grid-area: advantage-2;
  }

  .about .advantage-item:nth-child(3) {
    grid-area: advantage-3;
  }

  .site-header__inner {
    align-items: center;
  }

  .site-header__nav,
  .site-header__actions,
  .site-header__logo {
    grid-row: auto;
    grid-column: auto;
  }

  .site-header__nav-list {
    flex-wrap: nowrap;
  }

  .site-header__actions {
    flex-wrap: nowrap;
  }
}

@media (max-width: 35.998rem) {
  .site-header__inner {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
  }

  .site-header__logo {
    grid-column: 1;
    grid-row: 1;
  }

  .site-header__nav {
    display: none;
  }

  .site-header__actions {
    grid-column: 2;
    grid-row: 1;
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    justify-self: end;
    gap: 0.625rem;
  }

  .site-header__phone {
    gap: 0;
    font-size: 0;
    line-height: 0;
  }

  .site-header__phone-text {
    display: none;
  }

  .site-header__cta {
    min-height: 2.875rem;
    padding-inline: 1.25rem;
    font-size: 0.875rem;
  }

  .site-header__burger {
    display: inline-flex;
    align-items: center;
  }

  .services-menu-open .site-header__burger-button::before {
    transform: rotate(45deg);
    box-shadow: none;
  }

  .services-menu-open .site-header__burger-button::after {
    opacity: 1;
    transform: rotate(-45deg);
  }

  .site-header__burger-item--services {
    display: block;
  }

  .hero__panel {
    grid-template-columns: 1fr;
    row-gap: var(--hero-panel-gap);
  }

  .hero__cards {
    grid-template-columns: 1fr;
    grid-template-areas:
      "projects"
      "hours"
      "services";
  }

  .hero__card--projects {
    min-height: calc(var(--hero-card-hours-height) * 1.3);
  }

  .hero__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 28.75rem) {
  .site-header__inner {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .site-header__actions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    row-gap: 0.5rem;
    column-gap: 0.25rem;
  }

  .site-header__phone {
    flex: 0 0 auto;
    order: 1;
  }

  .site-header__logo {
    width: calc(var(--site-header-logo-width) * 0.9);
  }

  .site-header__phone-icon {
    width: 1.7875rem;
    height: 1.7875rem;
  }

  .site-header__burger {
    flex: 0 0 auto;
    order: 2;
  }

  .site-header__burger-button {
    width: 1.86875rem;
    height: 1.86875rem;
  }

  .site-header__burger-button::before,
  .site-header__burger-button::after {
    width: 0.875rem;
    height: 1.5px;
  }

  .site-header__burger-button::before {
    box-shadow:
      0 -3px 0 var(--color-text),
      0 3px 0 var(--color-text);
  }

  .site-header__cta {
    order: 3;
    flex: 0 0 100%;
    width: max-content;
    margin-left: auto;
    white-space: nowrap;
    min-height: 1.625rem;
    padding-inline: 0.625rem;
    font-size: 0.6875rem;
  }
}

@media (max-width: 23.75rem) {
  .hero__title,
  .about .section-heading__title,
  .portfolio .section-heading__title,
  .pricing .section-heading__title,
  .support-plans .section-heading__title,
  .process .section-heading__title,
  .clients .section-heading__title,
  .contact__title {
    font-size: 1.8rem;
  }

  .hero__button {
    padding-right: calc(var(--hero-button-padding-x) * 0.7);
    padding-left: calc(var(--hero-button-padding-x) * 0.7);
  }

  .hero__aside-title {
    font-size: 1.4rem;
  }

  .hero__card--hours .hero__card-body.hero__card-body--inline {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
  }

  .hero__metrics {
    grid-template-columns: 1fr;
  }

  .about__badge {
    font-size: 1.4rem;
  }

  .support-card__price {
    font-size: 1.7rem;
  }

  .hero-features .feature-card__title {
    font-size: 1.0625rem;
  }

  .pricing .price-card__title {
    font-size: 1.375rem;
  }

  .support-card__meta-value--rate {
    display: block;
  }

  .pricing .price-card {
    min-width: 0;
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }

  .pricing .price-card__title,
  .pricing .price-card__price,
  .pricing .price-card__text,
  .pricing .price-card__meta,
  .pricing .price-card__link,
  .pricing .price-card__button {
    min-width: 0;
  }
}

@media (min-width: 30rem) and (max-width: 35.998rem) {
  .hero__button {
    min-width: 15rem;
  }
}

@media (min-width: 992px) and (max-width: 1200px) {
  .site-header__burger-link {
    font-size: 1.1rem;
  }
}
@media (min-width: 1200px) and (max-width: 1439px) {
  .about__inner {
    grid-template-columns: minmax(0, 2.2fr) repeat(3, minmax(0, 1fr));
  }

  .support-card__price {
    font-size: 1.75rem;
  }

  .support-card__meta-item {
    padding-left: 1.8rem;
  }

  .support-card__meta-item--hours {
    padding-top: 0.2rem;
  }

  .support-card__meta-value--rate {
    display: block;
  }

  .hero-features .feature-card__title {
    min-height: 2.4375rem;
  }
}
@media (max-width: 992px) {
  .social-project-card-full {
    flex-direction: column-reverse;
    gap: 20px;
  }
}
@media only screen and (max-width: 900px){
  .portfolio-full {
    flex-direction: column;
  }
  .portfolio-full-info {
    width: 100%;
  }
}
@media only screen and (max-width: 800px){
  .gallery {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 710px){
  .topcontrol {
    right: 10px;
  }
}

@media only screen and (max-width: 500px){
  .gallery {
    gap:10px;
    margin: 10px 0 0;
  }
  .portfolio-full {
    margin: 0;
  }
  .create-modal-row {
    flex-direction: column;
  }
  .create-modal-row__img {
    width: 100%;
  }
}
