/* PK Intertrade v15.0 — Global Premium UI System
   Presentation layer only. Existing content, URLs, metadata and information architecture are preserved. */

:root{
  --v15-navy:#072d61;
  --v15-navy-2:#0a3b78;
  --v15-blue:#1476c8;
  --v15-gold:#c89a2b;
  --v15-ink:#10243d;
  --v15-muted:#66758a;
  --v15-line:#dfe6ee;
  --v15-surface:#f4f7fa;
  --v15-white:#fff;
  --v15-radius-sm:12px;
  --v15-radius:18px;
  --v15-radius-lg:24px;
  --v15-shadow:0 16px 38px rgba(7,45,97,.09);
  --v15-shadow-hover:0 24px 56px rgba(7,45,97,.14);
  --v15-space-section:clamp(72px,8vw,124px);
  --v15-container:1200px;
  --v15-ease:cubic-bezier(.2,.7,.2,1);
}

html{scroll-behavior:smooth}
body.v15{
  color:var(--v15-ink);
  background:#fff;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.v15 .shell{width:min(var(--v15-container),calc(100% - 48px));margin-inline:auto}
body.v15 main>section:not(.hero):not(.inner-hero):not(.page-hero):not(.oem-band):not(.contact){
  margin-block:0;
}
body.v15 h1,body.v15 h2,body.v15 h3{letter-spacing:-.025em;text-wrap:balance}
body.v15 h1{line-height:1.02}
body.v15 h2{line-height:1.1}
body.v15 p{line-height:1.72}
body.v15 a,body.v15 button{transition:all .32s var(--v15-ease)}
body.v15 :focus-visible{outline:3px solid rgba(20,118,200,.35);outline-offset:4px;border-radius:6px}

/* Navigation and actions */
body.v15 header{backdrop-filter:saturate(130%) blur(12px)}
body.v15 .btn,body.v15 .button,body.v15 .cta,body.v15 a[class*="btn"]{
  min-height:46px;border-radius:999px;font-weight:700;letter-spacing:.01em;
}

/* Shared page hero language */
body.v15 .inner-hero,body.v15 .page-hero{
  padding-block:clamp(78px,9vw,132px) clamp(56px,7vw,96px);
  position:relative;overflow:hidden;
}
body.v15 .inner-hero:after,body.v15 .page-hero:after{
  content:"";position:absolute;right:-10vw;top:-18vw;width:42vw;height:42vw;
  border-radius:50%;background:radial-gradient(circle,rgba(20,118,200,.08),transparent 68%);pointer-events:none;
}
body.v15 .inner-hero p,body.v15 .page-hero p{max-width:780px;color:var(--v15-muted)}

/* Unified visual frames */
body.v15 figure,body.v15 [class*="gallery"] img,body.v15 [class*="showcase"] img,
body.v15 [class*="card"] img,body.v15 .process img,body.v15 .factory img{
  max-width:100%;height:auto;
}
body.v15 figure,body.v15 .image-frame,body.v15 [class*="gallery"] a:has(img),
body.v15 [class*="showcase"] figure,body.v15 [class*="card"]:has(img){
  overflow:hidden;border-radius:var(--v15-radius);border:1px solid var(--v15-line);background:var(--v15-surface);
}
body.v15 [class*="gallery"] img,body.v15 [class*="showcase"] img,body.v15 [class*="card"] img{
  transition:transform .55s var(--v15-ease),filter .55s var(--v15-ease);
}
@media (hover:hover){
  body.v15 [class*="gallery"] a:hover img,body.v15 [class*="showcase"] figure:hover img,
  body.v15 [class*="card"]:hover img{transform:scale(1.025)}
}

/* Section rhythm */
body.v15 .section-heading,body.v15 .page-section-heading{margin-bottom:clamp(32px,4vw,56px)}
body.v15 .section-heading h2,body.v15 .page-section-heading h2{max-width:820px}
body.v15 .eyebrow,body.v15 .kicker,body.v15 [class*="label"]{
  letter-spacing:.12em;text-transform:uppercase;font-weight:800;
}

/* Cards */
body.v15 .products>* ,body.v15 .catalog>* ,body.v15 .industry-list>* ,body.v15 .detail-grid>* ,
body.v15 .values>* ,body.v15 .oem-capabilities>*{
  border-color:var(--v15-line);border-radius:var(--v15-radius);transition:transform .32s var(--v15-ease),box-shadow .32s var(--v15-ease),border-color .32s var(--v15-ease);
}
@media (hover:hover){
  body.v15 .products>*:hover,body.v15 .catalog>*:hover,body.v15 .industry-list>*:hover,
  body.v15 .detail-grid>*:hover,body.v15 .values>*:hover{transform:translateY(-5px);box-shadow:var(--v15-shadow-hover);border-color:#cbd6e2}
}

/* Product listing and product detail */
body.v15.page-products .catalog,body.v15.page-products .product-link-grid{
  gap:clamp(22px,3vw,34px);padding-block:var(--v15-space-section);
}
body.v15.page-products .catalog article,body.v15.page-products .product-link-grid>*{
  background:#fff;box-shadow:0 10px 28px rgba(7,45,97,.06);overflow:hidden;
}
body.v15[class*="page-product-"] .product-detail-hero{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:clamp(42px,6vw,86px);align-items:center;
  padding-block:clamp(72px,8vw,118px);
}
body.v15[class*="page-product-"] .product-gallery{padding-block:var(--v15-space-section)}
body.v15[class*="page-product-"] .detail-grid{gap:clamp(24px,3vw,38px);padding-block:clamp(56px,7vw,96px)}
body.v15[class*="page-product-"] .feature-band{border-radius:var(--v15-radius-lg);margin-block:clamp(54px,7vw,96px);padding:clamp(30px,5vw,64px);background:var(--v15-surface)}

/* About — compact OEM-inspired editorial presentation */
body.v15.page-about .about-story{padding-block:var(--v15-space-section)}
body.v15.page-about .export-story{padding-block:clamp(60px,7vw,104px)}
body.v15.page-about .export-story [class*="gallery"]{
  width:min(920px,100%);margin-inline:auto;gap:clamp(14px,2vw,24px);
}
body.v15.page-about .values{padding-block:clamp(58px,7vw,96px);gap:clamp(18px,2.4vw,30px)}

/* Manufacturing keeps original content; only presentation aligns with OEM */
body.v15.page-manufacturing .process{padding-block:var(--v15-space-section)}
body.v15.page-manufacturing .process>*{border-radius:var(--v15-radius);border-color:var(--v15-line)}
body.v15.page-manufacturing .machinery-section{padding-block:clamp(64px,8vw,112px)}
body.v15.page-manufacturing .machinery-section [class*="gallery"],
body.v15.page-manufacturing .machinery-grid{
  gap:clamp(16px,2vw,26px);padding:clamp(16px,2vw,28px);background:var(--v15-surface);border:1px solid var(--v15-line);border-radius:var(--v15-radius-lg);
}
body.v15.page-manufacturing .machinery-section img{border-radius:var(--v15-radius-sm)}

/* OEM becomes visual benchmark */
body.v15.page-oem .oem-showcase,body.v15.page-oem .oem-capabilities,body.v15.page-oem .oem-gallery{padding-block:clamp(62px,8vw,112px)}
body.v15.page-oem .oem-gallery{background:var(--v15-surface);border-radius:var(--v15-radius-lg);padding-inline:clamp(20px,4vw,54px)}

/* Industries: stronger editorial rhythm without changing content */
body.v15.page-industries .industry-list{padding-block:var(--v15-space-section);gap:clamp(34px,5vw,72px)}
body.v15.page-industries .industry-list>article,body.v15.page-industries .industry-list>div{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:clamp(30px,5vw,72px);padding:clamp(24px,3vw,42px);background:#fff;
}
body.v15.page-industries .industry-list>*:nth-child(even){grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr)}
body.v15.page-industries .industry-list>*:nth-child(even)>:first-child{order:2}

/* Contact */
body.v15.page-contact .contact-layout{padding-block:var(--v15-space-section);gap:clamp(30px,5vw,72px)}
body.v15.page-contact .contact-layout>*{border-radius:var(--v15-radius);border-color:var(--v15-line)}
body.v15.page-contact .contact-map-v11{overflow:hidden;border:1px solid var(--v15-line);border-radius:var(--v15-radius-lg);margin-bottom:clamp(64px,8vw,112px)}

/* Home polish */
body.v15.page-index .hero{min-height:min(82vh,850px)}
body.v15.page-index .numbers-wrap{border-block:1px solid var(--v15-line)}
body.v15.page-index .trust{padding-block:clamp(42px,5vw,72px)}
body.v15.page-index .industry-list,body.v15.page-index .factory,body.v15.page-index .products,
body.v15.page-index .global,body.v15.page-index .resource-hub{padding-block:clamp(68px,8vw,116px)}
body.v15.page-index .products{gap:clamp(22px,3vw,36px)}
body.v15.page-index .contact{margin-top:clamp(64px,8vw,116px)}

/* Footer */
body.v15 footer{border-top:1px solid rgba(255,255,255,.12)}
body.v15 footer a:hover{opacity:1;transform:translateX(2px)}

/* Reveal animation progressively enhanced */
body.v15.js-v15 .v15-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--v15-ease),transform .7s var(--v15-ease)}
body.v15.js-v15 .v15-reveal.is-visible{opacity:1;transform:none}

@media(max-width:900px){
  body.v15 .shell{width:min(100% - 32px,var(--v15-container))}
  body.v15[class*="page-product-"] .product-detail-hero,
  body.v15.page-industries .industry-list>article,body.v15.page-industries .industry-list>div,
  body.v15.page-industries .industry-list>*:nth-child(even){grid-template-columns:1fr}
  body.v15.page-industries .industry-list>*:nth-child(even)>:first-child{order:initial}
}
@media(max-width:620px){
  body.v15 .shell{width:min(100% - 24px,var(--v15-container))}
  body.v15 .inner-hero,body.v15 .page-hero{padding-block:64px 48px}
  body.v15.page-index .hero{min-height:680px}
  body.v15[class*="page-product-"] .feature-band{border-radius:var(--v15-radius);padding:26px 20px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto} body.v15 *,body.v15 *:before,body.v15 *:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  body.v15.js-v15 .v15-reveal{opacity:1;transform:none}
}

/* =========================================================
   V15.1 — INDUSTRIES / MANUFACTURING / HOME VISUAL POLISH
   ========================================================= */

/* Industries: selected sectors use their existing photography as a true hero. */
body.v15.page-industries .industry-list > article.industry-featured-hero{
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid var(--v15-line);
  background:#fff;
}
body.v15.page-industries .industry-list > article.industry-featured-hero > img{
  order:1;
  width:100%;
  max-width:none;
  height:auto;
  aspect-ratio:16/7;
  padding:0;
  object-fit:cover;
  object-position:center;
  background:#eef1f3;
  border-radius:0;
}
body.v15.page-industries .industry-list > article.industry-featured-hero > span{
  order:2;
  margin:24px clamp(24px,4vw,48px) 0;
}
body.v15.page-industries .industry-list > article.industry-featured-hero > div{
  order:3;
  padding:0 clamp(24px,4vw,48px) clamp(30px,4vw,48px);
}
body.v15.page-industries .industry-list > article.industry-featured-hero:nth-child(1) > img{object-position:center 50%}
body.v15.page-industries .industry-list > article.industry-featured-hero:nth-child(3) > img{object-position:center 54%}
body.v15.page-industries .industry-list > article.industry-featured-hero:nth-child(5) > img{object-position:center 52%}

/* Manufacturing: disciplined square-frame presentation, no rounded corners or overflow. */
body.v15.page-manufacturing .machinery-section [class*="gallery"],
body.v15.page-manufacturing .machinery-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  padding:22px;
  overflow:hidden;
  border:1px solid var(--v15-line);
  border-radius:0;
  background:#f5f6f7;
}
body.v15.page-manufacturing .machinery-gallery figure,
body.v15.page-manufacturing .machinery-gallery figure.wide{
  grid-column:auto;
  min-width:0;
  margin:0;
  overflow:hidden;
  border:1px solid var(--v15-line);
  border-radius:0;
  background:#fff;
}
body.v15.page-manufacturing .machinery-gallery figure.wide{
  grid-column:span 2;
}
body.v15.page-manufacturing .machinery-gallery img,
body.v15.page-manufacturing .machinery-section img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:16/9;
  padding:0;
  object-fit:cover;
  object-position:center;
  border-radius:0;
  transform:none;
}
body.v15.page-manufacturing .machinery-gallery figure:not(.wide) img{aspect-ratio:4/3}
body.v15.page-manufacturing .machinery-gallery figcaption{
  position:static;
  padding:14px 16px 16px;
  background:#fff;
  color:var(--v15-ink);
  border-top:1px solid var(--v15-line);
}
body.v15.page-manufacturing .machinery-gallery figure:hover img{transform:none}

/* Home: first hero image is more prominent and uses crisp square corners. */
body.v15.page-index .hero{
  align-items:stretch;
  gap:clamp(34px,5vw,76px);
}
body.v15.page-index .hero-image{
  overflow:hidden;
  margin:0;
  min-height:clamp(470px,62vw,760px);
  border-radius:0!important;
  box-shadow:0 24px 64px rgba(11,29,48,.14);
  background:#edf1f3;
}
body.v15.page-index .hero-image img{
  display:block;
  width:100%;
  height:100%;
  min-height:inherit;
  object-fit:cover;
  object-position:center;
  border-radius:0!important;
  filter:contrast(1.035) saturate(1.03);
}

@media(max-width:900px){
  body.v15.page-industries .industry-list > article.industry-featured-hero > img{aspect-ratio:16/9}
  body.v15.page-manufacturing .machinery-section [class*="gallery"],
  body.v15.page-manufacturing .machinery-grid{gap:16px;padding:16px}
  body.v15.page-index .hero-image{min-height:460px}
}
@media(max-width:620px){
  body.v15.page-industries .industry-list > article.industry-featured-hero > img{aspect-ratio:4/3}
  body.v15.page-manufacturing .machinery-section [class*="gallery"],
  body.v15.page-manufacturing .machinery-grid{grid-template-columns:1fr;gap:14px;padding:14px}
  body.v15.page-manufacturing .machinery-gallery figure.wide{grid-column:auto}
  body.v15.page-index .hero-image{min-height:360px}
}

/* =========================================================
   V15.2 — IMAGE PROPORTION / OVERFLOW / HERO REFINEMENT
   ========================================================= */

/* Shared safety rules: images can never exceed their frame. */
body.v15 img{
  box-sizing:border-box;
  max-width:100%;
}
body.v15 figure,
body.v15 article,
body.v15 [class*="gallery"],
body.v15 [class*="hero"]{
  min-width:0;
}

/* OEM — preserve complete product silhouettes and prevent edge overflow. */
body.v15.page-oem .oem-hero-visual,
body.v15.page-oem .oem-gallery,
body.v15.page-oem .oem-gallery figure{
  overflow:hidden!important;
}
body.v15.page-oem .oem-hero-visual{
  border-radius:0;
  padding:clamp(12px,2vw,24px);
  background:#f4f6f7;
}
body.v15.page-oem .oem-hero-visual img{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
body.v15.page-oem .oem-gallery{
  box-sizing:border-box;
  width:min(100%,var(--v15-container));
  grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,.8fr);
  overflow:hidden;
}
body.v15.page-oem .oem-gallery figure{
  min-width:0;
  border-radius:0;
  background:#f5f7f8;
}
body.v15.page-oem .oem-gallery img{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  padding:clamp(12px,1.8vw,20px)!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:0!important;
  transform:none!important;
}
body.v15.page-oem .oem-gallery figure:hover img{transform:none!important}

/* Manufacturing — fixed proportional frames, square corners, no cropping or overflow. */
body.v15.page-manufacturing .machinery-gallery{
  align-items:stretch;
  overflow:hidden!important;
}
body.v15.page-manufacturing .machinery-gallery figure,
body.v15.page-manufacturing .machinery-gallery figure.wide{
  display:flex;
  flex-direction:column;
  min-width:0;
  max-width:100%;
  overflow:hidden!important;
  border-radius:0!important;
  background:#fff;
}
body.v15.page-manufacturing .machinery-gallery figure > img{
  flex:0 0 auto;
  display:block;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  padding:0!important;
  border-radius:0!important;
  background:#eef1f3;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
body.v15.page-manufacturing .machinery-gallery figure.wide > img{
  aspect-ratio:16/9!important;
}
body.v15.page-manufacturing .machinery-gallery figure:not(.wide) > img{
  aspect-ratio:4/3!important;
}
body.v15.page-manufacturing .machinery-gallery figcaption{
  flex:1 1 auto;
  box-sizing:border-box;
  width:100%;
  min-width:0;
  border-radius:0;
}
body.v15.page-manufacturing .machinery-gallery figure:hover img{transform:none!important}

/* Industries — all card and hero photography is clipped safely inside its own frame. */
body.v15.page-industries .industry-list,
body.v15.page-industries .industry-list > article{
  min-width:0;
  max-width:100%;
}
body.v15.page-industries .industry-list > article{
  overflow:hidden!important;
}
body.v15.page-industries .industry-list > article > img{
  display:block;
  box-sizing:border-box;
  width:100%!important;
  max-width:100%!important;
  min-width:0;
  margin:0;
  border-radius:0!important;
  overflow:hidden;
}
body.v15.page-industries .industry-list > article.industry-featured-hero > img{
  height:auto!important;
  aspect-ratio:16/8!important;
  object-fit:cover!important;
  object-position:center!important;
}
body.v15.page-industries .industry-list > article:not(.industry-featured-hero) > img{
  justify-self:stretch;
  height:auto!important;
  aspect-ratio:4/3!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:clamp(10px,1.5vw,18px);
  background:#f2f4f5;
}

/* Home — moderate rectangular first hero with crisp square edges. */
body.v15.page-index .hero{
  min-height:auto!important;
  align-items:center;
  padding-block:clamp(54px,6vw,82px);
}
body.v15.page-index .hero-image{
  box-sizing:border-box;
  width:100%;
  max-width:620px;
  min-height:0!important;
  height:auto!important;
  aspect-ratio:16/9;
  justify-self:end;
  overflow:hidden!important;
  border-radius:0!important;
  box-shadow:0 16px 38px rgba(11,29,48,.11);
  background:#edf1f3;
}
body.v15.page-index .hero-image img{
  display:block;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-width:100%!important;
  object-fit:cover!important;
  object-position:center 46%!important;
  border-radius:0!important;
  transform:none!important;
}
body.v15.page-index .hero-image:hover img{transform:none!important}

@media(max-width:900px){
  body.v15.page-oem .oem-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.v15.page-index .hero-image{max-width:100%;justify-self:stretch;aspect-ratio:16/9}
  body.v15.page-industries .industry-list > article.industry-featured-hero > img{aspect-ratio:16/9!important}
}
@media(max-width:620px){
  body.v15.page-oem .oem-gallery{grid-template-columns:1fr}
  body.v15.page-manufacturing .machinery-gallery{grid-template-columns:1fr!important}
  body.v15.page-manufacturing .machinery-gallery figure.wide{grid-column:auto!important}
  body.v15.page-index .hero-image{aspect-ratio:4/3}
  body.v15.page-industries .industry-list > article.industry-featured-hero > img{aspect-ratio:4/3!important}
}


/* =========================================================
   V15.3 — UNIFIED HERO / IMAGE FRAME / MACHINERY UPDATE
   ========================================================= */

/* Home hero: 20% wider than v15.2 while retaining the previous desktop height. */
body.v15.page-index .hero{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  max-width:min(1440px,calc(100% - 40px));
}
body.v15.page-index .hero-image{
  width:min(100%,744px);
  max-width:744px;
  height:349px!important;
  aspect-ratio:auto!important;
  justify-self:end;
  border-radius:0!important;
  overflow:hidden!important;
}
body.v15.page-index .hero-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:0!important;
}

/* Same hero position and image dimensions across inner pages. */
body.v15 .v153-page-hero{
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  align-items:center!important;
  gap:clamp(34px,5vw,76px)!important;
  width:min(1440px,calc(100% - 40px))!important;
  max-width:1440px!important;
  margin-inline:auto!important;
  padding-block:clamp(54px,6vw,82px)!important;
}
body.v15 .v153-page-hero .v153-hero-copy{min-width:0;max-width:650px}
body.v15 .v153-page-hero .v153-page-hero-image{
  box-sizing:border-box;
  width:min(100%,744px);
  max-width:744px;
  height:349px;
  margin:0;
  justify-self:end;
  overflow:hidden;
  border:0;
  border-radius:0!important;
  background:#eef1f3;
  box-shadow:0 16px 38px rgba(11,29,48,.11);
}
body.v15 .v153-page-hero .v153-page-hero-image img{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:0!important;
  transform:none!important;
}
/* Product-on-white OEM hero: preserve the complete product silhouette. */
body.v15.page-oem .v153-page-hero .v153-page-hero-image{background:#fff}
body.v15.page-oem .v153-page-hero .v153-page-hero-image img{
  object-fit:contain!important;
  padding:18px!important;
}
body.v15.page-products .v153-page-hero .v153-page-hero-image img{object-position:center 55%!important}
body.v15.page-industries .v153-page-hero .v153-page-hero-image img{object-position:center 52%!important}
body.v15.page-manufacturing .v153-page-hero .v153-page-hero-image img{object-position:center 58%!important}
body.v15.page-projects .v153-page-hero .v153-page-hero-image img{object-position:center!important}
body.v15.page-contact .v153-page-hero .v153-page-hero-image img{object-position:center 55%!important}

/* Industries: force all images to remain inside square-cornered frames. */
body.v15.page-industries .industry-list,
body.v15.page-industries .industry-list > article,
body.v15.page-industries .industry-list > article > img{
  box-sizing:border-box!important;
  max-width:100%!important;
  min-width:0!important;
  border-radius:0!important;
}
body.v15.page-industries .industry-list > article{overflow:hidden!important}
body.v15.page-industries .industry-list > article > img{transform:none!important}
body.v15.page-industries .industry-list > article:hover > img{transform:none!important}

/* Manufacturing: clean OEM-style 3x2 gallery with equal, proportional frames. */
body.v15.page-manufacturing .machinery-gallery.manufacturing-oem-layout{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  padding:0!important;
  overflow:visible!important;
}
body.v15.page-manufacturing .machinery-gallery figure,
body.v15.page-manufacturing .machinery-gallery figure.wide{
  grid-column:auto!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid #dde3e7!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.v15.page-manufacturing .machinery-gallery figure > img,
body.v15.page-manufacturing .machinery-gallery figure.wide > img,
body.v15.page-manufacturing .machinery-gallery figure:not(.wide) > img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  max-width:100%!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:0!important;
  transform:none!important;
  background:#eef1f3!important;
}
body.v15.page-manufacturing .machinery-gallery figcaption{
  flex:1 1 auto;
  padding:17px 18px 18px!important;
  border-top:1px solid #e3e7ea!important;
  border-radius:0!important;
  background:#fff!important;
}
body.v15.page-manufacturing .machinery-gallery figcaption b{display:block;margin-bottom:5px}
body.v15.page-manufacturing .machinery-gallery figcaption span{display:block}

/* Projects: sharp rectangular frames throughout. */
body.v15.page-projects .projects-grid article,
body.v15.page-projects .projects-grid article img,
body.v15.page-projects .project-image-link,
body.v15.page-projects [class*="project"] img{
  border-radius:0!important;
}
body.v15.page-projects .projects-grid article,
body.v15.page-projects .project-image-link{overflow:hidden!important}
body.v15.page-projects .projects-grid img{
  display:block;
  width:100%!important;
  max-width:100%!important;
  object-fit:cover!important;
  transform:none!important;
}

@media(max-width:1000px){
  body.v15.page-index .hero,
  body.v15 .v153-page-hero{
    grid-template-columns:1fr!important;
    width:min(100% - 32px,900px)!important;
  }
  body.v15.page-index .hero-image,
  body.v15 .v153-page-hero .v153-page-hero-image{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    justify-self:stretch!important;
  }
  body.v15.page-manufacturing .machinery-gallery.manufacturing-oem-layout{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  body.v15.page-index .hero,
  body.v15 .v153-page-hero{width:min(100% - 24px,900px)!important;padding-block:42px!important}
  body.v15.page-index .hero-image,
  body.v15 .v153-page-hero .v153-page-hero-image{aspect-ratio:4/3!important}
  body.v15.page-manufacturing .machinery-gallery.manufacturing-oem-layout{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
}

/* V15.4 — HERO FIT & INDUSTRY IMAGE CONTROL */
body.v15.page-about .v153-page-hero .v153-page-hero-image img{object-fit:cover!important;object-position:center 52%!important}
body.v15.page-products .v153-page-hero .v153-page-hero-image{background:#fff!important}
body.v15.page-products .v153-page-hero .v153-page-hero-image img{object-fit:contain!important;object-position:center!important;padding:18px!important}
body.v15.page-industries .v153-page-hero .v153-page-hero-image{background:#eef3f6!important}
body.v15.page-industries .v153-page-hero .v153-page-hero-image img{object-fit:contain!important;object-position:center!important;padding:0!important}
body.v15.page-industries .industry-featured-hero{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr)!important;align-items:stretch!important;overflow:hidden!important;border-radius:0!important}
body.v15.page-industries .industry-featured-hero>img{display:block!important;width:100%!important;height:100%!important;min-height:320px!important;max-width:100%!important;margin:0!important;padding:18px!important;object-fit:contain!important;object-position:center!important;background:#f6f8f9!important;border-radius:0!important;transform:none!important}
body.v15.page-industries .industry-featured-hero:hover>img{transform:none!important}
body.v15.page-projects .v153-page-hero .v153-page-hero-image{overflow:hidden!important}
body.v15.page-projects .v153-page-hero .v153-page-hero-image img{width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;background:#fff!important;padding:12px!important;transform:none!important}
body.v15.page-articles .v153-page-hero .v153-page-hero-image img,body.v15.page-downloads .v153-page-hero .v153-page-hero-image img{object-fit:cover!important;object-position:center!important}
@media(max-width:900px){body.v15.page-industries .industry-featured-hero{grid-template-columns:1fr!important}body.v15.page-industries .industry-featured-hero>img{min-height:0!important;height:auto!important;aspect-ratio:16/9!important}}

/* =========================================================
   V15.5 — RESPONSIVE NAVIGATION & GLOBAL UX POLISH
   ========================================================= */
html{scroll-behavior:smooth}
.skip-link{
  position:fixed;left:18px;top:12px;z-index:9999;
  padding:11px 15px;background:#0b1d30;color:#fff;text-decoration:none;
  transform:translateY(-160%);transition:transform .18s ease;border-radius:0;
}
.skip-link:focus{transform:translateY(0)}
.site-header nav a[aria-current="page"]{color:#0b1d30;font-weight:700}
.site-header nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav-toggle{display:none;width:44px;height:44px;padding:10px;border:0;background:transparent;cursor:pointer}
.nav-toggle span{display:block;width:24px;height:2px;margin:5px auto;background:#0b1d30;transition:transform .2s ease,opacity .2s ease}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Keep all media safely inside their layout boxes. */
body.v15 main img{max-width:100%;box-sizing:border-box}
body.v15 figure{max-width:100%;box-sizing:border-box}
body.v15 .v153-page-hero .v153-page-hero-image,
body.v15 .hero-image{isolation:isolate}
body.v15 .v153-page-hero .v153-page-hero-image img,
body.v15 .hero-image img{backface-visibility:hidden}

/* More controlled desktop rhythm without changing content. */
body.v15 main>section:not(.hero):not(.v153-page-hero){scroll-margin-top:96px}
body.v15 .button,body.v15 button,body.v15 a{outline-offset:4px}
body.v15 :focus-visible{outline:2px solid #1c6b91;outline-offset:4px}

@media(max-width:1080px){
  .site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
  .nav-toggle{display:block;order:2;margin-left:auto}
  .site-header .actions{order:3}
  .site-header nav{
    position:absolute;left:0;right:0;top:100%;display:none!important;
    grid-template-columns:1fr!important;gap:0!important;padding:12px 20px 20px;
    background:#fff;border-top:1px solid #e5eaed;border-bottom:1px solid #dfe5e8;
    box-shadow:0 18px 35px rgba(11,29,48,.10);max-height:calc(100vh - 76px);overflow:auto;
  }
  .site-header.nav-open nav{display:grid!important}
  .site-header nav a{display:block;padding:12px 4px;border-bottom:1px solid #edf0f2}
  .site-header nav a:last-child{border-bottom:0}
  body.nav-lock{overflow:hidden}
}
@media(max-width:620px){
  .site-header{padding-inline:14px}
  .site-header .brand span{display:none}
  .site-header .actions{gap:3px}
  .site-header nav{padding-inline:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav-toggle span,.skip-link{transition:none}}

/* PKI CMS v15.4 — approved image, navigation and About alignment fixes */
.export-story-heading{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr);
  grid-template-areas:
    "eyebrow copy"
    "title copy";
  column-gap:clamp(56px,9vw,170px);
  row-gap:26px;
  align-items:center;
  margin-bottom:34px;
}
.export-story-heading > .eyebrow{grid-area:eyebrow;align-self:end;margin:0}
.export-story-heading > h2{grid-area:title;align-self:start;margin:0;max-width:650px}
.export-story-heading > p:last-child{grid-area:copy;align-self:center;margin:0;max-width:760px}
.site-header nav a[aria-current="page"]{position:relative}
.site-header nav a[aria-current="page"]::after{opacity:1;transform:scaleX(1)}
@media(max-width:900px){
  .export-story-heading{
    grid-template-columns:1fr;
    grid-template-areas:"eyebrow" "title" "copy";
    row-gap:18px;
  }
}

/* ================================================================
   PKI CMS v15.8 — HERO-ONLY STANDARDIZATION
   Scope: make every existing inner-page hero image use the same
   position, size, frame, and image treatment as the Home hero.
   No other component is modified.
   ================================================================ */
body.v15 .v153-page-hero,
body.v15 .v154-page-hero{
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  align-items:center!important;
  gap:clamp(34px,5vw,76px)!important;
  width:min(1440px,calc(100% - 40px))!important;
  max-width:1440px!important;
  margin-inline:auto!important;
  padding-block:clamp(54px,6vw,82px)!important;
}
body.v15 .v153-page-hero .v153-hero-copy,
body.v15 .v154-page-hero .v154-hero-copy{
  min-width:0!important;
  max-width:650px!important;
}
body.v15 .v153-page-hero .v153-page-hero-image,
body.v15 .v154-page-hero .v154-page-hero-image{
  box-sizing:border-box!important;
  width:min(100%,744px)!important;
  max-width:744px!important;
  height:349px!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  justify-self:end!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background:var(--soft)!important;
  box-shadow:none!important;
}
body.v15 .v153-page-hero .v153-page-hero-image img,
body.v15 .v154-page-hero .v154-page-hero-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center 46%!important;
  border-radius:0!important;
  transform:none!important;
}
body.v15 .v153-page-hero .v153-page-hero-image:hover img,
body.v15 .v154-page-hero .v154-page-hero-image:hover img{
  transform:scale(1.015)!important;
}
@media(max-width:980px){
  body.v15 .v153-page-hero,
  body.v15 .v154-page-hero{
    grid-template-columns:1fr!important;
    padding-top:44px!important;
  }
  body.v15 .v153-page-hero .v153-page-hero-image,
  body.v15 .v154-page-hero .v154-page-hero-image{
    width:100%!important;
    max-width:none!important;
    height:320px!important;
    justify-self:stretch!important;
  }
}
@media(max-width:620px){
  body.v15 .v153-page-hero,
  body.v15 .v154-page-hero{
    width:min(100% - 24px,900px)!important;
    padding-top:34px!important;
    padding-bottom:42px!important;
    gap:32px!important;
  }
  body.v15 .v153-page-hero .v153-page-hero-image,
  body.v15 .v154-page-hero .v154-page-hero-image{
    height:235px!important;
  }
}

/* ================================================================
   PKI CMS v16.0 — FINAL TWO-POINT FIX
   1) Industries hero: contain all media inside the standard hero frame.
   2) Manufacturing OEM / ODM band: stack label above heading at left,
      with the existing button at right. No typography or frame changes.
   ================================================================ */
body.v15 .v154-page-hero .v154-page-hero-image,
body.v15 .v154-page-hero .v154-page-hero-image img{
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
}
body.v15 .v154-page-hero .v154-page-hero-image{
  position:relative!important;
  contain:layout paint!important;
  overflow:hidden!important;
}
body.v15 .v154-page-hero .v154-page-hero-image img{
  display:block!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
}

/* Industries page only: prevent the hero artwork from exceeding its frame. */
body.v15.page-industries .v154-page-hero,
body.v15.page-id-industries .v154-page-hero,
body.v15 .v154-page-hero:has(img[src*="industries-hero"]){
  overflow:hidden!important;
}
body.v15.page-industries .v154-page-hero-image img,
body.v15.page-id-industries .v154-page-hero-image img,
body.v15 .v154-page-hero-image:has(img[src*="industries-hero"]) img{
  object-fit:cover!important;
  object-position:center!important;
}

/* Manufacturing page only: preserve the existing band, type and button styles. */
body.v15.page-manufacturing .oem-band .shell,
body.v15.page-id-manufacturing .oem-band .shell,
body.v15 .machinery-section + .oem-band .shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  grid-template-areas:
    "label action"
    "heading action"!important;
  column-gap:40px!important;
  row-gap:18px!important;
  align-items:center!important;
}
body.v15.page-manufacturing .oem-band .shell > .eyebrow,
body.v15.page-id-manufacturing .oem-band .shell > .eyebrow,
body.v15 .machinery-section + .oem-band .shell > .eyebrow{
  grid-area:label!important;
  align-self:end!important;
  margin:0!important;
}
body.v15.page-manufacturing .oem-band .shell > h2,
body.v15.page-id-manufacturing .oem-band .shell > h2,
body.v15 .machinery-section + .oem-band .shell > h2{
  grid-area:heading!important;
  align-self:start!important;
  margin:0!important;
  max-width:100%!important;
}
body.v15.page-manufacturing .oem-band .shell > .button,
body.v15.page-id-manufacturing .oem-band .shell > .button,
body.v15 .machinery-section + .oem-band .shell > .button{
  grid-area:action!important;
  justify-self:end!important;
  align-self:center!important;
}
@media(max-width:900px){
  body.v15.page-manufacturing .oem-band .shell,
  body.v15.page-id-manufacturing .oem-band .shell,
  body.v15 .machinery-section + .oem-band .shell{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto auto!important;
    grid-template-areas:"label" "heading" "action"!important;
  }
  body.v15.page-manufacturing .oem-band .shell > .button,
  body.v15.page-id-manufacturing .oem-band .shell > .button,
  body.v15 .machinery-section + .oem-band .shell > .button{
    justify-self:start!important;
  }
}

/* ================================================================
   PKI CMS v16.0 — UNIFIED HERO FRAME (ALL PAGES)
   Scope: hero media only. Every inner-page hero now uses the exact
   Home hero frame behavior and can never overflow its boundaries.
   All other layout, typography and components remain unchanged.
   ================================================================ */
body.v15:not(.page-index) :is(.v153-page-hero,.v154-page-hero) {
  min-width:0!important;
  overflow:visible!important;
}
body.v15:not(.page-index) :is(.v153-page-hero-image,.v154-page-hero-image) {
  position:relative!important;
  display:block!important;
  box-sizing:border-box!important;
  width:min(100%,744px)!important;
  max-width:744px!important;
  height:349px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  justify-self:end!important;
  overflow:hidden!important;
  clip-path:inset(0)!important;
  contain:layout paint!important;
  border:0!important;
  border-radius:0!important;
  background:var(--soft)!important;
  box-shadow:none!important;
}
body.v15:not(.page-index) :is(.v153-page-hero-image,.v154-page-hero-image) > :is(img,picture,video),
body.v15:not(.page-index) :is(.v153-page-hero-image,.v154-page-hero-image) picture > img {
  position:static!important;
  display:block!important;
  box-sizing:border-box!important;
  inset:auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center 46%!important;
  border:0!important;
  border-radius:0!important;
  transform:none!important;
}
body.v15:not(.page-index) :is(.v153-page-hero-image,.v154-page-hero-image):hover > img,
body.v15:not(.page-index) :is(.v153-page-hero-image,.v154-page-hero-image):hover picture > img {
  transform:scale(1.015)!important;
}
/* Neutralize older page-specific hero padding/contain rules that could
   make artwork extend outside the common Home-style frame. */
body.v15.page-products :is(.v153-page-hero-image,.v154-page-hero-image) img,
body.v15.page-industries :is(.v153-page-hero-image,.v154-page-hero-image) img,
body.v15.page-projects :is(.v153-page-hero-image,.v154-page-hero-image) img,
body.v15.page-oem :is(.v153-page-hero-image,.v154-page-hero-image) img {
  padding:0!important;
  object-fit:cover!important;
  background:transparent!important;
}
@media(max-width:980px){
  body.v15:not(.page-index) :is(.v153-page-hero-image,.v154-page-hero-image){
    width:100%!important;
    max-width:none!important;
    height:320px!important;
    justify-self:stretch!important;
  }
}
@media(max-width:620px){
  body.v15:not(.page-index) :is(.v153-page-hero-image,.v154-page-hero-image){
    height:235px!important;
  }
}


/* ================================================================
   PKI CMS v16.1 — TARGETED OVERFLOW FIX ONLY
   Scope approved by client:
   - Hero images: Products, Industries, Manufacturing, OEM, Projects.
   - All product/project images inside the Projects gallery.
   No sizes, typography, spacing, frames or other components changed.
   ================================================================ */
body.v15:is(.page-products,.page-industries,.page-manufacturing,.page-oem,.page-projects)
:is(.v153-page-hero-image,.v154-page-hero-image){
  position:relative!important;
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  clip-path:inset(0)!important;
  contain:layout paint!important;
  isolation:isolate!important;
}
body.v15:is(.page-products,.page-industries,.page-manufacturing,.page-oem,.page-projects)
:is(.v153-page-hero-image,.v154-page-hero-image) > img,
body.v15:is(.page-products,.page-industries,.page-manufacturing,.page-oem,.page-projects)
:is(.v153-page-hero-image,.v154-page-hero-image) > picture,
body.v15:is(.page-products,.page-industries,.page-manufacturing,.page-oem,.page-projects)
:is(.v153-page-hero-image,.v154-page-hero-image) > picture > img{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* Projects gallery: retain every existing card/frame dimension while
   ensuring the complete product photo stays inside its frame. */
body.v15.page-projects .project-uniform-grid article,
body.v15.page-projects .project-image-link{
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
body.v15.page-projects .project-image-link{
  position:relative!important;
  contain:layout paint!important;
  isolation:isolate!important;
}
body.v15.page-projects .project-image-link > img{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#f4f6f7!important;
}


/* PKI v16.8.2 — requested logo sizing only.
   Header logo: +15%, anchored at the upper-left position.
   Footer logo: +10%, anchored at the lower-right position. */
.brand > img,
a.brand > img {
  transform: scale(1.15);
  transform-origin: left center;
}

footer > img:first-child {
  transform: scale(1.10);
  transform-origin: right center;
}

/* =========================================================
   V21.0.1 — HEADER NAVIGATION REFINEMENT ONLY
   Larger desktop navigation, balanced spacing, refined active
   state, discreet dropdown treatment and compact sticky state.
   ========================================================= */
@media (min-width:1081px){
  .site-header{
    padding-top:3px;
    padding-bottom:3px;
    column-gap:clamp(18px,2vw,34px);
    transition:padding .25s ease,background-color .25s ease,box-shadow .25s ease;
  }
  .site-header .brand img{
    height:71px;
    transition:height .25s ease;
  }
  .site-header nav{
    gap:18px;
  }
  .site-header nav a{
    position:relative;
    font-size:17px;
    font-weight:600;
    line-height:1.2;
    letter-spacing:.2px;
    white-space:nowrap;
    transition:color .25s ease,opacity .25s ease,font-size .25s ease;
  }
  .site-header nav a[aria-current="page"],
  .site-header nav a.is-current{
    font-weight:700;
  }
  .site-header nav a[aria-current="page"]::after,
  .site-header nav a.is-current::after{
    height:2px;
    bottom:-9px;
  }
  .site-header nav ul,
  .site-header nav .sub-menu{
    margin:0;
    padding:10px;
    list-style:none;
  }
  .site-header nav .sub-menu{
    min-width:220px;
    background:#fff;
    border:1px solid #e5eaed;
    border-radius:6px;
    box-shadow:0 18px 40px rgba(11,29,48,.12);
  }
  .site-header nav .sub-menu a{
    display:block;
    padding:11px 13px;
    font-size:15px;
    line-height:1.35;
    border-radius:4px;
  }
  .site-header nav .sub-menu a:hover,
  .site-header nav .sub-menu a:focus-visible{
    background:#f4f7f8;
  }
  .site-header.is-scrolled{
    padding-top:0;
    padding-bottom:0;
    background:rgba(255,255,255,.98);
    box-shadow:0 8px 24px rgba(11,29,48,.07);
  }
  .site-header.is-scrolled .brand img{height:62px}
  .site-header.is-scrolled nav a{font-size:16px}
}
@media (min-width:1081px) and (max-width:1319px){
  .site-header nav{gap:12px}
  .site-header nav a{font-size:15px}
  .site-header .brand img{height:64px}
  .site-header.is-scrolled .brand img{height:58px}
  .site-header.is-scrolled nav a{font-size:14.5px}
}
@media(prefers-reduced-motion:reduce){
  .site-header,.site-header .brand img,.site-header nav a{transition:none!important}
}
