/* Дополнения к исходным стилям IRFix: то, что раньше делал Nuxt-клиент */
.ir-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0 24px}
@media(min-width:768px){.ir-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
@media(min-width:1280px){.ir-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ir-card{background:#fff;color:inherit;text-decoration:none}
.ir-card-img{width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ir-card-img img{max-width:100%;max-height:100%;object-fit:contain}
.ir-chip{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;border:1px solid #d4d4d4;font-size:14px;color:#262626;text-decoration:none;font-family:Roboto,system-ui,sans-serif;background:#fff}
.ir-chip:hover{border-color:#84cc16;color:#4d7c0f}
.ir-chip-active{background:#ecfccb;border-color:#84cc16}
.ir-doc{text-decoration:none;background:#fff}
.ir-doc-ext{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:8px;background:#fee2e2;color:#b91c1c;font-weight:700;font-size:12px;text-transform:uppercase;font-family:Roboto,system-ui,sans-serif}
.ir-section ul{list-style:disc;padding-left:1.25rem}
.ir-section ol{list-style:decimal;padding-left:1.25rem}
.ir-section li{margin:.25rem 0}
.ir-thumbs{max-height:35rem}
/* слайдеры без Swiper: горизонтальная прокрутка с привязкой */
.swiper{position:relative}
.swiper-wrapper{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;transform:none!important}
.swiper-wrapper::-webkit-scrollbar{display:none}
.swiper-slide{flex-shrink:0;scroll-snap-align:start}
.swiper-vertical .swiper-wrapper{flex-direction:column;overflow-y:auto;overflow-x:hidden}
/* модальное окно «Задать вопрос» */
.ir-modal{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;padding:16px}
.ir-modal.open{display:flex}
.ir-modal-box{background:#fff;border-radius:16px;max-width:460px;width:100%;padding:24px;font-family:Roboto,system-ui,sans-serif;position:relative;max-height:90vh;overflow:auto}
.ir-modal-box h3{font-size:22px;font-weight:700;margin:0 0 6px}
.ir-modal-box p{color:#525252;font-size:14px;margin:0 0 14px}
.ir-modal-box label{display:block;font-size:13px;font-weight:600;color:#404040;margin:10px 0 4px}
.ir-modal-box input,.ir-modal-box textarea{width:100%;border:1px solid #d4d4d4;border-radius:10px;padding:10px 12px;font-size:15px;font-family:inherit;box-sizing:border-box}
.ir-modal-box input:focus,.ir-modal-box textarea:focus{outline:2px solid #84cc16;border-color:#84cc16}
.ir-modal-box button[type=submit]{margin-top:16px;width:100%;background:#65a30d;color:#fff;border:0;border-radius:10px;padding:12px;font-size:16px;font-weight:700;cursor:pointer}
.ir-modal-box button[type=submit]:disabled{opacity:.6;cursor:wait}
.ir-modal-close{position:absolute;top:10px;right:12px;background:none;border:0;font-size:26px;line-height:1;cursor:pointer;color:#737373}
.ir-modal-small{font-size:12px!important;color:#737373!important;margin-top:10px!important}
.ir-form-msg{margin-top:12px;font-size:14px}
.ir-form-msg.ok{color:#15803d}.ir-form-msg.err{color:#b91c1c}
.ir-hp{position:absolute;left:-9999px}
/* мобильное меню */
.ir-mobile-nav{display:none;position:fixed;inset:0;z-index:999;background:#fff;overflow:auto;padding:16px;font-family:Roboto,system-ui,sans-serif}
.ir-mobile-nav.open{display:block}
.ir-mobile-nav a{display:block;padding:10px 4px;border-bottom:1px solid #eee;color:#171717;text-decoration:none;font-size:16px}
.ir-mobile-nav .sub a{padding-left:20px;font-size:15px;color:#404040}
.ir-mobile-nav-close{float:right;font-size:28px;background:none;border:0;cursor:pointer}
.ir-search-form{display:flex;gap:8px;margin:12px 0 20px}
.ir-search-form input{flex:1;border:1px solid #d4d4d4;border-radius:999px;padding:10px 16px;font-size:15px}
.ir-search-form button{border:0;border-radius:999px;padding:10px 18px;background:#65a30d;color:#fff;font-weight:700;cursor:pointer}
/* боковые поля контента: как у шапки, пропадают только на широком экране */
.ir-pad{padding-left:16px;padding-right:16px}
@media(min-width:1408px){.ir-pad{padding-left:0;padding-right:0}}
.ir-nophoto{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#f5f5f5;color:#d4d4d4;font:800 28px Roboto,system-ui,sans-serif;letter-spacing:.02em;border-radius:8px}
.ir-nophoto-big{font-size:56px;min-width:min(32rem,100%)}

/* каталог: раскрывающийся список категорий слева, как на исходном сайте */
.ir-acc ul{list-style:none;margin:0;padding:0}
.ir-acc-item{border-radius:8px}
.ir-acc-head{display:flex;align-items:center;gap:6px;border-radius:8px}
.ir-acc-item.open>.ir-acc-head,.ir-acc-head:hover{background:#f5f6f8}
.ir-acc-link{flex:1;padding:10px 12px;font-size:17px;font-weight:600;text-decoration:none;line-height:1.25}
.ir-acc-toggle{background:none;border:0;cursor:pointer;padding:8px 12px;color:#64748b;display:flex;transition:transform .15s}
.ir-acc-item.open .ir-acc-toggle{transform:rotate(180deg);color:#0f172a}
.ir-acc-body{display:flex;flex-direction:column;padding:2px 0 8px 12px}
.ir-acc-body[hidden]{display:none}
.ir-acc-sub{padding:6px 12px;font:15px Roboto,system-ui,sans-serif;color:#475569;text-decoration:none;border-radius:6px}
.ir-acc-sub:hover,.ir-acc-sub.on{color:#4d7c0f;background:#f7fee7}
.ir-cat-select{width:100%;border:1px solid #d4d4d4;border-radius:8px;padding:10px 12px;font:15px Roboto,system-ui,sans-serif;background:#fff}
@media(min-width:1280px){.ir-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* постраничная навигация */
.ir-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin:8px 0 32px;font-family:Roboto,system-ui,sans-serif}
.ir-pg{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;border-radius:8px;border:1px solid #e5e7eb;color:#1f2937;text-decoration:none;font-size:15px;background:#fff}
a.ir-pg:hover{border-color:#84cc16;color:#4d7c0f}
.ir-pg.is-on{background:#65a30d;border-color:#65a30d;color:#fff;font-weight:700}
.ir-pg-arrow{font-size:22px;line-height:1}.ir-pg.is-off{opacity:.35}
.ir-pg-gap{padding:0 4px;color:#9ca3af}
.ir-pg-info{width:100%;text-align:center;color:#6b7280;font-size:13px;margin-top:4px}
