html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; vertical-align: baseline; }

body, html { height: 100%; }

img, fieldset, a img { border: none; }

input[type="submit"], button { cursor: pointer; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type="submit"]::-moz-focus-inner, button::-moz-focus-inner { padding: 0; border: 0; }

textarea { overflow: auto; }

input, button { margin: 0; padding: 0; border: 0; }

div, input, textarea, select, button, h1, h2, h3, h4, h5, h6, a, span, a:focus { outline: none; }

ul, ol { list-style-type: none; }

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) { * { -webkit-text-size-adjust: none; } }
table { border-spacing: 0; border-collapse: collapse; width: 100%; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-tap-highlight-color: rgba(255, 255, 255, 0); -webkit-tap-highlight-color: transparent; }

input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill, textarea:-webkit-autofill, textarea:-webkit-autofill:hover, textarea:-webkit-autofill:focus, select:-webkit-autofill, select:-webkit-autofill:hover, select:-webkit-autofill:focus { -webkit-text-fill-color: inherit !important; -webkit-box-shadow: 0 0 0px 1000px #fff inset; }

a, a:before, a:after, a:hover, a:focus, .btn { text-decoration: none; color: inherit; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; }

body { font-family: "Open Sans", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size: 12px; line-height: 1.3; color: #4C3F33; background: #F4EAD2; }

.out { width: 100%; min-width: 320px; margin: 0 auto; }

.container { width: 100%; max-width: 1240px; padding: 0 20px; margin: 0 auto; }

.openmenu { overflow: hidden; height: 100%; position: fixed; left: 0; right: 0; top: 0; bottom: 0; }

.mobmenu-toggle { display: none; position: relative; top: -2px; width: 50px; height: 50px; margin-left: 15px; background: linear-gradient(90deg, #af733f, #9a6134); border-radius: 50%; order: 5; }
.mobmenu-toggle:before { content: ""; position: absolute; left: 0; top: 0; right: 0; bottom: 0; background: url(../img/icons/mobmenu-open.svg) center no-repeat; }

.mobmenu { background: #F4EAD2; display: none; position: fixed; left: 0; top: 0; height: 100%; width: 100%; overflow: hidden; z-index: 9; -webkit-transform: translateY(-120%); -o-transform: translateY(-120%); transform: translateY(-120%); -moz-transition: 0.6s; -o-transition: 0.6s; -webkit-transition: 0.6s; transition: 0.6s; text-align: center; }
.mobmenu .mobmenu-toggle { position: absolute; right: 20px; top: 28px; }
.mobmenu .mobmenu-toggle:before { background: url(../img/icons/mobmenu-close.svg) center no-repeat; }
.mobmenu .mobmenu__content { height: 100%; width: 100%; overflow: auto; position: relative; }
.mobmenu .container { padding: 40px 20px; min-height: 100%; min-height: 100%; display: flex; flex-direction: column; justify-content: space-between; position: relative; }
.mobmenu .mobmenu__title { font-size: 26px; color: #301B09; font-weight: 600; text-align: center; }
.mobmenu .mobmenu__nav { font-size: 20px; width: 100%; font-weight: 600; padding: 50px 0; }
.mobmenu .mobmenu__nav li + li { margin-top: 30px; }

.mobmenu.open { -webkit-transform: translateY(0); -o-transform: translateY(0); transform: translateY(0); }

.topline { background: #4C3F33; color: #fff; padding: 5px 0 7px; }
.topline .topline__abbreviation { text-align: right; font-size: 25px; font-weight: 600; line-height: 1; }

.languages { position: relative; }
.languages > a { display: inline-block; padding-right: 25px; position: relative; }
.languages > a:after { content: ""; position: absolute; right: 0; top: 50%; margin-top: -3px; width: 12px; height: 7px; background: url(../img/icons/arrow-menu-brown.svg) center center no-repeat; background-size: contain; }
.languages > a:hover { color: #000; }
.languages > a:hover:after { background: url(../img/icons/arrow-menu-black.svg) center center no-repeat; background-size: contain; }
.languages > ul { position: absolute; z-index: 1; left: -10px; top: 100%; min-width: 100%; padding: 10px; display: none; white-space: nowrap; }
.languages > ul li { display: inline-block; }
.languages > ul li + li { margin-left: 10px; }
.languages.open > a { color: #000; }
.languages.open > a:after { background: url(../img/icons/arrow-menu-black.svg) center center no-repeat; background-size: contain; -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); }

.title { color: #301B09; margin-bottom: 40px; }
.title h1, .title h2 { font-size: 46px; font-weight: 600; }
.title p { font-size: 16px; margin-top: 10px; line-height: 1.5; }

.title-complex { display: flex; align-items: center; justify-content: space-between; }
.title-complex .title__controls { padding-left: 30px; }

.swiper-navigation { display: flex; gap: 10px; }
.swiper-navigation .swiper-arrow { width: 50px; height: 50px; border-radius: 50%; -moz-transition: all 0.3s; -o-transition: all 0.3s; -webkit-transition: all 0.3s; transition: all 0.3s; border: 2px solid #4C3F33; }
.swiper-navigation .swiper-prev { background: url(../img/icons/prev-black.svg) center no-repeat; }
.swiper-navigation .swiper-prev:not(.swiper-button-disabled):hover { cursor: pointer; background: url(../img/icons/prev-white.svg) center no-repeat #4C3F33; }
.swiper-navigation .swiper-next { background: url(../img/icons/next-black.svg) center no-repeat; }
.swiper-navigation .swiper-next:not(.swiper-button-disabled):hover { cursor: pointer; background: url(../img/icons/next-white.svg) center no-repeat #4C3F33; }
.swiper-navigation .swiper-button-disabled { opacity: 0.6; }

.readmore { font-size: 16px; color: #301B09; padding-right: 34px; position: relative; display: inline-block; }
.readmore:after { content: ""; position: absolute; right: 0; top: 50%; margin-top: -8px; width: 16px; height: 16px; background: url(../img/icons/arrow-readmore.svg) center center no-repeat; background-size: contain; }
.readmore:hover:after { right: -5px; }

.consent { font-size: 14px; color: #301B09; line-height: 1.5; padding-top: 10px; }

.form-group > label { font-size: 16px; font-weight: 600; margin-bottom: 20px; display: block; color: #301B09; }
.form-group + .form-group { margin-top: 20px; }

.form-set { background: #F4EAD2; border-radius: 10px; overflow: hidden; }
.form-set .form-input { border-radius: 0; }

.form-input { position: relative; z-index: 1; background: #F4EAD2; border-radius: 10px; overflow: hidden; }
.form-input input[type="text"], .form-input input[type="email"], .form-input input[type="tel"], .form-input input[type="password"], .form-input textarea { width: 100%; height: 50px; padding: 0 20px; font-family: "Open Sans", sans-serif; font-weight: 400; font-size: 16px; color: #000; background: transparent; }
.form-input .placeholder { color: #301B09; position: absolute; left: 0; top: 0; height: 50px; display: flex; align-items: center; width: 100%; z-index: -1; font-size: 16px; padding: 0 20px; }
.form-input .placeholder span { color: #F43658; margin-left: 5px; }
.form-input textarea { height: 100px; border: 0; resize: none; padding: 14px 20px; }

.form-file { position: relative; z-index: 10; padding: 12px 20px 0; }
.form-file input[type="file"] { width: 100%; height: 100%; opacity: 0; position: absolute; left: 0; top: 0; z-index: -1; display: none; }
.form-file label { cursor: pointer; padding: 0 40px 0 0; margin: 0; font-size: 16px; font-weight: 400; color: #301B09; font-family: "Open Sans", sans-serif; position: relative; display: inline-block; border-top: 1px solid #DACDB9; width: 100%; text-align: right; height: 50px; display: flex; align-items: center; justify-content: flex-end; }
.form-file label:after { content: ""; position: absolute; right: 0; top: 50%; margin-top: -12px; width: 23px; height: 24px; background: url(../img/icons/clip.svg) center center no-repeat; background-size: contain; }

.form-radio { display: flex; align-items: center; gap: 40px; }

input[type="radio"] { display: none; }
input[type="radio"] + label { font-weight: normal; padding-left: 39px; position: relative; cursor: pointer; color: #301B09; font-size: 16px; }
input[type="radio"] + label:before { content: ""; background: transparent; border-radius: 6px; width: 24px; height: 24px; border: 1px solid #535460; position: absolute; left: 0; top: -3px; }
input[type="radio"]:checked + label { color: #000; }
input[type="radio"]:checked + label:before { background: url(../img/icons/check.svg) center no-repeat #4C3F33; border-color: #4C3F33; }

.btn { display: inline-block; text-align: center; white-space: nowrap; font-size: 16px; line-height: 1; border-radius: 50px; overflow: hidden; position: relative; z-index: 1; }

.btn-sm { padding: 17px 25px; }

.btn-md { padding: 22px 30px; min-width: 260px; }
.btn-md.btn-primary { padding: 20px 30px; }

.btn-default { background: transparent; position: relative; color: #fff; }
.btn-default:before, .btn-default:after { content: ""; position: absolute; left: 0; top: 0; right: 0; bottom: 0; }
.btn-default:before { background: linear-gradient(90deg, #af733f, #9a6134); z-index: -2; }
.btn-default:after { background: linear-gradient(90deg, #9a6134, #af733f); opacity: 0; z-index: -1; }
.btn-default:hover, .btn-default:focus, .btn-default:active { color: #fff; background: #8A5124; }
.btn-default:hover:after, .btn-default:focus:after, .btn-default:active:after { opacity: 1; }

.btn-primary { border: 2px solid transparent; background-image: linear-gradient(90deg, #af733f 0%, #9a6134 100%); background-origin: border-box; box-shadow: inset 0 100vw #E5D7BB; color: #301B09; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { color: #301B09; border-color: #8A5124; }

.header { padding: 35px 0; font-size: 18px; background: #E5D7BB; }
.header .container { display: flex; align-items: center; justify-content: space-between; }
.header .header__logo { font-size: 0; padding-right: 15px; }
.header .header__logo a { display: inline-block; }
.header .header__logo img { max-width: 100%; max-height: 60px; }
.header .header__nav { padding: 0 15px; margin: 0 auto; }
.header .header__nav ul { display: flex; font-size:16px; }
.header .header__nav li + li { margin-left: 18px; }
.header .header__nav a { white-space: nowrap; }
.header .header__nav a:hover { color: #000; }
.header .header__languages { padding: 0 15px; }
.header .header__login { padding: 0 15px; }
.header .header__login a { padding-right: 35px; position: relative; white-space: nowrap; }
.header .header__login a:after { content: ""; position: absolute; right: 0; top: 50%; margin-top: -9px; width: 20px; height: 19px; background: url(../img/icons/arrow-login-brown.svg) center center no-repeat; background-size: contain; }
.header .header__login a:hover { color: #000; }
.header .header__login a:hover:after { background: url(../img/icons/arrow-login-black.svg) center center no-repeat; background-size: contain; }
.header .header__button { padding-left: 15px; }

.offer { text-align: center; padding: 20px 0 0; background: #E5D7BB; }
.offer .offer__wrapp { max-width: 1080px; margin: 0 auto; position: relative; z-index: 1; }
.offer .offer__title h1 { font-size: 48px; font-weight: 600; }
.offer .offer__info { font-size: 18px; line-height: 1.5; margin-top: 20px; }
.offer .offer__info p + p { margin-top: 10px; }
.offer .offer__info a {text-decoration:underline;}
.offer .offer__info a:hover {color:#131211;}
.offer .offer__button { margin-top: 30px; }
.offer .offer__buttons { margin-top: 30px; display: flex; flex-wrap: wrap; gap: 30px; justify-content: center; align-items: center; }
.offer .offer__image { font-size: 0; margin-top: -4vw; }
.offer .offer__image img { width: 100%; }
.offer + .footer { margin-top: 0; }

.steps { margin-top: -12vw; text-align: center; position: relative; }
.steps .steps__wrapp { border-top: 1px solid #FEFAF2; border-radius: 60px; background: rgba(244, 234, 210, 0.3); -webkit-backdrop-filter: blur(30px); backdrop-filter: blur(30px); padding: 50px 30px; }
.steps .steps__list { display: flex; flex-wrap: wrap; margin: -10px -5px; }
.steps .steps__list .step { width: calc(25% - 10px); margin: 10px 5px; }

.step .step__icon { width: 100px; height: 100px; margin: 0 auto; border-radius: 50%; border: 2px solid #FDF9EE; background: linear-gradient(90deg, #e3c299, #b88a62); padding: 15px; display: flex; align-items: center; justify-content: center; font-size: 0; }
.step .step__icon img { max-width: 100%; max-height: 100%; }
.step .step__name { margin-top: 20px; font-size: 24px; color: #301B09; font-weight: 600; }
.step .step__descr { font-size: 18px; line-height: 1.5; color: #4C3F33; margin-top: 16px; }

.important { margin-top: 40px; background: #F4EAD2; overflow: hidden; }
.important .container { display: flex; align-items: center; }
.important .title { margin-bottom: 20px; }
.important .important__content { width: 50%; position: relative; z-index: 1; }
.important .important__content .important__buttons { margin-top: 40px; display: flex; flex-wrap: wrap; gap: 10px; }
.important .important__text { font-size: 18px; line-height: 1.5; }
.important .important__text p + p { margin-top: 10px; }
.important .important__buttons { display: none; }
.important .important__image { width: 50%; padding-left: 60px; }
.important .important__image img { width: calc(50vw - 60px); min-width: 600px; }
.important .btn-primary { box-shadow: inset 0 100vw #F4EAD2; }

.gallery { margin-top: 90px; padding-top: 90px; border-top: 1px solid #CBC1AB; overflow: hidden; }
.gallery .gallery__carousel { padding: 0 35px; overflow: visible; }
.gallery .gallery__carousel .swiper-navigation { display: none; padding: 30px 20px 0; justify-content: center; }
.gallery .video { width: 33.33333%; max-width: 450px; }
.gallery .video__image { font-size: 0; border-radius: 16px; overflow: hidden; position: relative; }
.gallery .video__image:before { content: ""; display: block; padding-top: 66%; }
.gallery .video__image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.gallery .video__meta { padding: 20px 22px 0; }
.gallery .video__name { font-size: 22px; font-weight: 600; color: #301B09; }
.gallery .video__date { color: #535460; font-size: 16px; margin-top: 10px; }

.reviews { margin-top: 90px; padding-top: 90px; border-top: 1px solid #CBC1AB; overflow: hidden; }
.reviews .reviews__carousel { padding: 0 35px; overflow: visible; }
.reviews .reviews__carousel .swiper-navigation { display: none; padding: 30px 20px 0; justify-content: center; }
.reviews .review { width: 30%; max-width: 360px; background: #EADEC4; border-radius: 20px; padding: 30px; color: #301B09; height: auto; display: flex; flex-direction: column; }
.reviews .review__head { padding-right: 40px; position: relative; }
.reviews .review__head:after { content: ""; position: absolute; right: 0; top: 50%; margin-top: -13px; width: 24px; height: 26px; background: url(../img/icons/pr.svg) center center no-repeat; background-size: contain; }
.reviews .review__author p { font-size: 20px; font-weight: 600; }
.reviews .review__author span { margin-top: 4px; font-size: 16px; display: block; }
.reviews .review__text { margin-top: 30px; font-size: 16px; line-height: 1.5; color: #4C3F33; }
.reviews .review__detail { margin-top: auto; padding-top: 15px; }

.fancybox-bg { background: #4C3F33; }

.fancybox-is-open .fancybox-bg { opacity: 0.7; }

.fancybox-button { background: none; padding: 10px; color: #fff; }

.fancybox-infobar { display: none; }

.fancybox-button--arrow_left svg, .fancybox-button--arrow_right svg { display: none; }

.fancybox-button--arrow_left div { background: url(../img/icons/prev-white.svg) center no-repeat; }

.fancybox-button--arrow_right div { background: url(../img/icons/next-white.svg) center no-repeat; }

.modal { width: 100%; padding: 30px; border-radius: 20px; background: #F4EAD2; }
.modal .fancybox-close-small { position: absolute; right: 30px; top: 30px; width: 18px; height: 18px; background: url(../img/icons/close-modal-black.svg) center center no-repeat; background-size: contain; opacity: 1; padding: 0; }

.modal-review { max-width: 800px; }
.modal-review .review__author p { font-size: 20px; font-weight: 600; color: #301B09; padding-left: 35px; position: relative; }
.modal-review .review__author p:before { content: ""; position: absolute; left: 0; top: 50%; margin-top: -13px; width: 23px; height: 24px; background: url(../img/icons/pr-fill.svg) center center no-repeat; background-size: contain; }
.modal-review .review__author span { display: block; font-size: 16px; margin-top: 10px; }
.modal-review .review__image { font-size: 0; text-align: center; margin-top: 30px; }
.modal-review .review__image img { max-width: 100%; }

.footer { background: #E5D7BB; margin-top: 120px; }
.footer .container { display: flex; align-items: center; justify-content: space-between; }
.footer .footer__top { padding: 60px 0; }
.footer .footer__bottom { padding: 30px 0; border-top: 1px solid #F4EAD2; color: #535460; font-size: 16px; }
.footer .footer__logo { display: flex; align-items: center; max-width: 400px; padding-right: 15px; margin-right: auto; }
.footer .footer__logo a { display: inline-block; }
.footer .footer__logo img { max-width: 100%; width: 60px; x-max-height: 60px; }
.footer .footer__logo p { color: #4C3F33; font-size: 18px; font-weight: 600; margin-left: 15px; }
.footer .footer__contacts { padding-left: 15px; display: flex; align-items: center; }
.footer .footer__email { padding: 0 15px 0 0; font-size: 20px; }
.footer .footer__email a { color: #252527; }
.footer .footer__email a:hover { color: #000; x-text-decoration:underline; }
.footer .footer__socials { padding-left: 15px; }
.footer .footer__socials ul { display: flex; gap: 16px; }
.footer .footer__socials a { display: flex; align-items: center; justify-content: center; padding: 10px; width: 40px; height: 40px; border-radius: 50%; background: #F4EAD2; font-size: 0; }
.footer .footer__socials a img { max-width: 100%; max-height: 100%; }
.footer .footer__socials .icon_yt {x-width: 24px;}
.footer .footer__copy { padding-right: 15px; }
.footer .footer__links { padding-left: 15px; }
.footer .footer__links ul { display: flex; align-items: center; gap: 30px; }
.footer .footer__links a:hover { color: #000; }

.typeblock { background: #E5D7BB; overflow: hidden; padding: 0 0 40px; }
.typeblock .container { display: flex; align-items: center; }
.typeblock .title { margin-bottom: 30px; }
.typeblock .title h1 { font-size: 40px; }
.typeblock .typeblock__content { width: 50%; position: relative; z-index: 1; }
.typeblock .typeblock__image { width: 50%; }
.typeblock .typeblock__image img { width: 50vw; min-width: 945px; }
.typeblock + .footer { margin-top: 0; }
.typeblock .typeblock__form { max-width: 540px; }
.typeblock .typeblock__form .form-group + form {margin-top:28px;}
.typeblock .typeblock__form .form-group .consent {line-height:1.6;}
.typeblock .typeblock__form .typeblock__buttons .btn { flex: 1 0; min-width: 0; }
.typeblock .typeblock__button { padding-top: 10px; }
.typeblock .typeblock__buttons { display: flex; flex-wrap: wrap; gap: 20px; padding-top: 10px; }
.typeblock .typeblock__buttons .btn { min-width: 200px; }

@media screen and (max-width: 1239px) { .title { margin-bottom: 35px; }
  .title h1, .title h2 { font-size: 40px; }
  .container { max-width: 992px; }
  .btn-md { padding: 22px 25px; min-width: 240px; }
  .btn-md.btn-primary { padding: 20px 25px; }
  .form-radio { gap: 30px; }
  .topline .topline__abbreviation { font-size: 22px; }
  .languages > a { padding-right: 22px; }
  .languages > a:after { width: 10px; height: 6px; }
  .mobmenu-toggle, .mobmenu { display: block; }
  .header { padding: 30px 0; font-size: 16px; }
  .header .header__logo { margin-right: auto; }
  .header .header__button { padding-right: 15px; }
  .header .header__nav { display: none; }
  .header .header__nav li + li { margin-left: 15px; }
  .header .header__login a { padding-right: 30px; }
  .header .header__login a:after { width: 18px; height: 18px; }
  .header .header__login a { padding-right: 25px; }
  .header .header__login a:after { margin-top: -7px; width: 16px; height: 15px; }
  .offer .offer__wrapp { max-width: 1000px; }
  .offer .offer__title h1 { font-size: 42px; }
  .offer .offer__info { font-size: 16px; }
  .steps .steps__wrapp { border-radius: 50px; padding: 40px 30px; }
  .steps .steps__list { margin: -15px; }
  .steps .steps__list .step { width: calc(50% - 30px); margin: 15px; }
  .step .step__icon { width: 90px; height: 90px; }
  .step .step__name { font-size: 22px; }
  .step .step__descr { font-size: 16px; }
  .important .important__text { font-size: 16px; }
  .important .important__content .important__buttons { margin-top: 30px; }
  .important .important__image { width: 50%; padding-left: 40px; }
  .important .important__image img { width: calc(50vw - 40px); min-width: 500px; }
  .typeblock .typeblock__image img { min-width: 850px; }
  .typeblock .typeblock__form { max-width: 450px; }
  .gallery { margin-top: 80px; padding-top: 80px; }
  .gallery .video__name { font-size: 24px; }
  .reviews { margin-top: 80px; padding-top: 80px; }
  .reviews .review { padding: 25px; }
  .footer { margin-top: 100px; }
  .footer .footer__top { padding: 50px 0; }
  .footer .footer__bottom { padding: 25px 0; }
  .footer .footer__logo { max-width: 350px; }
  .footer .footer__logo p { font-size: 18px; }
  .footer .footer__email { font-size: 18px; } }
@media screen and (max-width: 991px) { .btn-md { padding: 22px 25px; min-width: 220px; }
  .btn-md.btn-primary { padding: 20px 25px; }
  .title { margin-bottom: 30px; }
  .title h1, .title h2 { font-size: 34px; }
  .container { max-width: 768px; }
  .topline .topline__abbreviation { font-size: 18px; }
  .header { padding: 25px 0; }
  .offer .offer__wrapp { max-width: 860px; }
  .offer .offer__title h1 { font-size: 36px; }
  .steps .steps__wrapp { border-radius: 40px; padding: 30px; }
  .steps .steps__list { margin: -10px; }
  .steps .steps__list .step { width: calc(50% - 20px); margin: 10px; }
  .step .step__icon { width: 80px; height: 80px; }
  .step .step__name { font-size: 20px; }
  .important .important__content .important__buttons { margin-top: 20px; }
  .important .important__image { width: 50%; padding-left: 20px; }
  .important .important__image img { width: calc(50vw - 20px); min-width: 400px; }
  .gallery { margin-top: 70px; padding-top: 70px; }
  .gallery .video { width: 45%; max-width: 400px; }
  .gallery .video__name { font-size: 22px; }
  .reviews { margin-top: 70px; padding-top: 70px; }
  .reviews .review { padding: 20px; width: 45%; }
  .reviews .review__author p { font-size: 18px; font-weight: 600; }
  .footer { margin-top: 80px; }
  .footer .footer__top { padding: 40px 0; }
  .footer .footer__bottom { font-size: 14px; }
  .footer .footer__contacts { display: block; }
  .footer .footer__socials { padding: 15px 0 0; }
  .footer .footer__socials ul { justify-content: flex-end; }
  .footer .footer__logo { max-width: 300px; }
  .footer .footer__logo p { font-size: 16px; }
  .footer .footer__email { font-size: 16px; padding: 0; }
  .typeblock { padding: 20px 0 120px; position: relative; z-index: 1; }
  .typeblock .container { display: block; }
  .typeblock .title h1 { font-size: 34px; white-space: normal; }
  .typeblock .typeblock__content { width: 100%; }
  .typeblock .typeblock__image { position: absolute; width: 100%; z-index: -1; left: 0; bottom: 0; top: 0; background: url(../img/typeblock-bg.png) right bottom no-repeat; background-size: contain; }
  .typeblock .typeblock__image img { display: none; }
  .typeblock .typeblock__form { max-width: 540px; }
  .typeblock .typeblock__form .consent { max-width: 400px; }
  .typeblock-text { padding: 20px 0 0; }
  .typeblock-text .typeblock__content { max-width: 540px; margin: 0 auto; text-align: center; }
  .typeblock-text .typeblock__image { position: static; background: none; width: auto; margin: 0 -150px -18vw; }
  .typeblock-text .typeblock__image img { display: block; min-width: 0; width: 100%; }
  .typeblock-text .typeblock__form .consent { max-width: 100%; } }
@media screen and (max-width: 767px) { .title h1, .title h2 { font-size: 28px; }
  .container { max-width: 575px; }
  .offer .offer__title h1 { font-size: 30px; }
  .offer .offer__image { margin-top: -3vw; }
  .steps .steps__wrapp { border-radius: 30px; }
  .step .step__icon { width: 70px; height: 70px; }
  .step .step__name { font-size: 18px; }
  .important { text-align: center; }
  .important .container { display: block; }
  .important .important__content { width: 100%; }
  .important .important__content .important__buttons { display: none; }
  .important .important__image { width: 100%; padding: 0; }
  .important .important__image img { width: 100vw; min-width: 0; }
  .important .important__buttons { display: block; margin-top: 15px; }
  .important .important__buttons .btn { width: 100%; }
  .important .important__buttons .btn + .btn { margin-top: 10px; }
  .gallery { margin-top: 60px; padding-top: 60px; }
  .gallery .video { width: 60%; }
  .gallery .video__name { font-size: 20px; }
  .reviews { margin-top: 60px; padding-top: 60px; }
  .reviews .review { width: 60%; }
  .modal { padding: 20px; }
  .modal .fancybox-close-small { right: 20px; top: 20px; }
  .modal-review { max-width: 600px; }
  .modal-review .review__author p { font-size: 18px; padding-left: 30px; }
  .modal-review .review__author p:before { margin-top: -12px; width: 22px; height: 22px; }
  .footer { margin-top: 60px; }
  .footer .container { display: block; }
  .footer .footer__logo { display: flex; padding: 0; justify-content: center; max-width: 100%; }
  .footer .footer__contacts { padding: 20px 0 0; text-align: center; }
  .footer .footer__socials ul { display: flex; justify-content: center; }
  .footer .footer__copy { padding: 0; text-align: center; }
  .footer .footer__links { padding: 15px 0 0; }
  .footer .footer__links ul { justify-content: center; }
  .typeblock { padding: 20px 0 0; }
  .typeblock .title { text-align: center; }
  .typeblock .title h1 { font-size: 28px; }
  .typeblock .typeblock__image { position: static; background: none; width: auto; margin: 0 -150px -18vw; }
  .typeblock .typeblock__image img { display: block; min-width: 0; width: 100%; }
  .typeblock .typeblock__form .consent { max-width: 100%; } }
@media screen and (max-width: 574px) { .form-input input[type="text"], .form-input input[type="email"], .form-input input[type="tel"], .form-input input[type="password"], .form-input textarea { padding: 0 15px; font-size: 14px; }
  .form-input .placeholder { padding: 0 15px; font-size: 14px; }
  .form-input textarea { padding: 14px 15px; font-size: 14px; }
  .form-file { padding: 12px 15px 0; }
  .form-file label { padding: 0 35px 0 0; font-size: 14px; }
  .form-file label:after { margin-top: -11px; width: 22px; height: 22px; }
  .form-radio { display: block; }
  .form-radio p + p { margin-top: 15px; }
  .title h1, .title h2 { font-size: 26px; }
  .title-complex { text-align: center; display: block; }
  .title-complex .title__controls { display: none; }
  .mobmenu-toggle { margin-left: 10px; }
  .header .header__button { display: none; }
  .header .header__languages { order: 2; padding: 10px; }
  .header .header__login { font-size: 0; order: 1; padding: 10px; }
  .header .header__login a { padding: 0; display: inline-block; width: 24px; height: 24px; background: url(../img/icons/arrow-login-brown.svg) center center no-repeat; background-size: contain; background-size: 18px; }
  .header .header__login a:after { display: none; }
  .header .header__login a:hover { background: url(../img/icons/arrow-login-black.svg) center center no-repeat; background-size: contain; background-size: 18px; }
  .offer .offer__title h1 { font-size: 26px; }
  .offer .offer__image { margin-top: -2vw; }
  .offer .offer__buttons { display: block; }
  .offer .offer__buttons .btn { width: 100%; }
  .offer .offer__buttons .btn + .btn { margin-top: 20px; }
  .steps .steps__list { display: block; margin: 0; }
  .steps .steps__list .step { width: 100%; margin: 0; }
  .steps .steps__list .step + .step { margin-top: 30px; }
  .step .step__descr { margin-top: 10px; }
  .gallery .gallery__carousel { padding: 0 30px; }
  .gallery .gallery__carousel .swiper-navigation { display: flex; }
  .gallery .video { width: 100%; }
  .gallery .video__meta { padding: 15px 15px 0; }
  .gallery .video__name { font-size: 18px; }
  .gallery .video__date { font-size: 14px; }
  .reviews .reviews__carousel { padding: 0 30px; }
  .reviews .reviews__carousel .swiper-navigation { display: flex; }
  .reviews .review { width: 100%; max-width: 400px; }
  .typeblock .title h1 { font-size: 26px; }
  .typeblock .typeblock__image { margin: 0 -70px -18vw; }
  .typeblock .typeblock__image img { display: block; min-width: 0; width: 100%; }
  .typeblock .typeblock__form .consent { max-width: 100%; }
  .typeblock .typeblock__button .btn { width: 100%; }
  .typeblock .typeblock__buttons { display: block; }
  .typeblock .typeblock__buttons .btn { width: 100%; }
  .typeblock .typeblock__buttons .btn + .btn { margin-top: 20px; } }
@media screen and (min-width: 1360px) { .topline .container, .header .container { max-width: 1360px; }
  .header .header__nav li + li { margin-left: 30px; } }
@media screen and (min-width: 992px) { .openmenu { overflow: auto !important; height: auto !important; position: static !important; } }

/*
.video__image { position: relative; }
.video__image a { display:block; position:relative; }
*/
/* кружок play поверх */
.video__play{
  position:absolute; left:50%; top:50%;
  width:72px; height:72px; transform:translate(-50%,-50%);
  border-radius:50%;
  background: rgb(48 27 9 / 52%);
  box-shadow: 0 6px 16px rgba(0,0,0,.25), inset 0 0 0 2px rgba(255,255,255,.15);
  pointer-events:none; /* чтобы клики попадали по ссылке */
}
.video__play::before{
  content:"";
  position:absolute; left:30px; top:24px; /* центрируем треугольник в кружке */
  border-left:18px solid #fff;
  border-top:12px solid transparent;
  border-bottom:12px solid transparent;
  opacity: 0.8;
}
/* эффект наведения */
.video__image a:hover .video__play,
.video__image a:focus .video__play{
  background: rgba(48 27 9 / 62%);
  transform: translate(-50%,-50%) scale(1.05);
  transition: transform .3s ease, background .3s ease;
}
/* на очень маленьких экранах сделаем поменьше */
@media (max-width:480px){
  .video__play{ width:56px; height:56px; }
  .video__play::before{ left:22px; top:18px; border-left-width:16px; border-top-width:10px; border-bottom-width:10px; }
}


/* Контейнер статьи */
article.page {
    max-width: 800px;
    margin: 0 auto;
    padding: 2rem 1rem 4rem;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    line-height: 1.6;
    color: #1a1a1a;
    font-size: 16px;
}

/* Заголовок страницы */
article.page .entry-title {
    font-size: clamp(1.75rem, 1vw + 1.5rem, 2rem); /* ~28-32px */
    font-weight: 600;
    line-height: 1.2;
    color: #000;
    margin: 0 0 1rem;
}

/* Контент */
.entry-content p {
    margin: 1rem 0;
    color: #2a2a2a;
}

/* Жирный текст внутри p */
.entry-content p strong {
    font-weight: 600;
    color: #000;
}

/* Ссылки в тексте */
.entry-content a {
    color: #0055cc;
    text-decoration: underline;
    word-break: break-word;
}
.entry-content a:hover {
    text-decoration-color: #003a88;
}

/* Нумерованные списки верхнего уровня (ol.wp-block-list) */
.entry-content ol.wp-block-list {
    counter-reset: section-counter;
    list-style: none;
    margin: 1.5rem 0;
    padding-left: 0;
}

.entry-content ol.wp-block-list > li {
    position: relative;
    padding-left: 2.5rem;
    margin: 1rem 0 1.5rem;
    font-weight: 500;
    color: #000;
    line-height: 1.4;
}

/* Цифра пункта слева, кастомная */
.entry-content ol.wp-block-list > li::before {
    counter-increment: section-counter;
    content: counter(section-counter) ".";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 600;
    color: #4c3f33;
    line-height: 1.4;
    min-width: 2rem;
}

/* Текст внутри li после заголовка раздела */
.entry-content ol.wp-block-list > li {
    font-weight: 500;
}
.entry-content ol.wp-block-list > li br + * {
    font-weight: 400;
    color: #2a2a2a;
}

/* Маркированные списки (подпункты) */
.entry-content ul.wp-block-list {
    list-style: disc;
    margin: 0.5rem 0 1.5rem 0;
    padding-left: 1.5rem;
    color: #2a2a2a;
}

.entry-content ul.wp-block-list li {
    margin: 0.5rem 0;
    line-height: 1.5;
    font-weight: 400;
}

/* Вложенные списки (например ul внутри li ol) */
.entry-content li ul,
.entry-content li ol {
    margin-top: 0.5rem;
}

/* Последний блок "Contact" обычно выглядит плотным,
   дадим ему чуть больше воздуха снизу */
.entry-content ol.wp-block-list > li:last-child {
    margin-bottom: 2rem;
}

/* Адаптив */
@media (max-width: 480px) {
    article.page {
        padding-top: 1.5rem;
        padding-bottom: 3rem;
        font-size: 15px;
        line-height: 1.55;
    }

    article.page .entry-title {
        font-size: 1.6rem;
    }

    .entry-content ol.wp-block-list > li {
        padding-left: 2rem;
    }

    .entry-content ol.wp-block-list > li::before {
        min-width: 1.5rem;
        left: 0;
    }
}