/*
Theme Name: ПРОНАУ ГРУПП
Theme URI: https://pronau-gr.ru/
Author: ПРОНАУ ГРУПП
Description: Стартовая тема WordPress на основе вёрстки сайта ПРОНАУ ГРУПП.
Version: 1.3.0
Text Domain: pronau-group
*/

@font-face {
  font-family: "Metrika";
  src: url("assets/fonts/Metrika.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --ink: #171515;
  --green: #294f20;
  --green-dark: #1e3d17;
  --paper: #f8f7f3;
  --white: #fff;
  --line: rgba(41, 79, 32, 0.28);
  --radius: 24px;
  --shadow: 0 20px 60px rgba(18, 16, 16, 0.12);
  --serif: "Metrika", Arial, sans-serif;
  --sans: "Metrika", Arial, sans-serif;
}

/* Blog and cookie pages reconstructed from the original layouts */
.inner-page { margin: 0; color: #171515; background: #fff; font-family: "Metrika", Arial, sans-serif; line-height: 1.2; }
.inner-page main { overflow: hidden; }
.inner-header { position: fixed; z-index: 100; top: 0; left: 0; width: 100%; height: 87px; color: #171515; background: #fff; }
.inner-header__contacts { position: absolute; top: 13px; left: max(40px, calc(50% - 550px)); display: grid; font-size: 22px; line-height: 34px; }
.inner-header__contacts a:last-child { display: flex; align-items: center; gap: 7px; font-size: 18px; line-height: 20px; }
.inner-header__contacts span { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; color: #fff; background: #254b1a; font-size: 13px; }
.inner-header__brand { position: absolute; top: 16px; left: 50%; display: grid; width: 500px; justify-items: center; transform: translateX(-50%); }
.inner-header__brand strong { font-size: 24px; font-weight: 400; line-height: 37px; }
.inner-header__brand small { margin-top: 4px; font-size: 14px; line-height: 15px; white-space: nowrap; }
.inner-header__action { position: absolute; top: 23px; right: max(40px, calc(50% - 550px)); display: flex; width: 186px; height: 41px; align-items: center; justify-content: center; border-radius: 999px; color: #fff; background: #254b1a; font-size: 16px; }

.blog-page main { padding-top: 87px; }
.blog-title { position: relative; height: 152px; }
.blog-title h1 { position: absolute; top: 45px; left: 50%; margin: 0; font-size: 40px; font-weight: 400; line-height: 62px; transform: translateX(-50%); }
.blog-posts { position: relative; height: 562px; }
.blog-posts__grid { position: absolute; top: 32px; left: 50%; display: grid; width: 1100px; grid-template-columns: repeat(3, 341px); gap: 38px; transform: translateX(-50%); }
.original-post { position: relative; display: block; width: 341px; height: 487px; padding: 2px; overflow: hidden; border-radius: 16px; color: #fff; background: #171515; }
.original-post img { display: block; width: 337px; height: 321px; border-radius: 14px; object-fit: fill; }
.original-post strong { position: absolute; top: 342px; left: 17px; display: flex; width: 307px; height: 92px; align-items: center; justify-content: center; overflow: hidden; font-family: "Metrika", Arial, sans-serif; font-size: 20px; font-weight: 400; line-height: 23px; text-align: center; text-transform: uppercase; }
.original-post time { position: absolute; top: 441px; left: 17px; width: 307px; padding-top: 8px; border-top: 1px solid #fff; font-size: 14px; line-height: 18px; text-align: center; }

.blog-contact { position: relative; height: 439px; }
.blog-contact::before { content: ""; position: absolute; top: 15px; left: 50%; width: 1100px; height: 380px; border-radius: 15px; background: #111 url("assets/images/marble.webp") center/cover; transform: translateX(-50%); }
.blog-contact h2 { position: absolute; z-index: 1; top: 85px; left: 50%; width: 829px; height: 104px; margin: 0; color: #fff; font-size: 40px; font-weight: 400; line-height: 52px; text-align: center; transform: translateX(-50%); }
.blog-contact__form { position: absolute; top: 239px; left: 50%; display: grid; width: 916px; height: 50px; grid-template-columns: 198px 198px 198px 255px; gap: 20px; margin: 0; transform: translateX(-50%); }
.blog-contact__form label, .blog-contact__form input, .blog-contact__form button { width: 100%; height: 50px; }
.blog-contact__form input { padding: 0 20px; border: 1px solid #171515; border-radius: 0; color: #171515; background: #fff; font-size: 16px; outline: 0; }
.blog-contact__phone { position: relative; display: block; border: 1px solid #171515; background: #fff; }
.blog-contact__phone > span { position: absolute; z-index: 1; top: 0; left: 14px; display: flex; height: 48px; align-items: center; color: #171515; font-size: 16px; }
.blog-contact__phone input { border: 0; padding-left: 42px; }
.blog-contact__form button { border: 0; border-radius: 999px; color: #fff; background: #d6322d; font-size: 13px; }
.blog-contact__form .form__status { display: none; }
.blog-contact__consent { position: absolute; z-index: 1; top: 304px; left: 50%; width: 690px; height: 36px; margin: 0; color: #fff; font-size: 14px; line-height: 18px; text-align: center; transform: translateX(-50%); }
.blog-contact__consent a { text-decoration: underline; }

.inner-footer { position: relative; height: 134px; color: #fff; background: #151515; font-size: 14px; line-height: 22px; }
.inner-footer__company { position: absolute; top: 15px; left: max(40px, calc(50% - 538px)); width: 318px; }
.inner-footer__contacts { position: absolute; top: 15px; left: calc(50% - 60px); width: 318px; }
.inner-footer__blog { position: absolute; top: 15px; right: max(40px, calc(50% - 538px)); }
.inner-footer__copy { position: absolute; top: 101px; left: max(40px, calc(50% - 538px)); line-height: 18px; }
.inner-footer__cookie { position: absolute; top: 81px; left: calc(50% - 60px); line-height: 18px; }
.inner-footer__privacy { position: absolute; top: 101px; left: calc(50% - 60px); line-height: 18px; }
.inner-footer__top { position: absolute; top: 101px; right: max(40px, calc(50% - 538px)); line-height: 18px; }

.cookie-content { position: relative; height: 1150px; margin-top: 87px; }
.cookie-content h1, .cookie-content h2, .cookie-content p, .cookie-content ul { margin-top: 0; }
.cookie-content h1 { position: absolute; top: 27px; left: 50%; width: 1160px; height: 43px; margin-bottom: 0; font-size: 28px; font-weight: 700; line-height: 43px; transform: translateX(-50%); }
.cookie-content__intro { position: absolute; top: 110px; left: 50%; width: 1160px; height: 29px; margin-bottom: 0; font-size: 18px; line-height: 28px; transform: translateX(-50%); }
.cookie-content__intro a { color: #e7a39b; }
.cookie-content__what { position: absolute; top: 179px; left: 50%; width: 1160px; height: 34px; margin-bottom: 0; font-size: 22px; line-height: 34px; transform: translateX(-50%); }
.cookie-content__definition { position: absolute; top: 233px; left: 50%; width: 1160px; height: 31px; margin-bottom: 0; font-size: 20px; line-height: 31px; transform: translateX(-50%); }
.cookie-copy { position: absolute; left: 50%; width: 1160px; transform: translateX(-50%); }
.cookie-copy--first { top: 294px; }
.cookie-copy--second { top: 719px; }
.cookie-copy h2 { height: 34px; margin: 0 0 20px; font-size: 22px; line-height: 34px; }
.cookie-copy div { font-size: 20px; line-height: 31px; }
.cookie-copy ul { margin-bottom: 0; padding-left: 24px; }

.article-page main { padding-top: 87px; }
.original-article-hero { position: relative; height: 696px; background: #fff; }
.original-article-hero::before { content: ""; position: absolute; top: 56px; left: 50%; width: 678px; height: 442px; background-position: center; background-size: cover; transform: translateX(-50%); }
.article-page--gost .original-article-hero::before { background-image: url("assets/images/blog-gost.webp"); }
.article-page--cycle .original-article-hero::before { background-image: url("assets/images/blog-cycle.webp"); }
.article-page--marking .original-article-hero { height: 460px; }
.article-page--marking .original-article-hero::before { left: 50%; width: 1160px; height: 120px; background-image: url("assets/images/marking-banner.webp"); transform: translateX(-50%); }
.original-article-hero .breadcrumbs { position: absolute; top: 18px; left: 50%; width: 1160px; margin: 0; color: #9a9a9a; font-size: 12px; line-height: 18px; text-transform: none; transform: translateX(-50%); }
.article-page--gost .breadcrumbs::after { content: "  →  ГОСТ ТУ и СТО в чем разница: гайд для производителей косметики"; }
.article-page--cycle .breadcrumbs::after { content: "  →  Что значит «полный цикл производства косметики»"; }
.article-page--marking .breadcrumbs::after { content: "  →  Маркировка косметики «Честный знак» в 2026 году: как подготовиться и не остановить продажи"; }
.original-article-hero h1 { position: absolute; top: 508px; left: 50%; width: 895px; height: 100px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: 40px; font-weight: 400; line-height: 50px; text-align: center; text-transform: uppercase; transform: translateX(-50%); }
.original-article-hero::after { position: absolute; top: 618px; left: 50%; width: 1160px; height: 33px; color: #888; font-size: 20px; line-height: 33px; transform: translateX(-50%); }
.article-page--gost .original-article-hero::after { content: "24.05.2026"; }
.article-page--cycle .original-article-hero::after { content: "19.05.2026"; }
.article-page--marking .original-article-hero h1 { top: 186px; height: 186px; line-height: 62px; }
.article-page--marking .original-article-hero h1 { font-family: "Times New Roman", Times, serif; font-size: 38px; }
.article-page--marking .original-article-hero::after { content: "23.04.2026"; top: 382px; }

.article-page main > article.section { padding: 0; }
.article-page .page-content { width: 1160px; max-width: none; margin: 0 auto; font-family: "Times New Roman", Times, serif; }
.article-page .page-content p, .article-page .page-content li { font-size: 20px; line-height: 28px; }
.article-page .page-content p { margin: 0 0 15px; }
.article-page .page-content h2 { margin: 31px 0 15px; font-family: "Times New Roman", Times, serif; font-size: 35px; font-weight: 400; line-height: 45.5px; }
.article-page .page-content h3 { margin: 31px 0 15px; font-family: "Times New Roman", Times, serif; font-size: 30px; font-weight: 400; line-height: 39px; }
.article-page .page-content ul, .article-page .page-content ol { margin: 0 0 16px; padding-left: 24px; }
.article-page .page-content a { color: #d98e88; }
.article-page .page-content table { width: 100%; margin: 28px 0; border-collapse: collapse; font-size: 17px; line-height: 24px; }
.article-page .page-content th, .article-page .page-content td { padding: 12px 14px; border: 1px solid #171515; text-align: left; vertical-align: top; }
.article-page .page-content th { font-weight: 700; }
.article-contact { margin-top: 50px; }
.article-faq + .article-contact { margin-top: 0; }
.article-page--cycle .article-faq { margin-top: 422px; }
.article-page--gost .page-content table { height: 663px; }
.article-page--gost .article-contact { margin-top: 540px; }
.article-page--marking .article-contact { margin-top: 155px; }
.article-faq { width: 1100px; margin: 140px auto 35px; font-family: Arial, Helvetica, sans-serif; }
.article-faq details { min-height: 88px; border-top: 1px solid #171515; }
.article-faq details:last-child { border-bottom: 1px solid #171515; }
.article-faq summary { position: relative; min-height: 88px; padding: 36px 64px 26px 0; font-size: 15px; line-height: 20px; list-style: none; cursor: pointer; }
.article-faq summary::-webkit-details-marker { display: none; }
.article-faq summary::after { content: "+"; position: absolute; top: 25px; right: 0; display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: #fff; background: #254b1a; font-size: 28px; font-weight: 300; }
.article-faq details[open] summary::after { content: "−"; }
.article-faq p { margin: -18px 70px 26px 0; font-size: 16px; line-height: 24px; }
.inline-faq { width: 1100px; margin: 100px 30px 0; }
.inline-faq details { min-height: 92px; border-top: 1px solid #171515; }
.inline-faq details:last-child { border-bottom: 1px solid #171515; }
.inline-faq summary { position: relative; min-height: 92px; padding: 31px 64px 30px 0; font-size: 24px; line-height: 30px; list-style: none; cursor: pointer; }
.inline-faq summary::-webkit-details-marker { display: none; }
.inline-faq summary::after { content: "+"; position: absolute; top: 25px; right: 0; display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: #fff; background: #254b1a; font-family: Arial, sans-serif; font-size: 28px; }
.inline-faq details[open] summary::after { content: "−"; }
.inline-faq p { margin: -12px 70px 25px 0; font-size: 16px; line-height: 24px; }
.inline-faq--compact { margin-top: 47px; }
.article-page--marking .inline-faq details, .article-page--marking .inline-faq summary { min-height: 102px; }

@media (max-width: 479px) {
  .article-page main { padding-top: 48px; }
  .original-article-hero { height: 573px; }
  .original-article-hero .breadcrumbs { top: 16px; left: 20px; width: 350px; font-size: 10px; line-height: 14px; transform: none; }
  .original-article-hero::before { top: 58px; width: 350px; height: 288px; }
  .original-article-hero h1 { top: 366px; width: 340px; height: auto; font-size: 26px; line-height: 34px; }
  .original-article-hero::after { top: 510px; left: 20px; width: 350px; font-size: 16px; line-height: 24px; transform: none; }
  .article-page--marking .original-article-hero { height: 497px; }
  .article-page--marking .original-article-hero::before { top: 58px; width: 350px; height: 96px; }
  .article-page--marking .original-article-hero h1 { top: 177px; width: 350px; height: auto; font-size: 25px; line-height: 34px; }
  .article-page--marking .original-article-hero::after { top: 431px; }
  .article-page .page-content { width: 350px; }
  .article-page .page-content p, .article-page .page-content li { font-size: 16px; line-height: 23px; }
  .article-page .page-content p { margin-bottom: 14px; }
  .article-page .page-content h2 { margin: 28px 0 14px; font-size: 25px; line-height: 32px; }
  .article-page .page-content h3 { margin: 26px 0 14px; font-size: 21px; line-height: 28px; }
  .article-page .page-content ul, .article-page .page-content ol { padding-left: 20px; }
  .article-page .page-content table { display: block; overflow-x: auto; font-size: 14px; line-height: 20px; }
  .inline-faq { width: 330px; margin: 60px 10px 0; }
  .inline-faq details, .inline-faq summary { min-height: 82px; }
  .inline-faq summary { padding: 25px 50px 22px 0; font-size: 18px; line-height: 24px; }
  .article-contact { margin-top: 35px; }
  .article-page--gost .article-contact, .article-page--marking .article-contact { margin-top: 35px; }
  .article-faq { width: 350px; margin: 70px auto 25px; }
  .article-page--cycle .article-faq { margin-top: 70px; }
  .article-faq details, .article-faq summary { min-height: 82px; }
  .article-faq summary { padding: 27px 54px 23px 0; font-size: 15px; line-height: 20px; }
  .article-faq summary::after { top: 20px; width: 36px; height: 36px; }
}

@media (max-width: 479px) {
  .inner-header { height: 48px; }
  .inner-header__contacts, .inner-header__brand small { display: none; }
  .inner-header__brand { top: 8px; left: 22px; display: block; width: 148px; transform: none; }
  .inner-header__brand strong { font-size: 16px; line-height: 30px; white-space: nowrap; }
  .inner-header__action { top: 7px; right: 21px; width: 142px; height: 32px; font-size: 12px; }

  .blog-page main { padding-top: 48px; }
  .blog-title { height: 121px; }
  .blog-title h1 { top: 45px; font-size: 20px; line-height: 31px; }
  .blog-posts { height: 1114px; }
  .blog-posts__grid { top: 32px; width: 296px; grid-template-columns: 296px; gap: 14px; }
  .original-post { width: 300px; height: 337px; }
  .original-post img { width: 296px; height: 225px; border-radius: 14px; }
  .original-post strong { top: 237px; left: 17px; width: 266px; height: 80px; font-size: 17px; line-height: 20px; }
  .original-post time { top: 319px; left: 17px; width: 274px; padding-top: 3px; font-size: 14px; line-height: 16px; }

  .blog-contact { height: 627px; }
  .blog-contact::before { top: 15px; width: 374px; height: 566px; border-radius: 13px; }
  .blog-contact h2 { top: 65px; width: 286px; height: 78px; font-size: 20px; line-height: 26px; }
  .blog-contact__form { top: 193px; width: 272px; height: 260px; grid-template-columns: 272px; grid-template-rows: repeat(4, 50px); gap: 20px; }
  .blog-contact__form label, .blog-contact__form input { width: 272px; }
  .blog-contact__form button { width: 255px; }
  .blog-contact__consent { top: 468px; width: 285px; height: 64px; font-size: 12px; line-height: 16px; }
  .blog-contact__consent br { display: none; }

  .inner-footer { height: 402px; font-size: 14px; line-height: 18px; }
  .inner-footer__company { top: 15px; left: 45px; width: 300px; line-height: 18px; }
  .inner-footer__contacts { top: 145px; left: 45px; width: 300px; line-height: 18px; }
  .inner-footer__blog { top: 231px; right: auto; left: 45px; line-height: 18px; }
  .inner-footer__copy { top: 258px; left: 92px; line-height: 18px; }
  .inner-footer__cookie { top: 294px; left: 98px; line-height: 18px; }
  .inner-footer__privacy { top: 321px; left: 90px; line-height: 18px; }
  .inner-footer__top { top: 369px; right: auto; left: 171px; line-height: 18px; }

  .cookie-content { height: 1270px; margin-top: 48px; }
  .cookie-content h1 { top: 27px; left: 45px; width: 302px; height: 56px; font-size: 18px; line-height: 28px; transform: none; }
  .cookie-content__intro { top: 103px; left: 45px; width: 254px; height: 66px; font-size: 14px; line-height: 22px; transform: none; }
  .cookie-content__what { top: 199px; left: 45px; width: 300px; height: 25px; font-size: 16px; line-height: 25px; transform: none; }
  .cookie-content__definition { top: 239px; left: 45px; width: 300px; height: 66px; font-size: 14px; line-height: 22px; transform: none; }
  .cookie-copy { left: 45px; width: 300px; transform: none; }
  .cookie-copy--first { top: 335px; }
  .cookie-copy--second { top: 798px; }
  .cookie-copy h2 { height: 22px; margin: 0 0 15px; font-size: 14px; line-height: 22px; }
  .cookie-copy--second h2 { height: 25px; margin-bottom: 20px; font-size: 16px; line-height: 25px; }
  .cookie-copy div { font-size: 14px; line-height: 22px; }
  .cookie-copy > div { height: 396px; }
  .cookie-copy ul { padding-left: 18px; }
}

/* Product pages reconstructed from the original layouts */
.product-page { margin: 0; color: #171515; background: #fff; font-family: "Metrika", Arial, sans-serif; line-height: 1.2; }
.product-page main { padding-top: 90px; overflow: hidden; }
.product-header { position: fixed; z-index: 100; top: 0; left: 0; width: 100%; height: 90px; color: #fff; background: #111 url("assets/images/marble.webp") center/cover; }
.product-header__contacts { position: absolute; top: 15px; left: max(40px, calc(50% - 550px)); display: grid; gap: 0; font-size: 22px; line-height: 34px; }
.product-header__contacts a:last-child { display: flex; align-items: center; gap: 7px; font-size: 18px; line-height: 20px; }
.product-header__contacts span { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #254b1a; font-family: Arial, sans-serif; font-size: 13px; }
.product-header__brand { position: absolute; top: 14px; left: 50%; display: grid; width: 500px; justify-items: center; transform: translateX(-50%); }
.product-header__brand strong { font-size: 24px; font-weight: 400; line-height: 37px; }
.product-header__brand small { margin-top: 4px; font-size: 14px; line-height: 15px; white-space: nowrap; }
.product-header__action { position: absolute; top: 25px; right: max(40px, calc(50% - 550px)); display: flex; width: 187px; height: 42px; align-items: center; justify-content: center; border-radius: 999px; background: #254b1a; font-size: 16px; }

.product-hero { position: relative; height: 516px; background: #fff; }
.product-hero h1 { position: absolute; top: 50px; left: 50%; width: 1160px; height: 56px; margin: 0; font-size: 36px; font-weight: 400; line-height: 56px; text-align: center; transform: translateX(-50%); white-space: nowrap; }
.product-cards { position: absolute; top: 140px; left: calc(50% + 10px); display: grid; transform: translateX(-50%); }
.product-cards--four { width: 1100px; grid-template-columns: repeat(4, 260px); gap: 20px; }
.product-cards--two { width: 1080px; grid-template-columns: repeat(2, 530px); gap: 20px; }
.product-cards--one { width: 1100px; grid-template-columns: 1100px; }
.product-cards article { position: relative; height: 350px; overflow: hidden; border-radius: 11px; }
.product-cards picture, .product-cards img { width: 100%; height: 100%; }
.product-cards img { object-fit: cover; }
.product-cards span { position: absolute; top: 150px; left: 50%; display: flex; width: 180px; height: 50px; align-items: center; justify-content: center; border-radius: 999px; background: #fff; font-size: 20px; line-height: 20px; transform: translateX(-50%); }
.product-cards--one span { width: 133px; }
.product-cards--two span { width: 162px; }

.product-benefits { position: relative; height: 178px; background: #fff; }
.product-benefits__line { position: absolute; top: 50px; left: 50%; width: 826px; height: 2px; background: #cbd1c5; transform: translateX(-50%); }
.product-benefits__list { position: absolute; top: 25px; left: 50%; display: grid; width: 1046px; grid-template-columns: repeat(4, 206px); gap: 74px; transform: translateX(-50%); }
.product-benefits__list > div { position: relative; text-align: center; }
.product-benefits i { position: relative; display: grid; width: 50px; height: 50px; margin: 0 auto; place-items: center; border-radius: 50%; background: #315f27; }
.product-benefits i::before { content: ""; width: 18px; height: 10px; border-bottom: 4px solid #fff; border-left: 4px solid #fff; transform: translateY(-2px) rotate(-45deg); }
.product-benefits p { margin: 15px 0 0; font-size: 18px; line-height: 28px; }

.product-brief { position: relative; height: 525px; background: #fff; }
.product-brief__card { position: absolute; top: 80px; left: 50%; width: 718px; height: 288px; padding: 52px 30px 25px; border-radius: 17px; color: #fff; background: #254b1a; text-align: center; transform: translateX(-50%); }
.product-brief__card h2 { margin: 0 0 10px; font-size: 40px; font-weight: 400; line-height: 62px; }
.product-brief__card p { margin: 0 0 26px; font-size: 18px; line-height: 18px; }
.product-brief__card a { display: flex; width: 165px; height: 50px; margin: 0 auto; align-items: center; justify-content: center; border-radius: 999px; color: #171515; background: #fff; font-size: 18px; }
.product-brief > img { position: absolute; z-index: 2; top: 130px; left: calc(50% - 529px); width: 384px; height: 423px; object-fit: contain; }

.product-footer { position: relative; height: 130px; color: #fff; background: #151515; font-family: Arial, sans-serif; font-size: 14px; line-height: 22px; }
.product-footer__company { position: absolute; top: 15px; left: max(40px, calc(50% - 567px)); width: 318px; }
.product-footer__contacts { position: absolute; top: 15px; left: calc(50% - 105px); width: 318px; }
.product-footer__copy { position: absolute; top: 101px; left: max(40px, calc(50% - 568px)); line-height: 18px; }
.product-footer__cookie { position: absolute; top: 81px; left: calc(50% - 105px); line-height: 18px; }
.product-footer__privacy { position: absolute; top: 101px; left: calc(50% - 105px); line-height: 18px; }
.product-footer__top { position: absolute; top: 101px; right: max(40px, calc(50% - 568px)); line-height: 18px; }

@media (max-width: 900px) and (min-width: 480px) {
  .product-header__contacts { left: 24px; }
  .product-header__brand { width: 390px; }
  .product-header__action { right: 24px; }
  .product-hero h1 { width: calc(100% - 48px); font-size: 28px; white-space: normal; }
  .product-cards--four, .product-cards--two { width: calc(100% - 48px); grid-template-columns: repeat(2, 1fr); }
  .product-cards--one { width: calc(100% - 48px); grid-template-columns: 1fr; }
  .product-benefits__list { width: calc(100% - 48px); grid-template-columns: repeat(4, 1fr); gap: 15px; }
}

@media (max-width: 479px) {
  .product-page main { padding-top: 146px; }
  .product-header { height: 146px; }
  .product-header__brand { top: 18px; width: 100%; }
  .product-header__brand strong { font-size: 16px; line-height: 25px; }
  .product-header__brand small { margin-top: 11px; font-size: 10px; line-height: 11px; }
  .product-header__contacts { top: 93px; left: 18px; display: block; font-size: 16px; line-height: 25px; }
  .product-header__contacts a:last-child { display: none; }
  .product-header__action { top: 87px; right: 0; width: 191px; height: 43px; font-size: 12px; }

  .product-hero h1 { top: 40px; width: 320px; height: 120px; font-size: 26px; line-height: 40px; white-space: normal; }
  .product-page--face .product-hero, .product-page--body .product-hero { height: 1117px; }
  .product-page--candle .product-hero { height: 600px; }
  .product-page--diffuser .product-hero { height: 880px; }
  .product-cards { top: 193px; left: 51px; width: 288px; grid-template-columns: 288px; gap: 16px; transform: none; }
  .product-cards article { width: 288px; height: 209px; border-radius: 10px; }
  .product-cards span, .product-cards--one span, .product-cards--two span { top: 79px; width: 140px; height: 50px; font-size: 16px; line-height: 16px; }
  .product-page--candle .product-hero h1 { height: 160px; }
  .product-page--candle .product-cards { top: 224px; }
  .product-page--candle .product-cards article, .product-page--diffuser .product-cards article { height: 309px; }
  .product-page--candle .product-cards span, .product-page--diffuser .product-cards span { top: 130px; }
  .product-page--diffuser .product-cards { gap: 22px; }

  .product-benefits { height: 298px; }
  .product-benefits__line { top: 43px; left: 62px; width: 2px; height: 192px; transform: none; }
  .product-benefits__list { top: 25px; left: 45px; display: grid; width: 298px; grid-template-columns: 1fr; grid-auto-rows: 66px; gap: 0; transform: none; }
  .product-benefits__list > div { position: relative; text-align: left; }
  .product-benefits i { position: absolute; top: 0; left: 0; width: 36px; height: 36px; margin: 0; }
  .product-benefits i::before { width: 14px; height: 8px; border-width: 0 0 3px 3px; }
  .product-benefits p { position: absolute; top: 7px; left: 48px; width: 250px; margin: 0; font-size: 15px; line-height: 23px; }

  .product-brief { height: 385px; }
  .product-brief__card { top: 25px; left: 51px; width: 288px; height: 288px; padding: 32px 15px 20px; border-radius: 13px; transform: none; }
  .product-brief__card h2 { margin: 0 0 10px; font-size: 26px; line-height: 40px; }
  .product-brief__card p { width: 220px; margin: 0 auto 54px; font-size: 14px; line-height: 14px; }
  .product-brief__card a { width: 121px; height: 46px; margin-left: 133px; font-size: 15px; }
  .product-brief > img { top: 132px; left: 9px; width: 224px; height: 247px; }

  .product-footer { height: 354px; font-size: 14px; line-height: 22px; }
  .product-footer__copy { top: 16px; left: 138px; line-height: 18px; }
  .product-footer__privacy { top: 44px; left: 90px; line-height: 18px; }
  .product-footer__cookie { top: 71px; left: 98px; line-height: 18px; }
  .product-footer__company { top: 107px; left: 63px; width: 269px; }
  .product-footer__contacts { top: 217px; left: 63px; width: 318px; }
  .product-footer__top { top: 319px; right: auto; left: 171px; line-height: 18px; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.5;
}
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.container { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.section { padding: 96px 0; }
.section--compact { padding: 64px 0; }
.section--marble {
  color: var(--white);
  background: #111 url("assets/images/marble.webp") center/cover fixed;
}
.section__heading {
  max-width: 930px;
  margin: 0 auto 52px;
  font-family: var(--serif);
  font-size: clamp(34px, 4.2vw, 58px);
  font-weight: 400;
  line-height: 1.06;
  text-align: center;
  text-transform: uppercase;
}
.section__lead { max-width: 780px; margin: -28px auto 48px; text-align: center; font-size: 19px; }
.eyebrow { margin: 0 0 16px; color: var(--green); font-size: 13px; letter-spacing: .18em; text-transform: uppercase; }
.button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px 28px;
  border: 1px solid var(--green);
  border-radius: 999px;
  color: var(--white);
  background: var(--green);
  font-size: 14px;
  letter-spacing: .04em;
  text-align: center;
  text-transform: uppercase;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.button:hover { background: var(--green-dark); transform: translateY(-2px); }
.button--light { border-color: var(--white); color: var(--white); background: transparent; }
.button--light:hover { color: var(--ink); background: var(--white); }
.button--wide { min-width: 250px; }

.site-header {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  left: 0;
  padding: 14px 0;
  color: var(--white);
  background: rgba(15, 15, 15, .92);
  backdrop-filter: blur(12px);
}
.site-header__row { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; }
.site-header__contacts { display: flex; flex-direction: column; font-family: var(--serif); font-size: 15px; }
.brand { text-align: center; font-family: var(--serif); }
.brand__name { display: block; font-size: 24px; line-height: 1.1; }
.brand__tagline { display: block; margin-top: 3px; font-size: 10px; letter-spacing: .04em; text-transform: uppercase; }
.site-header__action { justify-self: end; }
.menu-toggle { display: none; width: 44px; height: 44px; padding: 10px; border: 0; color: var(--white); background: transparent; }
.menu-toggle span { display: block; height: 1px; margin: 6px 0; background: currentColor; transition: transform .2s ease, opacity .2s ease; }
.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.mobile-menu { display: none; }

.hero {
  min-height: 100vh;
  padding: 142px 0 56px;
  color: var(--white);
  background: #111 url("assets/images/marble.webp") center/cover fixed;
}
.hero__gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.hero__image { width: 100%; min-width: 0; aspect-ratio: 4/5; border-radius: 18px; object-fit: cover; box-shadow: var(--shadow); }
.hero__categories { display: flex; flex-wrap: wrap; gap: 14px; margin: 40px 0; }
.hero__categories a { flex: 1 1 220px; padding: 13px 18px; border: 1px solid rgba(255,255,255,.8); border-radius: 999px; text-align: center; font-family: var(--serif); font-size: 13px; text-transform: uppercase; }
.hero__content { max-width: 1000px; padding-top: 34px; }
.hero h1 { margin: 0; font-family: var(--serif); font-size: clamp(38px, 5.8vw, 78px); font-weight: 400; line-height: .98; text-transform: uppercase; }
.hero__text { max-width: 720px; margin: 26px 0 32px; font-size: 20px; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 14px; }
.hero__facts { display: flex; gap: 44px; margin-top: 46px; }
.hero__fact strong { display: block; font-family: var(--serif); font-size: 44px; font-weight: 400; }
.hero__fact span { font-size: 13px; text-transform: uppercase; }

.audience-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.audience-card { min-height: 330px; padding: 28px; border-radius: 18px; color: var(--ink); background: rgba(255,255,255,.96); }
.audience-card h3 { min-height: 62px; margin: 0 0 18px; padding-bottom: 18px; border-bottom: 1px solid var(--green); font-family: var(--serif); font-size: 21px; font-weight: 400; line-height: 1.15; text-transform: uppercase; }
.audience-card ul, .feature-card ul { margin: 0; padding-left: 19px; }
.audience-card li + li, .feature-card li + li { margin-top: 12px; }
.section__action { margin-top: 40px; text-align: center; }

.value { display: grid; grid-template-columns: .8fr 1.2fr; gap: 64px; align-items: start; }
.value__title { position: sticky; top: 110px; margin: 0; font-family: var(--serif); font-size: clamp(36px, 4vw, 56px); font-weight: 400; line-height: 1.05; text-transform: uppercase; }
.value__copy { font-family: var(--serif); font-size: 23px; line-height: 1.55; }
.value__copy p:first-child { margin-top: 0; }
.value__signature { color: var(--green); }

.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.feature-card { min-height: 390px; padding: 28px; border-radius: 18px; color: var(--white); background: #191717; }
.feature-card h3 { min-height: 64px; margin: 0 0 22px; padding-bottom: 20px; border-bottom: 1px solid rgba(255,255,255,.45); font-family: var(--serif); font-size: 23px; font-weight: 400; line-height: 1.05; text-align: center; text-transform: uppercase; }

.steps { display: grid; gap: 18px; counter-reset: step; }
.step { display: grid; grid-template-columns: 70px .55fr 1.45fr; gap: 30px; align-items: start; padding: 30px 0; border-top: 1px solid var(--line); counter-increment: step; }
.step::before { content: "0" counter(step); color: var(--green); font-family: var(--serif); font-size: 42px; line-height: 1; }
.step h3 { margin: 3px 0 0; font-family: var(--serif); font-size: 24px; font-weight: 400; text-transform: uppercase; }
.step p { margin: 0; font-size: 18px; }

.brief { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 46px 54px; border-radius: var(--radius); color: var(--white); background: var(--green); }
.brief h2 { margin: 0 0 8px; font-family: var(--serif); font-size: clamp(30px, 4vw, 48px); font-weight: 400; }
.brief p { margin: 0; }

.faq { max-width: 960px; margin-inline: auto; }
.faq details { border-top: 1px solid var(--green); }
.faq details:last-child { border-bottom: 1px solid var(--green); }
.faq summary { position: relative; padding: 25px 64px 25px 0; font-family: var(--serif); font-size: 21px; list-style: none; cursor: pointer; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; position: absolute; top: 16px; right: 0; display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: var(--white); background: var(--green); font-family: var(--sans); font-size: 28px; font-weight: 300; }
.faq details[open] summary::after { content: "−"; }
.faq__answer { max-width: 820px; padding: 0 64px 28px 0; color: #4d4b46; }

.contact-panel { display: grid; grid-template-columns: .9fr 1.1fr; gap: 56px; padding: 58px; border-radius: var(--radius); color: var(--white); background: #111 url("assets/images/marble.webp") center/cover; }
.contact-panel h2 { margin: 0; font-family: var(--serif); font-size: clamp(38px, 4vw, 58px); font-weight: 400; line-height: 1.02; text-transform: uppercase; }
.contact-panel__links { margin-top: 28px; font-family: var(--serif); font-size: 20px; }
.contact-panel__links a { display: block; margin-top: 8px; }
.form { display: grid; gap: 14px; }
.form input, .form textarea { width: 100%; padding: 15px 18px; border: 1px solid rgba(255,255,255,.55); border-radius: 12px; color: var(--white); outline: none; background: rgba(0,0,0,.3); }
.form input::placeholder, .form textarea::placeholder { color: rgba(255,255,255,.72); }
.form input:focus, .form textarea:focus { border-color: var(--white); }
.form textarea { min-height: 110px; resize: vertical; }
.form__consent { display: flex; align-items: flex-start; gap: 9px; font-size: 12px; }
.form__status { min-height: 24px; margin: 0; font-size: 14px; }

.seo-copy { max-width: 920px; margin: 0 auto; }
.seo-copy h2 { font-family: var(--serif); font-size: clamp(34px, 4vw, 50px); font-weight: 400; line-height: 1.1; }
.seo-copy p, .seo-copy li { font-size: 18px; }
.seo-copy__more[hidden] { display: none; }
.text-button { padding: 8px 0; border: 0; border-bottom: 1px solid currentColor; color: var(--green); background: transparent; }

.site-footer { padding: 52px 0; color: var(--white); background: #151313; }
.footer-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 36px; }
.site-footer .brand { text-align: left; }
.site-footer p { margin: 7px 0; }
.footer-nav { display: grid; gap: 7px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 38px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.2); font-size: 13px; }

.cookie { position: fixed; z-index: 110; right: 24px; bottom: 24px; left: 24px; display: flex; max-width: 760px; align-items: center; gap: 24px; margin: auto; padding: 20px 24px; border-radius: 18px; background: var(--white); box-shadow: var(--shadow); }
.cookie[hidden] { display: none; }
.cookie p { margin: 0; font-family: var(--serif); font-size: 14px; }

.subpage-hero { padding: 150px 0 76px; color: var(--white); background: #111 url("assets/images/marble.webp") center/cover; }
.subpage-hero__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 56px; align-items: center; }
.subpage-hero h1 { margin: 0; font-family: var(--serif); font-size: clamp(42px, 5.7vw, 76px); font-weight: 400; line-height: 1; text-transform: uppercase; }
.subpage-hero p { max-width: 650px; margin: 26px 0 30px; font-size: 20px; }
.subpage-hero img { width: 100%; max-height: 600px; border-radius: var(--radius); object-fit: cover; }
.product-tags { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; }
.product-tags span { padding: 9px 16px; border: 1px solid rgba(255,255,255,.65); border-radius: 999px; font-family: var(--serif); font-size: 13px; text-transform: uppercase; }
.benefits { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.benefit { padding: 26px; border: 1px solid var(--line); border-radius: 18px; background: var(--white); }
.benefit strong { display: block; color: var(--green); font-family: var(--serif); font-size: 31px; font-weight: 400; }
.product-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.product-list article { padding: 32px; border-radius: 18px; background: var(--white); box-shadow: 0 12px 36px rgba(18,16,16,.06); }
.product-list h3 { margin: 0 0 10px; font-family: var(--serif); font-size: 26px; font-weight: 400; text-transform: uppercase; }
.page-content { max-width: 900px; margin-inline: auto; }
.page-content h1, .page-content h2, .page-content h3 { font-family: var(--serif); font-weight: 400; line-height: 1.15; }
.page-content h1 { font-size: clamp(38px, 5vw, 62px); }
.page-content h2 { margin-top: 52px; font-size: clamp(28px, 3.5vw, 42px); }
.page-content h3 { margin-top: 34px; font-size: 25px; }
.page-content p, .page-content li { font-size: 18px; }
.page-content li + li { margin-top: 8px; }
.page-content table { width: 100%; margin: 28px 0; border-collapse: collapse; }
.page-content th, .page-content td { padding: 14px; border: 1px solid var(--line); text-align: left; vertical-align: top; }
.article-hero { padding: 150px 0 70px; color: var(--white); background: #111 url("assets/images/marble.webp") center/cover; }
.article-hero h1 { max-width: 980px; margin: 0; font-family: var(--serif); font-size: clamp(40px, 5vw, 66px); font-weight: 400; line-height: 1.03; }
.breadcrumbs { margin-bottom: 26px; font-size: 13px; text-transform: uppercase; }
.breadcrumbs a { opacity: .75; }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.blog-card { display: flex; min-height: 310px; flex-direction: column; padding: 28px; border-radius: 18px; color: var(--white); background: #111 url("assets/images/marble.webp") center/cover; }
.blog-card time { font-size: 13px; opacity: .75; }
.blog-card h2 { margin: 34px 0 18px; font-family: var(--serif); font-size: 28px; font-weight: 400; line-height: 1.15; }
.blog-card span { margin-top: auto; color: #d7e6d2; }

@media (max-width: 900px) {
  .section { padding: 72px 0; }
  .site-header__row { grid-template-columns: auto 1fr auto; }
  .site-header__contacts, .site-header__action { display: none; }
  .brand { justify-self: center; }
  .brand__name { font-size: 20px; }
  .menu-toggle { display: block; justify-self: end; }
  .mobile-menu { position: fixed; inset: 72px 0 auto; max-height: calc(100vh - 72px); padding: 26px 20px 34px; overflow: auto; color: var(--white); background: #151313; }
  .mobile-menu.is-open { display: grid; gap: 13px; }
  .mobile-menu a { padding: 8px 0; }
  .hero { padding-top: 118px; }
  .hero__gallery { gap: 14px; }
  .hero__facts { gap: 24px; }
  .audience-grid { grid-template-columns: repeat(2, 1fr); }
  .value { grid-template-columns: 1fr; gap: 28px; }
  .value__title { position: static; }
  .feature-grid { grid-template-columns: 1fr; }
  .feature-card { min-height: auto; }
  .step { grid-template-columns: 55px 1fr; }
  .step p { grid-column: 2; }
  .contact-panel { grid-template-columns: 1fr; padding: 42px; }
  .subpage-hero__grid { grid-template-columns: 1fr; }
  .subpage-hero img { max-height: 520px; }
  .benefits { grid-template-columns: repeat(2, 1fr); }
  .blog-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .container { width: min(100% - 24px, 1160px); }
  .section { padding: 58px 0; }
  .section__heading { margin-bottom: 34px; font-size: 32px; }
  .hero { min-height: auto; padding-top: 96px; background-attachment: scroll; }
  .hero__gallery { grid-template-columns: 1fr 1fr; }
  .hero__image { aspect-ratio: 4/5; }
  .hero__image:nth-child(3) { grid-column: 1 / -1; aspect-ratio: 2/1; }
  .hero h1 { font-size: 39px; }
  .hero__text { font-size: 17px; }
  .hero__actions .button { width: 100%; }
  .hero__facts { display: grid; grid-template-columns: 1fr 1fr; }
  .hero__fact strong { font-size: 36px; }
  .audience-grid { grid-template-columns: 1fr; }
  .audience-card { min-height: 0; }
  .value__copy { font-size: 19px; }
  .step { grid-template-columns: 46px 1fr; gap: 16px; }
  .step::before { font-size: 30px; }
  .step h3 { font-size: 20px; }
  .step p { font-size: 16px; }
  .brief { align-items: flex-start; flex-direction: column; padding: 32px 26px; }
  .faq summary { padding-right: 54px; font-size: 18px; }
  .faq__answer { padding-right: 0; }
  .contact-panel { padding: 32px 22px; }
  .subpage-hero { padding-top: 110px; }
  .subpage-hero h1 { font-size: 39px; }
  .benefits, .product-list { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; }
  .cookie { right: 12px; bottom: 12px; left: 12px; align-items: stretch; flex-direction: column; gap: 14px; padding: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}

/* Exact home-page layout reconstructed from the original site */
.home-page {
  --home-green: #254b1a;
  --home-black: #161414;
  margin: 0;
  color: #171515;
  background: #fff;
  font-family: "Metrika", Arial, sans-serif;
  line-height: 1.2;
}
.home-page main { overflow: hidden; }
.home-page img { max-width: none; }
.home-panel { width: min(1200px, calc(100% - 80px)); margin-inline: auto; border-radius: 17px; overflow: hidden; }
.home-section { position: relative; width: 100%; background: #fff; }
.home-green-card { color: #fff; background: var(--home-green); }
.home-marble-card { color: #fff; background: #111 url("assets/images/marble.webp") center/cover; }
.home-title { margin: 0; font-size: 42px; font-weight: 400; line-height: 1; text-align: center; text-transform: uppercase; }
.home-title--light { color: #fff; }
.home-button { display: flex; height: 52px; align-items: center; justify-content: center; border: 0; border-radius: 999px; font-family: "Metrika", Arial, sans-serif; font-size: 16px; text-align: center; text-transform: uppercase; }
.home-button--green { color: #fff; background: var(--home-green); }
.home-button--white { color: #171515; background: #fff; }

.home-button,
.home-contact__form button,
.home-seo button,
.blog-contact__form button,
.pronau-popup__form button,
.inner-header__action,
.product-header__action,
.cookie .button,
.button {
  transform-origin: center;
  transition-duration: .2s, .2s, .2s, .2s, .2s, .4s, .2s;
  transition-property: background-color, color, border-color, box-shadow, opacity, transform, gap;
  transition-timing-function: ease-in-out;
  will-change: transform;
}

.home-categories a,
.home-showcase__images img,
.home-audience-card,
.home-audience-card img,
.home-adv-card,
.home-adv-card img,
.product-cards article,
.product-cards article img,
.original-post,
.original-post img {
  transform-origin: center;
  transition: transform .4s ease-in-out, box-shadow .2s ease-in-out, opacity .2s ease-in-out, border-color .2s ease-in-out;
  will-change: transform;
}

@media (hover: hover) and (pointer: fine) {
  .home-button:hover,
  .home-contact__form button:hover,
  .home-seo button:hover,
  .blog-contact__form button:hover,
  .pronau-popup__form button:hover,
  .inner-header__action:hover,
  .product-header__action:hover,
  .cookie .button:hover,
  .button:hover {
    transform: scale(1.06);
  }

  .home-categories a:hover {
    transform: scale(1.06);
    border-color: rgba(255,255,255,.88);
  }

  .home-showcase__images img:hover,
  .home-audience-card:hover,
  .home-adv-card:hover,
  .product-cards article:hover,
  .original-post:hover {
    transform: scale(1.02);
  }

  .home-audience-card:hover img,
  .home-adv-card:hover img,
  .product-cards article:hover img,
  .original-post:hover img {
    transform: scale(1.06);
  }
}

.pronau-animate {
  opacity: 0;
  transform: translate3d(0, -100px, 0);
  transition: opacity 1s ease-in-out var(--pronau-animate-delay, 0s), transform 1s ease-in-out var(--pronau-animate-delay, 0s);
  will-change: opacity, transform;
}

.pronau-animate.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.pronau-animate.has-revealed {
  transition: transform .4s ease-in-out, box-shadow .2s ease-in-out, opacity .2s ease-in-out, border-color .2s ease-in-out;
}

@media (min-width: 480px) {
  .product-brief__card.pronau-animate {
    transform: translate(-50%, -100px);
  }

  .product-brief__card.pronau-animate.is-visible,
  .product-brief__card.pronau-animate.has-revealed {
    transform: translateX(-50%);
  }
}

@media (hover: hover) and (pointer: fine) {
  .home-showcase__images img.pronau-animate.has-revealed:hover,
  .home-audience-card.pronau-animate.has-revealed:hover,
  .home-adv-card.pronau-animate.has-revealed:hover,
  .product-cards article.pronau-animate.has-revealed:hover,
  .original-post.pronau-animate.has-revealed:hover {
    transform: scale(1.02);
  }
}

body.popup-open { overflow: hidden; }
.pronau-popup[hidden] { display: none; }
.pronau-popup {
  position: fixed;
  z-index: 10000;
  inset: 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 70px 20px;
  background: rgba(0,0,0,.78);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease-in-out;
  -webkit-overflow-scrolling: touch;
}
.pronau-popup.is-open {
  opacity: 1;
  pointer-events: auto;
}
.pronau-popup__container {
  position: relative;
  width: min(560px, 100%);
  max-height: none;
  overflow: visible;
  background: #fff;
  box-shadow: 0 24px 70px rgba(0,0,0,.32);
  transform: translateY(18px);
  transition: transform .25s ease-in-out;
}
.pronau-popup.is-open .pronau-popup__container { transform: translateY(0); }
.pronau-popup__image { display: block; width: 100%; height: auto; }
.pronau-popup__body {
  padding: 33px 45px 42px;
  color: #171515;
  background: #fff;
  font-family: "Metrika", Arial, sans-serif;
  text-align: center;
}
.pronau-popup__body h2 { margin: 0 0 12px; font-size: 34px; font-weight: 400; line-height: 1.12; }
.pronau-popup__body > p { max-width: 440px; margin: 0 auto 26px; font-size: 16px; line-height: 1.35; }
.pronau-popup__form { display: grid; gap: 15px; text-align: left; }
.pronau-popup__form input:not([type="checkbox"]),
.pronau-popup__form textarea {
  width: 100%;
  min-height: 56px;
  padding: 0 18px;
  border: 1px solid #c9c9c9;
  border-radius: 5px;
  color: #000;
  background: #fff;
  font-family: Arial, sans-serif;
  font-size: 16px;
  outline: 0;
}
.pronau-popup__form textarea { min-height: 102px; padding-top: 15px; resize: vertical; }
.pronau-popup__phone {
  position: relative;
  display: flex;
  min-height: 56px;
  align-items: center;
  border: 1px solid #c9c9c9;
  border-radius: 5px;
  background: #fff;
  margin: 0;
}
.pronau-popup__form .pronau-popup__phone-region {
  display: flex;
  width: 122px;
  height: 54px;
  flex: 0 0 122px;
  align-items: center;
  gap: 13px;
  padding: 0 0 0 19px;
  border: 0;
  border-radius: 0;
  color: #000;
  background: #fff;
  font-family: Arial, sans-serif;
  font-size: 18px;
  line-height: 1;
  text-transform: none;
  outline: 0;
  cursor: pointer;
}
.pronau-popup__phone-region:focus-visible { outline: 2px solid rgba(37,75,26,.35); outline-offset: -3px; }
.pronau-popup__phone-flag {
  display: inline-flex;
  width: 28px;
  height: 20px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  font-family: "Apple Color Emoji", "Segoe UI Emoji", sans-serif;
  font-size: 24px;
  line-height: 1;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,.22));
}
.pronau-popup__phone-flag img.emoji {
  width: 28px !important;
  height: 20px !important;
  margin: 0 !important;
  vertical-align: top !important;
}
.pronau-popup__phone-arrow {
  width: 0;
  height: 0;
  border-top: 8px solid #8c8c8c;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
}
.pronau-popup__phone-code {
  font-family: Arial, sans-serif;
  font-size: 18px;
  line-height: 1;
}
.pronau-popup__phone-menu {
  position: absolute;
  z-index: 5;
  top: calc(100% + 6px);
  left: 0;
  width: 245px;
  overflow: hidden;
  border: 1px solid #c9c9c9;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0,0,0,.15);
}
.pronau-popup__form .pronau-popup__phone-menu button {
  display: block;
  width: 100%;
  height: 38px;
  padding: 0 14px;
  border: 0;
  border-radius: 0;
  color: #171515;
  background: #fff;
  font-family: Arial, "Apple Color Emoji", "Segoe UI Emoji", sans-serif;
  font-size: 14px;
  line-height: 38px;
  text-align: left;
  text-transform: none;
  cursor: pointer;
}
.pronau-popup__form .pronau-popup__phone-menu button:hover,
.pronau-popup__form .pronau-popup__phone-menu button[aria-selected="true"] {
  background: #f2f2f2;
}
.pronau-popup__phone input:not([type="checkbox"]) {
  min-height: 54px;
  padding: 0 18px 0 0;
  border: 0;
  border-radius: 0;
  font-size: 18px;
}
.pronau-popup__phone input::placeholder {
  color: rgba(0,0,0,.46);
}
.pronau-popup__form input::placeholder,
.pronau-popup__form textarea::placeholder { color: rgba(0,0,0,.5); }
.pronau-popup__consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #171515;
  font-family: Arial, sans-serif;
  font-size: 13px;
  line-height: 1.35;
}
.pronau-popup__consent input { width: 18px; height: 18px; margin: 0; flex: 0 0 18px; accent-color: #254b1a; }
.pronau-popup__consent a { color: inherit; text-decoration: underline; }
.pronau-popup__form button {
  width: 100%;
  height: 56px;
  border: 0;
  border-radius: 30px;
  color: #fff;
  background: #254b1a;
  font-family: "Metrika", Arial, sans-serif;
  font-size: 16px;
  text-transform: uppercase;
}
.pronau-popup__form .form__status { min-height: 0; margin: 0; color: #254b1a; font-family: Arial, sans-serif; font-size: 13px; text-align: center; }
.pronau-popup__form .form__status:empty { display: none; }
.pronau-popup__close {
  position: absolute;
  z-index: 2;
  width: 44px;
  height: 44px;
  border: 0;
  color: #fff;
  background: transparent;
  cursor: pointer;
}
.pronau-popup__close:focus:not(:focus-visible) { outline: 0; }
.pronau-popup__close:focus-visible { outline: 2px solid rgba(255,255,255,.8); outline-offset: 4px; }
.pronau-popup__close::before,
.pronau-popup__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 31px;
  height: 2px;
  background: currentColor;
}
.pronau-popup__close::before { transform: translate(-50%, -50%) rotate(45deg); }
.pronau-popup__close::after { transform: translate(-50%, -50%) rotate(-45deg); }
.pronau-popup__close--outer { position: fixed; top: 18px; right: 22px; }
.pronau-popup__close--inner { display: none; top: 8px; right: 8px; }

@media (max-width: 560px) {
  .pronau-popup { padding: 28px 10px; }
  .pronau-popup__body { padding: 28px 22px 32px; }
  .pronau-popup__body h2 { font-size: 26px; }
  .pronau-popup__body > p { font-size: 14px; }
  .pronau-popup__close--outer { display: none; }
  .pronau-popup__close--inner { display: block; }
}

@media (prefers-reduced-motion: reduce) {
  .home-button,
  .home-contact__form button,
  .home-seo button,
  .blog-contact__form button,
  .pronau-popup__form button,
  .inner-header__action,
  .product-header__action,
  .cookie .button,
  .button,
  .home-categories a,
  .home-showcase__images img,
  .home-audience-card,
  .home-audience-card img,
  .home-adv-card,
  .home-adv-card img,
  .product-cards article,
  .product-cards article img,
  .original-post,
  .original-post img,
  .pronau-popup,
  .pronau-popup__container,
  .pronau-animate {
    transition: none !important;
  }

  .pronau-animate {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) and (min-width: 480px) {
  .product-brief__card.pronau-animate {
    transform: translateX(-50%);
  }
}

.home-header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 50%;
  display: grid;
  width: min(1200px, calc(100% - 80px));
  height: 103px;
  grid-template-columns: 1fr 1.3fr 1fr;
  align-items: center;
  padding: 0 49px;
  border-radius: 0 0 17px 17px;
  color: #fff;
  background: #111 url("assets/images/marble.webp") center top/cover;
  transform: translateX(-50%);
}
.home-header__contacts { display: grid; gap: 5px; justify-self: start; font-size: 20px; }
.home-header__mail { display: flex; align-items: center; gap: 12px; }
.home-header__mail span { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: var(--home-green); font-family: Arial, sans-serif; font-size: 17px; }
.home-brand { display: grid; justify-items: center; line-height: 1; }
.home-brand > span { font-size: 23px; }
.home-brand small { margin-top: 10px; font-size: 13px; font-weight: 400; white-space: nowrap; }
.home-header__cta { width: 187px; height: 42px; justify-self: end; font-size: 14px; }
.home-menu-toggle, .home-mobile-menu { display: none; }

.home-showcase {
  height: 817px;
  margin-top: 89px;
  padding: 99px 49px 0;
  background: #111 url("assets/images/marble.webp") center/cover;
}
.home-showcase__images { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 37px; }
.home-showcase__images img { width: 100%; height: 427px; border-radius: 17px; object-fit: cover; }
.home-categories { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 18px; margin-top: 44px; }
.home-categories a { display: flex; height: 47px; align-items: center; justify-content: center; border: 1px solid #fff; border-radius: 999px; color: #fff; font-size: 13px; text-align: center; }
.home-categories a:nth-child(5), .home-categories a:nth-child(6) { grid-column: span 2; }
.home-showcase__cta { width: 400px; margin: 25px auto 0; }
.home-mobile-catalog { display: none; }

.home-offer { height: 679px; padding-top: 80px; }
.home-offer__card { height: 599px; padding: 60px 80px 45px; text-align: center; }
.home-offer h1 { width: 774px; margin: 0 auto 21px; font-size: 40px; font-weight: 400; line-height: 48px; }
.home-offer p { margin: 0 0 12px; font-size: 18px; }
.home-facts { display: flex; justify-content: center; gap: 20px; margin-top: 45px; }
.home-fact { display: flex; width: 164px; height: 164px; align-items: center; flex-direction: column; justify-content: center; border-radius: 50%; color: #171515; background: #fff; }
.home-fact span { font-size: 15px; }
.home-fact strong { margin: -2px 0 -7px; font-size: 78px; font-weight: 400; line-height: .98; }
.home-fact small { font-size: 16px; }
.home-fact b { color: #cf3131; font-weight: 400; }
.home-fact--cycle img { width: 54px; height: 54px; margin-bottom: 7px; object-fit: contain; }
.home-fact--cycle small { font-size: 16px; line-height: 1.05; }
.home-offer__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 59px auto 0; }

.home-audience { height: 910px; padding-top: 80px; }
.home-audience__panel { height: 828px; padding: 88px 50px 0; }
.home-audience__panel > .home-title { font-size: 40px; }
.home-audience__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 64px; }
.home-audience-card { height: 426px; overflow: hidden; border-radius: 11px; color: #171515; background: #fff; }
.home-audience-card__copy { height: 237px; padding: 17px 13px 0; }
.home-audience-card h3 { min-height: 58px; margin: 0 0 12px; padding-bottom: 12px; border-bottom: 1px solid #51604a; font-size: 19px; font-weight: 400; line-height: 1.05; text-align: center; }
.home-audience-card ul { margin: 0; padding-left: 17px; font-size: 14px; line-height: 1.25; }
.home-audience-card li + li { margin-top: 11px; }
.home-audience-card img { width: 100%; height: 219px; object-fit: cover; }
.home-audience__cta { width: 355px; margin: 80px auto 0; }

.home-value { height: 568px; padding-top: 80px; }
.home-value__card { height: 487px; padding: 61px 80px 36px; }
.home-value h2 { margin: 0 0 42px; font-size: 42px; font-weight: 400; text-align: center; }
.home-value__columns { display: grid; grid-template-columns: 1fr 1fr; gap: 39px; }
.home-value__columns p { margin: 0 0 25px; font-size: 17px; line-height: 1.4; text-align: justify; }
.home-value__signature { margin: 12px 0 0; font-size: 17px; text-align: center; }

.home-advantages { height: 759px; padding-top: 30px; }
.home-advantages > .home-title { height: 94px; padding-top: 1px; }
.home-advantages__grid { display: grid; width: 1097px; grid-template-columns: repeat(3, 341px); gap: 37px; margin: 0 auto; }
.home-adv-card { display: grid; height: 523px; grid-template-rows: 348px 175px; overflow: hidden; border-radius: 16px; color: #fff; background: var(--home-black); }
.home-adv-card > div { padding: 21px 20px 0; }
.home-adv-card h3 { min-height: 67px; margin: 0 0 18px; padding-bottom: 19px; border-bottom: 1px solid rgba(255,255,255,.55); font-size: 20px; font-weight: 400; line-height: 1.08; text-align: center; }
.home-adv-card ul { margin: 0; padding-left: 20px; font-size: 16px; line-height: 1.25; }
.home-adv-card li + li { margin-top: 10px; }
.home-adv-card img { width: 341px; height: 175px; object-fit: cover; }
.home-advantages__cta { width: 202px; height: 46px; margin: 32px auto 0; font-size: 14px; }

.home-process { height: 2033px; padding-top: 32px; }
.home-process > .home-title { height: 211px; padding-top: 0; }
.home-process__list { width: 866px; margin: 0 auto; }
.home-step { position: relative; height: 255px; margin-bottom: 111px; border-radius: 15px; color: #fff; background: var(--home-black); }
.home-step:last-child { margin-bottom: 0; }
.home-step__image { position: absolute; z-index: 2; top: -48px; left: 60px; width: 255px; height: 344px; border-radius: 15px; object-fit: cover; }
.home-step--reverse .home-step__image { right: 60px; left: auto; }
.home-step__copy { padding: 35px 45px 20px 365px; }
.home-step--reverse .home-step__copy { padding: 39px 417px 20px 112px; }
.home-step h3 { display: flex; align-items: center; gap: 12px; margin: 0 0 8px; font-size: 24px; font-weight: 400; line-height: 1; }
.home-step h3 span { display: grid; width: 41px; height: 41px; flex: 0 0 41px; place-items: center; border-radius: 50%; background: var(--home-green); font-size: 23px; }
.home-step p { width: 351px; margin: 0 0 10px 53px; font-size: 16px; line-height: 16px; }
.home-step p:first-of-type { width: 262px; }
.home-step--reverse p { margin-left: 0; }

.home-brief { height: 518px; padding-top: 80px; }
.home-brief__card { position: relative; width: 718px; height: 288px; margin: 0 auto; border-radius: 0 0 17px 0; color: #fff; background: var(--home-green); text-align: center; }
.home-brief__card > img { position: absolute; top: 40px; left: -118px; width: 290px; height: 320px; object-fit: contain; transform: rotate(-5deg); }
.home-brief__card > div { padding: 38px 40px 0 165px; }
.home-brief h2 { margin: 0 0 15px; font-size: 40px; font-weight: 400; }
.home-brief p { margin: 0 0 24px; font-size: 18px; line-height: 1.05; }
.home-brief .home-button { width: 165px; height: 50px; margin: 0 auto; }

.home-faq { min-height: 1418px; padding: 97px 59px 50px; }
.home-faq h2 { margin: 0 0 74px; font-size: 40px; font-weight: 400; text-align: center; }
.home-faq__list { max-width: 1162px; margin: 0 auto; }
.home-faq details { border-top: 1px solid #536250; }
.home-faq details:last-child { border-bottom: 1px solid #536250; }
.home-faq summary { position: relative; display: flex; min-height: 87px; align-items: center; padding: 16px 72px 16px 0; font-size: 25px; list-style: none; cursor: pointer; }
.home-faq summary::-webkit-details-marker { display: none; }
.home-faq summary::after { content: "+"; position: absolute; right: 0; display: grid; width: 41px; height: 41px; place-items: center; border-radius: 50%; color: #fff; background: var(--home-green); font-family: Arial, sans-serif; font-size: 39px; font-weight: 200; line-height: 1; }
.home-faq details[open] summary::after { content: "−"; }
.home-faq details p { max-width: 1040px; margin: -3px 0 24px; font-family: Arial, sans-serif; font-size: 15px; line-height: 1.45; }

.home-contact { height: 460px; padding-top: 112px; }
.home-contact h2 { margin: 0 0 33px; font-size: 42px; font-weight: 400; line-height: 1.18; text-align: center; }
.home-contact__form { display: grid; width: 910px; grid-template-columns: 199px 199px 199px 255px; gap: 20px; margin: 0 auto; }
.home-contact__form > input:not([type="hidden"]) { height: 51px; padding: 0 20px; border: 1px solid #c8c8c8; border-radius: 2px; color: #171515; background: #fff; font-family: "Metrika", Arial, sans-serif; }
.home-contact__form button { height: 51px; border: 0; border-radius: 999px; color: #fff; background: #d93025; font-family: "Metrika", Arial, sans-serif; font-size: 15px; }
.home-contact__form label { display: flex; grid-column: 1 / 4; align-items: center; gap: 10px; font-size: 14px; }
.home-contact__form label > input { width: 20px; height: 20px; margin: 0; }
.home-contact__form label a { color: #8d7669; text-decoration: underline; }
.home-contact__form .form__status { grid-column: 1 / -1; min-height: 0; margin: 0; }
.home-contact__form .form__status:empty { display: none; }

.home-seo { min-height: 594px; padding: 60px 0 80px; }
.home-seo__card { min-height: 420px; padding: 50px 80px 40px; color: #fff; background: var(--home-green); }
.home-seo h2 { margin: 0 0 30px; font-size: 40px; font-weight: 400; line-height: 1.3; }
.home-seo p { margin: 0; font-size: 17px; line-height: 1.45; text-align: justify; }
.home-seo #seo-more p { margin-top: 20px; }
.home-seo #seo-more ul { margin: 20px 0 0; padding-left: 22px; font-size: 17px; line-height: 1.45; text-align: left; }
.home-seo #seo-more li + li { margin-top: 8px; }
.home-seo button { display: block; width: 400px; height: 50px; margin: 29px auto 0; border: 0; border-radius: 999px; color: #171515; background: #fff; font-family: "Metrika", Arial, sans-serif; font-size: 15px; }

.home-footer { display: grid; min-height: 134px; grid-template-columns: 1.25fr 1.25fr .5fr; gap: 40px; padding: 11.5px max(8%, calc((100% - 1080px) / 2)); color: #fff; background: #151515; font-size: 14px; line-height: 1.3; }
.home-footer p { margin: 0 0 4px; }
.home-footer__copy { margin-top: 21px !important; }
.home-footer > div:last-child { display: flex; flex-direction: column; justify-content: space-between; }

@media (max-width: 900px) {
  .home-panel { width: calc(100% - 24px); }
  .home-header { width: calc(100% - 24px); height: 70px; grid-template-columns: 44px 1fr 44px; padding: 0 12px; }
  .home-header__contacts, .home-header__cta { display: none; }
  .home-brand { grid-column: 2; }
  .home-brand > span { font-size: 17px; }
  .home-brand small { margin-top: 6px; font-size: 8px; }
  .home-menu-toggle { display: block; grid-column: 3; grid-row: 1; width: 40px; height: 40px; padding: 8px; border: 0; color: #fff; background: transparent; }
  .home-menu-toggle span { display: block; height: 1px; margin: 6px 0; background: currentColor; }
  .home-mobile-menu { position: absolute; top: 68px; right: 0; left: 0; padding: 22px; border-radius: 0 0 16px 16px; background: #151515; }
  .home-mobile-menu.is-open { display: grid; gap: 14px; }
  .home-showcase { height: auto; min-height: 750px; margin-top: 56px; padding: 76px 18px 40px; }
  .home-showcase__images { gap: 12px; }
  .home-showcase__images img { height: 38vw; min-height: 220px; }
  .home-categories { grid-template-columns: repeat(2, 1fr); }
  .home-categories a:nth-child(5), .home-categories a:nth-child(6) { grid-column: auto; }
  .home-offer, .home-audience, .home-value, .home-advantages, .home-process, .home-brief, .home-contact, .home-seo { height: auto; min-height: 0; padding: 48px 0; }
  .home-offer__card, .home-audience__panel, .home-value__card { height: auto; padding: 48px 28px; }
  .home-audience__grid { grid-template-columns: repeat(2, 1fr); }
  .home-audience__cta { margin-top: 34px; }
  .home-value__columns { grid-template-columns: 1fr; gap: 0; }
  .home-advantages__grid { width: calc(100% - 48px); grid-template-columns: 1fr; }
  .home-adv-card { width: 100%; }
  .home-adv-card img { width: 100%; }
  .home-process > .home-title { height: auto; margin-bottom: 90px; }
  .home-process__list { width: calc(100% - 48px); }
  .home-step { width: 100%; margin-bottom: 120px; }
  .home-step__image { left: 30px; }
  .home-step--reverse .home-step__image { right: 30px; }
  .home-step__copy { padding-left: 340px; }
  .home-step--reverse .home-step__copy { padding-right: 340px; padding-left: 60px; }
  .home-brief__card { width: min(718px, calc(100% - 140px)); }
  .home-faq { min-height: 0; padding: 48px 24px; }
  .home-faq h2 { margin-bottom: 40px; }
  .home-contact__form { width: calc(100% - 80px); grid-template-columns: 1fr 1fr; }
  .home-contact__form button { grid-column: 2; }
  .home-contact__form label { grid-column: 1 / -1; }
  .home-seo__card { padding: 42px; }
}

@media (max-width: 620px) {
  .home-panel { width: calc(100% - 16px); border-radius: 13px; }
  .home-title, .home-audience__panel > .home-title, .home-offer h1, .home-value h2, .home-contact h2, .home-seo h2 { font-size: 27px; }
  .home-showcase { min-height: 0; padding: 72px 10px 28px; }
  .home-showcase__images { grid-template-columns: 1fr 1fr; }
  .home-showcase__images img { height: 58vw; min-height: 0; }
  .home-showcase__images img:last-child { grid-column: 1 / -1; height: 46vw; }
  .home-categories { gap: 8px; margin-top: 20px; }
  .home-categories a { height: 40px; padding: 4px 8px; font-size: 9px; }
  .home-showcase__cta { width: 92%; height: 44px; margin-top: 18px; font-size: 12px; }
  .home-offer__card, .home-audience__panel, .home-value__card { padding: 36px 16px; }
  .home-offer p { font-size: 14px; }
  .home-facts { gap: 8px; margin-top: 30px; }
  .home-fact { width: 92px; height: 92px; }
  .home-fact strong { font-size: 43px; }
  .home-fact span, .home-fact small, .home-fact--cycle small { font-size: 10px; }
  .home-fact--cycle img { width: 34px; height: 34px; }
  .home-offer__actions { grid-template-columns: 1fr; margin-top: 30px; }
  .home-offer__actions .home-button { height: 44px; font-size: 11px; }
  .home-audience__grid { grid-template-columns: 1fr; margin-top: 34px; }
  .home-audience-card { height: 426px; }
  .home-audience__cta { width: 100%; height: 44px; font-size: 12px; }
  .home-value__columns p { font-size: 15px; text-align: left; }
  .home-value__signature { font-size: 15px; }
  .home-advantages > .home-title { height: auto; margin: 0 20px 34px; }
  .home-advantages__grid { width: calc(100% - 32px); }
  .home-adv-card { height: auto; min-height: 523px; grid-template-rows: 1fr 175px; }
  .home-process > .home-title { margin: 0 18px 40px; }
  .home-process__list { width: calc(100% - 32px); }
  .home-step { height: auto; min-height: 430px; margin-bottom: 24px; padding-top: 210px; }
  .home-step__image, .home-step--reverse .home-step__image { top: 20px; right: auto; left: 50%; width: calc(100% - 40px); height: 210px; transform: translateX(-50%); }
  .home-step__copy, .home-step--reverse .home-step__copy { padding: 36px 22px 25px; }
  .home-step h3 { font-size: 19px; }
  .home-brief { padding: 40px 0 80px; }
  .home-brief__card { width: calc(100% - 64px); height: auto; min-height: 340px; margin-left: 56px; }
  .home-brief__card > img { top: 75px; left: -65px; width: 170px; height: 230px; }
  .home-brief__card > div { padding: 42px 20px 35px 85px; }
  .home-brief h2 { font-size: 30px; }
  .home-faq h2 { font-size: 29px; }
  .home-faq summary { min-height: 76px; padding-right: 50px; font-size: 18px; }
  .home-faq summary::after { width: 36px; height: 36px; font-size: 32px; }
  .home-contact { padding: 40px 16px; }
  .home-contact__form { width: 100%; grid-template-columns: 1fr; gap: 12px; }
  .home-contact__form button, .home-contact__form label { grid-column: 1; }
  .home-seo { padding-top: 24px; }
  .home-seo__card { padding: 34px 22px; }
  .home-seo p { font-size: 15px; text-align: left; }
  .home-seo button { width: 100%; }
  .home-footer { grid-template-columns: 1fr; padding: 28px 22px; }
}

@media (max-width: 479px) {
  .home-header { display: block; width: 100%; height: 48px; padding: 0; border-radius: 0 0 13px 13px; }
  .home-header__contacts { position: absolute; top: 15px; left: 12px; display: block; font-size: 20px; line-height: 30px; }
  .home-header__mail, .home-header__cta, .home-brand small, .home-menu-toggle, .home-mobile-menu { display: none !important; }
  .home-brand { position: absolute; top: 15px; left: calc(50% - 38px); display: block; width: 148px; font-size: 20px; line-height: 30px; white-space: nowrap; }
  .home-brand > span { font-size: 20px; }

  .home-showcase { width: calc(100% - 16px); height: 515px; min-height: 515px; margin-top: 48px; padding: 10px 0 0; }
  .home-showcase__images { width: 301px; grid-template-columns: 90px 111px 90px; gap: 5px; margin: 0 auto; }
  .home-showcase__images img, .home-showcase__images img:last-child { width: 100%; height: 198px; min-height: 198px; grid-column: auto; border-radius: 8px; }
  .home-categories { width: 301px; grid-template-columns: 1fr; gap: 4.5px; margin: 20px auto 0; }
  .home-categories a, .home-categories a:nth-child(5), .home-categories a:nth-child(6) { height: 31px; grid-column: auto; padding: 0 5px; font-size: 9px; }
  .home-showcase__cta { width: 301px; height: 38px; margin-top: 20px; font-size: 10px; }

  .home-offer { height: calc(100vw * 2.6484375); min-height: calc(100vw * 2.6484375); padding: 0; }
  .home-offer__card { position: relative; width: 100%; height: calc(100vw * 2.625); padding: 0; border-radius: 0 0 13px 13px; }
  .home-offer h1 { position: absolute; top: calc(100vw * .125); left: 50%; width: calc(100vw * .80625); margin: 0; font-size: 24px; line-height: 29px; transform: translateX(-50%); }
  .home-offer p:first-of-type { display: none; }
  .home-offer p:last-of-type { position: absolute; top: calc(100vw * .534375); left: 50%; width: calc(100vw * .734375); margin: 0; font-size: calc(100vw * .046875); line-height: 1.45; transform: translateX(-50%); }
  .home-facts { position: absolute; top: calc(100vw * .815625); left: 50%; display: flex; width: calc(100vw * .375); flex-direction: column; gap: calc(100vw * .05); margin: 0; transform: translateX(-50%); }
  .home-fact { width: calc(100vw * .375); height: calc(100vw * .375); flex: 0 0 calc(100vw * .375); }
  .home-fact strong { margin: -2px 0 -5px; font-size: calc(100vw * .184375); }
  .home-fact span, .home-fact small, .home-fact--cycle small { font-size: calc(100vw * .0375); }
  .home-fact--cycle img { width: calc(100vw * .153125); height: calc(100vw * .15625); margin-bottom: 4px; }
  .home-offer__actions { position: absolute; top: calc(100vw * 2.184375); left: 50%; display: grid; width: calc(100vw * .8625); grid-template-columns: 1fr; gap: calc(100vw * .05); margin: 0; transform: translateX(-50%); }
  .home-offer__actions .home-button { height: calc(100vw * .11875); font-size: calc(100vw * .03125); }

  .home-mobile-catalog { position: relative; display: block; height: 874px; overflow: hidden; color: #fff; background: var(--home-green); }
  .home-mobile-catalog__track { position: absolute; top: 59px; left: 50%; display: flex; gap: 14px; width: 730px; transform: translateX(calc(-50% - 27px)); }
  .home-mobile-catalog__track img { width: 234px; height: 292px; flex: 0 0 234px; border-radius: 13px; object-fit: cover; }
  .home-mobile-catalog__links { position: absolute; top: 367px; left: 50%; display: grid; width: 290px; gap: 12px; transform: translateX(-50%); }
  .home-mobile-catalog__links a { display: flex; height: 46px; align-items: center; justify-content: center; border: 1px solid #fff; border-radius: 999px; font-size: 13px; text-align: center; }
  .home-mobile-catalog__cta { position: absolute; top: 781px; left: 50%; width: 290px; height: 46px; color: var(--home-green); font-size: 11px; transform: translateX(-50%); }

  .home-audience { height: 1834px; min-height: 1834px; padding: 0; }
  .home-audience__panel { position: relative; width: 100%; height: 1834px; padding: 0; border-radius: 0; }
  .home-audience__panel > .home-title { position: absolute; top: 36px; left: 50%; width: 320px; height: 87px; font-size: 27px; line-height: 1.2; transform: translateX(-50%); }
  .home-audience__grid { position: absolute; top: 145px; left: 50%; display: grid; width: 294px; grid-template-columns: 1fr; gap: 24px; margin: 0; transform: translateX(-50%); }
  .home-audience-card { width: 294px; height: 381px; border-radius: 9px; }
  .home-audience-card:nth-child(2) { height: 375px; }
  .home-audience-card:nth-child(3) { height: 389px; }
  .home-audience-card:nth-child(4) { height: 350px; }
  .home-audience-card__copy { height: 197px; padding: 16px 13px 0; }
  .home-audience-card:nth-child(2) .home-audience-card__copy { height: 191px; }
  .home-audience-card:nth-child(3) .home-audience-card__copy { height: 205px; }
  .home-audience-card:nth-child(4) .home-audience-card__copy { height: 166px; }
  .home-audience-card h3 { min-height: 55px; font-size: 19px; }
  .home-audience-card ul { font-size: 14px; }
  .home-audience-card img { height: 184px; }
  .home-audience__cta { position: absolute; top: 1772px; left: 50%; width: 293px; height: 46px; margin: 0; font-size: 11px; transform: translateX(-50%); }

  .home-value { height: 637px; min-height: 637px; padding: 50px 0 0; }
  .home-value__card { position: relative; width: 100%; height: 587px; padding: 31px 24px 20px; border-radius: 0; }
  .home-value h2 { margin: 0 6px 49px; font-size: 25px; }
  .home-value__columns { display: block; }
  .home-value__columns p { margin-bottom: 14px; font-size: 13px; line-height: 1.35; }
  .home-value__signature { position: absolute; right: 24px; bottom: 25px; left: 24px; font-size: 13px; }

  .home-advantages { height: 1535px; min-height: 1535px; padding: 30px 0; }
  .home-advantages > .home-title { height: 62px; margin: 0; padding: 0 10px; font-family: Arial, sans-serif; font-size: 26px; line-height: 31px; }
  .home-advantages__grid { display: grid; width: 320px; grid-template-columns: 1fr; gap: 20px; margin: 25px auto 0; }
  .home-adv-card { width: 320px; height: 448px; min-height: 0; grid-template-rows: 264px 184px; overflow: visible; border-radius: 0; color: #171515; background: transparent; }
  .home-adv-card:nth-child(2) { height: 412px; grid-template-rows: 228px 184px; }
  .home-adv-card:nth-child(3) { height: 438px; grid-template-rows: 254px 184px; }
  .home-adv-card > div { padding: 0 10px; }
  .home-adv-card h3 { min-height: 61px; margin: 0 0 19px; padding: 0 0 19px; font-family: Arial, sans-serif; font-size: 17px; line-height: 20px; }
  .home-adv-card ul { font-family: Arial, sans-serif; font-size: 14px; line-height: 16px; }
  .home-adv-card img { width: 320px; height: 184px; }
  .home-advantages__cta { width: 157px; height: 35px; margin: 15px auto 0; font-family: Arial, sans-serif; font-size: 14px; }

  .home-process { position: relative; height: 2240px; min-height: 2240px; padding: 0; }
  .home-process > .home-title { position: absolute; top: 30px; left: 50%; width: 304px; height: 80px; margin: 0; font-size: 27px; line-height: 1.05; transform: translateX(-50%); }
  .home-process__list { position: absolute; top: 133px; left: 50%; width: 300px; margin: 0; transform: translateX(-50%); }
  .home-step { width: 300px; height: 354px; min-height: 354px; margin: 0 0 108px; padding: 0; border-radius: 13px; }
  .home-step:nth-child(2) { height: 295px; min-height: 295px; margin-bottom: 96px; }
  .home-step:nth-child(3) { height: 321px; min-height: 321px; margin-bottom: 108px; }
  .home-step:nth-child(4) { height: 285px; min-height: 285px; margin-bottom: 108px; }
  .home-step:nth-child(5) { height: 320px; min-height: 320px; margin-bottom: 0; }
  .home-step__image, .home-step--reverse .home-step__image { top: 184px; right: auto; left: 16px; width: 267px; height: 240px; border-radius: 13px; transform: none; }
  .home-step:nth-child(2) .home-step__image { top: 125px; }
  .home-step:nth-child(3) .home-step__image { top: 151px; }
  .home-step:nth-child(4) .home-step__image { top: 115px; }
  .home-step:nth-child(5) .home-step__image { top: 162px; }
  .home-step__copy, .home-step--reverse .home-step__copy { padding: 20px 16px; font-family: Arial, sans-serif; }
  .home-step h3 { height: 25px; gap: 12px; margin-bottom: 13px; font-size: 16px; line-height: 25px; white-space: nowrap; }
  .home-step h3 span { width: 25px; height: 25px; flex-basis: 25px; font-size: 15px; }
  .home-step p { margin-bottom: 10px; font-size: 12px; line-height: 12px; }
  .home-step:nth-child(1) p:first-of-type { width: 197px; }
  .home-step:nth-child(1) p:last-of-type, .home-step:nth-child(5) p { width: 264px; }
  .home-step:nth-child(2) p, .home-step:nth-child(4) p { display: inline; margin: 0; }
  .home-step:nth-child(3) p { width: 262px; margin-top: 1px; }
  .home-step:nth-child(4) .home-step__copy { padding-right: 29px; }
  .home-step:nth-child(5) h3 { margin-bottom: 15px; }

  .home-brief { height: 385px; min-height: 385px; padding: 50px 0 0; }
  .home-brief__card { width: 260px; min-height: 275px; margin: 0 0 0 calc(50% - 115px); }
  .home-brief__card > img { top: 55px; left: -67px; width: 160px; height: 210px; }
  .home-brief__card > div { padding: 35px 12px 25px 75px; }
  .home-brief h2 { font-size: 29px; }
  .home-brief p { font-size: 13px; }
  .home-brief .home-button { width: 133px; height: 42px; font-size: 11px; }

  .home-faq { height: 1593px; min-height: 1593px; padding: 90px 20px; }
  .home-faq h2 { height: 59px; margin: 0 0 45px; font-size: 29px; line-height: 1.02; }
  .home-faq__list { width: 350px; }
  .home-faq summary { min-height: 83px; padding: 14.5px 50px 14.5px 0; font-size: 20px; line-height: 27px; }
  .home-faq summary::after { right: 0; width: 36px; height: 36px; font-size: 32px; }

  .home-contact { position: relative; height: 561px; min-height: 561px; padding: 0; }
  .home-contact h2 { position: absolute; top: 40px; left: 50%; width: 290px; height: 102px; margin: 0; font-size: 28px; line-height: 1.2; transform: translateX(-50%); }
  .home-contact__form { position: absolute; top: 159px; left: 50%; display: grid; width: 290px; grid-template-columns: 1fr; gap: 20px; margin: 0; transform: translateX(-50%); }
  .home-contact__form > input:not([type="hidden"]), .home-contact__form button { width: 290px; height: 50px; }
  .home-contact__form label { order: 4; height: 32px; grid-column: 1; font-size: 13px; }
  .home-contact__form button { order: 5; grid-column: 1; }

  .home-seo { position: relative; height: 547px; min-height: 547px; padding: 0; overflow: hidden; }
  .home-seo__card { position: absolute; top: 60px; left: 50%; width: 320px; min-height: 1255px; padding: 20px 10px; border-radius: 13px; transform: translateX(-50%); }
  .home-seo h2 { height: 136px; margin-bottom: 25px; font-size: 27px; line-height: 1; }
  .home-seo p { font-size: 15px; line-height: 1.45; }
  .home-seo #seo-more ul { padding-left: 20px; font-size: 15px; line-height: 1.45; }
  .home-seo::after { content: ""; position: absolute; z-index: 1; top: 420px; right: 0; bottom: 0; left: 0; background: #fff; pointer-events: none; }
  .home-seo button { position: absolute; z-index: 2; top: 365px; left: 50%; width: 157px; height: 38px; margin: 0; font-size: 11px; transform: translateX(-50%); }
  .home-seo:has(#seo-more:not([hidden])) { height: 1442px; min-height: 1442px; }
  .home-seo:has(#seo-more:not([hidden]))::after { top: 1315px; }
  .home-seo:has(#seo-more:not([hidden])) button { top: 1260px; }

  .home-footer { position: relative; display: block; height: 402px; min-height: 402px; padding: 0; font-size: 14px; line-height: 1.3; }
  .home-footer > div:first-child { position: absolute; top: 15px; left: 45px; width: 202px; }
  .home-footer > div:nth-child(2) { position: absolute; top: 145px; left: 45px; width: 202px; }
  .home-footer > div:last-child { position: static; display: block; }
  .home-footer__copy { position: absolute; top: 258px; left: 92px; width: 120px; margin: 0 !important; white-space: nowrap; }
  .home-footer > div:nth-child(2) p:nth-child(4) { position: fixed; }
  .home-footer > div:nth-child(2) p:nth-child(5) { position: fixed; }
  .home-footer > div:nth-child(2) p:nth-child(4), .home-footer > div:nth-child(2) p:nth-child(5) { position: absolute; left: 53px; width: 220px; white-space: nowrap; }
  .home-footer > div:nth-child(2) p:nth-child(4) { top: 166px; }
  .home-footer > div:nth-child(2) p:nth-child(5) { top: 186px; left: 44px; }
  .home-footer > div:last-child > a:first-child { position: absolute; top: 231px; left: 45px; }
  .home-footer__top { position: absolute; top: 369px; left: 170px; }
}

/* Dynamic WordPress blog */
.blog-posts--dynamic { height: auto; min-height: 562px; padding: 30px 0 45px; }
.blog-posts--dynamic .blog-posts__grid { position: static; min-height: 487px; margin: 0 auto; transform: none; }
.original-post__placeholder { display: block; width: 337px; height: 321px; border-radius: 14px; background: #111 url("assets/images/marble.webp") center/cover; }
.blog-posts__empty { width: 100%; grid-column: 1 / -1; font-size: 20px; text-align: center; }
.blog-pagination { display: flex; min-height: 42px; align-items: center; justify-content: center; gap: 8px; margin: 38px auto 0; }
.blog-pagination .page-numbers { display: grid; min-width: 38px; height: 38px; padding: 0 10px; place-items: center; border: 1px solid #254b1a; border-radius: 999px; color: #254b1a; font-family: Arial, sans-serif; font-size: 14px; }
.blog-pagination .page-numbers.current { color: #fff; background: #254b1a; }

.original-article-hero::before, .original-article-hero::after { display: none; }
.original-article-hero__image { position: absolute; top: 56px; left: 50%; width: 678px; height: 442px; object-fit: cover; transform: translateX(-50%); }
.original-article-hero > time { position: absolute; top: 618px; left: 50%; width: 1160px; height: 33px; color: #888; font-size: 20px; line-height: 33px; transform: translateX(-50%); }
.original-article-hero--no-image { height: 330px; }
.original-article-hero--no-image h1 { top: 110px; }
.original-article-hero--no-image > time { top: 250px; }
.original-article-hero .breadcrumbs span { color: #666; }

@media (max-width: 900px) and (min-width: 480px) {
  .blog-posts--dynamic .blog-posts__grid { width: calc(100% - 48px); grid-template-columns: repeat(2, minmax(0, 341px)); justify-content: center; }
  .original-article-hero .breadcrumbs, .original-article-hero > time { width: calc(100% - 48px); }
  .article-page .page-content { width: calc(100% - 48px); }
}

@media (max-width: 479px) {
  .blog-posts--dynamic { height: auto; min-height: 365px; padding: 30px 0 45px; }
  .blog-posts--dynamic .blog-posts__grid { position: static; width: 300px; min-height: 337px; margin: 0 auto; grid-template-columns: 300px; gap: 14px; transform: none; }
  .blog-posts--dynamic .original-post__placeholder { width: 296px; height: 225px; }
  .blog-pagination { margin-top: 28px; }
  .original-article-hero__image { top: 58px; width: 350px; height: 288px; }
  .original-article-hero > time { top: 510px; left: 20px; width: 350px; font-size: 16px; line-height: 24px; transform: none; }
  .original-article-hero--no-image { height: 310px; }
  .original-article-hero--no-image h1 { top: 100px; }
  .original-article-hero--no-image > time { top: 255px; }
}

/* Original Tilda typography and editable article layout */
.product-footer,
.home-faq details p,
.home-advantages > .home-title,
.home-adv-card h3,
.home-adv-card ul,
.home-advantages__cta,
.home-step__copy,
.blog-pagination .page-numbers {
  font-family: "Metrika", Arial, sans-serif;
}

.blog-contact__form input,
.blog-contact__form button,
.blog-contact__phone > span {
  font-family: "Metrika", Arial, sans-serif;
}
.blog-contact__form input {
  border-radius: 4px;
  font-size: 14px;
  line-height: 18.62px;
}
.blog-contact__form button { font-size: 14px; }

.article-page main { padding-top: 87px; overflow: hidden; }
.article-breadcrumb-row { position: relative; height: 51.5px; padding: 15px 0; background: #fff; }
.article-breadcrumb-row .breadcrumbs {
  width: min(1100px, 100%);
  margin: 0 auto 10px;
  overflow: hidden;
  color: #8a8a8a;
  font-family: "YS Text", "Metrika", Arial, sans-serif;
  font-size: 10px;
  line-height: normal;
  text-overflow: ellipsis;
  text-transform: none;
  white-space: nowrap;
}
.article-breadcrumb-row .breadcrumbs b { margin: 0 5px; font-weight: 400; }
.article-breadcrumb-row .breadcrumbs span { color: inherit; }
.article-breadcrumb-row .breadcrumbs::after { content: none; }

.article-page .original-article-hero {
  position: relative;
  height: 640px;
  padding: 0 0 45px;
  background: #fff;
}
.article-page .original-article-hero__image {
  position: absolute;
  top: 0;
  left: 50%;
  width: 678px;
  height: 442px;
  object-fit: cover;
  transform: translateX(-50%);
}
.article-page .original-article-hero h1 {
  position: absolute;
  top: 452px;
  left: calc(50% + 1.5px);
  width: 895px;
  height: 100px;
  margin: 0;
  color: #000;
  font-family: "Metrika", Arial, sans-serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 50px;
  text-align: center;
  text-transform: uppercase;
  transform: translateX(-50%);
}
.article-page .original-article-hero > time {
  position: absolute;
  top: 562px;
  left: 50%;
  width: min(1100px, 100%);
  height: 33px;
  color: #888;
  font-family: "Metrika", Arial, sans-serif;
  font-size: 21px;
  line-height: 33px;
  transform: translateX(-50%);
}
.article-page--marking .original-article-hero { height: 404px; }
.article-page--marking .original-article-hero__image { left: 50%; width: 1160px; height: 120px; object-fit: fill; transform: translateX(-50%); }
.article-page--marking .original-article-hero h1 { top: 130px; left: 50%; height: 186px; font-size: 40px; line-height: 62px; transform: translateX(-50%); }
.article-page--marking .original-article-hero > time { top: 326px; width: min(1100px, 100%); }
.article-page .original-article-hero--no-image { height: 330px; }
.article-page .original-article-hero--no-image h1 { top: 70px; }
.article-page .original-article-hero--no-image > time { top: 250px; }

.article-page main > article.section { padding: 0; }
.article-page .page-content {
  width: min(1100px, 100%);
  max-width: none;
  margin: 0 auto;
  color: #000;
  font-family: "Metrika", Arial, sans-serif;
  font-size: 18px;
  line-height: 27.9px;
  text-align: justify;
}
.article-page .page-content p,
.article-page .page-content li { font-size: 18px; line-height: 25.2px; }
.article-page .page-content p { margin: 16px 0; }
.article-page .page-content > p:first-child { margin-top: 0; }
.article-page .page-content h2 { margin: 32px 0 16px; font-family: "Metrika", Arial, sans-serif; font-size: 35px; font-weight: 400; line-height: 45.5px; text-align: left; }
.article-page .page-content h3 { margin: 32px 0 16px; font-family: "Metrika", Arial, sans-serif; font-size: 30px; font-weight: 400; line-height: 39px; text-align: left; }
.article-page .page-content ul,
.article-page .page-content ol { margin: 0 0 16px; padding-left: 22px; }
.article-page .page-content li + li { margin-top: 0; }

.article-page .tn-table-scroll { width: 100%; margin: 46px 0 60px; overflow: hidden; }
.article-page--marking .tn-table-scroll { margin: 16px 0 30px; }
.article-page .tn-table-wrap { width: 100%; overflow: hidden; border-radius: 16px; }
.article-page .page-content table.tn-table {
  width: 100%;
  min-width: 100%;
  height: auto;
  margin: 0;
  border: 0;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  color: #4d4c4c;
  background: #fff;
  font-family: Times, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.45;
}
.article-page .page-content .tn-table th,
.article-page .page-content .tn-table td {
  padding: 18px 16px;
  border: 0;
  color: #4d4c4c;
  background: #fff;
  font-family: Times, "Times New Roman", serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.45;
  overflow-wrap: break-word;
  text-align: left;
  vertical-align: top;
  white-space: normal;
  word-break: normal;
}
.article-page .page-content .tn-table tbody td { border-top: 1px solid #d9d9d9; border-left: 1px solid #d9d9d9; }
.article-page .page-content .tn-table tbody tr td:last-child { border-right: 1px solid #d9d9d9; }
.article-page .page-content .tn-table tbody tr:last-child td { border-bottom: 1px solid #d9d9d9; }
.article-page .page-content .tn-table thead th { border-top: 1px solid #d9d9d9; border-bottom: 1px solid #d9d9d9; border-left: 1px solid #d9d9d9; color: #000; background: #d9d9d9; text-transform: uppercase; }
.article-page .page-content .tn-table thead th:last-child { border-right: 1px solid #d9d9d9; }
.article-page .page-content .tn-table thead th + th { border-left-color: #fff; }
.article-page .page-content .tn-table thead th:first-child { border-top-left-radius: 16px; }
.article-page .page-content .tn-table thead th:last-child { border-top-right-radius: 16px; }
.article-page .page-content .tn-table tbody tr:last-child td:first-child { border-bottom-left-radius: 16px; }
.article-page .page-content .tn-table tbody tr:last-child td:last-child { border-bottom-right-radius: 16px; }
.article-page--gost .page-content table.tn-table { height: 715.5px; }
.article-page--marking .page-content table.tn-table { height: 343.5625px; }

.article-page .page-content h2:has(+ .inline-faq),
.article-page .page-content h2:has(+ .article-faq) {
  width: min(1100px, 100%);
  margin: 70px 0 60px 50%;
  font-size: 40px;
  line-height: 52px;
  transform: translateX(-50%);
}
.article-page .inline-faq,
.article-page .article-faq {
  width: min(1100px, 100%);
  margin: 0 0 35px 50%;
  font-family: "Metrika", Arial, sans-serif;
  text-align: left;
  transform: translateX(-50%);
}
.article-page--cycle .article-faq { margin-top: 0; }
.article-page--marking .inline-faq,
.article-page--marking .article-faq { margin-top: 0; }
.article-page .inline-faq details,
.article-page .article-faq details { min-height: 0; margin: 0 0 12px; border: 0; border-radius: 18px; background: #eee; overflow: hidden; }
.article-page .inline-faq summary,
.article-page .article-faq summary {
  position: relative;
  display: flex;
  min-height: 84px;
  align-items: center;
  padding: 22px 82px 22px 32px;
  color: #000;
  font-size: 25px;
  line-height: 32px;
  list-style: none;
  cursor: pointer;
}
.article-page .inline-faq summary::-webkit-details-marker,
.article-page .article-faq summary::-webkit-details-marker { display: none; }
.article-page .inline-faq summary::after,
.article-page .article-faq summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 28px;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 50%;
  color: #000;
  background: transparent;
  font-family: Arial, sans-serif;
  font-size: 44px;
  font-weight: 300;
  line-height: 1;
  transform: translateY(-50%);
}
.article-page .inline-faq details[open] summary::after,
.article-page .article-faq details[open] summary::after { content: "−"; }
.article-page .inline-faq details p,
.article-page .article-faq details p { margin: -5px 30px 20px; font-size: 18px; line-height: 27.9px; }
.article-page .article-contact { margin-top: 50px; }
.article-page--gost .article-contact { margin-top: 172px; }
.article-page--cycle .article-contact { margin-top: 81px; }
.article-page--marking .article-contact { margin-top: 105px; }

@media (max-width: 479px) {
  .blog-contact__form input { font-size: 14px; line-height: 18.62px; }
  .article-page main { padding-top: 48px; }
  .article-breadcrumb-row { height: 47.5px; padding: 15px 0; }
  .article-breadcrumb-row .breadcrumbs { width: 350px; margin-bottom: 8px; font-size: 8px; }
  .article-breadcrumb-row .breadcrumbs b { margin: 0 3px; }

  .article-page .original-article-hero { height: 395px; }
  .article-page--cycle .original-article-hero { height: 364px; }
  .article-page--marking .original-article-hero { height: 358px; }
  .article-page .original-article-hero__image { top: 0; left: 45.5px; width: 299px; height: 192px; transform: none; }
  .article-page .original-article-hero h1 { top: 202px; left: 45px; width: 300px; height: auto; font-size: 26px; line-height: 31px; transform: none; }
  .article-page .original-article-hero > time { top: 336px; left: 45px; width: 300px; height: 14px; font-size: 12px; line-height: 14px; }
  .article-page--cycle .original-article-hero > time { top: 305px; }
  .article-page--marking .original-article-hero__image { left: 45.5px; width: 299px; height: 62px; }
  .article-page--marking .original-article-hero h1 { top: 72px; left: 45px; width: 300px; height: 217px; font-size: 26px; line-height: 31px; transform: none; }
  .article-page--marking .original-article-hero > time { top: 299px; left: 45px; width: 300px; }
  .article-page .original-article-hero--no-image { height: 310px; }
  .article-page .original-article-hero--no-image h1 { top: 55px; }
  .article-page .original-article-hero--no-image > time { top: 255px; }

  .article-page .page-content { width: 350px; font-size: 16px; line-height: 22.4px; }
  .article-page .page-content p,
  .article-page .page-content li { font-size: 16px; line-height: 22.4px; }
  .article-page .page-content p { margin: 16px 0; }
  .article-page .page-content > p:first-child { margin-top: 0; }
  .article-page .page-content h2 { margin: 32px 0 16px; font-size: 22px; line-height: 28.6px; }
  .article-page .page-content h2:has(+ .inline-faq),
  .article-page .page-content h2:has(+ .article-faq) { width: 350px; margin: 32px 0 45px; font-size: 29px; line-height: 37px; transform: none; }
  .article-page .page-content h3 { margin: 32px 0 16px; font-size: 20px; line-height: 26px; }
  .article-page .page-content ul,
  .article-page .page-content ol { padding-left: 20px; }

  .article-page .tn-table-scroll { margin: 46px 0 60px; overflow-x: auto; overflow-y: hidden; }
  .article-page--marking .tn-table-scroll { margin: 16px 0 27px; }
  .article-page .tn-table-wrap { width: 600px; }
  .article-page .page-content table.tn-table { width: 600px; min-width: 600px; }
  .article-page--gost .page-content table.tn-table,
  .article-page--marking .page-content table.tn-table { height: auto; }
  .article-page--marking .page-content .tn-table-scroll--1 table.tn-table { height: 335.984375px; }
  .article-page--marking .page-content .tn-table-scroll--2 table.tn-table { height: 401.4765625px; }
  .article-page--marking .page-content .tn-table-scroll--3 table.tn-table { height: 411.578125px; }
  .article-page--marking .page-content .tn-table-scroll--4 table.tn-table { height: 410.171875px; }
  .article-page .page-content .tn-table th,
  .article-page .page-content .tn-table td { padding: 14px 12px; font-size: 14px; line-height: 1.35; }

  .article-page .inline-faq,
  .article-page .article-faq,
  .article-page--cycle .article-faq,
  .article-page--marking .inline-faq,
  .article-page--marking .article-faq { width: 350px; margin: 0 0 25px; transform: none; }
  .article-page .inline-faq summary,
  .article-page .article-faq summary { min-height: 0; padding: 20px 64px 20px 20px; font-size: 20px; line-height: 27px; }
  .article-page .inline-faq summary::after,
  .article-page .article-faq summary::after { right: 8px; width: 40px; height: 40px; }
  .article-page .inline-faq details p,
  .article-page .article-faq details p { margin: -3px 20px 20px; font-size: 16px; line-height: 23.2px; }
  .article-page .article-contact,
  .article-page--gost .article-contact,
  .article-page--cycle .article-contact,
  .article-page--marking .article-contact { margin-top: 35px; }
  .article-page--gost .inline-faq,
  .article-page--gost .article-faq { margin-top: 46px; }
  .article-page--cycle .inline-faq,
  .article-page--cycle .article-faq { margin-top: 76px; }
  .article-page--marking .inline-faq,
  .article-page--marking .article-faq { margin-top: 13px; }
  .article-page--gost .article-contact { margin-top: 250px; }
  .article-page--cycle .article-contact { margin-top: 49px; }
  .article-page--marking .article-contact { margin-top: 210px; }
}

.admin-bar .inner-header { top: 32px; }
@media (max-width: 782px) {
  .admin-bar .inner-header { top: 46px; }
}
