:root {
--main-color: #0076d1;
--logo-f-maxheight: 120px;
--logo-f-margin: 0 0px 15px -15px;
--logo-maxheight: 111px;
--logo-margin: 0;
--header-bckg: #fffffffa;
--header-border: 0px solid #000000;
--header-bradius: 0px;
--header-img: none;
--header-margin: 2px auto 2px auto;
--header-padding: 10px 0;
--header-position: relative;
--header-width: 100%;
--header-height: auto;
--header-f-fam: 'Onest', sans-serif;
--header-txt-color: #000000;
--header-f-size: 25px;
--header-f-lnhght: 1.4;
--brand-name-f-size: 1.1rem;
--brand-name-f-lnhght: 1.2;
--brand-tag-f-size: 0.85rem;
--brand-tag-f-lnhght: 1.4;
--brand-jur-f-size: 0.9rem;
--brand-jur-f-lnhght: 1.2;
--phone-f-size: 1rem;
--phone-f-lnhght: 1.2;
--phone-desc-f-size: 0.7rem;
--phone-desc-f-lnhght: 1.1;
--header-addr-f-size: 15px;
--header-addr-f-lnhght: 1.3;
--header-sch-f-size: 0.85rem;
--header-sch-f-lnhght: 1.2;
--header-mail-f-size: 0.9rem;
--header-mail-f-lnhght: 1.4;
--header-btn-f-size: 0.75rem;
--header-links-f-size: 0.85rem;
--header-links-f-lnhght: 1.3;
--footer-bckg: #ffffff;
--footer-border: 1px solid #eeeeee;
--footer-bradius: 5%;
--footer-height: auto;
--footer-width: 90%;
--footer-margin: 0;
--footer-padding: 100px 5% 0 5%;
--footer-img: none;
--footer-f-fam: 'Onest', sans-serif;
--footer-txt-color: #666666;
--footer-f-size: 14px;
--menu-bckg: #0076d1;
--menu-border: none;
--menu-bradius: 0px;
--menu-margin: 0px 0 0 0;
--menu-padding: 0;
--menu-position: relative;
--menu-width: 100%;
--menu-li-lnhght: 20px;
--menu-f-fam: 'Inter', sans-serif;
--menu-width-li: 16%;
--menu-li-color: #ffffff;
--menu-li-color-act: #ffffff;
--menu_li_backgr_act: #0000000d;
--menu-sub-li-backgr: #ffffff;
--menu-sub-li-color: #444444;
--menu-sub-li-color-act: #0076d1;
--body-f-fam: 'Onest', sans-serif;
--body-txt-color: #222222;
--body-f-size: 16px;
--body-a-decor: none;
}
/* ========================================= */
/* ГЛОБАЛЬНЫЕ СТИЛИ (заданы в build_css.php) */
/* ========================================= */
/* THEME NAME:yrvnnakr DESCRIPTION:ДИЗАЙН ОТ 8EK.RU */
article.yrvnnakr>p {width:100%;float: left;margin: 20px 0 0 0;padding: 0;}
article.yrvnnakr ul{width:100%; float: left;margin:10px 0;padding-inline-start: 10px;} article.yrvnnakr ul > li:before {content: ""; display: inline-block;width: 8px; height: 8px;background-color: #0076d1; border-radius: 50%; margin-right: 10px;vertical-align: middle;} 
article.yrvnnakr ul>li{overflow-x:visible;overflow-y:hidden;padding: 0;float: left;width: 96%;margin: 5px 0;} .yrvnnakr ol{width: auto; float: left;}
img.img-yrvnnakr {width:98%;margin:20px 1%;}
::-webkit-scrollbar-button{background-image:url(''); background-repeat:no-repeat; width:10px; height:100%; }::-webkit-scrollbar-track{background-color:#ffffff;}::-webkit-scrollbar-thumb{-webkit-border-radius: 5px; border-radius: 5px; background-color:#cecece;}::-webkit-scrollbar-thumb:hover{background-color:#eaeaea;}::-webkit-resizer{background-image:url(''); background-repeat:no-repeat; width:10px; height:0px}::-webkit-scrollbar{width: 10px;} #i{color:#ffffff; font-size:18px; line-height:18px; margin-left:10px; cursor:pointer; padding:5px 5px; border: 0px solid #e7e8ea; width:35px;}
html { height: 100%; background-color:#ffffff; padding:0; margin:0;  }
html, body {max-width: 100%;overflow-x: hidden;}
li {list-style: none;}
body {display: flex;flex-direction: column;min-height: 100vh;background-color:#ffffff;width: 100%;margin: 0 auto;padding: 0 0;border: none;border-radius: 0px;box-shadow: none;font-family: var(--body-f-fam);letter-spacing: 0.1px;font-size: var(--body-f-size);color: var(--body-txt-color);overflow-x: hidden;}
main {flex: 1 0 auto;background: #ffffffc9;word-break: break-word;color: #000000;width: 96%;margin: 0px 0% 50px 0%;padding: 0 2%;} main.yrvnnakr_m {margin-top: 0;}
main a:link { color: #0076d1; text-decoration: var(--body-a-decor); }
main a:visited { color: #717171; text-decoration: var(--body-a-decor); }
main a:hover { text-decoration:none; color:#717171; }
@media screen and (min-width: 720px) and (max-width: 1050px) {main { margin: 20px auto 0 auto; font-size: 14px; width: 100%; }}
@media screen and (min-width: 0px) and (max-width: 720px) {main {min-height: 50px;margin: 20px 0 0 0;font-size: 13px;width: 100%;border-radius: 0;overflow: hidden;}}
/* Таблица: сброс дефолтных рамок, округление рамок и адаптивный скролл */
article.yrvnnakr table {
width: 100%;
border-collapse: separate;
border-spacing: 0;
margin: 20px 0;
font-size: 0.95rem;
line-height: 1.5;
color: var(--body-txt-color, #333);
background: #ffffff;
border: 1px solid #eef2f5;
border-radius: 8px;
overflow-x: auto;
display: table;
white-space: nowrap;
-webkit-overflow-scrolling: touch;
}
/* Тонкая настройка скроллбара таблицы, чтобы он выглядел аккуратно */
article.yrvnnakr table::-webkit-scrollbar {
height: 6px;
}
article.yrvnnakr table::-webkit-scrollbar-track {
background: #f1f1f1;
border-radius: 0 0 8px 8px;
}
article.yrvnnakr table::-webkit-scrollbar-thumb {
background: #cbd5e1;
border-radius: 3px;
}
article.yrvnnakr table::-webkit-scrollbar-thumb:hover {
background: #94a3b8;
}
/* Обеспечиваем растягивание строк на всю доступную ширину */
article.yrvnnakr table tr {
display: table-row;
width: 100%;
}
/* Общие стили для всех ячеек */
article.yrvnnakr table th,
article.yrvnnakr table td {
padding: 12px 16px;
text-align: left;
border-bottom: 1px solid #eef2f5;
border-right: 1px solid #eef2f5;
width: auto;
}
article.yrvnnakr table th:last-child,
article.yrvnnakr table td:last-child {
border-right: none;
}
/* Стилизация шапки таблицы */
article.yrvnnakr table th {
background: #f8fafc;
color: #1e293b;
font-weight: 700;
text-transform: uppercase;
font-size: 0.8rem;
letter-spacing: 0.5px;
position: sticky;
top: 0;
z-index: 10;
}
/* Стилизация строки с названием модели/категории (td с colspan) */
article.yrvnnakr table tr:first-child td[colspan] {
background: #f1f5f9;
color: var(--main-color, #3498db);
font-weight: 800;
font-size: 1.1rem;
text-align: center;
border-bottom: 2px solid #e2e8f0;
letter-spacing: 1px;
width: 100%;
}
/* Убираем рамку у последней строки */
article.yrvnnakr table tr:last-child td {
border-bottom: none;
}
/* Эффект зебры для быстрой считываемости больших объемов данных */
article.yrvnnakr table tr:nth-child(even):not(:first-child) {
background: #fcfdfe;
}
/* Подсветка строки при наведении мыши */
article.yrvnnakr table tr:hover:not(:first-child) {
background: #f1f5f9;
transition: background 0.15s ease;
}
/* Стилизация акцентов внутри ячеек (strong, em) */
article.yrvnnakr table td strong {
color: #0f172a;
font-weight: 600;
}
article.yrvnnakr table td em {
font-style: normal;
font-weight: 700;
}
/* Умная адаптивность для мобильных экранов: фиксация первого столбца */
@media screen and (max-width: 768px) {
/* Переключаем на block на мобильных устройствах, чтобы работалoverflow-x скролл при фиксации */
article.yrvnnakr table {
display: block;
}
article.yrvnnakr table tr {
display: flex;
width: max-content;
min-width: 100%;
}
article.yrvnnakr table th,
article.yrvnnakr table td {
flex: 1 0 120px;
}
/* Фиксируем первый столбец (Название продукции), чтобы он не уезжал при скролле */
article.yrvnnakr table tr th:first-child,
article.yrvnnakr table tr td:first-child {
position: sticky;
left: 0;
z-index: 2;
background: #ffffff;
box-shadow: 4px 0 8px -4px rgba(0, 0, 0, 0.1);
flex: 1 0 180px;
}
/* Для шапки первого столбца делаем z-index выше, чтобы она была над остальными */
article.yrvnnakr table tr th:first-child {
z-index: 12;
background: #f8fafc;
}
/* Строку с colspan не ломаем фиксацией */
article.yrvnnakr table tr:first-child td[colspan] {
position: static;
box-shadow: none;
display: block;
width: 100%;
flex: none;
}
/* Подсветка зафиксированного поля при ховере строки на мобилках */
article.yrvnnakr table tr:hover td:first-child {
background: #f1f5f9;
}
/* Слегка уменьшаем падинги на телефонах для компактности */
article.yrvnnakr table th,
article.yrvnnakr table td {
padding: 10px 12px;
font-size: 0.85rem;
}
}
aside.yrvnnakr, section.yrvnnakr {font-weight: 300;font-family: var(--body-f-fam); letter-spacing: 0.1px;border: 0px solid #dad7d1;min-height: 0;float: left;width:96%;margin: 5px 0%;padding: 10px 2%;line-height:1.4;font-size: var(--body-f-size);} @media screen and (min-width: 0px) and (max-width: 720px) { aside.yrvnnakr, section.yrvnnakr{width: 96%; margin: 10px 2%; padding: 0;}} .ag{position:relative;float:left;width:90%;margin:10px 5% 40px 5%;background: #f3f3f3;} .ag img {margin:0;} @media screen and (min-width: 0px) and (max-width: 720px){.ag{width:100%;margin:10px 0 40px 0;}} .lait-top-panel{color: #ffffff;}
nav.navigation.pagination.fixed {position: relative!important;float: left;width: 98%;margin: 30px 1%;background: none;bottom: 0;left: 0;top: 0;right: 0;border: 0;height: 50px;z-index: 999;} h2.screen-reader-text {display: none;}

/* --- Стили компонентов --- */
/* Source: widgets.php */
/* --- Виджеты --- */
/* ID 1: ГЛАВНЫЙ СЛАЙДЕР */
.widget-yrvnnakr-1.main-slider{position:absolute;top:0;left:0;width:100%;height:640px;overflow:hidden;background:#000;z-index:0;}
.widget-yrvnnakr-1 .v1-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 0.8s ease-in-out;z-index:1;}
.widget-yrvnnakr-1 .v1-slide.active{opacity:1;z-index:2;}
.widget-yrvnnakr-1 .v1-slide img{width:100%;height:100%;object-fit:cover;filter:brightness(1.0);}
.widget-yrvnnakr-1 .v1-info{position:absolute;bottom:80px;left:50px;z-index:3;max-width:800px;padding-right:20px;}
.widget-yrvnnakr-1 .v1-info h2{display:inline;font-size:3rem;text-transform:uppercase;line-height:1.5;font-weight:900;color:#ffffff !important;background-color:var(--main-color);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:1px 0.6rem;word-break:break-word;}
.widget-yrvnnakr-1 .v1-info p{display:block;font-size:1.3rem;line-height:1.4;color:#161616;background:rgb(255 255 255 / 86%); padding:15px 20px;font-weight:500;max-width:fit-content;margin-top:15px;}
.widget-yrvnnakr-1 .v1-nav{position:absolute;bottom:40px;right:50px;z-index:10;display:flex;gap:10px;}
.widget-yrvnnakr-1 .v1-nav button{background:none;border:1px solid #fff;color:#fff;width:50px;height:50px;border-radius:50%;cursor:pointer;transition:0.3s;}
.widget-yrvnnakr-1 .v1-nav button:hover{background:#fff;color:#000;}
@media (max-width:768px){.widget-yrvnnakr-1.main-slider{height:450px;position:relative;}.widget-yrvnnakr-1 .v1-info{left:20px;bottom:60px;max-width:calc(100% - 40px);}.widget-yrvnnakr-1 .v1-info h2{font-size:1.75rem;}.widget-yrvnnakr-1 .v1-info p{font-size:1rem;padding:10px 15px;}}
/* ID 2: КОНТЕНТНЫЙ СЛАЙДЕР (ДЖИП-ДИЗАЙН + АДАПТИВ) */
.widget-yrvnnakr-2.content-slider-v2 { position: relative; width: 100%; height: 600px; margin-bottom:0px; overflow: hidden; background: #fff; }
.widget-yrvnnakr-2 .v2-slide { position: absolute; width: 100%; height: 100%; opacity: 0; transition: 1s ease; display: flex; align-items: center; }
.widget-yrvnnakr-2 .v2-slide.active { opacity: 1; }
.widget-yrvnnakr-2 .v2-slide img { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: right center; z-index: 1; }
/* Эффект тумана снизу */
.widget-yrvnnakr-2 .v2-slide::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 220px; background: linear-gradient(to top, #fff 15%, transparent 100%); z-index: 2; }
.widget-yrvnnakr-2 .v2-overlay { position: relative; width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 50px; z-index: 10; display: flex; }
.widget-yrvnnakr-2 .v2-content-left { max-width: 750px; text-align: left; }
.widget-yrvnnakr-2 h3 { font-size: 3.8rem; font-weight: 900; color: #fff !important; line-height: 1.1; text-transform: uppercase; margin: 0; }
/* Красная плашка */
.widget-yrvnnakr-2 .v2-badge { background: var(--main-color); color: #fff; padding: 10px 22px; border-radius: 8px; font-size: 1.7rem; vertical-align: middle; margin-left: 15px; display: inline-block; text-transform: none; font-weight: 700; }
/* Серый подзаголовок */
.widget-yrvnnakr-2 .v2-sub-grey { font-size: 1.9rem; color: #fff; font-weight: 700; margin: 25px 0; background: none; padding: 0; line-height: 1.2; }
/* Строка с галочкой */
.widget-yrvnnakr-2 .v2-check-line { font-size: 1.2rem; color: #333; font-style: italic; position: relative; padding-left: 35px; font-weight: 500; }
.widget-yrvnnakr-2 .v2-check-line::before { content: '✔'; position: absolute; left: 0; color: var(--main-color); font-size: 1.5rem; font-weight: 900; font-style: normal; top: -4px; }
/* Декор компас */
.widget-yrvnnakr-2 .v2-compass { width: 100px; height: 100px; margin-top: 50px; border: 1px dashed #ccc; border-radius: 50%; position: relative; opacity: 0.5; display: flex; align-items: center; justify-content: center; }
.widget-yrvnnakr-2 .v2-compass span { display: block; font-size: 0.7rem; color: #999; text-align: center; line-height: 1.2; letter-spacing: 5px; font-weight: bold; }
/* Стрелки навигации */
.widget-yrvnnakr-2 .v2-nav { position: absolute; top: 50%; width: 98%; transform: translateY(-50%); z-index: 20; display: flex; justify-content: space-between; padding: 0 15px; pointer-events: none; }
.widget-yrvnnakr-2 .v2-nav button { pointer-events: auto; background: none; border: none; color: #ccc; font-size: 2.5rem; cursor: pointer; transition: 0.3s; opacity: 0.5; font-family: serif; }
.widget-yrvnnakr-2 .v2-nav button:hover { color: #333; opacity: 1; transform: scale(1.2); }
/* Точки с эффектом кольца */
.widget-yrvnnakr-2 .v2-dots { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); z-index: 15; display: flex; gap: 15px; align-items: center; }
.widget-yrvnnakr-2 .v2-dot { width: 8px; height: 8px; border-radius: 50%; background: #333; cursor: pointer; transition: all 0.3s ease; }
.widget-yrvnnakr-2 .v2-dot.active { background: var(--main-color); box-shadow: 0 0 0 4px #fff, 0 0 0 6px var(--main-color); margin: 0 6px; }
/* --- АДАПТИВ --- */
@media (max-width: 1024px) {
.widget-yrvnnakr-2.content-slider-v2 { height: 500px; }
.widget-yrvnnakr-2 h3 { font-size: 2.8rem; }
.widget-yrvnnakr-2 .v2-badge { font-size: 1.4rem; padding: 6px 15px; }
.widget-yrvnnakr-2 .v2-sub-grey { font-size: 1.5rem; margin: 15px 0; }
.widget-yrvnnakr-2 .v2-overlay { padding: 0 30px; }
.widget-yrvnnakr-2 .v2-compass { width: 80px; height: 80px; margin-top: 30px; }
}
@media (max-width: 768px) {
.widget-yrvnnakr-2.content-slider-v2 { height: 450px; }
.widget-yrvnnakr-2 .v2-slide img { object-position: 80% center; }
.widget-yrvnnakr-2 .v2-overlay { padding: 0 20px; }
.widget-yrvnnakr-2 h3 { font-size: 1.8rem; }
.widget-yrvnnakr-2 .v2-badge { display: block; width: fit-content; margin: 10px 0 0 0; font-size: 1.1rem; padding: 5px 12px; }
.widget-yrvnnakr-2 .v2-sub-grey { font-size: 1.2rem; margin: 10px 0; }
.widget-yrvnnakr-2 .v2-check-line { font-size: 1rem; padding-left: 25px; }
.widget-yrvnnakr-2 .v2-nav { display: none; }
.widget-yrvnnakr-2 .v2-compass { display: none; }
.widget-yrvnnakr-2 .v2-dot.active { box-shadow: 0 0 0 3px #fff, 0 0 0 5px var(--main-color); margin: 0 4px; }
}
@media (max-width: 480px) {
.widget-yrvnnakr-2.content-slider-v2 { height: 380px; }
.widget-yrvnnakr-2 h3 { font-size: 1.5rem; }
.widget-yrvnnakr-2 .v2-slide::after { height: 150px; }
}
/* ID 3: ВИДЖЕТ АКЦЕНТ */
.widget-yrvnnakr-3.w3-wrap { position: relative; width: 100%; min-height: 600px; display: flex; align-items: center; background-position: center; background-size: cover; margin-bottom: 20px; border-radius: 8px; overflow: hidden; }
.widget-yrvnnakr-3.w3-wrap::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.5); z-index: 1; }
.widget-yrvnnakr-3 .w3-container { position: relative; display: flex; width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 50px; align-items: center; z-index: 2; color: #fff; }
.widget-yrvnnakr-3 .w3-content { flex: 1; padding-right: 40px; }
.widget-yrvnnakr-3 .w3-content h2 { font-size: 2.8rem; text-transform: uppercase; font-weight: 700; margin-bottom: 15px; }
.widget-yrvnnakr-3 .w3-side-img { flex: 0 0 40%; }
.widget-yrvnnakr-3 .w3-side-img img { max-width: 100%; border-radius: 8px; box-shadow: 0 10px 30px rgba(0,0,0,0.5); }
@media (max-width: 768px) { .widget-yrvnnakr-3 .w3-container { flex-direction: column; text-align: center; padding: 40px 20px; } .widget-yrvnnakr-3 .w3-side-img { width: 80%; margin-top: 20px; } .widget-yrvnnakr-3 .w3-content h2 { font-size: 1.0rem;word-break:break-word;} }
/* ID 4: СЕТКА ПРЕИМУЩЕСТВ */
.widget-yrvnnakr-4.w4-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-bottom: 30px; }
.widget-yrvnnakr-4 .w4-item { background: #fff; padding: 30px; border-radius: 15px; border: 1px solid #eee; text-align: center; transition: 0.3s; }
.widget-yrvnnakr-4 .w4-item:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.05); }
.widget-yrvnnakr-4 .w4-img { width: 80px; height: 80px; margin: 0 auto 20px; border-radius: 50%; overflow: hidden; }
.widget-yrvnnakr-4 .w4-img img { width: 100%; height: 100%; object-fit: cover; }
.widget-yrvnnakr-4 h4 { font-size: 1.2rem; margin-bottom: 10px; color: #333; }
.widget-yrvnnakr-4 p { font-size: 0.9rem; color: #777; }
@media (max-width: 768px) { .widget-yrvnnakr-4.w4-grid { grid-template-columns: 1fr; } }
/* ID 5: ТЕМНАЯ КАРТОЧКА */
.widget-yrvnnakr-5.w5-card { display: flex; background: #1a1a1a; border-radius: 12px; overflow: hidden; color: #fff; margin-bottom: 30px; }
.widget-yrvnnakr-5 .w5-img { flex: 0 0 50%; height: 400px; }
.widget-yrvnnakr-5 .w5-img img { width: 100%; height: 100%; object-fit: cover; }
.widget-yrvnnakr-5 .w5-text { flex: 1; padding: 50px; display: flex; flex-direction: column; justify-content: center; }
.widget-yrvnnakr-5 h2 { font-size: 2rem; margin-bottom: 20px; color: #ffdd00; }
@media (max-width: 768px) { .widget-yrvnnakr-5.w5-card { flex-direction: column; } .widget-yrvnnakr-5 .w5-img { flex: 0 0 auto; height: 250px; } }
/* ID 6: ГАЛЕРЕЯ МОЗАИКА */
.widget-yrvnnakr-6.w6-mosaic { display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 200px); gap: 10px; margin-bottom: 30px; }
.widget-yrvnnakr-6 .w6-item { position: relative; overflow: hidden; border-radius: 8px; }
.widget-yrvnnakr-6 .w6-item img { width: 100%; height: 100%; object-fit: cover; transition: 0.5s; }
.widget-yrvnnakr-6 .w6-item:nth-child(1) { grid-column: span 2; grid-row: span 2; }
.widget-yrvnnakr-6 .w6-item:hover img { transform: scale(1.1); }
.widget-yrvnnakr-6 .w6-label { position: absolute; bottom: 0; left: 0; right: 0; padding: 15px; background: rgba(0,0,0,0.6); color: #fff; font-size: 0.8rem; }
/* ID 7: КАРТА */
.widget-yrvnnakr-7.w7-map-wrap { width: 100%; height: 450px; margin-bottom: 30px; border-radius: 12px; overflow: hidden; background: #eee; position: relative; }
.widget-yrvnnakr-7 iframe { width: 100% !important; height: 100% !important; border: 0 !important; }

/* Source: search.php */
/*AJAX ПОИСК */
.ajax-search-wrapper { position: relative; width: 100%; margin:0px 0; }
.search-input-group { position: relative; width: 100%; display: flex; align-items: center; }
.ajax-search-input {
width: 100% !important;
padding: 12px 45px 12px 15px !important;
border: 2px solid #eee !important;
border-radius: 8px !important;
font-size: 15px !important;
transition: all 0.3s ease;
outline: none;
background: #fdfdfd;
}
.ajax-search-input:focus { border-color: #3498db !important; background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
.search-icon-loader { position: absolute; right: 15px; color: #ccc; pointer-events: none; }
.search-results-dropdown {
position: absolute; top: calc(100% + 5px); left: 0; right: 0;
background: #fff; border-radius: 8px; box-shadow: 0 10px 25px rgba(0,0,0,0.15);
z-index: 9999; max-height: 400px; overflow-y: auto; border: 1px solid #eee;
}
.search-result-item {
display: flex; justify-content: space-between; align-items: center;
padding: 12px 15px; text-decoration: none !important; color: #333 !important;
border-bottom: 1px solid #f5f5f5; transition: background 0.2s;
}
.search-result-item:last-child { border-bottom: none; }
.search-result-item:hover { background: #f9f9f9; }
.res-title { font-weight: 500; font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-right: 10px; }
.res-type { font-size: 11px; background: #ebf5ff; color: #3498db; padding: 2px 8px; border-radius: 4px; text-transform: uppercase; flex-shrink: 0; }
.search-no-results { padding: 15px; text-align: center; color: #999; font-size: 14px; }
.is-loading .sa-search { animation: rotateSearch 1s infinite linear; }
@keyframes rotateSearch { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* Source: modules/speakable/speakable1.php */
/**
* Преимущества SPEAKABLE
*/
/* Сетка списка */
.service-yrvnnakr-list {
display: grid;
/* Строго 3 колонки на десктопе */
grid-template-columns: repeat(3, 1fr);
gap: 25px;
padding: 20px 0;
margin: 0;
list-style: none;
width: 100%;
box-sizing: border-box;
}
/* Карточка (li) */
.service-yrvnnakr-list li {
display: flex;
flex-direction: column; /* Вертикальное расположение: иконка сверху, текст снизу */
align-items: center; /* Центрируем содержимое */
text-align: center; /* Центрируем текст */
background: #fff;
padding: 35px 25px;
min-height: 250px;
border-radius: 16px;
box-shadow: 0 10px 25px rgba(0,0,0,0.06);
/* Акцентная линия снизу для вертикальных блоков смотрится лучше, чем слева */
border-bottom: 5px solid var(--main-color);
transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
position: relative;
box-sizing: border-box;
}
.service-yrvnnakr-list li:hover {
transform: translateY(-8px);
box-shadow: 0 15px 35px rgba(78, 133, 194, 0.15);
border-bottom-color: var(--main-color); /* Затемнение при наведении */
}
/* Иконка-галочка (вместо номера шага) */
.service-yrvnnakr-list li::before {
content: '✔'; /* Символ галочки */
width: 60px;
height: 60px;
flex: 0 0 60px;
background: var(--main-color);
color: #fff;
font-size: 1.8rem;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
margin-bottom: 20px; /* Отступ между галочкой и текстом */
box-shadow: 0 4px 10px rgba(78, 133, 194, 0.3);
transition: transform 0.3s ease;
}
.service-yrvnnakr-list li:hover::before {
transform: scale(1.1) rotate(5deg);
}
/* Текст внутри li */
.service-yrvnnakr-list li {
font-size: 1.2rem;
line-height: 1.4;
color: #333;
font-weight: 500;
}
/**
* Адаптивность
*/
/* Планшеты: 2 в ряд */
@media (max-width: 1024px) {
.service-yrvnnakr-list {
grid-template-columns: repeat(2, 1fr);
padding: 20px 10px;
}
}
/* Мобильные: 1 в ряд */
@media (max-width: 600px) {
.service-yrvnnakr-list {
grid-template-columns: 1fr;
gap: 15px;
}
.service-yrvnnakr-list li {
padding: 30px 20px;
font-size: 1.1rem;
}
.service-yrvnnakr-list li::before {
width: 50px;
height: 50px;
flex: 0 0 50px;
font-size: 1.5rem;
}
}

/* Source: modules/forms/form1.php */
/* МОДАЛЬНОЕ ОКНО ОБРАТНОЙ СВЯЗИ */
.h-modal { display: none; /* ... ваш код активации ... */ }
.h-modal.active { display: flex; }
.callback-title { text-align: center; margin-bottom: 20px; color: #2c3e50; }
.form-group { margin-bottom: 15px; }
.cb-input {
width: 100%;
padding: 12px;
border: 1px solid #ddd;
border-radius: 5px;
box-sizing: border-box; /* Важно для padding */
}
.cb-textarea { resize: vertical; }
.cb-privacy { font-size: 11px; color: #888; margin-bottom: 20px; }
.cb-submit {
width: 100%;
padding: 12px;
border: none;
cursor: pointer;
background: var(--main-color);
color: #fff;
border-radius: 5px;
font-weight: 600;
}
.cb-result { margin-top: 15px; text-align: center; font-weight: 600; }

/* Source: modules/slider/slider1.php */
/* СЛАЙДЕР */
.yrvnnakr_slider {
position: relative;
width: 100%;
height: 600px;
margin: 0 0 0px 0;
overflow: hidden;
background-color: #000;
}
.slider-container {
display: flex;
height: 100%;
transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.slide-item {
min-width: 100%;
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
/* Фон и затемнение */
.slide-bg {
position: absolute;
top: 0; left: 0; width: 100%; height: 100%;
background-size: cover;
background-position: center;
z-index: 1;
}
.slide-overlay {
position: absolute;
top: 0; left: 0; width: 100%; height: 100%;
background: linear-gradient(to right, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.3) 100%);
z-index: 2;
}
/* Контентная часть */
.slide-content {
position: relative;
z-index: 3;
width: 100%;
max-width: 1200px;
padding: 0 40px;
color: #fff;
}
.slide-inner {
max-width: 650px;
}
.slide-title {
font-size: 3.5rem;
font-weight: 800;
margin-bottom: 20px;
line-height: 1.1;
text-shadow: 2px 2px 10px rgba(0,0,0,0.5);
}
.slide-price {
font-size: 2rem;
font-weight: 700;
color: var(--main-color);
margin-bottom: 20px;
}
.slide-text {
font-size: 1.15rem;
line-height: 1.6;
margin-bottom: 35px;
opacity: 0.9;
}
/* Большая синяя кнопка */
.slide-btn-more {
display: inline-block;
padding: 18px 45px;
background-color: var(--main-color);
color: #fff;
text-decoration: none;
font-size: 1.2rem;
font-weight: 700;
border-radius: 5px;
text-transform: uppercase;
letter-spacing: 1px;
transition: background-color 0.3s, transform 0.2s;
}
.slide-btn-more:hover {
opacity: 0.9;
transform: translateY(-2px);
}
/* Навигация (стрелки) */
.slider-prev, .slider-next {
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
background: rgba(255,255,255,0.2);
border: none;
color: #fff;
padding: 20px 15px;
cursor: pointer;
font-size: 2rem;
transition: background 0.3s;
}
.slider-prev { left: 0; border-radius: 0 5px 5px 0; }
.slider-next { right: 0; border-radius: 5px 0 0 5px; }
.slider-prev:hover, .slider-next:hover { background: var(--main-color);}
/* Адаптивность */
@media (max-width: 992px) {
.slide-title { font-size: 2.5rem; }
.yrvnnakr_slider { height: 500px; }
}
@media (max-width: 768px) {
.yrvnnakr_slider {height: auto; min-height: auto;}
.slide-content { text-align: center; padding: 60px 20px; }
.slide-inner { margin: 0 auto; }
.slide-title { font-size: 2rem; }
.slide-text { display: none; } /* Скрываем текст на мобилках */
.slide-overlay { background: rgba(0,0,0,0.6); }
}

/* Source: modules/carowsel/carowsel1.php */
/* КАРУСЕЛЬ: ВАРИАНТ MODERN GRID */
.carowsel {
position: relative;
width: 100%;
overflow: hidden;
padding: 60px 0;
background: #f0f2f5; /* Светло-серый фон для контраста с белыми картами */
}
.carow-viewport {
width: 100%;
max-width: 1400px;
margin: 0 auto;
padding: 0 60px;
}
.carow-container {
display: flex;
gap: 24px;
transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.carow-item {
flex: 0 0 calc(25% - 18px); /* 4 блока */
background: #ffffff;
border-radius: 20px; /* Более мягкие углы */
box-shadow: 0 10px 30px rgba(0,0,0,0.05);
display: flex;
flex-direction: column;
overflow: hidden;
transition: all 0.3s ease;
border: 1px solid rgba(0,0,0,0.03);
}
/* Эффект при наведении на всю карточку */
.carow-item:hover {
transform: translateY(-10px);
box-shadow: 0 20px 40px rgba(0,0,0,0.12);
}
.carow-bg {
position: relative;
width: 100%;
height: 220px;
background-size: cover;
background-position: center;
overflow: hidden;
}
/* Цена в виде ярлыка поверх фото */
.carow-price {
position: absolute;
top: 15px;
right: 15px;
background: var(--main-color);
backdrop-filter: blur(5px); /* Эффект размытия сзади цены */
color: #fff;
padding: 6px 14px;
border-radius: 50px;
font-weight: 700;
font-size: 1rem;
z-index: 5;
box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}
.carow-content {
padding: 25px;
display: flex;
flex-direction: column;
flex-grow: 1;
}
.carow-title {
font-size: 1.25rem;
font-weight: 700;
color: #1a1a1a;
margin-bottom: 12px;
line-height: 1.4;
min-height: 2.8em;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.carow-text {
font-size: 0.95rem;
color: #5f676d;
line-height: 1.6;
margin-bottom: 20px;
/* Ограничиваем текст 3 строками */
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.carow-btn-more {
margin-top: auto;
width: 100%;
text-align: center;
padding: 12px;
background: var(--main-color);
color: #fff;
border-radius: 12px;
font-weight: 600;
text-decoration: none;
transition: background 0.3s;
}
.carow-btn-more:hover {
background: #34495e;
}
/* Навигация: стильные круглые кнопки по краям */
.carow-nav {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 50px;
height: 50px;
border-radius: 50%;
background: #fff;
border: none;
box-shadow: 0 5px 15px rgba(0,0,0,0.1);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
z-index: 10;
transition: all 0.3s;
}
.carow-nav:hover {
background: #2c3e50;
color: #fff;
}
.carow-prev { left: 15px; }
.carow-next { right: 15px; }
/* Адаптив под разные экраны */
@media (max-width: 1200px) {
.carow-item { flex: 0 0 calc(33.333% - 16px); }
}
@media (max-width: 900px) {
.carow-item { flex: 0 0 calc(50% - 12px); }
}
@media (max-width: 600px) {
.carow-viewport { padding: 0 15px; }
.carow-item { flex: 0 0 88%; }
.carow-nav { display: none; }
}
/* АДАПТИВНОСТЬ */
@media (max-width: 1200px) {
.carow-item { flex: 0 0 calc(33.333% - 14px); } /* 3 блока */
}
@media (max-width: 900px) {
.carow-item { flex: 0 0 calc(50% - 10px); } /* 2 блока */
}
@media (max-width: 600px) {
.carow-viewport { padding: 0 10px; }
.carow-item { flex: 0 0 85%; } /* 1.2 блока, чтобы видеть край следующего */
.carow-nav { display: none; }
}

/* Source: modules/h1/h3_txt1.php */
article.yrvnnakr > h3, .yrvnnakr222 > h3 {
width: 100%;
display: block;
margin: 40px 0 20px 0;
padding-left: 15px;
float:left;
font-size: 24px;
font-weight: 600;
color: #222;
border-left: 5px solid var(--main-color); /* Акцентная полоса */
line-height: 1.3;
}

@media (max-width: 600px) {
article.yrvnnakr > h3, .yrvnnakr222 > h3 { font-size: 15px; }
}
.yrvnnakr222 > h3{
width:100%;
float: left;
margin: 20px 0 0 0;
padding: 0;
}

/* Source: modules/tables/table1.php */
/* ТАБЛИЦЫ */
.comparison-wrapper { margin: 30px 0; float: left; width: 100%; overflow-x: auto; border-radius: 12px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05); background: #fff; -webkit-overflow-scrolling: touch; box-sizing: border-box; }
.table-styled { width: 100%; border-collapse: collapse; min-width: 600px; font-family: inherit; }
.table-styled th { background: #f8f9fa; color: #2d3436; padding: 16px; text-align: left; font-weight: 700; border-bottom: 2px solid #edf2f7; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.5px; }
.table-styled td { padding: 16px; border-bottom: 1px solid #edf2f7; color: #4a5568; vertical-align: middle; }
.table-styled tr:hover { background-color: #f7fafc; }
.cms-plus { color: #2b6cb0; font-weight: 600; }
.others-minus { color: #718096; font-style: italic; }
.comparison-title { margin-bottom: 20px; font-size: 1.5rem; color: #2d3436; }
@media (max-width: 600px) {
.table-styled { min-width: 500px; }
.table-styled td, .table-styled th { padding: 12px 8px; font-size: 0.9rem; }
}

/* Source: modules/reviews/review1.php */
/**
* Отзывы
*/
.rating-yrvnnakr-container { display: flex; align-items: center; gap: 20px; margin-bottom: 30px; background: #f9f9f9; padding: 25px; border-radius: 12px; }
.rating-yrvnnakr-big-num { font-size: 48px; font-weight: bold; color: var(--main-color); line-height: 1; }
.rating-yrvnnakr-stars-gold { color: #ffc107; font-size: 24px; }
.rating-yrvnnakr-info-text { color: #666; font-size: 14px; margin-top: 5px; }
.rev-yrvnnakr-card { margin-bottom: 20px; border-bottom: 1px solid #f0f0f0; padding-bottom: 20px; }
.rev-yrvnnakr-meta { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.rev-yrvnnakr-name { font-weight: bold; color: #333; }
.rev-yrvnnakr-date { color: #999; font-size: 13px; }
.rev-yrvnnakr-stars { color: #ffc107; font-size: 14px; margin-bottom: 10px; }
.rev-yrvnnakr-text { margin: 0; line-height: 1.6; color: #444; font-size: 15px; }
.rev-yrvnnakr-external-link { margin-top: 25px; text-align: center; }
.rev-yrvnnakr-btn {
display: inline-block;
padding: 10px 22px;
border: 1px solid var(--main-color);
color: var(--main-color) !important;
text-decoration: none !important;
border-radius: 6px;
transition: 0.3s;
}
.rev-yrvnnakr-btn:hover { background: var(--main-color); color: #fff; }
@media (max-width: 600px) {
.rating-yrvnnakr-container { flex-direction: column; text-align: center; padding: 20px; }
.rev-yrvnnakr-meta { flex-direction: column; align-items: flex-start; gap: 4px; }
}

/* Source: modules/breadcrumb/bc1.php */
/* Базовые стили для хлебных крошек */
.breadcrumbs-container {
font-size: 0.92em;
margin-top: 65px;
color: #666;
line-height: 1.5;
}
.breadcrumb-link {
color: var(--main-color);
text-decoration: none;
border-bottom: 1px solid transparent;
transition: border-bottom 0.2s ease;
}
.breadcrumb-link:hover {
border-bottom: 1px solid var(--main-color);
}
.breadcrumb-sep {
margin: 0 8px;
color: #ccc;
}
.breadcrumb-current {
color: #333;
font-weight: 600;
}
.clearfix {
clear: both;
}
/* --- АДАПТИВНОСТЬ --- */
@media only screen and (max-width: 720px) {
.breadcrumbs-container {
font-size: 13px;
white-space: nowrap;
margin-top: 0px;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
padding: 12px 15px;
}
.breadcrumbs-container::-webkit-scrollbar {
display: none;
}
}

/* Source: modules/top/top1.php */
/* Кнопка ВВЕРХ */
.yrvnnakr_up {
border-radius: 5%;
color: #ffffff;
position: fixed;
bottom: 24px;
right: 5px;
width: 50px;
height: 50px;
text-align: center;
cursor: pointer;
background: var(--main-color); /* Используем динамический цвет[cite: 1] */
z-index: 9999;
display: none;
opacity: 0;
pointer-events: none;
transition: opacity 0.3s ease-in-out, background-color 0.2s ease-in-out;
}
/* Состояние видимости */
.yrvnnakr_up.is-visible {
display: block;
opacity: 1;
pointer-events: auto;
}
.yrvnnakr_up i { line-height: 50px; font-size: 24px; }
.yrvnnakr_up:hover { filter: brightness(0.9); }
@media (max-width: 720px) {
.yrvnnakr_up { width: 40px; height: 40px; bottom: 50px; }
.yrvnnakr_up i { line-height: 40px; font-size: 20px; }
}

/* Source: modules/navigation/menu1.php */
nav.menu_yrvnnakr {border-radius: var(--menu-bradius);position: var(--menu-position);top:0px;border-bottom: var(--menu-border);background-color: var(--menu-bckg);background-repeat: no-repeat;background-size: 200%;background-position: top center;width: var(--menu-width);margin: var(--menu-margin);float: left;height:auto;padding: var(--menu-padding);z-index: 999;box-shadow: 0 0 0px 0 #ffffff; font-family: var(--menu-f-fam); }
@media screen and (min-width: 0px) and (max-width: 1050px){nav.menu_yrvnnakr{width: 100%; position: fixed; z-index: 99999;top: 0px; height:42px; margin:0; background:var(--main-color);}}
@media only screen and (min-width: 1050px){nav.menu_yrvnnakr.fixed{background:var(--menu-bckg);z-index:9999;top:0;left:0;position:fixed;width:100%;height:50px;margin:0 auto;border-bottom: 0px solid #ffffff;} nav.menu_yrvnnakr.fixed #hmenu > ul > li > a {color: var(--menu-li-color)!important;} nav.menu_yrvnnakr.fixed #hmenu>ul>li.pnkt a:after {color: var(--menu-bckg)!important;}}
ul.sub-menu {background:none;} #hmenu>ul>li.pnkt>a:after {content: ''; bottom: 0; left: 0; width: 0%; text-align:center;} #hmenu, #hmenu ul, #hmenu ul li, #hmenu ul li a, #hmenu #knpmn {width:100%;margin: 0; padding: 0; border: 0; list-style: none; line-height: var(--menu-li-lnhght); display: block; position: relative; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
#hmenu > ul > li > a {color: var(--menu-li-color);}
#hmenu > ul > li.active > a {color: var(--menu-li-color-act)!important; font-weight: 800;}
#hmenu li.active {background: var(--menu_li_backgr_act);}
#hmenu li > a {color: var(--menu-li-color);}
#hmenu .sub-menu li > a {color: var(--menu-sub-li-color);}
#hmenu .sub-menu li.active > a {color: var(--menu-sub-li-color-act); font-weight: 700;}
#hmenu:after, #hmenu > ul:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;} #hmenu #knpmn {display: none;} @media all and (max-width: 1050px){#hmenu {background:var(--menu-bckg)}} #hmenu>ul{width: 100%;margin: 0 0%;}
#hmenu > ul >li:first-child{margin-left:0%;}
#hmenu > ul > li {float: left; width: var(--menu-width-li); margin: 0; border-right: 0px solid var(--main-color); background:none; text-align: center;}
@media all and (max-width: 1050px){#hmenu > ul >li:first-child{margin-left:0;}#hmenu > ul > li {float: left;width:100%;margin:0;border-radius: 0;background: #fbfbfb;text-align: center;}#hmenu>ul{width:100%;margin:0%;}}
#hmenu.align-center > ul {font-size: 0; text-align: center;} #hmenu.align-center > ul > li {display: inline-block; float: none;} #hmenu.align-center ul ul {text-align: left;} #hmenu.align-right > ul > li {float: right;} #hmenu > ul > li > a {padding: 17px; font-size: 17px; letter-spacing: 0.2px; text-decoration: none; font-weight: 600; text-transform: normal;}
@media all and (max-width: 1050px){#hmenu ul li a {color: var(--menu-sub-li-color);} #hmenu > ul > li.active > a {color: var(--menu-li-color-act)!important;}}
#hmenu > ul > li:hover > a {color: var(--menu-li-color-act); opacity: 0.8;} #hmenu > ul > li.prnt > a {padding-right: 30px;} 
/* Десктопные плюсики (палочки) */
#hmenu > ul > li.prnt > a:after {position: absolute; top: 22px; right: 11px; width: 8px; height: 2px; display: block; background: #dddddd; content: '';} 
#hmenu > ul > li.prnt > a:before {position: absolute; top: 19px; right: 14px; display: block; width: 2px; height: 8px; background: #dddddd; content: ''; transition: all .25s ease;} 
#hmenu > ul > li.prnt:hover > a:before {top: 23px; height: 0;} 
#hmenu ul ul {position: absolute; left: -9999px; width:100%;} #hmenu ul ul li {height: 0; transition: all .25s ease;} #hmenu li:hover > ul {left: auto;} #hmenu li:hover > ul > li {height: auto;} #hmenu ul ul ul {margin-left: 100%; top: 0;} #hmenu ul ul li a {border-top: 1px solid #e8e8e8; padding: 11px 15px; width: 100%; border-radius: 10px; font-size: 12px; text-decoration: none; font-weight: 400; background: var(--menu-sub-li-backgr);} #hmenu ul ul li:hover > a, #hmenu ul ul li a:hover {color: var(--menu-sub-li-color-act);} 
#hmenu ul ul li.prnt > a:after {position: absolute; top: 16px; right: 11px; width: 8px; height: 2px; display: block; background: #dddddd; content: '';} 
#hmenu ul ul li.prnt > a:before {position: absolute; top: 13px; right: 14px; display: block; width: 2px; height: 8px; background: #dddddd; content: ''; transition: all .25s ease;} 
#hmenu ul ul > li.prnt:hover > a:before {top: 17px; height: 0;}
@media all and (max-width: 1050px) {
#hmenu {width: 100%; text-align: center;} #hmenu ul {width: 100%; display: none;} #hmenu ul li {width: 100%; border-top: 1px solid rgba(120, 120, 120, 0.2);} #hmenu ul ul li, #hmenu li:hover > ul > li {height: auto;} #hmenu ul li a, #hmenu ul ul li a {width: 100%; border-bottom: 0;} #hmenu > ul > li {float: none;} #hmenu ul ul li a {padding-left: 25px;} #hmenu ul ul ul li a {padding-left: 35px;} #hmenu ul ul li a {background: none;} #hmenu ul ul, #hmenu ul ul ul {position: relative; left: 0; width: 100%; margin: 0; text-align: left;} #hmenu #knpmn {display: block; padding: 17px; color: #ffffff; cursor: pointer; font-size: 12px; text-transform: uppercase; font-weight: 700;} #hmenu #knpmn:after {position: absolute; top: 22px; left: 17px; display: block; height: 4px; width: 20px; border-top: 2px solid #ffffff; border-bottom: 2px solid #ffffff; content: '';} #hmenu #knpmn:before {position: absolute; top: 16px; left: 17px; display: block; height: 2px; width: 20px; background: #ffffffeb; content: '';} #hmenu #knpmn.mn-otk:after {top: 23px; border: 0; height: 2px; width: 15px; background: #ffffffeb; transform: rotate(45deg);} #hmenu #knpmn.mn-otk:before {top: 23px; background: #ffffffeb; width: 15px; transform: rotate(-45deg);}
#hmenu ul li.prnt > a:before {display:none!important;}
#hmenu ul li.prnt > a:after {display: block!important; position: absolute; content: "+"!important; right: 15px; top: 50%; transform: translateY(-50%); font-size: 22px; color: var(--menu-sub-li-color); background: transparent!important; width: auto!important; height: auto!important; border:none!important;}
#hmenu li.mob-open > a:after {content: "-"!important; font-size: 28px;}
#hmenu li.mob-open > ul {display: block!important;}
#hmenu li.active {background: var(--menu-li-backgr-act);}
}

/* Source: modules/howto/howto1.php */
/**
* Порядок работы HOWTO
*/
.howto-yrvnnakr-container {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
.howto-yrvnnakr-list {
display: flex;
flex-direction: column;
gap: 20px;
margin-top: 20px;
width: 100%;
}
.howto-yrvnnakr-item {
display: flex;
align-items: center; /* Центрируем номер по вертикали относительно текста */
background: #f9f9f9;
padding: 20px 25px;
border-radius: 8px;
border-left: 5px solid var(--main-color);
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.howto-yrvnnakr-item:hover {
transform: translateY(-3px);
box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}
/* Номер шага — фиксированный круг */
.step-num {
flex-shrink: 0; /* ВАЖНО: Запрещает сжатие круга в flex-контейнере */
flex-grow: 0;
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
background: var(--main-color);
color: #fff;
font-size: 1.4rem;
font-weight: bold;
border-radius: 50%;
margin-right: 25px;
}
/* Текст шага */
.step-content p {
margin: 0;
font-size: 1.1rem;
line-height: 1.5;
color: #333;
}
/* Мобильная адаптация */
@media (max-width: 768px) {
.howto-yrvnnakr-item {
align-items: flex-start;
padding: 15px;
}
}
@media (max-width: 480px) {
.howto-yrvnnakr-item {
flex-direction: column;
}
.step-num {
margin-right: 0;
margin-bottom: 15px;
width: 40px;
height: 40px;
font-size: 1.1rem;
}
}
/* Подсветка для Schema.org якоря */
.howto-yrvnnakr-item:target {
background-color: #fff9f9;
border-left-color: #222;
}

/* Source: modules/footer/footer1.php */
.yrvnnakr-footer {width: var(--footer-width, 100%); background: var(--footer-bckg, #ffffff); background-image: var(--footer-img, none); background-size: cover; background-position: center; color: var(--footer-txt-color, #333); font-family: var(--footer-f-fam, inherit); border-top: var(--footer-border, 1px solid #eeeeee); padding: var(--footer-padding, 40px 0 20px 0); position: relative; }
.f-container {width:100%; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); justify-content: space-between; gap: 40px 30px; align-items: start; }
.f-column { display: flex; flex-direction: column; text-align: left; align-self: stretch; min-width: 0; }
.f-title { font-size: var(--footer-f-size, 1rem); margin: 0 0 20px 0; color: inherit; text-transform: uppercase; letter-spacing: 1px; position: relative; padding-bottom: 10px; font-weight: 700; line-height: 1.2; font-family: var(--footer-f-fam, inherit); color: var(--footer-txt-color, inherit); }
.f-title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 30px; height: 2px; background: var(--main-color); }
.f-logo img {
    max-height: var(--logo-f-maxheight, 120px);
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    margin: var(--logo-f-margin, 0 0px 15px -15px);
    display: block;
}
.f-mini-logo { max-height: 35px; max-width: 60px; width: auto; height: auto; object-fit: contain; flex-shrink: 0; display: inline-block; margin: 0; }
.f-brand-top-row { display: flex; align-items: center; gap: 5px; margin-bottom: 5px; }
.f-brand-name { font-weight: 700; margin: 0 !important; line-height: 1.2; }
.f-brand-desc { margin: 0; line-height: 1.4; }
.f-text { font-size: var(--footer-f-size, 0.9rem); color: inherit; opacity: 0.8; line-height: 1.5; margin-bottom: 10px; }
.f-links { display: flex; flex-direction: column; }
.f-links a { color: inherit; text-decoration: none; margin-bottom: 12px; font-size: var(--footer-f-size, 0.9rem); transition: 0.3s; opacity: 0.8; display: flex; align-items: center; }
.f-links a:hover { color: var(--main-color); transform: translateX(5px); opacity: 1; }
.f-links a i { margin-right: 8px; font-size: 0.7rem; opacity: 0.5; }
.f-contact-item { margin-bottom: 15px; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; }
.f-contact-item a { color: inherit; text-decoration: none; font-weight: 600; font-size: var(--footer-f-size, 0.95rem); display: inline-flex; align-items: center; gap: 10px; line-height: 1.2; width: 100%; }
.f-contact-item i { color: var(--main-color); font-size: 1rem; width: 18px; text-align: center; flex-shrink: 0; }
.f-subdesc { display: block; font-size: 0.75rem; opacity: 0.5; padding-left: 28px; margin-top: 4px; width: 100%; text-align: left; line-height: 1.2; }
.f-info-box p { margin-bottom: 12px; display: flex; align-items: center; gap: 10px; font-size: var(--footer-f-size, 0.9rem); }
.f-social-grid { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 5px; }
.f-btns-stack { display: flex; flex-direction: column; gap: 10px; }
.f-btn { padding: 10px; border-radius: 4px; font-size: 0.75rem; text-align: center; text-decoration: none; font-weight: 700; text-transform: uppercase; }
.btn-primary { color: #fff; }
.btn-outline { border: 1px solid var(--main-color); }
.pill { width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; border-radius: 50%; color: #fff !important; text-decoration: none; font-size: 0.9rem; }
.wa { background: #25d366; } .tg { background: #0088cc; } .vk { background: #4C75A3; } .ok { background: #ee8208; }
.f-bottom { border-top: 1px solid rgba(0,0,0,0.05); margin-top: 40px; text-align: center; padding: 20px 0; font-size: 0.8rem; opacity: 0.5; }
@media (max-width: 1024px) { .f-container { grid-template-columns: repeat(3, minmax(0, 1fr)); justify-content: start; } }
@media (max-width: 768px) { .f-container { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 500px) { .f-container { grid-template-columns: 1fr; } .f-column { align-items: center; text-align: center; } .f-title::after { left: 50%; transform: translateX(-50%); } .f-links a, .f-contact-item, .f-contact-item a, .f-info-box p { justify-content: center; align-items: center; text-align: center; } .f-subdesc { padding-left: 0; text-align: center; } .f-social-grid { justify-content: center; } }

/* Source: modules/header/header1.php */
.yrvnnakr-header, .yrvnnakr-header * { box-sizing: border-box; }
.yrvnnakr-header { height: var(--header-height); width: var(--header-width) !important; margin: var(--header-margin) !important; padding: var(--header-padding) !important; position: var(--header-position); z-index: 1000; font-family: var(--header-f-fam); font-size: var(--header-f-size); line-height: var(--header-f-lnhght); color: var(--header-txt-color); background-color: var(--header-bckg); background-image: var(--header-img); background-repeat: no-repeat; background-position: center; background-size: cover; border-bottom: var(--header-border); border-radius: var(--header-bradius); }
.h-main-line { width: 100%; display: flex; justify-content: center; }
.h-grid-stack { width: 100%; max-width: 1920px; padding:5px 20px; display: flex; flex-direction: column; gap:0px; }
.h-row { display: grid; gap: 20px; width: 100%; align-items: start; }
.h-row:not(:last-child) { border-bottom: 0px solid #f5f5f5;}
.h-grid-5 { grid-template-columns: repeat(5, 1fr); }
.h-grid-4 { grid-template-columns: repeat(4, 1fr); }
.h-grid-3 { grid-template-columns: repeat(3, 1fr); }
.h-grid-2 { grid-template-columns: repeat(2, 1fr); }
.h-grid-1 { grid-template-columns: 1fr; }
.h-row-index-0 .cell-pos-0 { align-items: flex-start; text-align: left; }
.h-row-index-0 .cell-pos-4 { align-items: flex-end; text-align: right; }
.h-row-index-0 .cell-pos-1, .h-row-index-0 .cell-pos-2, .h-row-index-0 .cell-pos-3 { align-items: center; text-align:left; }
.h-row:not(.h-row-index-0) { width: 80%; margin: 0 auto; }
.h-row:not(.h-row-index-0) .h-cell { align-items: center; text-align: center; }
.h-cell { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.h-slot { width: 100%; display: flex; flex-direction: inherit; align-items: inherit; margin-bottom: 4px; }
.header-logo img { max-height: var(--logo-maxheight); margin: var(--logo-margin); width: auto; display: block; }
.h-name-s, .h-tag-s { align-items: flex-start !important; text-align: left !important; }
.brand-row { display: flex; align-items: flex-start; width: 100%; }
.brand-mini-img { max-height: 24px; width: auto; display: inline-block; vertical-align: top; margin-right: 10px; margin-left: 0; position: relative; top: 2px; flex-shrink: 0; }
.brand-indent { display: inline-block; width: 34px; flex-shrink: 0; }
.brand-name { font-weight: 800; font-size: var(--brand-name-f-size); line-height: var(--brand-name-f-lnhght); text-decoration: none; color: inherit; display: flex; align-items: flex-start; }
.brand-tagline { font-size: var(--brand-tag-f-size); line-height: var(--brand-tag-f-lnhght); opacity: 0.8; display: block; width: 100%; }
.brand-fname { font-weight: 600; font-size: var(--brand-jur-f-size); line-height: var(--brand-jur-f-lnhght); }
.brand-lname { font-size: var(--brand-jur-f-size); line-height: var(--brand-jur-f-lnhght); opacity: 0.6; }
.sa { display: inline-block; width: 20px; text-align: center; font-size: 1rem; flex-shrink: 0; }
.phone-link { font-weight: 700; font-size: var(--phone-f-size); line-height: var(--phone-f-lnhght); text-decoration: none; color: inherit; display: inline-flex; align-items: center; }
.phone-link i { color: var(--main-color); margin-right: 5px; }
.phone-desc { font-size: var(--phone-desc-f-size); line-height: var(--phone-desc-f-lnhght); opacity: 0.5; display: block; text-align: right; width: 100%; max-width: 200px; }
.schedule { font-size: var(--header-sch-f-size); line-height: var(--header-sch-f-lnhght); opacity: 0.8; display: flex; align-items: center; }
.addr-full { font-size: var(--header-addr-f-size); line-height: var(--header-addr-f-lnhght); display: inline-flex; align-items: baseline; flex-wrap: nowrap; text-align: left; padding: 0; }
.addr-full i { color: var(--main-color); margin-right: 8px; flex-shrink: 0; }
.h-slot.h-addr-combined { padding: 0; }
.h-mail-s { justify-content: center; text-align: center; }
.header-email {gap:8px; font-size: var(--header-mail-f-size); line-height: var(--header-mail-f-lnhght); display: flex; flex-direction: column; align-items: center; width: 100%; }
.header-email .contact-item { width: 100%; display: flex; align-items: center; justify-content: center; }
.header-email i { color: var(--main-color); margin-right: 8px; }
.header-email a { color: inherit; text-decoration: none; border-bottom: 1px solid rgba(0,0,0,0.1); }
.h-btn { padding: 12px 15px; border-radius: 5px; font-size: var(--header-btn-f-size); font-weight: 700; text-decoration: none; text-transform: uppercase; text-align: center; width:80%; display: block; transition: 0.2s; }
.h-btn:hover { opacity: 0.9; }
.btn-primary { background: var(--main-color); color: #fff; }
.btn-outline { border: 1px solid var(--main-color); color: #ffffff; background: var(--main-color); }
.header-social { display: flex; gap: 8px; }
.pill { width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; border-radius: 50%; color: #fff !important; text-decoration: none; font-size: 0.9rem; }
.wa { background: var(--main-color); }
.tg { background: #0088cc; }
.vk { background: #4C75A3; }
.ok { background: #ee8208; }
.pill.inactive { background: #c9c9c9 !important; opacity: 0.2; pointer-events: none; }
.h-placeholder { opacity: 0.3; font-style: italic; }
.header-tools-wrapper { display: flex; gap: 20px; align-items: center; }
.header-search-mini a, .header-menu-mini a { font-size: 1.5rem; color: inherit; text-decoration: none; transition: 0.3s; }
.h-modal { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); z-index: 9999; }
.h-modal.active { display: flex; align-items: center; justify-content: center; }
.h-modal-body { background: #fff; width: 90%; max-width: 600px; padding: 40px; border-radius: 10px; position: relative; max-height: 80vh; }
.h-modal-scroll { overflow-y: auto; max-height: 60vh; }
.h-modal-close { position: absolute; top: 10px; right: 15px; font-size: 30px; border: none; background: none; cursor: pointer; }
.header-links-list { text-align: left; }
.header-links-list p { margin: 0 0 5px 0; font-size: var(--header-links-f-size); line-height: var(--header-links-f-lnhght); display: flex; align-items: center; }
.header-links-list a { color: inherit; text-decoration: none; }
@media (max-width: 1200px) { .h-row:not(.h-row-index-0) { width: 100%; } .h-grid-5 { grid-template-columns: repeat(3, 1fr); } .h-grid-4, .h-grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) { .h-grid-5, .h-grid-4, .h-grid-3, .h-grid-2 { grid-template-columns: 1fr; } .h-cell { align-items: center !important; text-align: center !important; } .brand-row { justify-content: center; text-align: center; } .brand-indent { display: none; } .phone-desc { text-align: center; } .schedule, .addr-full, .header-email, .header-links-list p { justify-content: center; } .yrvnnakr-header { margin-top: 50px !important; } }

/* Source: modules/h1/h1_style2.php */
.h1-tpl-7 {float: left; width: 100%; display: flex; align-items: center; gap: 20px; margin: 30px 0; }
.h1-tpl-7 h1 { font-size: clamp(1rem, 2.5vw, 1.5rem); color: #000; text-transform: uppercase; border-left: 2px solid #000; padding-left: 20px; font-weight: 400; margin: 0; }
@media (max-width: 600px) { .h1-tpl-7 { flex-direction: column; align-items: flex-start; gap: 10px; } .h1-tpl-7 h1 { border: none; padding: 0; } }

/* Source: modules/h1/h2_style1.php */
.yrvnnakr_h2 {font-family: "Onest"; letter-spacing: 0.1px;text-align: center;float:left; width:100%; position: relative; margin-bottom:30px;border-bottom: 2px solid #f1f1f1;} .yrvnnakr_h2 h2{font-weight:400;padding-bottom:5px; font-size: 22px; line-height: 22px; text-transform:uppercase; color:#000000;}.yrvnnakr_h2:after{content: '';position:absolute;left:0;width:50%;height:2px;bottom:-2px;background:var(--main-color);z-index:99;}

/* Source: modules/h1/h2_txt1.php */
article.yrvnnakr > h2, .yrvnnakr222 > h2 {
width: 100%;
display: block;
float:left;
margin: 40px 0 20px 0;
padding-bottom: 10px;
font-size: 26px;
line-height: 21px;
font-weight: 700;
color: #333;
border-bottom: 2px solid var(--main-color); /* Цвет вашего бренда */
}
@media (max-width: 600px) {
article.yrvnnakr > h2, .yrvnnakr222 > h2 { font-size: 20px; }
}

/* Source: modules/faq/faq1.php */
/* FAQ: Аккордеон
Использование переменной цвета: var(--main-color)
*/
.faq-yrvnnakr-item {
border: 1px solid #e0e0e0;
border-radius: 8px;
margin-bottom: 12px;
overflow: hidden;
background: #fff;
transition: all 0.3s ease;
}
.faq-yrvnnakr-item:hover {
border-color: var(--main-color);
box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
/* Стили кнопки-вопроса */
.faq-yrvnnakr-question-btn {
width: 100%;
padding: 18px 20px;
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
background: none;
border: none;
text-align: left;
font-size: 1.1em;
font-weight: 600;
color: #333;
transition: color 0.3s ease;
outline: none; /* Убираем стандартную обводку */
}
.faq-yrvnnakr-item.active .faq-yrvnnakr-question-btn {
color: var(--main-color);
}
/* Иконка плюс/минус */
.faq-yrvnnakr-icon {
position: relative;
width: 16px;
height: 16px;
flex-shrink: 0;
margin-left: 15px;
}
.faq-yrvnnakr-icon::before,
.faq-yrvnnakr-icon::after {
content: '';
position: absolute;
background-color: #999;
transition: all 0.3s ease;
}
.faq-yrvnnakr-icon::before { width: 100%; height: 2px; top: 7px; left: 0; }
.faq-yrvnnakr-icon::after { width: 2px; height: 100%; top: 0; left: 7px; }
.faq-yrvnnakr-item.active .faq-yrvnnakr-icon::after {
transform: rotate(90deg);
opacity: 0;
}
.faq-yrvnnakr-item.active .faq-yrvnnakr-icon::before {
background-color: var(--main-color);
}
/* Блок ответа */
.faq-yrvnnakr-answer {
max-height: 0;
overflow: hidden;
transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
background: #f9f9f9;
/* ГЛАВНОЕ: Отключаем встроенный display:none у hidden,
который убивал ваши стили оформления при загрузке */
display: block !important;
}
/* Если скрыт - просто делаем невидимым, но не удаляем стили блока */
.faq-yrvnnakr-answer[hidden] {
visibility: hidden;
pointer-events: none;
}
/* Когда открыт */
.faq-yrvnnakr-item.active .faq-yrvnnakr-answer {
visibility: visible;
}
.faq-yrvnnakr-answer-content {
padding: 0 20px 20px 20px;
color: #555;
line-height: 1.6;
}

/* Source: modules/items/item1.php */
.yrvnnakr { width: 100%; float: left; clear: both; margin-top: 20px; }
.mt-40 { margin-top: 40px; }
.mb-40 { margin-bottom: 40px; }
.yrvnnakrknt { display: flex; flex-wrap: wrap; justify-content: flex-start; width: 100%; padding: 0; box-sizing: border-box; }
.yrvnnakrbx { display: flex; flex-direction: column; justify-content: space-between; width: calc(25% - 20px); margin: 10px; border-radius: 4px; border-bottom: 3px solid var(--main-color); min-height: 380px; overflow: hidden; position: relative; text-align: center; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,0.1); transition: transform 0.3s ease; }
.yrvnnakrbx:hover { transform: translateY(-5px); }
.yrvnnakrmntr { width: 100%; height: 160px; overflow: hidden; }
.yrvnnakrmntr img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.yrvnnakrbx:hover .yrvnnakrmntr img { transform: scale(1.1); }
.yrvnnakrdtl { padding: 15px 10px; display: flex; flex-direction: column; flex-grow: 1; background: #fff; }
.yrvnnakr-title { margin: 0 0 5px; font-size: 17px; line-height: 1.3; font-weight: 600; color: #000; min-height: 44px; }
.yrvnnakr-desc { font-size: 12px; color: #777; line-height: 1.4; margin-bottom: 10px; }
.yrvnnakr-pos { font-size: 13px; color: #666; margin-bottom: 10px; }
.yrvnnakrdtl-ikn { width: 80px; height: 80px; margin: -40px auto 10px; background: #ffffffb5; border-radius: 50%; line-height: 80px; position: relative; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); }
.yrvnnakrdtl-ikn i { color: var(--main-color); }
.yrvnnakr-price { color: var(--main-color); font-size: 14px; margin-bottom: 10px; font-weight: 600; }
.yrvnnakrbtn { display: block; width: 100%; background-color: var(--main-color); color: #fff !important; text-decoration: none !important; line-height: 40px; border-radius: 3px; font-size: 14px; font-weight: 700; text-transform: uppercase; transition: background 0.3s ease; margin-top: auto; }
.yrvnnakrbtn:hover { opacity:0.9; }
.yrvnnakr-empty { text-align: center; padding: 40px; width: 100%; }
@media only screen and (max-width: 1024px) { .yrvnnakrbx { width: calc(50% - 20px); } }
@media only screen and (max-width: 600px) { .yrvnnakrbx { width: calc(100% - 20px); margin: 10px; } .yrvnnakrmntr { height: 180px; } }

/* Source: content.php */
.yrvnnakr1 {border-bottom: 0px solid #fff;
padding:0 0 30px 0;
position: relative;
float: left;
width: 100%;
background-repeat: no-repeat;
background-position: center;
background-size: cover!important;
height: auto;
overflow: hidden;
margin: 0 0 20px 0;}
/**
* Цена на странице услуги/товара
*/
.service-yrvnnakr-price-card {
margin: 20px 0;
padding: 12px 20px;
background: #fdfdfd;
border-radius: 8px;
border-left: 5px solid var(--main-color);
font-size: 1.3rem;
font-weight: 700;
color: #1e293b;
float: right;
position: relative;
clear: both;
}
img.img-yrvnnakr {
width: 100%;
clear: both;
position: relative;
margin: 0 20px 30px 0;
float: left;
}
.yrvnnakr111, .yrvnnakr222 {
float: left;
padding: 20px 1%;
left: 0;
border-radius: 0px;
text-align: left;
color: #000000;
margin: 1% 0% 1% 1%;
position: relative;
font-size: 16px;
line-height: 18px;
background: #ffffff;
height: auto;
overflow: hidden;
}
.yrvnnakr111 {
width: 36.5%;
}
.yrvnnakr222 {
width: 56.5%;
}
@media screen and (min-width: 0px) and (max-width: 1050px) {.yrvnnakr1 {
width: 100%;
margin: 0 0 30px 0;
min-height: 550px;
height: auto;
}
.yrvnnakr111, .yrvnnakr222{width:94%;padding:0 3%;min-height: 380px; height: auto; margin: 20px 0;}}
.gallery-grid {
display: grid;
/* Изменено: строго 3 колонки одинаковой ширины */
grid-template-columns: repeat(3, 1fr);
gap: 10px;
margin: 20px 0;
/* Убрано float, так как grid сам управляет потоком, добавлена полная ширина */
width: 100%;
}
.gallery-grid img {
width: 100%;
height: 220px;
object-fit: cover;
border-radius: 8px;
cursor: pointer;
transition: transform 0.2s;
}
.gallery-grid img:hover {
transform: scale(1.03);
}
.lightbox { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.95); z-index: 9999; display: none; justify-content: center; align-items: center; }
.lightbox img { max-width: 90%; max-height: 80%; border-radius: 4px; box-shadow: 0 0 20px rgba(0,0,0,0.5); }
.lb-nav { position: absolute; top: 50%; transform: translateY(-50%); background: none; border: none; color: white; font-size: 40px; cursor: pointer; padding: 20px; }
.lb-prev { left: 10px; }
.lb-next { right: 10px; }
.lb-close { position: absolute; top: 20px; right: 30px; color: white; font-size: 40px; cursor: pointer; }

