/* Yuanchen: machined-metal navigation and controls, with a measured amber highlight. */
body.nl-design-active .site-header,body.home.nl-design-active .site-header{
  background:#0c1822;color:#f5f8fa;border-bottom:1px solid #344957;
  box-shadow:0 1px 0 rgba(255,255,255,.025) inset;
}
body.nl-design-active .site-header .header-inner{min-height:86px;gap:clamp(18px,2vw,36px)}
body.nl-design-active .site-header .brand{color:#f3f7fa;font-size:19px;letter-spacing:.015em;gap:12px}
body.nl-design-active .site-header .brand-avatar-wrap{display:block;flex:none}
body.nl-design-active .site-header .brand-avatar{width:68px;height:68px;object-fit:contain;border:0;border-radius:0;box-shadow:none}
body.nl-design-active .site-header .brand small{color:#b6c9d5;font-size:10px;letter-spacing:.055em;margin-top:3px}
body.nl-design-active .site-header .primary-nav{gap:clamp(16px,1.55vw,28px)}
body.nl-design-active .site-header .primary-nav>ul{gap:clamp(18px,1.7vw,30px)}
body.nl-design-active .site-header .primary-nav>ul>li>a{
  position:relative;color:#eaf1f5;font-size:14px;font-weight:600;white-space:nowrap;
}
body.nl-design-active .site-header .primary-nav>ul>li>a:after{
  content:"";position:absolute;left:0;right:100%;bottom:3px;height:2px;background:#d8a351;transition:right .2s ease;
}
body.nl-design-active .site-header .primary-nav>ul>li>a:hover,
body.nl-design-active .site-header .primary-nav>ul>.current-menu-item>a{color:#fff}
body.nl-design-active .site-header .primary-nav>ul>li>a:hover:after,
body.nl-design-active .site-header .primary-nav>ul>.current-menu-item>a:after{right:0}
body.nl-design-active .site-header .menu-toggle{background:#132733;border:1px solid #7d94a2;color:#fff}
body.nl-design-active .site-header .menu-toggle>span:not(.screen-reader-text){background:#eef5f9}

/* The flags identify the customer's target markets; names remain available to screen readers. */
body.nl-design-active .yc-language{color:#eff5f8}
.yc-language__flag{display:block;width:24px;height:16px;flex:0 0 24px;object-fit:cover;border:1px solid rgba(14,31,43,.18);box-shadow:0 0 0 1px rgba(255,255,255,.18)}
body.nl-design-active .yc-language summary{
  min-height:46px;gap:9px;padding:9px 12px;color:#f2f7fa;border:1px solid #68808f;
  background:linear-gradient(180deg,#2c414e 0%,#1b303d 48%,#142631 50%,#1e3441 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);font-size:13px;letter-spacing:.05em;
}
.yc-language__code{font-weight:750;line-height:1}
.yc-language__chevron{font-size:15px;line-height:1;color:#c5d5df}
body.nl-design-active .primary-nav .yc-language__menu{width:220px;padding:7px;background:#f9fbfc;border:1px solid #aabac4;box-shadow:0 15px 30px rgba(5,17,27,.28)}
body.nl-design-active .primary-nav .yc-language__menu li a,
body.home.nl-design-active .primary-nav .yc-language__menu li a{display:flex;align-items:center;gap:12px;min-height:43px;color:#162b3b;font-size:14px;font-weight:600;text-decoration:none}
body.nl-design-active .primary-nav .yc-language__menu li a:hover,
body.nl-design-active .primary-nav .yc-language__menu li a:focus-visible,
body.nl-design-active .primary-nav .yc-language__menu li a[aria-current=page]{background:#e6edf1;color:#102b3d}

/* Shared controls are defined in precision-actions.css. */

/* A small amount of warm, cut-metal colour within the existing engraved lettering. */
.home .hero-engrave-char--amber{
  color:#e6b967;-webkit-text-stroke:.35px rgba(255,224,159,.75);
  text-shadow:0 1px 0 #d9aa5b,0 2px 0 #a66e29,0 3px 0 #79501d,0 4px 0 #503619,0 7px 10px rgba(0,0,0,.75);
}
.home .hero-engrave-char--amber:after{
  background:linear-gradient(165deg,#fff0c5 3%,#efce84 30%,#d09a50 46%,#ffe4a4 52%,#e0b367 73%,#d09a50 100%);
  -webkit-background-clip:text;background-clip:text;
}

/* Keep section transitions compact and keep all sections visible before scrolling. */
.home.nl-design-active .home-content>.wp-block-group{padding-block:clamp(54px,4.4vw,76px)}
.home .home-content>.wp-block-group>p:last-child:empty{display:none}
.home .home-content>.wp-block-group>:last-child{margin-bottom:0}
/* The full component stays visible in the same landscape frame as the catalog. */
.main-product-image img{aspect-ratio:3/2;object-fit:contain}

@media(min-width:1200px){
  .home .header-inner.wrap,.home .hero-grid.wrap,.home .closing-cta>.wrap,.home .site-footer>.wrap,
  .home.nl-design-active .home-content>.wp-block-group:not([data-home-section="video"]):not([data-home-section="markets"]):not([data-home-section="quality"]):not(.has-background){width:min(calc(var(--max) + 640px),calc(100% - 96px))}
  .home.nl-design-active .home-content>.wp-block-group[data-home-section="video"],
  .home.nl-design-active .home-content>.wp-block-group[data-home-section="markets"],
  .home.nl-design-active .home-content>.wp-block-group[data-home-section="quality"],
  .home.nl-design-active .home-content>.wp-block-group.has-background{width:100%;padding-inline:max(48px,calc((100% - var(--max) - 640px)/2))}
  .home.nl-design-active .hero-copy,.home.nl-hero-centered .hero-copy{width:48%;max-width:860px;padding-block:clamp(75px,8vh,130px)}
  body.home.nl-design-active .hero h1{max-width:100%;font-size:clamp(5rem,6.25vw,8.5rem);line-height:1.01;margin-bottom:clamp(28px,2.4vw,42px)}
  html:not([lang=en]) body.home.nl-design-active .hero h1{font-size:clamp(4.3rem,5.2vw,6.4rem)}
  .home .hero-kicker{font-size:clamp(12px,.75vw,15px);margin-bottom:clamp(24px,2vw,34px)}
  .home .hero-description{max-width:680px;font-size:clamp(18px,1.2vw,22px);line-height:1.65}
  .home .hero-actions{gap:14px;margin-top:clamp(32px,3vw,46px)}
  .home.nl-design-active .hero .button{min-height:58px;padding:16px 26px;font-size:15px}
}
@media(min-width:901px){
  .home.nl-design-active .hero,.home.nl-design-active .hero-grid,.home.nl-hero-centered .hero-grid{min-height:calc(100svh - 87px)}
}
@media(min-width:1800px){
  body.nl-design-active .site-header .header-inner{min-height:96px}
  body.nl-design-active .site-header .brand{font-size:21px}
  body.nl-design-active .site-header .brand-avatar{width:76px;height:76px}
  body.nl-design-active .site-header .brand small{font-size:11px}
  body.nl-design-active .site-header .primary-nav>ul>li>a{font-size:16px}
  body.nl-design-active .site-header .nav-quote{min-height:52px;font-size:15px}
  body.nl-design-active .yc-language summary{min-height:48px;font-size:14px}
  .home.nl-design-active .hero,.home.nl-design-active .hero-grid,.home.nl-hero-centered .hero-grid{min-height:calc(100svh - 97px)}
}
/* Keep longer translations and the quote action on one line on small laptops. */
@media(min-width:1101px) and (max-width:1250px){
  body.nl-design-active .site-header .header-inner{gap:16px}
  body.nl-design-active .site-header .primary-nav{gap:14px}
  body.nl-design-active .site-header .primary-nav>ul{gap:14px}
  body.nl-design-active .site-header .nav-quote{flex:0 0 auto;gap:8px;padding:12px 13px;font-size:13px;white-space:nowrap}
}
@media(max-width:1100px){
  body.nl-design-active .site-header .primary-nav.open{background:#101f2a}
}
@media(max-width:1100px) and (min-width:901px){
  html[lang=en] .menu-toggle{display:flex;width:44px;height:44px;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:3px}
  html[lang=en] .menu-toggle>span:not(.screen-reader-text){width:19px;height:2px}
  html[lang=en] .primary-nav{display:none;position:absolute;top:100%;left:0;width:100%;padding:20px 28px 28px;background:#101f2a;border-bottom:1px solid #344957;box-shadow:0 15px 20px rgba(8,22,32,.16)}
  html[lang=en] .primary-nav.open{display:block;max-height:calc(100dvh - 86px);overflow-y:auto}
  html[lang=en] .primary-nav>ul{display:block}
  html[lang=en] .primary-nav>ul>li>a{font-size:16px;padding:12px 0;border-bottom:1px solid #344957}
  html[lang=en] .primary-nav .nav-quote{margin-top:20px}
  html[lang=en] .yc-language{margin-top:14px;max-width:100%}
  html[lang=en] .yc-language summary{justify-content:flex-start;max-width:150px}
  html[lang=en] .primary-nav .yc-language__menu{position:static;width:100%;max-height:none;margin-top:8px;grid-template-columns:repeat(2,minmax(0,1fr));box-shadow:none}
  html:not([lang=en]) body.nl-design-active .primary-nav .yc-language__menu{width:100%}
}
@media(max-width:900px){
  body.nl-design-active .site-header .header-inner{min-height:78px}
  body.nl-design-active .site-header .primary-nav>ul>li>a{white-space:normal}
  body.nl-design-active .primary-nav .yc-language__menu{width:100%}
}
@media(min-width:651px) and (max-width:900px){
  .home.nl-design-active .hero,.home.nl-design-active .hero-grid,.home.nl-hero-centered .hero-grid{min-height:calc(100svh - 79px)}
}
@media(max-width:650px){
  .demo-bar .wrap{padding-block:4px;font-size:11px;line-height:1.3}
  /* Keep one compact inquiry action visible; all contact methods remain in the footer. */
  .floating-tools>a:not(:last-of-type){display:none}
  body.nl-design-active .site-header .header-inner{min-height:72px}
  body.nl-design-active .site-header .brand{font-size:16px;gap:9px;min-width:0}
  body.nl-design-active .site-header .brand-avatar{width:56px;height:56px;flex:none}
  body.nl-design-active .site-header .brand>span{min-width:0}
  body.nl-design-active .site-header .brand small{max-width:245px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
  body.nl-design-active .primary-nav .yc-language__menu{width:100%}
  .home.nl-design-active .home-content>.wp-block-group,
  .home.nl-design-active .home-content>.wp-block-group[data-home-section="video"],
  .home.nl-design-active .home-content>.wp-block-group[data-home-section="markets"]{padding-block:44px}
  .home.nl-design-active .hero,.home.nl-design-active .hero-grid,.home.nl-hero-centered .hero-grid{min-height:calc(100svh - 73px)}
  .catalog{grid-template-columns:minmax(0,1fr)}
  .catalog-results{min-width:0}
  .catalog-chips{flex-wrap:nowrap;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:8px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#9aadb9 #edf2f5}
  .nl-design-active .catalog-chips a{flex:0 0 auto;max-width:calc(100vw - 56px);min-height:44px;white-space:normal;overflow-wrap:anywhere;line-height:1.35;scroll-snap-align:start}
  .catalog-chips::-webkit-scrollbar{height:4px}
  .catalog-chips::-webkit-scrollbar-track{background:#edf2f5}
  .catalog-chips::-webkit-scrollbar-thumb{background:#9aadb9}
}
@media(max-width:360px){
  .home.nl-design-active .hero,.home.nl-design-active .hero-grid,.home.nl-hero-centered .hero-grid{min-height:max(620px,calc(100svh - 73px))}
}
@media(prefers-reduced-motion:reduce){
 body.nl-design-active .site-header .primary-nav>ul>li>a:after{transition:none}
}

/* Evidence supplied by the client: compact, readable information without document scans. */
.yc-quality-evidence{margin:24px 0 36px;padding:clamp(20px,3vw,32px);background:#f1f5f8;border-left:3px solid #d97706}
.yc-quality-evidence h3{margin:0 0 10px;font-size:1.35rem;line-height:1.25}
.yc-quality-evidence>p{max-width:72ch;margin:0 0 26px}
.yc-quality-evidence .yc-standard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.yc-quality-evidence .yc-standard-grid article{min-width:0;padding-top:16px;border-top:1px solid #aabdc9}
.yc-quality-evidence h4{margin:0 0 8px;font-size:1rem;line-height:1.4;color:#102a40;overflow-wrap:anywhere}
.yc-quality-evidence .yc-standard-grid p{margin:0;line-height:1.6}
.yc-project-feature{margin:32px 0;padding:clamp(22px,3vw,34px);border-top:1px solid #bdcbd5;border-bottom:1px solid #bdcbd5}
.yc-project-feature .category{margin:0 0 10px}
.yc-project-feature h3{margin:0 0 10px;font-size:clamp(1.45rem,2vw,1.8rem)}
.yc-project-feature>p:not(.category){max-width:68ch;margin:0 0 16px}
.yc-project-feature .text-link{display:inline-block;min-height:44px;padding:10px 0}
.case-archive .story-card-text-only{grid-column:1/-1;padding:28px 0;border-top:1px solid #bdcbd5;border-bottom:1px solid #bdcbd5}
.case-archive .story-card-text-only>div{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,1.4fr);column-gap:clamp(32px,6vw,96px);row-gap:4px}
.case-archive .story-card-text-only .category{grid-column:1;grid-row:1;margin:0}
.case-archive .story-card-text-only h2{grid-column:1;grid-row:2/4;margin:0}
.case-archive .story-card-text-only p:not(.category){grid-column:2;grid-row:1/3;max-width:54ch;margin:0}
.case-archive .story-card-text-only .text-link{grid-column:2;grid-row:3}
@media(max-width:650px){.yc-quality-evidence .yc-standard-grid{grid-template-columns:minmax(0,1fr);gap:18px}.yc-project-feature{padding-inline:0}.case-archive .story-card-text-only>div{display:block}.case-archive .story-card-text-only h2{margin:8px 0 14px}}
/* High-visibility keyboard focus on the dark navigation surface. */
body.nl-design-active .site-header :is(.brand,.menu-toggle,.primary-nav>ul>li>a,.nav-quote,.yc-language>summary):focus-visible{
  outline:3px solid #fbbf24;outline-offset:4px;
}

/* A full-width mobile action bar keeps controls distinct from scrolling text. */
@media(max-width:650px){
  body.nl-design-active:not(.is-quote-page):not(.nl-hide-floating){padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
  body.nl-design-active .floating-tools{
    left:0;right:0;bottom:0;max-width:none;width:100%;
    padding:6px 18px calc(6px + env(safe-area-inset-bottom,0px));
    background:#10212e;border-top:1px solid #486170;
    box-shadow:0 -4px 18px rgba(8,22,32,.18);
  }
}

/* Bridge the machining film to the product catalogue with three useful routes. */
.home.nl-design-active .scope-strip{
  position:relative;isolation:isolate;border:0;color:#f4f8fb;
  background:linear-gradient(110deg,#122738 0%,#1b3546 56%,#29495b 100%);
  box-shadow:inset 0 1px rgba(214,232,241,.18),inset 0 -1px rgba(7,24,36,.45);
}
.home.nl-design-active .scope-strip:after{
  content:"";position:absolute;z-index:-1;top:100%;left:0;right:0;height:22px;
  background:linear-gradient(180deg,rgba(29,54,69,.22),rgba(29,54,69,0));pointer-events:none;
}
.home.nl-design-active .scope-strip>.wrap{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0}
.home.nl-design-active .scope-strip .scope-item{
  display:block;position:relative;min-height:96px;padding:20px 42px 20px 28px;
  border:0;border-right:1px solid rgba(180,205,220,.2);color:#f4f8fb;
  transition:background-color .2s ease;
}
.home.nl-design-active .scope-strip .scope-item:first-child{padding-left:0}
.home.nl-design-active .scope-strip .scope-item:last-child{border-right:0}
.home.nl-design-active .scope-strip .scope-item b{color:#f7fbfd;font-size:16px;line-height:1.35}
.home.nl-design-active .scope-strip .scope-item b:before{
  content:"";display:inline-block;width:5px;height:5px;margin-right:9px;vertical-align:.2em;
  background:var(--accent);box-shadow:0 0 8px rgba(245,158,11,.45);
}
.home.nl-design-active .scope-strip .scope-item span{display:block;margin-top:5px;color:#d8e5ed;font-size:14px;line-height:1.4}
.home.nl-design-active .scope-strip .scope-item:after{top:50%;right:18px;color:#c0d4df;transform:translateY(-50%)}
@media(hover:hover) and (pointer:fine){
  .home.nl-design-active .scope-strip .scope-item:hover{background-color:rgba(255,255,255,.055)}
  .home.nl-design-active .scope-strip .scope-item:hover b{color:#fff}
  .home.nl-design-active .scope-strip .scope-item:hover:after{color:#fff;transform:translate(4px,-50%)}
}
.home.nl-design-active .scope-strip .scope-item:focus-visible{outline:3px solid #fbbf24;outline-offset:-4px}
.home.nl-design-active .home-content{background:linear-gradient(180deg,#e8eff3 0,#f7fafb 120px,#fff 340px)}
.home.nl-design-active .home-content>[data-home-section="products"]{padding-top:clamp(44px,4vw,60px)}
@media(min-width:1200px){.home.nl-design-active .scope-strip>.wrap{width:min(calc(var(--max) + 640px),calc(100% - 96px))}}
@media(max-width:650px){
  .home.nl-design-active .scope-strip>.wrap{grid-template-columns:minmax(0,1fr);padding-block:5px}
  .home.nl-design-active .scope-strip .scope-item,
  .home.nl-design-active .scope-strip .scope-item:first-child{
    min-height:64px;padding:10px 32px 10px 0;border-right:0;border-bottom:1px solid rgba(180,205,220,.2);
  }
  .home.nl-design-active .scope-strip .scope-item:last-child{border-bottom:0}
  .home.nl-design-active .scope-strip .scope-item b{font-size:15px}
  .home.nl-design-active .scope-strip .scope-item span{margin-top:2px;font-size:13px}
  .home.nl-design-active .scope-strip .scope-item:after{right:2px}
  .home.nl-design-active .home-content>[data-home-section="products"]{padding-top:38px}
}
@media(prefers-reduced-motion:reduce){.home.nl-design-active .scope-strip .scope-item{transition:none}}
