:root{--c-black:#111;--c-white:#fff;--c-gray:#6b6b6b;--c-line:#e5e5e5;--c-bg:#fafafa;--maxw:1200px;--header-h:64px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--c-white);color:var(--c-black);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{margin:0 auto;max-width:var(--maxw);padding:0 20px}.section{padding:56px 0}.section--alt{background:var(--c-bg)}.section__title{font-size:28px;font-weight:700;letter-spacing:.3px;margin:0 0 8px}.section__sub{color:var(--c-gray);font-size:15px;margin:0 0 32px}.btn{background:var(--c-black);border:1px solid var(--c-black);border-radius:4px;color:var(--c-white);cursor:pointer;display:inline-block;font-size:14px;font-weight:600;padding:11px 22px;transition:.15s}.btn:hover{opacity:.85}.btn--ghost{background:transparent;color:var(--c-black)}.btn--ghost:hover{background:var(--c-black);color:var(--c-white);opacity:1}.site-header__inner{align-items:center;display:flex;height:var(--header-h);justify-content:space-between}.logo{font-size:20px;font-weight:800;letter-spacing:.5px}.logo span{color:var(--c-gray);font-weight:400}.nav{align-items:center;display:flex;gap:26px}.nav a{color:#222;font-size:14px;font-weight:500}.nav a.router-link-active,.nav a:hover{color:#000}.nav a.router-link-active{border-bottom:2px solid var(--c-black);padding-bottom:2px}.header-right{align-items:center;display:flex;gap:16px}.lang-switch{border:1px solid var(--c-line);border-radius:4px;display:flex;font-size:13px;overflow:hidden}.lang-switch button{background:var(--c-white);border:0;color:var(--c-gray);cursor:pointer;padding:6px 10px}.lang-switch button.active{background:var(--c-black);color:var(--c-white)}.nav-toggle{border:0;display:none;font-size:22px}.nav-toggle,.search-btn{background:none;cursor:pointer}.search-btn{align-items:center;border:1px solid var(--c-line);border-radius:50%;color:#444;display:flex;flex-shrink:0;height:34px;justify-content:center;transition:.15s;width:34px}.search-btn:hover{border-color:var(--c-black);color:var(--c-black)}.search-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;display:flex;inset:0;justify-content:center;padding-top:60px;position:fixed;top:calc(var(--header-h) + 37px);z-index:100}.search-overlay__inner{max-width:680px;padding:0 20px;width:100%}.search-form{align-items:center;background:#fff;border-radius:10px;box-shadow:0 8px 32px #00000024,0 2px 8px #00000014;display:flex;gap:8px;padding:6px 12px 6px 24px}.search-form__input{background:transparent;border:0;flex:1;font-family:inherit;font-size:18px;outline:none;padding:10px 0}.search-form__input::-moz-placeholder{color:#aaa}.search-form__input::placeholder{color:#aaa}.search-form__btn{align-items:center;background:var(--c-black);border:0;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;transition:.15s;width:40px}.search-form__btn:hover{opacity:.85}.search-fade-enter-active,.search-fade-leave-active{transition:opacity .25s ease}.search-fade-enter-from,.search-fade-leave-to{opacity:0}.clear-search-btn{align-items:center;background:none;border:1px solid var(--c-line);border-radius:4px;color:#999;cursor:pointer;display:inline-flex;font-size:14px;height:24px;justify-content:center;margin-left:8px;transition:.15s;width:24px}.clear-search-btn:hover{border-color:#b42323;color:#b42323}.site-footer{background:var(--c-black);font-size:14px;padding:40px 0}.site-footer,.site-footer a{color:#d8d8d8}.site-footer h4{color:#fff;font-size:15px;margin:0 0 12px}.site-footer__grid{display:grid;gap:30px;grid-template-columns:repeat(3,1fr)}.site-footer__grid p{margin:4px 0}.banner{background:#eee;height:460px;overflow:hidden;position:relative}.banner__slide{inset:0;opacity:0;position:absolute;transition:opacity .6s ease}.banner__slide.active{opacity:1}.banner__img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.banner__dots{bottom:18px;display:flex;gap:8px;left:50%;position:absolute;transform:translate(-50%)}.banner__dot{background:#ffffff80;border:0;border-radius:50%;cursor:pointer;height:10px;width:10px}.banner__dot.active{background:#fff}.grid{display:grid;gap:22px}.grid--4{grid-template-columns:repeat(4,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--c-line);border-radius:8px;overflow:hidden;transition:.15s}.card:hover{box-shadow:0 6px 20px #0000000f;transform:translateY(-2px)}.card__img{aspect-ratio:4/3;background:#f2f2f2;-o-object-fit:cover;object-fit:cover;width:100%}.card__body{padding:14px 16px 18px}.card__title{font-size:16px;font-weight:600;margin:0 0 6px}.card__text{color:var(--c-gray);display:-webkit-box;font-size:13px;-webkit-line-clamp:2;margin:0;-webkit-box-orient:vertical;overflow:hidden}.card__more{display:inline-block;font-size:13px;font-weight:600;margin-top:10px}.cat-tiles{display:grid;gap:18px;grid-template-columns:repeat(4,1fr)}.cat-tile{align-items:flex-end;aspect-ratio:1/1;border-radius:8px;color:#fff;display:flex;overflow:hidden;position:relative}.cat-tile img{height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%}.cat-tile__mask{background:linear-gradient(transparent,#000000a6);inset:0;position:absolute}.cat-tile__label{font-size:16px;font-weight:700;padding:16px;position:relative}.feat-grid{display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.feat{border:1px solid var(--c-line);border-radius:8px;padding:24px}.feat__n{font-size:26px;font-weight:800}.feat__t{font-size:15px;font-weight:700;margin:8px 0 6px}.feat__d{color:var(--c-gray);font-size:13px;margin:0}.feat__img{border-radius:8px;height:140px;margin-top:12px;-o-object-fit:cover;object-fit:cover;width:100%}.form{max-width:560px}.form__row{margin-bottom:14px}.form label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.form input,.form select,.form textarea{border:1px solid var(--c-line);border-radius:5px;font-family:inherit;font-size:14px;padding:10px 12px;width:100%}.form textarea{min-height:120px;resize:vertical}.form__msg{border-radius:5px;font-size:14px;margin-top:10px;padding:10px 14px}.form__msg--ok{background:#e9f7ee;color:#1d7a3c}.form__msg--err{background:#fdecec;color:#b42323}.breadcrumb{color:var(--c-gray);font-size:13px;margin:16px 0}.breadcrumb a:hover{text-decoration:underline}.detail__hero{background:#f2f2f2;border-radius:8px;max-height:460px;-o-object-fit:cover;object-fit:cover;width:100%}.prose{color:#2a2a2a;font-size:15px;line-height:1.8}.prose h2{font-size:20px;margin:28px 0 10px}.prose p{margin:0 0 14px}.page-hero{align-items:center;background-color:#1a1a1a;background-image:linear-gradient(135deg,#1a1a1a,#3a3a3a);color:#fff;display:flex;height:320px;justify-content:center;overflow:hidden;position:relative;text-align:center}.page-hero:after{background:#00000059;content:"";inset:0;position:absolute;z-index:1}.page-hero__inner{padding:0 20px;position:relative;z-index:2}.page-hero__title{font-size:42px;font-weight:700;letter-spacing:1px;margin:0 0 10px}.page-hero__sub{color:#ffffffd9;font-size:16px;margin:0;max-width:560px}.products-layout{align-items:start;display:grid;gap:34px;grid-template-columns:280px 1fr}.products-sidebar{align-self:start;position:sticky;top:calc(var(--header-h) + 24px)}.sidebar-card{background:#fff;border:1px solid var(--c-line);border-radius:8px;margin-bottom:18px;padding:20px 18px}.sidebar-card__title{border-bottom:2px solid var(--c-black);font-size:15px;font-weight:700;letter-spacing:.5px;margin:0 0 14px;padding-bottom:10px;text-transform:uppercase}.sidebar-cat{list-style:none;margin:0;padding:0}.sidebar-cat li{border-bottom:1px solid #f0f0f0}.sidebar-cat li:last-child{border-bottom:0}.sidebar-cat a{color:#333;cursor:pointer;display:block;font-size:14px;padding:11px 0;transition:.15s}.sidebar-cat li.active a,.sidebar-cat li:hover a{color:var(--c-black);font-weight:600}.sidebar-cat li.active a{border-left:3px solid var(--c-black);padding-left:8px}.sidebar-cat__row{align-items:center;display:flex;justify-content:space-between}.sidebar-cat__row>a{flex:1}.sidebar-cat__toggle{align-items:center;background:#fafafa;border:1px solid #ddd;border-radius:50%;cursor:pointer;display:inline-flex;flex-shrink:0;height:24px;justify-content:center;outline:none;padding:0;transition:background .15s,border-color .15s,color .15s;width:24px}.sidebar-cat__toggle-icon{color:#999;font-size:15px;font-weight:400;line-height:1;transition:color .15s}.sidebar-cat__toggle:hover{background:var(--c-black);border-color:var(--c-black)}.sidebar-cat__toggle:hover .sidebar-cat__toggle-icon{color:#fff}.sidebar-cat__toggle.open{background:var(--c-black);border-color:var(--c-black)}.sidebar-cat__toggle.open .sidebar-cat__toggle-icon{color:#fff}.sidebar-cat__sub{border-left:1px solid #e8e8e8;list-style:none;margin:0 0 0 4px;padding:0 0 4px 16px}.sidebar-cat__sub li a{color:#666;font-size:13px;padding:8px 0 8px 12px}.sidebar-cat__sub li.active a,.sidebar-cat__sub li:hover a{color:var(--c-black);font-weight:500}.sidebar-cat__sub li.active a{border-left:none;padding-left:12px}.form--sidebar .form__row{margin-bottom:10px}.form--sidebar label{font-size:12px;margin-bottom:4px}.form--sidebar input,.form--sidebar textarea{font-size:13px;padding:8px 10px}.form--sidebar textarea{min-height:80px}.btn--submit{border-radius:0;font-size:14px;letter-spacing:.5px;padding:12px;text-transform:uppercase;width:100%}.captcha-row{align-items:center;display:flex;gap:10px}.captcha-input{flex:1}.captcha-label{background:#f5f5f5;border:1px solid var(--c-line);border-radius:4px;color:var(--c-black);font-size:13px;font-weight:600;padding:7px 10px;white-space:nowrap}.subcat-strip{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.subcat-chip{align-items:center;background:#fff;border:1px solid var(--c-line);border-radius:999px;color:#333;cursor:pointer;display:inline-flex;font-size:13px;padding:8px 16px;transition:.15s}.subcat-chip:hover{border-color:var(--c-black);color:var(--c-black)}.subcat-chip.active{background:var(--c-black);border-color:var(--c-black);color:#fff}.products-main__header{align-items:flex-start;border-bottom:1px solid var(--c-line);display:flex;justify-content:space-between;margin-bottom:22px;padding-bottom:16px}.products-main__header .section__title{font-size:22px;margin-bottom:8px}.products-desc{color:var(--c-gray);font-size:14px;line-height:1.7;margin:0;max-width:720px}.products-count{color:var(--c-black);font-size:14px;font-weight:600;white-space:nowrap}.products-empty{color:var(--c-gray);font-size:15px;padding:60px 0;text-align:center}.pagination{display:flex;gap:8px;justify-content:center;margin-top:36px}.pagination__btn{background:#fff;border:1px solid var(--c-line);border-radius:4px;cursor:pointer;font-size:14px;height:36px;transition:.15s;width:36px}.pagination__btn.active,.pagination__btn:hover{background:var(--c-black);border-color:var(--c-black);color:#fff}.top-bar{background:#1a1a1a;color:#d8d8d8;font-size:13px;padding:6px 0}.top-bar__inner{align-items:center;display:flex;justify-content:space-between}.top-bar__icon{margin-right:6px}.site-header{background:var(--c-white);border-bottom:1px solid var(--c-line);position:sticky;top:0;z-index:50}.why-layout{display:flex;gap:30px;margin-top:24px}.why-tabs{display:flex;flex:1;flex-direction:column;gap:12px}.why-tab{align-items:flex-start;background:#fff;border:1px solid var(--c-line);border-radius:8px;cursor:pointer;display:flex;gap:14px;padding:16px 18px;text-align:left;transition:.15s}.why-tab:hover{border-color:#333}.why-tab.active{background:#f5f5f5;border-color:var(--c-black)}.why-tab__n{font-size:22px;font-weight:800;line-height:1}.why-tab__t{font-size:15px;font-weight:700}.why-tab__d{color:var(--c-gray);font-size:13px;margin-top:4px}.why-img{background:#eee;border-radius:8px;flex:1;min-height:320px;overflow:hidden}.why-img img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.contact-grid{display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.contact-card{background:#fff;border:1px solid var(--c-line);border-radius:8px;padding:22px;text-align:center}.contact-card__icon{font-size:28px;margin-bottom:10px}.contact-card h4{font-size:16px;margin:0 0 8px}.contact-card p{color:var(--c-gray);font-size:14px;margin:4px 0}.contact-card a{color:var(--c-black);font-weight:500}.about-intro{align-items:center;display:flex;gap:48px;padding:64px 0 48px}.about-intro__text{flex:1;min-width:0}.about-intro__text h2{font-size:32px;font-weight:800;letter-spacing:.5px;margin:0 0 20px}.about-intro__desc{color:#444;font-size:17px;line-height:1.8;margin:0 0 24px}.btn--outline{background:transparent;border:2px solid var(--c-black);border-radius:4px;color:var(--c-black);cursor:pointer;display:inline-block;font-size:14px;font-weight:600;padding:11px 26px;transition:.15s}.btn--outline:hover{background:var(--c-black);color:var(--c-white);opacity:1}.about-intro__img{background:#f2f2f2;border-radius:12px;flex:1;max-width:520px;min-width:0;overflow:hidden}.about-intro__img img{aspect-ratio:4/3;display:block;height:auto;-o-object-fit:cover;object-fit:cover;width:100%}.offer-grid{display:grid;gap:18px;grid-template-columns:repeat(4,1fr)}.offer-card{background:var(--c-bg);border:1px solid var(--c-line);border-radius:8px;padding:18px}.offer-card__n{font-size:26px;font-weight:800;margin-bottom:8px}.offer-card p{color:#333;font-size:14px;line-height:1.6;margin:0}.cert-grid{display:grid;gap:16px;grid-template-columns:repeat(6,1fr)}.cert-card{background:var(--c-bg);border:1px solid var(--c-line);border-radius:8px;font-size:15px;font-weight:700;padding:18px;text-align:center}.cert-card__icon{color:#1d7a3c;font-size:22px;font-weight:800;margin-bottom:6px}.faq-search{align-items:center;background:#fff;border:2px solid var(--c-line);border-radius:8px;display:flex;gap:10px;margin-bottom:24px;max-width:460px;padding:4px 12px;transition:.15s}.faq-search:focus-within{border-color:var(--c-black)}.faq-search__input{border:0;flex:1;font-family:inherit;font-size:15px;outline:none;padding:8px 0}.faq-search__icon{color:var(--c-gray);font-size:18px}.faq-item{background:#fff;border:1px solid var(--c-line);border-radius:8px;margin-bottom:10px;transition:.15s}.faq-item.open{border-color:var(--c-black)}.faq-item__q{align-items:center;background:none;border:0;cursor:pointer;display:flex;font-size:15px;font-weight:600;justify-content:space-between;padding:16px 18px;text-align:left;width:100%}.faq-item__toggle{color:var(--c-gray);font-size:20px;font-weight:300}.faq-item__a{color:var(--c-gray);font-size:14px;line-height:1.8;padding:0 18px 16px}.case-gallery{margin-top:16px}.case-gallery__main{background:#f2f2f2;border-radius:8px;max-height:500px;overflow:hidden}.case-gallery__main img{max-height:500px;-o-object-fit:cover;object-fit:cover;width:100%}.case-gallery__thumbs{display:flex;gap:8px;margin-top:10px}.case-gallery__thumbs img{border:2px solid transparent;border-radius:4px;cursor:pointer;height:60px;-o-object-fit:cover;object-fit:cover;transition:.15s;width:80px}.case-gallery__thumbs img.active{border-color:var(--c-black)}.case-meta{font-size:14px;gap:24px}.case-meta,.news-meta{color:var(--c-gray);display:flex}.news-meta{font-size:13px;gap:16px;margin-bottom:10px}.news-summary{color:var(--c-gray);font-size:16px;font-style:italic;line-height:1.7;margin:14px 0 24px;max-width:800px}.site-footer__grid{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.cat-tiles,.feat-grid,.grid--4{grid-template-columns:repeat(2,1fr)}.site-footer__grid{grid-template-columns:1fr 1fr}.products-layout{grid-template-columns:1fr}.products-sidebar{max-width:100%;position:static}.why-layout{flex-direction:column}.why-img{max-height:260px}.contact-grid,.offer-grid{grid-template-columns:repeat(2,1fr)}.cert-grid{grid-template-columns:repeat(3,1fr)}.about-intro{flex-direction:column;gap:28px;padding:40px 0}.about-intro__img{max-width:100%}}@media(max-width:720px){.nav{background:#fff;border-bottom:1px solid var(--c-line);display:none;flex-direction:column;gap:14px;left:0;padding:12px 20px;position:absolute;right:0;top:var(--header-h)}.nav.open{display:flex}.nav-toggle{display:block}.banner{height:300px}.grid--3{grid-template-columns:1fr}.section__title{font-size:22px}.products-main__header{align-items:flex-start;flex-direction:column;gap:12px}.products-count{align-self:flex-start}.top-bar{display:none}.contact-grid,.offer-grid,.site-footer__grid{grid-template-columns:1fr}.cert-grid{grid-template-columns:repeat(2,1fr)}}
