/* Shared refinements for the home page and the editorial pages. */
:is(.yx-series-card,.yx-product-card,.yx-type-card,.yx-partner-card,.yx-certificate-card,
    .yx-sales-card,.process-card,.content-card,.service-step,.contact-card,
    .ind_news_item,.quality-card,.quality-tile,
    .ind_case_main .mbom li,.ind_serve_main li,.ind_about_main .mleft){
  border-radius:14px!important;
  overflow:hidden;
}

/* The original fly-out used seven 60px rows inside a 250px panel. */
.pc_header .hidden_nav_product .hidden_nav_main{height:270px;overflow:hidden}
.pc_header .hidden_nav_product .mright ul{padding:22px 24px}
.pc_header .hidden_nav_product .mright ul li{height:65px;width:205px}
.pc_header .hidden_nav_product .hidden_nav_tabs_item dl{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:18px;padding:20px 22px;width:100%;
}
.pc_header .hidden_nav_product .hidden_nav_tabs_item dl dd{
  width:auto;height:55px;min-width:0;
}
.pc_header .hidden_nav_product .hidden_nav_tabs_item dl dd a{font-size:14px}

/* Keep the editorial header on one line at desktop widths, like the homepage. */
@media (min-width:1020px){
  .sub-header{
    display:grid;grid-template-columns:180px minmax(0,1fr) auto;
    align-items:center;column-gap:13px;padding:12px 2.5%;min-height:86px;
  }
  .sub-header>a img{width:180px;height:48px}
  .sub-header nav{
    display:flex;flex-wrap:nowrap;justify-content:space-between;
    align-items:center;gap:3px;min-width:0;font-size:13px;
  }
  .sub-header nav .yx-nav-item{flex:none;white-space:nowrap;gap:0}
  .sub-header nav .yx-nav-item>a{padding:9px 0}
  .sub-header nav .yx-nav-toggle{padding:4px 1px}
  .sub-header>.yx-language{position:relative!important;margin:0;justify-self:end}
}
@media (max-width:1019px){
  .sub-header{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 16px}
  .sub-header nav{order:3;width:100%;justify-content:space-between;gap:4px 10px}
  .sub-header>.yx-language{margin-left:auto}
}
.yx-nav-dropdown{border-radius:0 0 12px 12px}

/* Manufacturing images have HTML height attributes, so set an explicit size. */
.yx-process{padding:52px 5%}
.process-grid{gap:16px}
.process-card>img{height:180px!important;aspect-ratio:auto!important;object-fit:cover}
.process-copy{padding:16px 17px;gap:5px}
.process-copy strong{font-size:17px;line-height:1.45}
.process-copy em{margin-top:3px}

/* Make service outcomes visible before the supporting explanation. */
.service-overview{max-width:830px;color:#5d6872;margin:0 0 25px}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:30px}
.service-step{padding:22px 24px;background:#f7f8fa}
.service-step h2{font-size:19px;margin:6px 0 8px}
.service-step p{font-size:14px;line-height:1.75;margin:0 0 13px}
.service-step .service-outcome{font-size:13px;color:#a51b25;font-weight:600;margin:0}
.service-contact{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.service-contact a{display:inline-block;padding:9px 15px;border:1px solid #cf2832;border-radius:9px;color:#bd202b}
.service-checklist{background:#f7f8fa;border-radius:14px;padding:22px 25px;margin-bottom:26px}
.service-checklist ul{margin:0;columns:2}

/* Evidence is shown as images, with issuer labels kept separate. */
.quality-lead{font-size:16px;color:#596570;max-width:900px;margin:0 0 24px}
.quality-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 34px}
.quality-card{padding:20px 22px;border:1px solid #e4e8ec;background:#f7f8fa}
.quality-card strong{display:block;font-size:18px;color:#252d35;margin-bottom:6px}
.quality-card p{color:#65717c;margin:0;font-size:14px}
.quality-section{margin:0 0 42px}
.quality-section>p{color:#66727c;margin:0 0 18px}
.quality-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.quality-tile{display:block;border:1px solid #e5e9ed;background:#fff;transition:transform .2s,border-color .2s}
.quality-tile:hover{transform:translateY(-3px);border-color:#c9212a}
.quality-tile img{display:block;width:100%;height:175px;object-fit:contain;background:#f7f8fa;padding:8px}
.quality-tile span{display:block;padding:10px 12px 0;color:#26313a;font-size:13px;font-weight:600;min-height:48px;line-height:1.45}
.quality-tile small{display:block;padding:0 12px 12px;color:#83909b;font-size:11px}
.quality-note{border-left:3px solid #cf2832;background:#f7f8fa;padding:15px 18px;color:#66727c;font-size:13px}

@media (max-width:900px){
  .quality-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:640px){
  .service-grid,.quality-highlights{grid-template-columns:1fr}
  .quality-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .quality-tile img{height:135px}
  .service-checklist ul{columns:1}
  .process-card>img{height:190px!important}
}
