:root {
  --shell-max-width: 1133px;
  --shell-gutter-mobile: 16px;
  --shell-gutter-tablet: 42px;
  --shell-gutter: 101px;
  --shell-gutter-large: 154px;
  --c-charcoal: #544f4a;
  --c-charcoal-decimal: 84, 79, 74;
  --c-red-hex: #d9201e;
  --c-red-decimal: 217, 32, 30;
  --c-lightgray: #efefef;
  --c-darkred-hex: #991c1f;
  --c-beige-hex: #f9f2e6;
  --c-base: #4a4541;
  --ff-montserrat: "Montserrat", sans-serif;
  --ff-play-fair: "Playfair Display", "playfair display", serif;
  --ff-nunito-sans: "Nunito Sans", sans-serif;
  --theme-transition-duration: 0.4s;
}
@font-face {
  font-display: swap;
  font-family: "Playfair Display";
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/PlayfairDisplay-Regular.woff2) format("woff2"),
    url(../fonts/PlayfairDisplay-Regular.woff) format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 400;
  src: url(../fonts/PlayfairDisplay-Italic.woff2) format("woff2"),
    url(../fonts/PlayfairDisplay-Italic.woff) format("woff");
}
body {
  margin: 0 !important;
}
.background-white {
  background-color: #fff;
}
.background-white + .background-white,
.background-white + .background-white-gray {
  padding-top: 0;
}
.background-light-gray {
  background-color: var(--c-lightgray);
}
.background-light-gray + .background-gray-white,
.background-light-gray + .background-light-gray {
  padding-top: 0;
}
.background-light-gray + .background-gray-white.padding-block-small:before {
  top: calc(50% - (clamp(32px, 5vw, 76px) / 2));
}
.background-white-gray {
  background-color: #fff;
  position: relative;
}
.background-white-gray > * {
  position: relative;
  z-index: 2;
}
.background-white-gray:before {
  background-color: var(--c-lightgray);
  bottom: 0;
  content: " ";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 50%;
}
.background-white-gray + .background-gray {
  padding-top: 0;
}
.background-gray-white {
  position: relative;
}
.background-gray-white + .background-white {
  padding-top: 0;
}
.background-gray-white > * {
  position: relative;
  z-index: 2;
}
.background-gray-white:before {
  background-color: #fff;
  bottom: 0;
  content: " ";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 50%;
  z-index: 1;
}
.padding-block-large {
  padding-block: clamp(50px, 7vw, 50px);
}
.padding-block-normal {
  padding-block: clamp(60px, 7vw, 50px);
}
.padding-block-small {
  padding-block: clamp(32px, 5vw, 50px);
}
.shell {
  margin: 0 auto;
  max-width: calc(var(--shell-max-width) + (2 * var(--shell-gutter)));
  padding: 0 var(--shell-gutter);
}
.shell--max {
  --shell-max-width: 1440px;
  --shell-gutter: 36px;
  width: 100%;
}
.section-contacts {
  padding-top: clamp(30px, 6vw, 30px);
}
.form-steps {
  border-top: 4px solid var(--c-red-hex);
  padding-top: clamp(16px, 3vw, 35px);
}
.search {
  position: relative;
}
.search form {
  position: relative;
}
.search .search__field {
  appearance: none;
  background: #fff !important;
  border: 1px solid #ddd;
  border-radius: 23px;
  font-size: 14px;
  height: 40px;
  min-width: 255px;
  padding-inline: 40px 16px;
}
.article-list {
  background-color: #fff !important;
  box-shadow: 0 0 15px 5px rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
  height: auto;
  padding: 20px 0 52px;
  text-align: left;
}
.article-list .article__title {
  background-color: #fff !important;
  padding: 0 50px 19px;
  text-align: center;
}
.article-list .article__title h2 {
  font-family: var(--ff-montserrat, "sans-serif");
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center !important;
  text-transform: uppercase;
}
.article-list .article__image {
  aspect-ratio: 554/347;
  position: relative;
  width: 100%;
}
.article-list .article__image img {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.article-list .article__content {
  background-color: #fff !important;
  font-family: var(--ff-nunito-sans, "sans-serif");
  font-size: 18px;
  line-height: 1.65;
  padding: 42px 50px 0;
}
.article-list .article__entry + .article__list {
  margin-top: 32px;
}
.article-list .article__list {
  font-weight: 700;
}
.article-list .article__list ul {
  list-style-type: none;
}
.article-list .article__list li {
  align-items: flex-start;
  display: flex;
}
.article-list .article__list-ico {
  flex: 0 0 28px;
}
.article-list .article__list-ico img {
  height: auto;
  max-width: 28px;
  vertical-align: middle;
}
.article-list .article__list-entry {
  letter-spacing: 0.01em;
  line-height: 1.4;
  margin-left: 24px;
}
.article-list .article__list li + li {
  margin-top: 26px;
}
.link-arrow {
  color: var(--c-red-hex, red) !important;
  display: inline-block;
  font-family: var(--ff-nunito-sans, "sans-serif");
  font-size: 18px;
  font-weight: 600;
  line-height: 1.67;
  padding-right: 23px;
  position: relative;
  text-decoration: none;
  text-transform: capitalize;
}
.link-arrow:before {
  background-color: currentColor;
  content: "";
  height: 1px;
  position: absolute;
  right: 0;
  top: 15px;
  transition: transform 0.3s;
  width: 11px;
}
.link-arrow:after {
  border-bottom: 1px solid currentColor;
  border-right: 1px solid currentColor;
  content: "";
  height: 5px;
  position: absolute;
  right: 0;
  top: 13px;
  transform: rotate(-45deg);
  transition: transform 0.3s;
  width: 5px;
}
.link-arrow:hover {
  text-decoration: none;
}
.link-arrow:hover::before {
  transform: translateX(5px);
}
.link-arrow:hover::after {
  transform: translateX(5px) rotate(-45deg);
}
.section-logos {
  background-color: #fff !important;
  padding-block: clamp(60px, 7vw, 96px);
}
.section-logos .section__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin: 0 -32px;
  row-gap: 34px;
}
.section-logos .section__head {
  margin-bottom: clamp(14px, 3vw, 40px);
  text-align: center;
}
.section-logos .section__head h2 {
  color: var(--c-charcoal);
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 0;
  text-transform: uppercase;
}
.section__inner {
  position: relative;
  z-index: 2;
}
.section-testimonials {
  margin-block: clamp(60px, 7vw, 50px);
}
.section-testimonials * {
  text-align: center !important;
}
.section-testimonials .section__head h2 {
  margin-bottom: clamp(24px, 3vw, 32px);
}
.section-testimonials .section__head > :last-child {
  margin-bottom: 0;
}
.section-testimonials .section__body {
  width: 100%;
}
.section-testimonials .section__body:not(:last-child) {
  margin-bottom: 40px;
}
.section-testimonials .section__head:not(:last-child) {
  margin-bottom: clamp(22px, 2vw, 31px);
}
.section-testimonials .section__head-top {
  display: block;
}
.section-socials {
  background-color: var(--c-header-main, #d91f1f) !important;
  padding: 50px 0;
}
.section-socials .section__shell {
  margin: 0 auto;
  max-width: calc(930px + (var(--shell-gutter) * 2));
  width: 100%;
}
.section-socials .section__inner {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 0;
  margin: 0 -24px;
}
.section-socials .section__head {
  color: #fff;
  flex: 0 1 255px;
  padding: 0 24px;
}
.section-socials .section__head h4 {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.006em;
  line-height: 2;
  text-transform: uppercase;
}
.section__content {
  flex: 0 0 669px;
  padding: 0 24px;
}
.socials-new {
  align-items: center;
  display: flex;
  margin: 0 -48px;
}
.socials-new .socials__main {
  align-items: center;
  display: flex;
  list-style-type: none;
  margin: 0 -8px;
  padding: 0 48px;
  row-gap: 16px;
}
.socials-new .socials__main li {
  padding: 0 8px;
}
.socials-new .socials__main li a {
  align-items: center;
  border: 1px solid #fff;
  display: flex;
  height: 60px;
  justify-content: center;
  text-decoration: none;
  transition: background-color, border-color;
  transition-duration: 0.3s;
  width: 60px;
}
.socials-new .socials__main li a svg {
  fill: #fff;
  font-size: 24px;
  transition: fill 0.3s;
}
.socials-new .socials__main li a:hover {
  background-color: #fff !important;
  border-color: #fff;
}
.socials-new .socials__main li a:hover svg {
  fill: var(--c-darkred-hex);
}
.socials-new .socials__aside {
  border-left: 1px solid #fff;
  padding: 0 48px;
  padding-top: 11px;
}
.socials-new .socials__box {
  align-items: center;
  color: #fff !important;
  display: flex;
  font-size: 39px;
  line-height: 1;
  text-decoration: none;
}
.socials-new .socials__box svg {
  fill: currentColor;
}
.socials-new .socials__box-text {
  font-weight: 700;
  letter-spacing: 0.06em;
  margin-left: 13px;
}
.section-title {
  background-color: #fff !important;
  padding-block: 17px 216px;
}
.section-title .section__content {
  margin-top: 10px;
}
.section-title .section__content > * {
  text-align: center !important;
}
.section-title .section__content span {
  color: var(--c-charcoal);
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 2;
  text-transform: uppercase;
}
.section-title .section__content h1 {
  color: #d9201e;
  font-family: "Playfair Display", sans-serif;
  font-size: 46px;
  line-height: 1.17;
  margin-bottom: 18px;
}
.section-title .section__content h1:last-child {
  margin-bottom: 0;
}
.section-products {
  margin-top: -159px;
  padding-bottom: 64px;
}
.section-products .section__inner {
  display: grid;
  gap: 25px;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
}
.section-image-content .section__inner {
  display: grid;
  grid-template-columns: auto 35.7%;
}
.section-image-content .section__content {
  background-color: #991c1f !important;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 72px 97px 72px 153px;
}
.section-image-content .section__content > * {
  max-width: 677px;
}
.section-image-content .section__content h2 {
  font-family: "Playfair Display", sans-serif;
  font-size: 36px;
  font-style: italic;
  line-height: 1.11;
  margin-bottom: 24px;
}
.section-image-content .section__image {
  width: 100%;
}
.section-image-content .section__image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.section-products-grid {
  background-color: #fff !important;
  padding-block: 80px 57px;
}
.section-products-grid .section__head {
  margin-bottom: 32px;
}
.section-products-grid .section__head h2 span {
  color: var(--c-charcoal);
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 2;
  text-transform: uppercase;
}
.section-products-grid .section__head h2 {
  color: #d9201e;
  font-family: "Playfair Display", sans-serif;
  font-size: 36px;
  font-style: italic;
  line-height: 1.11;
}
.section-products-grid .section__entry {
  align-items: end;
  display: grid;
  grid-template-columns: 66% auto;
  margin-bottom: 46px;
}
.section-products-grid .section__entry span {
  color: #d9201e;
}
.section-products-grid .section__grid {
  display: grid;
  gap: 25px;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.section-products-grid .section__grid .section__item {
  display: block;
  overflow: hidden;
  position: relative;
}
.section-products-grid .section__item:hover h3 {
  text-decoration: underline;
}
.section-products-grid .section__item img {
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  width: 100%;
}
.section-products-grid .section__item h3 {
  bottom: 19px;
  color: #fff;
  font-family: Montserrat, sans-serif;
  font-size: 18px;
  font-weight: 700;
  left: 33px;
  position: absolute;
  text-transform: uppercase;
  transition: color 0.4s, text-decoration 0.4s;
}
.section-image-content-alt {
  background-color: #fff !important;
  padding-block: 72px 97px;
}
.section-image-content-alt .section__inner {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 101px;
}
.section-image-content-alt .section__image {
  position: relative;
  width: 42.1%;
}
.section-image-content-alt .section__image img {
  aspect-ratio: 440/276;
  border: solid 15px #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
  height: 100%;
  object-fit: cover;
  position: relative;
  right: 10px;
  transform: rotate(-8deg);
  width: 100%;
}
.section-image-content-alt .section__image:after {
  background-color: #f9f2e6;
  border-radius: 50%;
  content: "";
  height: 458px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 458px;
  z-index: -1;
}
.section-image-content-alt .section__content {
  flex: 1;
  padding: 0;
}
.section-image-content-alt .section__content h2 {
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 2;
  margin-bottom: 24px;
  text-transform: uppercase;
}
.section-image-content-alt .section__content p {
  margin-bottom: 30px;
}
.section-image-content-alt .section__content span {
  color: #d9201e;
}
.section-image-content-alt .section__content p:last-child {
  letter-spacing: -0.001em;
  margin-bottom: 0;
}
.section-text-image {
  padding-block: 80px;
}
.section-text-image .section__inner {
  display: grid;
  gap: 97px;
  grid-template-columns: 42.5% auto;
}
.section-text-image .section__image-title h2 span {
  color: var(--c-charcoal);
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 2;
  text-transform: uppercase;
}
.section-text-image .section__image-title p {
  letter-spacing: -0.003em;
}
.section-text-image .section__image-title h2 {
  color: #d9201e;
  font-family: "Playfair Display", sans-serif;
  font-size: 36px;
  font-style: italic;
  line-height: 1.11;
  margin-bottom: 31px;
}
.section-text-image .section__image {
  margin-top: 86px;
  width: 100%;
}
.section-text-image .section__image img {
  aspect-ratio: 444/276;
  border: solid 15px #fff;
  height: 100%;
  object-fit: cover;
  position: relative;
  right: 9px;
  transform: rotate(-8deg);
  width: 98.3%;
}
.section-text-image .section__text li {
  margin-bottom: 24px;
}
.section-text-image .section__text li:last-child {
  margin-block: 42px 0;
}
.section-text-image .section__text li h3 {
  display: inline-block;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66;
  margin-bottom: 15px;
}
.section-text-image .section__text li p span {
  color: #d9201e;
}
.section-testimonials.section-testimonials--alt .section__head {
  margin-bottom: 25px;
}
.section-testimonials.section-testimonials--alt .section__body {
  margin-inline: auto;
  max-width: 750px;
}
.section-contact-socials {
  background-color: #991c1f !important;
  color: #fff;
  padding-block: 50px;
}
.section-contact-socials .section__inner {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
  justify-content: center;
}
.section-contact-socials .section__entry h5 {
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 2;
  text-transform: uppercase;
}
.socials-contacts ul {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  list-style: none;
}
.socials-contacts ul a {
  align-items: center;
  border: solid 1px rgba(255, 255, 255, 0.5);
  display: flex;
  height: 60px;
  justify-content: center;
  transition: color 0.4s, background-color 0.4s;
  width: 60px;
}
.socials-contacts ul a:hover {
  background-color: #fff !important;
}
.socials-contacts ul a:hover path {
  fill: #991c1f;
}
.socials-contacts ul a svg path {
  fill: #fff;
  transition: fill 0.4s;
}
.section-form {
  padding: 80px 0;
  position: relative;
  z-index: 2;
}
.section-form .section__head {
  font-size: 16px;
  line-height: 1.625;
  text-align: center;
  width: 100%;
}
.section-form .section__head:not(:last-child) {
  margin-bottom: 24px;
}
.section-form .section__form {
  background-color: #fff;
  padding: clamp(20px, 7vw, 96px);
}
.form-steps {
  counter-reset: formSteps;
  width: 100%;
}
.form-steps > form {
  display: flex;
  flex-wrap: wrap;
}
.form-steps .form__steps {
  padding-right: 40px;
  width: 290px;
}
.form-steps .form__steps ul {
  display: flex;
  flex-direction: column;
  gap: 24px;
  list-style: none;
  margin: 0;
  padding-top: 0;
}
.form-steps .form__steps li {
  align-items: center;
  color: #a8a8a8;
  counter-increment: formSteps;
  cursor: pointer;
  display: flex;
  font-size: 14px;
  gap: 12px;
  line-height: 1.57;
  transition: color var(--theme-transition-duration);
}
.form-steps .form__steps li:before {
  align-items: center;
  background-color: var(--c-red-hex, red);
  border-radius: 50%;
  color: #fff;
  content: counter(formSteps);
  display: flex;
  font-family: var(--ff-montserrat, "sans-serif");
  font-weight: 500;
  height: 24px;
  justify-content: center;
  min-width: 24px;
  opacity: 0.1;
  transition: opacity var(--theme-transition-duration);
  width: 24px;
}
.form-steps .form__steps li.complete {
  color: var(--c-charcoal);
}
.form-steps .form__steps li.complete:before {
  background-color: var(--c-darkred-hex);
  background-image: url(../images/ico-check.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 9px 7px;
  font-size: 0;
  line-height: 0;
  opacity: 1;
}
.form-steps .form__steps p {
  display: none;
}
.form-steps .form__entry h1 {
  font-family: var(--ff-montserrat);
  font-size: clamp(28px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.42;
  margin-bottom: 16px;
}
.form-steps .form__entry h2 {
  font-family: var(--ff-montserrat);
  font-size: clamp(28px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.42;
  margin-bottom: 16px;
}
.form-steps .form__entry p {
  font-size: 16px;
  line-height: 1.62;
  margin-bottom: 16px;
}
.form-steps .form__entry p a {
  text-decoration: underline;
}
.form-steps .form__entry > :last-child {
  margin-bottom: 0;
}
.form-steps .form__entry:not(:last-child) {
  border-bottom: 1px solid #e0e0e0;
  margin-bottom: 48px;
  padding-bottom: 48px;
}
.form-steps .form__fields {
  display: flex;
  flex-wrap: wrap;
  margin: -16px -12px;
  position: relative;
}
.form-steps .form__fields > * {
  padding: 16px 12px;
  width: 100%;
}
.form-steps .form__fields--alt {
  margin-inline: -12px;
}
.form-steps .form__fields--alt > * {
  padding-inline: 12px;
}
.form-steps .form__fields--alt .form__field--error:after {
  left: 12px;
  right: 12px;
}
.form-steps .form__field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  justify-content: start;
  position: relative;
  z-index: 2;
}
.form-steps .form__field > label {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  min-width: calc(100% + 6px);
  width: 100%;
}
.form-steps .form__field > label > span {
  color: #857e78;
}
.form-steps .form__field > label > em {
  color: #857e78;
  display: block;
  font-size: 14px;
  line-height: 1.57;
  width: 100%;
}
.form-steps .form__field > label > strong {
  color: var(--c-red-hex) !important;
}
.form-steps .form__field > label > * {
  display: inline-block;
  vertical-align: middle;
}
.form-steps .form__field input[type="number"]::-webkit-inner-spin-button,
.form-steps .form__field input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.form-steps .form__field input[type="number"] {
  -moz-appearance: textfield;
}
.form-steps .form__field > span[data-prefix] input,
.form-steps .form__field > span[data-prefix] select {
  padding-left: 26px;
}
.form-steps .form__field > span[data-prefix]:before {
  color: var(--c-charcoal);
  content: attr(data-prefix);
  font-size: 14px;
  left: 16px;
  line-height: 1;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.form-steps .form__field > span[data-suffix] input,
.form-steps .form__field > span[data-suffix] select {
  padding-right: 26px;
}
.form-steps .form__field > span[data-suffix]:after {
  color: var(--c-charcoal);
  content: attr(data-suffix);
  font-size: 14px;
  line-height: 1;
  pointer-events: none;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.form-steps .form__field > span[data-width="half"] {
  max-width: 50%;
}
.form-steps .form__field--half {
  width: 50%;
}
.form-steps .form__field--1of3 {
  width: calc(100% / 3);
}
.form-steps .form__field--label {
  margin-bottom: -25px;
  position: relative;
  width: 100%;
}
.form-steps .form__field--label h6 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.11;
  margin-bottom: 0;
}
.form-steps .form__field--file input,
.form-steps .form__field--input input,
.form-steps .form__field--input textarea,
.form-steps .form__field--select select {
  background: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  color: var(--c-charcoal);
  font-size: 14px;
  height: 48px;
  line-height: 1;
  padding: 0 16px;
  transition: color var(--theme-transition-duration),
    border var(--theme-transition-duration);
  width: 100%;
}
.form-steps .form__field--file input:focus,
.form-steps .form__field--input input:focus,
.form-steps .form__field--input textarea:focus,
.form-steps .form__field--select select:focus {
  border-color: var(--c-charcoal);
}
.form-steps .form__field--input input::placeholder,
.form-steps .form__field--input textarea::placeholder,
.form-steps .form__field--select select::placeholder {
  color: #a8a8a8;
}
.form-steps .form__field--file > span,
.form-steps .form__field--input > span,
.form-steps .form__field--select > span {
  display: block;
  position: relative;
}
.form-steps .form__field--input textarea {
  font-size: 16px;
  height: 190px;
  line-height: 1.57;
  padding-block: 10px;
  resize: none;
}
.form-steps .form__field--file input {
  padding-block: 12px;
}
.form-steps .form__field--select {
  z-index: 10;
}
.form-steps .form__field--select select {
  appearance: none;
  cursor: pointer;
  padding-right: 26px;
}
.form-steps .form__field--select select[style] {
  display: block !important;
  left: -4000px;
  opacity: 0;
  position: absolute;
}
.form-steps .form__field--select select::-ms-expand {
  display: none;
}
.form-steps .form__field--select select:required:invalid {
  color: #afafaf;
}
.form-steps .form__field--select > span:before {
  background-image: url(../images/ico-select.svg);
  background-repeat: no-repeat;
  background-size: 9px 5px;
  content: " ";
  height: 5px;
  pointer-events: none;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 9px;
  z-index: 2;
}
.form-steps .form__field--select ~ .form__field--select {
  z-index: 9;
}
.form-steps .form__field--select ~ .form__field--select ~ .form__field--select {
  z-index: 8;
}
.form-steps
  .form__field--select
  ~ .form__field--select
  ~ .form__field--select
  ~ .form__field--select {
  z-index: 7;
}
.form-steps
  .form__field--select
  ~ .form__field--select
  ~ .form__field--select
  ~ .form__field--select
  ~ .form__field--select {
  z-index: 6;
}
.form-steps
  .form__field--select
  ~ .form__field--select
  ~ .form__field--select
  ~ .form__field--select
  ~ .form__field--select
  ~ .form__field--select {
  z-index: 5;
}
.form-steps .form__field--radio > span {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}
.form-steps .form__field--radio > span > input {
  left: -4000px;
  opacity: 0;
  position: absolute;
  visibility: hidden;
}
.form-steps .form__field--radio > span > input:checked + label:before {
  background-color: var(--c-red-hex, red);
  border-color: var(--c-red-hex, red);
}
.form-steps .form__field--radio > span > input:checked + label {
  background-color: rgba(217, 32, 30, 0.1);
  border-color: var(--c-red-hex, red);
}
.form-steps .form__field--radio > span > label {
  background-color: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  display: flex;
  flex-grow: 1;
  padding: 0 16px 0 36px;
  width: calc((100% / 3) - 9px);
}
.form-steps .form__field--radio > span > label {
  align-items: center;
  color: var(--c-charcoal);
  cursor: pointer;
  font-size: 14px;
  line-height: 1.1;
  min-height: 48px;
  position: relative;
}
.form-steps .form__field--radio > span > label {
  transition: border, background;
  transition-duration: var(--theme-transition-duration);
}
.form-steps .form__field--radio > span > label:before {
  border: 1px solid #d4d4d4;
  border-radius: 50%;
  content: " ";
  height: 14px;
  left: 14px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: border var(--theme-transition-duration),
    background var(--theme-transition-duration);
  width: 14px;
}
.form-steps .form__field--radio > span > label:after {
  background-color: #fff;
  border-radius: 50%;
  content: " ";
  height: 6px;
  left: 18px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
}
.form-steps .form__field--radio-alt > span {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.form-steps .form__field--radio-alt > span > input {
  left: -4000px;
  opacity: 0;
  position: absolute;
  visibility: hidden;
}
.form-steps .form__field--radio-alt > span > input:checked + label:before {
  background-color: var(--c-red-hex, red);
  border-color: var(--c-red-hex, red);
}
.form-steps .form__field--radio-alt > span > input:checked + label {
  background-color: rgba(217, 32, 30, 0.1);
  border-color: var(--c-red-hex, red);
}
.form-steps .form__field--radio-alt > span > label {
  background-color: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 36px 0 14px 0;
  position: relative;
  width: calc((100% / 5) - 12px);
}
.form-steps .form__field--radio-alt > span > label {
  transition: border, background;
  transition-duration: var(--theme-transition-duration);
}
.form-steps .form__field--radio-alt > span > label:before {
  border: 1px solid #d4d4d4;
  border-radius: 50%;
  content: " ";
  height: 14px;
  position: absolute;
  right: 14px;
  top: 14px;
  transition: border var(--theme-transition-duration),
    background var(--theme-transition-duration);
  width: 14px;
}
.form-steps .form__field--radio-alt > span > label:after {
  background-color: #fff;
  border-radius: 50%;
  content: " ";
  height: 6px;
  position: absolute;
  right: 18px;
  top: 18px;
  width: 6px;
}
.form-steps .form__field--radio-alt > span > label img {
  display: block;
  height: 75px;
  object-fit: contain;
  object-position: center;
  width: 100%;
}
.form-steps .form__field--radio-alt > span > label > span {
  align-items: center;
  color: var(--c-charcoal);
  display: flex;
  font-size: 14px;
  justify-content: center;
  line-height: 1.42;
  min-height: 40px;
  padding-inline: 10px;
  text-align: center;
  width: 100%;
}
.form-steps .form__field--error > span input,
.form-steps .form__field--error > span label,
.form-steps .form__field--error > span select,
.form-steps .form__field--error > span textarea,
.form-steps .form__field--error > span > .custom-select .input-box > select {
  border-color: var(--c-red-hex, red);
}
.form-steps .form__field--error:after {
  color: var(--c-red-hex, red);
  content: attr(data-error-text);
  font-size: 12px;
  left: 20px;
  line-height: 1.66;
  position: absolute;
  right: 20px;
  top: calc(100% - 14px);
}
.form-steps .form__action {
  align-items: center;
  display: flex;
  gap: 32px;
  justify-content: flex-end;
  margin-top: 40px;
  width: 100%;
}
.form-steps .form__action-link {
  align-items: center;
  background: 0 0;
  border: 1px solid transparent;
  border-radius: 4px;
  color: var(--c-red-hex, red);
  cursor: pointer;
  display: inline-flex;
  gap: 8px;
  height: 54px;
}
.form-steps .form__action-link:before {
  background-image: url(../images/ico-arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px 7px;
  content: " ";
  height: 7px;
  transition: transform var(--theme-transition-duration);
  width: 12px;
}
.form-steps .form__action-link > span {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 1;
  text-transform: uppercase;
}
.custom-select {
  position: relative;
  width: 50% !important;
  z-index: 10;
}
.custom-select .input-box > select {
  background: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  color: var(--c-charcoal);
  font-size: 14px;
  height: 48px;
  line-height: 1;
  padding: 0 16px;
  transition: color var(--theme-transition-duration),
    border var(--theme-transition-duration);
  width: 100%;
}
.custom-select .input-box > select {
  cursor: pointer;
  padding-right: 26px;
  position: relative;
  text-align: left;
}
.custom-select .input-box > select:focus {
  border-color: var(--c-charcoal);
}
.custom-select .input-box > select:before {
  background-image: url(../images/ico-select.svg);
  background-repeat: no-repeat;
  background-size: 9px 5px;
  content: " ";
  height: 5px;
  margin-top: -2px;
  pointer-events: none;
  position: absolute;
  right: 16px;
  top: 50%;
  transition: transform var(--theme-transition-duration),
    margin var(--theme-transition-duration);
  width: 9px;
}
.custom-select__dropdown {
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.18);
  left: 0;
  max-height: 210px;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
  position: absolute;
  right: 0;
  top: calc(100% + 2px);
  z-index: 100;
}
.custom-select__dropdown button {
  align-items: center;
  background: #fff;
  border: 0;
  border-radius: 0;
  display: flex;
  font-size: 14px;
  line-height: 1.85;
  min-height: 42px;
  padding: 5px 16px;
  transition: background var(--theme-transition-duration);
  width: 100%;
}
.label-tooltip {
  align-items: center;
  background-image: url(../images/ico-tooltip.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  display: inline-flex;
  font-style: normal;
  height: 14px;
  justify-self: center;
  position: relative;
  width: 14px;
  z-index: 99999;
}
.label-tooltip:before {
  bottom: 0;
  content: " ";
  left: -20px;
  pointer-events: none;
  position: absolute;
  right: -20px;
  top: -20px;
  z-index: 10;
}
.label-tooltip > span {
  background-color: #fff;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  color: var(--c-charcoal);
  font-size: 14px;
  left: 0;
  line-height: 1.14;
  min-width: 246px;
  padding: 16px;
  position: absolute;
  top: -6px;
  transform: translate(-50%, -100%);
}
.label-tooltip > span {
  opacity: 0;
  transition: opacity var(--theme-transition-duration),
    visibility var(--theme-transition-duration);
  visibility: hidden;
}
.label-tooltip > span:before {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #fff;
  bottom: -9px;
  content: " ";
  height: 0;
  left: 50%;
  margin-left: -3px;
  position: absolute;
  width: 0;
}
.label-tooltip:hover:before {
  pointer-events: all;
}
.label-tooltip:hover > span {
  opacity: 1;
  visibility: visible;
}
.section-content-and-images {
  background-color: #fff;
  padding-block: 80px;
  position: relative;
  width: 100%;
}
.section-content-and-images:first-child {
  padding-top: 40px;
}
.section-content-and-images > * {
  align-items: center;
  display: flex;
}
.section-content-and-images .section__content {
  display: flex;
  flex: none;
  flex-direction: column;
  gap: 24px;
  padding-inline: 0 60px;
  position: relative;
  width: calc(50% + 32px);
  z-index: 10;
}
.section-content-and-images .section__content-entry {
  color: var(--c-charcoal);
  font-size: 18px;
  line-height: 1.66;
}
.section-content-and-images .section__content-entry h1 {
  color: var(--c-red-hex, red);
  font-family: var(--ff-play-fair, "sans-serif");
  font-size: clamp(32px, 4vw, 46px);
  font-style: italic;
  font-weight: 400;
  line-height: 1.17;
  margin-bottom: 16px;
  max-width: 530px;
}
.section-content-and-images .section__content-entry p {
  margin-bottom: 16px;
}
.section-content-and-images .section__content-entry > :last-child {
  margin-bottom: 0;
}
.section-content-and-images .section__images {
  font-size: 0;
  line-height: 0;
  pointer-events: none;
  position: relative;
  width: calc(50% - 32px);
}
.section-content-and-images .section__images:before {
  aspect-ratio: 1/1;
  background-color: #efefef;
  border-radius: 50%;
  content: " ";
  left: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.section-content-and-images .section__image {
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  padding: clamp(20px, 3vw, 32px);
  position: relative;
  z-index: 2;
}
.section-content-and-images .section__image:first-child {
  margin: 27px 8px 0 96px;
  transform: rotate(8deg);
  z-index: 3;
}
.section-content-and-images .section__image:last-child {
  margin: -28px 96px 0 8px;
  transform: rotate(-8deg);
}
.section-content-and-images .section__image strong {
  display: block;
  position: relative;
  width: 100%;
}
.section-content-and-images .section__image span + span {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.section-content-and-images .section__image span + span img {
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: center center;
  position: absolute;
  top: 0;
  width: 100%;
}
.section-content-and-form {
  padding-block: 50px 102px;
  position: relative;
  width: 100%;
}
.section-content-and-form:before {
  background-color: #fff;
  bottom: 0;
  content: " ";
  left: 0;
  position: absolute;
  right: 0;
  top: 60%;
}
.section-content-and-form .section__wrap {
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
  position: relative;
  width: 100%;
  z-index: 2;
}
.section-content-and-form .section__image {
  width: 100%;
}
.section-content-and-form .section__image img {
  aspect-ratio: 1/0.245;
  display: block;
  object-fit: cover;
  object-position: center;
  width: 100%;
}
.section-content-and-form .section__inner {
  display: flex;
  flex-wrap: wrap;
  padding: clamp(20px, 10vw, 80px);
}
.section-content-and-form .section__inner-content {
  font-size: 18px;
  line-height: 1.66;
  padding-right: clamp(20px, 10vw, 80px);
  width: 50%;
}
.section-content-and-form .section__inner-content h1,
.section-content-and-form .section__inner-content h2 {
  color: var(--c-red-hex, red);
  font-family: var(--ff-play-fair, "sans-serif");
  font-size: clamp(32px, 8vw, 46px);
  font-style: italic;
  font-weight: 400;
  line-height: 1.17;
  margin-bottom: 16px;
}
.section-content-and-form .section__inner-content p {
  margin-bottom: 10px;
}
.section-content-and-form .section__inner-content > :last-child {
  margin-bottom: 0;
}
.section-content-and-form .section__inner-form {
  width: 50%;
}
.section-content-and-form .form-steps > form {
  width: 100%;
}
.section-content-and-form .form-steps .form__fields {
  margin: -16px -8px;
}
.section-content-and-form .form-steps .form__fields > * {
  padding: 16px 8px;
}
.section-content-and-form .form-steps .form__field--radio > span > label {
  flex-grow: unset;
}
.section-content-and-form .form-steps .form__action {
  margin-top: 32px;
}
.section-content-and-form .form-steps .form__action > * {
  flex-grow: 1;
}
.section-content-and-form .form-steps .form__field--error:after {
  left: 10px;
  right: 10px;
  top: calc(100% - 14px);
}
.section-list-contacts {
  background-color: var(--c-darkred-hex);
  color: #fff;
  overflow: hidden;
  padding-block: clamp(60px, 7vw, 96px);
  position: relative;
  text-align: center;
  width: 100%;
}
.section-list-contacts .section__list > ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: -20px;
  padding: 0;
  position: relative;
}
.section-list-contacts .section__list > ul > li {
  flex-grow: 1;
  padding: 20px;
  width: calc(100% / 3);
}
.section-list-contacts .section__list > ul > li > :last-child {
  margin-bottom: 0;
}
.section-list-contacts .section__list h4 {
  font-family: var(--ff-montserrat, "sans-serif");
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 16px;
  text-transform: uppercase;
}
.section-list-contacts .section__list p {
  font-size: 18px;
  line-height: 1.66;
}
.section-list-contacts .section__list a {
  color: #fff;
  text-decoration: underline;
}
.shell.shell--small {
  --shell-max-width: 1145px;
  --shell-gutter-large: 36px;
}
.shell.shell--medium {
  --shell-max-width: 1196px;
  --shell-gutter-large: 36px;
}
.shell.shell--large {
  --shell-max-width: 1440px;
  --shell-gutter-large: 36px;
}
.dropdown-category {
  position: relative;
}
.dropdown-category .dropdown__label {
  align-items: center;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  display: grid;
  font-size: 16px;
  gap: 20px;
  grid-template-columns: auto 21px;
  line-height: 1.625;
  padding: 10px 16px;
  transition: border-color 0.4s;
}
.dropdown-category.is-visible .dropdown__label,
.dropdown-category:hover .dropdown__label {
  border-color: var(--c-charcoal);
}
.dropdown-category .dropdown__label:after {
  background: url(../media/svg/icon-arrow-down.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: block;
  height: 7px;
  margin: 0 auto;
  transition: transform 0.4s;
  width: 12px;
}
.dropdown-category.is-visible .dropdown__label:after {
  transform: rotate3d(1, 0, 0, 180deg);
}
.dropdown-category .dropdown__content {
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.16);
  left: 0;
  max-height: 310px;
  min-width: 100%;
  opacity: 0;
  overflow-y: scroll;
  padding: 19px 16px;
  pointer-events: none;
  position: absolute;
  top: calc(100% + 2px);
  transition: opacity 0.4s;
  width: max-content;
  z-index: 3;
}
.dropdown-category.is-visible .dropdown__content {
  opacity: 1;
  pointer-events: all;
}
.dropdown-category .dropdown__content ul {
  display: grid;
  gap: 23px;
}
.dropdown-category .dropdown__content input[type="checkbox"],
.dropdown-category .dropdown__content input[type="radio"] {
  appearance: none;
  display: none;
  visibility: hidden;
}
.dropdown-category .dropdown__content input[type="checkbox"] ~ label,
.dropdown-category .dropdown__content input[type="radio"] ~ label {
  display: block;
  font-size: 16px;
  line-height: 1.2;
  padding-left: 26px;
  position: relative;
}
.dropdown-category
  .dropdown__content
  input[type="checkbox"]
  ~ label:hover:before,
.dropdown-category .dropdown__content input[type="radio"] ~ label:hover:before {
  border-color: #353535;
}
.dropdown-category .dropdown__content input[type="checkbox"] ~ label:before {
  border: 1px solid #7e7e7e;
  border-radius: 4px;
  content: "";
  height: 18px;
  left: 0;
  position: absolute;
  top: 0;
  transition: background-color 0.15s, border-color 0.15s;
  width: 18px;
}
.dropdown-category
  .dropdown__content
  input[type="checkbox"]:checked
  ~ label:before {
  background-color: #d9201e;
  border-color: #d9201e;
}
.dropdown-category .dropdown__content input[type="checkbox"] ~ label:after {
  border: solid #fff;
  border-width: 0 2px 2px 0;
  content: "";
  height: 10px;
  left: 7px;
  opacity: 0;
  position: absolute;
  top: 3px;
  transform: rotate(45deg);
  transition: opacity 0.15s;
  width: 5px;
}
.dropdown-category
  .dropdown__content
  input[type="checkbox"]:checked
  ~ label:after {
  opacity: 1;
}
.dropdown-category .dropdown__content input[type="radio"] ~ label:before {
  border: 1px solid #7e7e7e;
  border-radius: 50%;
  content: "";
  height: 18px;
  left: 0;
  position: absolute;
  top: 0;
  transition: background-color 0.15s, border-color 0.15s;
  width: 18px;
}
.dropdown-category
  .dropdown__content
  input[type="radio"]:checked
  ~ label:before {
  background-color: #d9201e;
  border-color: #d9201e;
}
.dropdown-category .dropdown__content input[type="radio"] ~ label:after {
  background-color: #fff;
  border-radius: 50%;
  content: "";
  height: 8px;
  left: 5px;
  opacity: 0;
  position: absolute;
  top: 5px;
  transition: opacity 0.15s;
  width: 8px;
}
.dropdown-category
  .dropdown__content
  input[type="radio"]:checked
  ~ label:after {
  opacity: 1;
}
.section-category-products {
  background-color: #fff;
  padding-block: 60px;
}
.section-category-products h2 {
  color: #4a4541;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.31;
}
.section-category-products .section__head {
  margin-bottom: 8px;
  text-align: center;
}
.section-category-products .section__head > :last-child {
  margin-bottom: 0;
}
.section-category-products .section__head:last-child {
  margin-bottom: 0;
}
.section-category-products .section__body {
  display: grid;
  gap: 59px 24px;
  grid-template-columns: repeat(3, 1fr);
}
@-moz-document url-prefix() {
  .product-specs .product__row {
    min-width: 100%;
  }
}
@supports (-moz-appearance: none) {
  .has-max-height {
    scrollbar-color: var(--c-charcoal) transparent;
    scrollbar-width: thin;
  }
}
@supports (-moz-appearance: none) {
  .slider-product-popup .slider__pagination {
    scrollbar-color: var(--c-charcoal) transparent;
    scrollbar-width: thin;
  }
}
.ico-grid {
  background-image: url(../../assets/images/ico-grid.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  height: 14px;
  width: 14px;
}
.ico-list {
  background-image: url(../../assets/images/ico-list.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px 12px;
  height: 12px;
  width: 16px;
}
.section-list-products {
  background: #fff;
  padding-block: 80px;
  width: 100%;
}
.section-list-products .shell {
  display: flex;
}
.section-list-products .section__aside {
  padding-right: clamp(20px, 10vw, 60px);
  width: 370px;
}
.section-list-products .section__aside > * {
  display: block;
  overflow: hidden;
  padding-right: clamp(10px, 10vw, 24px);
  position: sticky;
  top: var(--header-height, 107px);
}
.section-list-products .section__aside > * {
  max-height: calc(100svh - var(--header-height, 107px));
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
  padding-block: 64px;
}
.section-list-products .section__aside > ::-webkit-scrollbar-thumb {
  border: 4px solid #fff;
}
.section-list-products .section__list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}
.section-list-products .section__list:not(:first-child) {
  width: calc(100% - 370px);
}
.section-list-products .section__list-products {
  overflow: hidden;
  position: relative;
  width: 100%;
}
.section-list-products .section__list-products > ul {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
}
.section-list-products .section__list-products > ul > li {
  width: 100%;
}
.section-list-products .section__list-products.grid > ul {
  margin: -30px -12px;
}
.section-list-products .section__list-products.grid > ul > li {
  padding: 30px 12px;
  width: calc(100% / 3);
}
.section-list-products .section__list-products.list > ul {
  margin: -20px 0;
}
.section-list-products .section__list-products.list > ul > li {
  padding: 20px 0;
}
.section-list-products .custom-select .input-box > select {
  padding-right: 40px;
}
.article-item {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.article-item .article__image {
  aspect-ratio: 1/1;
  border: 1px solid #e0e0e0;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.article-item .article__image a {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  text-decoration: none;
  top: 0;
}
.article-item .article__image img {
  height: 100%;
  left: 0;
  object-fit: contain;
  object-position: center center;
  position: absolute;
  top: 0;
  transition: transform var(--theme-transition-duration);
  width: 100%;
}
.article-item .article__group__head {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.article-item .article__group__head-title h3,
.article-item .article__group__head-title h6 {
  color: #38342e;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.44;
  margin-bottom: 0;
}
.article-item .article__group__head-title a {
  color: #38342e;
  text-decoration: none;
  transition: color var(--theme-transition-duration);
}
.article-item .article__group__head-list:not(:last-child) {
  padding-bottom: 3px;
  width: 100%;
}
.article-item .article__group__head-list > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.article-item .article__group__head-list span {
  align-items: center;
  background-color: #efefef;
  color: var(--c-charcoal);
  display: flex;
  font-size: 14px;
  line-height: 1.57;
  min-height: 30px;
  padding: 2px 8px;
}
.article-item .article__group__head-list strong {
  font-weight: 400;
}
.article-item .article__group-price {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.article-item .article__group-price h4 {
  font-family: var(--ff-nunito-sans);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.33;
  margin-bottom: 0;
}
.article-item .article__group-price p {
  align-items: center;
  display: flex;
  font-size: 14px;
  gap: 4px;
  line-height: 1.71;
  margin-bottom: 0;
}
.article-item .article__group-price p span {
  color: #7a736d;
  display: block;
  position: relative;
}
.article-item .article__group-price p span:before {
  background-color: #7a736d;
  content: " ";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
  top: 50%;
}
.article-item .article__group-price p strong {
  color: var(--c-red-hex, red);
}
.section {
  position: relative;
  width: 100%;
}
.section .section__head {
  text-align: center;
  width: 100%;
}
.section .section__head:not(:last-child) {
  margin-bottom: clamp(24px, 3vw, 40px);
}
.section .section__head h6 {
  color: var(--c-charcoal);
  font-family: var(--ff-montserrat);
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 700;
  margin-bottom: 0;
  text-transform: uppercase;
}
.section .section__head h2 {
  color: var(--c-red-hex);
  font-family: var(--ff-play-fair);
  font-size: clamp(28px, 3vw, 36px);
  font-style: italic;
  font-weight: 400;
}
.section .section__head h1 {
  color: var(--c-red-hex);
  font-family: var(--ff-play-fair);
  font-size: clamp(28px, 3vw, 36px);
  font-style: italic;
  font-weight: 400;
}
.section .section__head > :last-child {
  margin-bottom: 0;
}
.section-articles {
  padding-top: clamp(45px, 5vw, 60px);
  position: relative;
  width: 100%;
}
.section-articles.background-white.padding-block-normal {
  padding-top: clamp(45px, 6vw, 80px);
}
.section-articles .shell {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(24px, 3vw, 40px);
}
.section-articles__title {
  margin-right: auto;
  order: 1;
  width: auto;
}
.section-articles__title h2 {
  font-family: var(--ff-montserrat);
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  margin-bottom: 0;
}
.section-articles__title h6 {
  font-size: 18px;
  font-weight: 700;
}
.section-articles__title h6:last-child {
  margin-bottom: -12px;
  position: relative;
}
.section-articles__head {
  text-align: center;
  width: 100%;
}
.section-articles__head h2 {
  color: var(--c-red-hex);
  font-family: var(--ff-play-fair);
  font-size: clamp(28px, 3vw, 36px);
  font-style: italic;
  font-weight: 400;
}
.section-articles__head > :last-child {
  margin-bottom: 0;
}
.section-articles__action {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: flex-end;
  margin-left: auto;
  order: 2;
  padding-block: 8px;
  text-align: right;
  width: auto;
}
.section-articles__grid {
  display: grid;
  gap: clamp(40px, 6vw, 80px);
  order: 3;
  width: 100%;
}
.section-articles__grid--type-left-large-article {
  grid-template-columns: calc(50% - 134px) 1fr;
}
.section-articles__grid--type-articles {
  grid-template-columns: 1fr;
}
.section-articles__col {
  display: flex;
  justify-content: flex-start;
}
.section-articles__col--1of1 {
  flex-direction: column;
  gap: clamp(32px, 3vw, 40px);
}
.section-articles__col--1of1 > * {
  width: 100%;
}
.section-articles__col--1of2 {
  flex-wrap: wrap;
  gap: clamp(32px, 3vw, 40px);
}
.section-articles__col--1of2 > * {
  width: calc(50% - (clamp(32px, 3vw, 40px) / 2)) !important;
}
.section-articles__col--1of4 {
  flex-wrap: wrap;
  gap: clamp(40px, 4vw, 60px) 25px;
}
.section-articles__col--1of4 > * {
  width: calc(25% - (25px / 1.33)) !important;
}
.section-articles.background-white + .section-articles.background-white {
  padding-top: 27px;
}
.section-articles.background-white + .section-articles.background-white:before {
  background-color: #e0e0e0;
  content: " ";
  display: block;
  height: 1px;
  margin-inline: auto;
  max-width: 1440px;
  position: relative;
  width: 100%;
}
.section-articles.background-white + .section-articles.background-white:before {
  top: calc(32px - clamp(60px, 7vw, 96px));
}
.ico-arrow {
  display: inline-block;
  height: 7px;
  position: relative;
  width: 12px;
}
.ico-arrow:before {
  background-image: url(../images/ico-arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: " ";
  display: block;
  height: inherit;
  transition: transform var(--theme-transition-duration);
  width: inherit;
}
.ico-arrow--right:before {
  transform: rotate(180deg);
}
.link {
  align-items: center;
  color: var(--c-red-hex);
  display: inline-flex;
  font-size: 0;
  gap: 8px;
  line-height: 0;
}
.link > span {
  font-size: 16px;
  font-weight: 600;
  line-height: 1;
}
.link > i {
  transition: transform var(--theme-transition-duration);
}
.article-main {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.article-main > a {
  bottom: 0;
  font-size: 0;
  left: 0;
  line-height: 0;
  position: absolute;
  right: 0;
  text-decoration: none;
  top: 0;
  z-index: 10;
}
.article-main__image {
  aspect-ratio: 1/0.564;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.article-main__image img {
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  transition: transform var(--theme-transition-duration);
  width: 100%;
}
.article-main__body {
  width: 100%;
}
.article-main__body > * {
  max-width: 506px;
}
.article-main__body h3 {
  color: var(--c-charcoal);
  font-family: var(--ff-nunito-sans);
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 8px;
  transition: color var(--theme-transition-duration);
}
.article-main__body h4 {
  color: var(--c-red-hex);
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 11px;
}
.article-main__body h6 {
  color: var(--c-red-hex);
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 11px;
}
.article-main__body h6:first-child {
  margin-top: 4px;
}
.article-main__body h4:first-child {
  margin-top: 4px;
}
.article-main__body p {
  color: var(--c-charcoal);
  font-size: 16px;
  line-height: 1.62;
}
.article-main__body > :last-child {
  margin-bottom: 0;
}
.article-main__action {
  background-color: var(--c-darkred-hex);
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: center;
  min-height: 100%;
  overflow: hidden;
  padding-block: 40px;
  padding-inline: clamp(24px, 3vw, 40px);
  position: relative;
  width: 100%;
}
.article-main__action-background {
  bottom: 0;
  left: 0;
  opacity: 0.4;
  position: absolute;
  right: 0;
  top: 0;
}
.article-main__action-background img {
  height: calc(100% - 50px);
  left: 0;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  width: 100%;
}
.article-main__action-background:after {
  background: linear-gradient(
    to bottom,
    rgba(153, 28, 31, 0.5) 0,
    rgba(153, 28, 31, 1) 100%
  );
  bottom: 50px;
  content: " ";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.article-main__action-background ~ * {
  position: relative;
  z-index: 10;
}
.article-main__action-icon i {
  align-items: center;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  height: 48px;
  justify-content: center;
  width: 48px;
}
.article-main__action-icon svg {
  display: block;
  height: auto;
  width: 20px;
}
.article-main__action-content p {
  font-size: 16px;
  line-height: 1.62;
}
.article-main--large {
  gap: clamp(16px, 2vw, 24px);
}
.article-main--medium {
  gap: 16px;
}
.article-main--medium .article-main__body h3 {
  font-size: clamp(16px, 2vw, 18px);
  line-height: 1.37;
}
.article-main--medium .article-main__body > * {
  max-width: 327px;
}
.article-main--medium-alt {
  gap: 16px;
}
.article-main--medium-alt .article-main__body h3 {
  font-size: clamp(16px, 2vw, 18px);
  line-height: 1.37;
}
.article-main--medium-alt .article-main__body > * {
  max-width: 327px;
}
.section-entry {
  padding-block: clamp(60px, 6vw, 96px);
}
.section-entry__body {
  width: 100%;
}
.section-entry__body h2 {
  font-family: var(--ff-montserrat);
  font-size: clamp(28px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 16px;
}
.section-entry__body h3 {
  font-family: var(--ff-montserrat);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 16px;
}
.section-entry__body h4 {
  font-family: var(--ff-montserrat);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 16px;
}
.section-entry__body h1:not(:first-child),
.section-entry__body h2:not(:first-child),
.section-entry__body h3:not(:first-child),
.section-entry__body h4:not(:first-child),
.section-entry__body h5:not(:first-child),
.section-entry__body h6:not(:first-child) {
  margin-top: 24px;
}
.section-entry__body p,
.section-entry__body ul {
  font-size: 16px;
  line-height: 1.62;
  margin-bottom: 16px;
}
.section-entry__body ul:not([class]) {
  margin-left: 22px;
}
.section-entry__body ul:not([class]) li:not(:last-child) {
  margin-bottom: 10px;
}
.section-entry__body ul:not([class]) {
  list-style: disc;
}
.section-entry__body p a:not([class]) {
  text-decoration: underline;
}
.section-entry__body > :last-child {
  margin-bottom: 0;
}
.section-list-guides {
  padding-block: clamp(32px, 4vw, 60px);
  width: 100%;
}
.section-list-guides .shell {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 2vw, 28px);
}
.section-list-guides__head h6 {
  font-size: 18px;
  font-weight: 700;
}
.section-list-guides__head > :last-child {
  margin-bottom: 0;
}
.section-list-guides__head ~ .section-list-guides__head {
  padding-top: 20px;
}
.section-list-guides__grid {
  display: grid;
  gap: clamp(16px, 2vw, 24px);
  grid-template-columns: repeat(3, 1fr);
}
.section-list-guides__grid > .article-guide {
  min-height: 0;
}
.article-guide {
  align-items: center;
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.12);
  display: flex;
  gap: 16px;
  min-height: 100%;
  overflow: hidden;
  padding: 16px;
  position: relative;
  width: 100%;
}
.article-guide > a {
  bottom: 0;
  font-size: 0;
  left: 0;
  line-height: 0;
  position: absolute;
  right: 0;
  text-indent: -4000px;
  top: 0;
  z-index: 10;
}
.article-guide__image {
  aspect-ratio: 1/1;
  min-width: clamp(90px, 7vw, 100px);
  position: relative;
  width: clamp(90px, 7vw, 100px);
}
.article-guide__image img {
  display: block;
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  width: 100%;
}
.article-guide__body {
  width: 100%;
}
.article-guide__body h6 {
  color: var(--c-red-hex);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.57;
  margin-bottom: clamp(3px, 1vw, 8px);
  transition: color var(--theme-transition-duration);
}
.article-guide__body p {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.37;
}
.article-guide__body > :last-child {
  margin-bottom: 0;
}
.section-list-services {
  padding-block: 60px;
  position: relative;
  width: 100%;
}
.section-list-services .shell {
  display: grid;
  gap: clamp(24px, 4vw, 55px);
  grid-template-columns: repeat(3, auto);
}
.section-list-services__col {
  align-items: center;
  display: flex;
  gap: 16px;
}
.section-list-services__image {
  align-items: center;
  background-color: #fbe9e9;
  border-radius: 50%;
  display: flex;
  height: 48px;
  justify-content: center;
  max-width: 48px;
  min-width: 48px;
}
.section-list-services__image img {
  display: block;
  height: auto;
  width: 24px;
}
.section-list-services__content {
  width: 100%;
}
.section-list-services__content h6 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66;
  margin-bottom: 0;
}
.section-list-services__content p {
  font-size: 16px;
  line-height: 1.62;
}
.section-list-services__content p a {
  color: var(--c-red-hex);
  text-decoration: underline;
}
.section-list-services__content > :last-child {
  margin-bottom: 0;
}
.section-contacts {
  position: relative;
  width: 100%;
  z-index: 3;
}
.form-steps {
  background: #fff;
  box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.12);
  padding-block: 40px;
  padding-inline: clamp(16px, 3vw, 40px);
}
.section-contacts .shell {
  display: flex;
}
.section-contacts__form:not(:last-child) {
  padding-right: clamp(40px, 7vw, 100px);
  width: calc(100% - clamp(280px, 26vw, 388px));
}
.section-contacts__aside {
  width: clamp(280px, 26vw, 388px);
}
.section-contacts.background-white
  + section.section-articles.background-light-gray {
  padding-block: clamp(50px, 6vw, 50px) clamp(50px, 6vw, 50px);
}
.block-widget {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.block-widget__title h6 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 0;
  text-transform: uppercase;
}
.block-widget__title h2 {
  color: var(--c-red-hex);
  font-family: var(--ff-play-fair);
  font-size: clamp(28px, 3vw, 36px);
  font-style: italic;
  font-weight: 400;
  margin-bottom: 35px;
}
.block-widget__content p {
  font-size: clamp(16px, 2vw, 18px);
  line-height: 1.62;
}
.block-widget__article {
  background-color: #fff;
  border: 1px solid #ccc;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.block-widget__article > * {
  width: 100%;
}
.block-widget__article > :last-child {
  padding-bottom: 24px;
}
.block-widget__article-image {
  min-height: 216px;
  overflow: hidden;
  position: relative;
}
.block-widget__article-image a {
  display: block;
  font-size: 0;
  line-height: 0;
  min-height: inherit;
  text-indent: -4000px;
}
.block-widget__article-image img {
  height: 100%;
  left: 0;
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  width: 100%;
}
.block-widget__article-content {
  padding-inline: 24px;
}
.block-widget__article-content h6 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66;
  margin-bottom: 8px;
}
.block-widget__article-content h6 a {
  color: var(--c-charcoal);
  text-decoration: none;
}
.block-widget__article-content p {
  font-size: 16px;
  line-height: 1.62;
}
.block-widget__article-content > :last-child {
  margin-bottom: 0;
}
.block-widget__article-action {
  margin-top: -5px;
  padding-inline: 24px;
}
.block-widget__article-action .link-arrow {
  font-size: 16px;
}
.block-widget__article-action .link-arrow:before {
  top: 13px;
}
.block-widget__article-action .link-arrow:after {
  top: 11px;
}
.block-widget__article-image {
  margin: -1px -1px -1px 0;
}
.block-widget__list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.block-widget__list-row {
  align-items: center;
  align-items: center;
  display: flex;
  gap: 16px;
}
.block-widget__list-row h6 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66;
  margin-bottom: 0;
}
.block-widget__list-row h3 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66;
  margin-bottom: 0;
}
.block-widget__list-row p {
  font-size: 16px;
  line-height: 1.62;
}
.block-widget__list-row p a {
  text-decoration: underline;
}
.block-widget__list-row > i {
  align-items: center;
  background-color: #fbe9e9;
  border-radius: 50%;
  display: flex;
  height: 48px;
  justify-content: center;
  min-width: 48px;
  width: 48px;
}
.block-widget__list-row > blockquote:not(:first-child) {
  width: calc(100% - 48px);
}
.block-widget__list-row > blockquote > :last-child {
  margin-bottom: 0;
}
.block-widget__articles {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.block-widget__articles blockquote {
  background-color: #fff;
  box-shadow: 0 6px 24px 0 rgba(0, 0, 0, 0.06);
  padding: 24px;
}
.block-widget__articles blockquote > i {
  align-items: center;
  background-color: #fbe9e9;
  border-radius: 50%;
  display: block;
  display: flex;
  height: 72px;
  justify-content: center;
  margin-bottom: 24px;
  width: 72px;
}
.block-widget__articles blockquote > p {
  font-size: 16px;
  line-height: 1.62;
  margin-bottom: 16px;
}
.block-widget__articles blockquote > h6 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.66;
  margin-bottom: 8px;
}
.block-widget__articles blockquote > :last-child {
  margin-bottom: 0;
}
.block-widget__articles blockquote .link-arrow {
  font-size: 16px;
}
.block-widget--entry + .block-widget--entry {
  border-top: 1px solid var(--c-lightgray);
  margin-top: 24px;
  padding-top: 24px;
}
.block-widget--article:not(:first-child) {
  margin-top: 48px;
}
.block-widget--list-services:not(:last-child) {
  margin-bottom: clamp(60px, 5vw, 75px);
}
.section-contact-list .shell {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, 1fr);
}
.section-contact-list__col {
  align-items: center;
  background-color: #fff;
  box-shadow: 0 6px 24px 0 rgba(0, 0, 0, 0.06);
  display: flex;
  gap: 16px;
  line-height: 1.67;
  min-height: 100%;
  padding: clamp(16px, 2vw, 23px);
  width: 100%;
}
.section-contact-list__col blockquote h6 {
  color: var(--c-charcoal);
  font-family: var(--ff-montserrat);
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 700;
  margin-bottom: 6px;
  margin-bottom: 0;
  text-transform: uppercase;
}
.section-contact-list__col blockquote p {
  font-size: clamp(16px, 2vw, 18px);
  word-break: break-word;
}
.section-contact-list__col blockquote a {
  color: var(--c-red-hex);
  text-decoration: none;
}
.section-contact-list__col > i {
  align-items: center;
  background-color: #fbe9e9;
  border-radius: 50%;
  display: flex;
  height: 48px;
  justify-content: center;
  min-width: 48px;
  width: 48px;
}
.section-box {
  width: 100%;
}
.section-box__inner {
  align-items: center;
  display: flex;
  gap: clamp(16px, 2vw, 24px);
  padding-block: 40px;
  padding-inline: clamp(24px, 4vw, 60px);
}
.section-box__inner > :not(.section-box__icon) {
  flex-grow: 1;
}
.section-box__icon {
  align-items: center;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  height: 72px;
  justify-content: center;
  min-width: 72px;
  width: 72px;
}
.section-box__icon img {
  display: block;
  height: auto;
  width: 37px;
}
.section-box__title {
  min-width: clamp(250px, 31vw, 455px);
  width: auto;
}
.section-box__title h4 {
  font-family: var(--ff-montserrat);
  font-size: 24px;
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 8px;
}
.section-box__title p {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.62;
}
.section-box__title > :last-child {
  margin-bottom: 0;
}
.section-box__title p {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.62;
}
.section-box__title + .section-box__content {
  padding-left: clamp(10px, 2vw, 28px);
}
.section-box__content {
  width: 100%;
}
.section-box__content p {
  font-size: 14px;
  line-height: 1.57;
}
.section-title-alt {
  text-align: center;
  width: 100%;
}
.section-title-alt h1 {
  color: var(--c-red-hex);
  font-family: var(--ff-play-fair);
  font-size: clamp(32px, 4vw, 46px);
  font-style: italic;
  font-weight: 400;
}
.section-title-alt > * > :last-child {
  margin-bottom: 0;
}
.section-box-content-and-media {
  position: relative;
  width: 100%;
}
.section-box-content-and-media__inner {
  background-color: #fff;
  box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.12);
  display: flex;
  min-height: 420px;
  width: 100%;
}
.section-box-content-and-media__content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-block: auto;
  padding-block: clamp(40px, 6vw, 80px);
  padding-inline: clamp(16px, 4vw, 60px);
  width: calc(50% + 12px);
}
.section-box-content-and-media__content-entry {
  width: 100%;
}
.section-box-content-and-media__content-entry h6 {
  font-family: var(--ff-montserrat);
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 700;
  line-height: 1.37;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.section-box-content-and-media__content-entry h2 {
  color: var(--c-red-hex);
  font-family: var(--ff-montserrat);
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: clamp(1px, 1vw, 15px);
}
.section-box-content-and-media__content-entry p {
  font-size: clamp(14px, 2vw, 16px);
  line-height: 1.62;
  margin-bottom: clamp(3px, 1vw, 14px);
}
.section-box-content-and-media__content-entry p strong {
  font-weight: 700;
}
.section-box-content-and-media__content-entry p strong + strong {
  background-color: #fbe9e9;
  border-radius: 4px;
  color: var(--c-red-hex);
  display: inline-block;
  letter-spacing: 1px;
  padding: 1px 8px;
  vertical-align: middle;
}
.section-box-content-and-media__content-entry p strong:first-child:last-child {
  font-size: 16px;
}
.section-box-content-and-media__content-entry > :last-child {
  margin-bottom: 0;
}
.section-box-content-and-media__media {
  font-size: 0;
  line-height: 0;
  pointer-events: none;
  position: relative;
  width: calc(50% - 12px);
}
.section-box-content-and-media__content-images {
  align-items: center;
  display: flex;
  gap: 8px;
}
.section-box-content-and-media__content-images img {
  display: block;
  height: clamp(32px, 3vw, 40px);
  width: auto;
}
.section-box-content-and-media.background-gray
  + section.section-box-content-and-media.background-gray,
.section-box-content-and-media.background-white
  + section.section-box-content-and-media.background-white,
.section-box-content-and-media.background-white-gray
  + section.section-box-content-and-media.background-gray {
  padding-top: clamp(40px, 4vw, 60px);
}
.section-content-and-images {
  background-color: #fff;
  margin-bottom: 75px;
  padding-block: 80px;
  position: relative;
  width: 100%;
}
.section-content-and-images > * {
  align-items: center;
  display: flex;
}
.shell--max {
  --shell-max-width: 1388px;
  --shell-gutter: 26px;
  width: 100%;
}
.shell {
  margin: 0 auto;
  max-width: calc(var(--shell-max-width) + (2 * var(--shell-gutter)));
  padding: 0 var(--shell-gutter);
}
.section-content-and-images .section__content {
  display: flex;
  flex: none;
  flex-direction: column;
  gap: 24px;
  padding-inline: 0 60px;
  position: relative;
  width: calc(50% + 32px);
  z-index: 10;
}
.section__content {
  padding: 0 24px;
}
.section-content-and-images .section__content-entry {
  color: #544f4a;
  font-size: 18px;
  line-height: 1.66;
}
.section-content-and-images .section__images::before {
  aspect-ratio: 1/1;
  background-color: #efefef;
  border-radius: 50%;
  content: " ";
  left: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.section-content-and-images .section__content-entry h1 {
  color: #d9201e;
  font-family: var(--ff-play-fair, "sans-serif");
  font-size: clamp(32px, 4vw, 46px);
  font-style: italic;
  font-weight: 400;
  line-height: 1.17;
  margin-bottom: 16px;
  max-width: 530px;
}
.section-content-and-images .section__content-entry p {
  margin-bottom: 16px;
}
.section-content-and-images .section__images {
  font-size: 0;
  line-height: 0;
  pointer-events: none;
  position: relative;
  width: calc(50% - 32px);
}
.section-content-and-images .section__image:last-child {
  margin: -28px 96px 0 8px;
  transform: rotate(-8deg);
}
.section-content-and-images .section__image:first-child {
  margin: 27px 8px 0 96px;
  transform: rotate(8deg);
  z-index: 3;
}
.section-content-and-images .section__image {
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  padding: clamp(20px, 3vw, 32px);
  position: relative;
  z-index: 2;
}
.section-content-and-images .section__image strong {
  display: block;
  position: relative;
  width: 100%;
}
.section-content-and-images .section__image span + span {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.section__content-entry > ul {
  list-style: disc;
  margin-left: 25px;
}
label.required:after,
span.required:after {
  color: #d9201e;
  font-weight: 700;
}
.col-main {
  background: #efefef;
}
section.section-webform {
  margin: 0 auto;
  max-width: calc(1388px + (2 * 26px));
  padding: 0 12px;
  width: 100%;
}
input#field55 {
  width: 50% !important;
}
.buttons-set button.button {
  background-color: #d9201e;
  border: 2px solid #d9201e;
  border-radius: 4px;
  color: #fff;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  height: 54px;
  letter-spacing: 2px;
  line-height: 1;
  padding: 0 21px;
  text-transform: uppercase;
  transition: background 0.4s, color 0.4s;
}
.buttons-set button.button:hover {
  background-color: transparent;
  color: #d9201e;
}
.buttons-set p.required {
  font-size: 12px;
}
input[type="file"] {
  background: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  color: #544f4a;
  font-size: 14px;
  height: 48px;
  line-height: 1;
  padding: 0 16px;
  padding-block: 12px;
  width: 100%;
}
.g-recaptcha {
  float: right;
  margin-bottom: 40px;
}
.section__head:not(:last-child) {
  margin-bottom: 24px;
}
.section__head {
  font-size: 16px;
  line-height: 1.625;
  text-align: center;
  width: 100%;
}
.webform_main {
  background-color: #fff;
  margin-bottom: 70px;
  padding: clamp(20px, 7vw, 84px);
}
.legend {
  border-bottom: none !important;
  color: #544f4a;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.5;
  margin-bottom: 0;
  text-transform: uppercase;
}
.form-list input.input-text {
  background: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  color: #544f4a;
  font-size: 14px;
  height: 48px;
  line-height: 1;
  padding: 0 16px;
  transition: color var(--theme-transition-duration),
    border var(--theme-transition-duration);
  width: 100% !important;
}
.form-list label {
  font-family: Nunito;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  min-width: calc(100% + 6px);
  width: 100%;
}
.fieldset-15 .form-list .field {
  padding: 16px 10px 16px 0 !important;
  width: 307px !important;
}
.buttons-set {
  border-color: none !important;
}
.list-select {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.list-select li.control {
  align-items: center;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  flex-grow: 1;
  min-height: 48px;
  padding: 6px 10px;
  width: calc((100% / 3) - 9px);
}
.list-select li.control:hover {
  background-color: #f9f9f9;
}
.list-select li.control input[type="radio"] {
  accent-color: #d9201e;
  margin-left: 6px;
  margin-right: 8px;
}
.list-select li.control:has(input[type="radio"]:checked) {
  background-color: rgba(217, 32, 30, 0.1);
  border-color: #d9201e;
}
h6 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.11;
  margin-bottom: 0;
}
.fieldset-15 > .form-list > li.fields > .field > label > span {
  display: none;
}
.main-container > .std blockquote {
  font-style: normal !important;
}
.section-contact-list__col blockquote {
  font-style: normal !important;
  margin: 0 !important;
  padding: 0 !important;
}
.section-contact-list__col blockquote p {
  font-style: normal !important;
  margin: 0 !important;
  padding: 0 !important;
}
.webforms-fields-comment {
  color: #857e78;
  display: block;
  font-family: Nunito;
  font-size: 14px;
  font-style: italic;
  line-height: 1.57;
  margin: 0 !important;
  width: 100%;
}
.field > label > span {
  color: #857e78;
}
.field label {
  align-items: center;
  display: block;
}
.field .tooltip-icon {
  background-image: url(../assets/media/images/ico-tooltip.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  display: inline-block;
  height: 14px;
  margin-left: 21px;
  position: inherit !important;
  vertical-align: middle;
  width: 14px;
  z-index: 99999;
}
.field label span {
  margin-right: 5px;
}
.buttons-set {
  border: none !important;
}
.input-with-suffix {
  position: relative;
}
.webforms-fields-86 {
  width: 100% !important;
}
#field86 {
  height: 160px;
  line-height: 1.57;
  padding-block: 10px;
  resize: none;
  width: 100%;
}
#field86 input {
  background: #fff;
  border: 1px solid #d4d4d4;
  border-radius: 4px;
  color: #544f4a;
  font-size: 14px;
  line-height: 1;
  padding: 16px 16px;
  transition: color var(--theme-transition-duration),
    border var(--theme-transition-duration);
  width: 100%;
}
.webform_main {
  padding: clamp(20px, 5vw, 84px);
}

@media (max-width: 1512px) {
  .section-articles.background-white
    + .section-articles.background-white:before {
    margin-inline: 36px;
    max-width: none;
    width: auto;
  }
}
@media (max-width: 1279px) {
  .section-category-products .section__body {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 1200px) {
  .shell {
    --shell-gutter: var(--shell-gutter-tablet);
  }
  .shell--max {
    --shell-gutter: var(--shell-gutter-tablet);
  }
}
@media (max-width: 1100px) {
  .form-steps .form__steps {
    padding-right: 20px;
    width: 190px;
  }
  .form-steps .form__field > span[data-width="half"] {
    max-width: 100%;
  }
  .section-content-and-images .section__image {
    padding: 20px;
  }
  .section-content-and-images .section__image:first-child {
    margin: 14px 4px 0 40px;
  }
  .section-content-and-images .section__image:last-child {
    margin: -14px 40px 0 4px;
  }
  .section-list-contacts .section__list > ul > li {
    width: 50%;
  }
  .section-list-products .section__aside {
    padding-right: 20px;
    width: 300px;
  }
  .section-list-products .section__list:not(:first-child) {
    width: calc(100% - 300px);
  }
  .section-list-products .section__list-products.grid > ul > li {
    width: 50%;
  }
}
@media (max-width: 1024px) {
  .shell.shell--small {
    --shell-gutter-large: 42px;
  }
  .shell.shell--medium {
    --shell-gutter-large: 42px;
  }
  .shell.shell--large {
    --shell-gutter-large: 42px;
  }
  .section-category-products h2 {
    font-size: 30px;
  }
  .section-articles__col--1of4 {
    flex-wrap: wrap;
    gap: clamp(32px, 3vw, 40px);
  }
  .section-articles__col--1of4 > * {
    width: calc(50% - (clamp(32px, 3vw, 40px) / 2)) !important;
  }
  .section-list-guides__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .section-contact-list .shell {
    grid-template-columns: 1fr;
  }
  .section-contact-list__col blockquote h6 {
    margin-bottom: 4px;
  }
  .section-contact-list.background-gray-white:before {
    display: none;
  }
  .section-contact-list.background-gray-white + .padding-block-large {
    padding-top: clamp(60px, 7vw, 120px);
  }
}
@media (max-width: 1023px) {
  .article-list .article__title {
    padding: 0 25px 19px;
  }
  .article-list .article__content {
    padding: 30px;
  }
  .section-image-content .section__inner {
    grid-template-columns: 1fr 1fr;
  }
  .section-image-content .section__content {
    padding: 50px;
  }
  .section-text-image .section__inner {
    grid-template-columns: 1fr;
  }
  .section-text-image .section__image {
    margin-inline: auto;
    width: 80%;
  }
}
@media (max-width: 985px) {
  .section-form {
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    padding: 48px 0;
  }
  .section-form .section__head {
    display: none;
  }
  .section-form .section__form {
    padding: 0;
  }
  .form-steps .form__steps {
    margin-bottom: 3px;
    padding-right: 0;
    width: 100%;
  }
  .form-steps .form__steps ul {
    flex-direction: row;
    gap: 8px;
    justify-content: center;
  }
  .form-steps .form__steps li {
    font-size: 0;
    gap: 0;
    line-height: 0;
  }
  .form-steps .form__steps li:before {
    font-size: 14px;
    line-height: 1;
  }
  .form-steps .form__steps p {
    color: var(--c-red-hex, red);
    display: block;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.57;
    margin-top: 16px;
    text-align: center;
    text-transform: uppercase;
  }
  .form-steps .form__fields {
    margin: -16px 0;
  }
  .form-steps .form__fields > * {
    padding: 16px 0;
  }
  .form-steps .form__fields--alt {
    margin: -16px -8px;
  }
  .form-steps .form__fields--alt > * {
    padding: 16px 8px;
  }
  .form-steps .form__fields--alt .form__field--error:after {
    left: 8px;
    right: 8px;
  }
  .form-steps .form__field--half {
    width: 100%;
  }
  .form-steps .form__field--1of3 {
    width: 50%;
  }
  .form-steps .form__field--error:after {
    left: 0;
    right: 0;
    top: calc(100% - 16px);
  }
  .form-steps .form__action {
    gap: 16px;
    justify-content: space-between;
    margin-top: 48px;
  }
  .form-steps .form__action-link {
    border-color: var(--c-red-hex, red);
    flex-grow: 1;
    justify-content: center;
    padding-right: 12px;
    width: 50%;
  }
  .section-content-and-form {
    background-color: #fff;
    padding-block: 40px 48px;
  }
  .section-content-and-form:before {
    display: none;
  }
  .section-content-and-form .section__wrap {
    box-shadow: none;
  }
  .section-content-and-form .section__image {
    margin-inline: -26px;
    width: auto;
  }
  .section-content-and-form .section__image img {
    aspect-ratio: 1/0.608;
  }
  .section-content-and-form .section__inner {
    flex-direction: column;
    padding: 0;
  }
  .section-content-and-form .section__inner-content {
    padding: 40px 0;
    width: 100%;
  }
  .section-content-and-form .section__inner-form {
    width: 100%;
  }
  .section-content-and-form .form-steps .form__fields {
    margin: -12px 0;
  }
  .section-content-and-form .form-steps .form__fields > * {
    padding: 12px 0;
  }
  .section-content-and-form .form-steps .form__field--radio > span > label {
    flex-grow: 1;
  }
  .section-content-and-form .form-steps .form__action {
    margin-top: 24px;
  }
  .section-content-and-form .form-steps .form__field--error:after {
    left: 0;
    right: 0;
    top: calc(100% - 10px);
  }
  .section-list-products .section__aside {
    background-color: #fff;
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateY(100%);
    width: auto;
    z-index: 999999;
  }
  .section-list-products .section__aside {
    opacity: 0;
    padding: 0;
    transition: opacity var(--theme-transition-duration),
      visibility var(--theme-transition-duration),
      transform var(--theme-transition-duration);
    visibility: hidden;
  }
  .section-list-products .section__aside > * {
    max-height: 100svh;
    min-height: 100svh;
    padding: 0;
    position: relative;
    top: 0;
  }
  .section-list-products .section__list:not(:first-child) {
    width: 100%;
  }
  .section-articles__grid--type-left-large-article {
    grid-template-columns: 1fr;
  }
  .section-articles__action {
    align-items: flex-start;
    justify-content: flex-start;
    margin: 0;
    order: 4;
    text-align: left;
    width: 100%;
  }
  .section-articles__title h6:last-child {
    margin-bottom: 0;
  }
  .section-list-services .shell {
    grid-template-columns: repeat(2, auto);
  }
  .section-contacts .shell {
    flex-direction: column;
    gap: 40px;
  }
  .section-contacts__form:not(:last-child) {
    padding-right: 0;
    width: 100%;
  }
  .section-contacts__aside {
    width: 100%;
  }
}
@media (max-width: 900px) {
  .section-image-content-alt .section__image {
    margin-inline: auto;
    width: 80%;
  }
  .section-image-content-alt .section__content {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .shell {
    --shell-gutter: var(--shell-gutter-mobile);
  }
  .shell--max {
    --shell-gutter: var(--shell-gutter-mobile);
  }
  .search .search__field {
    width: 100%;
  }
  .article-list {
    padding-block: 25px 40px;
  }
  .article-list .article__title {
    padding-bottom: 25px;
  }
  .article-list .article__title h2 {
    font-size: 16px;
    line-height: 1.5;
  }
  .article-list .article__content {
    font-size: 16px;
    line-height: 1.75;
    padding-inline: 24px;
  }
  .article-list .article__entry + .article__list {
    margin-top: 35px;
  }
  .article-list .article__list-entry {
    line-height: 1.5;
    margin-top: 5px;
  }
  .article-list .article__list li + li {
    margin-top: 12px;
  }
  .section-logos .section__inner {
    display: grid;
    gap: 22px 20px;
    grid-template-columns: repeat(3, 1fr);
    margin: 0;
  }
  .section-testimonials {
    margin-block: 60px;
  }
  .section-testimonials .section__body:not(:last-child) {
    margin-bottom: 39px;
  }
  .section-testimonials .section__head-top {
    margin-bottom: 10px;
  }
  .section-socials {
    padding-block: 45px 35px;
  }
  .section-socials .section__inner {
    display: block;
  }
  .section-socials .section__head:not(:last-child) {
    margin-bottom: 28px;
  }
  .section-socials .section__head h4 {
    text-align: center !important;
  }
  .socials-new {
    flex-direction: column;
    margin: 0;
  }
  .socials-new .socials__main {
    margin: 0;
    padding: 0;
  }
  .socials-new .socials__main li a {
    height: 50px;
    width: 50px;
  }
  .socials-new .socials__main li a svg {
    font-size: 18px;
  }
  .socials-new .socials__aside {
    border-left: none;
    border-top: 1px solid #707070;
    margin-inline: auto;
    margin-top: 38px;
    max-width: 310px;
    padding: 0;
    padding-top: 38px;
    width: 100%;
  }
  .socials-new .socials__box {
    font-size: 32px;
    justify-content: center;
  }
  .section-title {
    padding-block: 42px 252px;
  }
  .section-title .section__content {
    margin-top: 32px;
  }
  .section-title .section__content span {
    font-size: 16px;
    line-height: 1.18;
    margin-bottom: 3px;
  }
  .section-title .section__content h1 {
    font-size: 32px;
    line-height: 1.375;
    margin-bottom: 11px;
  }
  .section-products {
    padding-bottom: 65px;
  }
  .section-products .section__inner {
    gap: 32px;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }
  .section-image-content .section__inner {
    display: flex;
    flex-direction: column-reverse;
  }
  .section-image-content .section__content {
    flex: unset;
    justify-content: start;
    padding: 41px 23px 46px 26px;
  }
  .section-image-content .section__image img {
    aspect-ratio: 375/240;
  }
  .section-image-content .section__content h2 {
    font-size: 28px;
    line-height: 1.42;
  }
  .section-image-content .section__content p {
    font-size: 16px;
    letter-spacing: -0.005em;
    line-height: 1.75;
  }
  .section-products-grid {
    padding-block: 58px;
  }
  .section-products-grid .section__head {
    margin-bottom: 23px;
  }
  .section-products-grid .section__head h2 span {
    font-size: 16px;
    line-height: 1.18;
    margin-bottom: 4px;
  }
  .section-products-grid .section__head h2 {
    font-size: 28px;
    line-height: 1.42;
  }
  .section-products-grid .section__entry {
    gap: 23px;
    grid-template-columns: 1fr;
    margin-bottom: 33px;
  }
  .section-products-grid .section__entry p {
    font-size: 16px;
    line-height: 1.5;
  }
  .section-products-grid .section__grid {
    gap: 17px 18px;
    grid-template-columns: repeat(auto-fit, minmax(158px, 1fr));
  }
  .section-products-grid .section__item h3 {
    bottom: 9px;
    font-size: 16px;
    left: 15px;
    line-height: 1.18;
  }
  .section-products-grid .section__item img {
    aspect-ratio: 163/153;
  }
  .section-image-content-alt {
    padding-block: 66px 90px;
  }
  .section-image-content-alt .section__inner {
    gap: 79px;
  }
  .section-image-content-alt .section__content h2 {
    font-size: 16px;
    margin-bottom: 16px;
  }
  .section-image-content-alt .section__content p {
    font-size: 16px;
    line-height: 1.75;
  }
  .section-image-content-alt .section__image:after {
    height: 276px;
    top: 44%;
    width: 286px;
  }
  .section-image-content-alt .section__image {
    width: 84.6%;
  }
  .section-image-content-alt .section__image img {
    border-width: 10px;
    bottom: 12px;
    left: 2px;
  }
  .section-text-image {
    padding-block: 40px 64px;
  }
  .section-text-image .section__inner {
    gap: 30px;
  }
  .section-text-image .section__image-title {
    display: flex;
    flex-direction: column-reverse;
  }
  .section-text-image .section__image {
    margin-bottom: 54px;
    margin-top: 20px;
    width: 85.6%;
  }
  .section-text-image .section__image img {
    border-width: 10px;
    right: 0;
    width: 100%;
  }
  .section-text-image .section__image-title h2 span {
    font-size: 16px;
    line-height: 1.18;
  }
  .section-text-image .section__image-title h2 {
    font-size: 28px;
    line-height: 1.42;
    margin-bottom: 24px;
  }
  .section-text-image .section__image-title p {
    font-size: 16px;
    line-height: 1.75;
  }
  .section-text-image .section__text li h3 {
    font-size: 16px;
    line-height: 1.75;
  }
  .section-text-image .section__text li {
    margin-bottom: 26px;
  }
  .section-text-image .section__text li p {
    font-size: 16px;
    line-height: 1.75;
  }
  .section-testimonials.section-testimonials--alt {
    margin-block: 49px 88px;
  }
  .section-testimonials.section-testimonials--alt .section__head {
    margin-bottom: 22px;
  }
  .section-contact-socials {
    padding-block: 48px 40px;
  }
  .section-contact-socials .section__inner {
    gap: 24px;
  }
  .section-contact-socials .section__entry {
    width: 100%;
  }
  .section-contact-socials .section__entry h5 {
    text-align: center !important;
  }
  .socials-contacts {
    width: 100%;
  }
  .socials-contacts ul {
    gap: 15px;
    justify-content: center;
  }
  .socials-contacts ul a {
    height: 50px;
    width: 50px;
  }
  .form-steps .form__field--radio-alt > span {
    gap: 16px;
  }
  .form-steps .form__field--radio-alt > span > label {
    width: calc(50% - 16px);
  }
  .form-steps .form__field--select select[style] {
    left: 0;
    opacity: 1;
    position: relative;
  }
  .form-steps .form__field--select select[style] + .custom-select {
    display: none !important;
  }
  .label-tooltip > span {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
    font-size: 16px;
    left: 16px;
    line-height: 1.625;
    min-width: 0;
    padding: 24px;
    position: fixed;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
  }
  .label-tooltip > span:before {
    display: none;
  }
  .section-content-and-images {
    padding-block: 32px;
  }
  .section-content-and-images:first-child {
    padding-top: 38px;
  }
  .section-content-and-images > * {
    flex-direction: column-reverse;
    gap: 32px;
  }
  .section-content-and-images .section__content {
    padding-right: 0;
    width: 100%;
  }
  .section-content-and-images .section__images {
    margin-inline: 20px;
    width: auto;
  }
  .section-content-and-images .section__image {
    padding: 16px;
  }
  .section-list-contacts {
    text-align: left;
  }
  .section-list-contacts .section__list > ul > li {
    width: 100%;
  }
  .section-list-contacts .section__list > ul {
    margin: -24px 0;
  }
  .section-list-contacts .section__list > ul > li {
    padding: 24px 0;
  }
  .shell.shell--small {
    --shell-gutter-large: 16px;
  }
  .shell.shell--medium {
    --shell-gutter-large: 16px;
  }
  .shell.shell--large {
    --shell-gutter-large: 16px;
  }
  .section-category-products h2 {
    font-size: 24px;
    line-height: 1.29;
  }
  .section-category-products .section__head {
    margin-bottom: 9px;
  }
  .section-category-products .section__dropdown {
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 24px;
  }
  .section-category-products .section__dropdown:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .section-category-products .section__dropdown .dropdown__label {
    background-color: transparent;
    border: none;
    font-weight: 700;
    margin-bottom: 16px;
    padding: 0;
  }
  .section-category-products .section__dropdown .dropdown__label:after {
    display: none;
  }
  .section-category-products .section__dropdown .dropdown__content {
    background-color: transparent;
    box-shadow: none;
    opacity: 1;
    overflow: visible;
    padding: 0;
    pointer-events: all;
    position: static;
  }
  .section-category-products .section__dropdown .dropdown__content ul {
    gap: 16px;
  }
  .section-category-products .section__body {
    gap: 41px;
    grid-template-columns: 1fr;
  }
  .section-list-products .section__list-products.grid > ul > li {
    width: 100%;
  }
  .section-list-products + section.section-category-products {
    padding-top: 0;
  }
  .article-item {
    align-items: flex-start;
  }
  .article-item .article__image {
    width: 148px;
  }
  .article-item .article__group {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 16px;
    width: calc(100% - 148px);
  }
  .article-item .article__group__head-title h3,
  .article-item .article__group__head-title h6 {
    font-size: 16px;
    line-height: 1.62;
  }
  .article-item .article__group__head-list span {
    font-size: 12px;
    min-height: 26px;
  }
  .article-item .article__group__head-list span:after {
    content: attr(data-suffix);
    display: inline;
  }
  .article-item .article__group__head-list strong {
    display: none;
  }
  .article-item .article__group-price p {
    font-size: 12px;
  }
  .section--grid .section__head h2 {
    line-height: 1.428;
  }
  .section-articles__action {
    padding-block: 18px 0;
  }
  .section-articles__head {
    text-align: left;
  }
  .section-articles__col--1of4 {
    gap: 32px;
  }
  .section-articles__col--1of2 > *,
  .section-articles__col--1of4 > * {
    width: 100% !important;
  }
  .section-articles.background-white + .section-articles.background-white {
    padding-top: 38px;
  }
  .section-articles.background-white
    + .section-articles.background-white:before {
    margin-inline: 16px;
    top: calc(12px - clamp(60px, 7vw, 96px));
  }
  .article-main__body p {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    overflow: hidden;
  }
  .article-main__body h6 {
    margin-bottom: 6px;
  }
  .article-main__body h6:first-child {
    margin-top: 0;
  }
  .article-main__body h4 {
    margin-bottom: 6px;
  }
  .article-main__body h4:first-child {
    margin-top: 0;
  }
  .article-main--medium {
    align-items: flex-start;
    flex-direction: row;
  }
  .article-main--medium .article-main__image {
    aspect-ratio: 1/0.667;
    max-width: 90px;
    min-width: 90px;
    width: 90px;
  }
  .article-main--medium .article-main__image + .article-main__body {
    width: calc(100% - 90px);
  }
  .article-main--medium .article-main__body > * {
    max-width: 100%;
  }
  .article-main--medium:not(:first-child) .article-main__action {
    margin-top: 5px;
  }
  .article-main--medium-alt {
    gap: 23px;
  }
  .article-main--medium-alt .article-main__body h6 {
    font-size: 16px;
    margin-bottom: 11px;
  }
  .section-list-guides__grid {
    grid-template-columns: repeat(1, 1fr);
  }
  .section-list-services .shell {
    grid-template-columns: repeat(1, auto);
  }
  .section-box__inner {
    align-items: flex-start;
    flex-direction: column;
  }
  .section-box__title {
    min-width: 0;
    width: 100%;
  }
  .section-box__title h4 {
    margin-bottom: 16px;
  }
  .section-box__title + .section-box__content {
    padding-left: 0;
  }
  .section-box-content-and-media__inner {
    flex-direction: column-reverse;
  }
  .section-box-content-and-media__content {
    width: 100%;
  }
  .section-box-content-and-media__media {
    aspect-ratio: 1/0.592;
    width: 100%;
  }
  .section__content-entry {
    margin: 20px;
  }
}
@media (min-width: 767px) {
  .grid .article-item {
    flex-direction: column;
    gap: 16px;
  }
  .grid .article-item .article__group {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .list .article-item {
    align-items: flex-start;
  }
  .list .article-item .article__image {
    width: 200px;
  }
  .list .article-item .article__group {
    overflow: hidden;
    padding-left: 20px;
    position: relative;
    width: calc(100% - 200px);
  }
}
@media (min-width: 985px) {
  .list .article-item .article__image {
    width: 300px;
  }
  .list .article-item .article__group {
    padding-left: 40px;
    width: calc(100% - 300px);
  }
}
@media only screen and (min-width: 1024px) {
  .fieldset.fieldset-15 li.fields {
    align-items: center;
    display: block;
    flex-wrap: nowrap;
    margin-bottom: 1.5rem;
  }
  .fieldset.fieldset-15 li.fields .field {
    margin-right: 10px;
  }
  .fieldset.fieldset-15 li.fields .field:last-child {
    margin-right: 0;
  }
}
@media (min-width: 1300px) {
  .list .article-item .article__group__head {
    float: left;
    padding-right: 40px;
    width: calc(100% - 260px);
  }
  .list .article-item .article__group-price {
    float: right;
    width: 260px;
  }
  .list .article-item .article__group-price {
    margin-bottom: 48px;
  }
}
@media (hover) and (pointer: fine) {
  .form-steps .form__entry p a:hover {
    text-decoration: underline;
  }
  .form-steps .form__action-link:hover:before {
    transform: translateX(-5px);
  }
  .form-steps .form__field--file input:hover,
  .form-steps .form__field--input input:hover,
  .form-steps .form__field--input textarea:hover,
  .form-steps .form__field--radio-alt > span > label:hover,
  .form-steps .form__field--radio > span > label:hover,
  .form-steps .form__field--select select:hover {
    border-color: var(--c-charcoal);
  }
  .custom-select .input-box > select:hover {
    border-color: var(--c-charcoal);
  }
  .custom-select__dropdown button:hover {
    background-color: #efefef;
  }
  .section-list-contacts .section__list a:hover {
    text-decoration: none;
  }
  .article-item .article__image a:hover img {
    transform: scale(0.9);
  }
  .article-item .article__group__head-title a:hover {
    color: var(--c-red-hex, red);
  }
  .link:hover {
    text-underline-offset: 2px;
  }
  .link:hover > i {
    transform: translateX(5px);
  }
  .article-main > a:hover ~ .article-main__image img {
    transform: scale(1.1);
  }
  .article-main > a:hover ~ .article-main__body h3 {
    color: var(--c-red-hex);
  }
  .section-entry__body p a:not([class]):hover {
    text-decoration: none;
  }
  .article-guide > a:hover ~ .article-guide__body h6 {
    color: var(--c-darkred-hex);
  }
  .section-list-services__content p a:hover {
    text-decoration: none;
  }
  .block-widget__article-content h6 a:hover {
    color: var(--c-red-hex);
  }
  .block-widget__list-row p a:hover {
    text-decoration: none;
  }
  .section-contact-list__col blockquote a:hover {
    text-decoration: underline;
  }
}



.fields {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;          
}



.fields > .type-textarea {
  flex: 0 0 100%;     
  box-sizing: border-box;
}


.fields > div {
  flex: 0 0 100%;     
  box-sizing: border-box;
}
/*.fieldset {
  width: calc(100% - 190px);
}*/

@media (min-width: 768px) {
  .fields > div {
    flex: 0 0 calc(50% - 10px);  
  }
}

.container.full-width {max-width:none !important;}
.section-testimonials {padding:100px 0 100px 0;background-color: #EFEFEF;}
.background-gray {background-color:#EFEFEF}
.form-steps .form__field > label > em {display:none;}
.block-widget--list-services > .block-widget__list > .block-widget__list-row {align-items:start !important;}
.block-widget--list-services > .block-widget__list > .block-widget__list-row > blockquote {font-style:normal}