:root { --brand: #002899; --brand-hover: #002078; --brand-light: #edf3fc; }
html[lang="en"] body { font-family: Arial, Helvetica, sans-serif; }
html[lang="en"] .yxc-menu { margin-left: 24px; }
html[lang="en"] .yxc-menu > li { padding-left: 12px; padding-right: 12px; }
html[lang="en"] .yxc-menu > li > a { white-space: nowrap; }
html[lang="en"] h1, html[lang="en"] h2, html[lang="en"] h3 { line-height: 1.25; }
html[lang="en"] p { line-height: 1.65; }
html[lang="en"] .quotation, html[lang="en"] .contact, html[lang="en"] .contact-black { line-height: 1.4; }
html[lang="en"] .sector { overflow-wrap: break-word; }
@media(max-width:768px) {
  html[lang="en"] .main-banner { height: auto; max-height: none; min-height: 660px; }
  html[lang="en"] .main-banner .content { padding: 24px 18px; }
  html[lang="en"] .main-banner .content h1 { font-size: 30px; }
  html[lang="en"] .mb-3dprinting { background-image: linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.82)),url('/assets/1b66928e8f81-industrial-precision-3d-printing-service-20260202.webp'); }
  html[lang="en"] .main-banner .content .feature { min-width: 0; width: 100%; }
  html[lang="en"] .main-banner .content .features { display: block; }
  html[lang="en"] .main-banner .content .feature { flex: none; margin: 12px 0; }
  html[lang="en"] .main-banner .content .feature svg { flex-shrink: 0; }
  html[lang="en"] .main-banner .quotation, html[lang="en"] .main-banner .contact-black { box-sizing: border-box; display: block; width: 100%; margin: 8px 0; }
}
.yxc-logo { padding: 10px 0; }
.yxc-logo img { width: 200px; height: 53px; object-fit: contain; margin: 0; }
.logo-carousel-wrapper { padding-top: 22px; padding-bottom: 22px; box-sizing: border-box; }
.logo-carousel-wrapper .logo-carousel img { width: 130px; height: 72px; object-fit: contain; filter: grayscale(1); opacity: .65; }
.logo-carousel-wrapper .logo-carousel { display: grid; grid-template-columns: repeat(8,minmax(140px,1fr)); gap: 20px; }
.logo-carousel .brand-mark { display: flex; align-items: center; justify-content: center; height: 76px; overflow: hidden; }
.logo-carousel .brand-mark img { max-width: none; flex-shrink: 0; }
.logo-carousel .brand-mark--edwards img { width: 49px; height: 65px; }
.logo-carousel .brand-mark--toyota img { width: 140px; height: 36px; }
.logo-carousel .brand-mark--ford img { width: 128px; height: 50px; }
.logo-carousel .brand-mark--ge img { width: 64px; height: 64px; }
/* The original square images include large transparent margins. Size the visible marks. */
.logo-carousel .brand-mark--tesla img { width: 154px; height: 154px; }
.logo-carousel .brand-mark--honeywell img { width: 140px; height: 36px; }
.logo-carousel .brand-mark--caterpillar img { width: 140px; height: 38px; }
.logo-carousel .brand-mark--foxconn img { width: 198px; height: 198px; }
.logo-carousel-wrapper .logo-carousel img:hover { opacity: 1; }
.foot-container .foot-logo img { width: 250px; height: 66px; object-fit: contain; background: white; border-radius: 3px; }
h1, h2, h3 { color: var(--brand); }
.promotion-section, .foot-container { background-color: var(--brand); }
.foot-container h2, .foot-container h3 { color: white; }
.foot-container { padding-bottom: 28px; }
.quotation, .quotation-black { background: var(--brand); border-color: var(--brand); color: white; }
.quotation:hover, .quotation-black:hover { background: var(--brand-hover); border-color: var(--brand-hover); color: white; }
.contact, .contact-black, .contact-sub-black { color: var(--brand); border-color: var(--brand); }
.contact:hover, .contact-black:hover, .contact-sub-black:hover { background: var(--brand); color: white; border-color: var(--brand); }
.sector.active { background-color: var(--brand) !important; color: white; }
.sector:hover { background-color: var(--brand-light); }
.toplink:hover, .faq-btn, .nav-btn, .hamburger { color: var(--brand); }
.features svg circle { fill: var(--brand); }
a:focus-visible, button:focus-visible, [role=tab]:focus-visible { outline: 3px solid #6299e9; outline-offset: 3px; }
@media(max-width:1100px) {
  .yxc-logo img { width: 160px; height: 42px; }
  .yxc-logo { margin: 0; }
  .yxc-header .header-inner { min-height: 62px; }
}
.brand-lockup { display: block; position: relative; width: 270px; height: 72px; overflow: hidden; }
.yxc-logo .brand-lockup img, .foot-container .foot-logo .brand-lockup img { position: absolute; top: -13px; left: -12px; width: 290px; height: 97px; max-width: none; margin: 0; object-fit: contain; background: transparent; border-radius: 0; }
.yxc-logo .brand-lockup { width: 216px; height: 58px; }
.yxc-logo .brand-lockup img { width: 232px; height: 78px; top: -10px; left: -10px; }
.brand-reversed img { filter: brightness(0) invert(1); }
.brand-reversed img.brand-orange { filter: none; clip-path: inset(0 0 0 53.5%); }
.quotation, .quotation-black { background: #e07800; border-color: #e07800; color: #fff; }
.quotation:hover, .quotation-black:hover { background: #c56800; border-color: #c56800; color: #fff; }
.toplink:hover { color: #c56800; }
html[lang="en"] body, html[lang="en"] button, html[lang="en"] input, html[lang="en"] select, html[lang="en"] textarea { font-family: 'Manrope', Arial, sans-serif; }
html[lang="en"] h1, html[lang="en"] h2, html[lang="en"] h3 { font-family: 'Manrope', Arial, sans-serif; font-weight: 700; letter-spacing: -.025em; }
html[lang="en"] .main-banner h1 { font-weight: 800; letter-spacing: -.04em; }
.promotion-section { display: flex; justify-content: flex-start; align-items: center; box-sizing: border-box; padding: 8px 50px; min-height: 36px; }
.promotion-section .top-email { color: white; font-size: 13px; font-weight: 600; text-decoration: none; letter-spacing: .01em; }
.promotion-section .top-email:hover { text-decoration: underline; }
.promotion-section { gap: 16px; }
.header-socials { display: flex; align-items: center; gap: 6px; }
.header-social-link { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 4px; color: #fff; transition: background-color .15s ease; }
.header-social-link:visited { color: #fff; }
.header-social-link:hover { color: #fff; background: rgba(255,255,255,.18); text-decoration: none; }
.header-social-link svg { display: block; flex-shrink: 0; }
#bs-hero { background: #f3f6fc !important; color: #26354b; }
#bs-hero .about-h1 { color: var(--brand); }
#bs-hero .about-kicker { color: #b65d00; letter-spacing: .1em; font-size: 12px; line-height: 1.7; }
#bs-hero .about-lead { color: #435269; line-height: 1.8; }
#bs-hero .about-hero__right img { object-position: 58% 50%; }
.ybs-factory-page .main-banner-simple { background-image: linear-gradient(90deg,rgba(243,246,252,.94) 0%,rgba(243,246,252,.65) 32%,rgba(243,246,252,0) 68%),url('/assets/ybs-precision-facility.png'); background-position: center; background-size: cover; }
.ybs-factory-page .main-banner-simple .content { justify-content: flex-start; }
.ybs-factory-page .main-banner-simple .content h1 { color: var(--brand); margin: 0; }
.mb-sheet-metal-fabrication { --service-hero-image: url('/assets/828618984168-sheet-metal-fabrication-services.webp'); }
.mb-vacuum-casting { --service-hero-image: url('/assets/e01e4ddd5fcf-vacuum-casting-services-01.webp'); }
.mb-medical {
 background-color:#f3f6fc;
 background-image:linear-gradient(90deg,#f3f6fc 0%,#f3f6fc 50%,rgba(243,246,252,.82) 57%,rgba(243,246,252,0) 68%),url('/assets/75373a286ab8-medical-devices-02.webp');
 color:#26354b;
 height:auto;
 min-height:760px;
 padding:56px 0;
 box-sizing:border-box;
}
.mb-medical .content { width:calc(50% - 30px); box-sizing:border-box; }
.mb-medical .content h1 { color:var(--brand); font-size:clamp(36px,3.2vw,52px); }
.mb-medical .content p,.mb-medical .content .feature { font-size:15px; line-height:1.75; }
.mb-medical .content .feature { align-items:flex-start; margin:14px 0; }
.mb-medical .feature svg { flex-shrink:0; margin-top:2px; }
.mb-medical .feature svg path { stroke:#fff; }
.mb-medical .content .remark { color:#435269; font-size:13px; line-height:1.7; }
.mb-medical .remark svg { stroke:#435269; flex-shrink:0; }
@media(max-width:900px) {
 .mb-medical { background-image:none; min-height:0; }
 .mb-medical .content { width:100%; }
}
.mb-sheet-metal-fabrication, .mb-vacuum-casting {
 background-color: #f3f6fc;
 background-image: linear-gradient(90deg,#f3f6fc 0 50%,transparent 50% 100%),var(--service-hero-image);
 color: #26354b;
}
:is(.mb-sheet-metal-fabrication,.mb-vacuum-casting) .content { width: calc(50% - 30px); }
:is(.mb-sheet-metal-fabrication,.mb-vacuum-casting) .content h1 { color: var(--brand); }
:is(.mb-sheet-metal-fabrication,.mb-vacuum-casting) .content .remark { color: #435269; }
:is(.mb-sheet-metal-fabrication,.mb-vacuum-casting) .feature svg path { stroke: #fff; }
:is(.mb-sheet-metal-fabrication,.mb-vacuum-casting) .remark svg { stroke: #435269; flex-shrink: 0; }
@media(max-width:900px) {
 .mb-sheet-metal-fabrication, .mb-vacuum-casting { background-image: none; }
 :is(.mb-sheet-metal-fabrication,.mb-vacuum-casting) .content { width: 100%; }
}
@media(max-width:1100px) {
 #bs-hero .about-hero__right { display: block; margin: 0 0 24px; }
 #bs-hero .about-hero__right img { display: block; width: 100%; height: auto; object-fit: contain; }
}
@media(max-width:480px) { .promotion-section { gap: 10px; } .promotion-section .top-email { font-size: 12px; } .header-socials { gap: 3px; } .header-social-link { width: 28px; height: 28px; } .header-social-link svg { width: 18px; height: 18px; } }
.yxc-header-container { height: var(--site-header-height,112px) !important; }
.body-container { margin-top: 0 !important; }
html { scroll-padding-top: calc(var(--site-header-height,112px) + 20px); }
.faq-answer[hidden] { display: none !important; }
.faq-answer:not([hidden]) { display: block !important; opacity: 1; height: auto; max-height: none; visibility: visible; padding: 8px 20px 24px; }
.faq-answer p, .faq-answer li { color: #334155; line-height: 1.75; }
.headquarters-summary { display: grid; gap: 22px; }
.headquarters-summary h2 { font-size: 15px !important; margin: 0 0 8px; }
.headquarters-summary p { color: #dbe6ff; font-size: 12px; margin: 0; }
.headquarters-summary a { color: white; font-weight: 600; }
.contact-pending { color: #64748b; font-size: 14px; }
.contact-page { max-width: 1320px; margin: 0 auto; padding: 64px 48px 96px; color: #182334; }
.contact-intro { max-width: 830px; margin-bottom: 36px; }
.eyebrow { display: block; color: var(--brand); font-size: 11px; font-weight: 800; letter-spacing: .14em; margin: 0 0 16px; }
.contact-intro h1 { font-size: clamp(36px,4.3vw,60px); line-height: 1.1 !important; letter-spacing: -.045em !important; margin: 0 0 24px; }
.contact-intro > p:last-child { max-width: 650px; font-size: 17px; color: #526176; }
.contact-layout { display: grid; grid-template-columns: 1fr 1.07fr; gap: 64px; align-items: start; }
.contact-info-card { padding: 24px 0; border-top: 1px solid #dae2ef; }
.contact-info-card h2 { font-size: 23px; margin: 0 0 12px; }
.contact-info-card h2 a { color: var(--brand); text-decoration: none; overflow-wrap: anywhere; }
.contact-info-card h2 a { text-transform: none; }
html[lang="en"] h1, html[lang="en"] h2, html[lang="en"] h3 { text-transform: none; }
.contact-info-card h2 a:hover { text-decoration: underline; }
.contact-info-card p { color: #59677b; font-size: 14px; margin: 5px 0; }
.contact-info-card .pending-text, .pending-text { color: #718096; }
.hq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.hq-grid h2 { font-size: 20px; }
.messaging-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 16px; }
.messaging-card { padding: 22px 18px; border: 1px solid #dce4f0; border-radius: 10px; background: #f8faff; text-align: center; }
.channel-mark { display: inline-block; color: #087338; background: #e4f8eb; padding: 6px 10px; border-radius: 6px; font-size: 13px; font-weight: 800; }
.messaging-card h3 { font-size: 16px; margin: 16px 0; }
.qr-pending { display: grid; place-items: center; width: 124px; height: 124px; border: 1px dashed #aab9cc; border-radius: 6px; margin: 0 auto; color: #66758b; font-size: 12px; background: white; }
.messaging-card p { color: #64748b; font-size: 12px; }
.inquiry-panel { background: #f4f7fc; border: 1px solid #e3eaf5; padding: 36px; border-radius: 12px; }
.inquiry-panel h2 { font-size: 30px; margin: 0 0 16px; }
.inquiry-panel > p:not(.eyebrow) { color: #59677b; font-size: 14px; }
.inquiry-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
#inquiry-form { margin-top: 28px; }
#inquiry-form label { display: block; font-size: 12px; font-weight: 700; color: #26354a; margin-bottom: 20px; }
#inquiry-form label > span { color: #b35300; }
#inquiry-form input, #inquiry-form select, #inquiry-form textarea { display: block; box-sizing: border-box; width: 100%; border: 1px solid #cbd5e3; border-radius: 6px; background: white; font-size: 13px; padding: 12px; margin-top: 9px; color: #182334; min-height: 46px; }
#inquiry-form textarea { resize: vertical; line-height: 1.6; }
#inquiry-form input:focus, #inquiry-form select:focus, #inquiry-form textarea:focus { outline: 2px solid #91b0f2; outline-offset: 1px; }
#inquiry-form .form-note { color: #65738a; font-size: 11px; line-height: 1.7; }
.inquiry-submit { width: 100%; border: 0; background: #d97706; color: white; border-radius: 6px; padding: 15px 20px; margin-top: 12px; font-size: 14px; font-weight: 800; cursor: pointer; }
.inquiry-submit:hover { background: #b96000; }
#inquiry-status { color: var(--brand); font-size: 13px; line-height: 1.7; }
.inquiry-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.inquiry-submit:disabled { opacity: .65; cursor: wait; }
#inquiry-status[data-state="error"] { color: #a52b2b; }
#inquiry-status[data-state="success"] { color: #146340; background: #edf8f1; padding: 16px; border-radius: 6px; }
@media(max-width:900px) {
 .contact-page { padding: 40px 24px 64px; }
 .contact-intro { margin-bottom: 32px; }
 .contact-layout { grid-template-columns: 1fr; gap: 40px; }
 .promotion-section { padding: 8px 18px; }
 .inquiry-panel { padding: 28px 22px; }
}
@media(max-width:480px) { .inquiry-grid { grid-template-columns: 1fr; gap: 0; } .hq-grid { grid-template-columns: 1fr; gap: 0; } .messaging-grid { gap: 10px; } .messaging-card { padding: 18px 10px; } .contact-page { padding: 32px 18px 56px; } }
@media(max-width:768px) {
 html[lang="en"] .mb-cncmachining { background-image: linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.82)),url('/assets/91dc097c58f7-cnc_machining_services-20260202.webp'); }
}
@media(max-width:1100px) {
  .brand-lockup { width: 216px; height: 58px; }
  .yxc-logo .brand-lockup { width: 173px; height: 46px; }
  .yxc-logo .brand-lockup img { width: 186px; height: 62px; top: -8px; left: -8px; }
  .foot-container .brand-lockup { width: 270px; height: 72px; }
  .yxc-header .header-inner { min-height: 66px; }
}
