/* МЕГАстом v3.1 — стилевая система поверх шаблона Vicodin.
   Шрифт: Manrope. Единая типографика, кнопки, карточки, сетки. */

/* =========================================================
   1. ТИПОГРАФИКА
   ========================================================= */
body,
p,
input,
textarea,
button,
select {
	font-family: 'Manrope', 'Segoe UI', Arial, sans-serif;
	font-size: 15px;
	line-height: 1.7;
}
h1, h2, h3, h4, h5, h6,
.section-title,
.slide-title,
.footer-title,
.btn,
.theme-btn-1 {
	font-family: 'Manrope', 'Segoe UI', Arial, sans-serif;
}
h1, h2, h3, h4, h5, h6 { font-weight: 700; }

.section-title,
.ltn__section-title-2 .section-title {
	font-size: 40px;
	line-height: 1.3;
	font-weight: 800;
}
.section-subtitle {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.section-title-area.text-center p,
.ms-section-desc {
	max-width: 680px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

@media (max-width: 991px) {
	.section-title,
	.ltn__section-title-2 .section-title { font-size: 28px; }
}
@media (max-width: 575px) {
	.section-title,
	.ltn__section-title-2 .section-title { font-size: 22px; }
}

/* Центрированное описание секций — без боковой полосы шаблона */
.ltn__section-title-2.text-center p {
	border-width: 0;
	padding-left: 0;
	text-align: center !important;
}

/* Главное меню — компактнее, чтобы все 6 пунктов помещались в одну строку */
.ltn__header-3 .ltn__main-menu > ul > li { margin-right: 6px; }
.ltn__header-3 .ltn__main-menu > ul > li > a {
	font-size: 14px;
	padding: 20px 8px;
}

/* =========================================================
   2. КНОПКИ
   ========================================================= */
.btn,
.theme-btn-1 {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .3px;
	padding: 15px 30px;
	white-space: nowrap;
	border-radius: 0;
	text-transform: none;
}

.ms-header-btn {
	font-size: 13px;
	padding: 12px 18px;
}
.ms-btn-white {
	background: #fff;
	color: var(--ltn__secondary-color);
	box-shadow: 0 4px 18px rgba(0, 0, 0, .10);
}
.ms-btn-white:hover,
.ms-btn-white:focus {
	background: var(--ltn__secondary-color);
	color: #fff;
}
.ms-btns .btn { margin-right: 14px; margin-bottom: 10px; }

/* =========================================================
   3. СЛАЙДЕР: читабельность текста + аккуратная кнопка
   ========================================================= */
.ltn__slide-item-10 { position: relative; }
.ltn__slide-item-10::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg,
		rgba(248, 250, 251, .96) 0%,
		rgba(248, 250, 251, .82) 42%,
		rgba(248, 250, 251, .25) 70%,
		rgba(248, 250, 251, 0) 100%);
	z-index: 1;
	pointer-events: none;
}
.ltn__slide-item-10 .ltn__slide-item-inner { position: relative; z-index: 2; }
.slide-item-info .slide-title {
	font-size: 40px;
	line-height: 1.2;
	font-weight: 800;
}
.slide-item-info .btn { font-size: 14px; padding: 14px 28px; }
@media (max-width: 1199px) {
	.slide-item-info .slide-title { font-size: 32px; }
}
@media (max-width: 767px) {
	.slide-item-info .slide-title { font-size: 26px; }
	.slide-item-info .btn { font-size: 13px; padding: 12px 22px; }
}

/* =========================================================
   4. КАРТОЧКИ: преимущества / сертификаты (одна высота)
   ========================================================= */
.ms-equal-row > [class*='col-'] { display: flex; }
.ms-adv-card {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 6px 30px rgba(0, 0, 0, .07);
	padding: 32px 26px;
	margin-bottom: 30px;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	transition: transform .3s ease, box-shadow .3s ease;
}
.ms-adv-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 12px 36px rgba(0, 0, 0, .10);
}
.ms-adv-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 66px;
	height: 66px;
	min-height: 66px;
	border-radius: 50%;
	background: rgba(10, 154, 115, .12);
	color: var(--ltn__secondary-color);
	font-size: 28px;
	margin-bottom: 20px;
}
.ms-adv-title {
	font-size: 17px;
	line-height: 1.45;
	margin-bottom: 10px;
	color: var(--ltn__heading-color);
}
.ms-adv-text {
	font-size: 14px;
	line-height: 1.65;
	margin: 0;
	color: var(--ltn__paragraph-color);
}

/* =========================================================
   5. ШАГИ «КАК МЫ РАБОТАЕМ»
   ========================================================= */
.ms-step-card {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 6px 30px rgba(0, 0, 0, .06);
	padding: 28px 24px;
	margin-bottom: 30px;
	width: 100%;
	display: flex;
	flex-direction: column;
	transition: transform .3s ease, box-shadow .3s ease;
}
.ms-step-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 12px 36px rgba(0, 0, 0, .10);
}
.ms-step-head {
	display: flex;
	align-items: center;
	margin-bottom: 18px;
}
.ms-step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	min-width: 52px;
	border-radius: 50%;
	background: var(--ltn__secondary-color);
	color: #fff;
	font-size: 20px;
	font-weight: 800;
}
.ms-step-line {
	flex: 1;
	height: 2px;
	margin-left: 16px;
	background: linear-gradient(90deg, rgba(10, 154, 115, .45), rgba(10, 154, 115, 0));
}
.ms-step-title {
	font-size: 16px;
	line-height: 1.4;
	margin-bottom: 8px;
	color: var(--ltn__heading-color);
}
.ms-step-text {
	font-size: 13.5px;
	line-height: 1.6;
	margin: 0;
	color: var(--ltn__paragraph-color);
}

/* =========================================================
   6. УСЛОВИЯ СОТРУДНИЧЕСТВА + FAQ
   ========================================================= */
.ms-cond-item {
	display: flex;
	align-items: flex-start;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 6px 30px rgba(0, 0, 0, .06);
	padding: 22px 24px;
	margin-bottom: 18px;
}
.ms-cond-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	min-width: 54px;
	border-radius: 50%;
	background: rgba(10, 154, 115, .12);
	color: var(--ltn__secondary-color);
	font-size: 24px;
	margin-right: 20px;
}
.ms-cond-info h4 {
	font-size: 16px;
	margin-bottom: 6px;
}
.ms-cond-info p {
	font-size: 14px;
	line-height: 1.65;
	margin: 0;
}

.ms-faq-item {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 6px 30px rgba(0, 0, 0, .06);
	margin-bottom: 14px;
	overflow: hidden;
}
.ms-faq-q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	border: 0;
	background: transparent;
	text-align: left;
	font-size: 15px;
	font-weight: 700;
	color: var(--ltn__heading-color);
	padding: 18px 22px;
	cursor: pointer;
}
.ms-faq-arrow {
	width: 10px;
	height: 10px;
	min-width: 10px;
	margin-left: 14px;
	border-right: 2px solid var(--ltn__secondary-color);
	border-bottom: 2px solid var(--ltn__secondary-color);
	transform: rotate(45deg);
	transition: transform .25s ease;
}
.ms-faq-q[aria-expanded='true'] .ms-faq-arrow { transform: rotate(225deg); }
.ms-faq-a { padding: 0 22px 18px; }
.ms-faq-a p { font-size: 14px; line-height: 1.7; margin: 0; }

.ms-faq-help {
	display: flex;
	align-items: flex-start;
	background: rgba(10, 154, 115, .07);
	border: 1px solid rgba(10, 154, 115, .30);
	border-radius: 10px;
	padding: 22px 24px;
	margin-top: 22px;
}
.ms-faq-help h4 { font-size: 16px; margin-bottom: 6px; }
.ms-faq-help p { font-size: 14px; line-height: 1.65; margin: 0; }
.ms-faq-phone {
	font-size: 17px;
	font-weight: 800;
	color: var(--ltn__secondary-color);
}

@media (max-width: 991px) {
	.ms-cond-faq > .col-12:first-child { margin-bottom: 40px; }
}

/* =========================================================
   7. CTA-БАННЕР
   ========================================================= */
.ms-cta { position: relative; }
.ms-cta::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg,
		rgba(248, 250, 251, .96) 0%,
		rgba(248, 250, 251, .80) 45%,
		rgba(248, 250, 251, .15) 80%,
		rgba(248, 250, 251, 0) 100%);
	z-index: 1;
	pointer-events: none;
}
.ms-cta .container { position: relative; z-index: 2; }

/* =========================================================
   8. БЛОК «О КОМПАНИИ»: отступы + мобильная читабельность
   ========================================================= */
@media (min-width: 992px) {
	.ltn__about-us-area .about-us-info-wrap { padding-left: 45px; }
}
@media (max-width: 991px) {
	.ltn__about-us-area .about-us-info-wrap {
		background: rgba(255, 255, 255, .96);
		border-radius: 10px;
		padding: 30px 24px;
		box-shadow: 0 6px 30px rgba(0, 0, 0, .08);
	}
}
.ltn__about-us-area .ltn__list-item-half li {
	font-size: 14px;
	font-weight: 600;
}

/* =========================================================
   9. НИЖНЯЯ ЛЕНТА ПРЕИМУЩЕСТВ: 4 в один ряд
   ========================================================= */
.ltn__feature-item-box-wrap-2 {
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0;
}
.ltn__feature-item-box-wrap-2 .ltn__feature-item-8 {
	flex: 1 1 25%;
	max-width: 25%;
	display: flex;
	align-items: center;
	padding: 18px 20px;
	margin: 0;
}
.ltn__feature-item-box-wrap-2 .ltn__feature-item-8 .ltn__feature-icon {
	margin-right: 16px;
}
.ltn__feature-item-box-wrap-2 .ltn__feature-item-8 .ltn__feature-icon img {
	width: 42px;
	height: 42px;
	object-fit: contain;
}
.ltn__feature-item-box-wrap-2 .ltn__feature-item-8 h4 {
	font-size: 15px;
	margin-bottom: 3px;
}
.ltn__feature-item-box-wrap-2 .ltn__feature-item-8 p {
	font-size: 13px;
	margin: 0;
}
@media (max-width: 991px) {
	.ltn__feature-item-box-wrap-2 .ltn__feature-item-8 {
		flex: 1 1 50%;
		max-width: 50%;
	}
}
@media (max-width: 575px) {
	.ltn__feature-item-box-wrap-2 .ltn__feature-item-8 {
		flex: 1 1 100%;
		max-width: 100%;
	}
}

/* =========================================================
   10. ТОВАРЫ И ПРОЧЕЕ (база v3)
   ========================================================= */
.no-product-ratting .product-ratting { display: none; }

.product-price .ms-price-request {
	font-size: 15px;
	font-weight: 700;
	color: var(--ltn__secondary-color);
}
.ltn__product-item .product-title { font-size: 15px; line-height: 1.45; }
.ltn__product-item .product-img img { width: 100%; height: auto; object-fit: cover; }

.megastom-form-result { font-size: 14px; min-height: 20px; }
.megastom-form-result.is-ok { color: #4caf50; }
.megastom-form-result.is-error { color: #f44336; }

html { scroll-behavior: smooth; }
:target { scroll-margin-top: 120px; }

.admin-bar .ltn__header-sticky.sticky-active { top: 32px; }

.site-logo img { max-height: 92px; width: auto; }
.ltn__header-middle-area .site-logo img { max-height: 112px; }
.footer-logo .site-logo img { max-height: 100px; }

.ltn__top-bar-menu li span i,
.ltn__top-bar-menu li a i { margin-right: 5px; }

.product-hover-action a { cursor: pointer; }

/* Категории: ровные карточки */
.ltn__category-item-6 .ltn__category-item-name h6 {
	font-size: 13.5px;
	line-height: 1.4;
}

/* Footer: единые отступы и размеры */
.footer-widget p { font-size: 14px; line-height: 1.7; }
.footer-menu ul li { font-size: 14px; }
.footer-address-info p { font-size: 14px; margin-bottom: 4px; }

/* =========================================================
   11. ПОП-АП ЗАЯВКИ
   ========================================================= */
.ms-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: none;
}
.ms-modal.is-open { display: block; }
.ms-modal-overlay {
	position: absolute;
	inset: 0;
	background: rgba(13, 27, 38, .6);
}
.ms-modal-dialog {
	position: relative;
	width: calc(100% - 32px);
	max-width: 470px;
	margin: 9vh auto 0;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
	padding: 42px 40px 36px;
}
.ms-modal-close {
	position: absolute;
	top: 14px;
	right: 18px;
	border: 0;
	background: transparent;
	font-size: 30px;
	line-height: 1;
	color: #9aa6ad;
	cursor: pointer;
}
.ms-modal-close:hover { color: var(--ltn__heading-color); }
.ms-modal-title {
	font-size: 24px;
	font-weight: 800;
	margin-bottom: 10px;
}
.ms-modal-text {
	font-size: 15px;
	line-height: 1.6;
	margin-bottom: 24px;
	color: var(--ltn__paragraph-color);
}
.ms-modal-dialog input[type='text'],
.ms-modal-dialog textarea {
	width: 100%;
	border: 0;
	background: #f2f5f7;
	border-radius: 0;
	font-size: 15px;
	padding: 15px 18px;
	margin-bottom: 14px;
}
.ms-modal-dialog input[type='text']:focus,
.ms-modal-dialog textarea:focus {
	outline: 2px solid var(--ltn__secondary-color);
}
.ms-modal-dialog textarea { resize: vertical; min-height: 90px; }
.ms-modal-dialog button[type='submit'] {
	width: 100%;
	margin: 4px 0 0;
}
.ms-modal-dialog .megastom-form-result { margin-top: 12px; text-align: center; }
.ms-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	opacity: 0;
}
body.ms-modal-locked { overflow: hidden; }
@media (max-width: 575px) {
	.ms-modal-dialog { padding: 34px 22px 28px; }
}

/* =========================================================
   12. СТРАНИЦА 404
   ========================================================= */
.ms-404 {
	position: relative;
	min-height: 72vh;
	display: flex;
	align-items: center;
	background-size: cover;
	background-position: center;
}
.ms-404::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(248, 250, 251, .92), rgba(248, 250, 251, .82));
}
.ms-404 .container { position: relative; z-index: 2; text-align: center; }
.ms-404-code {
	font-size: 120px;
	line-height: 1;
	font-weight: 800;
	color: var(--ltn__secondary-color);
	margin-bottom: 14px;
}
.ms-404-title {
	font-size: 28px;
	font-weight: 800;
	margin-bottom: 12px;
}
.ms-404-text {
	font-size: 15px;
	max-width: 520px;
	margin: 0 auto 28px;
	color: var(--ltn__paragraph-color);
}
@media (max-width: 575px) {
	.ms-404-code { font-size: 80px; }
	.ms-404-title { font-size: 22px; }
}
