/* Internal pages: Figma Desk - main design system applied to prototype flows. */

body:not([data-page="index.html"]){
  --ink:var(--color-text-primary);
  --ink-2:var(--color-text-primary);
  --ink-3:var(--color-text-secondary);
  --ink-4:var(--color-text-muted);
  --line:var(--color-border);
  --line-2:var(--color-border-soft);
  --line-3:rgba(22,22,22,.06);
  --bg:var(--color-background);
  --bg-2:var(--color-surface-muted);
  --bg-3:#f2f2f2;
  --bg-dark:var(--color-dark);
  --accent:var(--color-accent);
  --ok:#287a3f;
  --warn:#a54510;
  --h:var(--header-height);
  margin:0;
  background:var(--color-background);
  color:var(--color-text-primary);
  font:var(--font-body);
  overflow-x:hidden;
}

/* Страница материала пресс-центра: один спокойный читательский поток. */
body[data-page="article.html"] .article-hero-shell{position:relative;padding:0 48px;background:var(--color-background)}
body[data-page="article.html"] .article-hero{display:grid;grid-template-columns:minmax(420px,500px) minmax(0,1fr);gap:40px;align-items:center;min-height:0;padding-top:18px}
.article-meta{display:flex;align-items:center;gap:8px;margin-bottom:18px}
.article-meta__badge{display:inline-flex;align-items:center;min-height:32px;margin:0;padding:7px 11px;border-radius:var(--radius);background:var(--color-surface-muted);color:var(--color-text-primary);font:500 13px/1.2 var(--font-family)}
body[data-page="article.html"] .article-hero h1{max-width:820px;margin:0 0 20px;font-size:clamp(40px,3.3vw,52px);line-height:1.08;letter-spacing:-.025em}
body[data-page="article.html"] .article-hero .lead{max-width:720px;margin:0;color:var(--color-text-secondary);font-size:18px;line-height:1.55}
.article-hero__media{width:100%;aspect-ratio:4/3;height:auto;margin:0;padding:0;overflow:hidden;border-radius:var(--radius);background:var(--color-surface-muted)}
.article-hero__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
body[data-page="article.html"] .article-layout{display:block;width:min(100%,940px);margin:0 auto;padding:70px 0 72px}
.article-body{min-width:0;font-size:18px;line-height:1.72}
.article-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:36px;font-size:14px;font-weight:600}
.article-back svg{width:17px;height:17px}
.article-copy{width:min(100%,760px)}
.article-copy p{margin:0 0 28px}
.article-copy p:first-child{font-size:21px;line-height:1.55}
.article-product-callout{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:28px;margin:48px 0;padding:26px 28px;border-radius:var(--radius);background:var(--color-surface-muted)}
.article-product-callout figure{height:112px;margin:0;padding:10px;border-radius:6px;background:#fff}
.article-product-callout figure img{width:100%;height:100%;object-fit:contain}
.article-product-callout h2{margin:0 0 5px;font-size:27px}
.article-product-callout p{margin:0;color:var(--color-text-secondary);font-size:14px;line-height:1.4}
.article-product-callout .btn{flex:none}
.article-specs{margin:48px 0}.article-specs h2{margin:0 0 20px;font-size:28px}.article-specs dl{margin:0}
.article-specs dl>div{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:15px 0;border-bottom:1px solid var(--color-border-soft)}
.article-specs dt{font-weight:600}.article-specs dd{margin:0;color:var(--color-text-secondary)}
.article-source{display:flex;justify-content:space-between;gap:20px;margin-top:48px;padding-top:20px;border-top:1px solid var(--color-border-soft);font-size:13px}
.article-source span{color:var(--color-text-secondary)}.article-source a{display:inline-flex;align-items:center;gap:7px;color:var(--color-accent);font-weight:600}.article-source svg{width:16px;height:16px}
.article-cta{display:flex;align-items:center;justify-content:space-between;gap:48px;margin-top:64px;padding:36px 40px!important;border-radius:var(--radius);background:var(--color-dark)!important;color:#fff!important}
.article-cta h2{margin:0 0 8px!important;color:#fff;font-size:30px!important}.article-cta p{margin:0;color:rgba(255,255,255,.72);font-size:15px;line-height:1.45}
.article-cta .btn{flex:none;background:var(--color-accent);color:#fff;border-color:var(--color-accent)}
body[data-page="article.html"]>#root.wrap>.article-related{padding:64px 0 80px!important}
.article-related__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.article-related__card{min-width:0;background:transparent}
.article-related__card .news-card__media{height:242px}
.article-related__card .news-card__content{min-height:126px}

@media (max-width:980px){
  body[data-page="article.html"] .article-hero-shell{padding-inline:32px}
  body[data-page="article.html"] .article-hero{grid-template-columns:1fr;gap:32px;padding-top:36px}.article-hero__media{width:100%;height:auto;aspect-ratio:4/3}
  body[data-page="article.html"] .article-layout{padding:70px 0 68px}.article-related__grid{grid-template-columns:1fr 1fr}
  .article-product-callout{grid-template-columns:130px minmax(0,1fr)}.article-product-callout .btn{grid-column:2;justify-self:start}
}
@media (max-width:640px){
  body[data-page="article.html"] .article-hero-shell{padding:0 20px 30px}
  body[data-page="article.html"] .article-hero{padding-top:24px}.article-hero__media{height:auto;aspect-ratio:4/3;padding:0}
  body[data-page="article.html"] .article-hero h1{font-size:34px}.article-hero .lead,.article-body{font-size:16px}
  .article-copy p:first-child{font-size:18px}.article-product-callout{grid-template-columns:1fr;gap:20px;padding:22px}.article-product-callout figure{width:150px}.article-product-callout .btn{grid-column:auto}
  .article-source{align-items:flex-start;flex-direction:column}.article-specs dl>div{grid-template-columns:1fr;gap:4px}
  .article-cta{align-items:flex-start;flex-direction:column;gap:24px;padding:28px 24px!important}.article-cta .btn{width:100%}
  .article-related__grid{grid-template-columns:1fr}
}

body:not([data-page="index.html"])>.wrap{
  width:min(calc(100% - 2 * var(--page-gutter)),var(--container-max));
  max-width:none;
  margin-inline:auto;
  padding:0;
  position:relative;
  isolation:isolate;
}

/* Dynamic detail pages use #root.wrap. The legacy #root rules have ID
   specificity and otherwise override the shared container and section axes. */
body[data-page]:not([data-page="index.html"])>#root.wrap{
  width:min(calc(100% - 2 * var(--page-gutter)),var(--container-max));
  max-width:none;
  margin-inline:auto;
  padding:0;
}

body[data-page]:not([data-page="index.html"])>#root.wrap>.crumbs{
  width:100%;
  margin:0!important;
  padding:24px 0 0!important;
}

body[data-page]:not([data-page="index.html"])>#root.wrap>section{
  width:100%;
  margin:0;
  padding:64px 0 0!important;
}

body[data-page]:not([data-page="index.html"])>#root.wrap>section:first-of-type{
  padding-top:24px!important;
  padding-bottom:28px!important;
}
body[data-page]:not([data-page="index.html"])>#root.wrap>section:last-child{padding-bottom:80px!important}

body:not([data-page="index.html"])>.wrap::before{
  content:none;
}

body:not([data-page="index.html"]) .site-header{
  position:sticky;
  top:0;
  height:var(--header-height);
  background:var(--color-surface-muted);
  border-bottom:0;
  backdrop-filter:none;
}

body:not([data-page="index.html"]) .main-nav a[aria-current="page"]:not(.nav-catalog){
  color:var(--color-accent);
  font-weight:500;
}

body:not([data-page="index.html"]) .header-quote:hover{
  background:var(--color-dark);
  color:var(--color-inverse);
}

body:not([data-page="index.html"]) .crumbs{
  width:auto;
  margin:0;
  padding:22px 0 0;
  color:var(--color-text-secondary);
  font:var(--font-caption);
}

body[data-page]:not([data-page="index.html"])>.wrap>.crumbs,
body[data-page]:not([data-page="index.html"])>.wrap>section:first-of-type{
  background-color:transparent!important;
  background-image:none!important;
}

/* Catalog has no wrapping first section: its heading remains in the hero,
   while the product workspace starts on an opaque surface. */
body[data-page="catalog.html"]>.wrap>.catalog{
  position:relative;
  isolation:isolate;
}
body[data-page="catalog.html"]>.wrap>.catalog::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-30px calc((100vw - min(calc(100vw - 2 * var(--page-gutter)),var(--container-max)))/-2) calc(var(--space-section) * -1);
  background:var(--color-background);
}
body[data-page="catalog.html"]>.wrap>.shead h1{
  font-size:clamp(34px,2.8vw,46px)!important;
  line-height:1.14!important;
}
body[data-page="catalog.html"]>.wrap>.crumbs{margin-inline:0!important;padding-inline:0!important}

.crumbs a{transition:color var(--transition-fast)}
.crumbs a:hover{color:var(--color-accent)}
.crumb-sep{margin-inline:6px;color:var(--color-text-muted)}

body:not([data-page="index.html"])>.wrap>section{
  padding:52px 0 0;
  border:0;
}

body:not([data-page="index.html"])>.wrap>section:first-of-type{padding-top:24px!important;padding-bottom:28px!important}
body:not([data-page="index.html"])>.wrap>section:last-child{padding-bottom:80px}
body:not([data-page="index.html"])>.wrap>section+section{border-top:0}

/* Internal content uses one continuous canvas. Surfaces belong to individual
   cards and controls, not to arbitrary even/odd page bands. */
body[data-page]:not([data-page="index.html"])>.wrap>section{
  background:var(--color-background)!important;
  color:var(--color-text-primary)!important;
}
body[data-page]:not([data-page="index.html"])>.wrap>section:nth-of-type(even){
  background:var(--color-background)!important;
}

/* Internal pages use a compact text introduction instead of a separate hero. */
body:not([data-page="index.html"])>.wrap>section:first-of-type,
body[data-page]:not([data-page="index.html"])>#root.wrap>section:first-of-type{
  position:relative;
  isolation:isolate;
  background:var(--color-background)!important;
}
body:not([data-page="index.html"])>.wrap>section:first-of-type::before,
body[data-page]:not([data-page="index.html"])>#root.wrap>section:first-of-type::before{
  content:none;
}
body:not([data-page="index.html"]) .crumbs{position:relative;z-index:1}

body:not([data-page="index.html"])>.wrap h1{
  max-width:none;
  margin:0 0 18px;
  font:600 clamp(34px,2.8vw,46px)/1.14 var(--font-family);
  letter-spacing:0;
}

body:not([data-page="index.html"])>.wrap h2{
  max-width:none;
  margin:0 0 26px;
  font:600 clamp(26px,2vw,34px)/1.22 var(--font-family);
  letter-spacing:0;
}

body:not([data-page="index.html"])>.wrap h3{
  margin:0 0 12px;
  font:var(--font-h3);
  letter-spacing:0;
}

body:not([data-page="index.html"])>.wrap h4{font:var(--font-h4)}
body:not([data-page="index.html"])>.wrap p{margin-top:0}
.lead{max-width:70ch;margin:0 0 36px;color:var(--color-text-secondary);font:var(--font-body-lg)}
body:not([data-page="index.html"])>.wrap>section>.lead:last-child{margin-bottom:0}
.page-hero{min-height:0;padding-top:24px!important;padding-bottom:28px!important}
.page-hero>.lead{max-width:80ch;margin-bottom:0}
body[data-page="contacts.html"] .page-hero>.lead{max-width:none}
.catalog-hero>.lead{max-width:none!important}
.page-content{position:relative}
.about-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px!important;margin:0 0 44px!important;background:transparent!important;border:0!important}
.about-hero .about-facts{margin:40px 0 0!important}
.about-facts>div{min-height:112px;display:flex;flex-direction:column;justify-content:center;padding:22px 24px!important;border:0!important;border-radius:var(--radius);background:var(--color-surface-muted)!important}
.about-fact__value{margin-bottom:6px;font:600 25px/1.15 var(--font-family)}
.about-facts .muted{max-width:30ch;font:var(--font-body-sm)}
.about-overview{grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr)!important;gap:56px!important;align-items:center!important}
.about-overview__copy h2{margin-bottom:22px!important}
.about-overview__copy ul{margin:0 0 24px;padding-left:20px;display:grid;gap:7px}
.about-overview__copy p{max-width:66ch}
.about-overview__media .ph{height:420px;min-height:420px!important;padding:0}
.about-overview__media .ph img{height:100%;min-height:0;object-fit:cover;object-position:center 35%}
.training-callout{margin-top:32px;padding:28px;border-radius:var(--radius);background:var(--color-surface-muted)}
.training-callout h3{margin-bottom:12px!important}
.training-callout p{max-width:62ch;margin:0 0 24px!important;color:var(--color-text-secondary)}
.tech-intro{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:40px}
.tech-intro h2{max-width:none;margin:0!important}
.tech-intro>.lead{width:100%;max-width:none;margin:0!important;font:var(--font-body-lg)}
.tech-subtitle{margin:0 0 22px!important;font-size:20px!important}
.tech-solutions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tech-solution-card{min-height:190px;padding:26px;border-radius:var(--radius);background:var(--color-surface-muted)}
.tech-card-index{display:block;margin-bottom:34px;color:var(--color-accent);font:600 13px/1 var(--font-family);letter-spacing:.08em}
.tech-solution-card h3{margin:0 0 10px!important;font-size:20px!important;line-height:1.2!important}
.tech-solution-card p{max-width:40ch;margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.tech-operation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.tech-operation article{min-height:220px;padding:30px;border-radius:var(--radius);background:#f1f1ef}
.tech-operation h3{margin:20px 0 12px!important;font-size:24px!important}
.tech-operation p{max-width:58ch;margin:0;color:var(--color-text-secondary)}
.tech-compatibility{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-top:16px;padding:38px;border-radius:var(--radius);background:var(--color-dark);color:var(--color-inverse)}
.tech-compatibility h3{margin:20px 0 12px!important;color:inherit;font-size:26px!important}
.tech-compatibility p{max-width:76ch;margin:0;color:rgba(255,255,255,.72)}
.tech-compatibility .btn{flex:none}
.muted{color:var(--color-text-secondary);font:var(--font-body-sm)}
.prose{max-width:78ch;color:var(--color-text-secondary);font:var(--font-body-lg)}
.prose p{margin:0 0 15px}

.phero>div>p{margin:0 0 16px}
.phero>div>p:last-of-type{margin-bottom:24px}
.phero>div>p+.btn{margin-top:0}

/* Services: compact technical structure built from the shared design system. */
body[data-page="services.html"]>.wrap>section{position:relative}
body[data-page="services.html"] .services-hero{padding-bottom:0!important}
.services-hero>.lead{width:100%;max-width:none!important;white-space:nowrap}
.services-development{isolation:isolate;padding-bottom:80px!important}
.services-development::before{content:"";position:absolute;z-index:-1;inset:0 50%;width:100vw;transform:translateX(-50%);background:var(--color-surface-muted)}
.services-hero__nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:40px}
.services-hero__nav a{min-height:72px;display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:var(--radius);background:rgba(249,249,249,.92);font:500 15px/1.25 var(--font-family);transition:background var(--transition-fast),transform var(--transition-fast)}
.services-hero__nav a:hover{background:#eee;transform:translateY(-2px)}
.services-hero__nav svg{width:22px;height:22px;flex:none;color:var(--color-accent);stroke-width:1.8}
.services-section-heading{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:32px}
.services-section-heading h2{margin-bottom:0!important}
.services-section-heading>p{width:100%;max-width:none;margin:0;color:var(--color-text-secondary);font:var(--font-body)}
.services-spec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.services-spec-card,.services-card{min-width:0;padding:26px;border-radius:var(--radius);background:var(--color-surface-muted)}
.services-development .services-spec-card{background:#fff}
.services-spec-card{min-height:230px;display:flex;flex-direction:column}
.services-card-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:34px;border-radius:var(--radius);background:rgba(22,22,22,.08);color:var(--color-accent)}
.services-card-icon svg{width:24px;height:24px;stroke-width:1.8}
.services-card-icon--dark{margin:0;background:rgba(255,255,255,.12);color:#fff}
.services-spec-card h3,.services-card h3{margin-bottom:10px!important;font-size:20px!important;line-height:1.22!important}
.services-spec-card p,.services-card p{margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.services-note{display:flex;align-items:flex-start;gap:16px;margin-top:16px;padding:20px 22px;border-radius:var(--radius);background:#fff}
.services-note--accent{background:#ededeb}
.services-small-batch{display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:18px;margin-top:24px;padding:26px 28px;background:var(--color-dark);color:#fff}
.services-product-stack{display:flex;align-items:center;padding-left:2px}
.services-product-stack span{position:relative;width:62px;height:62px;display:grid;place-items:center;overflow:hidden;margin-left:-14px;padding:7px;border:3px solid var(--color-dark);border-radius:50%;background:#fff}
.services-product-stack span:first-child{margin-left:0}.services-product-stack span:nth-child(1){z-index:3}.services-product-stack span:nth-child(2){z-index:2}.services-product-stack span:nth-child(3){z-index:1}
.services-product-stack img{display:block;width:100%;height:100%;object-fit:contain}
.services-small-batch p{color:rgba(255,255,255,.7)}
.services-small-batch .services-actions{justify-content:flex-end;margin-top:0}
.services-small-batch .services-actions .btn{border-color:#fff;background:#fff;color:var(--color-dark)}
.services-small-batch .services-actions .btn.ghost{border-color:rgba(255,255,255,.72);background:transparent;color:#fff}
.services-small-batch .services-actions .btn:hover{border-color:#e5e5e5;background:#e5e5e5;color:var(--color-dark)}
.services-note>svg{width:24px;height:24px;flex:none;color:var(--color-accent);stroke-width:1.8}
.services-note strong{display:block;margin-bottom:5px;font:600 16px/1.3 var(--font-family)}
.services-note p{margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.services-small-batch.services-note p{color:rgba(255,255,255,.7)}
.services-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.services-actions .btn svg,.services-cta .btn svg,.services-production .btn svg{width:15px;height:15px}
.services-production{isolation:isolate;color:#fff}
.services-production::before{content:"";position:absolute;z-index:-1;inset:0 50%;width:100vw;transform:translateX(-50%);background:linear-gradient(90deg,rgba(22,22,22,.97) 0%,rgba(22,22,22,.91) 52%,rgba(22,22,22,.74) 100%),url("../assets/images/editorial/production-assembly.png") center 44%/cover no-repeat}
.services-production__panel{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);align-items:center;gap:64px;padding:0;background:transparent;color:#fff}
.services-production__intro{display:flex;min-width:0;align-items:flex-start;flex-direction:column}
.services-production__intro h2{max-width:430px;margin:0!important;color:#fff;font-size:clamp(32px,3vw,46px)!important;line-height:1.08!important}
body[data-page="services.html"] .services-production__intro p{max-width:58ch;margin:28px 0 0!important;color:rgba(255,255,255,.72);font:var(--font-body)}
.services-production__intro .btn{margin-top:28px}
.services-check-list{display:grid;grid-template-columns:1fr;gap:10px;margin:0;padding:0;list-style:none}
.services-check-list li{min-height:76px;display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:var(--radius);background:rgba(22,22,22,.66);font:500 16px/1.35 var(--font-family)}
.services-check-list svg{width:22px;height:22px;flex:none;color:#fff;stroke-width:2.2}
.services-production .btn.ghost{border-color:rgba(255,255,255,.72);color:#fff}
.services-production .btn.ghost:hover{border-color:#fff;background:#fff;color:var(--color-dark)}
.services-band{isolation:isolate;padding-bottom:80px!important}
.services-band::before{content:"";position:absolute;z-index:-1;inset:0 50%;width:100vw;transform:translateX(-50%);background:var(--color-surface-muted)}
.services-support{padding-bottom:36px!important}
.services-software{padding-top:48px!important;padding-bottom:64px!important}
.services-support-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.services-support-grid .services-card,.services-software-grid .services-card{min-height:240px;background:#fff}
.services-software-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.services-software .services-card{background:var(--color-surface-muted)}
.services-software .services-note{margin-top:14px;background:#ececea}
.services-cta{display:flex;align-items:center;justify-content:space-between;gap:48px;margin-top:80px;margin-bottom:0;padding:40px!important;border-radius:var(--radius);background:var(--color-accent);color:#fff}
.services-cta h2{margin-bottom:12px!important;color:#fff}
.services-cta p{margin:0;color:rgba(255,255,255,.78)}
.services-cta .btn{flex:none}
.services-cta .btn{border-color:#fff;background:#fff;color:var(--color-accent)}
.services-cta .btn:hover{border-color:var(--color-dark);background:var(--color-dark);color:#fff}

/* About: the same compact, technical content system as the services page. */
body[data-page="about.html"] .about-hero>.lead{max-width:80ch!important}
.about-section-heading{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:30px}
.about-section-heading h2{margin:0!important}
.about-section-heading p{width:auto;max-width:80ch;margin:0;color:var(--color-text-secondary);font:var(--font-body)}
body[data-page="about.html"][data-page="about.html"]>.wrap>section.about-products-section{padding:32px!important;border-radius:var(--radius);background:var(--color-surface-muted)!important}
.about-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.about-product-grid a{min-height:315px;display:grid;grid-template-columns:1fr auto;align-content:space-between;gap:20px;padding:18px 22px 22px;border:0;border-radius:var(--radius);background:#fff;font:600 18px/1.25 var(--font-family);transition:none}
.about-product-grid a:hover{background:#fff;transform:none}
.about-product-grid a>svg:last-child{width:18px;height:18px;align-self:center}
.about-product-media{grid-column:1/-1;height:205px;display:flex;align-items:center;justify-content:center;margin:-18px -22px 0;padding:24px;border-radius:var(--radius) var(--radius) 0 0;background:#fff}
.about-product-media img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.about-production-section{position:relative;isolation:isolate;padding-top:80px!important;padding-bottom:80px!important;color:#fff}
.about-production-section::before{content:"";position:absolute;z-index:-1;inset:0 50%;width:100vw;transform:translateX(-50%);background:var(--color-dark)}
.about-production-panel{display:grid;grid-template-columns:minmax(0,1fr) 520px;grid-template-rows:520px;align-items:center;gap:64px;padding:0;border-radius:0;background:transparent;color:#fff}
.about-production-media{grid-column:2;grid-row:1;width:520px;height:520px;min-height:0;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;margin:0;overflow:hidden;border-radius:var(--radius);background:#202020}
.about-production-media img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center 52%}
.about-production-copy{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:center;padding:0;border-radius:0}
.about-production-copy .about-icon{margin-bottom:20px}
.about-production-copy h2{margin:0 0 18px!important;color:#fff}
.about-production-copy p{max-width:72ch;margin:0 0 14px;color:rgba(255,255,255,.72);font-size:18px;line-height:1.45}
.about-production-points{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}
.about-production-points span{padding:8px 10px;border-radius:6px;background:rgba(255,255,255,.09);color:#fff;font:500 12px/15px var(--font-family)}
.about-production-copy .btn{margin-top:0;border-color:rgba(255,255,255,.72);color:#fff}
.about-production-copy .btn:hover{background:#fff;color:var(--color-dark)}
.about-training-card{grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;padding:24px;border-radius:var(--radius);background:#fff;color:var(--color-text-primary)}
.about-training-card .about-icon{width:44px;height:44px;margin:0 0 22px}
.about-training-card h3{margin:0 0 12px!important;font-size:20px!important}
.about-training-card p{max-width:32ch;margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.about-training-card .btn{width:100%;margin-top:auto;padding-inline:14px}
.about-icon{width:46px;height:46px;display:grid;place-items:center;margin:0 0 30px;border-radius:var(--radius);background:rgba(22,22,22,.08);color:var(--color-accent)}
.about-icon svg{width:24px;height:24px;stroke-width:1.8}
.about-icon--large{width:56px;height:56px;margin-bottom:34px}
.about-icon--large svg{width:28px;height:28px}
.about-icon--dark{background:rgba(255,255,255,.1);color:#fff}
body[data-page="about.html"] .tech-platform-panel{padding:32px;border-radius:var(--radius);background:var(--color-surface-muted)}
body[data-page="about.html"] .tech-intro{gap:14px;margin-bottom:26px}
body[data-page="about.html"] .tech-intro h2{margin:0!important}
body[data-page="about.html"] .tech-intro>.lead{max-width:80ch}
body[data-page="about.html"] .tech-platform-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:stretch}
body[data-page="about.html"] .tech-solutions-panel{min-width:0;padding:24px;border-radius:var(--radius);background:#fff}
body[data-page="about.html"] .tech-solutions-panel__heading{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}
body[data-page="about.html"] .tech-solutions-panel__heading h3{margin:0!important;font-size:23px!important}
body[data-page="about.html"] .tech-solutions-panel__heading p{max-width:78ch;margin:0;color:var(--color-text-secondary)}
body[data-page="about.html"] .tech-solutions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body[data-page="about.html"] .tech-solution-card{min-height:112px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding:14px;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
body[data-page="about.html"] .tech-solution-card .about-icon{width:36px;height:36px;margin:0;background:#fff;color:var(--color-text-primary)}
body[data-page="about.html"] .tech-solution-card .about-icon svg{width:19px;height:19px}
body[data-page="about.html"] .tech-solution-card h3{margin-bottom:5px!important;color:var(--color-text-primary);font-size:16px!important}
body[data-page="about.html"] .tech-solution-card p{color:var(--color-text-secondary)}
body[data-page="about.html"] .tech-operation-panel{min-width:0;margin:0;padding:24px;border-radius:var(--radius);background:#fff;color:var(--color-text-primary)}
body[data-page="about.html"] .tech-operation-panel__heading{display:flex;flex-direction:column;gap:7px;margin-bottom:20px}
body[data-page="about.html"] .tech-operation-panel__heading h3{margin:0!important;color:var(--color-text-primary);font-size:23px!important}
body[data-page="about.html"] .tech-operation-panel__heading p{margin:0;color:var(--color-text-secondary)}
body[data-page="about.html"] .tech-operation{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:0}
body[data-page="about.html"] .tech-operation article{min-height:166px;padding:16px;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
body[data-page="about.html"] .tech-operation article:nth-child(3){grid-column:auto;min-height:166px}
body[data-page="about.html"] .tech-operation article:first-child,body[data-page="about.html"] .tech-operation article:last-child{padding:16px;border:0}
body[data-page="about.html"] .tech-operation .about-icon{width:38px;height:38px;margin-bottom:16px;background:#fff;color:var(--color-text-primary)}
body[data-page="about.html"] .tech-operation .about-icon svg{width:20px;height:20px}
body[data-page="about.html"] .tech-operation h3{margin:0 0 7px!important;color:var(--color-text-primary);font-size:16px!important}
body[data-page="about.html"] .tech-operation p{color:var(--color-text-secondary);font:var(--font-body-sm)}
.tech-import-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:50px;padding:50px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.tech-import-cta h3{margin:0 0 8px!important;color:#fff;font-size:24px!important}
.tech-import-cta p{margin:0;color:rgba(255,255,255,.7)}
.tech-import-cta .btn{flex:none;border-color:#fff;background:#fff;color:var(--color-dark)}
.tech-import-cta .btn:hover{border-color:#e8e8e5;background:#e8e8e5;color:var(--color-dark)}
.import-origin-flags{display:flex;align-items:center;margin:0 0 22px;padding-left:8px}
.import-origin-flags span{width:92px;height:92px;display:grid;place-items:center;margin-left:-16px;overflow:hidden;border:6px solid var(--color-dark);border-radius:50%;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.24)}
.import-origin-flags img{width:100%;height:100%;object-fit:cover}
.about-section-lead{max-width:80ch;margin:-14px 0 28px!important;color:var(--color-text-secondary);font:var(--font-body)}
.about-quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.about-quality-card{min-width:0;display:grid;grid-template-columns:218px minmax(0,1fr);align-items:center;gap:28px;padding:28px;border-radius:var(--radius);background:var(--color-surface-muted)}
.about-quality-card__content{min-width:0}
.about-quality-card__content h3{margin:0 0 10px!important;font-size:22px!important;line-height:1.22!important}
.about-quality-card__content p{max-width:44ch;margin:0;color:var(--color-text-secondary)}
.about-quality-card__content .btn{margin-top:24px}
.about-certificate-grid{height:148px;display:flex;align-items:stretch;gap:8px}
.about-certificate-card{position:relative;width:auto;height:148px;min-width:0;min-height:0;flex:0 0 auto;display:block;padding:0;overflow:hidden;border:1px solid var(--color-border-subtle);border-radius:2px;background:transparent;color:var(--color-text-primary);cursor:zoom-in;text-align:left;box-shadow:none;transition:transform var(--transition-fast)}
.about-certificate-card:hover,.about-certificate-card:focus-visible{transform:translateY(-3px);box-shadow:none}
.about-certificate-preview{display:block;width:auto;height:100%;background:transparent}
.about-certificate-preview img{width:auto;height:100%;min-height:0;display:block;object-fit:contain}
.about-document-zoom{position:absolute;inset:0;display:grid;place-items:center;background:rgba(22,22,22,.3);color:#fff;opacity:0;transition:opacity var(--transition-fast)}
.about-document-zoom svg{width:30px;height:30px;filter:drop-shadow(0 2px 5px rgba(0,0,0,.28))}
.about-certificate-card:hover .about-document-zoom,.about-certificate-card:focus-visible .about-document-zoom{opacity:1}
.about-registry-logo{width:148px;height:148px;display:grid;place-items:center;justify-self:center;border-radius:var(--radius);background:#fff}
.about-registry-logo img{width:82px;height:82px;display:block}
.about-industries-section{position:relative;isolation:isolate;margin-top:48px;padding-bottom:80px!important}
.about-industries-section::before{content:"";position:absolute;z-index:-1;inset:0 50%;width:100vw;transform:translateX(-50%);background:var(--color-surface-muted)}
.about-industries-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.about-industries-grid article{min-height:230px;padding:26px;border-radius:var(--radius);background:#fff}
.about-industries-grid h3{margin-bottom:10px!important;font-size:20px!important}
.about-industries-grid p{margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.about-career-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;padding:34px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.about-career-card .about-icon{margin:0}
.about-career-card h2{margin:0 0 8px!important;color:#fff;font-size:30px!important}
.about-career-card p{margin:0;color:rgba(255,255,255,.7)}
.about-career-card .btn{border-color:rgba(255,255,255,.75);color:#fff}
.about-career-card .btn:hover{background:#fff;color:var(--color-dark)}
body[data-page="about.html"] .about-career-card .btn.ghost{border-color:rgba(255,255,255,.78);color:#fff}
body[data-page="about.html"] .about-career-card .btn.ghost:hover{border-color:#fff;background:#fff;color:var(--color-dark)}

/* Career: editorial hero, structured benefits and consistent vacancy cards. */
.career-hero{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(0,1.22fr);align-items:center;gap:54px;padding-top:24px!important;padding-bottom:64px!important}
.career-hero__copy{min-width:0}
.career-hero__copy h1{margin-bottom:24px!important}
.career-hero__copy .lead{max-width:58ch;margin:0!important}
.career-hero__media{height:430px;margin:0;overflow:hidden;border-radius:var(--radius);background:var(--color-surface-muted)}
.career-hero__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.career-benefits-section{position:relative;isolation:isolate;padding-top:64px!important;padding-bottom:64px!important}
.career-benefits-section::before,.career-life-section::before{content:"";position:absolute;z-index:-1;inset:0 50%;width:100vw;transform:translateX(-50%);background:var(--color-surface-muted)}
.career-benefits-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.career-benefits-grid article{min-width:0;min-height:190px;display:flex;align-items:flex-start;flex-direction:column;padding:22px;border-radius:var(--radius);background:#fff}
.career-benefits-grid svg{width:28px;height:28px;margin-bottom:38px;stroke-width:1.7}
.career-benefits-grid b{display:block;font:600 16px/1.3 var(--font-family)}
.career-benefits-grid p{margin:8px 0 0!important;color:var(--color-text-secondary);font:var(--font-body-sm)}
.career-vacancies-section>h2{max-width:none;margin-bottom:28px!important}
.career-vacancies-section .vac{overflow:hidden;margin:0 0 12px;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
.career-vacancies-section .vac>summary{min-height:112px;display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:30px;padding:24px 28px;cursor:pointer;list-style:none}
.career-vacancies-section .vac>summary::-webkit-details-marker{display:none}
.career-vacancies-section .vac>summary::after{content:none}
.career-vacancies-section .vac>summary h3{margin:0 0 8px!important;font-size:20px!important;line-height:1.25!important}
.career-vacancies-section .vac>summary .muted{display:block;line-height:1.4}
.career-vacancies-section .vac-toggle-label{width:180px;justify-content:center;justify-self:end;pointer-events:none}
.career-vacancies-section .vac[open]>summary{border:0;background:#ededeb}
.career-vacancies-section .vac .vbody{padding:28px;background:#fff;border:1px solid var(--color-border-soft);border-top:0;border-radius:0 0 var(--radius) var(--radius)}
.career-vacancies-section .vac .vbody h4{margin:24px 0 10px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}
.career-vacancies-section .vac .vbody h4:first-child{margin-top:0}
.career-vacancies-section .vac ul{margin:0 0 4px;padding-left:20px;color:var(--color-text-secondary);line-height:1.55}
.career-apply-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:42px;margin-top:28px;padding:36px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.career-apply-card h3{margin:0 0 10px!important;color:#fff;font-size:27px!important}
.career-apply-card p{max-width:none;margin:0!important;color:rgba(255,255,255,.72);line-height:1.55}
.career-apply-card p a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.career-apply-card .button{display:inline-flex;align-items:center;gap:8px;flex:none}
.career-apply-card .button svg{width:18px;height:18px}
.career-life-section{position:relative;isolation:isolate;padding-top:72px!important;padding-bottom:72px!important}
html body[data-page="career.html"]>.wrap>section.career-life-section.career-life-section{margin-top:64px;padding-top:72px!important;padding-bottom:72px!important}
.career-life-section .shead{margin-bottom:30px}
.career-life-section .shead h2{max-width:none;margin-bottom:10px!important}
.career-life-section .shead .lead{max-width:none}
.career-life-card{min-width:0;display:flex;overflow:hidden;flex-direction:column;border-radius:var(--radius);background:#fff;text-decoration:none;transition:transform var(--transition-fast)}
.career-life-card:hover{transform:translateY(-3px)}
.career-life-card__media{height:220px;display:block;overflow:hidden;background:#e8e8e5}
.career-life-card__media img{display:block;width:100%;height:100%;object-fit:cover}
.career-life-card__body{min-height:150px;display:flex;align-items:flex-start;flex-direction:column;padding:22px}
.career-life-card__body strong{font:600 19px/1.3 var(--font-family)}
.career-life-card__body time{margin-top:9px;color:var(--color-text-secondary);font:var(--font-body-sm)}
.career-life-card__body>span{display:inline-flex;align-items:center;gap:7px;margin-top:auto;padding-top:24px;font:500 14px/1.2 var(--font-family)}
.career-life-card__body>span svg{width:16px;height:16px;transition:transform var(--transition-fast)}
.career-life-card:hover .career-life-card__body>span svg{transform:translateX(3px)}
body.document-viewer-open{overflow:hidden}
.document-viewer[hidden]{display:none}
.document-viewer{position:fixed;z-index:1600;inset:0;display:grid;place-items:center;padding:24px}
.document-viewer__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(14,14,14,.72);cursor:zoom-out}
.document-viewer__panel{position:relative;width:min(920px,100%);height:min(92dvh,980px);display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.35)}
.document-viewer__header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid var(--color-border-soft)}
.document-viewer__header strong{font:600 16px/1.3 var(--font-family)}
.document-viewer__header button{width:42px;height:42px;display:grid;place-items:center;flex:none;border:0;border-radius:var(--radius);background:var(--color-surface-muted);cursor:pointer}
.document-viewer__header svg{width:20px;height:20px}
.document-viewer__body{min-height:0;flex:1;overflow:auto;padding:24px;background:#e8e8e5;text-align:center}
.document-viewer__body img{width:auto;max-width:100%;height:auto;margin:auto;box-shadow:0 10px 30px rgba(22,22,22,.16)}

.shead{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px;flex-wrap:wrap}
.shead h1,.shead h2{margin-bottom:0}

.grid{display:grid;gap:var(--grid-gap)}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g5{grid-template-columns:repeat(5,minmax(0,1fr))}

/* Controls */
.btn{
  min-height:49px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:14px 20px;
  border:1px solid var(--color-accent);
  border-radius:var(--radius);
  background:var(--color-accent);
  color:var(--color-inverse);
  font:var(--font-button);
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);
}
.btn:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:#fff;transform:none}
.btn:active{background:var(--color-accent-active);border-color:var(--color-accent-active)}
.btn.ghost{background:transparent;color:var(--color-text-primary);border-color:var(--color-text-primary)}
.btn.ghost:hover{background:var(--color-dark);border-color:var(--color-dark);color:#fff}
.btn.sm{min-height:40px;padding:10px 13px;font-size:13px;line-height:16px}
.btn img,.btn svg{width:14px;height:14px;flex:none;object-fit:contain}
.btn img~svg{display:none}
.btn.ghost:hover img{filter:brightness(0) invert(1)}
.btn:disabled{opacity:.45;cursor:not-allowed}

input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,textarea,.field{
  width:100%;
  min-height:49px;
  padding:14px 18px!important;
  border:1px solid transparent!important;
  border-radius:var(--radius)!important;
  background:var(--color-surface-muted);
  color:var(--color-text-primary);
  font:var(--font-body-sm);
}
textarea{min-height:150px;resize:vertical}
input::placeholder,textarea::placeholder{color:var(--color-text-muted);opacity:1}
label{font:var(--font-label);color:var(--color-text-primary)}
label:has(>input:not([type="checkbox"]):not([type="radio"]):not([type="range"])),
label:has(>textarea),label:has(>select){display:grid;gap:9px}
.form-panel{display:grid;gap:20px;padding:30px;background:var(--color-surface);border-radius:var(--radius)}
.form-panel h2,.form-panel h3,.form-panel p{margin-top:0}
.form-grid{display:grid;gap:15px}
.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}
.form-actions--submit{margin-top:0;gap:18px}
.form-actions--submit p{margin:0}
.contact-legal__layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:start;gap:40px}
.contact-legal__details{width:100%}
.contact-locations-grid{margin-top:0;align-items:stretch}
.contact-location-card{min-width:0;height:100%;display:flex;flex-direction:column;padding:28px!important;border:0!important;border-radius:var(--radius);background:var(--color-surface-muted)!important}
.contact-location-card h3{min-height:68px;margin:0 0 24px!important;font-size:27px!important;font-weight:700!important}
.contact-location-details{display:grid;flex:1;gap:14px}
.contact-location-card .kv{grid-template-columns:minmax(132px,.45fr) minmax(0,1fr);gap:18px;padding:0;border:0!important;font-size:14px;line-height:1.45}
.contact-location-card .kv .k{display:flex;align-items:flex-start;gap:9px;color:var(--color-text-secondary)}
.contact-location-card .kv .k svg{width:17px;height:17px;flex:none;margin-top:1px;color:var(--color-text-primary);stroke-width:1.8}
.contact-location-card .kv .v{min-width:0;font-weight:500;overflow-wrap:anywhere}
.contact-location-card .kv[data-field="address"] .v,.contact-location-card .kv[data-field="postal"] .v{font-weight:400}
.contact-location-map{position:relative;height:280px;margin:28px -28px -28px;overflow:hidden;border-radius:0 0 var(--radius) var(--radius);background:#e8e8e5}
.contact-location-map iframe{width:100%;height:100%;display:block;border:0;filter:none}
.contact-map-marker{position:absolute;z-index:2;top:50%;left:50%;width:42px;height:42px;display:grid;place-items:center;padding:0;border:0;background:transparent;transform:translate(-50%,-100%);color:var(--color-dark);filter:drop-shadow(0 2px 2px rgba(255,255,255,.9));cursor:pointer}
.contact-map-marker svg{width:38px;height:38px;fill:var(--color-dark);stroke:#fff;stroke-width:1.5}
.contact-map-marker[aria-expanded="true"]{transform:translate(-50%,-100%) scale(1.08)}
.contact-map-popup{position:absolute;z-index:3;top:16px;left:16px;width:min(270px,calc(100% - 32px));padding:16px;border-radius:var(--radius);background:#fff;color:var(--color-text-primary)}
.contact-map-popup strong,.contact-map-popup p{display:block;margin:0}.contact-map-popup p{margin-top:6px;color:var(--color-text-secondary);font:var(--font-body-sm)}
.contact-map-popup a{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font:500 13px/1.3 var(--font-family);text-decoration:none}.contact-map-popup a:hover{text-decoration:underline}.contact-map-popup a svg{width:15px;height:15px}
.details-list{width:100%;max-width:none}
.details-list .kv{display:grid;grid-template-columns:minmax(220px,.32fr) minmax(0,1fr);gap:24px;padding:14px 0;font-size:15px;line-height:1.4}
.details-list .kv .k{min-width:0;color:var(--color-text-secondary)}
.details-list .kv .v{min-width:0;font-weight:500;overflow-wrap:anywhere}
.details-list .kv:last-child{border-bottom:0}
.contact-route-panel{display:flex;align-items:flex-start;flex-direction:column;padding:32px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.contact-route-panel h2{margin:0!important;font-size:clamp(26px,2vw,34px)!important}
.contact-route-panel p{max-width:620px;margin:18px 0 0;white-space:normal;color:rgba(255,255,255,.72);line-height:1.55}
.contact-route-panel__email{display:block;margin-top:8px;color:#fff}
.contact-route-panel__email a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.contact-route-panel__email a:hover{opacity:.72}
.contact-route-panel .btn{margin-top:24px;background:#fff;color:var(--color-dark)}
.contact-message-form{grid-template-columns:1fr;max-width:none}
.request-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:40px;align-items:start;margin-top:0}
.request-form{gap:18px}
.request-form #rtype{margin:0!important}
.request-form>.btn{justify-self:start}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):focus,select:focus,textarea:focus{outline:0;border-color:var(--color-accent)!important;background:#f3f3f3;box-shadow:none}
input[type="checkbox"],input[type="radio"],input[type="range"]{accent-color:var(--color-accent)}

.tabs,.tags,.chips{display:flex;gap:5px;flex-wrap:wrap}
.tag,.chip{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border:0;border-radius:var(--radius);background:var(--color-surface-muted);color:var(--color-text-primary);font:var(--font-caption)}
.tag.k{background:var(--color-dark);border-color:var(--color-dark);color:#fff}
.tag.reg{border-color:var(--color-text-primary);font-weight:600}
.chip button{display:grid;place-items:center;border:0;background:none;padding:0;cursor:pointer;color:inherit}
.chip button svg{width:13px;height:13px}

/* Media and cards */
.ph{position:relative;min-height:220px!important;display:grid;place-items:center;overflow:hidden;margin:0;padding:20px;border:0;border-radius:var(--radius);background:#fff;color:var(--color-text-secondary)}
.ph img{display:block;width:100%;height:100%;min-height:inherit;object-fit:contain}
.ph::after{content:none}
.map-frame{padding:0}
.map-frame iframe{width:100%;height:100%;min-height:inherit;border:0;filter:grayscale(1)}
.document-media{gap:14px;background:var(--color-surface-muted);text-align:center}
.document-media svg{width:42px;height:42px;color:var(--color-accent)}

.card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:0;border-radius:var(--radius);background:var(--color-surface-muted);color:inherit;text-decoration:none;transition:background-color var(--transition-fast)}
.card:hover{border-color:transparent;box-shadow:none;transform:none;background:#f2f2f2}
.card .cimg{min-height:220px;padding:20px;background:#fff;border:0}
.card .cimg>.ph{height:100%;min-height:180px!important;padding:0}
.card .cbody{display:flex;flex:1;flex-direction:column;padding:24px}
.card .cart{font:500 24px/28px var(--font-family)}
.card .cname{margin:10px 0 18px;color:var(--color-text-secondary);font:var(--font-body-sm)}
.card ul.spec{list-style:none;margin:0 0 20px;padding:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.card ul.spec li{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid var(--color-border-soft)}
.card ul.spec li b{color:var(--color-text-primary);font-weight:500;text-align:right}
.card .tags{margin-bottom:15px}
.card .cfoot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto}
.card .cfoot .btn{flex:1}
.card .cimg.solution-media{height:260px;padding:24px;background:#fff}
.card .cimg.solution-media img{width:100%;height:100%;object-fit:contain}
.card.solution-card{height:auto;min-height:560px}
.solution-card .status{align-self:flex-start}

/* Ready solutions */
.solutions-section-heading{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:28px}
.solutions-section-heading h2{margin:7px 0 0!important}
.solutions-section-heading>p{width:100%;max-width:none;margin:0;color:var(--color-text-secondary);font:var(--font-body)}
.solutions-list-section{padding-bottom:80px!important}
.solutions-list-section .solutions-section-heading{display:block}
.solutions-list-section .solutions-section-heading h2{max-width:1100px}
.solutions-hero>.lead{max-width:none!important;white-space:nowrap}
.solutions-page-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch;padding-top:15px}
.solutions-page-grid .solution-card--listing{position:relative;min-height:650px;overflow:visible;border:1px solid var(--color-surface-muted);background:var(--color-surface-muted)}
.solutions-page-grid .solution-card--listing:hover{background:var(--color-surface-muted)}
.solutions-page-grid .solution-card--listing .solution-media{position:relative;width:100%;height:auto;min-height:0;aspect-ratio:4/3;padding:0;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0;background:#fff}
.solutions-page-grid .solution-card--listing .solution-media img{position:absolute;inset:22px;width:calc(100% - 44px);height:calc(100% - 44px);max-width:none;max-height:none;object-fit:contain;object-position:center}
.solutions-page-grid .solution-card--listing .solution-media img[src*="cpci-conduction"]{inset:30px;width:calc(100% - 60px);height:calc(100% - 60px)}
.solutions-page-grid .solution-card--listing .cbody{padding:24px}
.solutions-page-grid .solution-card--listing .status{position:absolute;z-index:2;top:0;left:22px;margin:0;transform:translateY(-50%);background:#287a3f;color:#fff;box-shadow:0 8px 20px rgba(22,22,22,.1)}
.solutions-page-grid .solution-card--listing .cart{font-size:20px!important;line-height:1.22;font-weight:600}
.solutions-page-grid .solution-card--listing .cname{margin-bottom:22px}
.solution-card__uses-label{margin:0 0 10px;color:var(--color-text-primary);font:600 12px/15px var(--font-family);text-transform:uppercase;letter-spacing:.04em}
.solution-card__uses{gap:6px;margin-bottom:22px!important}
.solution-card__uses .tag{padding:8px 10px;background:#fff;color:var(--color-text-primary);font-size:13px;line-height:1.25}
.solutions-page-grid .solution-card--listing .cfoot .btn{width:100%}
.solutions-applications-section{position:relative;isolation:isolate}
.solutions-applications-section::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:var(--color-surface-muted)}
.solutions-applications{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.application-card{min-width:0;min-height:184px;padding:24px 20px;border-radius:var(--radius);background:#fff}
.application-card svg{width:36px;height:36px;margin-bottom:42px;color:var(--color-accent);stroke-width:1.8}
.application-card h3{margin:0!important;font-size:17px!important;line-height:1.25!important}

.status{display:inline-flex;margin-bottom:12px;padding:9px 13px;border:0;border-radius:var(--radius);background:var(--color-surface-muted);font:var(--font-caption);text-transform:uppercase;letter-spacing:.08em}
.status.ok{border:0;background:rgba(40,122,63,.08);color:var(--ok)}
.status.wait{border:0;background:rgba(165,69,16,.08);color:var(--warn)}

/* Catalog */
.catalog-directions-section{position:relative;isolation:isolate;margin-top:40px!important;padding:80px 0!important;background:transparent!important}
.catalog-directions-section::before{content:"";position:absolute;z-index:-1;inset:0 50%;width:100vw;transform:translateX(-50%);background:var(--color-surface-muted)}
.catalog-directions-section>h2{margin:0 0 30px!important}
.catalog-hero>.lead{max-width:none;margin-bottom:0}
.catalog-directions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.catalog-direction-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border:0;border-radius:var(--radius);background:#fff;transition:transform var(--transition-medium)}
.catalog-direction-card:hover{transform:translateY(-3px)}
.catalog-direction-card__media{height:210px;padding:22px;background:#fff}
.catalog-direction-card__media img{display:block;width:100%;height:100%;object-fit:contain}
.catalog-direction-card__body{display:flex;flex:1;flex-direction:column;padding:24px}
.catalog-direction-card h2{margin:0 0 10px!important;font:600 20px/1.2 var(--font-family)!important}
.catalog-direction-card p{margin:0 0 24px;color:var(--color-text-secondary);font:var(--font-body-sm)}
.catalog-direction-card__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.catalog-direction-card__actions .btn{flex:1;min-width:max-content}
.catalog-direction-card__brochure{display:grid;grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:12px;width:100%;min-height:48px;margin-top:2px;padding:10px 14px;border-radius:var(--radius);background:var(--color-surface-muted);color:var(--color-text-primary);transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}
.catalog-direction-card__brochure>span{min-width:0;font:400 14px/18px var(--font-family)}.catalog-direction-card__brochure strong{font-weight:600}.catalog-direction-card__brochure svg{width:19px;height:19px}.catalog-direction-card__brochure:hover{background:var(--color-dark);color:#fff;transform:translateY(-1px)}
.product-card[data-product-href]{cursor:pointer}.product-card[data-product-href]:focus-visible{outline:2px solid var(--color-text-primary);outline-offset:3px}.product-card[data-product-href]:hover h3{text-decoration:underline;text-underline-offset:3px}
.catalog-workspace-section{padding-top:72px!important}
.catalog-workspace-heading{margin-bottom:32px}
.catalog-workspace-heading h2{margin:0 0 10px!important}
.catalog-workspace-heading .lead{margin:0;max-width:680px;font:var(--font-body)}
.catalog-active-summary{display:inline-flex;margin:12px 0 0!important;padding:8px 11px;border-radius:var(--radius);background:#ececea;color:var(--color-accent);font:500 13px/1.25 var(--font-family)}
.catalog-active-summary[hidden]{display:none}
.catalog-result-count b{font-weight:600}
.catalog-toolbar-controls{width:min(100%,560px)}
.catalog{display:grid;grid-template-columns:300px minmax(0,1fr);gap:30px;align-items:start;padding-bottom:var(--space-section)}
.filters{position:sticky;top:calc(var(--header-height) + 15px);overflow:hidden;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
.catalog-filter-trigger,.catalog-filter-backdrop,.catalog-filter-close,.catalog-filter-footer,.catalog-filter-handle{display:none}
.catalog-load-more{display:none}
.fhead-actions{display:flex;align-items:center;gap:8px}
.fhead{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--color-border-soft);font:500 16px/20px var(--font-family)}
.fbody{
  max-height:calc(100vh - var(--header-height) - 130px);
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:rgba(22,22,22,.28) transparent;
  scrollbar-gutter:stable;
}
.fbody::-webkit-scrollbar{width:7px}
.fbody::-webkit-scrollbar-track{background:transparent}
.fbody::-webkit-scrollbar-thumb{
  min-height:48px;
  border:2px solid transparent;
  border-radius:999px;
  background:rgba(22,22,22,.28);
  background-clip:padding-box;
}
.fbody::-webkit-scrollbar-thumb:hover{background:rgba(22,22,22,.5);background-clip:padding-box}
.fgroup{border-bottom:1px solid var(--color-border-soft)}
.fgroup:last-child{border-bottom:0}
.fgroup>summary{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;list-style:none;color:var(--color-text-primary);cursor:pointer;font:500 14px/18px var(--font-family)}
.fgroup>summary::-webkit-details-marker{display:none}
.filter-disclosure{width:28px;height:28px;display:grid;place-items:center;flex:none;border-radius:50%;background:#fff;color:var(--color-text-secondary);transition:background var(--transition-fast),color var(--transition-fast)}
.filter-disclosure svg{grid-area:1/1;width:16px;height:16px}
.filter-disclosure__open{display:none}
.fgroup[open]>summary .filter-disclosure__closed{display:none}
.fgroup[open]>summary .filter-disclosure__open{display:block}
.fgroup>summary:hover .filter-disclosure{background:#e9e9e9;color:var(--color-text-primary)}
.fgroup[open]>summary .filter-disclosure{background:var(--color-dark);color:#fff}
.fitems{padding:0 20px 15px}
.fitem{display:flex;align-items:center;gap:10px;padding:6px 0;color:var(--color-text-primary);font:var(--font-body-sm);cursor:pointer}
.fitem input{width:16px;height:16px;margin:0;flex:none}
.fitem .n{margin-left:auto;color:var(--color-text-muted);font:var(--font-caption)}
.fitem.off{color:var(--color-text-muted);opacity:.42;cursor:not-allowed}
.range{padding:5px 0;font:var(--font-body-sm)}
.range input{width:100%}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px;flex-wrap:wrap}
.catalog-toolbar-controls{display:flex;align-items:center;gap:10px}
.catalog-toolbar-controls>#q{min-width:280px;border:1px solid transparent!important;box-shadow:none}
.catalog-toolbar-controls>#q:focus{border-color:var(--color-accent)!important;background:var(--color-surface-muted);box-shadow:none}
.custom-select{position:relative;width:260px;flex:none;font:var(--font-body-sm)}
.custom-select__button{width:100%;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;border:0;border-radius:var(--radius);background:var(--color-surface-muted);color:var(--color-text-primary);cursor:pointer;text-align:left}
.custom-select__button:focus-visible{outline:0;background:#f3f3f3;box-shadow:inset 0 0 0 1px var(--color-accent)}
.custom-select.is-open .custom-select__button{background:#ededed;box-shadow:inset 0 0 0 1px var(--color-accent)}
.custom-select__button i{width:8px;height:8px;flex:none;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform var(--transition-fast)}
.custom-select.is-open .custom-select__button i{transform:translateY(2px) rotate(225deg)}
.custom-select__menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:100%;padding:6px;border:0;border-radius:var(--radius);background:#fff;box-shadow:0 14px 34px rgba(22,22,22,.14)}
.custom-select__menu[hidden]{display:none}
.custom-select__menu button{width:100%;min-height:42px;padding:11px 12px;border:0;border-radius:6px;background:transparent;color:var(--color-text-primary);cursor:pointer;font:inherit;text-align:left}
.custom-select__menu button:hover,.custom-select__menu button:focus-visible{outline:0;background:var(--color-surface-muted)}
.custom-select__menu button[aria-selected="true"]{background:rgba(22,22,22,.07);color:var(--color-accent);font-weight:500}
.chips{margin-bottom:15px}
.empty{padding:50px;border:0;border-radius:var(--radius);background:var(--color-surface-muted);color:var(--color-text-secondary);text-align:center}
body[data-page="catalog.html"] .product-card{transition:transform var(--transition-medium)}
body[data-page="catalog.html"] .product-card:hover{transform:translateY(-3px);box-shadow:none}
body[data-page="catalog.html"] .product-card__tags .tag{min-height:36px;padding:9px 13px;border:var(--border);background:#fff;color:var(--color-text-primary);font:var(--font-label);box-shadow:none}
body[data-page="catalog.html"] .catalog-product-status{position:absolute;z-index:2;top:10px;left:10px;display:inline-flex;align-items:center;max-width:calc(100% - 20px);min-height:32px;padding:7px 10px;border:0;border-radius:7px;background:#fff;color:var(--color-text-primary);box-shadow:0 8px 20px rgba(22,22,22,.12);font:600 11px/1.2 var(--font-family);letter-spacing:.02em}
body[data-page="catalog.html"] .product-card__body{overflow:visible}
body[data-page="catalog.html"] .product-card__actions{margin-top:4px}

/* Product and solution details */
.phero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:50px;align-items:start}
.product-hero-section .phero{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,5vw,72px)}
.product-hero-media,.product-hero-content{min-width:0}
.product-hero-content{display:flex;flex-direction:column;align-items:stretch}
.chgp-product-composition{padding:40px;border-radius:var(--radius);background:var(--color-surface-muted)!important}
.chgp-product-composition__heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:26px}
.chgp-product-composition__heading h2{margin:0 0 10px!important}
.chgp-product-composition__heading .lead{max-width:850px;margin:0}
.chgp-component-groups{display:grid;gap:10px}
.chgp-component-group{overflow:hidden;border-radius:var(--radius);background:#fff}
.chgp-component-group>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 20px;list-style:none;cursor:pointer}
.chgp-component-group>summary::-webkit-details-marker{display:none}
.chgp-component-group>summary>span{display:flex;align-items:center;gap:10px}
.chgp-component-group>summary strong{font:600 16px/20px var(--font-family)}
.chgp-component-group>summary small{padding:5px 8px;border-radius:99px;background:var(--color-surface-muted);color:var(--color-text-secondary);font:500 11px/14px var(--font-family)}
.chgp-component-group>summary>svg{width:19px;height:19px;transition:transform var(--transition-fast)}
.chgp-component-group[open]>summary>svg{transform:rotate(180deg)}
.chgp-component-group__body{padding:0 20px 20px}
.chgp-component-group__body>p{max-width:850px;margin:0 0 16px;color:var(--color-text-secondary);font:var(--font-body-sm)}
.chgp-component-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.chgp-component-card{min-width:0;padding:20px;border-radius:var(--radius);background:var(--color-surface-muted)}
.chgp-component-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.chgp-component-card__heading span{display:block;margin-bottom:5px;color:var(--color-text-secondary);font:500 10px/13px var(--font-family);letter-spacing:.06em;text-transform:uppercase}
.chgp-component-card__heading h3{margin:0!important;font:600 19px/23px var(--font-family)!important}
.chgp-component-card__heading>svg{width:24px;height:24px;flex:none}
.chgp-component-card>p{margin:10px 0 16px;color:var(--color-text-secondary);font:var(--font-body-sm)}
.chgp-component-card dl{display:grid;gap:7px;margin:0}
.chgp-component-card dl>div{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr);gap:14px;padding:9px 10px;border-radius:5px;background:#fff}
.chgp-component-card dt{color:var(--color-text-secondary);font:var(--font-caption)}
.chgp-component-card dd{margin:0;font:500 12px/16px var(--font-family);text-align:right}
.product-hero-content .tags{margin:0 0 12px}
body[data-page="product.html"] .product-hero-content h1{margin-bottom:16px;font-size:clamp(32px,2.6vw,40px)!important}
.product-hero-content>.lead{margin-bottom:24px!important}
.product-description-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:48px;align-items:start}
.product-description-layout>.lead{margin:0}
.product-description-points{display:flex;gap:8px;flex-wrap:wrap}
.product-description-points span{padding:10px 13px;border-radius:var(--radius);background:var(--color-surface-muted);font:var(--font-body-sm)}
.product-import-layout{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:32px;border-radius:var(--radius);background:var(--color-surface-muted)}
.product-import-layout h2{margin-bottom:12px!important}
.product-import-layout .lead{margin:0;font:var(--font-body)}
.product-summary{width:100%;margin:0 0 24px;padding:20px 22px;border-radius:var(--radius);background:var(--color-surface-muted)}
.product-summary .kv{display:grid;grid-template-columns:minmax(145px,.72fr) minmax(0,1fr);gap:18px}
.product-summary .kv .k{min-width:0}
.product-summary .kv .v{min-width:0;overflow-wrap:anywhere}
.product-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.product-actions .btn{min-height:49px}
.product-files{width:100%}
.product-spec-section>h2,.product-related-section .shead,.product-application-section>h2{max-width:none}
.product-spec-section table{width:100%}
.kv{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--color-border-soft);font:var(--font-body-sm)}
.kv .k{min-width:150px;color:var(--color-text-secondary)}
.kv .v{font-weight:500}
table.spec{width:100%;overflow:hidden;border-collapse:separate;border-spacing:0;border:0;border-radius:0;font:var(--font-body-sm)}
table.spec th,table.spec td{padding:12px 15px;border-bottom:1px solid var(--color-border-soft);text-align:left;vertical-align:top}
table.spec th{width:38%;background:var(--color-surface-muted);color:var(--color-text-secondary);font-weight:500}
table.spec tr:last-child th,table.spec tr:last-child td{border-bottom:0}
.files a{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding:14px 16px;border:0;border-radius:var(--radius);background:var(--color-surface-muted);font:var(--font-body-sm);text-decoration:none}
.files a:hover{background:#f2f2f2}
.files .sz{margin-left:auto;color:var(--color-text-muted);font:var(--font-caption)}
.solution-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:50px;align-items:center}
.solution-hero .lead{margin-bottom:18px!important}
.solution-application-label{margin-bottom:7px;color:var(--color-text-primary)!important;font:500 12px/15px var(--font-family);text-transform:uppercase;letter-spacing:.04em}
.solution-application-tags .tag{font-size:13px;line-height:1.25}
.solution-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.solution-gallery.single{grid-template-columns:1fr}
.solution-photo{position:relative;min-height:380px;display:grid;place-items:center;overflow:hidden;padding:30px;border-radius:var(--radius);background:var(--color-surface-muted)}
.solution-photo img{width:100%;height:100%;max-height:460px;object-fit:contain}
.demo-photo-label{position:absolute;left:15px;bottom:15px;padding:7px 10px;border-radius:var(--radius);background:#fff;color:var(--warn);font:var(--font-caption);text-transform:uppercase;letter-spacing:.08em}
.solution-composition-section>h2,.solution-spec-section>h2{max-width:none}
.system-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 16px}
.system-groups.one{grid-template-columns:1fr}
.system-group{overflow:hidden;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
.system-group__header{padding:24px 24px 20px}
.system-group__header h3{margin:0 0 7px!important;font-size:22px!important;font-weight:700!important}
.system-group__header p{margin:0;line-height:1.5}
.system-group__parts{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important;padding:16px}
.solution-part-card{min-width:0;display:flex;overflow:hidden;flex-direction:column;border-radius:var(--radius);background:#fff;color:var(--color-text-primary);text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}
.solution-part-card__media{height:150px;display:flex;align-items:center;justify-content:center;padding:18px;border-bottom:1px solid var(--color-border-soft);background:#fff}
.solution-part-card__media img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.solution-part-card__content{min-height:62px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px 14px}
.solution-part-card__index{color:var(--color-text-secondary);font:500 11px/1 var(--font-family);letter-spacing:.04em}
.solution-part-card strong{min-width:0;font:600 14px/1.3 var(--font-family);overflow-wrap:anywhere}
.solution-part-card svg{width:16px;height:16px;transition:transform var(--transition-fast)}
a.solution-part-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(22,22,22,.08)}
a.solution-part-card:hover .solution-part-card__content{background:var(--color-dark);color:#fff}
a.solution-part-card:hover .solution-part-card__index{color:rgba(255,255,255,.62)}
a.solution-part-card:hover svg{transform:translateX(3px)}
.solution-part-card--static .solution-part-card__content{grid-template-columns:30px minmax(0,1fr)}
.solution-spec-table-wrap{width:min(100%,920px)}
table.spec.solution-spec-table{width:100%;border-collapse:separate;border-spacing:0 4px;table-layout:fixed;font-size:15px}
table.spec.solution-spec-table th,table.spec.solution-spec-table td{padding:15px 18px;border:0;background:var(--color-surface-muted)}
table.spec.solution-spec-table th{width:31%;border-radius:var(--radius) 0 0 var(--radius);color:var(--color-text-secondary);font-weight:400}
table.spec.solution-spec-table td{border-radius:0 var(--radius) var(--radius) 0;font-weight:600;line-height:1.45}
.solution-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:50px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.solution-cta h2{max-width:760px;margin:0 0 15px!important;color:#fff;font-size:36px!important}
.solution-cta p{max-width:780px;margin:0;color:#d4d4d4;font-size:16px;line-height:1.5}
.solution-cta .button{display:inline-flex;align-items:center;gap:9px;flex:none}
.solution-cta .button svg{width:18px;height:18px}

/* Configurators */
.configurator-hero>.lead{max-width:none;white-space:normal}
.configurator-options-section{padding-top:88px!important}
.cfg-intro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cfg-intro .card{padding:28px;overflow:visible;background:var(--color-surface-muted)}
.cfg-choice-card{position:relative;min-height:0}
.cfg-intro .status{position:absolute;z-index:2;top:0;right:28px;left:auto;margin:0;transform:translateY(-50%);box-shadow:0 8px 20px rgba(22,22,22,.08)}
.cfg-intro .cfg-choice-card .status{background:#fff;color:var(--color-text-primary)}
.cfg-choice-media{width:100%;height:220px;display:flex;align-items:center;justify-content:center;margin:0 0 24px;padding:28px;overflow:hidden;border-radius:var(--radius);background:#fff}
.cfg-choice-media img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.cfg-intro h2{margin:0 0 14px!important;font-size:21px!important}
.cfg-intro p{min-height:96px;margin:0;line-height:1.5}
.cfg-intro .cfoot{margin-top:38px}
.cfg-intro .cfoot .btn{width:100%}
.cfg{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:30px;align-items:start}
.cfg>*{min-width:0}
.step{overflow:hidden;margin-bottom:15px;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
.step>header{display:flex;align-items:center;gap:12px;padding:15px 20px;border-bottom:1px solid var(--color-border-soft);background:var(--color-surface-muted);color:var(--color-text-primary)}
.step>header .no{width:28px;height:28px;display:grid;place-items:center;flex:none;border-radius:50%;background:var(--color-dark);color:#fff;font-size:13px;font-weight:600}
.step>header h3{margin:0;font:500 16px/20px var(--font-family)}
.step>header .hint{margin-left:auto;color:var(--color-text-secondary);font:var(--font-caption)}
.step .sbody{padding:20px}
.opt{display:flex;align-items:flex-start;gap:13px;margin-bottom:8px;padding:13px;border:0;border-radius:var(--radius);background:#fff;cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast)}
.opt:hover{background:#f2f2f2}
.opt.sel{border:0;background:#fff;box-shadow:inset 3px 0 var(--color-accent)}
.opt input{margin:3px 0 0;flex:none}
.opt .oname{display:block;font:500 14px/18px var(--font-family)}
.opt .odesc{display:block;margin-top:3px;color:var(--color-text-secondary);font:var(--font-caption)}
.opt .oright{margin-left:auto;color:var(--color-text-secondary);font:var(--font-caption);text-align:right;white-space:nowrap}
.qty{display:flex;align-items:center;gap:7px}
.qty button{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--color-border);border-radius:var(--radius);background:#fff;cursor:pointer}
.qty button:hover{border-color:var(--color-accent);color:var(--color-accent)}
.qty button svg{width:13px;height:13px}
.qty span{min-width:20px;text-align:center;font-weight:500}
.summary{position:sticky;top:calc(var(--header-height) + 15px);overflow:hidden;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
.summary>header{padding:16px 20px;background:var(--color-dark);color:#fff;font:500 16px/20px var(--font-family)}
.summary .sb{padding:20px}
.sum-line{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid var(--color-border-soft);font:var(--font-body-sm)}
.sum-line b{font-weight:500;text-align:right}
.sum-list{list-style:none;margin:12px 0;padding:0;font:var(--font-body-sm)}
.sum-list li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;color:var(--color-text-secondary)}
.alert,.okline{margin:9px 0;padding:11px 13px;border-radius:var(--radius);font:var(--font-caption)}
.alert{border:0;background:rgba(165,69,16,.06);color:var(--warn)}
.okline{border:0;background:rgba(40,122,63,.06);color:var(--ok)}
.crate{padding:15px;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
.slots{display:flex;gap:3px;overflow-x:auto;padding-bottom:5px}
.slot{min-width:38px;height:104px;display:flex;align-items:center;justify-content:center;padding:5px 0;border:1px solid var(--color-border);background:#fff;color:var(--color-text-secondary);font-size:10px;writing-mode:vertical-rl}
.slot.sys{border:2px solid var(--color-accent);color:var(--color-text-primary);font-weight:600}
.slot.psu{background:#eee}
.slot.free{border-style:dashed;color:var(--color-text-muted)}
.slot.w2{min-width:79px}.slot.w3{min-width:120px}
.layers{position:relative;min-height:330px;display:grid;place-items:center;padding:22px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-muted)}
.board{position:absolute;display:grid;place-items:center;padding:9px;border:2px solid var(--color-text-secondary);background:rgba(255,255,255,.94);color:var(--color-text-secondary);font:var(--font-caption);text-align:center}
.board.b1{width:70%;height:52%;top:34%;left:15%;z-index:1}.board.b2{width:56%;height:38%;top:22%;left:22%;z-index:2}.board.b3{width:44%;height:30%;top:12%;left:28%;z-index:3}.board.b4{width:64%;height:22%;top:60%;left:18%;z-index:4;border-style:dashed}.board.hide{display:none}

/* Comparison is a product-selection workspace rather than a spreadsheet. */
body[data-page="compare.html"]>.wrap::before{height:430px}
body[data-page="compare.html"]>.wrap>section.compare-intro{padding-bottom:0!important}
body[data-page="compare.html"]{overflow-x:visible}
.compare-intro__copy{max-width:none}
.compare-intro__heading,.compare-intro__row{display:flex;align-items:center;justify-content:space-between;gap:40px}
.compare-intro__heading{margin-bottom:18px}.compare-intro__heading h1{margin:0!important}.compare-intro__heading #compareAddAction{flex:none}
.compare-intro__row .lead{min-width:0;max-width:none;margin:0}.compare-intro__row #compareIntroActions{flex:none}
.compare-intro .lead{max-width:none;margin-bottom:0}
body[data-page="compare.html"]>.wrap>section.compare-page{padding-top:40px!important;background:var(--color-background)!important}
body[data-page="compare.html"]>.wrap>section.compare-page::before{background:var(--color-surface-muted)}

.compare-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.compare-switch{display:inline-flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;user-select:none;font:var(--font-body-sm)}
.compare-switch input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.compare-switch__control{position:relative;width:38px;height:22px;border-radius:999px;background:#c9c9c9;transition:background var(--transition-fast)}
.compare-switch__control::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform var(--transition-fast)}
.compare-switch input:checked+.compare-switch__control{background:var(--color-accent)}
.compare-switch input:checked+.compare-switch__control::after{transform:translateX(16px)}
.compare-switch input:focus-visible+.compare-switch__control{outline:2px solid rgba(22,22,22,.25);outline-offset:3px}
.compare-add{display:inline-flex;align-items:center;gap:7px}
.compare-add svg,.compare-clear svg{width:17px;height:17px}
.compare-clear{display:inline-flex;align-items:center;gap:7px;padding:10px 8px;border:0;background:transparent;color:var(--color-text-secondary);font:var(--font-body-sm);cursor:pointer;transition:color var(--transition-fast)}
.compare-clear:hover{color:var(--color-accent)}
.compare-hint{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:13px 16px;border-radius:var(--radius);background:#fff7e8;color:#5f4817;font:var(--font-body-sm)}
.compare-hint svg{width:18px;height:18px;flex:none}
.compare-hint a{margin-left:auto;color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}

.compare-viewport{overflow:visible;padding:0 0 16px;scrollbar-width:thin;scrollbar-color:#9a9a9a transparent}
.compare-viewport::-webkit-scrollbar{height:8px}
.compare-viewport::-webkit-scrollbar-track{background:transparent}
.compare-viewport::-webkit-scrollbar-thumb{border-radius:99px;background:#9a9a9a}
.compare-workspace{--compare-label:190px;--compare-product:minmax(0,1fr);width:100%}
.compare-product-rail{position:sticky;z-index:12;top:0;display:grid;grid-template-columns:var(--compare-label) repeat(var(--compare-count),var(--compare-product));align-items:stretch;border:0;background:#fff;box-shadow:0 14px 16px -18px rgba(22,22,22,.5);transition:top 220ms ease}
body.has-fixed-smart-header:not(.is-smart-header-hidden) .compare-product-rail{top:var(--header-height)}
.compare-axis-card,.compare-product-card{min-width:0;background:#fff}
.compare-axis-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:5px;padding:20px;color:var(--color-text-secondary)}
.compare-axis-card>span{font:500 13px/1.3 var(--font-family)}
.compare-axis-card .compare-axis-summary{color:var(--color-text-primary);font:600 15px/1.3 var(--font-family)}
.compare-product-card{position:relative;min-height:176px;display:grid;grid-template-columns:minmax(96px,42%) minmax(0,1fr);gap:16px;align-items:center;padding:14px 38px 14px 14px;border-left:1px solid var(--color-border-soft)}
.compare-remove{position:absolute;z-index:2;top:12px;right:10px;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:6px;background:var(--color-surface-muted);color:var(--color-text-primary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}
.compare-remove:hover{background:var(--color-accent);color:#fff;transform:scale(1.04)}
.compare-remove svg{width:17px;height:17px}
.compare-product-media{display:block;width:100%;height:138px;border-radius:8px;background:#fff;overflow:hidden}
.compare-product-media .ph{height:100%;min-height:100%!important;padding:0!important;background:#fff}
.compare-product-media .ph::after{display:none}
.compare-product-media img{width:100%;height:100%;padding:0;object-fit:contain;transform:scale(1.12)}
.compare-product-heading{min-width:0}
.compare-product-kind{margin-bottom:3px;overflow:hidden;color:var(--color-text-secondary);font:11px/1.25 var(--font-family);text-overflow:ellipsis;white-space:nowrap}
body[data-page="compare.html"] .compare-product-card h2{margin:0 0 9px!important;font:600 20px/1.15 var(--font-family)!important}
.compare-product-card h2 a{transition:color var(--transition-fast)}
.compare-product-card h2 a:hover{color:var(--color-accent)}
.compare-product-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-accent);font:500 12px/1.3 var(--font-family)}
.compare-product-link:hover{text-decoration:underline;text-underline-offset:3px}
.compare-product-link svg{width:14px;height:14px}

.compare-table{border:0!important;background:#fff}
.compare-spec-row{display:grid;grid-template-columns:var(--compare-label) repeat(var(--compare-count),var(--compare-product));min-height:64px;overflow:hidden;border:1px solid var(--color-border-soft);border-top:0}
.compare-spec-row:first-child{border-top:1px solid var(--color-border-soft)}
.compare-spec-label,.compare-spec-value{display:flex;align-items:center;padding:16px 20px}
.compare-spec-label{position:sticky;z-index:2;left:0;flex-direction:column;align-items:flex-start;justify-content:center;background:#fff;color:var(--color-text-secondary);font:var(--font-body-sm)}
.compare-spec-label::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#d8d8d5}
.compare-spec-value{position:relative;border-left:1px solid var(--color-border-soft);font:500 14px/1.45 var(--font-family)}
.compare-spec-row.is-different{background:#f5f5f3}
.compare-spec-row.is-different .compare-spec-label{background:#f5f5f3;color:var(--color-text-primary)}
.compare-spec-row.is-different .compare-spec-label::before{background:var(--color-accent)}
.compare-no-differences{padding:36px;border-radius:12px;background:#fff;color:var(--color-text-secondary);text-align:center}

.compare-empty{display:flex;flex-direction:column;align-items:center;max-width:760px;margin:0 auto;padding:76px 32px;border-radius:14px;background:#fff;text-align:center}
.compare-empty__icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:22px;border-radius:50%;background:#ececea;color:var(--color-accent)}
.compare-empty__icon svg{width:28px;height:28px}
body[data-page="compare.html"] .compare-empty h2{margin:0 0 12px!important;font-size:34px!important}
.compare-empty p{max-width:560px;margin:0 auto 24px!important;color:var(--color-text-secondary);font:var(--font-body-lg)}
.compare-empty__actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.compare-empty__actions .btn{display:inline-flex;align-items:center;gap:10px}
.compare-empty__actions svg{width:18px;height:18px}
.compare-badge{position:fixed;right:24px;bottom:24px;z-index:40;display:inline-flex;align-items:center;gap:9px;box-shadow:0 8px 24px rgba(22,22,22,.18)}
.compare-badge svg{width:18px;height:18px}
.news{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1px;column-gap:24px;row-gap:0;align-items:start;padding:0;border:0;background:transparent;overflow:visible}
body[data-page="news.html"]>.wrap>section:first-of-type::before,
body[data-page="article.html"]>#root.wrap>section:first-of-type::before{content:none!important}
body[data-page="news.html"]>.wrap>section.page-hero{padding-bottom:28px!important}
body[data-page="news.html"]>.wrap>section.news-content-section{padding-top:18px!important}
.news-tabs{margin:0 0 30px!important}
.news-item{position:relative;display:grid;grid-template-columns:minmax(0,250px) minmax(0,1fr);align-self:start;align-items:start;gap:24px;min-height:0;padding:20px;overflow:hidden;border-radius:var(--radius);background:var(--color-surface-muted);transition:transform var(--transition-medium)}
.news-item:hover{transform:translateY(-3px)}
.news-item__media{position:relative;display:block;width:100%;max-width:250px;height:auto;min-height:0;overflow:hidden;aspect-ratio:4/3;border-radius:6px;background:#fff;isolation:isolate}
.news-item__media::before{content:none}
.news-item__media img{position:relative;z-index:1;display:block;width:100%;height:100%;padding:0;object-fit:cover;object-position:center;transition:transform var(--transition-medium)}
.news-item__media--product{background:#ececea}
.news-item__media--product::before{content:none}
.news-item__media--product img{mix-blend-mode:normal}
.news-item:hover .news-item__media img{transform:scale(1.012)}
.news-item__body{display:flex;min-width:0;align-self:stretch;flex-direction:column;align-items:flex-start;justify-content:center;padding:0}
.news-item__meta{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.news-item__meta time{color:var(--color-text-secondary);font:var(--font-body-sm)}
.news-item__product-link{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;margin:18px 0 0;padding:11px 12px;border:1px solid var(--color-text-primary);border-radius:var(--radius);background:transparent;color:var(--color-text-primary);text-decoration:none}
.news-item__product-link span{grid-column:1;color:var(--color-text-secondary);font:500 10px/1.2 var(--font-family);letter-spacing:.05em;text-transform:uppercase}
.news-item__product-link strong{grid-column:1;font:600 13px/1.25 var(--font-family)}
.news-item__product-link svg{grid-column:2;grid-row:1/3;width:16px;height:16px;transition:transform var(--transition-fast)}
.news-item__product-link:hover{background:var(--color-dark);color:#fff;text-decoration:none}
.news-item__product-link:hover span{color:rgba(255,255,255,.68)}
.news-item__product-link:hover svg{transform:translate(2px,-2px)}
.news-type-badge{position:absolute;z-index:2;top:5px;left:5px;display:inline-flex;align-items:center;min-height:30px;padding:7px 10px;border-radius:var(--radius);background:#fff;color:var(--color-text-primary);font:500 12px/1.2 var(--font-family)}
.news-item h3{max-width:920px;margin:0!important;font-size:19px!important;line-height:1.28!important;font-weight:600!important}
.news-item__actions{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:14px;flex-wrap:wrap;margin-top:22px;padding-top:0}
.news-item__product-link+.news-item__actions{margin-top:8px}
.news-item__actions .btn{min-height:49px}
.news-item__read{min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border:1px solid transparent;border-radius:var(--radius);background:#fff;color:var(--color-text-primary);font:500 14px/1.2 var(--font-family);text-decoration:none;transition:border-color var(--transition-fast),background var(--transition-fast)}
.news-item__read:hover{border-color:var(--color-text-primary);text-decoration:none}
.news-item__read svg{width:16px;height:16px}
.news-subscription{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(380px,.75fr);align-items:center;gap:28px;margin-top:50px;padding:34px;border:0!important;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.news-subscription__icon{width:56px;height:56px;display:grid;place-items:center;border-radius:var(--radius);background:#fff;color:var(--color-dark)}
.news-subscription__icon svg{width:27px;height:27px}
.news-subscription h2{margin:0 0 8px!important;color:#fff;font-size:30px!important;line-height:1.15!important}
.news-subscription p{max-width:620px;margin:0;color:rgba(255,255,255,.7)}
.news-subscription__form{display:flex;align-items:stretch;gap:8px}
.news-subscription__form input{min-width:0;min-height:49px;flex:1;padding:13px 16px;border:1px solid transparent;border-radius:var(--radius);background:#fff;color:var(--color-text-primary);font:inherit;outline:none}
.news-subscription__form input:focus{border-color:#8f8f8f}
.news-subscription__form .btn{min-height:49px;border-color:#fff;background:#fff;color:var(--color-dark)}
.news-subscription__form .btn:hover{background:transparent;color:#fff}
.news-subscription .visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.vac{overflow:hidden;margin-bottom:15px;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}
.vac>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px;list-style:none;cursor:pointer}
.vac>summary::-webkit-details-marker{display:none}
.vac>summary::after{content:"";width:14px;height:14px;flex:none;background:linear-gradient(var(--color-text-primary),var(--color-text-primary)) center/14px 1px no-repeat,linear-gradient(var(--color-text-primary),var(--color-text-primary)) center/1px 14px no-repeat}
.vac[open]>summary::after{background:linear-gradient(var(--color-text-primary),var(--color-text-primary)) center/14px 1px no-repeat}
.vac .vbody{padding:0 24px 24px;border-top:0}
.vac .vbody ul{max-width:86ch;margin:0;padding-left:22px;display:grid;gap:8px;line-height:1.45}
.vac .vbody h4{margin:28px 0 12px}
.tw{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.item{padding:24px;border:0;border-radius:var(--radius);background:var(--color-surface-muted)}

/* The import cross-reference is one data table, not a two-column card grid. */
body[data-page="import.html"] .tw{
  display:block;
  width:100%;
  overflow-x:auto;
}
body[data-page="import.html"] .tw table{width:100%;min-width:900px}
body[data-page="import.html"] .import-hero>.lead{max-width:none}
.import-search{display:flex;gap:10px;flex-wrap:wrap;margin:40px 0 0}
.import-search .button{flex:none}
.import-table-wrap{width:100%;overflow-x:auto;border:0}
body[data-page="import.html"] .import-table-wrap table.spec{width:100%;min-width:1050px;table-layout:fixed}
body[data-page="import.html"] .import-table-wrap table.spec th{width:auto;background:var(--color-surface-muted);color:var(--color-text-secondary);font-weight:500}
body[data-page="import.html"] .import-table-wrap table.spec th,
body[data-page="import.html"] .import-table-wrap table.spec td{padding:18px 16px;line-height:1.45;vertical-align:middle}
body[data-page="import.html"] .import-table-wrap .col-import{width:18%}
body[data-page="import.html"] .import-table-wrap .col-class{width:20%}
body[data-page="import.html"] .import-table-wrap .col-analog{width:24%}
body[data-page="import.html"] .import-table-wrap .col-temp{width:13%}
body[data-page="import.html"] .import-table-wrap .col-type{width:14%}
body[data-page="import.html"] .import-table-wrap .col-action{width:11%}
body[data-page="import.html"] .import-table-wrap td:last-child{text-align:right}

/* Import page CTA reuses the engineer banner from the main page. */
.import-request-section .request-banner{
  height:auto;
  min-height:430px;
  margin-top:0;
  padding:64px 80px;
  align-items:center;
}
.import-request-section .request-banner__content{width:min(640px,58%);gap:24px}
.import-request-section .request-banner__content>div{gap:16px}
.import-request-section .request-banner h2{font-size:34px!important;line-height:1.16}
.import-request-section .request-banner h2,
.import-request-section .request-banner p{margin:0}
.import-request-actions{position:relative;z-index:2;display:flex;gap:10px;flex-wrap:wrap}
.import-request-secondary{border:1px solid rgba(255,255,255,.7);color:#fff}
.import-request-secondary:hover{border-color:#fff;background:#fff;color:var(--color-accent)}

/* The prototype HTML contains a few old inline frames. They are neutralized
   globally so internal content is grouped by spacing and surface, not boxes. */
body[data-page]:not([data-page="index.html"]) [style*="border:1px solid var(--line)"],
body[data-page]:not([data-page="index.html"]) [style*="border:2px solid var(--ink)"],
body[data-page]:not([data-page="index.html"]) [style*="border-top:2px solid var(--ink)"]{
  border:0!important;
}
body[data-page]:not([data-page="index.html"]) .grid>div[style*="border:"]{
  padding:20px!important;
  border:0!important;
  border-radius:var(--radius);
  background:var(--color-background);
}

/* Footer on content pages */
body:not([data-page="index.html"]) .site-footer{height:auto;margin-top:20px;padding:80px 0 35px;border:0;background:#fff;color:var(--color-text-primary)}
body:not([data-page="index.html"])>.wrap>section:last-child,
body[data-page]:not([data-page="index.html"])>#root.wrap>section:last-child{padding-bottom:0!important}
body[data-page="solutions.html"]:not([data-page="index.html"])>.wrap>section.solutions-applications-section:last-child{padding-bottom:50px!important}
body[data-page="solutions.html"] .site-footer{margin-top:0;padding-top:60px}
body:not([data-page="index.html"]) .header-phone>svg,
body:not([data-page="index.html"]) .footer-column a[href^="tel:"]>svg,
body:not([data-page="index.html"]) .footer-column a[href^="mailto:"]>svg{display:none}
body:not([data-page="index.html"]) .footer__about>div:first-child{display:flex;flex-direction:column;gap:25px}
body:not([data-page="index.html"]) .footer__about>div:first-child p{width:307px;margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}

@media (max-width:1180px){
  body:not([data-page="index.html"]) .site-header{position:sticky}
  .catalog-directions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog,.cfg{grid-template-columns:1fr}
  .filters,.summary{position:static}
  .fbody{max-height:none}
  .g5{grid-template-columns:repeat(3,minmax(0,1fr))}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .phero,.solution-hero{grid-template-columns:1fr}
  .system-group__parts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .about-overview{grid-template-columns:1fr!important;gap:28px!important}
  .about-overview__media .ph{height:360px;min-height:360px!important}
  .tech-intro{grid-template-columns:1fr;gap:20px}
  .tech-solutions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-hero-section .phero{grid-template-columns:1fr;gap:32px}
  .cfg-intro{grid-template-columns:1fr}
}

/* ---------- Замена импорта: четыре UX-варианта ---------- */
.import-variant-page{padding-bottom:100px}
.import-variant-page>.crumbs{margin-bottom:30px}
.import-variant-page h1{max-width:none;margin-bottom:18px!important;font-size:clamp(42px,4vw,58px)!important;line-height:1.08!important}
.import-variant-page .lead{max-width:none;margin:0;color:var(--color-text-secondary);font:var(--font-body-lg)}
.import-kicker{display:block;margin-bottom:9px;color:var(--color-text-secondary);font:600 12px/15px var(--font-family);letter-spacing:.07em;text-transform:uppercase}
.import-v-search{display:flex;gap:10px;width:100%}
.import-v-search__field{height:52px;display:flex;align-items:center;min-width:0;flex:1;overflow:hidden;padding:0;border:1px solid var(--color-border-soft);border-radius:var(--radius);background:#fff}
.import-v-search__field:focus-within{border-color:var(--color-text-primary)}
.import-v-search__field svg{width:19px;height:19px;flex:none}
.import-v-search__field input{width:100%;height:100%;min-width:0;padding:0 18px;border:0;border-radius:inherit;background:#fff;font:400 15px/20px var(--font-family);box-shadow:none;outline:0}
.import-v-search .button{min-height:52px;flex:none}
.import-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border-radius:var(--radius);background:rgba(255,255,255,.18)}
.import-trust span{min-height:72px;display:flex;align-items:center;gap:11px;padding:18px;background:rgba(255,255,255,.08)}
.import-trust svg{width:22px;height:22px;flex:none}.import-trust b{font:500 14px/18px var(--font-family)}
.import-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:30px}
.import-section-head h2{max-width:900px;margin:0!important}.import-section-head p{max-width:520px;margin:0;color:var(--color-text-secondary);text-align:right}
.import-result{display:grid;grid-template-columns:minmax(240px,.75fr) 52px minmax(0,2fr);align-items:stretch;border-radius:var(--radius);background:#fff}
.import-result__source{display:flex;justify-content:center;flex-direction:column;padding:30px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-result__source>strong{font:600 27px/1.16 var(--font-family)}
.import-result__source>p{margin:9px 0 22px;color:var(--color-text-secondary);font:var(--font-body-sm)}
.import-status{display:inline-flex;align-items:center;align-self:flex-start;gap:7px;padding:8px 10px;border-radius:99px;background:#fff;font:500 12px/15px var(--font-family)}
.import-status svg{width:15px;height:15px}
.import-result__connector{display:grid;place-items:center}.import-result__connector svg{width:24px;height:24px}
.import-result__product{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(360px,1.1fr);min-width:0;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:var(--radius)}
.import-result__media{min-height:360px;display:grid;place-items:center;padding:30px;background:#fff}
.import-result__media img{width:100%;height:100%;max-height:310px;object-fit:contain}
.import-result__copy{display:flex;justify-content:center;flex-direction:column;padding:30px;background:var(--color-surface-muted)}
.import-result__copy h2{margin:0 0 6px!important;font-size:32px!important}.import-result__copy>p{margin:0;color:var(--color-text-secondary)}
.import-result__facts{display:grid;gap:8px;margin:24px 0;padding:0;list-style:none}
.import-result__facts li{display:flex;align-items:center;gap:11px;padding:11px;border-radius:6px;background:#fff}
.import-result__facts svg{width:20px;height:20px;flex:none}.import-result__facts span,.import-result__facts b{display:block}.import-result__facts b{margin-bottom:2px;font:500 14px/18px var(--font-family)}.import-result__facts span{color:var(--color-text-secondary);font:var(--font-caption)}
.import-result__actions{display:flex;gap:9px;flex-wrap:wrap}
.import-result__badge{display:inline-flex;align-items:center;align-self:flex-start;margin-bottom:18px;padding:8px 10px;border-radius:6px;background:var(--color-dark);color:#fff;font:600 12px/15px var(--font-family)}
.import-result--stacked{display:block}.import-result--stacked .import-result__source{margin-bottom:12px}.import-result--stacked .import-result__connector{display:none}.import-result--stacked .import-result__product{grid-template-columns:1fr}.import-result--stacked .import-result__media{min-height:270px}.import-result--stacked .import-result__copy{padding:25px}
.import-result--compact{grid-template-columns:minmax(210px,.6fr) 42px minmax(0,1.8fr)}
.import-result--compact .import-result__product{grid-template-columns:230px 1fr}.import-result--compact .import-result__media{min-height:300px}.import-result--compact .import-result__copy{padding:24px}.import-result--compact .import-result__facts{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}.import-result--compact .import-result__facts li{align-items:flex-start;flex-direction:column}
.import-no-match{display:flex;align-items:center;justify-content:space-between;gap:50px;margin-top:80px;padding:45px 50px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.import-no-match h2{margin:0 0 12px!important;color:#fff}.import-no-match p{max-width:780px;margin:0;color:rgba(255,255,255,.7)}.import-no-match .import-kicker{color:rgba(255,255,255,.6)}.import-no-match .button{flex:none}
.import-search-empty{display:flex;align-items:center;gap:20px;padding:30px;border-radius:var(--radius);background:var(--color-surface-muted)}.import-search-empty>svg{width:38px;height:38px;flex:none}.import-search-empty h2{margin:0 0 5px!important;font-size:24px!important}.import-search-empty p{margin:0;color:var(--color-text-secondary)}.import-search-empty .button{margin-left:auto;flex:none}

/* Вариант 1 — единый светлый первый экран и рабочая область соответствий. */
.import-v1-hero{display:grid;gap:30px;margin-bottom:0;padding:24px 0 28px;border-radius:0;background:transparent;color:var(--color-text-primary)}
.import-v1-hero h1{max-width:none;color:var(--color-text-primary)}.import-v1-hero .lead{max-width:none;color:var(--color-text-secondary)}.import-v1-hero .import-v-search{max-width:none;margin-top:30px}.import-v1-hero .import-v-search .button{border-color:var(--color-dark);background:var(--color-dark);color:#fff}
.import-process{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:12px;margin-top:4px}
.import-process>svg{width:20px;height:20px;justify-self:center;color:var(--color-text-muted)}
.import-process__step{min-height:88px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:15px;padding:22px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-process__step>b{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--color-dark);color:#fff;font:600 14px/1 var(--font-family)}
.import-process__step span,.import-process__step strong,.import-process__step small{display:block}.import-process__step strong{margin:2px 0 7px;font:600 16px/1.25 var(--font-family)}.import-process__step small{color:var(--color-text-secondary);font:400 13px/1.4 var(--font-family)}
.import-v-section{margin-top:80px}.import-v-section--muted{padding:45px 50px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-correspondence-section{margin-top:24px}.import-correspondence-section .import-section-head{display:block}.import-correspondence-section .import-section-head h2{margin:0 0 8px!important}.import-correspondence-section .import-section-head p{max-width:none;text-align:left;white-space:nowrap}
.import-correspondence-layout{display:grid;grid-template-columns:minmax(320px,.66fr) 0 minmax(0,1.64fr);align-items:start;gap:5px}
.import-correspondence-bridge{position:relative;z-index:3;width:44px;height:44px;display:grid;place-items:center;align-self:center;justify-self:center;border-radius:50%;background:#fff;color:var(--color-dark)}.import-correspondence-bridge svg{width:19px;height:19px}
.import-known-panel{min-width:0;padding:22px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-known-panel__heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.import-known-panel__heading strong{font:600 18px/1.25 var(--font-family)}.import-known-panel__heading span{color:var(--color-text-secondary);font:400 13px/1.3 var(--font-family);white-space:nowrap}
.import-known-list{display:grid;gap:7px}
.import-known-choice{width:100%;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border:0;border-radius:var(--radius);background:#fff;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:transform var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}
.import-known-choice:hover{transform:translateY(-2px)}.import-known-choice.is-active{background:var(--color-dark);color:#fff}.import-known-choice>span,.import-known-choice small,.import-known-choice strong,.import-known-choice em{display:block}.import-known-choice small{margin-bottom:4px;color:var(--color-text-secondary);font:400 12px/1.3 var(--font-family)}.import-known-choice strong{font:600 17px/1.25 var(--font-family)}.import-known-choice em{margin-top:5px;color:var(--color-text-secondary);font:normal 12px/1.35 var(--font-family)}.import-known-choice.is-active small,.import-known-choice.is-active em{color:rgba(255,255,255,.68)}.import-known-choice>svg{width:18px;height:18px;flex:none}
.import-known-choice .import-known-choice__badge{flex:none;padding:7px 9px;border-radius:6px;background:#fff;color:var(--color-dark);font:600 12px/15px var(--font-family);white-space:nowrap}.import-known-choice.is-active>svg{display:none}
.import-comparison-panel{min-width:0;padding:22px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-comparison-panel__heading{margin-bottom:18px}.import-comparison-panel__heading h2{margin:0!important;font-size:18px!important;line-height:1.25!important}.import-comparison-panel__heading p{margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.import-result--workbench{display:block;background:transparent}
.import-result--workbench .import-result__product{grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);border:0;background:#fff}.import-result--workbench .import-result__media{min-height:430px;padding:30px}.import-result--workbench .import-result__media img{max-height:370px}.import-result--workbench .import-result__copy{padding:30px;background:#fff}.import-result--workbench .import-result__copy h2{font-size:30px!important}.import-result--workbench .import-result__facts{grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0}.import-result--workbench .import-result__facts li{min-height:70px;padding:13px;background:var(--color-surface-muted)}.import-result--workbench .import-result__facts b{font-size:13px}.import-result--workbench .import-result__facts span{font-size:12px;line-height:1.35}
.import-no-match__actions{display:flex;align-items:center;gap:10px;flex:none}.import-no-match .button--on-dark{border-color:rgba(255,255,255,.55);color:#fff}.import-no-match .button--on-dark:hover{border-color:#fff;background:#fff;color:var(--color-dark)}
.import-match-list{display:grid;gap:8px}
.import-match-row{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:center;gap:16px;width:100%;padding:18px;border:0;border-radius:var(--radius);background:#fff;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:transform var(--transition-fast)}
.import-match-row:hover{transform:translateY(-2px)}.import-match-row.is-active{background:var(--color-dark);color:#fff}
.import-match-row>span small,.import-match-row>span strong,.import-match-row>span em{display:block}.import-match-row small{margin-bottom:4px;color:var(--color-text-secondary);font:var(--font-caption)}.import-match-row strong{font:600 18px/22px var(--font-family)}.import-match-row em{margin-top:3px;color:var(--color-text-secondary);font:normal var(--font-body-sm)}.import-match-row.is-active small,.import-match-row.is-active em{color:rgba(255,255,255,.65)}.import-match-row>svg{justify-self:center;width:19px;height:19px}

/* Вариант 2 — рабочая область: список слева, ответ справа */
.import-simple-head{margin-bottom:40px}.import-simple-head h1{max-width:1200px}.import-workbench{display:grid;grid-template-columns:minmax(350px,.72fr) minmax(0,1.5fr);gap:15px;align-items:start}
.import-workbench__picker{position:sticky;top:calc(var(--header-height) + 15px);padding:30px;border-radius:var(--radius);background:var(--color-surface-muted)}.import-workbench__picker h2{margin:0 0 20px!important;font-size:28px!important}.import-workbench__picker .import-v-search{flex-direction:column}.import-workbench__picker .import-v-search .button{width:100%}
.import-picker-list{display:grid;gap:5px;margin-top:22px}.import-picker-list>button{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:14px;border:0;border-radius:6px;background:#fff;text-align:left;cursor:pointer}.import-picker-list>button.is-active{background:var(--color-dark);color:#fff}.import-picker-list span,.import-picker-list b,.import-picker-list small{display:block}.import-picker-list small{margin-top:4px;color:var(--color-text-secondary);font:var(--font-caption)}.import-picker-list .is-active small{color:rgba(255,255,255,.65)}.import-picker-list svg{width:17px;height:17px;flex:none}.import-workbench__picker>p{display:flex;align-items:flex-start;gap:7px;margin:20px 0 0;color:var(--color-text-secondary);font:var(--font-caption)}.import-workbench__picker>p svg{width:15px;height:15px;flex:none}
.import-workbench__answer{min-width:0;padding:15px;border-radius:var(--radius);background:var(--color-surface-muted)}

/* Вариант 3 — пошаговое объяснение */
.import-simple-head--center{text-align:center}.import-simple-head--center .lead{max-width:none}.import-flow{padding:45px 50px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-flow__steps{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:35px}.import-flow__steps span{display:flex;align-items:center;gap:8px;color:var(--color-text-secondary);font:500 14px/18px var(--font-family)}.import-flow__steps span b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--color-text-primary)}.import-flow__steps span.is-active{color:var(--color-text-primary)}.import-flow__steps span.is-active b{background:var(--color-dark);color:#fff}.import-flow__steps>svg{width:17px;height:17px;color:var(--color-text-muted)}
.import-flow__panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.import-flow__question{padding:30px;border-radius:var(--radius);background:#fff}.import-flow__question h2{margin:0 0 22px!important;font-size:26px!important}.import-flow__question .import-v-search{flex-direction:column}.import-flow__question .import-v-search .button{width:100%}
.import-flow__quick{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.import-flow__quick button,.import-filter-chips button{padding:9px 12px;border:0;border-radius:99px;background:var(--color-surface-muted);font:500 12px/15px var(--font-family);cursor:pointer}.import-flow__quick button.is-active,.import-filter-chips button.is-active{background:var(--color-dark);color:#fff}
.import-task-list{display:grid;gap:8px}.import-task-list button{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border:0;border-radius:6px;background:var(--color-surface-muted);text-align:left;cursor:pointer}.import-task-list button.is-active{background:var(--color-dark);color:#fff}.import-task-list svg{width:23px;height:23px;flex:none}.import-task-list span,.import-task-list b,.import-task-list small{display:block}.import-task-list b{font:500 14px/18px var(--font-family)}.import-task-list small{margin-top:3px;color:var(--color-text-secondary);font:var(--font-caption)}.import-task-list button.is-active small{color:rgba(255,255,255,.65)}
.import-flow__result{margin-top:15px;padding:30px;border-radius:var(--radius);background:#fff}.import-flow__result-head{max-width:1000px;margin-bottom:25px}.import-flow__result-head h2{margin:0 0 10px!important;font-size:30px!important}.import-flow__result-head p{margin:0;color:var(--color-text-secondary)}

/* Вариант 4 — каталог известных соответствий */
.import-v4-head{display:grid;grid-template-columns:minmax(0,.85fr) minmax(520px,1.15fr);align-items:end;gap:50px;margin-bottom:40px}.import-directory{padding:35px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-directory__bar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}.import-directory__bar>span{color:var(--color-text-secondary);font:var(--font-body-sm);white-space:nowrap}.import-filter-chips{display:flex;gap:7px;flex-wrap:wrap}.import-filter-chips button{background:#fff}
.import-pair-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.import-pair-card{padding:24px;border-radius:var(--radius);background:#fff}.import-pair-card[hidden]{display:none}.import-pair-card header{display:flex;justify-content:space-between;gap:20px;margin-bottom:22px;color:var(--color-text-secondary);font:var(--font-caption)}.import-pair-card__pair{display:grid;grid-template-columns:1fr 30px 1fr;align-items:center;gap:10px}.import-pair-card__pair div{padding:14px;border-radius:6px;background:var(--color-surface-muted)}.import-pair-card__pair small,.import-pair-card__pair strong{display:block}.import-pair-card__pair small{margin-bottom:5px;color:var(--color-text-secondary);font:var(--font-caption)}.import-pair-card__pair strong{font:600 18px/22px var(--font-family)}.import-pair-card__pair>svg{width:18px;height:18px}.import-pair-card>p{min-height:36px;margin:18px 0;color:var(--color-text-secondary);font:var(--font-body-sm)}.import-pair-card>button{display:inline-flex;align-items:center;gap:7px;padding:0;border:0;background:transparent;font:500 14px/18px var(--font-family);cursor:pointer}.import-pair-card>button svg{width:16px;height:16px}.import-pair-card>button:hover{text-decoration:underline}
.import-v4-selected{margin-top:80px}

@media(max-width:1180px){
  .import-result,.import-result--compact{grid-template-columns:1fr}.import-result__connector{height:42px;transform:rotate(90deg)}.import-result__product,.import-result--compact .import-result__product{grid-template-columns:minmax(230px,.7fr) 1fr}.import-result--compact .import-result__facts{grid-template-columns:1fr}
  .import-workbench{grid-template-columns:330px minmax(0,1fr)}.import-v4-head{grid-template-columns:1fr}.import-v4-head .import-v-search{max-width:900px}
}
@media(max-width:850px){
  .import-variant-page{padding-bottom:52px}.import-variant-page h1{font-size:38px!important}.import-v1-hero,.import-v-section--muted,.import-flow{padding:28px 24px}.import-v-search{flex-direction:column}.import-v-search .button{width:100%}.import-trust{grid-template-columns:1fr}.import-section-head{align-items:flex-start;flex-direction:column;gap:8px}.import-section-head p{text-align:left}
  .import-result__product,.import-result--compact .import-result__product{grid-template-columns:1fr}.import-result__media{min-height:260px}.import-result__copy{padding:24px}.import-result__actions{flex-direction:column}.import-result__actions .button{width:100%}.import-match-row{grid-template-columns:1fr}.import-match-row>svg{justify-self:start;transform:rotate(90deg)}
  .import-workbench{grid-template-columns:1fr}.import-workbench__picker{position:static}.import-flow__panel{grid-template-columns:1fr}.import-flow__steps{gap:6px}.import-flow__steps span{font-size:0}.import-flow__steps span b{font-size:13px}.import-pair-grid{grid-template-columns:1fr}.import-directory{padding:24px}.import-directory__bar{align-items:flex-start;flex-direction:column}.import-no-match{align-items:flex-start;flex-direction:column;margin-top:52px;padding:30px 24px}.import-no-match__actions{width:100%;flex-direction:column}.import-no-match .button{width:100%}.import-search-empty{align-items:flex-start;flex-direction:column}.import-search-empty .button{width:100%;margin-left:0}
  .import-v1-hero{gap:24px;margin-bottom:0;padding:20px 0 24px}.import-process{grid-template-columns:1fr;gap:8px}.import-process>svg{transform:rotate(90deg)}.import-process__step{min-height:0}.import-correspondence-section{margin-top:30px}.import-correspondence-section .import-section-head p{white-space:normal}.import-correspondence-layout{grid-template-columns:1fr;gap:0}.import-correspondence-bridge{margin:-7px 0;transform:rotate(90deg)}.import-known-panel,.import-comparison-panel{padding:18px}.import-result--workbench .import-result__product{grid-template-columns:1fr}.import-result--workbench .import-result__facts{grid-template-columns:1fr}.import-result--workbench .import-result__media{min-height:250px}
}

/* Unified full-width muted section bands.
   The section owns exactly 80px of vertical padding; child panels must not
   add another grey container or duplicate that spacing. */
html body[data-page="about.html"]>.wrap>section.about-products-section,
html body[data-page="about.html"]>.wrap>section.tech-section,
html body[data-page="about.html"]>.wrap>section.about-industries-section,
html body[data-page="services.html"]>.wrap>section.services-development,
html body[data-page="services.html"]>.wrap>section.services-band,
html body[data-page="solutions.html"]>.wrap>section.solutions-applications-section{
  position:relative;
  isolation:isolate;
  padding-top:80px!important;
  padding-bottom:80px!important;
  border-radius:0!important;
  background:transparent!important;
}
html body[data-page="about.html"]>.wrap>section.about-products-section::before,
html body[data-page="about.html"]>.wrap>section.tech-section::before,
html body[data-page="about.html"]>.wrap>section.about-industries-section::before,
html body[data-page="services.html"]>.wrap>section.services-development::before,
html body[data-page="services.html"]>.wrap>section.services-band::before,
html body[data-page="solutions.html"]>.wrap>section.solutions-applications-section::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 50%;
  width:100vw;
  transform:translateX(-50%);
  background:var(--color-surface-muted);
}

/* Company page spacing and composition. */
html body[data-page="about.html"]>.wrap>.about-hero+.about-products-section{
  margin-top:100px!important;
}
html body[data-page="about.html"]>.wrap>section.about-products-section.about-products-section{
  padding-right:0!important;
  padding-left:0!important;
}
body[data-page="about.html"] .about-training-card .about-icon{
  width:88px;
  height:88px;
}
body[data-page="about.html"] .about-training-card .about-icon svg{
  width:48px;
  height:48px;
}
body[data-page="about.html"] .tech-platform-panel{
  padding:0;
  background:transparent;
}
body[data-page="about.html"] .tech-import-cta{
  margin-top:14px;
}

@media(max-width:600px){
  html body[data-page="about.html"]>.wrap>section.about-products-section,
  html body[data-page="about.html"]>.wrap>section.tech-section,
  html body[data-page="about.html"]>.wrap>section.about-industries-section,
  html body[data-page="services.html"]>.wrap>section.services-development,
  html body[data-page="services.html"]>.wrap>section.services-band,
  html body[data-page="solutions.html"]>.wrap>section.solutions-applications-section{
    padding-top:52px!important;
    padding-bottom:52px!important;
  }
  html body[data-page="about.html"]>.wrap>.about-hero+.about-products-section{
    margin-top:52px!important;
  }
  body[data-page="about.html"] .about-training-card .about-icon{
    width:68px;
    height:68px;
  }
  body[data-page="about.html"] .about-training-card .about-icon svg{
    width:36px;
    height:36px;
  }
}

/* Two-column range: keep long catalog labels inside their own card. */
@media(min-width:421px) and (max-width:720px){
  body[data-page="catalog.html"] .catalog-product-status{top:6px;left:6px;max-width:calc(100% - 12px);min-height:26px;padding:5px 7px;font-size:9px}
  body[data-page="catalog.html"] .product-card__tags{
    left:6px;
    right:6px;
    bottom:-16px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    justify-content:stretch;
    gap:4px;
  }
  body[data-page="catalog.html"] .product-card__tags .tag{
    min-width:0;
    min-height:28px;
    padding:5px 7px;
    font-size:10px;
    line-height:1.15;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  body[data-page="catalog.html"] .product-card__tags .tag:last-child{
    white-space:nowrap;
  }
}

@media (max-width:1600px){
  body:not([data-page="index.html"]) .footer__layout{height:auto;grid-template-columns:repeat(3,minmax(0,1fr))}
  body:not([data-page="index.html"]) .footer__about{grid-row:span 2;gap:30px}
}

@media (max-width:1180px){
  .solutions-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .solutions-applications{grid-template-columns:repeat(3,minmax(0,1fr))}
  .solutions-hero>.lead{white-space:normal}
}

@media (max-width:820px){
  .contact-location-card h3{min-height:0}
  .contact-legal__layout{grid-template-columns:1fr;gap:40px}
  .system-group__parts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .solution-cta{align-items:flex-start;flex-direction:column;padding:34px 28px}
  .solution-cta h2{font-size:30px!important}
  body.catalog-filters-open{overflow:hidden}
  .catalog-workspace-heading>div:first-child h2{display:block}
  .catalog-workspace-heading>div:first-child .catalog-result-count{margin:0}
  .catalog-load-more:not([hidden]){width:100%;min-height:49px;display:inline-flex;justify-content:center;margin-top:20px}
  .catalog-load-more[hidden]{display:none}
  .catalog-filter-trigger{
    width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:16px;
    margin:0 0 18px;padding:14px 16px;border:1px solid var(--color-border-soft);border-radius:var(--radius);
    background:#fff;color:var(--color-text-primary);font:500 15px/20px var(--font-family);cursor:pointer
  }
  .catalog-filter-trigger>span{display:flex;align-items:center;gap:10px}
  .catalog-filter-trigger svg{width:19px;height:19px;stroke-width:1.8}
  .catalog-filter-trigger>svg:last-child{width:17px;height:17px;transition:transform var(--transition-fast)}
  body.catalog-filters-open .catalog-filter-trigger>svg:last-child{transform:rotate(180deg)}
  .catalog-filter-backdrop{
    position:fixed;z-index:1190;inset:0;width:100%;height:100%;display:block;padding:0;border:0;
    background:rgba(14,14,14,.42);opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .24s ease,visibility .24s ease
  }
  .filters{
    position:fixed!important;z-index:1200;inset:auto 0 0;max-height:min(88dvh,760px);display:flex;flex-direction:column;
    border-radius:18px 18px 0 0;background:var(--color-background);visibility:hidden;
    transform:translateY(105%);transition:transform .28s ease,visibility .28s ease
  }
  body.catalog-filters-open .catalog-filter-backdrop{opacity:1;visibility:visible;pointer-events:auto}
  body.catalog-filters-open .filters{visibility:visible;transform:translateY(0)}
  .catalog-filter-handle{width:42px;height:4px;display:block;flex:none;margin:9px auto 2px;border-radius:99px;background:#d5d5d2}
  .filters .fhead{flex:none;padding:14px 18px 16px;background:var(--color-background)}
  .catalog-filter-close{
    width:38px;height:38px;display:grid;place-items:center;flex:none;padding:0;border:0;border-radius:50%;
    background:var(--color-surface-muted);color:var(--color-text-primary);cursor:pointer
  }
  .catalog-filter-close svg{width:19px;height:19px}
  .filters .fbody{min-height:0;max-height:none;flex:1;overflow-y:auto;overscroll-behavior:contain}
  .catalog-filter-footer{display:block;flex:none;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--color-border-soft)}
  .catalog-filter-footer .btn{width:100%}
  body:not([data-page="index.html"])>.wrap::before{height:500px}
  body:not([data-page="index.html"])>.wrap>section{padding:48px 0 0}
  body[data-page]:not([data-page="index.html"])>#root.wrap>section{padding:48px 0 0!important}
  body:not([data-page="index.html"])>.wrap>section:first-of-type{padding-top:24px!important;padding-bottom:24px!important}
  body[data-page]:not([data-page="index.html"])>#root.wrap>section:first-of-type{padding-top:24px!important;padding-bottom:24px!important}
  body:not([data-page="index.html"])>.wrap>section:last-child,
  body[data-page]:not([data-page="index.html"])>#root.wrap>section:last-child{padding-bottom:64px!important}
  .g5,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .g3,.g2{grid-template-columns:1fr}
  .catalog-toolbar-controls{width:100%;flex-wrap:wrap}
  .catalog-toolbar-controls>#q,.custom-select{min-width:0;width:100%}
  .system-groups{grid-template-columns:1fr}
  .solution-gallery{grid-template-columns:1fr}
  .tw{grid-template-columns:1fr}
  .cfg-intro{gap:24px}
  .request-layout{grid-template-columns:1fr}
  .cfg-intro .card{padding:24px}
  .news{grid-template-columns:1fr}
  .news .item{gap:16px!important}
  .news-item{grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:18px}
  .news-item__media{width:100%;max-width:220px;height:auto;min-height:0;aspect-ratio:4/3}
  .news-subscription{grid-template-columns:auto minmax(0,1fr)}
  .news-subscription__form{grid-column:1/-1}
  body:not([data-page="index.html"]) .footer__layout{grid-template-columns:repeat(2,minmax(0,1fr))}
  body:not([data-page="index.html"]) .footer__about{grid-row:auto;min-height:280px}
  body[data-page="compare.html"]>.wrap>section.compare-page{padding-top:30px}
  .compare-topbar{align-items:flex-start;flex-direction:column}
  .compare-controls{justify-content:flex-start;width:100%}
}

@media (max-width:600px){
  body[data-page]:not([data-page="index.html"])>#root.wrap>.crumbs{margin-bottom:20px!important}
  .compare-intro__heading,.compare-intro__row{align-items:flex-start;flex-direction:column;gap:14px}
  .compare-intro__heading #compareAddAction,.compare-intro__heading .compare-add{width:100%}
  .compare-intro__heading .compare-add{justify-content:center}
  .contact-location-map{height:260px;margin:20px -20px -20px}
  .system-group__header{padding:22px 20px 18px}
  .system-group__parts{grid-template-columns:1fr;padding:12px}
  table.spec.solution-spec-table{font-size:14px}
  table.spec.solution-spec-table th,table.spec.solution-spec-table td{padding:13px 12px}
  table.spec.solution-spec-table th{width:38%}
  .solution-cta{padding:30px 24px}
  .solution-cta .button{width:100%;justify-content:center}
  .contact-route-panel{gap:0;padding:24px}
  .contact-route-panel p{white-space:normal}
  .contact-route-panel .btn{align-self:stretch;justify-content:center;margin-top:20px}
  body:not([data-page="index.html"])>.wrap>section{padding:40px 0 0}
  body[data-page]:not([data-page="index.html"])>#root.wrap>section{padding:40px 0 0!important}
  body:not([data-page="index.html"])>.wrap>section:first-of-type{padding-top:20px!important;padding-bottom:22px!important}
  body[data-page]:not([data-page="index.html"])>#root.wrap>section:first-of-type{padding-top:20px!important;padding-bottom:22px!important}
  body:not([data-page="index.html"])>.wrap>section:last-child,
  body[data-page]:not([data-page="index.html"])>#root.wrap>section:last-child{padding-bottom:52px!important}
  body:not([data-page="index.html"])>.wrap h1{font-size:30px;line-height:1.15}
  body:not([data-page="index.html"])>.wrap h2{font-size:26px;line-height:1.2}
  .g5,.g4,.g3,.g2{grid-template-columns:1fr}
  .solutions-section-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:22px}
  .solutions-page-grid,.solutions-applications{grid-template-columns:1fr}
  .solutions-page-grid .solution-card--listing{min-height:0}
  .solutions-page-grid .solution-card--listing .solution-media{height:auto;min-height:0;aspect-ratio:4/3}
  .application-card{min-height:132px;padding:22px}
  .application-card svg{margin-bottom:28px}
  .configurator-options-section{padding-top:64px!important}
  .cfg-intro{gap:40px}
  .cfg-intro .card{padding:34px 22px 22px}
  .cfg-intro .status{right:22px;left:auto}
  .cfg-choice-media{height:190px;padding:22px}
  .cfg-intro p{min-height:0}
  .catalog-directions{grid-template-columns:1fr}
  .catalog-direction-card__media{height:190px}
  .catalog-workspace-heading{align-items:stretch}
  .catalog-toolbar-controls{width:100%}
  .product-description-layout{grid-template-columns:1fr;gap:22px}
  .product-import-layout{align-items:stretch;flex-direction:column}
  .product-import-layout .btn{width:100%}
  .about-facts{margin-bottom:30px!important}
  .about-facts>div{min-height:94px;padding:18px 20px!important}
  .about-overview__media .ph{height:300px;min-height:300px!important}
  .tech-intro{margin-bottom:36px}
  .tech-solutions,.tech-operation{grid-template-columns:1fr}
  .tech-solution-card{min-height:160px;padding:22px}
  .tech-card-index{margin-bottom:24px}
  .tech-operation article{min-height:0;padding:24px}
  .tech-compatibility{align-items:stretch;flex-direction:column;padding:26px}
  .tech-compatibility .btn{width:100%}
  .form-panel{padding:22px}
  .form-grid--2{grid-template-columns:1fr}
  .details-list .kv{grid-template-columns:1fr;gap:4px;padding:12px 0}
  .product-summary{padding:18px}
  .product-summary .kv{grid-template-columns:1fr;gap:3px;padding:11px 0}
  .product-actions{flex-direction:column;align-items:stretch}
  .product-actions .btn{width:100%}
  .product-photo--hero{height:320px;min-height:320px!important}
  .form-actions .btn{width:100%}
  .shead{align-items:flex-start}
  .shead .btn{width:100%}
  .card .cfoot{flex-direction:column;align-items:stretch}
  .card .cfoot .btn{width:100%}
  .solution-photo{min-height:260px}
  .news{grid-template-columns:1fr;grid-auto-rows:auto;gap:16px}
  .news-item{grid-template-columns:1fr;padding:20px}
  .news-item__media{width:100%;max-width:none;height:auto;min-height:0;aspect-ratio:4/3}
  .news-item__body{padding:0}
  .news-item__meta{align-items:flex-start;flex-direction:column;gap:9px;margin-bottom:18px}
  .news-item h3{font-size:21px!important}
  .news-item__actions{width:100%;align-items:stretch;flex-direction:column;margin-top:22px;padding-top:0}
  .news-item__actions .btn,.news-item__read{width:100%}
  .news-subscription{grid-template-columns:1fr;gap:20px;padding:24px 22px}
  .news-subscription__icon{width:52px;height:52px}
  .news-subscription h2{font-size:26px!important}
  .news-subscription__form{grid-column:auto;flex-direction:column}
  .news-subscription__form .btn{width:100%}
  .vac>summary,.vac .vbody,.item{padding:20px}
  .compare-badge{right:16px;bottom:16px;width:auto!important;max-width:calc(100vw - 32px)}
  body:not([data-page="index.html"]) .footer__layout{grid-template-columns:1fr}
  body:not([data-page="index.html"]) .footer__about{min-height:280px}
  .btn{white-space:normal;text-align:center}
  .import-request-actions{width:100%;flex-direction:column}
  .import-search{flex-direction:column}
  .import-search .button{width:100%}
  .import-request-actions .button{width:100%}
  .import-request-section .request-banner{min-height:560px;padding:30px 24px;align-items:flex-start}
  .import-request-section .request-banner__content{width:100%}
  .import-request-section .request-banner h2{font-size:28px!important}
  .compare-intro .lead{font-size:16px;line-height:1.45}
  .compare-controls{display:grid;grid-template-columns:1fr auto;gap:6px 8px}
  .compare-switch{grid-column:1/-1;padding-left:0}
  .compare-add{justify-content:center}
  .compare-clear{justify-content:center}
  .compare-hint{align-items:flex-start;flex-wrap:wrap}
  .compare-hint a{width:100%;margin-left:28px}
  .compare-viewport{overflow-x:auto;margin-right:calc(var(--page-gutter) * -1);padding-right:var(--page-gutter)}
  .compare-workspace{--compare-label:140px;--compare-product:minmax(220px,1fr)}
  .compare-product-rail{top:0}
  body.has-fixed-smart-header:not(.is-smart-header-hidden) .compare-product-rail{top:var(--header-height)}
  .compare-axis-card{padding:14px}
  .compare-product-card{min-height:138px;grid-template-columns:86px minmax(0,1fr);gap:10px;padding:10px 34px 10px 10px}
  .compare-product-media{height:104px}
  body[data-page="compare.html"] .compare-product-card h2{font-size:18px!important}
  .compare-product-link{font-size:11px}
  .compare-spec-row{min-height:66px}
  .compare-spec-label,.compare-spec-value{padding:14px}
  .compare-spec-label{font-size:12px}
  .compare-spec-value{font-size:13px}
  .compare-empty{padding:48px 20px}
  body[data-page="compare.html"] .compare-empty h2{font-size:28px!important}
  .compare-empty__actions{width:100%;flex-direction:column}
  .compare-empty__actions .btn{justify-content:center;width:100%}
}

/* CHGP configurator: five interaction models share one functional system. */
body[data-page^="chgp-configurator"] .chgp-page-intro{padding-bottom:0!important}
body[data-page^="chgp-configurator"] .chgp-page-intro .lead{max-width:none;margin-bottom:0}
body[data-page^="chgp-configurator"]>.wrap>.chgp-builder-section{padding-top:40px!important;padding-bottom:100px!important}
.chgp-workspace{scroll-margin-top:calc(var(--header-height) + 20px)}
.chgp-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:24px;align-items:start}
.chgp-layout>*{min-width:0}
.chgp-layout--three{grid-template-columns:210px minmax(0,1fr) 330px}
.chgp-layout--overview{grid-template-columns:minmax(0,1fr) 340px}
.chgp-step-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-bottom:12px;padding:5px;scroll-margin-top:calc(var(--header-height) + 16px);border-radius:var(--radius);background:var(--color-surface-muted)}
.chgp-step-tab{position:relative;min-width:0;min-height:78px;display:grid;grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;row-gap:3px;align-items:center;padding:14px 36px 14px 10px;border:0;border-radius:6px;background:transparent;color:var(--color-text-secondary);text-align:left;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}
.chgp-step-tab:hover{background:#fff;color:var(--color-text-primary)}
.chgp-step-tab.is-active{background:var(--color-dark);color:#fff}
.chgp-step-tab.is-complete:not(.is-active){background:#fff;color:var(--color-text-primary)}
.chgp-step-tab__number{width:32px;height:32px;display:grid;place-items:center;flex:none;border-radius:50%;background:#fff;color:var(--color-text-primary);font:600 13px/1 var(--font-family)}
.chgp-step-tab.is-active .chgp-step-tab__number{background:rgba(255,255,255,.16);color:#fff}
.chgp-step-tab__number svg{width:16px;height:16px}
.chgp-step-tab.is-complete:not(.is-active) .chgp-step-tab__number{background:var(--color-surface-muted);color:var(--color-text-primary)}
.chgp-step-tab.is-complete:not(.is-active) .chgp-step-tab__number svg{width:14px;height:14px;stroke-width:2.2}
.chgp-step-tab__icon{position:absolute;top:12px;right:11px;display:grid;place-items:center;color:currentColor;opacity:.72}
.chgp-step-tab__number{grid-column:1;grid-row:1}
.chgp-step-tab__icon svg{width:20px;height:20px}
.chgp-step-tab.is-active .chgp-step-tab__icon{opacity:1}
.chgp-step-tab>span:last-child{min-width:0;display:block;grid-column:2;grid-row:1/3}
.chgp-step-tab strong,.chgp-step-tab small{display:block}
.chgp-step-tab strong{font:500 16px/20px var(--font-family)}
.chgp-step-tab small{margin-top:4px;font:400 12px/15px var(--font-family);white-space:normal;color:inherit;opacity:.72}
.chgp-step-nav--vertical{position:sticky;top:calc(var(--header-height) + 15px);display:flex;flex-direction:column;gap:5px;margin:0}
.chgp-step-nav--vertical .chgp-step-tab{width:100%;padding:14px}
.chgp-step-nav--vertical .chgp-step-tab strong{font-size:14px}
.chgp-step-nav--vertical .chgp-step-tab small{font-size:11px}
body[data-page^="chgp-configurator"] .chgp-stage{min-height:0;padding:30px!important;border-radius:var(--radius);background:var(--color-surface-muted)}
.chgp-section-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}
.chgp-section-intro h2{margin:0 0 7px!important;font:600 25px/1.2 var(--font-family)!important}
.chgp-section-intro p{max-width:680px;margin:0;color:var(--color-text-secondary);font:var(--font-body-sm)}
.chgp-help{max-width:210px;display:flex;align-items:flex-start;gap:7px;padding:10px 12px;border-radius:6px;background:#fff;color:var(--color-text-secondary);font:var(--font-caption)}
.chgp-help svg{width:15px;height:15px;flex:none}
.chgp-option-grid{display:grid;gap:9px}
.chgp-option-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.chgp-option-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.chgp-option-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.chgp-choice{position:relative;min-height:82px;display:flex;align-items:center;gap:13px;padding:16px;border:1px solid var(--color-surface-muted);border-radius:var(--radius);background:#fff;cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast)}
.chgp-choice:hover{transform:translateY(-2px)}
.chgp-choice.is-selected{background:#ededed}
.chgp-choice input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.chgp-choice__icon{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:8px;background:var(--color-surface-muted);color:var(--color-text-primary)}
.chgp-choice__icon svg{width:22px;height:22px;stroke-width:1.8}
.chgp-choice__media{position:relative;width:104px;height:76px;display:grid;place-items:center;flex:none;overflow:hidden;border-radius:8px;background:#fff}
.chgp-choice__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.chgp-choice--image:not(.chgp-choice--chooseChgpFrame){min-height:174px}
.chgp-choice--image:not(.chgp-choice--chooseChgpFrame) .chgp-choice__media{width:82px;height:144px}
.chgp-choice--chooseChgpFrame{min-height:118px}
.chgp-choice--chooseChgpFrame .chgp-choice__media{width:116px;height:86px}
.chgp-choice__copy{min-width:0;flex:1}
.chgp-choice__mark{width:24px;height:24px;display:grid;place-items:center;flex:none;margin-left:auto;border-radius:50%;background:var(--color-surface-muted);color:transparent}
.chgp-choice.is-selected .chgp-choice__mark{background:var(--color-dark);color:#fff}
.chgp-choice__mark svg{width:15px;height:15px}
.chgp-choice strong,.chgp-choice small{display:block}
.chgp-choice strong{font:500 16px/20px var(--font-family)}
.chgp-choice small{margin-top:5px;color:var(--color-text-secondary);font:400 12px/15px var(--font-family)}
.chgp-toggle-card{display:flex;align-items:center;gap:15px;margin-top:20px;padding:17px;border-radius:var(--radius);background:#fff;cursor:pointer}
.chgp-toggle-card input{position:absolute;width:1px;height:1px;opacity:0}
.chgp-toggle-card__control{position:relative;width:38px;height:22px;flex:none;border-radius:99px;background:#c8c8c8}
.chgp-toggle-card__control::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform var(--transition-fast)}
.chgp-toggle-card.is-selected .chgp-toggle-card__control{background:var(--color-dark)}
.chgp-toggle-card.is-selected .chgp-toggle-card__control::after{transform:translateX(16px)}
.chgp-toggle-card strong,.chgp-toggle-card small{display:block}
.chgp-toggle-card strong{font:500 16px/20px var(--font-family)}
.chgp-toggle-card small{margin-top:4px;color:var(--color-text-secondary);font:400 12px/15px var(--font-family)}
.chgp-fixed-choice,.chgp-auto-choice{display:flex;align-items:center;gap:15px;padding:17px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.chgp-fixed-choice>svg,.chgp-auto-choice>svg{width:25px;height:25px;flex:none}
.chgp-fixed-choice__media,.chgp-auto-choice__media{position:relative;width:96px;height:70px;display:grid;place-items:center;flex:none;overflow:hidden;border-radius:7px;background:#fff}
.chgp-fixed-choice__media img,.chgp-auto-choice__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.chgp-fixed-choice__media,.chgp-auto-choice__media{width:82px;height:140px}
.chgp-fixed-choice div,.chgp-auto-choice div{min-width:0;display:flex;flex-direction:column}
.chgp-fixed-choice strong,.chgp-auto-choice strong{font:500 16px/20px var(--font-family)}
.chgp-fixed-choice span,.chgp-auto-choice span{margin-top:4px;color:rgba(255,255,255,.68);font:400 12px/15px var(--font-family)}
.chgp-fixed-choice em{margin-left:auto;color:rgba(255,255,255,.68);font:normal var(--font-caption);white-space:nowrap}
.chgp-auto-choice{margin-top:15px;background:#fff;color:var(--color-text-primary)}
.chgp-auto-choice span{color:var(--color-text-secondary)}
.chgp-field-title{margin:24px 0 11px!important;font:500 16px/20px var(--font-family)!important}
.chgp-text-field{display:block;margin-top:16px}
.chgp-text-field>span{display:block;margin-bottom:7px;font:500 13px/16px var(--font-family)}
.chgp-text-field .field{width:100%;border:1px solid var(--color-border-soft)}
.chgp-capacity{padding:8px 11px;border-radius:99px;background:#fff;font:500 12px/15px var(--font-family);white-space:nowrap}
.chgp-capacity.is-full{background:var(--color-dark);color:#fff}
.chgp-capacity-bar{height:5px;overflow:hidden;margin:-10px 0 18px;border-radius:99px;background:#ddd}
.chgp-capacity-bar span{height:100%;display:block;border-radius:inherit;background:var(--color-dark);transition:width var(--transition-medium)}
.chgp-io-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.chgp-io{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border-radius:var(--radius);background:#fff}
.chgp-io.is-selected{background:#ededed}
.chgp-io__icon{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:8px;background:var(--color-surface-muted)}
.chgp-io__icon svg{width:22px;height:22px;stroke-width:1.8}
.chgp-io__media{position:relative;width:82px;height:64px;display:grid;place-items:center;flex:none;overflow:hidden;border-radius:7px;background:#fff}
.chgp-io__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.chgp-io{min-height:162px}
.chgp-io__media{width:76px;height:132px}
.chgp-io>div{min-width:0;flex:1}
.chgp-io strong,.chgp-io>div span{display:block}
.chgp-io strong{font:500 16px/20px var(--font-family)}
.chgp-io>div span{margin-top:5px;color:var(--color-text-secondary);font:400 12px/15px var(--font-family)}
.chgp-io .qty{flex:none}
.chgp-io .qty button{border:0;background:var(--color-surface-muted)}
.chgp-io .qty button{width:34px;height:34px}
.chgp-io .qty button:disabled{opacity:.3;cursor:not-allowed}
.chgp-pager{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin-top:28px;padding-top:18px;border-top:1px solid var(--color-border-soft)}
.chgp-pager>.btn:first-child{justify-self:start}
.chgp-pager>.btn:last-of-type{justify-self:end}
.chgp-pager__help{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:2px;padding:9px 11px;border-radius:6px;background:#fff;color:var(--color-text-secondary);font:var(--font-caption);text-align:center}
.chgp-pager__help svg{width:15px;height:15px;flex:none}
.chgp-pager__help--empty{visibility:hidden}
.chgp-pager__status{display:grid;justify-items:center;gap:7px;color:var(--color-text-secondary);font:var(--font-caption);text-align:center;white-space:nowrap}
.chgp-pager__status b{font:500 12px/15px var(--font-family)}
.chgp-pager__status>span{width:92px;height:4px;overflow:hidden;border-radius:99px;background:#d7d7d7}
.chgp-pager__status i{height:100%;display:block;border-radius:inherit;background:var(--color-dark)}
.chgp-pager .btn:disabled{opacity:.35;pointer-events:none}
.chgp-layout .summary{top:calc(var(--header-height) + 15px);border-radius:var(--radius);background:var(--color-surface-muted)}
.chgp-layout .summary>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px}
.chgp-layout .summary>header div span,.chgp-layout .summary>header div strong{display:block}
.chgp-layout .summary>header div span{color:rgba(255,255,255,.65);font:var(--font-caption)}
.chgp-layout .summary>header div strong{margin-top:4px;font:500 16px/20px var(--font-family)}
.chgp-summary-count{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:rgba(255,255,255,.14);font:600 13px/1 var(--font-family)}
.chgp-summary-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.chgp-summary-main div{padding:11px;border-radius:6px;background:#fff}
.chgp-summary-main dt{color:var(--color-text-secondary);font:var(--font-caption)}
.chgp-summary-main dd{margin:5px 0 0;font:500 14px/18px var(--font-family)}
.chgp-summary-details{margin-top:12px;border-radius:6px;background:#fff}
.chgp-summary-details summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;list-style:none;font:500 14px/18px var(--font-family);cursor:pointer}
.chgp-summary-details summary::-webkit-details-marker{display:none}
.chgp-summary-details summary svg{width:15px;height:15px;transition:transform var(--transition-fast)}
.chgp-summary-details[open] summary svg{transform:rotate(180deg)}
.chgp-summary-details .sum-list{margin:0;padding:0 13px 13px}
.chgp-summary-details .sum-list li{align-items:flex-start;padding:5px 0;font:var(--font-caption)}
.chgp-summary-details .sum-list b{color:var(--color-text-primary);font-weight:500;white-space:nowrap}
.chgp-summary-submit{width:100%;margin-top:18px}
.chgp-summary-note{display:flex;align-items:flex-start;gap:7px;margin:15px 0 0;color:var(--color-text-secondary);font:var(--font-caption)}
body[data-page^="chgp-configurator"] .chgp-layout .summary .chgp-summary-note{margin:15px 0 0!important}
.chgp-summary-note svg{width:15px;height:15px;flex:none}
.chgp-request-drawer__body{min-height:0;overflow:auto;padding:12px 24px 14px}
.chgp-request-drawer .request-drawer__panel{overflow:hidden}
body[data-page^="chgp-configurator"] .chgp-request-drawer__body>section{padding:16px!important;border-radius:var(--radius);background:var(--color-surface-muted)}
.chgp-request-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.chgp-request-heading h3{margin:0!important;font:600 18px/22px var(--font-family)!important}
.chgp-request-heading span{padding:7px 10px;border-radius:99px;background:#fff;font:500 12px/15px var(--font-family);white-space:nowrap}
.chgp-request-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.chgp-request-summary div{padding:11px 12px;border-radius:6px;background:#fff}
.chgp-request-summary dt{color:var(--color-text-secondary);font:var(--font-caption)}
.chgp-request-summary dd{margin:5px 0 0;font:500 13px/17px var(--font-family)}
.chgp-request-summary__wide{grid-column:1/-1}
.chgp-request-form{gap:12px;padding:16px 0 0}
.chgp-request-form textarea{min-height:72px;height:72px;padding-block:11px}
.chgp-request-success{margin:12px 0 0;padding:11px 13px;border-radius:6px;background:var(--color-surface-muted);font:var(--font-caption)}
.chgp-accordion{display:grid;gap:8px}
.chgp-accordion__item{overflow:hidden;border-radius:var(--radius);background:var(--color-surface-muted)}
.chgp-accordion__head{width:100%;display:flex;align-items:center;gap:12px;padding:16px 18px;border:0;background:transparent;text-align:left;cursor:pointer}
.chgp-accordion__head>span:nth-child(3){display:flex;flex-direction:column}
.chgp-accordion__icon{width:34px;height:34px;display:grid!important;place-items:center;flex:none;border-radius:7px;background:#fff;color:var(--color-text-primary)}
.chgp-accordion__icon svg{width:18px;height:18px}
.chgp-accordion__head strong{font:500 15px/18px var(--font-family)}
.chgp-accordion__head small{margin-top:2px;color:var(--color-text-secondary);font:var(--font-caption)}
.chgp-accordion__head>svg{width:17px;height:17px;margin-left:auto}
.chgp-accordion__item.is-open .chgp-accordion__head>svg:last-child{transform:rotate(180deg)}
.chgp-accordion__item.is-open{background:#ededed}
.chgp-accordion__item.is-open .chgp-accordion__head{background:var(--color-dark);color:#fff}
.chgp-accordion__item.is-open .chgp-accordion__head small{color:rgba(255,255,255,.65)}
.chgp-accordion__body{padding:24px}
.chgp-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.chgp-overview-card{min-width:0;padding:22px;border-radius:var(--radius);background:var(--color-surface-muted)}
.chgp-overview-card--io{grid-column:1/-1}
.chgp-overview-card>header{display:flex;align-items:center;gap:11px;margin-bottom:18px}
.chgp-overview-card>header h2{margin:0!important;font:600 18px/22px var(--font-family)!important}
.chgp-overview-card>header p{margin:2px 0 0;color:var(--color-text-secondary);font:var(--font-caption)}
.chgp-overview-card .chgp-section-intro{display:none}
.chgp-overview-card .chgp-choice{min-height:58px;padding:11px}
.chgp-overview-card .chgp-choice strong{font-size:12px}
.chgp-overview-card .chgp-option-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
.chgp-overview-card .chgp-field-title{margin-top:15px!important}
.chgp-scenarios{display:grid;grid-template-columns:290px minmax(0,1fr);gap:28px;align-items:center;margin-bottom:16px;padding:28px;border-radius:var(--radius);background:var(--color-dark);color:#fff}
.chgp-scenarios>div:first-child>span{color:rgba(255,255,255,.65);font:var(--font-caption);text-transform:uppercase;letter-spacing:.08em}
.chgp-scenarios h2{margin:7px 0!important;font:600 23px/1.2 var(--font-family)!important}
.chgp-scenarios p{margin:0;color:rgba(255,255,255,.68);font:var(--font-body-sm)}
.chgp-scenarios__copy>small{display:flex;align-items:flex-start;gap:7px;margin-top:14px;color:rgba(255,255,255,.72);font:var(--font-caption)}
.chgp-scenarios__copy>small svg{width:15px;height:15px;flex:none}
.chgp-scenario-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.chgp-scenario-list button{min-height:142px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;padding:15px;border:0;border-radius:var(--radius);background:#fff;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:transform var(--transition-fast)}
.chgp-scenario-list button:hover{transform:translateY(-2px)}
.chgp-scenario-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:var(--color-surface-muted)}
.chgp-scenario-icon svg{width:20px;height:20px;stroke-width:1.8}
.chgp-scenario-list button>svg{width:16px;height:16px;margin-top:11px;color:var(--color-text-secondary)}
.chgp-scenario-list strong,.chgp-scenario-list small{display:block}
.chgp-scenario-list strong{font:600 13px/16px var(--font-family)}
.chgp-scenario-list small{margin-top:7px;color:var(--color-text-primary);font:var(--font-caption)}
.chgp-scenario-list em{display:block;margin-top:5px;color:var(--color-text-secondary);font:normal 11px/14px var(--font-family)}

@media (max-width:1300px){
  .chgp-layout{grid-template-columns:minmax(0,1fr) 320px}
  .chgp-layout--three{grid-template-columns:180px minmax(0,1fr) 300px;gap:16px}
  .chgp-step-tab{grid-template-columns:30px minmax(0,1fr);column-gap:6px;padding:12px 34px 12px 7px}.chgp-step-tab__number{width:30px;height:30px}.chgp-step-tab__icon{top:11px;right:9px}.chgp-step-tab__icon svg{width:19px;height:19px}
  .chgp-option-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1000px){
  .chgp-layout,.chgp-layout--three,.chgp-layout--overview{grid-template-columns:1fr}
  .chgp-layout .summary{position:static;order:-1}
  .chgp-layout--three>div:first-child{order:0}
  .chgp-step-nav--vertical{position:static;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:12px}
  .chgp-step-nav--vertical .chgp-step-tab{padding:10px 8px}
  .chgp-scenarios{grid-template-columns:1fr}
}
@media (max-width:700px){
  body[data-page^="chgp-configurator"]>.wrap>.chgp-builder-section{padding-top:40px!important;padding-bottom:52px!important}
  .chgp-step-nav,.chgp-step-nav--vertical{display:flex;overflow-x:auto;padding:4px;scrollbar-width:none}
  .chgp-step-nav::-webkit-scrollbar{display:none}
  .chgp-step-tab,.chgp-step-nav--vertical .chgp-step-tab{min-width:178px}
  .chgp-step-tab__icon{display:none}
  body[data-page^="chgp-configurator"] .chgp-stage{min-height:0;padding:22px!important}
  .chgp-section-intro{flex-direction:column;margin-bottom:20px}.chgp-section-intro h2{font-size:21px!important}
  .chgp-help{max-width:none}
  .chgp-option-grid--2,.chgp-option-grid--3,.chgp-option-grid--4,.chgp-io-grid{grid-template-columns:1fr}
  .chgp-fixed-choice{align-items:center;flex-wrap:wrap}.chgp-fixed-choice em{width:100%;margin:0 0 0 95px}
  .chgp-pager{grid-template-columns:1fr 1fr}.chgp-pager__status{grid-column:1/-1;grid-row:1;justify-content:center}.chgp-pager>.btn{grid-row:2;width:100%;padding-inline:10px}.chgp-pager__help{grid-column:1/-1;grid-row:3}.chgp-pager__help--empty{display:none}
  .chgp-request-drawer__body{padding:18px}.chgp-request-drawer__body>section{padding:16px}.chgp-request-summary{grid-template-columns:1fr}.chgp-request-summary__wide{grid-column:auto}.chgp-request-heading{align-items:flex-start;flex-direction:column}
  .chgp-overview-grid{grid-template-columns:1fr}.chgp-overview-card--io{grid-column:auto}
  .chgp-scenario-list{grid-template-columns:1fr}
  .chgp-scenario-list button{min-height:0}
  .chgp-scenarios{padding:22px}
  .chgp-layout .summary{order:0}
  .chgp-io{display:grid;grid-template-columns:72px minmax(0,1fr);gap:11px;padding:14px}
  .chgp-io__media{width:72px;height:124px;grid-row:1/3}
  .chgp-io__icon{width:36px;height:36px}
  .chgp-io__icon svg{width:20px;height:20px}
  .chgp-io .qty{grid-column:2;justify-self:end}
}

@media (max-width:1180px){
  .services-hero__nav,.services-spec-grid,.services-support-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .services-hero>.lead{white-space:normal}
  .services-small-batch{grid-template-columns:auto minmax(0,1fr)}
  .services-small-batch .services-actions{grid-column:1/-1;justify-content:flex-start}
  .services-section-heading{grid-template-columns:1fr;gap:18px}
  .services-section-heading>p{max-width:78ch}
  .services-production__panel{grid-template-columns:1fr;gap:32px}
  .services-production__panel{height:auto}
  .services-production__media{height:420px;min-height:380px;max-height:520px}
  .about-section-heading{grid-template-columns:1fr;gap:18px}
  .about-production-panel{grid-template-columns:minmax(0,1fr) 440px;grid-template-rows:440px;gap:44px}
  .about-production-media{width:440px;height:440px}
  .about-product-grid,.about-industries-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-page="about.html"] .tech-platform-grid{grid-template-columns:1fr}
  body[data-page="about.html"] .tech-intro{grid-template-columns:1fr;gap:18px}
  body[data-page="about.html"] .tech-solutions{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-page="about.html"] .tech-operation{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-page="about.html"] .tech-operation article:nth-child(n){padding:18px;border:0}
}

@media (max-width:820px){
  body[data-page="services.html"] .services-hero{padding-bottom:32px!important}
  .services-hero__nav{margin-top:26px}
  .services-spec-grid,.services-support-grid,.services-software-grid{grid-template-columns:1fr}
  .services-spec-card,.services-support-grid .services-card,.services-software-grid .services-card{min-height:0}
  .services-card-icon{margin-bottom:24px}
  .services-check-list{grid-template-columns:1fr}
  .services-production__panel{padding:0}
  .services-production__intro{flex-direction:column}
  .services-cta{align-items:flex-start;flex-direction:column;gap:24px}
  .about-production-panel{grid-template-columns:1fr;grid-template-rows:none}
  .about-production-copy,.about-training-card,.about-production-media{grid-column:1;grid-row:auto}
  .about-production-media{width:100%;height:auto;min-height:0;aspect-ratio:1}
  .about-quality-grid{grid-template-columns:1fr}
  .about-quality-card{min-height:520px}
  .about-career-card{grid-template-columns:auto minmax(0,1fr)}
  .about-career-card .btn{grid-column:1/-1;width:100%}
}

@media (max-width:600px){
  .services-hero__nav{grid-template-columns:1fr;gap:8px}
  .services-hero__nav a{min-height:58px;padding:14px 16px}
  .services-spec-card,.services-card{padding:22px}
  .services-actions{flex-direction:column}
  .services-actions .btn,.services-cta .btn{width:100%}
  .services-production__panel{padding:0}
  .services-product-stack span{width:52px;height:52px;margin-left:-12px;padding:6px}
  .services-band{padding-bottom:52px!important}
  .services-note{padding:18px}
  .services-development{padding-bottom:52px!important}
  .services-cta{margin-top:52px;margin-bottom:0;padding:28px 22px!important}
  .about-product-grid,.about-industries-grid,body[data-page="about.html"] .tech-solutions,body[data-page="about.html"] .tech-operation{grid-template-columns:1fr}
  .about-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}
  body[data-page="about.html"] .tech-operation article:nth-child(3){grid-column:auto}
  .about-products-section{padding:24px 20px!important}
  body[data-page="about.html"] .tech-platform-panel{padding:24px 20px}
  body[data-page="about.html"] .tech-solutions-panel{padding:22px}
  body[data-page="about.html"] .tech-solution-card{min-height:0}
  body[data-page="about.html"] .tech-operation-panel{margin:0;padding:22px}
  body[data-page="about.html"] .tech-operation article{min-height:0;padding:18px;border:0}
  body[data-page="about.html"] .tech-operation article:first-child{padding:18px;border:0}
  .about-quality-card{min-height:0;grid-template-columns:140px minmax(0,1fr);gap:18px;padding:24px 20px}
  .about-quality-card__heading{flex-direction:column}
  .about-quality-card--documents .about-certificate-grid{margin-left:0}
  .about-certificate-grid{height:96px;gap:4px}
  .about-certificate-card{width:auto;height:96px}
  .about-registry-logo{width:96px;height:96px}
  .about-registry-logo img{width:56px;height:56px}
  .about-quality-card__content h3{font-size:19px!important}
  .about-quality-card__content .btn{padding-inline:16px}
  .registry-screen-content{padding:18px}
  .registry-screen-content strong{font-size:23px}
  .about-product-grid a{min-height:0}
  .about-production-section{padding-top:52px!important;padding-bottom:52px!important}
  .about-production-media{width:100%;height:auto;min-height:0;aspect-ratio:1}
  .about-production-copy{padding:0}
  body[data-page="about.html"] .tech-operation article{min-height:0}
  .tech-import-cta{align-items:flex-start;flex-direction:column;padding:24px 20px}
  .tech-import-cta .btn{width:100%}
  .about-industries-section{padding-bottom:52px!important}
  .about-career-card{grid-template-columns:1fr;padding:26px 22px}
  .about-career-card .btn{grid-column:auto}
  .document-viewer{padding:0}
  .document-viewer__panel{width:100%;height:100dvh;border-radius:0}
  .document-viewer__body{padding:14px}
}

/* The page heading and its lead form one unit. The following content always
   starts exactly 40px below it instead of accumulating section paddings. */
body[data-page]:not([data-page="index.html"])>.wrap>section.page-hero:first-of-type,
body[data-page]:not([data-page="index.html"])>#root.wrap>section.page-hero:first-of-type{
  padding-bottom:0!important;
}
body[data-page]:not([data-page="index.html"])>.wrap>section.page-hero:first-of-type+section,
body[data-page]:not([data-page="index.html"])>#root.wrap>section.page-hero:first-of-type+section{
  padding-top:40px!important;
}
body[data-page="about.html"] .about-hero .about-facts{margin-top:40px!important}
body[data-page="services.html"] .services-hero__nav{margin-top:40px!important}

/* Services spacing system: section gaps and panel paddings must never add up
   accidentally through the generic internal-page rules above. */
body[data-page="services.html"]>.wrap>.services-hero{
  padding-bottom:0!important;
}
body[data-page="services.html"]>.wrap>.services-development.services-development{
  margin-top:var(--space-11);
  padding:var(--space-section) 0!important;
}
body[data-page="services.html"]:not([data-page="index.html"])>.wrap>section.page-hero:first-of-type+section.services-development{
  padding:var(--space-section) 0!important;
}
body[data-page="services.html"]>.wrap>.services-production{
  margin-top:0;
  padding:var(--space-section) 0!important;
}
body[data-page="services.html"]>.wrap>.services-support{
  margin-top:0;
  padding:var(--space-section) 0!important;
}
body[data-page="services.html"]>.wrap>.services-software{
  padding:var(--space-11) 0 0!important;
}
body[data-page="services.html"]>.wrap>.services-cta.services-cta{
  margin:var(--space-11) 0 0!important;
  padding:var(--space-10)!important;
  background:var(--color-accent)!important;
  color:#fff!important;
}
html body[data-page="services.html"][data-page="services.html"]>.wrap>section.services-cta.services-cta{
  background-color:var(--color-accent)!important;
  background-image:none!important;
}

@media (max-width:600px){
  body[data-page="services.html"]>.wrap>.services-development.services-development,
  body[data-page="services.html"]>.wrap>.services-support{
    margin-top:40px;
    padding:52px 0!important;
  }
  body[data-page="services.html"]>.wrap>.services-support{
    margin-top:0;
  }
  body[data-page="services.html"]:not([data-page="index.html"])>.wrap>section.page-hero:first-of-type+section.services-development{
    padding:52px 0!important;
  }
  body[data-page="services.html"]>.wrap>.services-production,
  body[data-page="services.html"]>.wrap>.services-software{
    padding-top:40px!important;
  }
  body[data-page="services.html"]>.wrap>.services-production{
    margin-top:0;
    padding-bottom:40px!important;
  }
  body[data-page="services.html"]>.wrap>.services-cta.services-cta{
    margin-top:40px!important;
    padding:28px 22px!important;
  }
}

@media (max-width:700px){
  .chgp-product-composition{padding:24px 18px}
  .chgp-product-composition__heading{grid-template-columns:1fr;align-items:start}
  .chgp-product-composition__heading .btn{width:100%}
  .chgp-component-group>summary{padding:17px 16px}
  .chgp-component-group__body{padding:0 16px 16px}
  .chgp-component-grid{grid-template-columns:1fr}
  .chgp-component-card{padding:17px}
  .chgp-component-card dl>div{grid-template-columns:1fr;gap:3px}
  .chgp-component-card dd{text-align:left}
}

/* Import variants live inside the regular .wrap, but manage their own section
   rhythm and surfaces. These scoped rules intentionally override the generic
   internal-page section reset above. */
.import-v-search .sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;margin:-1px!important;padding:0!important;border:0!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
html body[data-page][data-import-variant]>main.wrap>section{padding:0!important;background-color:transparent!important;background-image:none!important}
html body[data-page="import.html"][data-import-variant="1"] .import-v-search__field>input{height:100%;min-height:0!important;padding:0 18px!important;border:0!important;border-radius:inherit!important;background:#fff!important;box-shadow:none!important}
html body[data-page="import.html"][data-import-variant="1"] .import-v-search__field>input:hover,
html body[data-page="import.html"][data-import-variant="1"] .import-v-search__field>input:focus{background:#fff!important}
html body[data-page][data-import-variant="1"]>main.wrap>section.import-v1-hero.import-v1-hero{padding:24px 0 28px!important;background-color:transparent!important;color:var(--color-text-primary)!important}
html body[data-page="import.html"][data-import-variant="1"]>main.wrap>section.import-v1-hero.import-v1-hero+section.import-correspondence-section.import-correspondence-section{margin-top:24px!important;padding-top:0!important}
html body[data-page][data-import-variant="1"]>main.wrap>section.import-v-section--muted.import-v-section--muted{padding:45px 50px!important;background-color:var(--color-surface-muted)!important}
html body[data-page][data-import-variant="3"]>main.wrap>section.import-flow.import-flow{padding:45px 50px!important;background-color:var(--color-surface-muted)!important}
html body[data-page][data-import-variant="4"]>main.wrap>section.import-directory.import-directory{padding:35px!important;background-color:var(--color-surface-muted)!important}
html body[data-page][data-import-variant]>main.wrap>section.import-no-match.import-no-match{padding:45px 50px!important;background-color:var(--color-dark)!important;color:#fff!important}

@media(max-width:850px){
  html body[data-page][data-import-variant="1"]>main.wrap>section.import-v1-hero.import-v1-hero,
  html body[data-page][data-import-variant="1"]>main.wrap>section.import-v-section--muted.import-v-section--muted,
  html body[data-page][data-import-variant="3"]>main.wrap>section.import-flow.import-flow,
  html body[data-page][data-import-variant="4"]>main.wrap>section.import-directory.import-directory,
  html body[data-page][data-import-variant]>main.wrap>section.import-no-match.import-no-match{padding:28px 24px!important}
  html body[data-page][data-import-variant="1"]>main.wrap>section.import-v1-hero.import-v1-hero{padding:20px 0 24px!important}
  html body[data-page="import.html"][data-import-variant="1"]>main.wrap>section.import-v1-hero.import-v1-hero+section.import-correspondence-section.import-correspondence-section{margin-top:30px!important;padding-top:0!important}
}

/* Final section-rhythm contract.
   Keep this after the generic internal-page rules so their 40px first-section
   reset cannot halve a muted band's own vertical padding. */
html body[data-page="about.html"]>.wrap>section.about-products-section.about-products-section,
html body[data-page="about.html"]>.wrap>section.tech-section.tech-section,
html body[data-page="about.html"]>.wrap>section.about-industries-section.about-industries-section,
html body[data-page="services.html"]>.wrap>section.services-development.services-development,
html body[data-page="services.html"]>.wrap>section.services-band.services-band,
html body[data-page="solutions.html"]>.wrap>section.solutions-applications-section.solutions-applications-section{
  padding-top:80px!important;
  padding-bottom:80px!important;
}
html body[data-page="about.html"]>.wrap>.about-hero.about-hero+.about-products-section.about-products-section{
  margin-top:60px!important;
}
html body[data-page="solutions.html"]>.wrap>section.solutions-applications-section.solutions-applications-section{
  padding-top:80px!important;
  padding-bottom:50px!important;
}
html body[data-page="about.html"] .tech-section .tech-platform-panel.tech-platform-panel{
  padding:0!important;
  background:transparent!important;
}
html body[data-page="catalog.html"]>.wrap>section.catalog-directions-section.catalog-directions-section{
  margin-top:40px!important;
  padding:80px 0!important;
}
html body[data-page="catalog.html"]:not([data-page="index.html"])>.wrap>section.page-hero:first-of-type+section.catalog-directions-section.catalog-directions-section{
  padding-top:45px!important;
  padding-bottom:50px!important;
}
html body[data-page="catalog.html"]>.wrap>section.catalog-workspace-section.catalog-workspace-section{
  padding-top:40px!important;
}

@media(max-width:600px){
  html body[data-page="about.html"]>.wrap>section.about-products-section.about-products-section,
  html body[data-page="about.html"]>.wrap>section.tech-section.tech-section,
  html body[data-page="about.html"]>.wrap>section.about-industries-section.about-industries-section,
  html body[data-page="services.html"]>.wrap>section.services-development.services-development,
  html body[data-page="services.html"]>.wrap>section.services-band.services-band,
  html body[data-page="solutions.html"]>.wrap>section.solutions-applications-section.solutions-applications-section{
    padding-top:52px!important;
    padding-bottom:52px!important;
  }
  html body[data-page="about.html"]>.wrap>.about-hero.about-hero+.about-products-section.about-products-section{
    margin-top:52px!important;
  }
  html body[data-page="catalog.html"]>.wrap>section.catalog-directions-section.catalog-directions-section{
    margin-top:40px!important;
    padding-top:52px!important;
    padding-bottom:52px!important;
  }
  html body[data-page="catalog.html"]:not([data-page="index.html"])>.wrap>section.page-hero:first-of-type+section.catalog-directions-section.catalog-directions-section{
    padding-top:52px!important;
    padding-bottom:52px!important;
  }
  html body[data-page="catalog.html"]>.wrap>section.catalog-workspace-section.catalog-workspace-section{
    padding-top:40px!important;
  }

  body:not([data-page="index.html"])>.wrap>section:last-child,
  body[data-page]:not([data-page="index.html"])>#root.wrap>section:last-child,
  body[data-page^="chgp-configurator"]>.wrap>.chgp-builder-section{
    padding-bottom:0!important;
  }
  body:not([data-page="index.html"]) .site-footer{
    height:auto!important;
    margin-top:var(--space-section-mobile,56px)!important;
    padding:0 0 35px!important;
  }
  body:not([data-page="index.html"]) .footer__layout{
    height:auto!important;
    gap:28px!important;
  }
  body:not([data-page="index.html"]) .footer__about{
    min-height:0!important;
    justify-content:flex-start!important;
    gap:24px!important;
  }
  body:not([data-page="index.html"]) .footer__about>div:first-child{
    gap:18px!important;
  }
}

/* Compact icon tiles remain two-up even on narrow phones. */
@media(max-width:720px){
  .solutions-applications{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .application-card{
    min-height:138px;
    padding:16px;
  }
  .application-card svg{
    width:28px;
    height:28px;
    margin-bottom:22px;
  }
  .application-card h3{
    font-size:14px!important;
    line-height:1.25!important;
  }
}

/* Career spacing is intentionally scoped after the global page-section rules. */
html body[data-page="career.html"]>.wrap>section.page-hero.career-hero:first-of-type{display:grid;padding-top:24px!important;padding-bottom:64px!important}
html body[data-page="career.html"]>.wrap>section.page-hero.career-hero:first-of-type+section.page-content.career-benefits-section{padding-top:64px!important;padding-bottom:64px!important}

@media(max-width:1180px){
  .career-hero{grid-template-columns:1fr;gap:30px}
  .career-hero__copy .lead{max-width:76ch}
  .career-hero__media{height:auto;aspect-ratio:3/2}
  .career-benefits-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:820px){
  .career-benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .career-vacancies-section .vac>summary{grid-template-columns:minmax(0,1fr) 165px;gap:18px;padding:22px}
  .career-vacancies-section .vac-toggle-label{width:165px}
  .career-apply-card{grid-template-columns:1fr;gap:24px;padding:30px 26px}
  .career-apply-card .button{justify-self:start}
}

@media(max-width:600px){
  html body[data-page="career.html"]>.wrap>section.page-hero.career-hero:first-of-type{padding-bottom:40px!important}
  html body[data-page="career.html"]>.wrap>section.page-hero.career-hero:first-of-type+section.page-content.career-benefits-section{padding-top:52px!important;padding-bottom:52px!important}
  .career-hero{gap:24px}
  .career-hero__media{margin-inline:calc(10px - var(--page-gutter));border-radius:var(--radius)}
  .career-benefits-grid{grid-template-columns:1fr}
  .career-benefits-grid article{min-height:0}
  .career-benefits-grid svg{margin-bottom:26px}
  .career-vacancies-section .vac>summary{grid-template-columns:1fr;gap:16px;padding:20px}
  .career-vacancies-section .vac-toggle-label{width:100%;justify-self:stretch}
  .career-vacancies-section .vac .vbody{padding:22px 20px}
  .career-apply-card{padding:28px 22px}
  .career-apply-card .button{width:100%;justify-content:center}
  html body[data-page="career.html"]>.wrap>section.career-life-section.career-life-section{margin-top:40px;padding-top:52px!important;padding-bottom:52px!important}
  .career-life-section .shead{align-items:flex-start;flex-direction:column;gap:20px}
  .career-life-section .shead .btn{width:100%;justify-content:center}
  .career-life-card__media{height:auto;aspect-ratio:4/3}
}

/* General import-substitution page. The detailed correspondence prototype is
   intentionally retained at import.html until verified analog data is ready. */
body[data-page="import-overview.html"]>.wrap>section{background:transparent!important}
body[data-page="import-overview.html"]>.wrap>section::before{content:none!important}
.import-overview-page{padding-bottom:80px!important}
.import-overview-hero{display:block;padding-bottom:0!important}
.import-overview-hero__copy{max-width:1080px;padding:34px 0 0}
.import-overview-hero .lead{max-width:62ch!important;margin-top:20px;color:var(--color-text-secondary);font-size:20px;line-height:1.5}
.import-overview-hero__note{max-width:72ch;margin:18px 0 0;color:var(--color-text-secondary);line-height:1.55}
.import-overview-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}
.import-overview-brands{margin-top:80px!important;padding:30px!important;border-radius:var(--radius);background:var(--color-surface-muted)}
html body[data-page="import-overview.html"]>main.wrap>section.import-overview-brands.import-overview-brands{margin-top:80px!important;padding:30px!important;background-color:var(--color-surface-muted)!important}
.import-overview-brands h2{margin:0 0 22px!important;font-size:25px!important;line-height:1.2!important}
.import-overview-brands .import-maker-grid{grid-template-columns:repeat(5,minmax(0,1fr)) minmax(250px,1.8fr);gap:8px}
.import-overview-brands .import-maker-card{min-height:74px;gap:10px;padding:12px}
.import-overview-brands .import-maker-card>img{width:34px;height:34px}
.import-overview-brands .import-maker-card h3{font-size:16px!important}
.import-maker-card--note{align-items:center;background:var(--color-dark);color:#fff}
.import-maker-card--note p{margin:0;color:#fff;font:500 13px/1.4 var(--font-family)}
.import-overview-makers,.import-overview-process{margin-top:24px;padding:48px!important;border-radius:var(--radius);background:var(--color-surface-muted)!important}
html body[data-page="import-overview.html"]>main.wrap>section.import-overview-makers.import-overview-makers{padding:48px!important;background-color:var(--color-surface-muted)!important}
.import-overview-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:end;gap:56px;margin-bottom:32px}
.import-overview-heading h2{margin:7px 0 0!important}
.import-overview-heading>p{margin:0;color:var(--color-text-secondary);line-height:1.55}
.import-kicker{display:block;color:var(--color-text-secondary);font:600 12px/1.25 var(--font-family);letter-spacing:.13em;text-transform:uppercase}
.import-maker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.import-maker-card{min-width:0;min-height:118px;display:flex;align-items:center;gap:18px;padding:22px;border-radius:var(--radius);background:#fff}
.import-maker-card>img{width:48px;height:48px;flex:none;border:1px solid var(--color-border-soft);border-radius:50%;object-fit:cover;box-shadow:0 5px 14px rgba(0,0,0,.09)}
.import-maker-card h3{margin:0!important;font-size:21px!important;line-height:1.15!important}
.import-overview-context{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:48px;margin-top:80px!important;padding:50px!important;border-radius:var(--radius);background:var(--color-dark)!important;color:#fff}
html body[data-page="import-overview.html"]>main.wrap>section.import-overview-context.import-overview-context{margin-top:80px!important;padding:50px!important;background-color:var(--color-dark)!important;color:#fff!important}
.import-overview-context .import-kicker{color:rgba(255,255,255,.55)}
.import-overview-context__copy h2{max-width:640px;margin:10px 0 24px!important;color:#fff}
.import-overview-context__copy p{max-width:68ch;margin:0;color:rgba(255,255,255,.7);font-size:17px;line-height:1.6}
.import-overview-context__copy p+p{margin-top:16px}
.import-overview-context__copy .button{margin-top:26px}
.import-overview-context__list{padding:28px;border-radius:var(--radius);background:#292929}
.import-overview-context__list h3{margin:0 0 12px!important;color:#fff;font-size:21px!important}
.import-overview-context__list ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.import-overview-context__list li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:11px;padding:4px 0;border:0}
.import-overview-context__list li>svg{width:17px;height:17px;margin-top:2px;color:#fff}
.import-overview-context__list li>p{margin:0;color:#fff;line-height:1.45}
.import-overview-process{margin-top:80px;background:#fff!important;padding:0!important}
.import-overview-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.import-overview-steps li{min-height:220px;display:flex;align-items:flex-start;gap:20px;padding:28px;border-radius:var(--radius);background:var(--color-surface-muted)}
.import-overview-steps li>b{width:44px;height:44px;display:grid;place-items:center;flex:none;border-radius:50%;background:var(--color-dark);color:#fff;font:600 13px/1 var(--font-family)}
.import-overview-steps h3{margin:2px 0 10px!important;font-size:20px!important}
.import-overview-steps p{margin:0;color:var(--color-text-secondary)}
body[data-page="import-overview.html"]>.wrap>section.import-overview-cta{margin-top:80px;padding:45px 50px!important;background:var(--color-dark)!important}

@media(max-width:1100px){
  .import-overview-hero__copy{padding-bottom:0}
  .import-overview-brands .import-maker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .import-maker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .import-overview-context{grid-template-columns:1fr;gap:32px}
  .import-overview-steps{grid-template-columns:1fr}
  .import-overview-steps li{min-height:0}
}
@media(max-width:760px){
  .import-overview-page{padding-bottom:52px!important}
  .import-overview-hero{gap:20px;padding-bottom:32px!important}
  .import-overview-hero__copy{padding-top:10px}
  .import-overview-hero .lead{font-size:17px}
  .import-overview-hero__actions{flex-direction:column}
  .import-overview-hero__actions .button{width:100%}
  html body[data-page="import-overview.html"]>main.wrap>section.import-overview-brands.import-overview-brands{margin-top:52px!important;padding:24px!important}
  .import-overview-brands h2{font-size:23px!important}
  html body[data-page="import-overview.html"]>main.wrap>section.import-overview-makers.import-overview-makers{padding:24px!important}
  .import-overview-heading{grid-template-columns:1fr;gap:12px;margin-bottom:24px}
  .import-maker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .import-maker-card{min-height:92px;gap:12px;padding:16px}
  .import-maker-card>img{width:40px;height:40px}
  .import-maker-card h3{font-size:17px!important}
  .import-overview-brands .import-maker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .import-maker-card--note{grid-column:1/-1}
  html body[data-page="import-overview.html"]>main.wrap>section.import-overview-context.import-overview-context{grid-template-columns:1fr;gap:28px;margin-top:52px!important;padding:30px 24px!important}
  .import-overview-context__copy p{font-size:15px}
  .import-overview-context__list{padding:20px}
  .import-overview-process{margin-top:52px!important}
  .import-overview-steps li{padding:22px}
  body[data-page="import-overview.html"]>.wrap>section.import-overview-cta{margin-top:52px;padding:30px 24px!important}
}
@media(max-width:430px){.import-maker-grid{grid-template-columns:1fr}}
