.brand{display:block;width:184px;height:43px;flex:none}
.brand__image{display:block;width:100%;height:100%;object-fit:contain;object-position:left center;filter:brightness(0)}

.button{min-height:49px;border:1px solid transparent;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:14px 20px;background:transparent;cursor:pointer;font:var(--font-button);white-space:nowrap;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}
.button img{width:14px;height:14px;object-fit:contain;flex:none}
.button--large{min-height:59px;padding:19px 27px}
.button--large img{width:16px;height:16px}
.button--primary{background:var(--color-accent);color:var(--color-inverse)}
.button--primary:hover{background:var(--color-accent-hover)}
.button--primary:active{background:var(--color-accent-active)}
.button--white{background:#fff;color:var(--color-text-primary)}
.button--white:hover{background:#f1f1f1}
.button--outline{border-color:var(--color-text-primary);color:var(--color-text-primary)}
.button--outline:hover{background:var(--color-text-primary);color:#fff}
.button--dark{background:var(--color-dark);color:#fff}
.button--dark:hover{background:#333}
.button--accent-outline{border-color:var(--color-accent);color:var(--color-accent)}
.button--accent-outline:hover{background:var(--color-accent);color:#fff}
.button--arrow{padding-inline:40px}
.button--arrow-small{font-size:14px;line-height:16px}
.button--arrow>img,.button--arrow-small>img{display:none}
.button--arrow::after,.button--arrow-small::after{content:"";width:14px;height:14.4px;flex:none;background:currentColor;--button-arrow:url("data:image/svg+xml;base64,PHN2ZyBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIiBvdmVyZmxvdz0idmlzaWJsZSIgc3R5bGU9ImRpc3BsYXk6IGJsb2NrOyIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0LjM5OTYiIHZpZXdCb3g9IjAgMCAxNCAxNC4zOTk2IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBpZD0iVmVjdG9yIiBkPSJNNy44OTk5NyAzLjQ0NTFWMTQuMzk5Nkg2LjEwMDAzVjMuNDQ1MUwxLjI3MjU2IDguMjcyNTZMMCA3TDcgMEwxNCA3TDEyLjcyNzQgOC4yNzI1Nkw3Ljg5OTk3IDMuNDQ1MVoiIGZpbGw9IiMxNjE2MTYiLz4KPC9zdmc+Cg==");-webkit-mask:var(--button-arrow) center/contain no-repeat;mask:var(--button-arrow) center/contain no-repeat;transform:rotate(90deg);transition:background-color var(--transition-fast)}
.button--arrow-small::after{width:12px;height:12.4px}
.button--outline:hover>img,.button--accent-outline:hover>img,.compare-button.is-selected>img{filter:brightness(0) invert(1)}
.button:disabled{background:var(--color-disabled);border-color:var(--color-disabled);cursor:not-allowed}

.badge,.tag{display:inline-flex;align-items:center;min-height:36px;padding:9px 13px;border-radius:var(--radius);background:var(--color-surface-muted);font:var(--font-label);white-space:nowrap}
.tag{border:var(--border);background:transparent}
.tag:hover{border-color:var(--color-text-primary)}
.tag--white{background:#fff}
.badge--glass{min-height:34px;background:rgba(249,249,249,.8);backdrop-filter:blur(5px);font:var(--font-caption)}

.mobile-header-actions{display:none;align-items:center;gap:8px;flex:none}
.mobile-request{display:none;min-height:44px;padding:11px 15px;font-size:14px;line-height:1;white-space:nowrap}
.menu-button{display:none;width:49px;height:49px;padding:12px;border:0;border-radius:var(--radius);background:var(--color-surface-muted);cursor:pointer}
.menu-button img{width:24px;height:24px}
.menu-button__close{display:none}
.menu-button[aria-expanded="true"] .menu-button__open{display:none}
.menu-button[aria-expanded="true"] .menu-button__close{display:block}

.category-card,.solution-card,.product-card,.news-card{border-radius:var(--radius);overflow:hidden;transition:transform var(--transition-medium)}
.category-card:hover,.solution-card:hover,.product-card:hover{transform:translateY(-3px);box-shadow:none}
.news-card{cursor:pointer}
.news-card:hover{transform:none;box-shadow:none}
.news-card:hover h3{text-decoration:underline;text-underline-offset:3px}

.category-card{min-width:0;height:auto;min-height:450px;overflow:visible;background:#fff;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}
.category-card__content{width:100%;padding:30px;display:flex;flex-direction:column;align-items:flex-start;gap:15px}
.category-card__content div{display:flex;flex-direction:column;gap:10px}
.category-card h3{font:var(--font-h3)}
.category-card p{color:var(--color-text-secondary);font:var(--font-body-sm)}
.category-card__media{width:calc(100% - 60px);height:210px;margin:0 30px 30px;padding:4px 0 18px;position:relative;flex:0 0 auto;display:grid;place-items:center;overflow:visible}
.category-card__media img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center;transform:scale(var(--category-image-scale,1));transform-origin:center}
.category-card__media--computer{--category-image-scale:1.22}

.solution-card{min-width:0;height:530px;background:var(--color-surface-muted);display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between}
.solution-card__content{width:100%;padding:30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:20px;flex:1}
.solution-card__content>div{display:flex;flex-direction:column;gap:10px}
.solution-card h3{font:var(--font-h3)}
.solution-card p{color:var(--color-text-secondary);font:var(--font-body-sm)}
.solution-card__media{height:218px;width:100%;padding:0 30px 30px;display:flex;align-items:flex-end;justify-content:center;overflow:visible}
.solution-card__media img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform:none}

.product-card{min-width:0;height:auto;min-height:556px;background:var(--color-surface-muted);padding:20px;display:flex;flex-direction:column;gap:25px}
.product-card__media{height:241px;border-radius:var(--radius);background:#fff;position:relative;display:flex;align-items:center;justify-content:center}
.product-card__media>img{width:292px;height:231px;object-fit:contain}
.product-card__tags{position:absolute;right:16px;bottom:-18px;display:flex;gap:5px;justify-content:flex-end}
.product-card__body{min-height:0;flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:15px}
.product-card__body>div:first-child{display:flex;flex-direction:column;gap:7px}
.product-card h3{font-size:24px;line-height:28px}
.product-card p{font:var(--font-body-sm);color:var(--color-text-secondary)}
.product-card dl{display:flex;flex-direction:column;gap:13px;font:var(--font-body-sm)}
.product-card dl div{display:grid;grid-template-columns:minmax(78px,.75fr) minmax(0,1.35fr);align-items:start;gap:12px}
.product-card dt{color:var(--color-text-secondary)}
.product-card dd{min-width:0;font-weight:500;text-align:right;overflow-wrap:anywhere}
.product-card__actions{display:flex!important;flex-direction:row!important;gap:8px!important}
.product-card__actions .button{min-width:0}
.preview-card-link{cursor:pointer}
.product-card:hover .product-card__actions>a.button--accent-outline{background:var(--color-accent);color:#fff}
.product-card:hover .product-card__actions>a.button--accent-outline>img{filter:brightness(0) invert(1)}
.product-card:hover .product-card__actions>a.button--outline,.pd-product-card:hover .pd-product-card__actions>a.button--outline{background:var(--color-text-primary);color:#fff}
.solution-card:hover .solution-card__content>a.button--accent-outline{background:var(--color-accent);color:#fff}
.solution-card:hover .solution-card__content>a.button--accent-outline>img{filter:brightness(0) invert(1)}
.compare-button.is-selected{background:var(--color-text-primary);color:#fff}
.compare-button img,.compare-button svg{width:17px;height:16px;flex:none}

.news-card{min-width:0;display:flex;flex-direction:column}
.news-card__media{height:242.62px;position:relative;background:#fff;overflow:hidden}
.news-card__media>img{width:100%;height:100%;object-fit:cover}
.news-card__media--contain>img{object-fit:contain;width:269px;margin:auto}
.news-card__media .badge{position:absolute;right:7px;top:7px}
.news-card__content{padding-block:20px;display:flex;flex-direction:column;gap:10px}
.news-card h3{font:var(--font-h3)}
.news-card time{color:var(--color-text-secondary);font:var(--font-body-sm)}

.footer-column{display:flex;flex-direction:column;gap:27px;align-items:flex-start}
.footer-column h2{font-size:14px;line-height:16px;font-weight:600;letter-spacing:2px;text-transform:uppercase}
.footer-column a,.footer-column span{font:var(--font-label)}
.footer-column a:hover{text-decoration:underline}
.footer-phone{font-size:21px!important;line-height:25px!important;font-weight:500!important;white-space:nowrap}
.compare-fab{position:fixed;right:24px;bottom:24px;z-index:45;box-shadow:0 8px 24px rgba(22,22,22,.18)}

body.request-drawer-open{overflow:hidden}
.request-drawer{position:fixed;z-index:2000;inset:0;visibility:hidden;pointer-events:none;transition:visibility .28s ease}
.request-drawer.is-open{visibility:visible;pointer-events:auto}
.request-drawer__backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(14,14,14,.42);opacity:0;cursor:pointer;transition:opacity .28s ease}
.request-drawer.is-open .request-drawer__backdrop{opacity:1}
.request-drawer__panel{position:absolute;top:0;right:0;width:min(760px,100vw);height:100dvh;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;background:#fff;box-shadow:-18px 0 50px rgba(0,0,0,.12);transform:translateX(100%);transition:transform .28s ease}
.request-drawer.is-open .request-drawer__panel{transform:translateX(0)}
.request-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding:30px 32px;background:var(--color-dark);color:#fff}
.request-drawer__header>div{min-width:0}
.request-drawer__header span{display:block;margin-bottom:7px;color:rgba(255,255,255,.65);font:500 12px/1.2 var(--font-family);letter-spacing:.08em;text-transform:uppercase}
.request-drawer__header h2{margin:0 0 8px!important;color:#fff;font:600 30px/1.14 var(--font-family)!important}
.request-drawer__header p{max-width:560px;margin:0;color:rgba(255,255,255,.72);font:var(--font-body-sm)}
.request-drawer__close{width:44px;height:44px;display:grid;place-items:center;flex:none;padding:0;border:0;border-radius:var(--radius);background:#fff;color:var(--color-dark);cursor:pointer}
.request-drawer__close:hover{background:var(--color-surface-muted)}
.request-drawer__close svg{width:21px;height:21px}
.request-drawer__form{display:flex;flex:1;flex-direction:column;gap:17px;padding:26px 32px 30px}
.request-drawer__form>label,.request-drawer__contacts label{display:flex;min-width:0;flex-direction:column;gap:7px!important;color:var(--color-text-primary);font:500 13px/1.25 var(--font-family)}
.request-drawer__form input[type="text"],.request-drawer__form textarea{width:100%;min-width:0;border:1px solid var(--color-border-soft);border-radius:var(--radius);background:var(--color-surface-muted);color:var(--color-text-primary);font:400 14px/1.35 var(--font-family);outline:0;transition:border-color var(--transition-fast),background var(--transition-fast)}
.request-drawer__form input[type="text"]{height:49px;padding:13px 14px}
.request-drawer__form textarea{min-height:112px;padding:13px 14px;resize:vertical}
.request-drawer__form input[type="text"]:focus,.request-drawer__form textarea:focus{border-color:var(--color-text-primary);background:#fff}
.request-drawer__form input::placeholder,.request-drawer__form textarea::placeholder{color:var(--color-text-secondary)}
.request-drawer__contacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.request-drawer__types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0;padding:0;border:0}
.request-drawer__types legend{grid-column:1/-1;margin-bottom:8px;font:600 14px/1.25 var(--font-family)}
.request-drawer__types label{position:relative;min-width:0;cursor:pointer}
.request-drawer__types input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.request-drawer__types span{min-height:45px;display:flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:var(--radius);background:var(--color-surface-muted);font:500 14px/1.25 var(--font-family);text-align:center;transition:background var(--transition-fast),color var(--transition-fast)}
.request-drawer__types input:checked+span{background:var(--color-dark);color:#fff}
.request-drawer__types input:focus-visible+span{outline:3px solid rgba(22,22,22,.28);outline-offset:2px}
.request-drawer__footer{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:auto;padding-top:2px}
.request-drawer__footer p{margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.request-drawer__footer .button{min-height:49px;display:inline-flex;align-items:center;gap:8px;flex:none}
.request-drawer__footer .button svg{width:17px;height:17px}
.request-drawer__form>label.request-drawer__consent{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px!important;color:var(--color-text-secondary);font:400 12px/1.45 var(--font-family);cursor:pointer}
.request-drawer__consent input{width:18px;height:18px;margin:0;accent-color:var(--color-dark);cursor:pointer}
.request-drawer__form:not(.chgp-request-form) .request-drawer__footer{justify-content:flex-end}

@media (max-width:700px){
  .request-drawer__header{padding:24px 20px}
  .request-drawer__header h2{font-size:26px!important}
  .request-drawer__form{padding:22px 20px 26px}
  .request-drawer__contacts{grid-template-columns:1fr}
  .request-drawer__types{grid-template-columns:1fr}
  .request-drawer__types span{justify-content:flex-start;min-height:43px}
  .request-drawer__footer{align-items:stretch;flex-direction:column}
  .request-drawer__footer .button{width:100%}
}
.development-notice{position:fixed;z-index:2000;left:50%;bottom:28px;max-width:calc(100% - 32px);padding:12px 18px;border-radius:var(--radius);background:var(--color-accent);color:#fff;font:var(--font-button);white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-50%,12px);transition:opacity var(--transition-fast),transform var(--transition-fast)}
.development-notice.is-visible{opacity:1;transform:translate(-50%,0)}
