/* === RESET / BASE === */
* {box-sizing:border-box;margin:0;padding:0;}
html {scroll-behavior:smooth;}
body {font-family:'Segoe UI',Arial,sans-serif;color:#111;background:#fffbe6;line-height:1.5;}
a {color:inherit;text-decoration:none;}
.container {width:90%;max-width:1200px;margin:0 auto;}

/* === HEADER === */
.header {background:#ffc400;width:100%;box-shadow:0 2px 8px rgba(34,34,34,0.03);}
.header__top {border-bottom:1px solid #ffe082;padding:0.4rem 0;}
.header__info {display:flex;justify-content:flex-end;gap:2rem;font-size:1rem;color:#111;max-width:1200px;margin:0 auto;flex-wrap:wrap;}
.header__info i {margin-right:6px;font-style:normal;}
.header__main {display:flex;align-items:center;justify-content:space-between;padding:1.1rem 0;max-width:1200px;margin:0 auto;position:relative;}
.header__logo .logo-text {font-size:2.1rem;font-weight:500;letter-spacing:1px;color:#111;display:flex;align-items:center;}
.header__logo b {color:#757575;background:#fff;border-radius:4px;padding:0 4px;font-weight:700;margin-right:2px;}
.header__nav ul {display:flex;gap:2rem;list-style:none;}
.header__nav a {color:#111;font-weight:700;font-size:1.13rem;transition:color 0.15s;}
.header__nav a:hover {color:#01579b;text-decoration:underline;}
.mobile-menu-toggle {display:none;background:none;border:none;font-size:2.2rem;cursor:pointer;color:#01579b;}

/* === MOBILE MENU === */
.header__mobile-menu {display:none;background:#ffc400;padding:0.7rem 0 1.1rem 0;}
.header__mobile-menu ul {list-style:none;text-align:center;gap:1.3rem;display:flex;flex-direction:column;}
.header__mobile-menu a {color:#004ba0;font-weight:700;font-size:1.25rem;padding:0.5rem 0;}
.header__mobile-menu.open {display:block;}

/* === HERO (если используешь отдельный блок) === */
.hero {padding:2.8rem 0 2.2rem 0;text-align:center;}
.hero h1 {font-size:2.1rem;font-weight:800;margin-bottom:0.8rem;letter-spacing:0.5px;}
.hero p {font-size:1.15rem;margin-bottom:1.2rem;}
.consult-btn {display:inline-block;background:#fff;color:#01579b;border-radius:8px;padding:0.9rem 2.1rem;font-size:1.15rem;font-weight:700;box-shadow:0 2px 8px rgba(34,34,34,0.07);border:none;transition:background 0.18s,color 0.18s;margin-top:0.6rem;}
.consult-btn:hover {background:#2979ff;color:#fff;}

/* === FOOTER === */
.footer {background:#222;color:#fff;padding:1.3rem 0;text-align:center;font-size:1rem;margin-top:2rem;}

/* === ICONS (emoji, можно заменить на svg) === */
.icon-calendar::before {content:"📅";}
.icon-mail::before {content:"✉️";}
.icon-phone::before {content:"📞";}
.icon-marker::before {content:"📍";}

/* === RESPONSIVE HEADER === */
@media (max-width:900px){.header__main,.header__info {max-width:98%;}.header__nav ul {gap:1.1rem;}}
@media (max-width:700px){.header__info {justify-content:center;font-size:0.95rem;gap:0.8rem;padding:0 6px;}.header__main {flex-direction:column;align-items:flex-start;padding:0.8rem 0 0.5rem 0;}.header__logo .logo-text {font-size:1.35rem;}.header__logo {margin-bottom:0.6rem;}.header__nav {display:none;}.mobile-menu-toggle {display:block;position:absolute;right:10px;top:15px;}.header__mobile-menu {display:none;}.header__mobile-menu.open {display:block;width:100%;position:relative;background:#ffc400;z-index:999;}.hero {padding:1.3rem 0 1rem 0;}.consult-btn {padding:0.7rem 1.3rem;font-size:1rem;}}

/* === MAIN BANNER === */
.main-banner {width:100%;min-height:440px;display:flex;align-items:center;justify-content:center;position:relative;background:#f6f6f6;overflow:hidden;background-image:url('../img/banner-pk.webp');background-position:right center;background-repeat:no-repeat;background-size:cover;}
.main-banner__content {position:relative;z-index:2;max-width:650px;margin-left:4vw;background:rgba(255,255,255,0.85);border-radius:14px;padding:3.2rem 2.6rem;box-shadow:0 6px 32px rgba(34,34,34,0.06);text-align:left;display:flex;flex-direction:column;align-items:flex-start;}
.main-banner__content h1 {font-size:2.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.1;color:#111;}
.main-banner__content p {font-size:1.23rem;margin-bottom:2.3rem;color:#222;}
.banner-btn {background:#ffc400;color:#111;font-size:1.25rem;font-weight:700;padding:1rem 2.5rem;border-radius:8px;border:none;box-shadow:0 3px 16px rgba(34,34,34,0.10);cursor:pointer;transition:background 0.18s,color 0.18s;text-align:center;}
.banner-btn:hover {background:#ffd740;color:#004ba0;}
@media (max-width:700px){.main-banner {min-height:340px;background-image:url('../img/banner-mob.webp');background-position:center center;}.main-banner__content {max-width:96vw;margin:0 auto;padding:1.4rem 0.8rem;text-align:center;align-items:center;border-radius:8px;box-shadow:0 3px 12px rgba(34,34,34,0.08);}.main-banner__content h1 {font-size:1.22rem;margin-bottom:0.7rem;}.main-banner__content p {font-size:0.99rem;margin-bottom:1.2rem;}.banner-btn {padding:0.75rem 1.3rem;font-size:1.05rem;}}

/* === STATS SECTION === */
.stats {width:100%;background:#eeeeee;background-image:linear-gradient(135deg,rgba(255,196,0,.04),rgba(17,17,17,.035));background-size:cover;background-position:center;padding:2.7rem 0;margin:0 auto;display:flex;justify-content:center;}
.stats__row {display:flex;justify-content:center;align-items:flex-start;gap:6vw;width:100%;max-width:1200px;}
.stats__item {text-align:center;min-width:230px;max-width:370px;margin:0 0.5vw;}
.stats__num {color:#ffc400;font-size:3.3rem;font-weight:900;margin-bottom:0.6rem;line-height:1.1;font-family:inherit;}
.stats__desc {color:#111;font-size:1.15rem;font-weight:700;letter-spacing:0.01em;line-height:1.3;}
@media (max-width:700px){.stats {padding:1.5rem 0 2.5rem 0;background-image:linear-gradient(135deg,rgba(255,196,0,.04),rgba(17,17,17,.035));}.stats__row {flex-direction:column;align-items:center;gap:1.5rem;max-width:96vw;}.stats__item {min-width:unset;max-width:98vw;margin:0 auto;text-align:center;}.stats__num {font-size:2.3rem;}.stats__desc {font-size:1.05rem;}}

/* === SERVICES LIST SECTION === */
.services-list {width:100%;padding:2.6rem 0 2.8rem 0;background:#fafafa;background-image:linear-gradient(135deg,rgba(255,196,0,.04),rgba(17,17,17,.035));background-repeat:no-repeat;background-size:cover;background-position:center;}
.services-list__container {max-width:1200px;margin:0 auto;padding:0 2vw;}
.services-list h2 {font-size:2.1rem;font-weight:800;margin-bottom:0.7rem;color:#111;}
.services-list__subtitle {font-size:1.13rem;font-weight:700;margin-bottom:2.2rem;color:#111;}
.services-list__grid {display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.5rem;max-width:1050px;margin:0 auto;}
.services-list__item {display:flex;align-items:center;justify-content:center;background:#ffc400;color:#111;font-weight:700;font-size:1.18rem;text-decoration:underline;border-radius:8px;min-height:54px;padding:0.6rem 1.1rem;transition:background 0.17s,color 0.17s;text-align:center;cursor:pointer;border:none;box-shadow:0 2px 8px rgba(34,34,34,0.03);}
.services-list__item:hover {background:#ffd740;color:#01579b;text-decoration:underline;}
.services-list h2,.services-list__subtitle {text-align:center;}
@media (max-width:700px){.services-list {padding:1.5rem 0 1.6rem 0;background-image:linear-gradient(135deg,rgba(255,196,0,.04),rgba(17,17,17,.035));}.services-list__container {padding:0 1vw;}.services-list h2 {font-size:1.18rem;}.services-list__subtitle {font-size:0.96rem;margin-bottom:1.2rem;text-align:center;}.services-list__grid {grid-template-columns:1fr;gap:0.85rem 0;max-width:97vw;}.services-list__item {font-size:1.02rem;min-height:46px;padding:0.45rem 0.2rem;}}

/* === ADVANTAGES === */
.advantages {width:100%;background:#fff;padding:2.5rem 0 2.6rem 0;display:flex;flex-direction:column;align-items:center;}
.advantages h2 {text-align:center;font-size:2rem;font-weight:800;margin-bottom:2.2rem;color:#111;}
.advantages__row {display:flex;justify-content:center;align-items:stretch;gap:4vw;width:100%;max-width:1200px;}
.advantage {display:flex;align-items:flex-start;gap:1.3rem;min-width:250px;max-width:370px;padding:0 0.6vw;}
.advantage__icon {flex-shrink:0;display:flex;align-items:flex-start;margin-top:0.2rem;}
.advantage__icon img {width:54px;height:54px;object-fit:contain;display:block;}
.advantage__title {font-size:1.33rem;font-weight:800;color:#111;margin-bottom:0.5rem;}
.advantage__desc {font-size:1.02rem;color:#111;font-weight:500;line-height:1.28;}
@media (max-width:700px){.advantages {padding:1.4rem 0 1.7rem 0;}.advantages__row {flex-direction:column;gap:2.3rem;max-width:97vw;margin:0 auto;}.advantage {flex-direction:column;align-items:center;text-align:center;gap:1rem;min-width:unset;max-width:100vw;padding:0;}.advantage__icon img {width:46px;height:46px;}.advantage__title {font-size:1.12rem;margin-bottom:0.2rem;}.advantage__desc {font-size:0.98rem;}}

/* === WORK STEPS SECTION === */
.work-steps {width:100%;background:#ffc400;padding:2.6rem 0 2.8rem 0;min-height:220px;display:flex;justify-content:center;align-items:center;}
.work-steps__container {max-width:1300px;margin:0 auto;padding:0 1vw;width:100%;}
.work-steps__title {font-size:2.1rem;font-weight:800;color:#111;text-align:center;margin-bottom:2.2rem;}
.work-steps__row {display:flex;gap:2rem;justify-content:center;align-items:flex-start;flex-wrap:wrap;width:100%;}
.work-step {background:#fff;border-radius:16px;min-width:210px;max-width:280px;min-height:150px;flex:1 1 210px;padding:1.3rem 1.1rem 1.1rem 1.1rem;box-shadow:0 4px 16px rgba(34,34,34,0.06);display:flex;flex-direction:column;align-items:center;text-align:center;}
.work-step__num {font-size:2.3rem;font-weight:900;color:#111;margin-bottom:0.7rem;font-family:inherit;letter-spacing:1.5px;}
.work-step__desc {font-size:1.13rem;font-weight:700;color:#111;line-height:1.2;}
@media (max-width:700px){.work-steps {padding:1.7rem 0 1.7rem 0;}.work-steps__container {padding:0 1vw;}.work-steps__title {font-size:1.18rem;margin-bottom:1.1rem;}.work-steps__row {flex-direction:column;gap:0.75rem;align-items:center;width:100%;}.work-step {width:96vw;max-width:440px;margin:0 auto;padding:0.7rem 0.2rem 0.9rem 0.2rem;border-radius:16px;}.work-step__num {font-size:1.25rem;margin-bottom:0.5rem;}.work-step__desc {font-size:0.97rem;}}

/* === PROJECTS (ПРИМЕРЫ РАБОТ) === */
.projects {width:100%;padding:2.4rem 0 2.7rem 0;background:#fff;}
.projects__container {max-width:1200px;margin:0 auto;padding:0 2vw;}
.projects__title {font-size:2.2rem;font-weight:900;color:#111;margin-bottom:0.2rem;text-align:center;}
.projects__more {display:block;color:#7036dd;font-weight:700;text-align:center;margin-bottom:2.1rem;font-size:1.09rem;text-decoration:none;transition:color 0.18s;}
.projects__more:hover {color:#4d1db2;text-decoration:underline;}
.projects__grid {display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 1.5rem;}
.projects__item {display:flex;flex-direction:column;align-items:stretch;}
.projects__item img {width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;margin-bottom:0.7rem;box-shadow:0 2px 12px rgba(34,34,34,0.06);}
.projects__caption {font-size:1.09rem;font-weight:500;color:#111;line-height:1.22;min-height:42px;}
@media (max-width:900px){.projects__grid {grid-template-columns:1fr 1fr;gap:1.3rem 1rem;}}
@media (max-width:700px){.projects {padding:1.3rem 0 1.2rem 0;}.projects__container {padding:0 0.7vw;}.projects__title {font-size:1.19rem;margin-bottom:0.18rem;}.projects__more {margin-bottom:1.1rem;font-size:0.97rem;}.projects__grid {grid-template-columns:1fr;gap:0.92rem 0;}.projects__item img {border-radius:10px;margin-bottom:0.4rem;}.projects__caption {font-size:0.98rem;min-height:unset;}}

/* === REVIEWS (ОТЗЫВЫ И БЛАГОДАРНОСТИ) === */
.reviews {width:100%;padding:2.6rem 0 2.8rem 0;background:#fff;}
.reviews__container {max-width:1200px;margin:0 auto;padding:0 2vw;}
.reviews__title {font-size:2.1rem;font-weight:900;color:#111;margin-bottom:2.3rem;text-align:center;}
.reviews__grid {display:flex;justify-content:center;gap:2.2rem;flex-wrap:wrap;}
.reviews__item {flex:1 1 320px;max-width:350px;min-width:220px;display:flex;justify-content:center;align-items:flex-start;}
.reviews__item img {width:100%;max-width:340px;height:auto;border-radius:12px;box-shadow:0 4px 18px rgba(34,34,34,0.07);background:#fff;}
@media (max-width:900px){.reviews__grid {gap:1.2rem;}.reviews__item {max-width:98vw;min-width:unset;}.reviews__item img {max-width:99vw;}}
@media (max-width:700px){.reviews {padding:1.4rem 0 1.4rem 0;}.reviews__container {padding:0 1vw;}.reviews__title {font-size:1.13rem;margin-bottom:1.3rem;}.reviews__grid {flex-direction:column;gap:0.8rem;align-items:center;}.reviews__item {max-width:96vw;justify-content:center;align-items:center;}.reviews__item img {width:100%;max-width:96vw;border-radius:8px;}}

/* === ABOUT (О КОМПАНИИ) === */
.about {background:#ffc400;width:100%;padding:2.7rem 0 2.8rem 0;}
.about__container {max-width:1100px;margin:0 auto;padding:0 2vw;}
.about__title {text-align:center;font-size:2.1rem;font-weight:900;color:#111;margin-bottom:2rem;}
.about__text {font-size:1.13rem;color:#111;font-weight:400;line-height:1.5;}
.about__text p {margin-bottom:1.1rem;}
.about__text blockquote {font-size:1.07rem;margin:1.1rem 0 1.4rem 0;padding-left:1.4rem;border-left:3px solid #fffde7;color:#222;font-style:italic;background:transparent;}
.about__text ul {margin:1.3rem 0 0 0;padding-left:1.2rem;list-style:none;}
.about__text ul li {margin-bottom:0.7rem;font-size:1.13rem;color:#111;font-weight:400;position:relative;padding-left:0;}
.about__text ul li b {color:#111;font-weight:700;}
.about__text b {font-weight:700;}
@media (max-width:700px){.about {padding:1.2rem 0 1.7rem 0;}.about__container {padding:0 3vw;max-width:100vw;}.about__title {font-size:1.17rem;margin-bottom:1rem;}.about__text {font-size:0.99rem;line-height:1.4;}.about__text blockquote {font-size:0.96rem;margin:0.7rem 0 1rem 0;padding-left:0.8rem;border-left-width:2px;}.about__text ul li {font-size:0.99rem;margin-bottom:0.5rem;}}

/* === EQUIPMENT (НАШЕ ОБОРУДОВАНИЕ) === */
.equipment {width:100%;background:#fff;padding:2.8rem 0 2.7rem 0;}
.equipment__container {max-width:1200px;margin:0 auto;padding:0 2vw;}
.equipment__title {font-size:2.2rem;font-weight:900;color:#111;margin-bottom:2.3rem;text-align:center;}
.equipment__grid {display:grid;grid-template-columns:repeat(4,1fr);gap:2.4rem 2.3rem;align-items:end;}
.equipment__item {display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center;}
.equipment__item img {max-width:210px;width:100%;height:auto;object-fit:contain;margin-bottom:1.1rem;transition:transform 0.18s;border-radius:10px;}
.equipment__item img:hover {transform:scale(1.04);}
.equipment__caption {font-size:1.17rem;color:#111;font-weight:700;line-height:1.22;}
@media (max-width:900px){.equipment__grid {grid-template-columns:1fr 1fr;gap:1.5rem 1.2rem;}.equipment__item img {max-width:170px;margin-bottom:0.7rem;}.equipment__caption {font-size:1rem;}}
@media (max-width:700px){.equipment {padding:1.3rem 0 1.3rem 0;}.equipment__container {padding:0 2vw;}.equipment__title {font-size:1.18rem;margin-bottom:1.1rem;}.equipment__grid {grid-template-columns:1fr;gap:1.1rem 0;}.equipment__item img {max-width:94vw;margin-bottom:0.6rem;}.equipment__caption {font-size:0.98rem;}}

/* === FAQ === */
.faq {background:#ffc400;width:100%;padding:2.7rem 0 2.7rem 0;}
.faq__container {max-width:1200px;margin:0 auto;padding:0 2vw;}
.faq__title {text-align:center;font-size:2.2rem;font-weight:900;color:#111;margin-bottom:2.2rem;}
.faq__flex {display:flex;gap:2.2rem;justify-content:center;align-items:flex-start;}
.faq__column {flex:1 1 420px;min-width:300px;max-width:520px;background:#ffb200;border-radius:2px;padding:0.3rem 0;box-shadow:0 2px 10px rgba(34,34,34,0.04);display:flex;flex-direction:column;gap:0.15rem;}
.faq__item {border-bottom:1px solid #ffc84d;}
.faq__item:last-child {border-bottom:none;}
.faq__question {width:100%;padding:1.18rem 1.7rem 1.18rem 1.2rem;text-align:left;font-size:1.15rem;background:none;border:none;color:#222;font-weight:500;cursor:pointer;outline:none;transition:background 0.15s;display:flex;align-items:center;justify-content:space-between;position:relative;}
.faq__question:after {content:'';display:inline-block;width:22px;height:22px;background:url('data:image/svg+xml;utf8,<svg fill="white" viewBox="0 0 24 24" stroke="orange" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="11" stroke-width="2" fill="none"/><polyline points="7,10 12,15 17,10" stroke-width="2" fill="none"/></svg>') no-repeat center/18px 18px;margin-left:14px;transition:transform 0.2s;}
.faq__item.open .faq__question:after {transform:rotate(180deg);}
.faq__question:hover,.faq__item.open .faq__question {background:#ffd96e;}
.faq__answer {display:none;padding:0 1.25rem 1.1rem 1.25rem;font-size:1.03rem;color:#111;background:none;animation:faqFadeIn 0.23s;}
.faq__item.open .faq__answer {display:block;background:#fff;border-radius:0 0 8px 8px;box-shadow:0 4px 14px rgba(34,34,34,0.05);margin-top:0.2rem;}
@keyframes faqFadeIn {from {opacity:0;transform:translateY(-5px);} to {opacity:1;transform:translateY(0);}}
@media (max-width:950px){.faq__flex {flex-direction:column;gap:1.1rem;align-items:stretch;}.faq__column {max-width:99vw;min-width:0;}}
@media (max-width:700px){.faq {padding:1.1rem 0 1.2rem 0;}.faq__container {padding:0 2vw;}.faq__title {font-size:1.18rem;margin-bottom:0.95rem;}.faq__column {padding:0.1rem 0 0.15rem 0;}.faq__question {font-size:0.98rem;padding:1.02rem 1.2rem 1.02rem 0.8rem;}.faq__answer {font-size:0.95rem;padding:0 0.9rem 0.8rem 0.9rem;}}

/* === CONTACTS SIMPLE === */
.contacts-simple {background:#fff;padding:3.5rem 0 3.2rem 0;}
.contacts-simple__container {max-width:460px;margin:0 auto;text-align:center;box-shadow:0 2px 16px rgba(220,200,70,0.10);border-radius:2.2rem;padding:2.3rem 1rem;}
.contacts-simple__title {font-size:2.2rem;font-weight:900;color:#181818;margin-bottom:2.2rem;letter-spacing:-1px;}
.contacts-simple__buttons {display:flex;flex-direction:column;gap:1.1rem;align-items:center;margin-bottom:1.3rem;}
.contacts-simple__btn {display:inline-block;padding:1rem 2.1rem;background:linear-gradient(90deg,#ffd23b 60%,#ffe686 100%);border:none;border-radius:2.2rem;box-shadow:0 2px 10px rgba(245,206,74,0.11);font-size:1.21rem;font-weight:700;color:#111;text-decoration:none;transition:background 0.2s,box-shadow 0.2s,color 0.2s;letter-spacing:0.02em;}
.contacts-simple__btn:hover,.contacts-simple__btn:focus {background:linear-gradient(90deg,#ffc100 60%,#ffe686 100%);box-shadow:0 6px 24px rgba(251,198,45,0.16);color:#a17800;}
.contacts-simple__work {color:#4c4c4c;font-size:1.09rem;font-weight:500;margin-top:0.6rem;opacity:0.87;}
.contacts-simple__messengers {display:flex;gap:1.1rem;justify-content:center;margin-top:2.1rem;flex-wrap:wrap;}
.contacts-simple__btn--messenger {background:linear-gradient(90deg,#eaf3fb 60%,#f8f9f9 100%);color:#2168b4;font-weight:700;border:2px solid #d5e6fa;box-shadow:0 2px 10px rgba(44,174,233,0.04);transition:all 0.2s;}
.contacts-simple__btn--messenger.tg {color:#229ed9;border-color:#b9e6fa;}
.contacts-simple__btn--messenger.wa {color:#35b246;border-color:#c5eacf;}
.contacts-simple__btn--messenger.tg:hover {background:linear-gradient(90deg,#d5f3fc 60%,#e3f6fd 100%);color:#12567c;}
.contacts-simple__btn--messenger.wa:hover {background:linear-gradient(90deg,#e3fbe9 60%,#f0fff6 100%);color:#206e2d;}
@media (max-width:600px){.contacts-simple__container {max-width:99vw;padding:1.5rem 0.3rem 1.7rem 0.3rem;border-radius:1.1rem;}.contacts-simple__title {font-size:1.22rem;margin-bottom:1.07rem;}.contacts-simple__btn {font-size:1.03rem;padding:0.82rem 1.2rem;}.contacts-simple__work {font-size:0.97rem;margin-top:0.5rem;}.contacts-simple__messengers {flex-direction:column;gap:0.8rem;margin-top:1.15rem;}}

/* === UTIL === */
.visually-hidden {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* === CITY ARTICLE (SEO-БЛОК) === */
.city-article {width:100%;background:#fff;padding:2.7rem 0 2.8rem 0;}
.city-article__container {max-width:1100px;margin:0 auto;}
.city-article h2 {font-size:2rem;font-weight:900;color:#111;text-align:center;margin:0 0 1.6rem 0;}
.city-article p {font-size:1.08rem;color:#222;line-height:1.62;margin:0 0 1rem 0;}
.city-article__list {margin:0.7rem 0 1.4rem 0;padding-left:1.2rem;}
.city-article__list li {font-size:1.06rem;color:#222;line-height:1.5;margin:0 0 0.5rem 0;list-style:disc;}
.city-cta {display:inline-block;background:#ffc400;color:#111;font-weight:800;padding:0.9rem 1.6rem;border-radius:10px;box-shadow:0 4px 16px rgba(34,34,34,0.10);transition:background 0.18s,color 0.18s;text-decoration:none;}
.city-cta:hover {background:#ffd740;color:#004ba0;text-decoration:none;}
@media (max-width:700px){.city-article {padding:1.3rem 0 1.5rem 0;}.city-article h2 {font-size:1.18rem;margin-bottom:0.9rem;}.city-article p {font-size:0.99rem;}.city-article__list li {font-size:0.98rem;}.city-cta {padding:0.75rem 1.1rem;font-size:1rem;}}

/* Отзывы Яндекса (локальный JSON) */
#reviews-yandex .reviews-list {list-style:none;margin:0;padding:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));}
#reviews-yandex .review {background:#fff;border:1px solid #eee;border-radius:12px;padding:14px;box-shadow:0 1px 0 rgba(0,0,0,.02);}
#reviews-yandex .review header {display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px;}
#reviews-yandex .review .author {font-weight:600;}
#reviews-yandex .review .rating {letter-spacing:2px;}
#reviews-yandex .review .body {margin:0 0 8px;line-height:1.55;}
#reviews-yandex .review .more {display:inline-block;margin-top:4px;font-size:14px;color:#0b76ef;text-decoration:none;}
#reviews-yandex .review .more:hover {text-decoration:underline;}
#reviews-yandex .review.empty {text-align:center;color:#8c8c8c;}
#reviews-yandex .reply {margin:10px 0 0;padding:10px 12px;background:#fafafa;border-left:3px solid #ffc84d;border-radius:8px;}
#reviews-yandex .reply__title {font-weight:600;margin:0 0 6px;}
#reviews-yandex .reply__text {margin:0;}
#reviews-yandex .reply__time {display:block;margin-top:6px;font-size:12px;color:#8c8c8c;}
#reviews-yandex .reviews-note {margin-top:10px;font-size:14px;color:#8c8c8c;text-align:center;}
@media (max-width:600px){#reviews-yandex .reviews-list {gap:12px;}}

/* Общая инфа (последняя правка) */
.common-info {padding:40px 0;background:#f9f9f9;}
.common-info__container {max-width:1200px;margin:0 auto;padding:0 15px;}
.common-info__title {font-size:28px;font-weight:700;text-align:center;margin-bottom:20px;color:#222;}
.common-info__text p {margin-bottom:15px;line-height:1.6;font-size:16px;color:#333;}
.common-info__text b {color:#000;font-weight:600;}

/* Adapt the preserved legacy city layout to the shared static site. */
.city-brand{display:block;width:210px;max-width:100%;height:auto}
.header__logo{max-width:45%;flex-shrink:0}
.city-site-links{display:flex;justify-content:center;gap:12px 28px;flex-wrap:wrap;padding:14px 5%;background:#fff;border-bottom:1px solid #eee;font-size:15px;font-weight:600}
.city-site-links a{padding:4px 0;text-decoration:underline;text-underline-offset:4px}
.city-site-links a:hover{color:#765a00}
.city-article__container{width:92%}
.main-banner__content{max-width:min(650px,92vw)}
.stats__row{flex-wrap:wrap;gap:24px}
.stats__item{min-width:0;flex:1 1 230px}
.advantages__row{flex-wrap:wrap}
.advantage{min-width:0;flex:1 1 250px}
.faq__question:focus-visible,.mobile-menu-toggle:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #725400;outline-offset:3px}
.no-js .faq__answer{display:block}
.no-js .mobile-menu-toggle{display:none}
.no-js .header__mobile-menu{display:block}
.no-js .header__mobile-menu ul{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:12px}
.faq__question{gap:8px}
.faq__question:after{flex-shrink:0}
.main-banner__content h1,.common-info__title,.city-article h2{overflow-wrap:anywhere}
.contacts-simple__btn{max-width:100%;overflow-wrap:anywhere}
@media(max-width:1024px){.header__nav{display:none}.mobile-menu-toggle{display:block}.header__main{padding-inline:3vw}.header__mobile-menu.open{display:block}}
@media(max-width:700px){.city-brand{width:180px}.header__logo{max-width:75%}.city-site-links{font-size:14px;gap:8px 18px}.stats__item{flex-basis:auto;width:100%}.advantage{flex-basis:auto;width:100%}.main-banner__content h1{font-size:clamp(22px,5.7vw,30px);line-height:1.2}.projects__title,.faq__title,.contacts-simple__title{overflow-wrap:anywhere}.city-article__container{width:92%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
