@font-face { font-family: "Manrope"; src: url("/assets/fonts/manrope-400.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Manrope"; src: url("/assets/fonts/manrope-500.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Manrope"; src: url("/assets/fonts/manrope-600.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Manrope"; src: url("/assets/fonts/manrope-700.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Manrope"; src: url("/assets/fonts/manrope-800.woff2") format("woff2"); font-weight: 800; font-style: normal; font-display: swap; }

:root {
  --ink: #11134f !important;
  --ink-soft: #55576f !important;
  --forest: #11134f !important;
  --forest-deep: #0b0d3f !important;
  --forest-light: #252870 !important;
  --green: #11134f !important;
  --mint: #d8d7d2 !important;
  --copper: #62625e !important;
  --copper-light: #d8d7d2 !important;
  --paper: #ffffff !important;
  --paper-deep: #fff1e8 !important;
  --cream: #fff1e8 !important;
  --white: #ffffff !important;
  --line: #e1e2e8 !important;
  --display: "Manrope", Arial, sans-serif !important;
  --sans: "Manrope", Arial, sans-serif !important;
  --radius-lg: 0px !important;
  --radius-md: 0px !important;
  --radius-sm: 0px !important;
  --shadow-soft: none !important;
  --shadow-card: none !important;
  --shell: min(1180px, calc(100vw - 48px)) !important;
}

html { scroll-behavior: smooth; }
html, body { background: #fff !important; color: #24253c !important; }
body { font-family: "Manrope", Arial, sans-serif !important; text-rendering: optimizeLegibility; }
h1, h2, h3, h4, .catalog-hero h1, .category-hero h1, .product-detail h1,
.application-hero h1, .application-section h2, .faq-list summary {
  font-family: "Manrope", Arial, sans-serif !important;
}

::selection { color: #0b0d3f; background: #d8d7d2; }
a, button, input, select, textarea { transition: color .22s ease, background-color .22s ease, border-color .22s ease, transform .22s cubic-bezier(.2,.8,.2,1), box-shadow .22s ease !important; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #d8d7d2 !important;
  outline-offset: 4px !important;
}

.v3-preview-bar {
  min-height: 28px;
  padding: 6px 18px;
  color: #54556d;
  background: #f0f0f3;
  border-bottom: 1px solid #dddde4;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .09em;
  text-align: center;
  text-transform: uppercase;
}

.site-header, .catalog-header {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  transform: none !important;
  z-index: 100 !important;
  width: 100% !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 10px max(22px, calc((100% - 1180px) / 2)) !important;
  border: 0 !important;
  border-bottom: 1px solid #e1e2e8 !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) saturate(145%);
}
.site-header.is-scrolled, .catalog-header.is-scrolled { box-shadow: 0 14px 38px rgba(17,19,79,.08) !important; }
.site-header { grid-template-columns: auto minmax(0,1fr) auto auto !important; gap: 16px !important; }
.site-header .main-nav { min-width: 0 !important; justify-content: center !important; }
.site-header .language-switcher, .site-header .header-actions { justify-self: end !important; }
.catalog-header { grid-template-columns: auto minmax(0,1fr) auto auto !important; gap: 16px !important; }
.catalog-header nav { min-width: 0 !important; justify-content: center !important; }
.catalog-header .language-switcher { justify-self: end !important; }
.catalog-header .catalog-cta { justify-self: end !important; }
.brand-mark, .catalog-brand img { border-radius: 0 !important; }
.brand-name, .catalog-brand strong { color: #11134f !important; }
.main-nav, .catalog-header nav { gap: clamp(12px, 1.7vw, 24px) !important; }
.main-nav a, .catalog-header nav a { color: #11134f !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: -.01em !important; }
.main-nav a[href*="#markets"], .main-nav a[href*="#moulds"], .main-nav a[href*="#capabilities"] { display: none !important; }
.main-nav a::after, .catalog-header nav a::after { background: #d8d7d2 !important; }
.header-cta, .catalog-cta, .detail-cta {
  min-height: 46px !important;
  padding: 0 22px !important;
  color: #fff !important;
  background: #11134f !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.header-cta:hover, .catalog-cta:hover, .detail-cta:hover { background: #252870 !important; transform: translateY(-2px) !important; }
.header-cta span:last-child, .catalog-cta span:last-child, .detail-cta span:last-child { transition: transform .22s cubic-bezier(.2,.8,.2,1); }
.header-cta:hover span:last-child, .catalog-cta:hover span:last-child, .detail-cta:hover span:last-child { transform: translate(3px,-3px); }
.language-toggle, .language-menu { border-radius: 0 !important; }

/* The review build must render every section even when live scroll observers are absent. */
.reveal, .reveal.is-visible {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

main:not(#main) { width: min(1180px, calc(100% - 48px)) !important; }
.section-shell, .case-shell { width: min(1180px, calc(100% - 48px)) !important; }

/* Homepage */
#main > .hero {
  min-height: 620px !important;
  padding: 72px max(24px, calc((100% - 1180px) / 2)) !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  place-items: center !important;
  color: #fff !important;
  text-align: center !important;
  background:
    linear-gradient(rgba(15,17,70,.87), rgba(15,17,70,.89)),
    url('/assets/company/baoyue-dongguan-factory-tour-poster-20260928.webp') center / cover no-repeat !important;
}
#main > .hero { isolation: isolate; overflow: hidden; }
#main > .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(520px circle at var(--hero-x,50%) var(--hero-y,45%), rgba(216,215,210,.17), transparent 64%);
  transition: background-position .12s linear;
}
#main > .hero .hero-copy { width: min(920px, 100%) !important; max-width: 920px !important; margin: auto !important; }
#main > .hero h1 { margin: 0 auto 24px !important; color: #fff !important; font-size: clamp(46px, 5.4vw, 76px) !important; font-weight: 750 !important; line-height: 1.04 !important; letter-spacing: -.035em !important; text-wrap: balance; }
#main > .hero h1 em { color: #fff !important; font-style: normal !important; }
#main > .hero h1 em { font-weight: 760 !important; }
#main > .hero .hero-lead, #main > .hero .hero-copy > p { max-width: 760px !important; margin-inline: auto !important; color: rgba(255,255,255,.78) !important; }
#main > .hero .hero-actions { justify-content: center !important; }
#main > .hero .button, #main > .hero .button-primary { border-radius: 0 !important; }
#main > .hero .button-primary { color: #11134f !important; background: #d8d7d2 !important; }
#main > .hero .button-primary:hover { color: #fff !important; background: #62625e !important; transform: translateY(-3px) !important; box-shadow: 0 16px 32px rgba(3,8,49,.28) !important; }
#main > .hero .button-secondary { color: #d8d7d2 !important; }
#main > .hero .button-secondary:hover { color: #fff !important; transform: translateY(-2px) !important; }
#main > .hero .hero-metrics strong { color: #fff !important; }
#main > .hero .hero-metrics span { color: rgba(255,255,255,.68) !important; }
#main > .hero .hero-stage, #main > .hero .hero-scroll { display: none !important; }

.eyebrow, .catalog-eyebrow, .by-trust-strip__heading > p, .factory-video-proof__eyebrow { display: none !important; }

.v4-loaded #main > .hero h1 { animation: v4-title-in .8s cubic-bezier(.16,1,.3,1) both; }
.v4-loaded #main > .hero .hero-lead,
.v4-loaded #main > .hero .hero-copy > p:not(.eyebrow) { animation: v4-copy-in .75s .12s cubic-bezier(.16,1,.3,1) both; }
.v4-loaded #main > .hero .hero-actions { animation: v4-copy-in .75s .22s cubic-bezier(.16,1,.3,1) both; }
@keyframes v4-title-in { from { opacity:.35; filter:blur(8px); transform:translateY(22px); clip-path:inset(0 0 24% 0); } to { opacity:1; filter:blur(0); transform:none; clip-path:inset(0); } }
@keyframes v4-copy-in { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }

.by-trust-strip { padding: 0 !important; background: #fff !important; }
.by-trust-strip__heading { width: min(1180px, calc(100% - 48px)) !important; margin: 0 auto !important; padding: 55px 0 26px !important; }
.by-trust-strip__heading h2 { color: #11134f !important; font-size: clamp(34px,4vw,52px) !important; }
.by-trust-strip__grid { width: min(1180px, calc(100% - 48px)) !important; margin: 0 auto 64px !important; grid-template-columns: repeat(4,1fr) !important; border: 1px solid #e1e2e8 !important; }
.by-trust-strip__grid article { min-height: 230px !important; padding: 28px !important; border-right: 1px solid #e1e2e8 !important; border-radius: 0 !important; background: #fff !important; }
.by-trust-strip__grid article:hover { background: #efeee9 !important; }
.by-trust-strip__grid article:last-child { border-right: 0 !important; }
.by-trust-strip__grid h3 { color: #11134f !important; font-size: 19px !important; }
.by-trust-strip__grid span { color: #62625e !important; }

.factory-video-proof { width: min(1180px, calc(100% - 48px)) !important; margin: 0 auto !important; padding: 68px 0 !important; gap: 56px !important; }
.factory-video-proof__copy h2 { color: #11134f !important; font-size: clamp(38px,4.5vw,58px) !important; line-height: 1.06 !important; }
.factory-video-proof__media, .factory-video-proof video { border-radius: 0 !important; }
.factory-video-proof__primary { color: #11134f !important; background: #d8d7d2 !important; border-radius: 0 !important; }

.category-rail { background: #11134f !important; }
.category-rail * { color: #fff !important; }
.category-rail { overflow: hidden !important; }
.category-rail__track { animation: v4-rail 28s linear infinite; will-change: transform; }
.category-rail:hover .category-rail__track { animation-play-state: paused; }
@keyframes v4-rail { to { transform: translateX(-20%); } }
.section-intro, .collection-preview, .mould-section, .capabilities-section, .process-section { padding-top: 72px !important; padding-bottom: 72px !important; }
.section-intro h2, .collection-preview-heading h2, .mould-heading h2, .capability-heading h2, .process-heading h2 {
  color: #11134f !important;
  font-size: clamp(38px,4.6vw,62px) !important;
  font-weight: 760 !important;
  line-height: 1.04 !important;
}
.section-intro h2 em, .collection-preview-heading h2 em, .mould-heading h2 em { color: #62625e !important; font-style: normal !important; font-weight: 760 !important; }
.market-panel { border-radius: 0 !important; box-shadow: none !important; }
.market-panel h3 { font-family: "Manrope", Arial, sans-serif !important; font-weight: 750 !important; }
.application-paths, .collection-preview-categories { border-radius: 0 !important; }

.collection-preview { background: #fff6f0 !important; }
.collection-preview-grid { grid-template-columns: repeat(3,1fr) !important; gap: 12px !important; }
.collection-preview-card { overflow: hidden !important; border: 1px solid #e7e7ee !important; border-radius: 14px !important; background: #fff !important; box-shadow: none !important; }
.collection-preview-card img { transform: scale(1.035); transition: transform .55s cubic-bezier(.16,1,.3,1), filter .4s ease !important; }
.collection-preview-card:hover { transform: translateY(-5px) !important; box-shadow: 0 18px 34px rgba(17,19,79,.10) !important; }
.collection-preview-card:hover img { transform: scale(1.09); filter: saturate(1.06) contrast(1.02); }
.collection-preview-card > span { left: 0 !important; right: 0 !important; bottom: 0 !important; padding: 14px !important; border-radius: 0 !important; background: rgba(17,19,79,.96) !important; }
.collection-preview-card small { color: #d8d7d2 !important; }
.collection-preview-card strong { font-family: "Manrope", Arial, sans-serif !important; font-weight: 700 !important; }
.collection-preview-categories a:hover { background: #11134f !important; }
.collection-search input, .collection-search button { border-radius: 0 !important; }

.mould-card, .capability-card, .process-step, .method-card, .contact-card { border-radius: 0 !important; box-shadow: none !important; }
.mould-card h3, .capability-card h3 { font-family: "Manrope", Arial, sans-serif !important; }
.site-footer { background: #0b0d3f !important; }

/* Keep the company story in the same clean industrial system. */
.factory-heading h1, .factory-heading h1 em,
.company-hero h1, .company-hero h1 em {
  color: #11134f !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-style: normal !important;
  font-weight: 760 !important;
  letter-spacing: -.04em !important;
}

.quality-hero__copy h1, .quality-hero__copy h1 em,
.support-main h1, .support-main h1 em {
  color: #11134f !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-style: normal !important;
  font-weight: 760 !important;
  line-height: 1.03 !important;
  letter-spacing: -.04em !important;
}

/* Product archive, application, company and report pages */
.catalog-hero {
  min-height: 430px !important;
  margin-top: 0 !important;
  padding: 80px 6vw 60px !important;
  border-radius: 0 !important;
  background:
    radial-gradient(650px circle at 82% 18%, rgba(216,215,210,.16), transparent 58%),
    linear-gradient(135deg,#11134f,#20236c) !important;
}
.catalog-hero h1, .category-hero h1, .product-detail h1, .application-hero h1 {
  color: #11134f !important;
  font-size: clamp(42px,5.5vw,76px) !important;
  font-weight: 760 !important;
  line-height: 1.02 !important;
  letter-spacing: -.04em !important;
}
.catalog-hero h1 { color: #fff !important; }
.catalog-hero h1 em, .application-hero h1 em { color: #d8d7d2 !important; font-style: normal !important; font-weight: 760 !important; }
.catalog-count { border-radius: 0 !important; }
.category-links a:hover { background: #11134f !important; }
.category-links a { font-family: "Manrope", Arial, sans-serif !important; font-weight: 700 !important; }

.catalog-grid { padding: 52px 0 72px !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 12px !important; }
.catalog-card { overflow: hidden !important; border: 1px solid #e7e7ee !important; border-radius: 14px !important; background: #fff6f0 !important; box-shadow: none !important; }
.catalog-card:hover { transform: translateY(-6px) !important; border-color: rgba(17,19,79,.16) !important; box-shadow: 0 20px 38px rgba(17,19,79,.10) !important; }
.card-image { background: #fff !important; }
.card-image img { transform: scale(1.035); transition: transform .55s cubic-bezier(.16,1,.3,1), filter .4s ease !important; }
.catalog-card:hover .card-image img { transform: scale(1.1); filter: saturate(1.06) contrast(1.02); }
.card-image > span { border-radius: 0 !important; background: #11134f !important; }
.card-copy { min-height: 205px !important; padding: 18px !important; }
.card-copy h2 { color: #11134f !important; font-family: "Manrope", Arial, sans-serif !important; font-size: 19px !important; font-weight: 750 !important; letter-spacing: -.025em; }
.catalog-card:hover .card-link { transform: translateX(4px); }
.card-commerce strong, .card-link, .breadcrumbs a { color: #62625e !important; }
.pricing-trust, .process-strip, .decision-grid, .reference-table-wrap, .application-links { border-radius: 0 !important; }
.catalog-bottom-cta { border-radius: 0 !important; background: #d8d7d2 !important; }
.catalog-bottom-cta h2 { color: #11134f !important; font-family: "Manrope", Arial, sans-serif !important; font-weight: 750 !important; }

.category-hero, .application-hero { padding: 55px 0 !important; }
.application-section { padding: 68px 0 !important; }
.application-section h2 { color: #11134f !important; font-size: clamp(36px,4.3vw,58px) !important; font-weight: 760 !important; }
.decision-card, .application-directory a { border-radius: 0 !important; background: #fff6f0 !important; }
.decision-card h3, .application-directory strong { color: #11134f !important; font-family: "Manrope", Arial, sans-serif !important; font-weight: 750 !important; }
.application-directory a:hover, .application-links a:hover { background: #11134f !important; }

.product-detail { padding: 52px 0 70px !important; }
.detail-image { border-radius: 0 !important; box-shadow: none !important; background: #fff6f0 !important; }
.detail-image img { transform: scale(1.08); }
.detail-image span { border-radius: 0 !important; background: #11134f !important; }
.detail-cta { background: #d8d7d2 !important; color: #11134f !important; }

.report-card, .support-panel, .featured-case, .reference-link, .case-decisions,
.detail-proof, .contact-panel, .summary, .cover { border-radius: 0 !important; box-shadow: none !important; }
.report-card, .support-panel, .reference-link, .decision-card { background: #fff6f0 !important; }
.report-card__actions a, .support-action, .button-primary { border-radius: 0 !important; }
.button-primary, .support-action { color: #11134f !important; background: #d8d7d2 !important; }

/* Guides */
.guide-article { width: min(1180px, calc(100% - 48px)) !important; }
.guide-article h1 { color: #11134f !important; font-size: clamp(42px,5.5vw,72px) !important; line-height: 1.04 !important; }
.guide-article .cover { max-height: 540px; object-fit: cover; }
.article-body { max-width: 820px !important; }
.article-body h2 { color: #11134f !important; font-size: clamp(28px,3vw,42px) !important; }
.article-body h3 { color: #11134f !important; }
.article-body a { color: #62625e !important; }

/* Forms and contact */
input, select, textarea, button { border-radius: 0 !important; }
input:focus, select:focus, textarea:focus { border-color: #62625e !important; box-shadow: 0 0 0 4px rgba(216,215,210,.20) !important; }
.enquiry-form, .project-form, .contact-form, form[data-project-form] { border-radius: 0 !important; box-shadow: none !important; }
.quick-contact-panel, .quick-contact-trigger { border-radius: 0 !important; }

.catalog-footer { background: #0b0d3f !important; color: #fff !important; }
.catalog-footer a { color: rgba(255,255,255,.76) !important; }

@media (max-width: 1100px) {
  .catalog-grid { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
  .by-trust-strip__grid { grid-template-columns: repeat(2,1fr) !important; }
  .by-trust-strip__grid article:nth-child(2) { border-right: 0 !important; }
  .by-trust-strip__grid article:nth-child(-n+2) { border-bottom: 1px solid #e1e2e8 !important; }
}

@media (max-width: 760px) {
  :root { --shell: min(100% - 28px,1180px) !important; }
  .site-header { min-height: 66px !important; padding: 8px 14px !important; }
  .catalog-header {
    min-height: auto !important;
    padding: 10px 14px 8px !important;
    grid-template-columns: minmax(0,1fr) auto auto !important;
    gap: 8px !important;
  }
  .catalog-header .catalog-brand { grid-column: 1; grid-row: 1; min-width: 0; }
  .catalog-header .by-language-switch, .catalog-header .language-switcher { grid-column: 2; grid-row: 1; }
  .catalog-header .catalog-cta { grid-column: 3; grid-row: 1; min-height: 42px !important; padding: 0 14px !important; font-size: 11px !important; }
  .catalog-header nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
    padding: 10px 0 2px;
    justify-content: flex-start !important;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    border-top: 1px solid #ececf1;
  }
  .catalog-header nav::-webkit-scrollbar { display: none; }
  .catalog-header nav a { flex: 0 0 auto; white-space: nowrap; }
  .catalog-brand strong { font-size: 15px !important; }
  .catalog-brand small { font-size: 7px !important; }
  #main > .hero { min-height: auto !important; padding: 58px 18px !important; }
  #main > .hero h1 { font-size: clamp(38px,11vw,46px) !important; letter-spacing: -.03em !important; }
  #main > .hero .hero-lead, #main > .hero .hero-copy > p { font-size: 16px !important; line-height: 1.55 !important; }
  #main > .hero .hero-actions { align-items: stretch !important; }
  #main > .hero .button { width: 100% !important; justify-content: center !important; }
  .catalog-hero { min-height: auto !important; padding: 52px 24px !important; }
  .catalog-hero h1 { font-size: clamp(40px,12vw,56px) !important; }
  .by-trust-strip__heading, .by-trust-strip__grid, .factory-video-proof { width: min(100% - 28px,1180px) !important; }
  .by-trust-strip__grid { grid-template-columns: 1fr !important; }
  .by-trust-strip__grid article { border-right: 0 !important; border-bottom: 1px solid #e1e2e8 !important; }
  .collection-preview-grid, .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .card-copy { min-height: 188px !important; padding: 13px !important; }
  .card-copy h2 { font-size: 15px !important; }
  .product-detail, .application-hero, .category-hero { grid-template-columns: 1fr !important; }
}

@media (max-width: 460px) {
  .collection-preview-grid, .catalog-grid { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
