/*
Theme Name: Custom Manufacturing Pro (China Akash Vai Edition)
Theme URI: https://jyh-prototype.com/
Author: China Akash Vai
Author URI: https://jyh-prototype.com/
Description: Ultra-high performance, enterprise-grade WordPress theme for on-demand custom manufacturing services. Developed and configured for China Akash Vai.
Version: 4.0.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: custom-manufacturing
Tags: manufacturing, cnc, 3d-printing, sheet-metal, injection-molding, b2b, rfq, china-factory, industrial
*/


/* === EMBEDDED THEME-STYLE.CSS === */
/*!
 * Theme Stylesheet - Custom Manufacturing Pro
 * Author: China Akash Vai
 * Developed for Shenzhen Jinyihe Technology Co., Ltd. (JYH Prototype)
 */

/**
 * JYH Prototype - Enterprise Next-Gen Manufacturing Theme Style
 * High-Tech Precision Engineering & Industrial Glassmorphism UI
 */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  --font-primary: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-heading: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'JetBrains Mono', monospace;

  /* Color Palette - Clean Professional White Theme with Official JYH Logo Blue (#1076BE) */
  --bg-dark: #FFFFFF;
  --bg-card: #FFFFFF;
  --bg-card-hover: #F8FAFC;
  --bg-light: #FFFFFF;   /* pure white - main background */
  --bg-surface: #FFFFFF;
  --bg-subtle: #F8FAFC;

  --color-primary: #1076BE;
  --color-primary-dark: #0D64A3;
  --color-primary-light: #168BE0;
  --color-cyan: #1076BE;
  --color-cyan-glow: rgba(16, 118, 190, 0.25);
  --color-accent: #1076BE;
  --color-accent-glow: rgba(16, 118, 190, 0.2);
  --color-success: #157A4A;
  --color-warning: #B45309;

  /* Text Colors - Dark / Black for readability */
  --text-dark: #111827;       /* near black - main text */
  --text-muted: #374151;      /* dark grey - body text */
  --text-subtle: #6B7280;     /* medium grey - secondary text */
  --text-light: #9CA3AF;      /* light grey - hints */
  --text-light-muted: #6B7280;

  --border-dark: #D1D5DB;
  --border-light: #E5E7EB;
  --border-primary: rgba(17, 85, 163, 0.2);
  --border-cyan: rgba(26, 122, 212, 0.25);

  --shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 16px -2px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 12px 32px -4px rgba(0, 0, 0, 0.10);
  --shadow-xl: 0 20px 40px -8px rgba(17, 85, 163, 0.15);
  --shadow-glow: 0 0 20px rgba(26, 122, 212, 0.15);
  --shadow-glow-accent: 0 0 20px rgba(217, 68, 15, 0.15);

  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  --transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Global Resets */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

body {
  font-family: var(--font-primary);
  color: var(--text-muted);
  background-color: var(--bg-light);
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.2;
  color: var(--text-dark);
  letter-spacing: -0.01em;
}

a {
  color: var(--color-primary);
  text-decoration: none;
  transition: all var(--transition-fast);
}

a:hover {
  color: var(--color-primary-light);
}

/* Universal Aspect Ratio & SEO Image Protection */
img {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  image-rendering: -webkit-optimize-contrast;
}

.container, .jyh-container {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}

.container-fluid {
  width: 100%;
  padding-left: 32px;
  padding-right: 32px;
  margin-left: auto;
  margin-right: auto;
}

/* Full Width & Wide Gutenberg Alignments */
.alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.alignwide {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

/* SEO-Friendly Responsive Image Styles with Fixed Aspect Ratios */
.entry-content img, .wp-block-image img {
  border-radius: var(--radius-md);
  box-shadow: 0 4px 15px rgba(0,0,0,0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  width: 100%;
}

.entry-content img:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}

.wp-block-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
  margin: 30px 0;
}

.wp-block-gallery img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-md);
}

.wp-block-quote {
  border-left: 4px solid var(--color-primary);
  background: #f8fafc;
  padding: 20px 24px;
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  font-style: italic;
  margin: 30px 0;
}

.wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  margin: 25px 0;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-md);
  overflow: hidden;
}

.wp-block-table th, .wp-block-table td {
  padding: 12px 16px;
  border-bottom: 1px solid #e2e8f0;
  text-align: left;
}

.wp-block-table th {
  background: #070d19;
  color: #ffffff;
  font-weight: 600;
}

/* ==========================================================================
   TOP NOTIFICATION BAR & HEADER
   ========================================================================== */
.jyh-topbar,
.top-promo-bar {
  background: #1A2D4E;
  color: #FFFFFF;
  font-size: 0.8125rem;
  font-weight: 500;
  border-bottom: 1px solid #15263D;
  padding: 8px 0;
}

.jyh-topbar-inner,
.top-promo-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.jyh-topbar-badges,
.promo-left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.jyh-badge-iso,
.promo-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(0, 210, 255, 0.12);
  border: 1px solid rgba(0, 210, 255, 0.4);
  color: #FFFFFF !important;
  padding: 3px 12px;
  border-radius: var(--radius-full);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.jyh-badge-iso::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #00D2FF;
  box-shadow: 0 0 8px #00D2FF;
  animation: pulse-glow 2s infinite;
}

.factory-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(16, 185, 129, 0.15);
  border: 1px solid rgba(16, 185, 129, 0.4);
  color: #FFFFFF !important;
  padding: 3px 12px;
  border-radius: var(--radius-full);
  font-size: 0.75rem;
  font-weight: 500;
}

.factory-status-badge strong {
  color: #FFFFFF !important;
  font-weight: 700;
}

.pulse-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #10B981;
  box-shadow: 0 0 8px #10B981;
  animation: pulse-glow 2s infinite;
}

@keyframes pulse-glow {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.85); }
}

.jyh-topbar-links,
.promo-right {
  display: flex;
  align-items: center;
  gap: 16px;
}

.jyh-topbar-links a,
.promo-right a {
  color: #FFFFFF !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8125rem;
  font-weight: 500;
  text-decoration: none;
  transition: color 0.2s ease;
}

.jyh-topbar-links a svg,
.promo-right a svg {
  color: #00D2FF;
  flex-shrink: 0;
}

.jyh-topbar-links a:hover,
.promo-right a:hover {
  color: #00D2FF !important;
}

/* Sticky Main Navigation */
.jyh-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-top: 3px solid #1076BE !important;
  border-bottom: 2px solid #1076BE !important;
  box-shadow: 0 4px 20px rgba(16, 118, 190, 0.12);
  transition: all var(--transition-normal);
}

.jyh-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 80px;
  padding: 0 20px;
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
}

.jyh-logo-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
}

.jyh-logo-icon {
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, var(--color-primary) 0%, #00D2FF 100%);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 800;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  box-shadow: 0 4px 15px rgba(15, 90, 149, 0.3);
}

.jyh-logo-text {
  display: flex;
  flex-direction: column;
}

.jyh-logo-title {
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--color-primary-dark);
  letter-spacing: -0.03em;
  line-height: 1.1;
}

.jyh-logo-sub {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-muted);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.jyh-nav-menu {
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  flex-wrap: nowrap;
  flex-shrink: 1;
}

.jyh-nav-item {
  position: relative;
  flex-shrink: 0;
}

.jyh-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #1E293B;
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
  white-space: nowrap;
  flex-shrink: 0;
}

.jyh-nav-link:hover, .jyh-nav-item.active .jyh-nav-link {
  color: var(--color-primary);
  background-color: #F1F5F9;
}

.jyh-nav-link svg {
  transition: transform var(--transition-fast);
}

.jyh-nav-item:hover .jyh-nav-link svg {
  transform: rotate(180deg);
}

/* Mega Dropdown Menus */
.jyh-dropdown {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  background: var(--bg-surface);
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-lg);
  box-shadow: 0 20px 40px -10px rgba(15, 23, 42, 0.15);
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transition: all var(--transition-normal);
  z-index: 100;
}

.jyh-nav-item:hover .jyh-dropdown,
.jyh-dropdown.show-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(-50%) translateY(0) !important;
}

@keyframes highlight-pulse-glow {
  0% { box-shadow: 0 0 0 0 rgba(0, 82, 255, 0.7); transform: translateY(-4px) scale(1.02); }
  50% { box-shadow: 0 0 0 14px rgba(0, 82, 255, 0); transform: translateY(-4px) scale(1.02); }
  100% { box-shadow: 0 0 0 0 rgba(0, 82, 255, 0); transform: translateY(0) scale(1); }
}

.highlight-pulse {
  animation: highlight-pulse-glow 1.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  border-color: #0052FF !important;
}

.jyh-dropdown-grid-services {
  display: grid;
  grid-template-columns: repeat(3, 240px);
  gap: 16px;
}

.jyh-dropdown-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  border-radius: var(--radius-md);
  background: transparent;
  transition: all var(--transition-fast);
}

.jyh-dropdown-card:hover {
  background: #F8FAFC;
  transform: translateY(-2px);
}

.jyh-dropdown-icon {
  width: 36px;
  height: 36px;
  border-radius: var(--radius-sm);
  background: #EFF6FF;
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.jyh-dropdown-title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #000000 !important; font-weight: 800;
  margin-bottom: 2px;
}

.jyh-dropdown-desc {
  font-size: 0.75rem;
  color: #6B7280;
  line-height: 1.3;
}

.jyh-header-cta {
  display: flex;
  align-items: center;
  gap: 12px;
}

/* ==========================================================================
   BUTTONS & CTAs
   ========================================================================== */
.jyh-btn,
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 24px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  font-family: var(--font-primary);
  border-radius: var(--radius-md);
  border: 1px solid #0F2C59;
  background-color: #0F2C59;
  color: #FFFFFF !important;
  cursor: pointer;
  transition: all var(--transition-normal);
  text-align: center;
  white-space: nowrap;
  box-shadow: 0 4px 14px rgba(15, 44, 89, 0.35);
}

.jyh-btn-primary,
.btn-primary,
.btn-secondary,
.jyh-btn-glow {
  background: #0F2C59 !important;
  background-color: #0F2C59 !important;
  color: #FFFFFF !important;
  border-color: #0F2C59 !important;
  box-shadow: 0 4px 15px rgba(15, 44, 89, 0.4) !important;
}

.jyh-btn-primary:hover,
.btn-primary:hover,
.btn-secondary:hover,
.jyh-btn-glow:hover {
  background: #081C38 !important;
  background-color: #081C38 !important;
  border-color: #081C38 !important;
  box-shadow: 0 6px 20px rgba(15, 44, 89, 0.55) !important;
  transform: translateY(-2px);
}

.jyh-btn-outline,
.btn-outline,
.btn-outline-white,
.jyh-btn-dark {
  background: #FFFFFF !important;
  border: 2px solid #0F2C59 !important;
  color: #0F2C59 !important;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(15, 44, 89, 0.08) !important;
}

.jyh-btn-outline:hover,
.btn-outline:hover,
.btn-outline-white:hover,
.jyh-btn-dark:hover {
  background: #0F2C59 !important;
  border-color: #0F2C59 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(15, 44, 89, 0.35) !important;
}

.jyh-btn-sm {
  padding: 8px 16px;
  font-size: 0.8125rem;
}

.jyh-btn-lg {
  padding: 16px 32px;
  font-size: 1.0625rem;
  border-radius: var(--radius-lg);
}

/* ==========================================================================
   HERO SECTION - High Tech Dark Theme with Interactive CAD & Matrix
   ========================================================================== */
.jyh-hero {
  position: relative;
  background: linear-gradient(135deg, #1A2D4E 0%, #1E3A6E 50%, #1A2D4E 100%);
  color: #FFFFFF;
  padding: 40px 0 45px 0;
  overflow: hidden;
}

.jyh-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: 
    radial-gradient(circle at 20% 30%, rgba(255,255,255, 0.05) 0%, transparent 50%),
    radial-gradient(circle at 80% 70%, rgba(255,255,255, 0.03) 0%, transparent 45%);
  background-size: 100% 100%, 100% 100%;
  pointer-events: none;
}

.jyh-hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
  position: relative;
  z-index: 2;
}

.jyh-hero-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.jyh-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(0, 210, 255, 0.08);
  border: 1px solid rgba(0, 210, 255, 0.25);
  color: var(--color-cyan);
  padding: 6px 16px;
  border-radius: var(--radius-full);
  font-size: 0.875rem;
  font-weight: 700;
  width: fit-content;
  backdrop-filter: blur(10px);
}

.jyh-hero-title {
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.25;
  color: #FFFFFF;
  letter-spacing: 0;
}

.jyh-hero-title span.highlight {
  background: linear-gradient(135deg, #7DCFF0 0%, #5BE8C0 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.jyh-hero-desc {
  font-size: 1.125rem;
  color: rgba(255,255,255,0.85);
  line-height: 1.7;
  max-width: 580px;
}

.jyh-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 8px;
}

.jyh-hero-actions .jyh-btn {
  padding: 10px 22px !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  border-radius: var(--radius-md) !important;
  gap: 6px !important;
}

.jyh-hero-actions .jyh-btn svg {
  width: 15px !important;
  height: 15px !important;
}

.jyh-hero-features {
  display: flex;
  gap: 24px;
  width: fit-content;
  max-width: 100%;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 12px;
}

.jyh-hero-feat-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.jyh-hero-feat-val {
  font-family: var(--font-heading);
  font-size: 1.28rem;
  font-weight: 800;
  color: #00D2FF;
  white-space: nowrap;
}

.jyh-hero-feat-lbl {
  font-size: 0.78rem;
  color: #FFFFFF;
  font-weight: 500;
  white-space: nowrap;
}

/* Hero CAD Upload & Instant DFM Widget */
.jyh-hero-cad-card {
  background: rgba(13, 24, 41, 0.85);
  border: 1px solid rgba(0, 210, 255, 0.25);
  border-radius: var(--radius-xl);
  padding: 32px;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5), 0 0 40px rgba(0, 210, 255, 0.15);
  position: relative;
}

.jyh-cad-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.jyh-cad-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #FFFFFF;
}

.jyh-cad-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  color: #10B981;
  font-weight: 600;
}

.jyh-cad-status::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #10B981;
}

/* CAD Dropzone */
.jyh-dropzone {
  border: 2px dashed rgba(0, 210, 255, 0.4);
  background: rgba(15, 90, 149, 0.08);
  border-radius: var(--radius-lg);
  padding: 36px 20px;
  text-align: center;
  cursor: pointer;
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.jyh-dropzone:hover, .jyh-dropzone.dragover {
  border-color: #00D2FF;
  background: rgba(0, 210, 255, 0.12);
  box-shadow: 0 0 25px rgba(0, 210, 255, 0.25);
}

.jyh-dropzone-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(0, 210, 255, 0.15);
  color: #00D2FF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.75rem;
}

.jyh-dropzone-prompt {
  font-size: 1rem;
  font-weight: 700;
  color: #FFFFFF;
}

.jyh-dropzone-sub {
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.75);
}

.jyh-cad-formats {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.jyh-format-pill {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #FFFFFF;
  padding: 2px 8px;
  border-radius: var(--radius-sm);
}

.jyh-cad-footer {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.75rem;
  color: rgba(255,255,255,0.7);
}

/* ==========================================================================
   COMPANY VIDEO & VIRTUAL FACTORY TOUR SECTION
   ========================================================================== */

#services.jyh-section,
#services {
  padding-top: 18px !important;
}

.jyh-video-section {
  padding: 45px 0 0 0 !important;
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
  position: relative;
}

.jyh-video-wrapper {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
}

.jyh-video-card {
  position: relative;
  background: #0B132B;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 20px 50px -10px rgba(15, 23, 42, 0.2), 0 0 0 1px rgba(226, 232, 240, 0.8);
  aspect-ratio: 16 / 9;
  width: 100%;
}

.jyh-video-card iframe,
.jyh-video-card video {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}

.jyh-video-cover {
  position: absolute;
  inset: 0;
  z-index: 5;
  background: #0B132B;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.35s ease;
}

.jyh-video-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.85;
  transition: transform 0.5s ease, opacity 0.5s ease;
}

.jyh-video-cover:hover img {
  transform: scale(1.02);
  opacity: 0.95;
}

.jyh-video-overlay-gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 19, 43, 0.2) 0%, rgba(11, 19, 43, 0.65) 100%);
}

.jyh-video-badge-top {
  position: absolute;
  top: 24px;
  left: 24px;
  z-index: 6;
  display: flex;
  align-items: center;
  gap: 10px;
}

.jyh-video-badge-pill {
  background: rgba(11, 19, 43, 0.85);
  backdrop-filter: blur(8px);
  color: #FFFFFF;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 6px 14px;
  border-radius: 50px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.jyh-video-pulse-dot {
  width: 8px;
  height: 8px;
  background: #EF4444;
  border-radius: 50%;
  display: inline-block;
  box-shadow: 0 0 8px #EF4444;
  animation: jyhPulseDot 1.5s infinite;
}

@keyframes jyhPulseDot {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(239, 68, 68, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); }
}

.jyh-video-play-btn {
  position: absolute;
  z-index: 7;
  width: 84px;
  height: 84px;
  background: #1E3A5F;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  box-shadow: 0 10px 30px rgba(30, 58, 95, 0.5), 0 0 0 10px rgba(255, 255, 255, 0.15);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}

.jyh-video-cover:hover .jyh-video-play-btn {
  transform: scale(1.1);
  background: #2563EB;
  box-shadow: 0 15px 40px rgba(37, 99, 235, 0.6), 0 0 0 14px rgba(255, 255, 255, 0.25);
}

.jyh-video-play-btn svg {
  width: 32px;
  height: 32px;
  margin-left: 4px;
  fill: currentColor;
}

.jyh-video-card.playing .jyh-video-cover {
  opacity: 0;
  pointer-events: none;
}

.jyh-video-stats-strip {
  margin-top: 24px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.jyh-video-stat-item {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: 12px;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.jyh-video-stat-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(30, 58, 95, 0.08);
  border-color: #CBD5E1;
}

.jyh-video-stat-icon {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: #EFF6FF;
  color: #000000 !important; font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  flex-shrink: 0;
}

.jyh-video-stat-info strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: #FFFFFF !important;
  line-height: 1.3;
}

.jyh-video-stat-info span {
  font-size: 0.8125rem;
  color: #FFFFFF !important; font-weight: 600;
}

@media (max-width: 900px) {
  .jyh-video-stats-strip {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .jyh-video-stats-strip {
    grid-template-columns: 1fr;
  }
  .jyh-video-play-btn {
    width: 64px;
    height: 64px;
  }
  .jyh-video-play-btn svg {
    width: 24px;
    height: 24px;
  }
}


/* ==========================================================================
   SERVICES & MANUFACTURING DIVISIONS SECTION
   ========================================================================== */
.jyh-section {
  padding: 100px 0;
  position: relative;
}

.jyh-section-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 60px auto;
}

.jyh-section-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-primary);
  background: #EFF6FF;
  border: 1px solid #DBEAFE;
  padding: 4px 14px;
  border-radius: var(--radius-full);
  margin-bottom: 12px;
}

.jyh-section-title {
  font-size: 2.5rem;
  font-weight: 800;
  color: #0F172A;
  margin-bottom: 16px;
}

.jyh-section-subtitle {
  font-size: 1.0625rem;
  color: #6B7280;
  line-height: 1.6;
}

/* Services 6-Grid */
.jyh-services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.jyh-service-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
}

.jyh-service-card:hover {
  transform: translateY(-8px);
  border-color: #93C5FD;
  box-shadow: var(--shadow-xl);
}

.jyh-service-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  background: #0F172A;
  overflow: hidden;
}

.jyh-service-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform var(--transition-slow);
}

.jyh-service-card:hover .jyh-service-img {
  transform: scale(1.08);
}

.jyh-service-tag {
  position: absolute;
  top: 16px;
  left: 16px;
  background: rgba(15, 23, 42, 0.85);
  backdrop-filter: blur(8px);
  color: #00D2FF;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: var(--radius-full);
  border: 1px solid rgba(0, 210, 255, 0.3);
}

.jyh-service-body {
  padding: 28px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 16px;
}

.jyh-service-title,
.service-card-title {
  font-size: 1.35rem;
  font-weight: 700;
  color: #0F172A;
  line-height: 1.35;
}

.jyh-service-title a,
.service-card-title a {
  color: #0F172A;
  text-decoration: none;
  transition: color var(--transition-fast), transform var(--transition-fast);
  display: inline-block;
}

.jyh-service-title a:hover,
.service-card-title a:hover {
  color: #0052FF;
  text-decoration: none;
  transform: translateX(2px);
}

.jyh-service-desc {
  font-size: 0.9375rem;
  color: #6B7280;
  line-height: 1.6;
}

.jyh-service-specs {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px;
  background: #F8FAFC;
  border-radius: var(--radius-md);
  border: 1px solid #EDF2F7;
  font-size: 0.8125rem;
}

.jyh-service-spec-row {
  display: flex;
  justify-content: space-between;
  color: #6B7280;
}

.jyh-service-spec-row strong {
  color: #1E293B;
}

.jyh-service-btn {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  color: var(--color-primary);
  font-size: 0.9375rem;
}

.jyh-service-btn:hover {
  color: var(--color-primary-dark);
  gap: 12px;
}

/* ==========================================================================
   4-STEP DFM & ON-DEMAND PRODUCTION WORKFLOW
   ========================================================================== */
.jyh-workflow-section {
  background: linear-gradient(180deg, #1A2D4E 0%, #1E3A6E 100%);
  color: #FFFFFF;
}

.jyh-workflow-section .jyh-section-title {
  color: #FFFFFF;
}

.jyh-workflow-section .jyh-section-subtitle {
  color: #FFFFFF;
}

.jyh-workflow-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  position: relative;
}

.jyh-workflow-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-lg);
  padding: 32px 24px;
  position: relative;
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.jyh-workflow-card:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(0, 210, 255, 0.4);
  transform: translateY(-6px);
  box-shadow: 0 15px 35px -5px rgba(0, 210, 255, 0.15);
}

.jyh-step-badge {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary) 0%, #00D2FF 100%);
  color: #FFFFFF;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 15px rgba(0, 210, 255, 0.3);
}

.jyh-step-title {
  font-size: 1.1875rem;
  font-weight: 700;
  color: #FFFFFF;
}

.jyh-step-desc {
  font-size: 0.875rem;
  color: #FFFFFF;
  line-height: 1.6;
}

/* ==========================================================================
   MATERIALS MATRIX & INDUSTRIES SECTION
   ========================================================================== */
.jyh-materials-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.jyh-material-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-lg);
  padding: 24px;
  transition: all var(--transition-fast);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.jyh-material-card:hover {
  border-color: var(--color-primary);
  box-shadow: var(--shadow-md);
  transform: translateY(-4px);
}

.jyh-mat-type {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-primary);
  letter-spacing: 0.05em;
}

.jyh-mat-name {
  font-size: 1.125rem;
  font-weight: 700;
  color: #0F172A;
}

.jyh-mat-desc {
  font-size: 0.8125rem;
  color: #6B7280;
  line-height: 1.5;
}

/* Industry Cards 4x2 Grid */
.jyh-industries-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.jyh-industry-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-lg);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: all var(--transition-normal);
}

.jyh-industry-card:hover {
  border-color: #00D2FF;
  transform: translateY(-6px);
  box-shadow: 0 15px 30px -5px rgba(15, 90, 149, 0.12);
}

.jyh-ind-icon {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-md);
  background: #EFF6FF;
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
}

.jyh-ind-title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #0F172A;
}

.jyh-ind-desc {
  font-size: 0.8125rem;
  color: #6B7280;
  line-height: 1.5;
}

/* ==========================================================================
   QUALITY ASSURANCE & CMM LAB SECTION
   ========================================================================== */
.jyh-qa-banner {
  background: linear-gradient(135deg, #1A2D4E 0%, #1E3A6E 100%);
  border-radius: var(--radius-xl);
  padding: 50px;
  color: #FFFFFF;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: center;
  border: 1px solid rgba(255,255,255, 0.12);
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.15);
}

.jyh-qa-title {
  font-size: 2.25rem;
  color: #FFFFFF;
  margin-bottom: 16px;
}

.jyh-qa-desc {
  font-size: 1rem;
  color: #FFFFFF;
  line-height: 1.7;
  margin-bottom: 24px;
}

.jyh-cert-pill-group {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.jyh-cert-pill {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 8px 16px;
  border-radius: var(--radius-md);
  font-size: 0.8125rem;
  font-weight: 600;
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* ==========================================================================
   INTERACTIVE RFQ CALCULATOR WIZARD
   ========================================================================== */
.jyh-wizard-wrap {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}

.jyh-wizard-stepper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: #0F172A;
  color: #FFFFFF;
}

.jyh-step-tab {
  padding: 20px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 3px solid transparent;
  cursor: pointer;
  transition: all var(--transition-fast);
}

.jyh-step-tab.active {
  background: rgba(255, 255, 255, 0.05);
  border-bottom-color: #00D2FF;
}

.jyh-step-num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8125rem;
  font-weight: 700;
}

.jyh-step-tab.active .jyh-step-num {
  background: #00D2FF;
  color: #070D18;
}

.jyh-step-text {
  font-size: 0.875rem;
  font-weight: 700;
}

.jyh-wizard-body {
  padding: 40px;
}

.jyh-form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

.jyh-form-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.jyh-form-label {
  font-size: 0.875rem;
  font-weight: 700;
  color: #1E293B;
}

.jyh-form-control {
  width: 100%;
  padding: 12px 16px;
  font-size: 0.9375rem;
  font-family: var(--font-primary);
  border: 1px solid #D1D5DB;
  border-radius: var(--radius-md);
  background: #FFFFFF;
  color: #0F172A;
  transition: all var(--transition-fast);
}

.jyh-form-control:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(15, 90, 149, 0.15);
}

/* ==========================================================================
   FOOTER & WECHAT POPUP & FLOATING DOCK
   ========================================================================== */
.jyh-footer {
  background: #1A2332;
  color: #FFFFFF;
  padding: 80px 0 30px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.jyh-footer-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
  gap: 40px;
  margin-bottom: 60px;
}

.jyh-footer-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.jyh-footer-heading {
  font-size: 1.0625rem;
  font-weight: 700;
  color: #FFFFFF;
  letter-spacing: -0.01em;
}

.jyh-footer-links {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.jyh-footer-links a {
  color: #FFFFFF;
  font-size: 0.875rem;
}

.jyh-footer-links a:hover {
  color: #00D2FF;
  padding-left: 4px;
}

.jyh-footer-bottom {
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 0.8125rem;
  color: #FFFFFF;
}

/* Floating Action Dock */
.jyh-floating-dock,
.floating-contact-dock {
  position: fixed;
  bottom: 80px;
  right: 24px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.jyh-dock-btn,
.dock-btn {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35);
  cursor: pointer;
  transition: all var(--transition-normal);
  border: none;
  position: relative;
  text-decoration: none;
}

.jyh-dock-btn:hover,
.dock-btn:hover {
  transform: scale(1.1);
}

/* AI Bot Floating Button */
.jyh-dock-ai,
.dock-btn-ai {
  background: linear-gradient(135deg, #0052FF 0%, #00D2FF 100%);
  border: 2px solid rgba(255, 255, 255, 0.4);
  box-shadow: 0 0 20px rgba(0, 210, 255, 0.5), 0 8px 25px rgba(0, 82, 255, 0.4);
  animation: ai-pulse 3s infinite;
}

@keyframes ai-pulse {
  0%, 100% { box-shadow: 0 0 20px rgba(0, 210, 255, 0.5), 0 8px 25px rgba(0, 82, 255, 0.4); }
  50% { box-shadow: 0 0 32px rgba(0, 210, 255, 0.8), 0 8px 30px rgba(0, 82, 255, 0.6); }
}

.jyh-dock-ai .ai-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  background: #10B981;
  color: #FFFFFF;
  font-size: 0.625rem;
  font-weight: 800;
  padding: 2px 6px;
  border-radius: 10px;
  border: 1.5px solid #070D18;
  letter-spacing: 0.05em;
}

.jyh-dock-whatsapp,
.dock-btn-whatsapp {
  background: #25D366;
}

.jyh-dock-whatsapp:hover,
.dock-btn-whatsapp:hover {
  box-shadow: 0 8px 25px rgba(37, 211, 102, 0.45);
}

.jyh-dock-wechat,
.dock-btn-wechat {
  background: #07C160;
}

.jyh-dock-rfq,
.dock-btn-rfq {
  background: linear-gradient(135deg, #FF5A1F 0%, #FF7A45 100%);
}

.dock-tooltip {
  position: absolute;
  right: 64px;
  background: #070D18;
  color: #FFFFFF;
  padding: 5px 12px;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 600;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transform: translateX(10px);
  transition: all 0.2s ease;
  border: 1px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.jyh-dock-btn:hover .dock-tooltip,
.dock-btn:hover .dock-tooltip {
  opacity: 1;
  transform: translateX(0);
}

/* ==========================================================================
   AI MANUFACTURING ASSISTANT CHAT WINDOW
   ========================================================================== */
.jyh-ai-chat-window {
  position: fixed;
  bottom: 96px;
  right: 24px;
  width: 410px;
  max-width: calc(100vw - 32px);
  height: 600px;
  max-height: calc(100vh - 120px);
  background: #0B132B;
  border: 1px solid rgba(0, 210, 255, 0.35);
  border-radius: 20px;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7), 0 0 35px rgba(0, 210, 255, 0.2);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  z-index: 10000;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  transform: translateY(20px) scale(0.95);
  opacity: 0;
  pointer-events: none;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  font-family: var(--font-primary);
}

.jyh-ai-chat-window.active {
  transform: translateY(0) scale(1);
  opacity: 1;
  pointer-events: auto;
}

.jyh-ai-chat-header {
  background: linear-gradient(135deg, #070D18 0%, #0F233D 100%);
  padding: 14px 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.jyh-ai-header-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.jyh-ai-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg, #0052FF 0%, #00D2FF 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  font-size: 1.25rem;
  position: relative;
  box-shadow: 0 0 15px rgba(0, 210, 255, 0.5);
}

.jyh-ai-avatar-pulse {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 10px;
  height: 10px;
  background: #10B981;
  border: 2px solid #070D18;
  border-radius: 50%;
  box-shadow: 0 0 8px #10B981;
}

.jyh-ai-title-wrap {
  display: flex;
  flex-direction: column;
}

.jyh-ai-name {
  color: #FFFFFF;
  font-size: 0.95rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 6px;
}

.jyh-ai-verified {
  background: rgba(0, 210, 255, 0.15);
  color: #00D2FF;
  font-size: 0.65rem;
  padding: 2px 6px;
  border-radius: 4px;
  font-weight: 700;
}

.jyh-ai-status-sub {
  color: #FFFFFF;
  font-size: 0.75rem;
}

.jyh-ai-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.jyh-ai-action-btn {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #FFFFFF;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 0.85rem;
}

.jyh-ai-action-btn:hover {
  background: #00D2FF;
  color: #070D18;
  border-color: #00D2FF;
}

.jyh-ai-chat-body {
  flex: 1;
  overflow-y: auto;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  scroll-behavior: smooth;
}

.jyh-ai-chat-body::-webkit-scrollbar {
  width: 6px;
}

.jyh-ai-chat-body::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 4px;
}

.jyh-ai-msg {
  display: flex;
  flex-direction: column;
  max-width: 88%;
  animation: msg-fade-in 0.3s ease;
}

@keyframes msg-fade-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

.jyh-ai-msg-bot {
  align-self: flex-start;
}

.jyh-ai-msg-user {
  align-self: flex-end;
}

.jyh-ai-bubble {
  padding: 12px 16px;
  border-radius: 14px;
  font-size: 0.88rem;
  line-height: 1.55;
}

.jyh-ai-msg-bot .jyh-ai-bubble {
  background: #132238;
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #F1F5F9;
  border-bottom-left-radius: 4px;
}

.jyh-ai-msg-user .jyh-ai-bubble {
  background: linear-gradient(135deg, #0052FF 0%, #0088FF 100%);
  color: #FFFFFF;
  border-bottom-right-radius: 4px;
  box-shadow: 0 4px 15px rgba(0, 82, 255, 0.3);
}

.jyh-ai-time {
  font-size: 0.6875rem;
  color: rgba(255,255,255,0.55);
  margin-top: 4px;
  padding: 0 4px;
}

.jyh-ai-msg-user .jyh-ai-time {
  text-align: right;
}

.jyh-ai-quick-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.jyh-ai-pill-btn {
  background: rgba(0, 210, 255, 0.08);
  border: 1px solid rgba(0, 210, 255, 0.28);
  color: #00D2FF;
  font-size: 0.75rem;
  padding: 6px 11px;
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: left;
  line-height: 1.3;
}

.jyh-ai-pill-btn:hover {
  background: #00D2FF;
  color: #070D18;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 210, 255, 0.3);
}

.jyh-ai-action-btn-inline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: linear-gradient(135deg, #FF5A1F 0%, #FF7A45 100%);
  color: #FFFFFF !important;
  padding: 7px 14px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 0.78rem;
  font-weight: 700;
  margin-top: 10px;
  margin-right: 6px;
  box-shadow: 0 4px 12px rgba(255, 90, 31, 0.3);
  transition: all 0.2s;
}

.jyh-ai-action-btn-inline:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(255, 90, 31, 0.5);
}

.jyh-ai-action-btn-outline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #FFFFFF !important;
  padding: 7px 14px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 0.78rem;
  font-weight: 600;
  margin-top: 10px;
  transition: all 0.2s;
}

.jyh-ai-action-btn-outline:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: #00D2FF;
  color: #00D2FF !important;
}

/* Typing Indicator */
.jyh-ai-typing {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 10px 16px;
  background: #132238;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  width: fit-content;
}

.jyh-ai-dot {
  width: 6px;
  height: 6px;
  background: #00D2FF;
  border-radius: 50%;
  animation: typing-dot 1.4s infinite ease-in-out;
}

.jyh-ai-dot:nth-child(2) { animation-delay: 0.2s; }
.jyh-ai-dot:nth-child(3) { animation-delay: 0.4s; }

@keyframes typing-dot {
  0%, 60%, 100% { transform: translateY(0); opacity: 0.4; }
  30% { transform: translateY(-5px); opacity: 1; }
}

.jyh-ai-chat-input-wrap {
  padding: 12px 16px;
  background: #070D18;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  gap: 8px;
  align-items: center;
}

.jyh-ai-input {
  flex: 1;
  background: #132238;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 10px;
  color: #FFFFFF;
  padding: 10px 14px;
  font-size: 0.88rem;
  outline: none;
  font-family: inherit;
  transition: border-color 0.2s;
}

.jyh-ai-input:focus {
  border-color: #00D2FF;
  box-shadow: 0 0 10px rgba(0, 210, 255, 0.2);
}

.jyh-ai-input::placeholder {
  color: rgba(255,255,255,0.5);
}

.jyh-ai-send-btn {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: linear-gradient(135deg, #0052FF, #00D2FF);
  border: none;
  color: #FFFFFF;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.2s;
}

.jyh-ai-send-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(0, 210, 255, 0.5);
}

.jyh-ai-send-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}

/* WeChat Modal */
.jyh-modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(8px);
  z-index: 2000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.jyh-modal-backdrop.active {
  display: flex;
}

.jyh-modal-card {
  background: #FFFFFF;
  border-radius: var(--radius-xl);
  max-width: 440px;
  width: 100%;
  padding: 32px;
  text-align: center;
  position: relative;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4);
}

.jyh-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: #F1F5F9;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  cursor: pointer;
  font-weight: 700;
}

/* ==========================================================================
   LATEST POSTS & ARTICLES SECTION
   ========================================================================== */
.latest-posts-section {
  padding: 90px 0;
  background: #F5F5F0;
  border-top: 1px solid #E5E7EB;
}

.section-header-flex {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 48px;
  flex-wrap: wrap;
  gap: 20px;
}

.latest-posts-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.latest-posts-track {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  padding: 10px 4px 20px 4px;
  -webkit-overflow-scrolling: touch;
}

.latest-posts-track .post-card {
  flex: 0 0 calc(33.333% - 16px);
  min-width: 320px;
  scroll-snap-align: start;
}

.post-card {
  background: #ffffff;
  border-radius: var(--radius-lg);
  border: 1.5px solid #1076BE;
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
}

.post-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 35px -10px rgba(15, 23, 42, 0.12);
  border-color: #0052ff;
}

.post-thumb-wrap {
  position: relative;
  width: 100%;
  height: 220px;
  overflow: hidden;
  background: #0b132b;
}

.post-thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow);
}

.post-card:hover .post-thumb-img {
  transform: scale(1.05);
}

.post-badge-cat {
  position: absolute;
  top: 14px;
  left: 14px;
  background: rgba(0, 82, 255, 0.9);
  backdrop-filter: blur(8px);
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 4px 12px;
  border-radius: 20px;
}

.post-content-wrap {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.post-meta-row {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 0.8125rem;
  color: #9CA3AF;
  margin-bottom: 12px;
}

.post-card-title {
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 12px;
}

.post-card-title a {
  color: #0f172a;
  text-decoration: none;
  transition: color var(--transition-fast);
}

.post-card-title a:hover {
  color: #0052ff;
}

.post-card-excerpt {
  color: #475569;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 20px;
  flex-grow: 1;
}

.post-card-footer {
  padding-top: 16px;
  border-top: 1px solid #f1f5f9;
}

.post-read-more-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #0052ff;
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
  transition: gap var(--transition-fast);
}

.post-read-more-link:hover {
  gap: 10px;
  color: #003ebd;
}

/* ==========================================================================
   RESPONSIVE MEDIA QUERIES
   ========================================================================== */
@media (max-width: 1024px) {
  .jyh-hero-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .jyh-services-grid, .latest-posts-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .jyh-workflow-grid, .jyh-materials-grid, .jyh-industries-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .jyh-footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .jyh-qa-banner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .jyh-hero-title {
    font-size: 2.25rem;
  }
  
  .jyh-services-grid, .latest-posts-grid, .jyh-workflow-grid, .jyh-materials-grid, .jyh-industries-grid {
    grid-template-columns: 1fr;
  }

  .section-header-flex {
    flex-direction: column;
    align-items: flex-start;
  }

  .jyh-hero-features {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .jyh-nav-menu {
    display: none;
  }

  .jyh-footer-grid {
    grid-template-columns: 1fr;
  }

  .jyh-form-grid {
    grid-template-columns: 1fr;
  }

  .jyh-wizard-stepper {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ==========================================================================
   GLOBAL WORLDWIDE CONVERSION & RETENTION STYLES
   ========================================================================== */
.factory-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(16, 185, 129, 0.15);
  border: 1px solid rgba(16, 185, 129, 0.3);
  color: #10B981;
  padding: 3px 8px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
}

.pulse-dot {
  width: 7px;
  height: 7px;
  background-color: #10B981;
  border-radius: 50%;
  box-shadow: 0 0 8px #10B981;
  animation: pulse-green 1.8s infinite;
}

@keyframes pulse-green {
  0% { transform: scale(0.95); opacity: 0.7; }
  50% { transform: scale(1.3); opacity: 1; }
  100% { transform: scale(0.95); opacity: 0.7; }
}

.global-unit-toggle {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #FFFFFF;
  padding: 3px 10px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}

.global-unit-toggle:hover, .global-unit-toggle.active {
  background: #00D2FF;
  color: #070D18;
}

.global-currency-select, .global-lang-select {
  background: rgba(15, 23, 42, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #FFFFFF;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
  outline: none;
  cursor: pointer;
}

/* Worldwide Social Proof Toast Ticker */
.global-social-proof-ticker {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 9998;
  pointer-events: none;
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.global-social-proof-ticker.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.proof-toast {
  background: rgba(11, 19, 43, 0.95);
  border: 1px solid rgba(0, 210, 255, 0.3);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-radius: 12px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4);
  max-width: 360px;
}

.proof-flag {
  font-size: 1.8rem;
}

.proof-content {
  flex-grow: 1;
}

.proof-title {
  font-size: 0.75rem;
  font-weight: 700;
  color: #00D2FF;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.proof-desc {
  font-size: 0.875rem;
  color: #FFFFFF;
  line-height: 1.35;
  margin: 2px 0;
}

.proof-time {
  font-size: 0.7rem;
  color: #FFFFFF;
}

.proof-close {
  background: none;
  border: none;
  color: #FFFFFF;
  font-size: 1rem;
  cursor: pointer;
  padding: 2px 6px;
}

.proof-close:hover {
  color: #FFFFFF;
}

/* Exit-Intent Retention Modal */
.exit-intent-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(7, 13, 24, 0.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.exit-intent-modal-overlay.open {
  display: flex;
  animation: fadeIn 0.3s ease;
}

.exit-modal-card {
  background: #FFFFFF;
  border-radius: 20px;
  padding: 40px;
  max-width: 540px;
  width: 100%;
  position: relative;
  text-align: center;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.4);
}

.exit-modal-close {
  position: absolute;
  top: 16px;
  right: 18px;
  background: #F1F5F9;
  border: none;
  font-size: 1.3rem;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  cursor: pointer;
  color: #FFFFFF;
}

.exit-modal-badge {
  display: inline-block;
  background: #FEF3C7;
  color: #D97706;
  font-weight: 800;
  font-size: 0.75rem;
  padding: 4px 14px;
  border-radius: 20px;
  margin-bottom: 14px;
}

.exit-modal-title {
  font-size: 1.6rem;
  font-weight: 800;
  color: #0F172A;
  margin-bottom: 12px;
}

.exit-modal-desc {
  font-size: 0.95rem;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 24px;
}

/* Global Worldwide Express Shipping Bar */
.global-transit-bar {
  background: #0B132B;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding: 14px 0;
  color: #FFFFFF;
  font-size: 0.8125rem;
}

.transit-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.transit-tag {
  font-weight: 700;
  color: #00D2FF;
}

.transit-zones {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.transit-pill {
  background: rgba(255, 255, 255, 0.06);
  padding: 4px 10px;
  border-radius: 6px;
}

@keyframes fadeIn {
  from { opacity: 0; transform: scale(0.96); }
  to { opacity: 1; transform: scale(1); }
}

/* ==========================================================================
   Global Multilingual Engine & Google Translate Stealth Integration
   Author: China Akash Vai
   ========================================================================== */
#google_translate_element {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}

.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
iframe.goog-te-banner-frame {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
}

body {
  top: 0px !important;
  position: static !important;
}

.goog-text-highlight {
  background: transparent !important;
  box-shadow: none !important;
}

.goog-tooltip,
.goog-tooltip:hover {
  display: none !important;
}

.goog-te-gadget {
  display: none !important;
}

/* RTL Layout Support for Arabic */
[dir="rtl"] {
  text-align: right;
  direction: rtl;
}

[dir="rtl"] .top-promo-inner,
[dir="rtl"] .header-inner,
[dir="rtl"] .hero-row,
[dir="rtl"] .rfq-calc-grid,
[dir="rtl"] .footer-grid,
[dir="rtl"] .nav-menu {
  direction: rtl;
}

[dir="rtl"] .post-read-more-link svg,
[dir="rtl"] .btn-primary svg {
  transform: scaleX(-1);
}

/* Language Change Notification Toast */
.lang-notification-toast {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 99999;
  background: rgba(13, 24, 41, 0.95);
  border: 1px solid #00D2FF;
  box-shadow: 0 10px 30px rgba(0, 210, 255, 0.3), 0 0 20px rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(12px);
  color: #FFFFFF;
  padding: 12px 20px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-primary);
  font-size: 0.875rem;
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}

.lang-notification-toast.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.lang-notification-toast .toast-flag {
  font-size: 1.35rem;
}

.lang-notification-toast .toast-text strong {
  color: #00D2FF;
}

/* ==========================================================================
   WORDPRESS APPEARANCE WIDGETS & SIDEBAR DESIGN SYSTEM
   ========================================================================== */
.sidebar-widget,
.service-sidebar-widget,
.widget {
  background: #FFFFFF;
  padding: 24px;
  border-radius: var(--radius-lg);
  border: 1px solid var(--border-light);
  margin-bottom: 28px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease;
}

.sidebar-widget:hover,
.service-sidebar-widget:hover {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
}

.widget-title,
.sidebar-widget h3,
.service-sidebar-widget h3 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--text-dark);
  margin-top: 0;
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--color-primary);
  font-family: var(--font-heading);
  letter-spacing: -0.01em;
}

/* Custom JYH Instant RFQ Widget */
.jyh-widget-rfq-card {
  background: linear-gradient(135deg, #070D18 0%, #0E1E38 100%);
  color: #FFFFFF;
  padding: 28px 22px;
  border-radius: var(--radius-lg);
  border: 1px solid rgba(0, 210, 255, 0.3);
  text-align: center;
  box-shadow: 0 12px 30px rgba(0, 82, 255, 0.2);
}

.jyh-widget-rfq-icon {
  width: 48px;
  height: 48px;
  background: rgba(0, 210, 255, 0.15);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 14px;
}

.jyh-widget-rfq-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 8px;
}

.jyh-widget-rfq-desc {
  font-size: 0.85rem;
  color: #FFFFFF;
  margin-bottom: 18px;
  line-height: 1.5;
}

.jyh-widget-rfq-features {
  margin-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 0.78rem;
  color: #00D2FF;
  font-weight: 500;
}

/* Custom JYH Contact Widget */
.jyh-widget-contact-box {
  background: #FFFFFF;
}

/* Footer Dynamic Widgets */
.footer-widget-block {
  margin-bottom: 20px;
}

.footer-widget-block .footer-heading,
.footer-widget-block .widget-title {
  font-size: 0.95rem;
  font-weight: 700;
  color: #FFFFFF;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 16px;
  border-bottom: 2px solid #00D2FF;
  padding-bottom: 6px;
  display: inline-block;
}

.footer-widget-block ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-widget-block ul li {
  margin-bottom: 10px;
}

.footer-widget-block ul li a {
  color: #FFFFFF;
  text-decoration: none;
  font-size: 0.875rem;
  transition: color 0.2s ease, transform 0.2s ease;
  display: inline-block;
}

.footer-widget-block ul li a:hover {
  color: #00D2FF;
  transform: translateX(4px);
}

/* Core WordPress Widgets Support (Search, Categories, Recent Posts, Archives, Tags) */
.widget_search .search-form {
  display: flex;
  gap: 8px;
}

.widget_search input[type="search"] {
  flex: 1;
  padding: 10px 14px;
  border: 1px solid var(--border-light);
  border-radius: var(--radius-sm);
  font-size: 0.9rem;
  outline: none;
}

.widget_search input[type="search"]:focus {
  border-color: var(--color-primary);
}

.widget_categories ul,
.widget_archive ul,
.widget_meta ul,
.widget_pages ul,
.widget_nav_menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.widget_categories ul li,
.widget_archive ul li,
.widget_meta ul li,
.widget_pages ul li,
.widget_nav_menu ul li {
  border-bottom: 1px solid #F1F5F9;
  padding: 10px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.92rem;
}

.widget_categories ul li a,
.widget_archive ul li a,
.widget_meta ul li a,
.widget_pages ul li a,
.widget_nav_menu ul li a {
  color: var(--text-dark);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s;
}

.widget_categories ul li a:hover,
.widget_archive ul li a:hover {
  color: var(--color-primary);
}

.widget_recent_entries ul,
.widget_recent_comments ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.widget_recent_entries ul li {
  padding: 10px 0;
  border-bottom: 1px solid #F1F5F9;
  font-size: 0.9rem;
}

.widget_recent_entries ul li a {
  color: var(--text-dark);
  font-weight: 600;
  text-decoration: none;
  display: block;
  margin-bottom: 4px;
}

.widget_recent_entries ul li a:hover {
  color: var(--color-primary);
}

.widget_recent_entries .post-date {
  font-size: 0.78rem;
  color: var(--text-muted);
}

/* Tag Cloud Widget */
.widget_tag_cloud .tagcloud a {
  display: inline-block;
  background: #F1F5F9;
  color: #000000 !important; font-weight: 500;
  padding: 4px 10px;
  border-radius: var(--radius-sm);
  font-size: 0.8125rem !important;
  margin: 0 4px 6px 0;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s;
}

.widget_tag_cloud .tagcloud a:hover {
  background: var(--color-primary);
  color: #FFFFFF;
}

/* Gutenberg Block Widgets in Appearance -> Widgets */
.wp-block-widget-area {
  margin-bottom: 24px;
}

.wp-block-group.widget {
  background: #FFFFFF;
  padding: 24px;
  border-radius: var(--radius-lg);
  border: 1px solid var(--border-light);
  margin-bottom: 24px;
}

/* ==========================================================================
   HUMAN EDITORIAL ARTICLE BODY
   Clean, readable, professional — like NYT / Medium / Protolabs Blog
   ========================================================================== */

.article-body h2, .entry-content h2 {
  font-size: 1.75rem; font-weight: 800; color: #111827;
  margin: 2.5rem 0 1rem; line-height: 1.3; letter-spacing: -0.015em;
}
.article-body h3, .entry-content h3 {
  font-size: 1.375rem; font-weight: 700; color: #1F2937;
  margin: 2rem 0 0.75rem; line-height: 1.35;
}
.article-body h4, .entry-content h4 {
  font-size: 1.125rem; font-weight: 700; color: #374151;
  margin: 1.5rem 0 0.5rem;
}
.article-body p, .entry-content p {
  color: #374151; font-size: 1.125rem; line-height: 1.85; margin: 0 0 1.5rem 0;
}
.article-body ul, .entry-content ul { list-style: none; padding: 0; margin: 0 0 1.5rem 0; }
.article-body ul li, .entry-content ul li {
  position: relative; padding-left: 24px; color: #374151;
  font-size: 1.0625rem; line-height: 1.75; margin-bottom: 10px;
}
.article-body ul li::before, .entry-content ul li::before {
  content: ''; position: absolute; left: 0; top: 12px;
  width: 7px; height: 7px; border-radius: 50%; background: #1D4ED8;
}
.article-body ol, .entry-content ol { padding-left: 24px; margin: 0 0 1.5rem 0; }
.article-body ol li, .entry-content ol li {
  color: #374151; font-size: 1.0625rem; line-height: 1.75; margin-bottom: 10px; padding-left: 6px;
}
.article-body ol li::marker, .entry-content ol li::marker { color: #1D4ED8; font-weight: 700; }

/* Blockquote */
.article-body blockquote, .entry-content blockquote {
  border-left: 4px solid #1D4ED8; margin: 2rem 0;
  padding: 16px 24px; background: #F0F7FF; border-radius: 0 8px 8px 0;
}
.article-body blockquote p, .entry-content blockquote p {
  color: #1E3A5F; font-size: 1.125rem; font-style: italic; font-weight: 500; margin: 0;
}

/* Code */
.article-body pre, .entry-content pre {
  background: #1F2937; color: #E5E7EB; border-radius: 8px;
  padding: 20px 24px; font-family: 'JetBrains Mono', monospace;
  font-size: 0.875rem; line-height: 1.7; overflow-x: auto; margin: 1.5rem 0;
}
.article-body code, .entry-content code {
  background: #F3F4F6; color: #DC2626; font-family: 'JetBrains Mono', monospace;
  font-size: 0.875em; padding: 2px 6px; border-radius: 4px; border: 1px solid #E5E7EB;
}
.article-body pre code, .entry-content pre code {
  background: none; color: inherit; padding: 0; border: none; border-radius: 0;
}

/* Images */
.article-body img, .article-body .wp-block-image img {
  border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,0.08);
  width: 100%; height: auto; aspect-ratio: unset; display: block; margin: 1.5rem 0;
}
.article-body figcaption, .entry-content figcaption {
  text-align: center; font-size: 0.8125rem; color: #9CA3AF; font-style: italic; margin-top: 8px;
}

/* HR */
.article-body hr, .entry-content hr {
  border: none; border-top: 2px solid #F3F4F6; margin: 2.5rem 0;
}

/* Tables */
.article-body table, .entry-content table {
  width: 100%; border-collapse: collapse; margin: 1.5rem 0; font-size: 0.9375rem;
}
.article-body table th, .entry-content table th {
  background: #1E3A5F; color: #FFFFFF; font-weight: 700;
  padding: 12px 16px; text-align: left; font-size: 0.875rem;
}
.article-body table td, .entry-content table td {
  padding: 11px 16px; border-bottom: 1px solid #E5E7EB; color: #374151; vertical-align: top;
}
.article-body table tr:nth-child(even) td, .entry-content table tr:nth-child(even) td {
  background: #F9FAFB;
}

/* Links */
.article-body a, .entry-content a {
  color: #1D4ED8; text-decoration: underline; text-underline-offset: 3px;
  text-decoration-color: rgba(29,78,216,0.35); font-weight: 500;
}
.article-body a:hover, .entry-content a:hover {
  color: #1E40AF; text-decoration-color: #1E40AF;
}
.article-body strong, .entry-content strong { font-weight: 700; color: #111827; }

/* Comments */
.comment-body {
  background: #FFFFFF; border: 1px solid #E5E7EB; border-radius: 8px;
  padding: 20px; margin-bottom: 20px;
}
.comment-author .fn { font-weight: 700; color: #111827; }
.comment-metadata a { color: #9CA3AF; font-size: 0.8125rem; }
#respond h3#reply-title { font-size: 1.25rem; font-weight: 700; color: #111827; margin-bottom: 20px; }
#respond .comment-form-comment label,
#respond .comment-form-author label,
#respond .comment-form-email label {
  font-size: 0.875rem; font-weight: 600; color: #374151; display: block; margin-bottom: 6px;
}
#respond input[type="text"],
#respond input[type="email"],
#respond textarea {
  width: 100%; border: 1px solid #D1D5DB; border-radius: 6px;
  padding: 10px 14px; font-size: 1rem; color: #111827;
  background: #FFFFFF; box-sizing: border-box;
}
#respond input:focus, #respond textarea:focus {
  outline: none; border-color: #1D4ED8; box-shadow: 0 0 0 3px rgba(29,78,216,0.12);
}
#respond .submit {
  background: #1D4ED8; color: #FFFFFF; border: none; padding: 12px 28px;
  border-radius: 6px; font-weight: 700; font-size: 0.9375rem; cursor: pointer;
}
#respond .submit:hover { background: #1E40AF; }

/* Single article page layout */
.jyh-article-single { background: #FFFFFF; }
.article-header { background: #FFFFFF; border-bottom: 1px solid #E5E7EB; }

    /* ============================================================
       COMPLETE MOBILE RESPONSIVE SYSTEM (320px - 1024px)
       Zero horizontal overflow, touch-optimized, mobile drawer
       ============================================================ */
    html, body {
      overflow-x: hidden !important;
      max-width: 100vw !important;
      width: 100% !important;
      margin: 0;
      padding: 0;
      -webkit-text-size-adjust: 100%;
    }

    * {
      box-sizing: border-box;
    }

    img, video, canvas, svg {
      max-width: 100%;
      height: auto;
    }

    /* Mobile Hamburger Button */
    .jyh-mobile-toggle {
      display: none;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 5px;
      width: 42px;
      height: 42px;
      background: rgba(255, 255, 255, 0.08);
      border: 1px solid rgba(255, 255, 255, 0.15);
      border-radius: 8px;
      cursor: pointer;
      padding: 8px;
      z-index: 1001;
      transition: all 0.25s ease;
    }
    .jyh-mobile-toggle span {
      display: block;
      width: 22px;
      height: 2px;
      background: #ffffff;
      border-radius: 2px;
      transition: all 0.3s ease;
    }
    .jyh-mobile-toggle.active span:nth-child(1) {
      transform: translateY(7px) rotate(45deg);
    }
    .jyh-mobile-toggle.active span:nth-child(2) {
      opacity: 0;
    }
    .jyh-mobile-toggle.active span:nth-child(3) {
      transform: translateY(-7px) rotate(-45deg);
    }

    /* Mobile Navigation Drawer */
    .jyh-mobile-drawer {
      position: fixed;
      top: 0;
      right: -100%;
      width: 310px;
      max-width: 85vw;
      height: 100vh;
      background: #0d1b2e;
      z-index: 99999;
      box-shadow: -8px 0 30px rgba(0,0,0,0.5);
      display: flex;
      flex-direction: column;
      padding: 24px 20px;
      overflow-y: auto;
      transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1);
      border-left: 1px solid rgba(255,255,255,0.1);
    }
    .jyh-mobile-drawer.open {
      right: 0;
    }
    .jyh-mobile-drawer-backdrop {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.65);
      backdrop-filter: blur(4px);
      -webkit-backdrop-filter: blur(4px);
      z-index: 99998;
      display: none;
      opacity: 0;
      transition: opacity 0.3s ease;
    }
    .jyh-mobile-drawer-backdrop.show {
      display: block;
      opacity: 1;
    }
    .jyh-drawer-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 24px;
      padding-bottom: 16px;
      border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    .jyh-drawer-logo {
      display: flex;
      align-items: center;
      gap: 8px;
      color: #ffffff;
      text-decoration: none;
      font-weight: 700;
      font-size: 1rem;
    }
    .jyh-drawer-close {
      background: rgba(255,255,255,0.1);
      border: none;
      color: #ffffff;
      width: 34px;
      height: 34px;
      border-radius: 50%;
      font-size: 1.1rem;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .jyh-drawer-nav {
      list-style: none;
      padding: 0;
      margin: 0 0 24px 0;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }
    .jyh-drawer-link {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 12px 14px;
      color: #e2e8f0;
      text-decoration: none;
      font-weight: 600;
      font-size: 0.95rem;
      border-radius: 8px;
      transition: background 0.2s, color 0.2s;
    }
    .jyh-drawer-link:hover, .jyh-drawer-link:active {
      background: rgba(0, 82, 255, 0.15);
      color: #60a5fa;
    }
    .jyh-drawer-cta {
      margin-top: auto;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    /* Tablet and Mobile Media Queries */
    @media (max-width: 1024px) {
      .jyh-container {
        padding-left: 18px !important;
        padding-right: 18px !important;
      }
      .jyh-nav-menu {
        display: none !important;
      }
      .jyh-mobile-toggle {
        display: flex !important;
      }
      .jyh-header-inner {
        justify-content: space-between !important;
      }
      .jyh-header-cta {
        display: none !important;
      }
      .jyh-hero-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
      }
      .jyh-hero-cad-card {
        min-height: 320px !important;
        max-height: 420px !important;
      }
      .jyh-services-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
      }
      .jyh-workflow-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-materials-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-industries-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-footer-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
    }

    /* Mobile Viewports (< 768px) */
    @media (max-width: 768px) {
      .jyh-topbar {
        padding: 8px 0 !important;
      }
      .jyh-topbar-inner {
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
        text-align: center !important;
      }
      .jyh-topbar-badges {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px !important;
        font-size: 0.72rem !important;
      }
      .jyh-topbar-links {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 8px !important;
        font-size: 0.75rem !important;
        width: 100% !important;
      }
      .jyh-topbar-links a {
        font-size: 0.72rem !important;
      }
      .global-unit-toggle,
      .global-currency-select,
      .global-lang-select {
        font-size: 0.72rem !important;
        padding: 4px 8px !important;
      }

      /* Hero Section */
      .jyh-hero {
        padding: 40px 0 60px !important;
      }
      .jyh-hero-title {
        font-size: 1.85rem !important;
        line-height: 1.25 !important;
      }
      .jyh-hero-desc {
        font-size: 0.92rem !important;
        line-height: 1.6 !important;
      }
      .jyh-hero-actions {
        flex-direction: column !important;
        gap: 12px !important;
        width: 100% !important;
      }
      .jyh-hero-actions .jyh-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 14px 20px !important;
        font-size: 0.95rem !important;
      }
      .jyh-hero-features {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
      }
      .jyh-hero-cad-card {
        min-height: 260px !important;
        max-height: 320px !important;
      }

      /* Capabilities / Divisions */
      .jyh-services-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
      }

      /* Workflow / DFM */
      .jyh-workflow-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
      }

      /* Wizard Stepper & Form */
      .jyh-wizard-stepper {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
      }
      .jyh-step-tab {
        padding: 10px 8px !important;
      }
      .jyh-step-text {
        font-size: 0.75rem !important;
      }
      .jyh-form-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
      }

      /* Cost Estimation Box */
      #costEstimateDisplay {
        font-size: 1.35rem !important;
      }

      /* Tables Responsive Container */
      .jyh-table-responsive {
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        display: block !important;
        margin-bottom: 16px !important;
      }
      #previewMaterialsTable {
        min-width: 600px !important;
      }

      /* Floating Dock on Mobile */
      .jyh-floating-dock {
        bottom: 14px !important;
        right: 12px !important;
        gap: 8px !important;
      }
      .jyh-dock-btn {
        width: 44px !important;
        height: 44px !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.3) !important;
      }
      .jyh-dock-btn svg {
        width: 20px !important;
        height: 20px !important;
      }

      /* Chatbot Window on Mobile */
      #jyhChatWindow {
        width: calc(100vw - 24px) !important;
        max-width: 380px !important;
        right: 12px !important;
        bottom: 70px !important;
        max-height: 78vh !important;
      }

      /* Modals on Mobile */
      .exit-modal-card {
        width: calc(100vw - 32px) !important;
        max-width: 480px !important;
        margin: 16px !important;
        padding: 24px 16px !important;
      }
      .exit-modal-form > div {
        flex-direction: column !important;
      }
      .exit-modal-form button {
        width: 100% !important;
      }
      .jyh-modal-card {
        width: calc(100vw - 32px) !important;
        padding: 24px 16px !important;
        margin: 16px !important;
      }

      /* Footer */
      .jyh-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
      }
      .transit-zones {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
      }
      .transit-pill {
        width: 100% !important;
        text-align: center !important;
      }
    }

    /* Small Mobile Phones (< 480px) */
    @media (max-width: 480px) {
      .jyh-container {
        padding-left: 14px !important;
        padding-right: 14px !important;
      }
      .jyh-hero-title {
        font-size: 1.65rem !important;
      }
      .jyh-section-title {
        font-size: 1.6rem !important;
      }
      .jyh-section-header {
        margin-bottom: 32px !important;
      }
      .jyh-badge-iso {
        font-size: 0.68rem !important;
        padding: 2px 6px !important;
      }
      .factory-status-badge {
        font-size: 0.68rem !important;
      }
      .jyh-logo-title {
        font-size: 1.1rem !important;
      }
      .jyh-logo-sub {
        font-size: 0.62rem !important;
      }
      .post-card.interactive-article-card {
        flex: 0 0 92% !important;
        min-width: 250px !important;
      }
    }


/* ============================================================
   PERFECT STRAIGHT VERTICAL FLOATING DOCK
   All buttons 100% aligned in a single straight vertical column
   ============================================================ */
.jyh-floating-dock,
.floating-contact-dock {
  position: fixed !important;
  bottom: 80px !important;
  right: 24px !important;
  z-index: 9999 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: auto !important;
}

.jyh-dock-btn,
.dock-btn,
#jyhChatBtn {
  position: relative !important;
  bottom: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
  cursor: pointer !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  box-sizing: border-box !important;
  animation: none !important;
}

.jyh-dock-btn:hover,
.dock-btn:hover,
#jyhChatBtn:hover {
  transform: translateY(-3px) scale(1.08) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35) !important;
}

.jyh-dock-whatsapp { background: linear-gradient(135deg, #25D366, #128C7E) !important; }
.jyh-dock-wechat { background: linear-gradient(135deg, #07C160, #06ad56) !important; }
.jyh-dock-ai,
#jyhChatBtn { background: linear-gradient(135deg, #0052FF, #00D2FF) !important; }
.jyh-dock-rfq { background: linear-gradient(135deg, #F97316, #EA580C) !important; }

#jyhChatBadge {
  position: absolute !important;
  top: -3px !important;
  right: -3px !important;
  background: #ff4757 !important;
  color: #ffffff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  border: 2px solid #ffffff !important;
  z-index: 10 !important;
}

#jyhChatWindow {
  position: fixed !important;
  bottom: 80px !important;
  right: 88px !important;
  width: 370px !important;
  max-height: 570px !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.22) !important;
  z-index: 10001 !important;
}

@media (max-width: 768px) {
  .jyh-floating-dock,
  .floating-contact-dock {
    bottom: 16px !important;
    right: 14px !important;
    gap: 10px !important;
  }
  .jyh-dock-btn,
  .dock-btn,
  #jyhChatBtn {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
  }
  .jyh-dock-btn svg,
  .dock-btn svg,
  #jyhChatBtn svg {
    width: 22px !important;
    height: 22px !important;
  }
  #jyhChatWindow {
    width: calc(100vw - 28px) !important;
    max-width: 380px !important;
    right: 14px !important;
    bottom: 74px !important;
  }
}


/* ==========================================================================
   CLIENT FEEDBACK & TESTIMONIALS SECTION
   ========================================================================== */
.jyh-feedback-section {
  padding: 60px 0 45px 0;
  background: #FFFFFF;
  position: relative;
  border-bottom: 1px solid #E2E8F0;
}

.jyh-feedback-top-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  background: #F8FAFC;
  border: 1.5px solid #1076BE;
  border-radius: 14px;
  padding: 18px 24px;
  margin-bottom: 32px;
}

.jyh-feedback-score-wrap {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.jyh-feedback-big-stars {
  color: #F59E0B;
  font-size: 1.25rem;
  letter-spacing: 2px;
}

.jyh-feedback-score-text {
  font-size: 0.9375rem;
  color: #000000 !important;
  font-weight: 600;
}

.jyh-feedback-score-text strong {
  color: #0F172A;
  font-size: 1.0625rem;
  font-weight: 800;
}

.jyh-feedback-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #1E3A5F;
  color: #FFFFFF !important;
  font-size: 0.875rem;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(30, 58, 95, 0.25);
  transition: all 0.2s ease;
  text-decoration: none;
}

.jyh-feedback-cta-btn:hover {
  background: #152B47;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(30, 58, 95, 0.35);
}

.jyh-feedback-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.jyh-feedback-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: 16px;
  padding: 26px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
  transition: all 0.25s ease;
  position: relative;
}

.jyh-feedback-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(30, 58, 95, 0.1);
  border-color: #CBD5E1;
}

.jyh-feedback-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

.jyh-feedback-stars {
  color: #F59E0B;
  font-size: 1rem;
}

.jyh-feedback-tag {
  font-size: 0.75rem;
  font-weight: 800;
  color: #000000 !important;
  background: #F1F5F9;
  padding: 4px 10px;
  border-radius: 6px;
  border: 1px solid #CBD5E1;
}

.jyh-feedback-quote {
  font-size: 0.95rem;
  line-height: 1.65;
  color: #000000 !important;
  font-weight: 500;
  margin-bottom: 20px;
  font-style: italic;
  position: relative;
  flex-grow: 1;
}

.jyh-feedback-author {
  display: flex;
  align-items: center;
  gap: 12px;
  border-top: 1px solid #F1F5F9;
  padding-top: 16px;
  margin-top: auto;
}

.jyh-feedback-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1E3A5F, #2563EB);
  color: #FFFFFF;
  font-weight: 700;
  font-size: 0.9375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.jyh-feedback-author-info strong {
  display: block;
  font-size: 1rem;
  color: #000000 !important;
  font-weight: 800;
  line-height: 1.3;
}

.jyh-feedback-author-info span {
  font-size: 0.8125rem;
  color: #000000 !important;
  font-weight: 600;
  display: block;
}

.jyh-feedback-verified {
  font-size: 0.72rem;
  color: #10B981;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 3px;
}

/* Feedback Submission Modal */
.jyh-feedback-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.65);
  backdrop-filter: blur(4px);
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.jyh-feedback-modal-overlay.active {
  display: flex;
}

.jyh-feedback-modal-card {
  background: #FFFFFF;
  width: 100%;
  max-width: 520px;
  border-radius: 20px;
  padding: 32px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  position: relative;
  max-height: 90vh;
  overflow-y: auto;
}

.jyh-feedback-modal-close {
  position: absolute;
  top: 18px;
  right: 18px;
  background: #F1F5F9;
  border: none;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  font-size: 1.25rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #64748B;
  transition: all 0.2s;
}

.jyh-feedback-modal-close:hover {
  background: #E2E8F0;
  color: #0F172A;
}

.jyh-feedback-star-picker {
  display: flex;
  gap: 8px;
  font-size: 1.75rem;
  cursor: pointer;
  color: #CBD5E1;
  margin: 10px 0 16px 0;
}

.jyh-feedback-star-picker span.active {
  color: #F59E0B;
}

.jyh-feedback-toast {
  position: fixed;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%) translateY(100px);
  background: #0F172A;
  color: #FFFFFF;
  padding: 14px 24px;
  border-radius: 50px;
  font-size: 0.9375rem;
  font-weight: 600;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
  z-index: 100000;
  opacity: 0;
  transition: all 0.35s ease;
  pointer-events: none;
}

.jyh-feedback-toast.show {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
}

@media (max-width: 960px) {
  .jyh-feedback-grid {
    grid-template-columns: 1fr;
  }
}


/* ==========================================================================
   ENTERPRISE PURE WHITE THEME & JYH LOGO BLUE (#1076BE) BUTTONS
   ========================================================================== */
:root {
  --bg-primary-blue: #1076BE;
  --bg-card-blue: #FFFFFF;
  --bg-dark-blue: #F8FAFC;
  --color-primary: #1076BE;
  --color-primary-dark: #0D64A3;
  --color-primary-light: #168BE0;
  --bg-light: #FFFFFF;
  --bg-card: #FFFFFF;
  --bg-surface: #FFFFFF;
  --bg-subtle: #F8FAFC;
  --text-dark: #0F172A;
  --text-muted: #334155;
  --text-subtle: #64748B;
}

/* Global Body & Document Background - Pure White */
body, html {
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
  color: #334155 !important;
}

/* Base Headings & High-Contrast Typography - Navy Blue (#0F2C59) & White Design */
h1, h2, h3, h4, h5, h6 {
  color: #0F2C59 !important;
}

p, span, div, li, label {
  color: inherit;
}

.text-dark {
  color: #0F2C59 !important;
}

.text-muted {
  color: #475569 !important;
}

.text-light {
  color: #64748B !important;
}

/* Section Headings & Badges */
.jyh-section-title,
.section-title {
  color: #0F2C59 !important;
}

.jyh-section-subtitle,
.section-subtitle {
  color: #475569 !important;
}

.jyh-section-badge,
.section-tag {
  background: rgba(16, 118, 190, 0.08) !important;
  color: #1076BE !important;
  border: 1px solid rgba(16, 118, 190, 0.25) !important;
  font-weight: 700 !important;
}

/* Top Notification / Promo Bar */
.top-promo-bar,

.jyh-topbar,
.top-promo-bar {
  background: #0F2C59 !important;
  color: #FFFFFF !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding: 8px 0 !important;
  position: relative !important;
  z-index: 1001 !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}


/* Contact Links - Logo Colour Button Background (#1076BE) with White Bold Letters */
.top-promo-bar a,
.jyh-topbar a,
.promo-right a,
.jyh-topbar-links a,
.promo-contact-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 14px !important;
  background: #1076BE !important;
  background-color: #1076BE !important;
  color: #FFFFFF !important; /* LEETER WHITE HOBE */
  font-weight: 700 !important;
  font-size: 0.8125rem !important;
  border-radius: var(--radius-md) !important;
  border: 1px solid #1076BE !important;
  box-shadow: 0 2px 6px rgba(16, 118, 190, 0.25) !important;
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
}

.top-promo-bar a *,
.jyh-topbar a *,
.promo-right a *,
.jyh-topbar-links a *,
.promo-contact-item * {
  color: #FFFFFF !important; /* LEETER WHITE HOBE */
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
  font-weight: 700 !important;
}

.top-promo-bar a svg,
.jyh-topbar a svg,
.promo-right a svg,
.jyh-topbar-links a svg,
.promo-contact-item svg {
  fill: #FFFFFF !important;
  color: #FFFFFF !important;
  stroke: #FFFFFF !important;
  width: 14px !important;
  height: 14px !important;
}

.top-promo-bar a:hover,
.jyh-topbar a:hover,
.promo-right a:hover,
.jyh-topbar-links a:hover,
.promo-contact-item:hover {
  background: #0D64A3 !important;
  background-color: #0D64A3 !important;
  border-color: #0D64A3 !important;
  color: #FFFFFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(16, 118, 190, 0.4) !important;
}

.top-promo-bar a:hover *,
.jyh-topbar a:hover *,
.promo-right a:hover *,
.jyh-topbar-links a:hover *,
.promo-contact-item:hover * {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
}

.promo-tag,
.jyh-badge-iso {
  background: rgba(16, 118, 190, 0.08) !important;
  border: 1px solid rgba(16, 118, 190, 0.3) !important;
  color: #1076BE !important;
}

.factory-status-badge {
  background: rgba(16, 185, 129, 0.1) !important;
  border: 1px solid rgba(16, 185, 129, 0.3) !important;
  color: #065F46 !important;
}

.factory-status-badge strong {
  color: #047857 !important;
}

/* Main Sticky Header & Navigation */
.main-header,
.jyh-header {
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-top: 3px solid #1076BE !important;
  border-bottom: 2px solid #1076BE !important;
  box-shadow: 0 4px 16px rgba(16, 118, 190, 0.12) !important;
}

/* Top-Level Navigation Items - Navy Blue (#0F2C59) Buttons with Crisp White Letters */
.jyh-nav-menu {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  list-style: none !important;
  flex-wrap: nowrap !important;
  flex-shrink: 1 !important;
}

.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link,
.main-nav > ul > li > a,
.custom-wp-nav > li > a {
  background: #0F2C59 !important;
  background-color: #0F2C59 !important;
  color: #FFFFFF !important;
  border: 1px solid #0F2C59 !important;
  border-radius: var(--radius-md) !important;
  padding: 9px 16px !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  text-decoration: none !important;
  box-shadow: 0 2px 8px rgba(15, 44, 89, 0.2) !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link span,
.main-nav > ul > li > a span,
.custom-wp-nav > li > a span {
  color: #FFFFFF !important;
}

.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link svg,
.main-nav > ul > li > a svg,
.custom-wp-nav > li > a svg,
.jyh-nav-chevron {
  stroke: #FFFFFF !important;
  color: #FFFFFF !important;
}

.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link:hover,
.jyh-nav-menu > .jyh-nav-item:hover > .jyh-nav-link,
.jyh-nav-menu > .jyh-nav-item.active > .jyh-nav-link,
.main-nav > ul > li:hover > a,
.main-nav > ul > li.active > a,
.custom-wp-nav > li:hover > a,
.custom-wp-nav > li.active > a {
  background: #1E3A5F !important;
  background-color: #1E3A5F !important;
  border-color: #1076BE !important;
  color: #FFFFFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(15, 44, 89, 0.35) !important;
}

/* ==========================================================================
   LOGO - RETAIN AUTHENTIC ORIGINAL JYH BLUE COLOR (#1076BE) ON WHITE
   ========================================================================== */
.custom-logo,
.jyh-logo-img,
.site-logo img,
.jyh-drawer-logo img {
  filter: none !important;
  -webkit-filter: none !important;
  display: block !important;
  max-width: 220px;
  height: auto;
}

.site-logo a {
  color: #0F2C59 !important;
}

.jyh-logo-title {
  color: #0F2C59 !important;
  font-weight: 800 !important;
}

.jyh-logo-sub {
  color: #64748B !important;
}

/* Navigation Dropdowns */
.jyh-dropdown,
.jyh-mega-dropdown,
.jyh-dropdown-menu,
.main-nav ul ul {
  background: #FFFFFF !important;
  border: 1.5px solid #1076BE !important;
  box-shadow: 0 16px 36px -6px rgba(15, 44, 89, 0.12) !important;
}

.jyh-dropdown-card:hover,
.jyh-mega-item:hover,
.main-nav ul ul li a:hover {
  background: #F8FAFC !important;
}

.jyh-dropdown-title,
.jyh-mega-item-title,
.main-nav ul ul li a {
  color: #0F2C59 !important;
  font-weight: 700 !important;
}

.jyh-dropdown-desc,
.jyh-mega-item-desc {
  color: #64748B !important;
}

.jyh-dropdown-icon {
  background: #EFF6FF !important;
  color: #1076BE !important;
}

/* ==========================================================================
   ALL SECTIONS - PRISTINE WHITE & CRISP LIGHT ALTERNATING BACKGROUNDS
   ========================================================================== */
.jyh-hero {
  background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%) !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #334155 !important;
}

.jyh-hero::before {
  display: none !important;
}

.jyh-hero-badge {
  background: rgba(16, 118, 190, 0.08) !important;
  border: 1px solid rgba(16, 118, 190, 0.25) !important;
  color: #1076BE !important;
}

.jyh-hero-title {
  color: #0F2C59 !important;
}

.jyh-hero-title span.highlight {
  color: #1076BE !important;
  background: none !important;
  -webkit-text-fill-color: #1076BE !important;
}

.jyh-hero-desc {
  color: #475569 !important;
}

.jyh-hero-features {
  border-top: 1px solid #E2E8F0 !important;
  width: fit-content !important;
}

.jyh-hero-feat-val {
  color: #1076BE !important;
  font-size: 1.28rem !important;
  text-shadow: none !important;
  white-space: nowrap !important;
}

.jyh-hero-feat-lbl {
  color: #64748B !important;
  font-size: 0.78rem !important;
  white-space: nowrap !important;
}

/* Section Backgrounds */
.jyh-section,
#services,
#quote-calculator,
#materials,
#quality,
#contact,
.services-section,
.materials-section,
.page-content-wrap {
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
}

#company-video,
#workflow,
#industries,
#client-feedback,
#articles,
.faq-section,
.industries-section {
  background-color: #F8FAFC !important;
  background: #F8FAFC !important;
}

/* Sub-page Header Banners (White Theme) */
div[style*="background: #070d19"],
div[style*="background:#070d19"],
div[style*="background: #0b132b"],
div[style*="background:#0b132b"],
div[style*="background: linear-gradient(135deg, #070d19"],
div[style*="background:linear-gradient(135deg, #070d19"] {
  background: #FFFFFF !important;
  color: #0F172A !important;
  border-bottom: 1px solid #E2E8F0 !important;
}

div[style*="background: #070d19"] h1,
div[style*="background:#070d19"] h1,
div[style*="background: #070d19"] .section-title,
div[style*="background:#070d19"] .section-title,
div[style*="background: #070d19"] .text-white,
div[style*="background:#070d19"] .text-white,
div[style*="background: #0b132b"] h1,
div[style*="background:#0b132b"] h1 {
  color: #0F172A !important;
}

div[style*="background: #070d19"] p,
div[style*="background:#070d19"] p,
div[style*="background: #070d19"] .section-subtitle,
div[style*="background:#070d19"] .section-subtitle,
div[style*="background: #070d19"] .text-light,
div[style*="background:#070d19"] .text-light {
  color: #475569 !important;
}

/* Cards & Surfaces in White Theme */
.jyh-service-card,
.service-card,
.jyh-step-card,
.jyh-feedback-card,
.jyh-material-card,
.jyh-industry-card,
.jyh-article-card,
.jyh-wizard-wrap,
.jyh-contact-form-wrap,
.jyh-contact-info-card,
.jyh-feedback-top-bar,
.sidebar-widget,
.post-card {
  background: #FFFFFF !important;
  border: 1.5px solid #1076BE !important;
  color: #334155 !important;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05) !important;
  border-radius: var(--radius-lg) !important;
}

.jyh-service-card:hover,
.service-card:hover,
.jyh-feedback-card:hover,
.jyh-industry-card:hover,
.jyh-step-card:hover,
.post-card:hover {
  background: #FFFFFF !important;
  border-color: #1076BE !important;
  transform: translateY(-4px);
  box-shadow: 0 12px 28px -4px rgba(16, 118, 190, 0.15) !important;
}

.jyh-service-title,
.jyh-service-title a,
.service-card-title,
.service-card-title a,
.jyh-step-title,
.jyh-article-title,
.jyh-material-title,
.jyh-industry-title {
  color: #0F172A !important;
  font-weight: 700 !important;
}

.jyh-service-desc,
.service-card-desc,
.jyh-step-desc,
.jyh-article-desc,
.jyh-material-desc,
.jyh-industry-desc {
  color: #475569 !important;
}

.jyh-service-spec-row,
.service-spec-row {
  border-top: 1px solid #E2E8F0 !important;
  color: #475569 !important;
}

.jyh-service-spec-row strong,
.service-spec-row strong {
  color: #0F172A !important;
}

/* Video Section Details */
.jyh-video-stat-info strong {
  color: #FFFFFF !important;
}

.jyh-video-stat-info span {
  color: #FFFFFF !important;
}

.jyh-video-stat-icon {
  background: #EFF6FF !important;
  color: #1076BE !important;
}

/* Client Feedback Details */
.jyh-feedback-quote {
  color: #334155 !important;
}

.jyh-feedback-author-info strong {
  color: #0F172A !important;
}

.jyh-feedback-author-info span {
  color: #64748B !important;
}

.jyh-feedback-score-text {
  color: #0F172A !important;
}

.jyh-feedback-score-text strong {
  color: #0F172A !important;
}

.jyh-feedback-tag {
  background: #EFF6FF !important;
  color: #1076BE !important;
  border: 1px solid #BFDBFE !important;
}

.jyh-feedback-author {
  border-top: 1px solid #E2E8F0 !important;
}

/* Quality Assurance Banner */
.jyh-qa-banner {
  background: #FFFFFF !important;
  border: 1.5px solid #1076BE !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05) !important;
}

.jyh-qa-title {
  color: #0F172A !important;
}

.jyh-qa-desc {
  color: #475569 !important;
}

.jyh-cert-pill {
  background: #F8FAFC !important;
  color: #1E293B !important;
  border: 1.5px solid #1076BE !important;
}

/* RFQ Wizard & Form Elements */
.jyh-wizard-stepper {
  border-bottom: 1px solid #E2E8F0 !important;
}

.jyh-step-tab {
  color: #64748B !important;
}

.jyh-step-tab.active {
  color: #1076BE !important;
  border-bottom-color: #1076BE !important;
}

.jyh-step-tab.active .jyh-step-num {
  background: #1076BE !important;
  color: #FFFFFF !important;
  border-color: #1076BE !important;
}

.jyh-step-num {
  border: 1px solid #CBD5E1 !important;
  color: #64748B !important;
}

.jyh-option-card,
.jyh-upload-box {
  background: #F8FAFC !important;
  border: 1px dashed #CBD5E1 !important;
  color: #334155 !important;
}

.jyh-option-card:hover,
.jyh-upload-box:hover {
  background: #EFF6FF !important;
  border-color: #1076BE !important;
}

.jyh-option-card.selected {
  background: #EFF6FF !important;
  border: 2px solid #1076BE !important;
}

.jyh-option-title {
  color: #0F172A !important;
  font-weight: 700 !important;
}

.jyh-option-desc {
  color: #64748B !important;
}

.jyh-form-group label {
  color: #1E293B !important;
  font-weight: 600 !important;
}

.jyh-form-input,
.jyh-form-select,
.jyh-form-textarea {
  background: #FFFFFF !important;
  color: #0F172A !important;
  border: 1px solid #CBD5E1 !important;
  border-radius: 8px !important;
}

.jyh-form-input:focus,
.jyh-form-select:focus,
.jyh-form-textarea:focus {
  border-color: #1076BE !important;
  outline: none;
  box-shadow: 0 0 0 3px rgba(16, 118, 190, 0.15) !important;
}

/* Materials & Service Tables */
.jyh-materials-table {
  border: 1.5px solid #1076BE !important;
}

.jyh-materials-table th {
  background: #F8FAFC !important;
  color: #0F172A !important;
  border-bottom: 2px solid #E2E8F0 !important;
  font-weight: 700 !important;
}

.jyh-materials-table td {
  background: #FFFFFF !important;
  color: #334155 !important;
  border-bottom: 1px solid #E2E8F0 !important;
}

/* Footer & CTA Banner Section */
.cta-banner-section {
  background: linear-gradient(135deg, #FFFFFF 0%, #F8FAFC 100%) !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 80px 0 !important;
  text-align: center;
}

.cta-banner-section .cta-title {
  color: #0F172A !important;
  font-size: 2.25rem !important;
  font-weight: 800 !important;
  margin-bottom: 16px !important;
}

.cta-banner-section .cta-sub {
  color: #475569 !important;
  max-width: 760px;
  margin: 0 auto 32px;
  font-size: 1.05rem !important;
}

.site-footer,
.jyh-footer {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  color: #475569 !important;
  padding: 70px 0 25px !important;
}

.site-footer .footer-heading,
.jyh-footer .footer-heading,
.jyh-footer-heading {
  color: #0F172A !important;
  font-weight: 700 !important;
}

.site-footer .footer-brand-desc,
.jyh-footer .footer-brand-desc {
  color: #475569 !important;
}

.site-footer .footer-contact-item,
.jyh-footer .footer-contact-item {
  color: #475569 !important;
}

.site-footer a,
.jyh-footer a,
.footer-nav-link,
.jyh-footer-links a {
  color: #475569 !important;
}

.site-footer a:hover,
.jyh-footer a:hover,
.footer-nav-link:hover,
.jyh-footer-links a:hover {
  color: #1076BE !important;
}

.site-footer .footer-bottom,
.jyh-footer .footer-bottom,
.jyh-footer-bottom {
  border-top: 1px solid #E2E8F0 !important;
  color: #64748B !important;
  padding-top: 25px;
}

.footer-cert-badges span {
  color: #64748B !important;
}

/* ==========================================================================
   ALL BUTTONS - SAME LOGO BLUE (#1076BE) WITH CRISP WHITE LETTERS (#FFFFFF)
   ========================================================================== */
.btn,
.btn-primary,
.btn-secondary,
.btn-outline,
.btn-outline-white,
.jyh-btn,
.jyh-btn-primary,
.jyh-btn-secondary,
.jyh-btn-outline,
.jyh-btn-dark,
.jyh-btn-glow,
.jyh-btn-instant-quote,
.jyh-hero-btn,
.jyh-hero-btn-primary,
.jyh-hero-btn-secondary,
.jyh-feedback-cta-btn,
.jyh-service-btn,
.wp-block-button__link,
button[type="submit"],
input[type="submit"],
.exit-modal-form button,
#rfqNextBtn,
#rfqSubmitBtn,
#copySpecsBtn,
.art-btn-primary,
.dock-btn-rfq,
.jyh-dock-rfq,
.jyh-nav-cta,
.btn-quote,
.btn-rfq {
  background: #1076BE !important;
  background-color: #1076BE !important;
  color: #FFFFFF !important;
  border: 1px solid #1076BE !important;
  border-radius: var(--radius-md) !important;
  box-shadow: 0 4px 14px rgba(16, 118, 190, 0.35) !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  cursor: pointer !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.btn:hover,
.btn-primary:hover,
.btn-secondary:hover,
.btn-outline:hover,
.btn-outline-white:hover,
.jyh-btn:hover,
.jyh-btn-primary:hover,
.jyh-btn-secondary:hover,
.jyh-btn-outline:hover,
.jyh-btn-dark:hover,
.jyh-btn-glow:hover,
.jyh-btn-instant-quote:hover,
.jyh-hero-btn:hover,
.jyh-hero-btn-primary:hover,
.jyh-hero-btn-secondary:hover,
.jyh-feedback-cta-btn:hover,
.jyh-service-btn:hover,
.wp-block-button__link:hover,
button[type="submit"]:hover,
input[type="submit"]:hover,
.exit-modal-form button:hover,
#rfqNextBtn:hover,
#rfqSubmitBtn:hover,
#copySpecsBtn:hover,
.art-btn-primary:hover,
.dock-btn-rfq:hover,
.jyh-dock-rfq:hover,
.jyh-nav-cta:hover,
.btn-quote:hover,
.btn-rfq:hover {
  background: #0D64A3 !important;
  background-color: #0D64A3 !important;
  border-color: #0D64A3 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(16, 118, 190, 0.5) !important;
}

/* Ensure all letters, spans, and icons inside all buttons are bright crisp white */
.btn *,
.btn-primary *,
.btn-secondary *,
.btn-outline *,
.btn-outline-white *,
.jyh-btn *,
.jyh-btn-primary *,
.jyh-btn-secondary *,
.jyh-btn-outline *,
.jyh-btn-dark *,
.jyh-btn-glow *,
.jyh-hero-btn *,
.jyh-hero-btn-primary *,
.jyh-hero-btn-secondary *,
.wp-block-button__link *,
button[type="submit"] *,
input[type="submit"] *,
#rfqNextBtn *,
#rfqSubmitBtn *,
#copySpecsBtn *,
.dock-btn-rfq *,
.jyh-dock-rfq *,
.jyh-nav-cta *,
.btn-quote *,
.btn-rfq * {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
}

/* Video Play Button */
.jyh-video-play-btn {
  background: #1076BE !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 24px rgba(16, 118, 190, 0.45) !important;
}

.jyh-video-play-btn:hover {
  background: #0D64A3 !important;
  color: #FFFFFF !important;
  transform: translate(-50%, -50%) scale(1.1) !important;
}

/* Pill Qty Buttons */
.qty-pill-btn {
  background: #FFFFFF !important;
  border: 1px solid #CBD5E1 !important;
  color: #334155 !important;
}

.qty-pill-btn:hover,
.qty-pill-btn.active {
  background: #1076BE !important;
  border-color: #1076BE !important;
  color: #FFFFFF !important;
}

/* ==========================================================================
   HEADER CTA - GET INSTANT QUOTE (LARGER & MORE PROMINENT)
   ========================================================================== */
.jyh-btn-instant-quote,
#headerQuoteBtn,
.header-actions .btn,
.header-actions .btn-primary {
  padding: 11px 24px !important;
  font-size: 0.9375rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  border-radius: 9999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #1076BE !important;
  background-color: #1076BE !important;
  color: #FFFFFF !important;
  border: 1px solid #1076BE !important;
  box-shadow: 0 4px 18px rgba(16, 118, 190, 0.4) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
}


.jyh-btn-instant-quote:hover,
#headerQuoteBtn:hover,
.header-actions .btn:hover,
.header-actions .btn-primary:hover {
  background: #0D64A3 !important;
  background-color: #0D64A3 !important;
  border-color: #0D64A3 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) scale(1.04) !important;
  box-shadow: 0 8px 26px rgba(16, 118, 190, 0.55) !important;
}

.jyh-btn-instant-quote *,
#headerQuoteBtn *,
.header-actions .btn * {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
}

/* ==========================================================================
   TOPBAR CONTACT BUTTONS - LOGO COLOUR (#1076BE) WITH WHITE BOLD LETTERS
   ========================================================================== */
.jyh-topbar-links a,
.top-promo-bar a,
.promo-right a,
.jyh-topbar a,
.promo-contact-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 14px !important;
  background: #1076BE !important;
  background-color: #1076BE !important;
  color: #FFFFFF !important; /* LEETER WHITE HOBE */
  font-weight: 700 !important;
  font-size: 0.8125rem !important;
  border-radius: var(--radius-md) !important;
  border: 1px solid #1076BE !important;
  box-shadow: 0 2px 6px rgba(16, 118, 190, 0.25) !important;
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
}

.jyh-topbar-links a *,
.top-promo-bar a *,
.promo-right a *,
.jyh-topbar a *,
.promo-contact-item * {
  color: #FFFFFF !important; /* LEETER WHITE HOBE */
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
  font-weight: 700 !important;
}

.jyh-topbar-links a svg,
.top-promo-bar a svg,
.promo-right a svg,
.jyh-topbar a svg,
.promo-contact-item svg {
  fill: #FFFFFF !important;
  color: #FFFFFF !important;
  stroke: #FFFFFF !important;
  width: 14px !important;
  height: 14px !important;
}

.jyh-topbar-links a:hover,
.top-promo-bar a:hover,
.promo-right a:hover,
.jyh-topbar a:hover,
.promo-contact-item:hover {
  background: #0D64A3 !important;
  background-color: #0D64A3 !important;
  border-color: #0D64A3 !important;
  color: #FFFFFF !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(16, 118, 190, 0.4) !important;
}

.jyh-topbar-links a:hover *,
.top-promo-bar a:hover *,
.promo-right a:hover *,
.jyh-topbar a:hover *,
.promo-contact-item:hover * {
  color: #FFFFFF !important;
  fill: #FFFFFF !important;
  stroke: #FFFFFF !important;
}

/* ==========================================================================
   TRUST BADGES STRIP - NAVY BORDER (#0F2C59) WITH BLACK BOLD LETTERS
   ========================================================================== */
.jyh-trust-badges-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
  max-width: 1040px !important;
  margin: 0 auto 40px auto !important;
}

.jyh-trust-badge-item {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 2px solid #0F2C59 !important; /* BORDER NAVY */
  border-radius: 14px !important;
  padding: 14px 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  box-shadow: 0 4px 14px rgba(15, 44, 89, 0.12) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.jyh-trust-badge-item:hover {
  transform: translateY(-2px) !important;
  border-color: #1076BE !important;
  box-shadow: 0 8px 24px rgba(15, 44, 89, 0.22) !important;
}

.jyh-trust-badge-icon {
  font-size: 1.6rem !important;
  flex-shrink: 0 !important;
}

.jyh-trust-badge-text strong {
  display: block !important;
  font-size: 0.9375rem !important;
  color: #000000 !important; /* LETTER BLACK BOLD */
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.jyh-trust-badge-text span {
  display: block !important;
  font-size: 0.8125rem !important;
  color: #000000 !important; /* LETTER BLACK BOLD */
  font-weight: 700 !important;
  margin-top: 2px !important;
}

.jyh-trust-badge-text * {
  color: #000000 !important;
  font-weight: 800 !important;
}

/* ==========================================================================
   FORM CONTROLS & INPUTS - BORDER IN LOGO COLOUR (#1076BE)
   ========================================================================== */
.jyh-form-control,
.jyh-form-input,
.jyh-form-select,
.jyh-form-textarea,
.form-control,
select.jyh-form-control,
input.jyh-form-control,
.jyh-form-group select,
.jyh-form-group input,
.wpcf7-form-control:not([type="submit"]) {
  background: #FFFFFF !important;
  border: 1.5px solid #1076BE !important; /* BORDER LOGO COLOUR */
  border-radius: 8px !important;
  color: #0F172A !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.jyh-form-control:focus,
.jyh-form-input:focus,
.jyh-form-select:focus,
.jyh-form-textarea:focus,
.form-control:focus,
select.jyh-form-control:focus,
input.jyh-form-control:focus,
.jyh-form-group select:focus,
.jyh-form-group input:focus,
.wpcf7-form-control:focus {
  border-color: #0D64A3 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(16, 118, 190, 0.25) !important;
}

/* ==========================================================================
   WORKFLOW & PROCESS CARDS - BORDER IN LOGO COLOUR (#1076BE)
   ========================================================================== */
.jyh-workflow-card {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 2px solid #1076BE !important; /* BORDER LOGO COLOUR */
  border-radius: 16px !important;
  padding: 32px 24px !important;
  box-shadow: 0 4px 20px rgba(16, 118, 190, 0.08) !important;
  transition: all 0.3s ease !important;
}

.jyh-workflow-card:hover {
  border-color: #1076BE !important;
  transform: translateY(-6px) !important;
  box-shadow: 0 14px 32px rgba(16, 118, 190, 0.22) !important;
}

.jyh-workflow-card .jyh-step-title {
  color: #0F2C59 !important;
  font-weight: 700 !important;
}

.jyh-workflow-card .jyh-step-desc {
  color: #475569 !important;
  line-height: 1.6 !important;
}

.jyh-workflow-card .jyh-step-badge {
  background: linear-gradient(135deg, #1076BE 0%, #00D2FF 100%) !important;
  box-shadow: 0 4px 15px rgba(16, 118, 190, 0.35) !important;
}

/* ==========================================================================
   CONTACT HELPDESK & FORM CARDS - BORDER IN LOGO COLOUR (#1076BE)
   ========================================================================== */
.jyh-helpdesk-card,
.jyh-quote-form-card,
.jyh-contact-info-card,
.jyh-contact-form-wrap {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 2px solid #1076BE !important; /* BORDER LOGO COLOUR */
  border-radius: 20px !important;
  box-shadow: 0 8px 30px rgba(16, 118, 190, 0.12) !important;
}

.jyh-helpdesk-item-card {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border: 1.5px solid #1076BE !important; /* BORDER LOGO COLOUR */
  border-radius: 14px !important;
  box-shadow: 0 2px 10px rgba(16, 118, 190, 0.08) !important;
  transition: all 0.25s ease !important;
}

.jyh-helpdesk-item-card:hover {
  border-color: #0D64A3 !important;
  background: #F8FAFC !important;
  transform: translateX(4px) !important;
  box-shadow: 0 6px 20px rgba(16, 118, 190, 0.2) !important;
}

.jyh-helpdesk-icon-box {
  background: #FFFFFF !important;
  border: 1.5px solid #1076BE !important;
  color: #1076BE !important;
}

.jyh-dfm-guarantee-box,
.jyh-nda-security-card {
  border: 1.5px solid #1076BE !important;
}

/* ==========================================================================
   FOOTER - UI/UX ENHANCED, BORDER LOGO COLOUR (#1076BE), LETTER BOLD BLACK
   ========================================================================== */
.jyh-footer,
.site-footer {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  border-top: 4px solid #1076BE !important; /* BORDER LOGO COLOUR */
  color: #000000 !important; /* LETTER BOLD BLACK */
  padding: 60px 0 30px !important;
  font-family: inherit !important;
}

.jyh-footer-grid,
.footer-top-grid {
  display: grid !important;
  grid-template-columns: 1.4fr 1fr 1fr 1.3fr !important;
  gap: 36px !important;
  background: #FFFFFF !important;
  border: 2px solid #1076BE !important; /* BORDER COLOUR LOGO COLOUR */
  border-radius: 20px !important;
  padding: 36px 32px !important;
  box-shadow: 0 10px 30px rgba(16, 118, 190, 0.08) !important;
  margin-bottom: 35px !important;
}

.jyh-footer-col,
.footer-col {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.jyh-footer-heading,
.site-footer .footer-heading,
.footer-col h4 {
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-size: 1.125rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  margin-bottom: 6px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.jyh-footer-heading::before,
.footer-col h4::before {
  content: "" !important;
  display: inline-block !important;
  width: 4px !important;
  height: 18px !important;
  background: #1076BE !important; /* LOGO COLOUR ACCENT */
  border-radius: 2px !important;
}

.jyh-footer-col-brand .jyh-footer-heading::before {
  display: none !important;
}

.jyh-footer-links,
.footer-nav-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.jyh-footer-links li,
.footer-nav-list li {
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}

.jyh-footer-links a,
.footer-nav-link,
.site-footer a {
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.jyh-footer-links a:hover,
.footer-nav-link:hover,
.site-footer a:hover {
  color: #1076BE !important; /* LOGO COLOUR */
  transform: translateX(4px) !important;
  text-decoration: underline !important;
}

.jyh-footer-brand-desc,
.site-footer .footer-brand-desc {
  font-size: 0.875rem !important;
  line-height: 1.65 !important;
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-weight: 700 !important;
  margin: 0 !important;
}

.jyh-footer-address-card {
  background: #F8FAFC !important;
  border: 1.5px solid #1076BE !important; /* BORDER LOGO COLOUR */
  border-radius: 12px !important;
  padding: 12px 14px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-top: 4px !important;
}

.jyh-footer-address-card svg {
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}

.jyh-footer-address-text {
  font-size: 0.8125rem !important;
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

.jyh-footer-contact-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-weight: 700 !important;
  font-size: 0.875rem !important;
  flex-wrap: wrap !important;
}

.jyh-footer-contact-item svg {
  flex-shrink: 0 !important;
}

.jyh-footer-contact-item a {
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-weight: 800 !important;
  text-decoration: none !important;
}

.jyh-footer-contact-item a:hover {
  color: #1076BE !important;
  text-decoration: underline !important;
}

.jyh-footer-badge-pill {
  display: inline-block !important;
  background: #EFF6FF !important;
  border: 1.5px solid #1076BE !important; /* BORDER LOGO COLOUR */
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-weight: 800 !important;
  font-size: 0.8125rem !important;
  padding: 2px 8px !important;
  border-radius: 6px !important;
}

.jyh-footer-bottom,
.site-footer .footer-bottom {
  border-top: 2px solid #1076BE !important; /* BORDER LOGO COLOUR */
  padding-top: 24px !important;
  margin-top: 30px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-size: 0.875rem !important;
  font-weight: 700 !important;
}

.jyh-footer-bottom *,
.site-footer .footer-bottom * {
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-weight: 700 !important;
}

.jyh-footer-bottom a,
.site-footer .footer-bottom a {
  color: #000000 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.jyh-footer-bottom a:hover,
.site-footer .footer-bottom a:hover {
  color: #1076BE !important;
  text-decoration: underline !important;
}

@media (max-width: 1024px) {
  .jyh-footer-grid,
  .footer-top-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 28px !important;
    padding: 28px 24px !important;
  }
}

@media (max-width: 640px) {
  .jyh-footer-grid,
  .footer-top-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 24px 18px !important;
  }
  .jyh-footer-bottom,
  .site-footer .footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
    gap: 12px !important;
  }
}

/* ==========================================================================
   ARTICLE & KNOWLEDGE CARDS - BORDER LOGO COLOUR (#1076BE)
   ========================================================================== */
.jyh-contact-article-card,
.jyh-article-card,
.post-card,
.post-card.interactive-article-card,
.interactive-article-card {
  background: #FFFFFF !important;
  border: 2px solid #1076BE !important; /* BORDER LOGO COLOUR */
  border-radius: 16px !important;
  box-shadow: 0 4px 20px rgba(16, 118, 190, 0.08) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.jyh-contact-article-card:hover,
.jyh-article-card:hover,
.post-card:hover,
.post-card.interactive-article-card:hover,
.interactive-article-card:hover {
  border-color: #0D64A3 !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 30px rgba(16, 118, 190, 0.2) !important;
}

.jyh-c-badge,
.post-card-category,
.article-badge {
  font-size: 0.75rem !important;
  font-weight: 800 !important;
  color: #000000 !important; /* LETTER BOLD BLACK */
  background: #EFF6FF !important;
  border: 1.5px solid #1076BE !important; /* BORDER LOGO COLOUR */
  padding: 4px 12px !important;
  border-radius: 9999px !important;
  display: inline-block !important;
  margin-bottom: 12px !important;
  width: fit-content !important;
}

.jyh-c-article-title,
.post-card-title,
.post-card-title a,
.jyh-article-title {
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  color: #000000 !important; /* LETTER BOLD BLACK */
  line-height: 1.4 !important;
  margin-bottom: 8px !important;
  text-decoration: none !important;
}

.jyh-c-article-excerpt,
.post-card-excerpt,
.jyh-article-excerpt {
  font-size: 0.8125rem !important;
  color: #000000 !important; /* LETTER BOLD BLACK */
  font-weight: 600 !important;
  line-height: 1.6 !important;
  margin-bottom: 16px !important;
  flex: 1 !important;
}

.jyh-c-article-link,
.post-card-link,
.jyh-article-link {
  font-size: 0.8125rem !important;
  font-weight: 800 !important;
  color: #1076BE !important; /* LOGO BLUE */
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: all 0.2s ease !important;
}

.jyh-c-article-link:hover,
.post-card-link:hover,
.jyh-article-link:hover {
  color: #0D64A3 !important;
  text-decoration: underline !important;
  transform: translateX(3px) !important;
}

/* ==========================================================================
   FACILITY HIGHLIGHT STAT CARDS - BACKGROUND LOGO COLOUR (#1076BE) WITH BOLD BLACK LETTERS
   ========================================================================== */
.jyh-video-stats-strip {
  margin-top: 24px !important;
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
}

.jyh-video-stat-item {
  background: #1076BE !important; /* BACK GROUND BATTON COLOUR LOGO COLOUR */
  background-color: #1076BE !important;
  border: 2px solid #1076BE !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  box-shadow: 0 4px 18px rgba(16, 118, 190, 0.25) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.jyh-video-stat-item:hover {
  background: #0D64A3 !important;
  background-color: #0D64A3 !important;
  border-color: #0D64A3 !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 25px rgba(16, 118, 190, 0.35) !important;
}

.jyh-video-stat-icon {
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
  background: #FFFFFF !important;
  color: #1076BE !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.35rem !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
}

.jyh-video-stat-info strong {
  display: block !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  color: #FFFFFF !important; /* LETTER BOLD BLACK */
  line-height: 1.3 !important;
}

.jyh-video-stat-info span {
  display: block !important;
  font-size: 0.8125rem !important;
  color: #FFFFFF !important; /* LETTER BOLD BLACK */
  font-weight: 800 !important;
  margin-top: 2px !important;
}

.jyh-video-stat-info * {
  color: #FFFFFF !important; /* LETTER BOLD BLACK */
  font-weight: 800 !important;
}

/* ==========================================================================
   MEGA MENU & DROPDOWN SUBMENUS — COMPLETE UI/UX FIX
   Logo Colour: #1076BE | Navy: #0F2C59
   ========================================================================== */

/* ── Base Dropdown Panel ── */
.jyh-dropdown {
  position: absolute !important;
  top: calc(100% + 8px) !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(8px) !important;
  background: #FFFFFF !important;
  border: 2px solid #1076BE !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 60px -10px rgba(16, 118, 190, 0.18), 0 4px 16px rgba(0,0,0,0.06) !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s !important;
  z-index: 9999 !important;
  min-width: 220px !important;
}

.jyh-nav-item:hover > .jyh-dropdown,
.jyh-dropdown.show-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: all !important;
  transform: translateX(-50%) translateY(0) !important;
}

/* ── Expertise Mega Menu: 4-Column Grid ── */
.jyh-dropdown-mega {
  width: 900px !important;
  left: 0 !important;
  transform: translateX(0) translateY(8px) !important;
}
.jyh-nav-item:hover > .jyh-dropdown-mega,
.jyh-dropdown-mega.show-dropdown {
  transform: translateX(0) translateY(0) !important;
}

.jyh-mega-grid-4col {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 0 !important;
  padding: 24px 20px 16px !important;
}

/* ── Mega Menu Column ── */
.jyh-mega-column {
  padding: 0 16px !important;
  border-right: 1px solid #E2E8F0 !important;
}
.jyh-mega-column:last-child {
  border-right: none !important;
}
.jyh-mega-column:first-child {
  padding-left: 0 !important;
}

/* Highlighted last column */
.jyh-mega-column-highlight {
  background: linear-gradient(160deg, #EFF6FF 0%, #FFFFFF 100%) !important;
  border-radius: 0 12px 12px 0 !important;
  border-right: none !important;
  margin: -24px -20px -16px 0 !important;
  padding: 24px 20px 16px 16px !important;
}

/* ── Column Header ── */
.jyh-mega-col-header {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
  padding-bottom: 10px !important;
  border-bottom: 2px solid #1076BE !important;
}

.jyh-mega-col-icon {
  width: 34px !important;
  height: 34px !important;
  background: #EFF6FF !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.1rem !important;
  flex-shrink: 0 !important;
}

.jyh-mega-col-title {
  font-size: 0.875rem !important;
  font-weight: 800 !important;
  color: #0F2C59 !important;
  margin: 0 0 2px !important;
  line-height: 1.2 !important;
}

.jyh-mega-col-subtitle {
  font-size: 0.7rem !important;
  color: #64748B !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

/* ── Mega Menu Item List ── */
.jyh-mega-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

.jyh-mega-item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 7px 8px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  color: #334155 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease !important;
  cursor: pointer !important;
}

.jyh-mega-item:hover {
  background: #EFF6FF !important;
  color: #1076BE !important;
  transform: translateX(3px) !important;
}

.jyh-mega-item-text {
  flex: 1 !important;
  color: inherit !important;
}

.jyh-menu-arrow {
  opacity: 0 !important;
  color: #1076BE !important;
  transition: opacity 0.15s ease !important;
  flex-shrink: 0 !important;
}

.jyh-mega-item:hover .jyh-menu-arrow {
  opacity: 1 !important;
}

/* Badge pills inside mega menu */
.jyh-badge-pill {
  display: inline-flex !important;
  align-items: center !important;
  padding: 2px 7px !important;
  border-radius: 20px !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  background: #DBEAFE !important;
  color: #1D4ED8 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

/* ── Mega Menu Footer Banner ── */
.jyh-mega-footer-banner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: linear-gradient(90deg, #0F2C59 0%, #1076BE 100%) !important;
  border-radius: 0 0 14px 14px !important;
  padding: 12px 20px !important;
  gap: 16px !important;
}

.jyh-mega-footer-left {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

.jyh-mega-badge-live {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(255,255,255,0.15) !important;
  color: #FFFFFF !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(255,255,255,0.3) !important;
  white-space: nowrap !important;
}

.pulse-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #4ADE80 !important;
  display: inline-block !important;
  animation: pulse-green 1.6s infinite !important;
}

@keyframes pulse-green {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(1.4); }
}

.jyh-mega-footer-desc {
  color: rgba(255,255,255,0.85) !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
}

.jyh-mega-footer-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #FFFFFF !important;
  color: #0F2C59 !important;
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  padding: 8px 16px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: background 0.15s ease, transform 0.15s ease !important;
  flex-shrink: 0 !important;
}
.jyh-mega-footer-btn:hover {
  background: #EFF6FF !important;
  transform: translateY(-1px) !important;
}

/* ==========================================================================
   INDUSTRIES DROPDOWN — 2-Column Card Grid (WIDER & BIGGER, JS-CENTERED)
   ========================================================================== */
.jyh-dropdown-industries {
  width: 760px !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(8px) !important;
}
.jyh-nav-item:hover > .jyh-dropdown-industries,
.jyh-dropdown-industries.show-dropdown {
  transform: translateX(-50%) translateY(0) !important;
}

.jyh-industries-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  padding: 20px !important;
}

.jyh-industries-col {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

.jyh-industry-card {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 1.5px solid transparent !important;
  transition: all 0.18s ease !important;
  cursor: pointer !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.jyh-industry-card:hover {
  background: #EFF6FF !important;
  border-color: #1076BE !important;
  transform: translateX(3px) !important;
}

.jyh-industry-icon {
  width: 46px !important;
  height: 46px !important;
  border-radius: 12px !important;
  background: #EFF6FF !important;
  border: 1.5px solid #DBEAFE !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  transition: background 0.18s ease !important;
}

.jyh-industry-card:hover .jyh-industry-icon {
  background: #1076BE !important;
}

.jyh-industry-card:hover .jyh-industry-icon svg {
  fill: #FFFFFF !important;
}

.jyh-industry-text {
  flex: 1 !important;
  min-width: 0 !important;
}

.jyh-industry-title {
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  color: #0F2C59 !important;
  margin: 0 0 4px !important;
  line-height: 1.3 !important;
  white-space: normal !important;
}

.jyh-industry-card:hover .jyh-industry-title {
  color: #1076BE !important;
}

.jyh-industry-desc {
  font-size: 0.775rem !important;
  color: #64748B !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  margin: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  word-wrap: break-word !important;
}

/* ==========================================================================
   RESOURCES & ABOUT US — Simple List Dropdowns
   ========================================================================== */
.jyh-dropdown-simple {
  width: 240px !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(8px) !important;
  padding: 8px !important;
}
.jyh-nav-item:hover > .jyh-dropdown-simple,
.jyh-dropdown-simple.show-dropdown {
  transform: translateX(-50%) translateY(0) !important;
}

.jyh-simple-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 9px 12px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  color: #334155 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  transition: background 0.15s ease, color 0.15s ease !important;
}
.jyh-simple-item:hover {
  background: #EFF6FF !important;
  color: #1076BE !important;
}
.jyh-simple-item-icon {
  width: 28px !important;
  height: 28px !important;
  border-radius: 6px !important;
  background: #EFF6FF !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0.9rem !important;
  flex-shrink: 0 !important;
}
.jyh-simple-divider {
  height: 1px !important;
  background: #E2E8F0 !important;
  margin: 4px 8px !important;
}

/* ── Nav item positioning fix ── */
.jyh-nav-item {
  position: relative !important;
}

/* ── Chevron rotate on hover ── */
.jyh-nav-item:hover .jyh-nav-chevron {
  transform: rotate(180deg) !important;
}
.jyh-nav-chevron {
  transition: transform 0.22s ease !important;
}

/* ==========================================================================
   RESOURCES / ABOUT US — 2-Column Card Grid Dropdown
   ========================================================================== */
.jyh-dropdown-grid-2col {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 6px !important;
  padding: 16px !important;
}

.jyh-dropdown-right {
  left: auto !important;
  right: 0 !important;
  transform: translateX(0) translateY(8px) !important;
}
.jyh-nav-item:hover > .jyh-dropdown-right,
.jyh-dropdown-right.show-dropdown {
  transform: translateX(0) translateY(0) !important;
}

.jyh-dropdown-card {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 1.5px solid transparent !important;
  transition: all 0.18s ease !important;
  cursor: pointer !important;
}

.jyh-dropdown-card:hover {
  background: #EFF6FF !important;
  border-color: #1076BE !important;
}

.jyh-dropdown-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px !important;
  background: #EFF6FF !important;
  color: #1076BE !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.05rem !important;
  flex-shrink: 0 !important;
  transition: background 0.18s ease !important;
}

.jyh-dropdown-card:hover .jyh-dropdown-icon {
  background: #1076BE !important;
}

.jyh-dropdown-title {
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  color: #0F2C59 !important;
  margin-bottom: 3px !important;
  line-height: 1.2 !important;
}

.jyh-dropdown-card:hover .jyh-dropdown-title {
  color: #1076BE !important;
}

.jyh-dropdown-desc {
  font-size: 0.7rem !important;
  color: #64748B !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

/* ==========================================================================
   DROPDOWN VIEWPORT OVERFLOW FIX — CRITICAL
   Prevents body overflow-x:hidden from clipping nav dropdowns
   ========================================================================== */

/* Allow header and nav to overflow body clip */
.jyh-header,
.main-header {
  overflow: visible !important;
}

.jyh-header-inner,
.jyh-nav-menu,
.jyh-nav-item {
  overflow: visible !important;
}

/* Dropdown stays within viewport — right-align when near right edge */
.jyh-dropdown.flip-left {
  left: auto !important;
  right: 0 !important;
  transform: translateY(8px) !important;
}
.jyh-nav-item:hover > .jyh-dropdown.flip-left,
.jyh-dropdown.flip-left.show-dropdown {
  transform: translateY(0) !important;
}

/* Mega menu: always start from left edge of nav item, never overflow right */
.jyh-dropdown-mega {
  left: 0 !important;
  right: auto !important;
  max-width: calc(100vw - 40px) !important;
}

/* Industries flip classes */
.jyh-dropdown-industries.flip-left {
  left: auto !important;
  right: 0 !important;
  transform: translateY(8px) !important;
}
.jyh-nav-item:hover > .jyh-dropdown-industries.flip-left,
.jyh-dropdown-industries.flip-left.show-dropdown {
  transform: translateY(0) !important;
}

/* Ensure no stacking context issue from sticky */
.jyh-header {
  transform: none !important;
  will-change: auto !important;
}




/* Universal Bulletproof Native Scrolling Fix */
html {
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  scroll-behavior: smooth !important;
  height: auto !important;
  min-height: 100% !important;
}
body {
  overflow-y: visible !important;
  overflow-x: hidden !important;
  position: relative !important;
  height: auto !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}



.jyh-video-stat-info strong,
.jyh-video-stat-info span,
.jyh-video-stat-info * {
  color: #FFFFFF !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15) !important;
}



/* Compact Vertical Gap between Video Stat Cards and Agile Production / Services Section */
.jyh-video-section,
#company-video {
  padding-bottom: 16px !important;
}

.jyh-video-stats-strip {
  margin-top: 18px !important;
  margin-bottom: 8px !important;
}

#services.jyh-section,
#services {
  padding-top: 20px !important;
}

#services .jyh-section-header {
  margin-bottom: 24px !important;
}



/* Hero Section Stat Cards Styled as Blue Rounded Buttons */
.jyh-hero-features {
  display: flex !important;
  gap: 16px !important;
  width: 100% !important;
  padding-top: 14px !important;
  border-top: none !important;
  margin-top: 18px !important;
  flex-wrap: wrap !important;
}

.jyh-hero-feat-item {
  background: #1076BE !important;
  border: 2px solid #1076BE !important;
  border-radius: 14px !important;
  padding: 12px 18px !important;
  box-shadow: 0 4px 18px rgba(16, 118, 190, 0.25) !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  flex: 1 1 200px !important;
}

.jyh-hero-feat-item:hover {
  background: #0D64A3 !important;
  border-color: #0D64A3 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(16, 118, 190, 0.35) !important;
}

.jyh-hero-feat-icon {
  width: 40px !important;
  height: 40px !important;
  background: #FFFFFF !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
}

.jyh-hero-feat-info {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

.jyh-hero-feat-val {
  font-family: var(--font-heading) !important;
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  white-space: nowrap !important;
}

.jyh-hero-feat-lbl {
  font-size: 0.8rem !important;
  color: #FFFFFF !important;
  opacity: 0.95 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}



/* Hide old fat hero features block */
.jyh-hero-features {
  display: none !important;
}

/* 2 Slim Logo Blue Buttons Overlay at Bottom of Hero Image */
.jyh-hero-under-img-buttons {
  position: absolute !important;
  bottom: 24px !important;
  left: 24px !important;
  right: 24px !important;
  display: flex !important;
  gap: 12px !important;
  z-index: 10 !important;
  flex-wrap: wrap !important;
}

.jyh-slim-btn {
  background: #1076BE !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  border-radius: 8px !important;
  padding: 6px 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #FFFFFF !important;
  font-size: 0.8125rem !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
  transition: all 0.2s ease !important;
}

.jyh-slim-btn:hover {
  background: #0D64A3 !important;
  transform: translateY(-1px) !important;
}

.jyh-slim-btn-icon {
  width: 22px !important;
  height: 22px !important;
  background: #FFFFFF !important;
  border-radius: 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.jyh-slim-btn strong {
  font-weight: 800 !important;
  color: #FFFFFF !important;
}

.jyh-slim-btn span {
  color: #FFFFFF !important;
  font-weight: 500 !important;
}



/* Hide old fat hero features block */
.jyh-hero-features,
.jyh-hero-under-img-buttons {
  display: none !important;
}

/* 4 Slim Logo-Blue Buttons Side-by-Side in White Hero Area */
.jyh-hero-4-buttons {
  display: flex !important;
  gap: 10px !important;
  margin-top: 22px !important;
  width: 100% !important;
  max-width: 100% !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.jyh-slim-blue-btn {
  background: #1076BE !important;
  border: 1px solid #1076BE !important;
  border-radius: 8px !important;
  padding: 7px 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #FFFFFF !important;
  font-size: 0.8125rem !important;
  box-shadow: 0 3px 10px rgba(16, 118, 190, 0.22) !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}

.jyh-slim-blue-btn:hover {
  background: #0D64A3 !important;
  border-color: #0D64A3 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 14px rgba(16, 118, 190, 0.32) !important;
}

.jyh-slim-blue-btn .jyh-slim-btn-icon {
  width: 22px !important;
  height: 22px !important;
  background: #FFFFFF !important;
  border-radius: 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.jyh-slim-blue-btn strong {
  font-weight: 800 !important;
  color: #FFFFFF !important;
}

.jyh-slim-blue-btn span {
  color: #FFFFFF !important;
  font-weight: 500 !important;
}



/* Hide old fat hero features block */
.jyh-hero-features,
.jyh-hero-under-img-buttons {
  display: none !important;
}

/* 4 Slim Logo-Blue Buttons in ONE Single Straight Horizontal Row across full hero width */
.jyh-hero-4-buttons {
  display: flex !important;
  gap: 10px !important;
  margin-top: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
  grid-column: 1 / -1 !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow-x: auto !important;
}

.jyh-slim-blue-btn {
  background: #1076BE !important;
  border: 1px solid #1076BE !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #FFFFFF !important;
  font-size: 0.8rem !important;
  box-shadow: 0 3px 10px rgba(16, 118, 190, 0.22) !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.jyh-slim-blue-btn:hover {
  background: #0D64A3 !important;
  border-color: #0D64A3 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 14px rgba(16, 118, 190, 0.32) !important;
}

.jyh-slim-blue-btn .jyh-slim-btn-icon {
  width: 22px !important;
  height: 22px !important;
  background: #FFFFFF !important;
  border-radius: 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.jyh-slim-blue-btn strong {
  font-weight: 800 !important;
  color: #FFFFFF !important;
}

.jyh-slim-blue-btn span {
  color: #FFFFFF !important;
  font-weight: 500 !important;
}



/* Expand Hero Image Width on X-axis towards Red Mark Line */
.jyh-hero-grid {
  display: grid !important;
  grid-template-columns: 1fr 1.35fr !important;
  gap: 20px !important;
  align-items: flex-start !important;
}

.jyh-hero-cad-card {
  width: 100% !important;
  max-width: 100% !important;
  height: 540px !important;
  min-height: 540px !important;
  border-radius: 16px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important;
  align-self: flex-start !important;
  margin-top: 0px !important;
}



/* Compact Vertical Gap between Services Cards and Workflow Section (Agile Production) */
#services.jyh-section,
#services {
  padding-bottom: 16px !important;
}

#workflow.jyh-workflow-section,
#workflow,
.jyh-workflow-section {
  padding-top: 20px !important;
}

#workflow .jyh-section-header,
.jyh-workflow-section .jyh-section-header {
  margin-bottom: 24px !important;
}



/* Global Compact Section Gaps across Entire Site */
.jyh-section {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.jyh-section-header {
  margin-bottom: 24px !important;
}

.jyh-video-section,
#company-video {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.jyh-video-stats-strip {
  margin-top: 16px !important;
  margin-bottom: 12px !important;
}

#services.jyh-section,
#services {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

#workflow.jyh-workflow-section,
#workflow,
.jyh-workflow-section {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.jyh-qa-banner {
  padding: 28px 32px !important;
}



/* All Section & Card Borders Logo Blue (#1076BE) */
.jyh-service-card,
.jyh-workflow-card,
.jyh-cert-card,
.jyh-feedback-card,
.jyh-video-card,
.jyh-qa-banner,
.jyh-dropdown-card {
  border: 1.5px solid #1076BE !important;
}

.jyh-service-card:hover,
.jyh-workflow-card:hover,
.jyh-cert-card:hover,
.jyh-feedback-card:hover,
.jyh-dropdown-card:hover {
  border-color: #0D64A3 !important;
  box-shadow: 0 8px 24px rgba(16, 118, 190, 0.25) !important;
}



  /* ============================================================
     RFQ STEPPER BAR — Crisp Pure White Letters & Active Highlights
     ============================================================ */
  .jyh-wizard-stepper {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    background: #0B132B !important;
    border-bottom: 2.5px solid #1076BE !important;
    overflow: hidden !important;
  }

  .jyh-step-tab {
    padding: 18px 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    border-bottom: 4px solid transparent !important;
    cursor: pointer !important;
    user-select: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
  }
  .jyh-step-tab:last-child {
    border-right: none !important;
  }

  /* Crisp Pure White Text for ALL Steps */
  .jyh-step-text {
    font-size: 0.9375rem !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
  }

  /* Step Number Badge */
  .jyh-step-num {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: #FFFFFF !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.875rem !important;
    font-weight: 800 !important;
    transition: all 0.2s ease !important;
    flex-shrink: 0 !important;
  }

  /* Hover State — Smooth Clickable Glow */
  .jyh-step-tab:hover {
    background: rgba(16, 118, 190, 0.35) !important;
  }
  .jyh-step-tab:hover .jyh-step-text {
    color: #FFFFFF !important;
    transform: translateY(-1px) !important;
  }
  .jyh-step-tab:hover .jyh-step-num {
    border-color: #00D2FF !important;
    background: rgba(0, 210, 255, 0.25) !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 8px rgba(0, 210, 255, 0.6) !important;
  }

  /* ACTIVE STEP TAB STATE (High Contrast Logo Blue + Cyan Accent) */
  .jyh-step-tab.active {
    background: #1076BE !important;
    border-bottom-color: #00D2FF !important;
    box-shadow: inset 0 -4px 12px rgba(0, 210, 255, 0.4) !important;
  }

  .jyh-step-tab.active .jyh-step-num {
    background: #00D2FF !important;
    border-color: #FFFFFF !important;
    color: #070D18 !important;
    box-shadow: 0 0 12px rgba(0, 210, 255, 0.9) !important;
  }

  .jyh-step-tab.active .jyh-step-text {
    color: #FFFFFF !important;
    font-weight: 800 !important;
    letter-spacing: 0.3px !important;
  }

  @media (max-width: 768px) {
    .jyh-wizard-stepper {
      grid-template-columns: repeat(2, 1fr) !important;
    }
    .jyh-step-tab {
      padding: 14px 10px !important;
    }
    .jyh-step-text {
      font-size: 0.8125rem !important;
    }
  }



  /* ============================================================
     INSTANT QUOTE PILL BUTTON — Exact Pill Styling & Glow
     ============================================================ */
  .jyh-btn-instant-quote,
  .btn-quote,
  #headerQuoteBtn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #1076BE !important;
    color: #FFFFFF !important;
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    padding: 12px 32px !important;
    border-radius: 9999px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: 0 4px 16px rgba(16, 118, 190, 0.4) !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    white-space: nowrap !important;
  }

  .jyh-btn-instant-quote:hover,
  .btn-quote:hover,
  #headerQuoteBtn:hover {
    background: #0052FF !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) scale(1.02) !important;
    box-shadow: 0 8px 24px rgba(0, 82, 255, 0.55) !important;
  }

  .jyh-btn-instant-quote:active,
  #headerQuoteBtn:active {
    transform: translateY(0) scale(0.98) !important;
  }



    /* old jyhChatBtn fixed rule removed */
    #jyhChatBtn:hover { transform: scale(1.1); }
    @keyframes chatPulse {
      0%,100% { box-shadow: 0 6px 24px rgba(0,82,255,0.45), 0 0 0 0 rgba(0,82,255,0.3); }
      50%      { box-shadow: 0 6px 24px rgba(0,82,255,0.45), 0 0 0 12px rgba(0,82,255,0); }
    }
    #jyhChatBadge {
      position: absolute; top: -3px; right: -3px;
      background: #ff4757; color: #fff; font-size: 10px; font-weight: 700;
      width: 20px; height: 20px; border-radius: 50%;
      display: none; align-items: center; justify-content: center;
      border: 2px solid #fff;
    }
    #jyhChatWindow {
      position: fixed; bottom: 80px; right: 88px;
      width: 370px; max-height: 570px;
      background: #fff; border-radius: 20px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.18);
      z-index: 9999; display: none; flex-direction: column;
      overflow: hidden; font-family: 'Plus Jakarta Sans', sans-serif;
      border: 1px solid rgba(0,82,255,0.12);
    }
    #jyhChatHeader {
      background: linear-gradient(135deg, #0052ff 0%, #0284c7 100%);
      padding: 16px 18px; display: flex; align-items: center; gap: 12px; color: #fff;
    }
    .jchat-avatar { width:42px;height:42px;background:rgba(255,255,255,0.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0; }
    .jchat-hname { font-weight:700; font-size:0.95rem; }
    .jchat-hstatus { font-size:0.72rem;opacity:0.85;display:flex;align-items:center;gap:5px;margin-top:2px; }
    .jchat-dot { width:7px;height:7px;background:#4ade80;border-radius:50%;animation:jblink 1.4s infinite; }
    @keyframes jblink { 0%,100%{opacity:1}50%{opacity:0.3} }
    #jyChatCloseBtn { background:rgba(255,255,255,0.18);border:none;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center; }
    #jyChatLangBar { display:flex;background:#f1f5f9;border-bottom:1px solid #e2e8f0; }
    .jclang-btn { flex:1;padding:8px;border:none;background:transparent;font-size:0.78rem;font-weight:600;cursor:pointer;color:#64748b;font-family:inherit; }
    .jclang-btn.active { background:#fff;color:#0052ff;border-bottom:2px solid #0052ff; }
    #jyChatMsgs { flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;max-height:300px;background:#f8fafc; }
    #jyChatMsgs::-webkit-scrollbar { width:4px; }
    #jyChatMsgs::-webkit-scrollbar-thumb { background:#cbd5e1;border-radius:4px; }
    .jcmsg { display:flex;gap:8px;align-items:flex-end; }
    .jcmsg.user { flex-direction:row-reverse; }
    .jcbubble { max-width:82%;padding:10px 14px;border-radius:16px;font-size:0.84rem;line-height:1.55;color:#1e293b; }
    .jcmsg.bot .jcbubble { background:#fff;border: 1.5px solid #1076BE;border-bottom-left-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,0.06); }
    .jcmsg.user .jcbubble { background:linear-gradient(135deg,#0052ff,#0284c7);color:#fff;border-bottom-right-radius:4px; }
    .jcmsg-av { width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#0052ff,#00d2ff);display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0; }
    .jctime { font-size:0.65rem;color:#94a3b8;margin-top:2px; }
    .jcmsg.bot .jctime { text-align:left; } .jcmsg.user .jctime { text-align:right; }
    #jyChatQR { padding:10px 14px 4px;display:flex;flex-wrap:wrap;gap:6px;background:#f8fafc;border-top:1px solid #e2e8f0; }
    .jcqr-btn { background:#fff;border:1px solid #0052ff;color:#0052ff;padding:5px 12px;border-radius:9999px;font-size:0.75rem;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.2s; }
    .jcqr-btn:hover { background:#0052ff;color:#fff; }
    #jyChatInputRow { padding:12px 14px;border-top:1px solid #e2e8f0;display:flex;gap:8px;background:#fff; }
    #jyChatInput { flex:1;border: 1.5px solid #1076BE;border-radius:10px;padding:9px 13px;font-size:0.84rem;font-family:inherit;outline:none;color:#1e293b;transition:border 0.2s; }
    #jyChatInput:focus { border-color:#0052ff; }
    #jyChatSend { width:38px;height:38px;background:linear-gradient(135deg,#0052ff,#0284c7);border:none;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;transition:transform 0.15s; }
    #jyChatSend:hover { transform:scale(1.08); }
    .jc-typing { display:flex;gap:4px;align-items:center; }
    .jc-tdot { width:7px;height:7px;background:#94a3b8;border-radius:50%;animation:jctb 1.2s infinite; }
    .jc-tdot:nth-child(2){animation-delay:0.2s}.jc-tdot:nth-child(3){animation-delay:0.4s}
    @keyframes jctb { 0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)} }
    @media(max-width:480px){ #jyhChatWindow{width:calc(100vw - 24px);right:12px;bottom:90px;} }
  


/* === EMBEDDED THEME-STYLE.CSS === */
/*!
 * Theme Stylesheet - Custom Manufacturing Pro
 * Author: China Akash Vai
 * Developed for Shenzhen Jinyihe Technology Co., Ltd. (JYH Prototype)
 */

/**
 * JYH Prototype - Enterprise Next-Gen Manufacturing Theme Style
 * High-Tech Precision Engineering & Industrial Glassmorphism UI
 */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  --font-primary: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-heading: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'JetBrains Mono', monospace;

  /* Color Palette - Clean Professional Light Theme */
  --bg-dark: #1A2332;
  --bg-card: #FFFFFF;
  --bg-card-hover: #F8F4EB;
  --bg-light: #FAF7F0;   /* warm light cream - main background */
  --bg-surface: #FFFFFF;
  --bg-subtle: #F3EFE6;

  --color-primary: #1E3A5F;
  --color-primary-dark: #152B47;
  --color-primary-light: #2B4E7C;
  --color-cyan: #1A7AD4;
  --color-cyan-glow: rgba(26, 122, 212, 0.25);
  --color-accent: #D9440F;
  --color-accent-glow: rgba(217, 68, 15, 0.2);
  --color-success: #157A4A;
  --color-warning: #B45309;

  /* Text Colors - Dark / Black for readability */
  --text-dark: #111827;       /* near black - main text */
  --text-muted: #374151;      /* dark grey - body text */
  --text-subtle: #6B7280;     /* medium grey - secondary text */
  --text-light: #9CA3AF;      /* light grey - hints */
  --text-light-muted: #6B7280;

  --border-dark: #D1D5DB;
  --border-light: #E5E7EB;
  --border-primary: rgba(30, 58, 95, 0.2);
  --border-cyan: rgba(26, 122, 212, 0.25);

  --shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 16px -2px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 12px 32px -4px rgba(0, 0, 0, 0.10);
  --shadow-xl: 0 20px 40px -8px rgba(30, 58, 95, 0.15);
  --shadow-glow: 0 0 20px rgba(26, 122, 212, 0.15);
  --shadow-glow-accent: 0 0 20px rgba(217, 68, 15, 0.15);

  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  --transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Global Resets */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

body {
  font-family: var(--font-primary);
  color: var(--text-muted);
  background-color: var(--bg-light);
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.2;
  color: var(--text-dark);
  letter-spacing: -0.01em;
}

a {
  color: var(--color-primary);
  text-decoration: none;
  transition: all var(--transition-fast);
}

a:hover {
  color: var(--color-primary-light);
}

/* Universal Aspect Ratio & SEO Image Protection */
img {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  image-rendering: -webkit-optimize-contrast;
}

.container, .jyh-container {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}

.container-fluid {
  width: 100%;
  padding-left: 32px;
  padding-right: 32px;
  margin-left: auto;
  margin-right: auto;
}

/* Full Width & Wide Gutenberg Alignments */
.alignfull {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.alignwide {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

/* SEO-Friendly Responsive Image Styles with Fixed Aspect Ratios */
.entry-content img, .wp-block-image img {
  border-radius: var(--radius-md);
  box-shadow: 0 4px 15px rgba(0,0,0,0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  width: 100%;
}

.entry-content img:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}

.wp-block-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
  margin: 30px 0;
}

.wp-block-gallery img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-md);
}

.wp-block-quote {
  border-left: 4px solid var(--color-primary);
  background: #f8fafc;
  padding: 20px 24px;
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  font-style: italic;
  margin: 30px 0;
}

.wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  margin: 25px 0;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-md);
  overflow: hidden;
}

.wp-block-table th, .wp-block-table td {
  padding: 12px 16px;
  border-bottom: 1px solid #e2e8f0;
  text-align: left;
}

.wp-block-table th {
  background: #070d19;
  color: #ffffff;
  font-weight: 600;
}

/* ==========================================================================
   TOP NOTIFICATION BAR & HEADER
   ========================================================================== */
.jyh-topbar,
.top-promo-bar {
  background: #1A2D4E;
  color: #FFFFFF;
  font-size: 0.8125rem;
  font-weight: 500;
  border-bottom: 1px solid #15263D;
  padding: 8px 0;
}

.jyh-topbar-inner,
.top-promo-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.jyh-topbar-badges,
.promo-left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.jyh-badge-iso,
.promo-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(0, 210, 255, 0.12);
  border: 1px solid rgba(0, 210, 255, 0.4);
  color: #FFFFFF !important;
  padding: 3px 12px;
  border-radius: var(--radius-full);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}

.jyh-badge-iso::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #00D2FF;
  box-shadow: 0 0 8px #00D2FF;
  animation: pulse-glow 2s infinite;
}

.factory-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(16, 185, 129, 0.15);
  border: 1px solid rgba(16, 185, 129, 0.4);
  color: #FFFFFF !important;
  padding: 3px 12px;
  border-radius: var(--radius-full);
  font-size: 0.75rem;
  font-weight: 500;
}

.factory-status-badge strong {
  color: #FFFFFF !important;
  font-weight: 700;
}

.pulse-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #10B981;
  box-shadow: 0 0 8px #10B981;
  animation: pulse-glow 2s infinite;
}

@keyframes pulse-glow {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.85); }
}

.jyh-topbar-links,
.promo-right {
  display: flex;
  align-items: center;
  gap: 16px;
}

.jyh-topbar-links a,
.promo-right a {
  color: #FFFFFF !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8125rem;
  font-weight: 500;
  text-decoration: none;
  transition: color 0.2s ease;
}

.jyh-topbar-links a svg,
.promo-right a svg {
  color: #00D2FF;
  flex-shrink: 0;
}

.jyh-topbar-links a:hover,
.promo-right a:hover {
  color: #00D2FF !important;
}

/* Sticky Main Navigation */
.jyh-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(226, 232, 240, 0.8);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  transition: all var(--transition-normal);
}

.jyh-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 80px;
}


.jyh-logo-img {
  height: 48px;
  width: auto;
  max-width: 220px;
  object-fit: contain;
  display: block;
  transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.jyh-logo-wrap:hover .jyh-logo-img {
  transform: scale(1.03);
}

@media (max-width: 768px) {
  .jyh-logo-img {
    height: 40px;
    max-width: 175px;
  }
}

.jyh-logo-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
}

.jyh-logo-icon {
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, var(--color-primary) 0%, #00D2FF 100%);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 800;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  box-shadow: 0 4px 15px rgba(30, 58, 95, 0.35);
}

.jyh-logo-text {
  display: flex;
  flex-direction: column;
}

.jyh-logo-title {
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--color-primary-dark);
  letter-spacing: -0.03em;
  line-height: 1.1;
}

.jyh-logo-sub {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-muted);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.jyh-nav-menu {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  gap: 8px;
  list-style: none;
}

.jyh-nav-item {
  position: relative;
}

.jyh-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #1E293B;
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
}

.jyh-nav-link:hover, .jyh-nav-item.active .jyh-nav-link {
  color: var(--color-primary);
  background-color: #F1F5F9;
}

.jyh-nav-link svg {
  transition: transform var(--transition-fast);
}

.jyh-nav-item:hover .jyh-nav-link svg {
  transform: rotate(180deg);
}

/* Mega Dropdown Menus */
.jyh-dropdown {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  background: var(--bg-surface);
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-lg);
  box-shadow: 0 20px 40px -10px rgba(15, 23, 42, 0.15);
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  transition: all var(--transition-normal);
  z-index: 100;
}

.jyh-nav-item:hover .jyh-dropdown,
.jyh-dropdown.show-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(-50%) translateY(0) !important;
}

@keyframes highlight-pulse-glow {
  0% { box-shadow: 0 0 0 0 rgba(0, 82, 255, 0.7); transform: translateY(-4px) scale(1.02); }
  50% { box-shadow: 0 0 0 14px rgba(0, 82, 255, 0); transform: translateY(-4px) scale(1.02); }
  100% { box-shadow: 0 0 0 0 rgba(0, 82, 255, 0); transform: translateY(0) scale(1); }
}

.highlight-pulse {
  animation: highlight-pulse-glow 1.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  border-color: #0052FF !important;
}

.jyh-dropdown-grid-services {
  display: grid;
  grid-template-columns: repeat(3, 240px);
  gap: 16px;
}

.jyh-dropdown-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  border-radius: var(--radius-md);
  background: transparent;
  transition: all var(--transition-fast);
}

.jyh-dropdown-card:hover {
  background: #FAF7F0;
  transform: translateY(-2px);
}

.jyh-dropdown-icon {
  width: 36px;
  height: 36px;
  border-radius: var(--radius-sm);
  background: #EFF6FF;
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.jyh-dropdown-title {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #0F172A;
  margin-bottom: 2px;
}

.jyh-dropdown-desc {
  font-size: 0.75rem;
  color: #6B7280;
  line-height: 1.3;
}



@media (max-width: 900px) {
  .jyh-contact-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 600px) {
  .jyh-form-row {
    grid-template-columns: 1fr !important;
  }
}

.jyh-btn-instant-quote {
  background: #1E3A5F !important;
  color: #FFFFFF !important;
  font-family: var(--font-primary, 'Plus Jakarta Sans', sans-serif);
  font-size: 0.9375rem;
  font-weight: 700;
  padding: 11px 24px;
  border-radius: 12px;
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(30, 58, 95, 0.35);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.jyh-btn-instant-quote:hover {
  background: #152B47 !important;
  color: #FFFFFF !important;
  box-shadow: 0 5px 16px rgba(30, 58, 95, 0.45);
  transform: translateY(-1px);
}

.jyh-btn-instant-quote:active {
  transform: translateY(0);
}

.jyh-header-cta {
  display: flex;
  align-items: center;
  gap: 12px;
}

/* ==========================================================================
   BUTTONS & CTAs
   ========================================================================== */
.jyh-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 24px;
  font-size: 0.9375rem;
  font-weight: 700;
  font-family: var(--font-primary);
  border-radius: var(--radius-md);
  border: 1px solid transparent;
  cursor: pointer;
  transition: all var(--transition-normal);
  text-align: center;
  white-space: nowrap;
}

.jyh-btn-primary {
  background: linear-gradient(135deg, #1E3A5F 0%, #152B47 100%);
  color: #FFFFFF !important;
  box-shadow: 0 4px 15px rgba(30, 58, 95, 0.35);
}

.jyh-btn-primary:hover {
  background: linear-gradient(135deg, #152B47 0%, #1E3A5F 100%);
  box-shadow: 0 6px 20px rgba(30, 58, 95, 0.45);
  transform: translateY(-2px);
}

.jyh-btn-glow {
  background: linear-gradient(135deg, #FF5A1F 0%, #FF7A45 100%);
  color: #FFFFFF !important;
  box-shadow: 0 4px 20px rgba(255, 90, 31, 0.35);
}

.jyh-btn-glow:hover {
  background: linear-gradient(135deg, #E04810 0%, #FF5A1F 100%);
  box-shadow: 0 8px 25px rgba(255, 90, 31, 0.5);
  transform: translateY(-2px);
}

.jyh-btn-outline {
  background: transparent;
  border-color: #FFFFFF;
  color: #334155 !important;
}

.jyh-btn-outline:hover {
  background: #FAF7F0;
  border-color: var(--color-primary);
  color: var(--color-primary) !important;
}

.jyh-btn-dark {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.15);
  color: #FFFFFF !important;
  backdrop-filter: blur(10px);
}

.jyh-btn-dark:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: var(--color-cyan);
  color: var(--color-cyan) !important;
}

.jyh-btn-sm {
  padding: 8px 16px;
  font-size: 0.8125rem;
}

.jyh-btn-lg {
  padding: 16px 32px;
  font-size: 1.0625rem;
  border-radius: var(--radius-lg);
}

/* ==========================================================================
   HERO SECTION - High Tech Dark Theme with Interactive CAD & Matrix
   ========================================================================== */
.jyh-hero {
  position: relative;
  background: linear-gradient(135deg, #1A2D4E 0%, #1E3A6E 50%, #1A2D4E 100%);
  color: #FFFFFF;
  padding: 90px 0 110px 0;
  overflow: hidden;
}

.jyh-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: 
    radial-gradient(circle at 20% 30%, rgba(255,255,255, 0.05) 0%, transparent 50%),
    radial-gradient(circle at 80% 70%, rgba(255,255,255, 0.03) 0%, transparent 45%);
  background-size: 100% 100%, 100% 100%;
  pointer-events: none;
}

.jyh-hero-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 50px;
  align-items: center;
  position: relative;
  z-index: 2;
}

.jyh-hero-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.jyh-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(0, 210, 255, 0.08);
  border: 1px solid rgba(0, 210, 255, 0.25);
  color: var(--color-cyan);
  padding: 6px 16px;
  border-radius: var(--radius-full);
  font-size: 0.875rem;
  font-weight: 700;
  width: fit-content;
  backdrop-filter: blur(10px);
}

.jyh-hero-title {
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.25;
  color: #FFFFFF;
  letter-spacing: 0;
}

.jyh-hero-title span.highlight {
  background: linear-gradient(135deg, #7DCFF0 0%, #5BE8C0 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.jyh-hero-desc {
  font-size: 1.125rem;
  color: rgba(255,255,255,0.85);
  line-height: 1.7;
  max-width: 580px;
}

.jyh-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 8px;
}

.jyh-hero-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 12px;
}

.jyh-hero-feat-item {
  display: flex;
  flex-direction: column;
}

.jyh-hero-feat-val {
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 800;
  color: #00D2FF;
}

.jyh-hero-feat-lbl {
  font-size: 0.8125rem;
  color: #FFFFFF;
  font-weight: 500;
}

/* Hero CAD Upload & Instant DFM Widget */
.jyh-hero-cad-card {
  background: rgba(13, 24, 41, 0.85);
  border: 1px solid rgba(0, 210, 255, 0.25);
  border-radius: var(--radius-xl);
  padding: 32px;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5), 0 0 40px rgba(0, 210, 255, 0.15);
  position: relative;
}

.jyh-cad-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.jyh-cad-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #FFFFFF;
}

.jyh-cad-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  color: #10B981;
  font-weight: 600;
}

.jyh-cad-status::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #10B981;
}

/* CAD Dropzone */
.jyh-dropzone {
  border: 2px dashed rgba(0, 210, 255, 0.4);
  background: rgba(15, 90, 149, 0.08);
  border-radius: var(--radius-lg);
  padding: 36px 20px;
  text-align: center;
  cursor: pointer;
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.jyh-dropzone:hover, .jyh-dropzone.dragover {
  border-color: #00D2FF;
  background: rgba(0, 210, 255, 0.12);
  box-shadow: 0 0 25px rgba(0, 210, 255, 0.25);
}

.jyh-dropzone-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(0, 210, 255, 0.15);
  color: #00D2FF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.75rem;
}

.jyh-dropzone-prompt {
  font-size: 1rem;
  font-weight: 700;
  color: #FFFFFF;
}

.jyh-dropzone-sub {
  font-size: 0.8125rem;
  color: rgba(255,255,255,0.75);
}

.jyh-cad-formats {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.jyh-format-pill {
  font-family: var(--font-mono);
  font-size: 0.6875rem;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #FFFFFF;
  padding: 2px 8px;
  border-radius: var(--radius-sm);
}

.jyh-cad-footer {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.75rem;
  color: rgba(255,255,255,0.7);
}

/* ==========================================================================
   SERVICES & MANUFACTURING DIVISIONS SECTION
   ========================================================================== */
.jyh-section {
  padding: 100px 0;
  position: relative;
}

.jyh-section-header {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 60px auto;
}

.jyh-section-badge {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-primary);
  background: #EFF6FF;
  border: 1px solid #DBEAFE;
  padding: 4px 14px;
  border-radius: var(--radius-full);
  margin-bottom: 12px;
}

.jyh-section-title {
  font-size: 2.5rem;
  font-weight: 800;
  color: #0F172A;
  margin-bottom: 16px;
}

.jyh-section-subtitle {
  font-size: 1.0625rem;
  color: #6B7280;
  line-height: 1.6;
}

/* Services 6-Grid */
.jyh-services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.jyh-service-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
}

.jyh-service-card:hover {
  transform: translateY(-8px);
  border-color: #93C5FD;
  box-shadow: var(--shadow-xl);
}

.jyh-service-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  background: #0F172A;
  overflow: hidden;
}

.jyh-service-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform var(--transition-slow);
}

.jyh-service-card:hover .jyh-service-img {
  transform: scale(1.08);
}

.jyh-service-tag {
  position: absolute;
  top: 16px;
  left: 16px;
  background: rgba(15, 23, 42, 0.85);
  backdrop-filter: blur(8px);
  color: #00D2FF;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: var(--radius-full);
  border: 1px solid rgba(0, 210, 255, 0.3);
}

.jyh-service-body {
  padding: 28px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 16px;
}

.jyh-service-title,
.service-card-title {
  font-size: 1.35rem;
  font-weight: 700;
  color: #0F172A;
  line-height: 1.35;
}

.jyh-service-title a,
.service-card-title a {
  color: #0F172A;
  text-decoration: none;
  transition: color var(--transition-fast), transform var(--transition-fast);
  display: inline-block;
}

.jyh-service-title a:hover,
.service-card-title a:hover {
  color: #0052FF;
  text-decoration: none;
  transform: translateX(2px);
}

.jyh-service-desc {
  font-size: 0.9375rem;
  color: #6B7280;
  line-height: 1.6;
}

.jyh-service-specs {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px;
  background: #FAF7F0;
  border-radius: var(--radius-md);
  border: 1px solid #EDF2F7;
  font-size: 0.8125rem;
}

.jyh-service-spec-row {
  display: flex;
  justify-content: space-between;
  color: #6B7280;
}

.jyh-service-spec-row strong {
  color: #1E293B;
}

.jyh-service-btn {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  color: var(--color-primary);
  font-size: 0.9375rem;
}

.jyh-service-btn:hover {
  color: var(--color-primary-dark);
  gap: 12px;
}

/* ==========================================================================
   4-STEP DFM & ON-DEMAND PRODUCTION WORKFLOW
   ========================================================================== */
.jyh-workflow-section {
  background: linear-gradient(180deg, #1A2D4E 0%, #1E3A6E 100%);
  color: #FFFFFF;
}

.jyh-workflow-section .jyh-section-title {
  color: #FFFFFF;
}

.jyh-workflow-section .jyh-section-subtitle {
  color: #FFFFFF;
}

.jyh-workflow-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  position: relative;
}

.jyh-workflow-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-lg);
  padding: 32px 24px;
  position: relative;
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.jyh-workflow-card:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(0, 210, 255, 0.4);
  transform: translateY(-6px);
  box-shadow: 0 15px 35px -5px rgba(0, 210, 255, 0.15);
}

.jyh-step-badge {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary) 0%, #00D2FF 100%);
  color: #FFFFFF;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 15px rgba(0, 210, 255, 0.3);
}

.jyh-step-title {
  font-size: 1.1875rem;
  font-weight: 700;
  color: #FFFFFF;
}

.jyh-step-desc {
  font-size: 0.875rem;
  color: #FFFFFF;
  line-height: 1.6;
}

/* ==========================================================================
   MATERIALS MATRIX & INDUSTRIES SECTION
   ========================================================================== */
.jyh-materials-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.jyh-material-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-lg);
  padding: 24px;
  transition: all var(--transition-fast);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.jyh-material-card:hover {
  border-color: var(--color-primary);
  box-shadow: var(--shadow-md);
  transform: translateY(-4px);
}

.jyh-mat-type {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-primary);
  letter-spacing: 0.05em;
}

.jyh-mat-name {
  font-size: 1.125rem;
  font-weight: 700;
  color: #0F172A;
}

.jyh-mat-desc {
  font-size: 0.8125rem;
  color: #6B7280;
  line-height: 1.5;
}

/* Industry Cards 4x2 Grid */
.jyh-industries-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.jyh-industry-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-lg);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: all var(--transition-normal);
}

.jyh-industry-card:hover {
  border-color: #00D2FF;
  transform: translateY(-6px);
  box-shadow: 0 15px 30px -5px rgba(15, 90, 149, 0.12);
}

.jyh-ind-icon {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-md);
  background: #EFF6FF;
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
}

.jyh-ind-title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #0F172A;
}

.jyh-ind-desc {
  font-size: 0.8125rem;
  color: #6B7280;
  line-height: 1.5;
}

/* ==========================================================================
   QUALITY ASSURANCE & CMM LAB SECTION
   ========================================================================== */
.jyh-qa-banner {
  background: linear-gradient(135deg, #1A2D4E 0%, #1E3A6E 100%);
  border-radius: var(--radius-xl);
  padding: 50px;
  color: #FFFFFF;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: center;
  border: 1px solid rgba(255,255,255, 0.12);
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.15);
}

.jyh-qa-title {
  font-size: 2.25rem;
  color: #FFFFFF;
  margin-bottom: 16px;
}

.jyh-qa-desc {
  font-size: 1rem;
  color: #FFFFFF;
  line-height: 1.7;
  margin-bottom: 24px;
}

.jyh-cert-pill-group {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.jyh-cert-pill {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 8px 16px;
  border-radius: var(--radius-md);
  font-size: 0.8125rem;
  font-weight: 600;
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* ==========================================================================
   INTERACTIVE RFQ CALCULATOR WIZARD
   ========================================================================== */
.jyh-wizard-wrap {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}

.jyh-wizard-stepper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: #0F172A;
  color: #FFFFFF;
}

.jyh-step-tab {
  padding: 20px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 3px solid transparent;
  cursor: pointer;
  transition: all var(--transition-fast);
}

.jyh-step-tab.active {
  background: rgba(255, 255, 255, 0.05);
  border-bottom-color: #00D2FF;
}

.jyh-step-num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8125rem;
  font-weight: 700;
}

.jyh-step-tab.active .jyh-step-num {
  background: #00D2FF;
  color: #070D18;
}

.jyh-step-text {
  font-size: 0.875rem;
  font-weight: 700;
}

.jyh-wizard-body {
  padding: 40px;
}

.jyh-form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

.jyh-form-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.jyh-form-label {
  font-size: 0.875rem;
  font-weight: 700;
  color: #1E293B;
}

.jyh-form-control {
  width: 100%;
  padding: 12px 16px;
  font-size: 0.9375rem;
  font-family: var(--font-primary);
  border: 1px solid #D1D5DB;
  border-radius: var(--radius-md);
  background: #FFFFFF;
  color: #0F172A;
  transition: all var(--transition-fast);
}

.jyh-form-control:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(15, 90, 149, 0.15);
}

/* ==========================================================================
   FOOTER & WECHAT POPUP & FLOATING DOCK
   ========================================================================== */
.jyh-footer {
  background: #1A2332;
  color: #FFFFFF;
  padding: 80px 0 30px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.jyh-footer-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1.2fr;
  gap: 40px;
  margin-bottom: 60px;
}

.jyh-footer-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.jyh-footer-heading {
  font-size: 1.0625rem;
  font-weight: 700;
  color: #FFFFFF;
  letter-spacing: -0.01em;
}

.jyh-footer-links {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.jyh-footer-links a {
  color: #FFFFFF;
  font-size: 0.875rem;
}

.jyh-footer-links a:hover {
  color: #00D2FF;
  padding-left: 4px;
}

.jyh-footer-bottom {
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 0.8125rem;
  color: #FFFFFF;
}

/* Floating Action Dock */
.jyh-floating-dock,
.floating-contact-dock {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.jyh-dock-btn,
.dock-btn {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35);
  cursor: pointer;
  transition: all var(--transition-normal);
  border: none;
  position: relative;
  text-decoration: none;
}

.jyh-dock-btn:hover,
.dock-btn:hover {
  transform: scale(1.1);
}

/* AI Bot Floating Button */
.jyh-dock-ai,
.dock-btn-ai {
  background: linear-gradient(135deg, #0052FF 0%, #00D2FF 100%);
  border: 2px solid rgba(255, 255, 255, 0.4);
  box-shadow: 0 0 20px rgba(0, 210, 255, 0.5), 0 8px 25px rgba(0, 82, 255, 0.4);
  animation: ai-pulse 3s infinite;
}

@keyframes ai-pulse {
  0%, 100% { box-shadow: 0 0 20px rgba(0, 210, 255, 0.5), 0 8px 25px rgba(0, 82, 255, 0.4); }
  50% { box-shadow: 0 0 32px rgba(0, 210, 255, 0.8), 0 8px 30px rgba(0, 82, 255, 0.6); }
}

.jyh-dock-ai .ai-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  background: #10B981;
  color: #FFFFFF;
  font-size: 0.625rem;
  font-weight: 800;
  padding: 2px 6px;
  border-radius: 10px;
  border: 1.5px solid #070D18;
  letter-spacing: 0.05em;
}

.jyh-dock-whatsapp,
.dock-btn-whatsapp {
  background: #25D366;
}

.jyh-dock-whatsapp:hover,
.dock-btn-whatsapp:hover {
  box-shadow: 0 8px 25px rgba(37, 211, 102, 0.45);
}

.jyh-dock-wechat,
.dock-btn-wechat {
  background: #07C160;
}

.jyh-dock-rfq,
.dock-btn-rfq {
  background: linear-gradient(135deg, #FF5A1F 0%, #FF7A45 100%);
}

.dock-tooltip {
  position: absolute;
  right: 64px;
  background: #070D18;
  color: #FFFFFF;
  padding: 5px 12px;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 600;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  transform: translateX(10px);
  transition: all 0.2s ease;
  border: 1px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.jyh-dock-btn:hover .dock-tooltip,
.dock-btn:hover .dock-tooltip {
  opacity: 1;
  transform: translateX(0);
}

/* ==========================================================================
   AI MANUFACTURING ASSISTANT CHAT WINDOW
   ========================================================================== */
.jyh-ai-chat-window {
  position: fixed;
  bottom: 96px;
  right: 24px;
  width: 410px;
  max-width: calc(100vw - 32px);
  height: 600px;
  max-height: calc(100vh - 120px);
  background: #0B132B;
  border: 1px solid rgba(0, 210, 255, 0.35);
  border-radius: 20px;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7), 0 0 35px rgba(0, 210, 255, 0.2);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  z-index: 10000;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  transform: translateY(20px) scale(0.95);
  opacity: 0;
  pointer-events: none;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  font-family: var(--font-primary);
}

.jyh-ai-chat-window.active {
  transform: translateY(0) scale(1);
  opacity: 1;
  pointer-events: auto;
}

.jyh-ai-chat-header {
  background: linear-gradient(135deg, #070D18 0%, #0F233D 100%);
  padding: 14px 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.jyh-ai-header-info {
  display: flex;
  align-items: center;
  gap: 12px;
}

.jyh-ai-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(135deg, #0052FF 0%, #00D2FF 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  font-size: 1.25rem;
  position: relative;
  box-shadow: 0 0 15px rgba(0, 210, 255, 0.5);
}

.jyh-ai-avatar-pulse {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 10px;
  height: 10px;
  background: #10B981;
  border: 2px solid #070D18;
  border-radius: 50%;
  box-shadow: 0 0 8px #10B981;
}

.jyh-ai-title-wrap {
  display: flex;
  flex-direction: column;
}

.jyh-ai-name {
  color: #FFFFFF;
  font-size: 0.95rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 6px;
}

.jyh-ai-verified {
  background: rgba(0, 210, 255, 0.15);
  color: #00D2FF;
  font-size: 0.65rem;
  padding: 2px 6px;
  border-radius: 4px;
  font-weight: 700;
}

.jyh-ai-status-sub {
  color: #FFFFFF;
  font-size: 0.75rem;
}

.jyh-ai-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.jyh-ai-action-btn {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #FFFFFF;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 0.85rem;
}

.jyh-ai-action-btn:hover {
  background: #00D2FF;
  color: #070D18;
  border-color: #00D2FF;
}

.jyh-ai-chat-body {
  flex: 1;
  overflow-y: auto;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  scroll-behavior: smooth;
}

.jyh-ai-chat-body::-webkit-scrollbar {
  width: 6px;
}

.jyh-ai-chat-body::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 4px;
}

.jyh-ai-msg {
  display: flex;
  flex-direction: column;
  max-width: 88%;
  animation: msg-fade-in 0.3s ease;
}

@keyframes msg-fade-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

.jyh-ai-msg-bot {
  align-self: flex-start;
}

.jyh-ai-msg-user {
  align-self: flex-end;
}

.jyh-ai-bubble {
  padding: 12px 16px;
  border-radius: 14px;
  font-size: 0.88rem;
  line-height: 1.55;
}

.jyh-ai-msg-bot .jyh-ai-bubble {
  background: #132238;
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #F1F5F9;
  border-bottom-left-radius: 4px;
}

.jyh-ai-msg-user .jyh-ai-bubble {
  background: linear-gradient(135deg, #0052FF 0%, #0088FF 100%);
  color: #FFFFFF;
  border-bottom-right-radius: 4px;
  box-shadow: 0 4px 15px rgba(0, 82, 255, 0.3);
}

.jyh-ai-time {
  font-size: 0.6875rem;
  color: rgba(255,255,255,0.55);
  margin-top: 4px;
  padding: 0 4px;
}

.jyh-ai-msg-user .jyh-ai-time {
  text-align: right;
}

.jyh-ai-quick-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.jyh-ai-pill-btn {
  background: rgba(0, 210, 255, 0.08);
  border: 1px solid rgba(0, 210, 255, 0.28);
  color: #00D2FF;
  font-size: 0.75rem;
  padding: 6px 11px;
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: left;
  line-height: 1.3;
}

.jyh-ai-pill-btn:hover {
  background: #00D2FF;
  color: #070D18;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 210, 255, 0.3);
}

.jyh-ai-action-btn-inline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: linear-gradient(135deg, #FF5A1F 0%, #FF7A45 100%);
  color: #FFFFFF !important;
  padding: 7px 14px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 0.78rem;
  font-weight: 700;
  margin-top: 10px;
  margin-right: 6px;
  box-shadow: 0 4px 12px rgba(255, 90, 31, 0.3);
  transition: all 0.2s;
}

.jyh-ai-action-btn-inline:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(255, 90, 31, 0.5);
}

.jyh-ai-action-btn-outline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #FFFFFF !important;
  padding: 7px 14px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 0.78rem;
  font-weight: 600;
  margin-top: 10px;
  transition: all 0.2s;
}

.jyh-ai-action-btn-outline:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: #00D2FF;
  color: #00D2FF !important;
}

/* Typing Indicator */
.jyh-ai-typing {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 10px 16px;
  background: #132238;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 14px;
  width: fit-content;
}

.jyh-ai-dot {
  width: 6px;
  height: 6px;
  background: #00D2FF;
  border-radius: 50%;
  animation: typing-dot 1.4s infinite ease-in-out;
}

.jyh-ai-dot:nth-child(2) { animation-delay: 0.2s; }
.jyh-ai-dot:nth-child(3) { animation-delay: 0.4s; }

@keyframes typing-dot {
  0%, 60%, 100% { transform: translateY(0); opacity: 0.4; }
  30% { transform: translateY(-5px); opacity: 1; }
}

.jyh-ai-chat-input-wrap {
  padding: 12px 16px;
  background: #070D18;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  gap: 8px;
  align-items: center;
}

.jyh-ai-input {
  flex: 1;
  background: #132238;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 10px;
  color: #FFFFFF;
  padding: 10px 14px;
  font-size: 0.88rem;
  outline: none;
  font-family: inherit;
  transition: border-color 0.2s;
}

.jyh-ai-input:focus {
  border-color: #00D2FF;
  box-shadow: 0 0 10px rgba(0, 210, 255, 0.2);
}

.jyh-ai-input::placeholder {
  color: rgba(255,255,255,0.5);
}

.jyh-ai-send-btn {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: linear-gradient(135deg, #0052FF, #00D2FF);
  border: none;
  color: #FFFFFF;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.2s;
}

.jyh-ai-send-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 15px rgba(0, 210, 255, 0.5);
}

.jyh-ai-send-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}

/* WeChat Modal */
.jyh-modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(8px);
  z-index: 2000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.jyh-modal-backdrop.active {
  display: flex;
}

.jyh-modal-card {
  background: #FFFFFF;
  border-radius: var(--radius-xl);
  max-width: 440px;
  width: 100%;
  padding: 32px;
  text-align: center;
  position: relative;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4);
}

.jyh-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: #F4EFE6;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  cursor: pointer;
  font-weight: 700;
}

/* ==========================================================================
   LATEST POSTS & ARTICLES SECTION
   ========================================================================== */
.latest-posts-section {
  padding: 90px 0;
  background: #F5F5F0;
  border-top: 1px solid #E5E7EB;
}

.section-header-flex {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 48px;
  flex-wrap: wrap;
  gap: 20px;
}

.latest-posts-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.latest-posts-track {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  padding: 10px 4px 20px 4px;
  -webkit-overflow-scrolling: touch;
}

.latest-posts-track .post-card {
  flex: 0 0 calc(33.333% - 16px);
  min-width: 320px;
  scroll-snap-align: start;
}

.post-card {
  background: #ffffff;
  border-radius: var(--radius-lg);
  border: 1.5px solid #1076BE;
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  transition: all var(--transition-normal);
  display: flex;
  flex-direction: column;
}

.post-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 35px -10px rgba(15, 23, 42, 0.12);
  border-color: #0052ff;
}

.post-thumb-wrap {
  position: relative;
  width: 100%;
  height: 220px;
  overflow: hidden;
  background: #0b132b;
}

.post-thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow);
}

.post-card:hover .post-thumb-img {
  transform: scale(1.05);
}

.post-badge-cat {
  position: absolute;
  top: 14px;
  left: 14px;
  background: rgba(0, 82, 255, 0.9);
  backdrop-filter: blur(8px);
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 4px 12px;
  border-radius: 20px;
}

.post-content-wrap {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.post-meta-row {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 0.8125rem;
  color: #9CA3AF;
  margin-bottom: 12px;
}

.post-card-title {
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 12px;
}

.post-card-title a {
  color: #0f172a;
  text-decoration: none;
  transition: color var(--transition-fast);
}

.post-card-title a:hover {
  color: #0052ff;
}

.post-card-excerpt {
  color: #475569;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 20px;
  flex-grow: 1;
}

.post-card-footer {
  padding-top: 16px;
  border-top: 1px solid #f1f5f9;
}

.post-read-more-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #0052ff;
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
  transition: gap var(--transition-fast);
}

.post-read-more-link:hover {
  gap: 10px;
  color: #003ebd;
}

/* ==========================================================================
   RESPONSIVE MEDIA QUERIES
   ========================================================================== */
@media (max-width: 1024px) {
  .jyh-hero-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  
  .jyh-services-grid, .latest-posts-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .jyh-workflow-grid, .jyh-materials-grid, .jyh-industries-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .jyh-footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .jyh-qa-banner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .jyh-hero-title {
    font-size: 2.25rem;
  }
  
  .jyh-services-grid, .latest-posts-grid, .jyh-workflow-grid, .jyh-materials-grid, .jyh-industries-grid {
    grid-template-columns: 1fr;
  }

  .section-header-flex {
    flex-direction: column;
    align-items: flex-start;
  }

  .jyh-hero-features {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .jyh-nav-menu {
    display: none;
  }

  .jyh-footer-grid {
    grid-template-columns: 1fr;
  }

  .jyh-form-grid {
    grid-template-columns: 1fr;
  }

  .jyh-wizard-stepper {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ==========================================================================
   GLOBAL WORLDWIDE CONVERSION & RETENTION STYLES
   ========================================================================== */
.factory-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(16, 185, 129, 0.15);
  border: 1px solid rgba(16, 185, 129, 0.3);
  color: #10B981;
  padding: 3px 8px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
}

.pulse-dot {
  width: 7px;
  height: 7px;
  background-color: #10B981;
  border-radius: 50%;
  box-shadow: 0 0 8px #10B981;
  animation: pulse-green 1.8s infinite;
}

@keyframes pulse-green {
  0% { transform: scale(0.95); opacity: 0.7; }
  50% { transform: scale(1.3); opacity: 1; }
  100% { transform: scale(0.95); opacity: 0.7; }
}

.global-unit-toggle {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #FFFFFF;
  padding: 3px 10px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}

.global-unit-toggle:hover, .global-unit-toggle.active {
  background: #00D2FF;
  color: #070D18;
}

.global-currency-select, .global-lang-select {
  background: rgba(15, 23, 42, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #FFFFFF;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
  outline: none;
  cursor: pointer;
}

/* Worldwide Social Proof Toast Ticker */
.global-social-proof-ticker {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 9998;
  pointer-events: none;
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.global-social-proof-ticker.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.proof-toast {
  background: rgba(11, 19, 43, 0.95);
  border: 1px solid rgba(0, 210, 255, 0.3);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-radius: 12px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4);
  max-width: 360px;
}

.proof-flag {
  font-size: 1.8rem;
}

.proof-content {
  flex-grow: 1;
}

.proof-title {
  font-size: 0.75rem;
  font-weight: 700;
  color: #00D2FF;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.proof-desc {
  font-size: 0.875rem;
  color: #FFFFFF;
  line-height: 1.35;
  margin: 2px 0;
}

.proof-time {
  font-size: 0.7rem;
  color: #FFFFFF;
}

.proof-close {
  background: none;
  border: none;
  color: #FFFFFF;
  font-size: 1rem;
  cursor: pointer;
  padding: 2px 6px;
}

.proof-close:hover {
  color: #FFFFFF;
}

/* Exit-Intent Retention Modal */
.exit-intent-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(7, 13, 24, 0.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.exit-intent-modal-overlay.open {
  display: flex;
  animation: fadeIn 0.3s ease;
}

.exit-modal-card {
  background: #FFFFFF;
  border-radius: 20px;
  padding: 40px;
  max-width: 540px;
  width: 100%;
  position: relative;
  text-align: center;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.4);
}

.exit-modal-close {
  position: absolute;
  top: 16px;
  right: 18px;
  background: #F4EFE6;
  border: none;
  font-size: 1.3rem;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  cursor: pointer;
  color: #FFFFFF;
}

.exit-modal-badge {
  display: inline-block;
  background: #FEF3C7;
  color: #D97706;
  font-weight: 800;
  font-size: 0.75rem;
  padding: 4px 14px;
  border-radius: 20px;
  margin-bottom: 14px;
}

.exit-modal-title {
  font-size: 1.6rem;
  font-weight: 800;
  color: #0F172A;
  margin-bottom: 12px;
}

.exit-modal-desc {
  font-size: 0.95rem;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 24px;
}

/* Global Worldwide Express Shipping Bar */
.global-transit-bar {
  background: #0B132B;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding: 14px 0;
  color: #FFFFFF;
  font-size: 0.8125rem;
}

.transit-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.transit-tag {
  font-weight: 700;
  color: #00D2FF;
}

.transit-zones {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.transit-pill {
  background: rgba(255, 255, 255, 0.06);
  padding: 4px 10px;
  border-radius: 6px;
}

@keyframes fadeIn {
  from { opacity: 0; transform: scale(0.96); }
  to { opacity: 1; transform: scale(1); }
}

/* ==========================================================================
   Global Multilingual Engine & Google Translate Stealth Integration
   Author: China Akash Vai
   ========================================================================== */
#google_translate_element {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}

.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
iframe.goog-te-banner-frame {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
}

body {
  top: 0px !important;
  position: static !important;
}

.goog-text-highlight {
  background: transparent !important;
  box-shadow: none !important;
}

.goog-tooltip,
.goog-tooltip:hover {
  display: none !important;
}

.goog-te-gadget {
  display: none !important;
}

/* RTL Layout Support for Arabic */
[dir="rtl"] {
  text-align: right;
  direction: rtl;
}

[dir="rtl"] .top-promo-inner,
[dir="rtl"] .header-inner,
[dir="rtl"] .hero-row,
[dir="rtl"] .rfq-calc-grid,
[dir="rtl"] .footer-grid,
[dir="rtl"] .nav-menu {
  direction: rtl;
}

[dir="rtl"] .post-read-more-link svg,
[dir="rtl"] .btn-primary svg {
  transform: scaleX(-1);
}

/* Language Change Notification Toast */
.lang-notification-toast {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 99999;
  background: rgba(13, 24, 41, 0.95);
  border: 1px solid #00D2FF;
  box-shadow: 0 10px 30px rgba(0, 210, 255, 0.3), 0 0 20px rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(12px);
  color: #FFFFFF;
  padding: 12px 20px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-primary);
  font-size: 0.875rem;
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}

.lang-notification-toast.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.lang-notification-toast .toast-flag {
  font-size: 1.35rem;
}

.lang-notification-toast .toast-text strong {
  color: #00D2FF;
}

/* ==========================================================================
   WORDPRESS APPEARANCE WIDGETS & SIDEBAR DESIGN SYSTEM
   ========================================================================== */
.sidebar-widget,
.service-sidebar-widget,
.widget {
  background: #FFFFFF;
  padding: 24px;
  border-radius: var(--radius-lg);
  border: 1px solid var(--border-light);
  margin-bottom: 28px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  transition: all 0.3s ease;
}

.sidebar-widget:hover,
.service-sidebar-widget:hover {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
}

.widget-title,
.sidebar-widget h3,
.service-sidebar-widget h3 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--text-dark);
  margin-top: 0;
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--color-primary);
  font-family: var(--font-heading);
  letter-spacing: -0.01em;
}

/* Custom JYH Instant RFQ Widget */
.jyh-widget-rfq-card {
  background: linear-gradient(135deg, #070D18 0%, #0E1E38 100%);
  color: #FFFFFF;
  padding: 28px 22px;
  border-radius: var(--radius-lg);
  border: 1px solid rgba(0, 210, 255, 0.3);
  text-align: center;
  box-shadow: 0 12px 30px rgba(0, 82, 255, 0.2);
}

.jyh-widget-rfq-icon {
  width: 48px;
  height: 48px;
  background: rgba(0, 210, 255, 0.15);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 14px;
}

.jyh-widget-rfq-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #FFFFFF;
  margin-bottom: 8px;
}

.jyh-widget-rfq-desc {
  font-size: 0.85rem;
  color: #FFFFFF;
  margin-bottom: 18px;
  line-height: 1.5;
}

.jyh-widget-rfq-features {
  margin-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 0.78rem;
  color: #00D2FF;
  font-weight: 500;
}

/* Custom JYH Contact Widget */
.jyh-widget-contact-box {
  background: #FFFFFF;
}

/* Footer Dynamic Widgets */
.footer-widget-block {
  margin-bottom: 20px;
}

.footer-widget-block .footer-heading,
.footer-widget-block .widget-title {
  font-size: 0.95rem;
  font-weight: 700;
  color: #FFFFFF;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 16px;
  border-bottom: 2px solid #00D2FF;
  padding-bottom: 6px;
  display: inline-block;
}

.footer-widget-block ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-widget-block ul li {
  margin-bottom: 10px;
}

.footer-widget-block ul li a {
  color: #FFFFFF;
  text-decoration: none;
  font-size: 0.875rem;
  transition: color 0.2s ease, transform 0.2s ease;
  display: inline-block;
}

.footer-widget-block ul li a:hover {
  color: #00D2FF;
  transform: translateX(4px);
}

/* Core WordPress Widgets Support (Search, Categories, Recent Posts, Archives, Tags) */
.widget_search .search-form {
  display: flex;
  gap: 8px;
}

.widget_search input[type="search"] {
  flex: 1;
  padding: 10px 14px;
  border: 1px solid var(--border-light);
  border-radius: var(--radius-sm);
  font-size: 0.9rem;
  outline: none;
}

.widget_search input[type="search"]:focus {
  border-color: var(--color-primary);
}

.widget_categories ul,
.widget_archive ul,
.widget_meta ul,
.widget_pages ul,
.widget_nav_menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.widget_categories ul li,
.widget_archive ul li,
.widget_meta ul li,
.widget_pages ul li,
.widget_nav_menu ul li {
  border-bottom: 1px solid #F1F5F9;
  padding: 10px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.92rem;
}

.widget_categories ul li a,
.widget_archive ul li a,
.widget_meta ul li a,
.widget_pages ul li a,
.widget_nav_menu ul li a {
  color: var(--text-dark);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s;
}

.widget_categories ul li a:hover,
.widget_archive ul li a:hover {
  color: var(--color-primary);
}

.widget_recent_entries ul,
.widget_recent_comments ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.widget_recent_entries ul li {
  padding: 10px 0;
  border-bottom: 1px solid #F1F5F9;
  font-size: 0.9rem;
}

.widget_recent_entries ul li a {
  color: var(--text-dark);
  font-weight: 600;
  text-decoration: none;
  display: block;
  margin-bottom: 4px;
}

.widget_recent_entries ul li a:hover {
  color: var(--color-primary);
}

.widget_recent_entries .post-date {
  font-size: 0.78rem;
  color: var(--text-muted);
}

/* Tag Cloud Widget */
.widget_tag_cloud .tagcloud a {
  display: inline-block;
  background: #F4EFE6;
  color: #334155;
  padding: 4px 10px;
  border-radius: var(--radius-sm);
  font-size: 0.8125rem !important;
  margin: 0 4px 6px 0;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s;
}

.widget_tag_cloud .tagcloud a:hover {
  background: var(--color-primary);
  color: #FFFFFF;
}

/* Gutenberg Block Widgets in Appearance -> Widgets */
.wp-block-widget-area {
  margin-bottom: 24px;
}

.wp-block-group.widget {
  background: #FFFFFF;
  padding: 24px;
  border-radius: var(--radius-lg);
  border: 1px solid var(--border-light);
  margin-bottom: 24px;
}

/* ==========================================================================
   HUMAN EDITORIAL ARTICLE BODY
   Clean, readable, professional — like NYT / Medium / Protolabs Blog
   ========================================================================== */

.article-body h2, .entry-content h2 {
  font-size: 1.75rem; font-weight: 800; color: #111827;
  margin: 2.5rem 0 1rem; line-height: 1.3; letter-spacing: -0.015em;
}
.article-body h3, .entry-content h3 {
  font-size: 1.375rem; font-weight: 700; color: #1F2937;
  margin: 2rem 0 0.75rem; line-height: 1.35;
}
.article-body h4, .entry-content h4 {
  font-size: 1.125rem; font-weight: 700; color: #374151;
  margin: 1.5rem 0 0.5rem;
}
.article-body p, .entry-content p {
  color: #374151; font-size: 1.125rem; line-height: 1.85; margin: 0 0 1.5rem 0;
}
.article-body ul, .entry-content ul { list-style: none; padding: 0; margin: 0 0 1.5rem 0; }
.article-body ul li, .entry-content ul li {
  position: relative; padding-left: 24px; color: #374151;
  font-size: 1.0625rem; line-height: 1.75; margin-bottom: 10px;
}
.article-body ul li::before, .entry-content ul li::before {
  content: ''; position: absolute; left: 0; top: 12px;
  width: 7px; height: 7px; border-radius: 50%; background: #1D4ED8;
}
.article-body ol, .entry-content ol { padding-left: 24px; margin: 0 0 1.5rem 0; }
.article-body ol li, .entry-content ol li {
  color: #374151; font-size: 1.0625rem; line-height: 1.75; margin-bottom: 10px; padding-left: 6px;
}
.article-body ol li::marker, .entry-content ol li::marker { color: #1D4ED8; font-weight: 700; }

/* Blockquote */
.article-body blockquote, .entry-content blockquote {
  border-left: 4px solid #1D4ED8; margin: 2rem 0;
  padding: 16px 24px; background: #F0F7FF; border-radius: 0 8px 8px 0;
}
.article-body blockquote p, .entry-content blockquote p {
  color: #1E3A5F; font-size: 1.125rem; font-style: italic; font-weight: 500; margin: 0;
}

/* Code */
.article-body pre, .entry-content pre {
  background: #1F2937; color: #E5E7EB; border-radius: 8px;
  padding: 20px 24px; font-family: 'JetBrains Mono', monospace;
  font-size: 0.875rem; line-height: 1.7; overflow-x: auto; margin: 1.5rem 0;
}
.article-body code, .entry-content code {
  background: #F3F4F6; color: #DC2626; font-family: 'JetBrains Mono', monospace;
  font-size: 0.875em; padding: 2px 6px; border-radius: 4px; border: 1px solid #E5E7EB;
}
.article-body pre code, .entry-content pre code {
  background: none; color: inherit; padding: 0; border: none; border-radius: 0;
}

/* Images */
.article-body img, .article-body .wp-block-image img {
  border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,0.08);
  width: 100%; height: auto; aspect-ratio: unset; display: block; margin: 1.5rem 0;
}
.article-body figcaption, .entry-content figcaption {
  text-align: center; font-size: 0.8125rem; color: #9CA3AF; font-style: italic; margin-top: 8px;
}

/* HR */
.article-body hr, .entry-content hr {
  border: none; border-top: 2px solid #F3F4F6; margin: 2.5rem 0;
}

/* Tables */
.article-body table, .entry-content table {
  width: 100%; border-collapse: collapse; margin: 1.5rem 0; font-size: 0.9375rem;
}
.article-body table th, .entry-content table th {
  background: #1E3A5F; color: #FFFFFF; font-weight: 700;
  padding: 12px 16px; text-align: left; font-size: 0.875rem;
}
.article-body table td, .entry-content table td {
  padding: 11px 16px; border-bottom: 1px solid #E5E7EB; color: #374151; vertical-align: top;
}
.article-body table tr:nth-child(even) td, .entry-content table tr:nth-child(even) td {
  background: #F9FAFB;
}

/* Links */
.article-body a, .entry-content a {
  color: #1D4ED8; text-decoration: underline; text-underline-offset: 3px;
  text-decoration-color: rgba(29,78,216,0.35); font-weight: 500;
}
.article-body a:hover, .entry-content a:hover {
  color: #1E40AF; text-decoration-color: #1E40AF;
}
.article-body strong, .entry-content strong { font-weight: 700; color: #111827; }

/* Comments */
.comment-body {
  background: #FFFFFF; border: 1px solid #E5E7EB; border-radius: 8px;
  padding: 20px; margin-bottom: 20px;
}
.comment-author .fn { font-weight: 700; color: #111827; }
.comment-metadata a { color: #9CA3AF; font-size: 0.8125rem; }
#respond h3#reply-title { font-size: 1.25rem; font-weight: 700; color: #111827; margin-bottom: 20px; }
#respond .comment-form-comment label,
#respond .comment-form-author label,
#respond .comment-form-email label {
  font-size: 0.875rem; font-weight: 600; color: #374151; display: block; margin-bottom: 6px;
}
#respond input[type="text"],
#respond input[type="email"],
#respond textarea {
  width: 100%; border: 1px solid #D1D5DB; border-radius: 6px;
  padding: 10px 14px; font-size: 1rem; color: #111827;
  background: #FFFFFF; box-sizing: border-box;
}
#respond input:focus, #respond textarea:focus {
  outline: none; border-color: #1D4ED8; box-shadow: 0 0 0 3px rgba(29,78,216,0.12);
}
#respond .submit {
  background: #1D4ED8; color: #FFFFFF; border: none; padding: 12px 28px;
  border-radius: 6px; font-weight: 700; font-size: 0.9375rem; cursor: pointer;
}
#respond .submit:hover { background: #1E40AF; }

/* Single article page layout */
.jyh-article-single { background: #FFFFFF; }
.article-header { background: #FFFFFF; border-bottom: 1px solid #E5E7EB; }





    /* ============================================================
       COMPLETE MOBILE RESPONSIVE SYSTEM (320px - 1024px)
       Zero horizontal overflow, touch-optimized, mobile drawer
       ============================================================ */
    html, body {
      overflow-x: hidden !important;
      max-width: 100vw !important;
      width: 100% !important;
      margin: 0;
      padding: 0;
      -webkit-text-size-adjust: 100%;
    }

    * {
      box-sizing: border-box;
    }

    img, video, canvas, svg {
      max-width: 100%;
      height: auto;
    }

    /* Mobile Hamburger Button */
    .jyh-mobile-toggle {
      display: none;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 5px;
      width: 42px;
      height: 42px;
      background: rgba(255, 255, 255, 0.08);
      border: 1px solid rgba(255, 255, 255, 0.15);
      border-radius: 8px;
      cursor: pointer;
      padding: 8px;
      z-index: 1001;
      transition: all 0.25s ease;
    }
    .jyh-mobile-toggle span {
      display: block;
      width: 22px;
      height: 2px;
      background: #ffffff;
      border-radius: 2px;
      transition: all 0.3s ease;
    }
    .jyh-mobile-toggle.active span:nth-child(1) {
      transform: translateY(7px) rotate(45deg);
    }
    .jyh-mobile-toggle.active span:nth-child(2) {
      opacity: 0;
    }
    .jyh-mobile-toggle.active span:nth-child(3) {
      transform: translateY(-7px) rotate(-45deg);
    }

    /* Mobile Navigation Drawer */
    .jyh-mobile-drawer {
      position: fixed;
      top: 0;
      right: -100%;
      width: 310px;
      max-width: 85vw;
      height: 100vh;
      background: #0d1b2e;
      z-index: 99999;
      box-shadow: -8px 0 30px rgba(0,0,0,0.5);
      display: flex;
      flex-direction: column;
      padding: 24px 20px;
      overflow-y: auto;
      transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1);
      border-left: 1px solid rgba(255,255,255,0.1);
    }
    .jyh-mobile-drawer.open {
      right: 0;
    }
    .jyh-mobile-drawer-backdrop {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.65);
      backdrop-filter: blur(4px);
      -webkit-backdrop-filter: blur(4px);
      z-index: 99998;
      display: none;
      opacity: 0;
      transition: opacity 0.3s ease;
    }
    .jyh-mobile-drawer-backdrop.show {
      display: block;
      opacity: 1;
    }
    .jyh-drawer-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 24px;
      padding-bottom: 16px;
      border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    .jyh-drawer-logo {
      display: flex;
      align-items: center;
      gap: 8px;
      color: #ffffff;
      text-decoration: none;
      font-weight: 700;
      font-size: 1rem;
    }
    .jyh-drawer-close {
      background: rgba(255,255,255,0.1);
      border: none;
      color: #ffffff;
      width: 34px;
      height: 34px;
      border-radius: 50%;
      font-size: 1.1rem;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .jyh-drawer-nav {
      list-style: none;
      padding: 0;
      margin: 0 0 24px 0;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }
    .jyh-drawer-link {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 12px 14px;
      color: #e2e8f0;
      text-decoration: none;
      font-weight: 600;
      font-size: 0.95rem;
      border-radius: 8px;
      transition: background 0.2s, color 0.2s;
    }
    .jyh-drawer-link:hover, .jyh-drawer-link:active {
      background: rgba(0, 82, 255, 0.15);
      color: #60a5fa;
    }
    .jyh-drawer-cta {
      margin-top: auto;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    /* Tablet and Mobile Media Queries */
    @media (max-width: 1024px) {
      .jyh-container {
        padding-left: 18px !important;
        padding-right: 18px !important;
      }
      .jyh-nav-menu {
        display: none !important;
      }
      .jyh-mobile-toggle {
        display: flex !important;
      }
      .jyh-header-inner {
        justify-content: space-between !important;
      }
      .jyh-header-cta {
        display: none !important;
      }
      .jyh-hero-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
      }
      .jyh-hero-cad-card {
        min-height: 320px !important;
        max-height: 420px !important;
      }
      .jyh-services-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
      }
      .jyh-workflow-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-materials-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-industries-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-footer-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
    }

    /* Mobile Viewports (< 768px) */
    @media (max-width: 768px) {
      .jyh-topbar {
        padding: 8px 0 !important;
      }
      .jyh-topbar-inner {
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
        text-align: center !important;
      }
      .jyh-topbar-badges {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px !important;
        font-size: 0.72rem !important;
      }
      .jyh-topbar-links {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 8px !important;
        font-size: 0.75rem !important;
        width: 100% !important;
      }
      .jyh-topbar-links a {
        font-size: 0.72rem !important;
      }
      .global-unit-toggle,
      .global-currency-select,
      .global-lang-select {
        font-size: 0.72rem !important;
        padding: 4px 8px !important;
      }

      /* Hero Section */
      .jyh-hero {
        padding: 40px 0 60px !important;
      }
      .jyh-hero-title {
        font-size: 1.85rem !important;
        line-height: 1.25 !important;
      }
      .jyh-hero-desc {
        font-size: 0.92rem !important;
        line-height: 1.6 !important;
      }
      .jyh-hero-actions {
        flex-direction: column !important;
        gap: 12px !important;
        width: 100% !important;
      }
      .jyh-hero-actions .jyh-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 14px 20px !important;
        font-size: 0.95rem !important;
      }
      .jyh-hero-features {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
      }
      .jyh-hero-cad-card {
        min-height: 260px !important;
        max-height: 320px !important;
      }

      /* Capabilities / Divisions */
      .jyh-services-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
      }

      /* Workflow / DFM */
      .jyh-workflow-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
      }

      /* Wizard Stepper & Form */
      .jyh-wizard-stepper {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
      }
      .jyh-step-tab {
        padding: 10px 8px !important;
      }
      .jyh-step-text {
        font-size: 0.75rem !important;
      }
      .jyh-form-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
      }

      /* Cost Estimation Box */
      #costEstimateDisplay {
        font-size: 1.35rem !important;
      }

      /* Tables Responsive Container */
      .jyh-table-responsive {
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        display: block !important;
        margin-bottom: 16px !important;
      }
      #previewMaterialsTable {
        min-width: 600px !important;
      }

      /* Floating Dock on Mobile */
      .jyh-floating-dock {
        bottom: 14px !important;
        right: 12px !important;
        gap: 8px !important;
      }
      .jyh-dock-btn {
        width: 44px !important;
        height: 44px !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.3) !important;
      }
      .jyh-dock-btn svg {
        width: 20px !important;
        height: 20px !important;
      }

      /* Chatbot Window on Mobile */
      #jyhChatWindow {
        width: calc(100vw - 24px) !important;
        max-width: 380px !important;
        right: 12px !important;
        bottom: 70px !important;
        max-height: 78vh !important;
      }

      /* Modals on Mobile */
      .exit-modal-card {
        width: calc(100vw - 32px) !important;
        max-width: 480px !important;
        margin: 16px !important;
        padding: 24px 16px !important;
      }
      .exit-modal-form > div {
        flex-direction: column !important;
      }
      .exit-modal-form button {
        width: 100% !important;
      }
      .jyh-modal-card {
        width: calc(100vw - 32px) !important;
        padding: 24px 16px !important;
        margin: 16px !important;
      }

      /* Footer */
      .jyh-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
      }
      .transit-zones {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
      }
      .transit-pill {
        width: 100% !important;
        text-align: center !important;
      }
    }

    /* Small Mobile Phones (< 480px) */
    @media (max-width: 480px) {
      .jyh-container {
        padding-left: 14px !important;
        padding-right: 14px !important;
      }
      .jyh-hero-title {
        font-size: 1.65rem !important;
      }
      .jyh-section-title {
        font-size: 1.6rem !important;
      }
      .jyh-section-header {
        margin-bottom: 32px !important;
      }
      .jyh-badge-iso {
        font-size: 0.68rem !important;
        padding: 2px 6px !important;
      }
      .factory-status-badge {
        font-size: 0.68rem !important;
      }
      .jyh-logo-title {
        font-size: 1.1rem !important;
      }
      .jyh-logo-sub {
        font-size: 0.62rem !important;
      }
      .post-card.interactive-article-card {
        flex: 0 0 92% !important;
        min-width: 250px !important;
      }
    }


/* ============================================================
   PERFECT STRAIGHT VERTICAL FLOATING DOCK
   All buttons 100% aligned in a single straight vertical column
   ============================================================ */
.jyh-floating-dock,
.floating-contact-dock {
  position: fixed !important;
  bottom: 24px !important;
  right: 24px !important;
  z-index: 9999 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: auto !important;
}

.jyh-dock-btn,
.dock-btn,
#jyhChatBtn {
  position: relative !important;
  bottom: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
  cursor: pointer !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  box-sizing: border-box !important;
  animation: none !important;
}

.jyh-dock-btn:hover,
.dock-btn:hover,
#jyhChatBtn:hover {
  transform: translateY(-3px) scale(1.08) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35) !important;
}

.jyh-dock-whatsapp { background: linear-gradient(135deg, #25D366, #128C7E) !important; }
.jyh-dock-wechat { background: linear-gradient(135deg, #07C160, #06ad56) !important; }
.jyh-dock-ai,
#jyhChatBtn { background: linear-gradient(135deg, #0052FF, #00D2FF) !important; }
.jyh-dock-rfq { background: linear-gradient(135deg, #F97316, #EA580C) !important; }

#jyhChatBadge {
  position: absolute !important;
  top: -3px !important;
  right: -3px !important;
  background: #ff4757 !important;
  color: #ffffff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  border: 2px solid #ffffff !important;
  z-index: 10 !important;
}

#jyhChatWindow {
  position: fixed !important;
  bottom: 24px !important;
  right: 88px !important;
  width: 370px !important;
  max-height: 570px !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.22) !important;
  z-index: 10001 !important;
}

@media (max-width: 768px) {
  .jyh-floating-dock,
  .floating-contact-dock {
    bottom: 16px !important;
    right: 14px !important;
    gap: 10px !important;
  }
  .jyh-dock-btn,
  .dock-btn,
  #jyhChatBtn {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
  }
  .jyh-dock-btn svg,
  .dock-btn svg,
  #jyhChatBtn svg {
    width: 22px !important;
    height: 22px !important;
  }
  #jyhChatWindow {
    width: calc(100vw - 28px) !important;
    max-width: 380px !important;
    right: 14px !important;
    bottom: 74px !important;
  }
}


    /* ============================================
       HUMAN PROFESSIONAL THEME OVERRIDE
       Inspired by Protolabs, Xometry, Fictiv
       ============================================ */

    /* --- Global Reset to Light Professional --- */
    html,
    body {
      background-color: #F7F7F5 !important;
      color: #1F2937 !important;
    }

    /* --- Headings: Clean dark text --- */
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      color: #111827 !important;
      font-family: 'Inter', 'Plus Jakarta Sans', sans-serif;
    }

    /* --- Body text: readable grey --- */
    p {
      color: #4B5563;
    }

    li {
      color: #4B5563;
    }

    /* --- Links: professional blue --- */
    a {
      color: #1D4ED8;
    }

    a:hover {
      color: #1E40AF;
      text-decoration: none;
    }

    /* --- Topbar: clean dark navy strip --- */
    .jyh-topbar,
    .top-promo-bar {
      background: #1E3A5F !important;
    }

    .jyh-topbar *,
    .top-promo-bar * {
      color: #E5E7EB !important;
    }

    .jyh-badge-iso,
    .promo-tag {
      background: rgba(255, 255, 255, 0.12) !important;
      border: 1px solid rgba(255, 255, 255, 0.2) !important;
      color: #F3F4F6 !important;
    }

    .factory-status-badge {
      background: rgba(16, 185, 129, 0.15) !important;
      border-color: rgba(16, 185, 129, 0.3) !important;
      color: #D1FAE5 !important;
    }

    /* --- Header: white with clean nav --- */
    .jyh-header {
      background: #FFFFFF !important;
      border-bottom: 1px solid #E5E7EB !important;
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
    }

    .jyh-nav-link {
      color: #374151 !important;
      font-weight: 600;
    }

    .jyh-nav-link:hover {
      color: #1D4ED8 !important;
      background: #EFF6FF !important;
    }

    .jyh-logo-title {
      color: #1E3A5F !important;
    }

    .jyh-logo-sub {
      color: #6B7280 !important;
    }

    /* --- Hero: real photo style --- */
    .jyh-hero {
      background: #1E3A5F !important;
      padding: 0 !important;
      overflow: hidden;
    }

    .jyh-hero-grid {
      grid-template-columns: 1fr 1fr !important;
      gap: 0 !important;
      min-height: 540px;
      align-items: stretch !important;
    }

    .jyh-hero-content {
      padding: 70px 50px 70px 0;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 20px;
    }

    .jyh-hero-badge {
      background: rgba(255, 255, 255, 0.1) !important;
      border: 1px solid rgba(255, 255, 255, 0.2) !important;
      color: #BFD7FF !important;
      font-size: 0.8rem;
      letter-spacing: 0.05em;
      padding: 5px 14px;
      border-radius: 4px;
      width: fit-content;
      backdrop-filter: none !important;
    }

    .jyh-hero-title {
      font-size: 2.75rem !important;
      font-weight: 400 !important;
      color: #FFFFFF !important;
      line-height: 1.3 !important;
      letter-spacing: 0 !important;
    }

    .jyh-hero-title .highlight {
      color: #7DCFFF !important;
      background: none !important;
      -webkit-text-fill-color: #7DCFFF !important;
    }

    .jyh-hero-desc {
      color: rgba(255, 255, 255, 0.80) !important;
      font-size: 1.0625rem;
      line-height: 1.7;
    }

    .jyh-hero-features {
      border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
      padding-top: 20px;
      margin-top: 8px;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }

    .jyh-hero-feat-val {
      color: #7DCFFF !important;
      font-size: 1.5rem;
      font-weight: 700;
    }

    .jyh-hero-feat-lbl {
      color: rgba(255, 255, 255, 0.65) !important;
      font-size: 0.8125rem;
    }

    .jyh-hero-actions {
      gap: 12px;
      flex-wrap: wrap;
    }

    /* Hero factory photo side */
    .jyh-hero-cad-card {
      background: none !important;
      border: none !important;
      box-shadow: none !important;
      padding: 0 !important;
      backdrop-filter: none !important;
      position: relative;
      overflow: hidden;
    }

    /* Buttons */
    .jyh-btn-glow,
    .jyh-btn-primary {
      background: #1D4ED8 !important;
      box-shadow: none !important;
      border-radius: 6px !important;
      color: #fff !important;
      font-weight: 600 !important;
    }

    .jyh-btn-glow:hover,
    .jyh-btn-primary:hover {
      background: #1E40AF !important;
      box-shadow: none !important;
      transform: none !important;
    }

    .jyh-btn-dark {
      background: rgba(255, 255, 255, 0.1) !important;
      border: 1px solid rgba(255, 255, 255, 0.3) !important;
      color: #fff !important;
      border-radius: 6px !important;
    }

    .jyh-btn-dark:hover {
      background: rgba(255, 255, 255, 0.18) !important;
    }

    .jyh-header-cta .jyh-btn-glow {
      background: #DC2626 !important;
      color: #fff !important;
    }

    .jyh-header-cta .jyh-btn-glow:hover {
      background: #B91C1C !important;
    }

    /* --- Section backgrounds: clean white/off-white --- */
    .jyh-section {
      background: #F7F7F5;
    }

    .jyh-section:nth-child(even) {
      background: #FFFFFF;
    }

    .jyh-section-title {
      color: #111827 !important;
    }

    .jyh-section-subtitle {
      color: #6B7280 !important;
    }

    .jyh-section-badge {
      background: #EFF6FF !important;
      border: 1px solid #BFDBFE !important;
      color: #1D4ED8 !important;
    }

    /* --- Cards: clean white --- */
    .jyh-service-card {
      background: #FFFFFF !important;
      border: 1px solid #E5E7EB !important;
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07) !important;
      border-radius: 10px !important;
    }

    .jyh-service-card:hover {
      box-shadow: 0 6px 20px rgba(0, 0, 0, 0.10) !important;
      transform: translateY(-4px) !important;
      border-color: #BFDBFE !important;
    }

    .jyh-service-title,
    .jyh-service-title a {
      color: #111827 !important;
    }

    .jyh-service-title a:hover {
      color: #1D4ED8 !important;
    }

    .jyh-service-desc {
      color: #6B7280 !important;
    }

    .jyh-service-specs {
      background: #F9FAFB !important;
      border: 1px solid #F3F4F6 !important;
    }

    .jyh-service-spec-row {
      color: #6B7280 !important;
    }

    .jyh-service-spec-row strong {
      color: #1F2937 !important;
    }

    .jyh-service-tag {
      background: rgba(0, 0, 0, 0.55) !important;
      border: none !important;
      color: #F3F4F6 !important;
    }

    .jyh-service-btn {
      color: #1D4ED8 !important;
    }

    /* --- Dropdown: clean white --- */
    .jyh-dropdown {
      background: #FFFFFF !important;
      border: 1px solid #E5E7EB !important;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.10) !important;
    }

    .jyh-dropdown-title {
      color: #111827 !important;
    }

    .jyh-dropdown-desc {
      color: #6B7280 !important;
    }

    .jyh-dropdown-icon {
      background: #EFF6FF !important;
      color: #1D4ED8 !important;
    }

    .jyh-dropdown-card:hover {
      background: #F9FAFB !important;
    }

    /* --- Workflow section: dark navy (keep for contrast) --- */
    .jyh-workflow-section {
      background: #1E3A5F !important;
    }

    .jyh-workflow-section * {
      color: #E5E7EB;
    }

    .jyh-workflow-section .jyh-section-title {
      color: #FFFFFF !important;
    }

    .jyh-workflow-section .jyh-section-subtitle {
      color: #9CA3AF !important;
    }

    .jyh-step-title {
      color: #FFFFFF !important;
    }

    .jyh-step-desc {
      color: #9CA3AF !important;
    }

    .jyh-workflow-card {
      background: rgba(255, 255, 255, 0.05) !important;
      border: 1px solid rgba(255, 255, 255, 0.1) !important;
    }

    .jyh-step-badge {
      background: #1D4ED8 !important;
      box-shadow: none !important;
    }

    /* --- Materials / Industry cards --- */
    .jyh-material-card,
    .jyh-industry-card {
      background: #FFFFFF !important;
      border: 1px solid #E5E7EB !important;
    }

    .jyh-mat-name,
    .jyh-ind-title {
      color: #111827 !important;
    }

    .jyh-mat-desc,
    .jyh-ind-desc {
      color: #6B7280 !important;
    }

    .jyh-mat-type {
      color: #1D4ED8 !important;
    }

    .jyh-ind-icon {
      background: #EFF6FF !important;
      color: #1D4ED8 !important;
    }

    .jyh-industry-card:hover {
      border-color: #BFDBFE !important;
      box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08) !important;
    }

    /* --- QA Banner: clean dark navy --- */
    .jyh-qa-banner {
      background: linear-gradient(135deg, #1E3A5F, #1D4ED8) !important;
      border: none !important;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12) !important;
    }

    .jyh-qa-title {
      color: #FFFFFF !important;
    }

    .jyh-qa-desc {
      color: rgba(255, 255, 255, 0.80) !important;
    }

    /* --- Quote/RFQ wizard: clean white --- */
    .jyh-wizard-wrap {
      background: #FFFFFF !important;
      border: 1px solid #E5E7EB !important;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06) !important;
    }

    .jyh-wizard-stepper {
      background: #1E3A5F !important;
    }

    .jyh-form-label {
      color: #374151 !important;
    }

    .jyh-form-control {
      border: 1px solid #D1D5DB !important;
      color: #111827 !important;
      background: #FFFFFF !important;
    }

    .jyh-form-control:focus {
      border-color: #1D4ED8 !important;
      box-shadow: 0 0 0 3px rgba(29, 78, 216, 0.12) !important;
    }

    /* --- Footer: dark navy --- */
    .jyh-footer {
      background: #1A2B40 !important;
    }

    .jyh-footer * {
      color: #9CA3AF;
    }

    .jyh-footer-heading {
      color: #F3F4F6 !important;
    }

    .jyh-footer-links a {
      color: #9CA3AF !important;
    }

    .jyh-footer-links a:hover {
      color: #60A5FA !important;
    }

    .jyh-footer-bottom {
      color: #6B7280 !important;
      border-top-color: rgba(255, 255, 255, 0.08) !important;
    }

    /* --- AI Chatbot: keep dark (it's a popup widget) --- */
    .jyh-ai-chat-window {
      background: #0F1F33 !important;
    }

    .jyh-ai-chat-header {
      background: #1A2B40 !important;
    }

    .jyh-ai-input {
      background: #1A2B40 !important;
      color: #E5E7EB !important;
    }

    .jyh-ai-msg-bot .jyh-ai-bubble {
      background: #1A2B40 !important;
      color: #E5E7EB !important;
      border-color: rgba(255, 255, 255, 0.08) !important;
    }

    /* Remove AI-look from proof toast */
    .proof-toast {
      background: #1E3A5F !important;
      border: 1px solid rgba(255, 255, 255, 0.15) !important;
    }

    .proof-desc,
    .proof-time,
    .proof-close {
      color: #D1D5DB !important;
    }

    /* Remove all glowing/pulsing on non-critical elements */
    .jyh-hero-badge {
      animation: none !important;
    }

    .jyh-badge-iso::before {
      box-shadow: none !important;
    }

    /* --- Interactive Article Slider & Direct Navigation --- */
    .articles-carousel-container {
      position: relative;
      margin-top: 14px;
    }

    .latest-posts-track {
      display: flex;
      gap: 24px;
      overflow-x: auto;
      scroll-behavior: smooth;
      scroll-snap-type: x mandatory;
      padding: 8px 4px 20px 4px;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: thin;
      scrollbar-color: #CBD5E1 #F1F5F9;
    }

    .latest-posts-track::-webkit-scrollbar {
      height: 7px;
    }

    .latest-posts-track::-webkit-scrollbar-track {
      background: #F4EFE6;
      border-radius: 999px;
    }

    .latest-posts-track::-webkit-scrollbar-thumb {
      background: #CBD5E1;
      border-radius: 999px;
    }

    .latest-posts-track::-webkit-scrollbar-thumb:hover {
      background: #94A3B8;
    }

    .post-card.interactive-article-card {
      flex: 0 0 calc(33.333% - 16px);
      min-width: 330px;
      scroll-snap-align: start;
      background: #FFFFFF !important;
      border: 1.5px solid #1076BE !important;
      border-radius: 12px !important;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
      transition: transform 0.28s cubic-bezier(0.2, 0, 0.2, 1), box-shadow 0.28s cubic-bezier(0.2, 0, 0.2, 1), border-color 0.28s ease !important;
      display: flex;
      flex-direction: column;
    }

    .post-card.interactive-article-card:hover {
      transform: translateY(-8px) scale(1.01) !important;
      box-shadow: 0 20px 35px -8px rgba(30, 58, 95, 0.15) !important;
      border-color: #3B82F6 !important;
    }

    .jyh-slider-arrow {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      border: 1px solid #D1D5DB;
      background: #FFFFFF;
      color: #1F2937;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: all 0.2s ease;
      box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    }

    .jyh-slider-arrow:hover {
      background: #1D4ED8;
      color: #FFFFFF;
      border-color: #1D4ED8;
      transform: scale(1.08);
      box-shadow: 0 4px 12px rgba(29, 78, 216, 0.25);
    }
    @media (max-width: 640px) {
      .post-card.interactive-article-card {
        flex: 0 0 88%;
        min-width: 260px;
      }
    }
  /* ============================================================
       COMPLETE MOBILE RESPONSIVE SYSTEM (320px - 1024px)
       Zero horizontal overflow, touch-optimized, mobile drawer
       ============================================================ */
    html, body {
      overflow-x: hidden !important;
      max-width: 100vw !important;
      width: 100% !important;
      margin: 0;
      padding: 0;
      -webkit-text-size-adjust: 100%;
    }

    * {
      box-sizing: border-box;
    }

    img, video, canvas, svg {
      max-width: 100%;
      height: auto;
    }

    /* Mobile Hamburger Button */
    .jyh-mobile-toggle {
      display: none;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 5px;
      width: 42px;
      height: 42px;
      background: rgba(255, 255, 255, 0.08);
      border: 1px solid rgba(255, 255, 255, 0.15);
      border-radius: 8px;
      cursor: pointer;
      padding: 8px;
      z-index: 1001;
      transition: all 0.25s ease;
    }
    .jyh-mobile-toggle span {
      display: block;
      width: 22px;
      height: 2px;
      background: #ffffff;
      border-radius: 2px;
      transition: all 0.3s ease;
    }
    .jyh-mobile-toggle.active span:nth-child(1) {
      transform: translateY(7px) rotate(45deg);
    }
    .jyh-mobile-toggle.active span:nth-child(2) {
      opacity: 0;
    }
    .jyh-mobile-toggle.active span:nth-child(3) {
      transform: translateY(-7px) rotate(-45deg);
    }

    /* Mobile Navigation Drawer */
    .jyh-mobile-drawer {
      position: fixed;
      top: 0;
      right: -100%;
      width: 310px;
      max-width: 85vw;
      height: 100vh;
      background: #0d1b2e;
      z-index: 99999;
      box-shadow: -8px 0 30px rgba(0,0,0,0.5);
      display: flex;
      flex-direction: column;
      padding: 24px 20px;
      overflow-y: auto;
      transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1);
      border-left: 1px solid rgba(255,255,255,0.1);
    }
    .jyh-mobile-drawer.open {
      right: 0;
    }
    .jyh-mobile-drawer-backdrop {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.65);
      backdrop-filter: blur(4px);
      -webkit-backdrop-filter: blur(4px);
      z-index: 99998;
      display: none;
      opacity: 0;
      transition: opacity 0.3s ease;
    }
    .jyh-mobile-drawer-backdrop.show {
      display: block;
      opacity: 1;
    }
    .jyh-drawer-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 24px;
      padding-bottom: 16px;
      border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    .jyh-drawer-logo {
      display: flex;
      align-items: center;
      gap: 8px;
      color: #ffffff;
      text-decoration: none;
      font-weight: 700;
      font-size: 1rem;
    }
    .jyh-drawer-close {
      background: rgba(255,255,255,0.1);
      border: none;
      color: #ffffff;
      width: 34px;
      height: 34px;
      border-radius: 50%;
      font-size: 1.1rem;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .jyh-drawer-nav {
      list-style: none;
      padding: 0;
      margin: 0 0 24px 0;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }
    .jyh-drawer-link {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 12px 14px;
      color: #e2e8f0;
      text-decoration: none;
      font-weight: 600;
      font-size: 0.95rem;
      border-radius: 8px;
      transition: background 0.2s, color 0.2s;
    }
    .jyh-drawer-link:hover, .jyh-drawer-link:active {
      background: rgba(0, 82, 255, 0.15);
      color: #60a5fa;
    }
    .jyh-drawer-cta {
      margin-top: auto;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    /* Tablet and Mobile Media Queries */
    @media (max-width: 1024px) {
      .jyh-container {
        padding-left: 18px !important;
        padding-right: 18px !important;
      }
      .jyh-nav-menu {
        display: none !important;
      }
      .jyh-mobile-toggle {
        display: flex !important;
      }
      .jyh-header-inner {
        justify-content: space-between !important;
      }
      .jyh-header-cta {
        display: none !important;
      }
      .jyh-hero-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
      }
      .jyh-hero-cad-card {
        min-height: 320px !important;
        max-height: 420px !important;
      }
      .jyh-services-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
      }
      .jyh-workflow-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-materials-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-industries-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
      .jyh-footer-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
    }

    /* Mobile Viewports (< 768px) */
    @media (max-width: 768px) {
      .jyh-topbar {
        padding: 8px 0 !important;
      }
      .jyh-topbar-inner {
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
        text-align: center !important;
      }
      .jyh-topbar-badges {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px !important;
        font-size: 0.72rem !important;
      }
      .jyh-topbar-links {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 8px !important;
        font-size: 0.75rem !important;
        width: 100% !important;
      }
      .jyh-topbar-links a {
        font-size: 0.72rem !important;
      }
      .global-unit-toggle,
      .global-currency-select,
      .global-lang-select {
        font-size: 0.72rem !important;
        padding: 4px 8px !important;
      }

      /* Hero Section */
      .jyh-hero {
        padding: 40px 0 60px !important;
      }
      .jyh-hero-title {
        font-size: 1.85rem !important;
        line-height: 1.25 !important;
      }
      .jyh-hero-desc {
        font-size: 0.92rem !important;
        line-height: 1.6 !important;
      }
      .jyh-hero-actions {
        flex-direction: column !important;
        gap: 12px !important;
        width: 100% !important;
      }
      .jyh-hero-actions .jyh-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 14px 20px !important;
        font-size: 0.95rem !important;
      }
      .jyh-hero-features {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
      }
      .jyh-hero-cad-card {
        min-height: 260px !important;
        max-height: 320px !important;
      }

      /* Capabilities / Divisions */
      .jyh-services-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
      }

      /* Workflow / DFM */
      .jyh-workflow-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
      }

      /* Wizard Stepper & Form */
      .jyh-wizard-stepper {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
      }
      .jyh-step-tab {
        padding: 10px 8px !important;
      }
      .jyh-step-text {
        font-size: 0.75rem !important;
      }
      .jyh-form-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
      }

      /* Cost Estimation Box */
      #costEstimateDisplay {
        font-size: 1.35rem !important;
      }

      /* Tables Responsive Container */
      .jyh-table-responsive {
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        display: block !important;
        margin-bottom: 16px !important;
      }
      #previewMaterialsTable {
        min-width: 600px !important;
      }

      /* Floating Dock on Mobile */
      .jyh-floating-dock {
        bottom: 14px !important;
        right: 12px !important;
        gap: 8px !important;
      }
      .jyh-dock-btn {
        width: 44px !important;
        height: 44px !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.3) !important;
      }
      .jyh-dock-btn svg {
        width: 20px !important;
        height: 20px !important;
      }

      /* Chatbot Window on Mobile */
      #jyhChatWindow {
        width: calc(100vw - 24px) !important;
        max-width: 380px !important;
        right: 12px !important;
        bottom: 70px !important;
        max-height: 78vh !important;
      }

      /* Modals on Mobile */
      .exit-modal-card {
        width: calc(100vw - 32px) !important;
        max-width: 480px !important;
        margin: 16px !important;
        padding: 24px 16px !important;
      }
      .exit-modal-form > div {
        flex-direction: column !important;
      }
      .exit-modal-form button {
        width: 100% !important;
      }
      .jyh-modal-card {
        width: calc(100vw - 32px) !important;
        padding: 24px 16px !important;
        margin: 16px !important;
      }

      /* Footer */
      .jyh-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
      }
      .transit-zones {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
      }
      .transit-pill {
        width: 100% !important;
        text-align: center !important;
      }
    }

    /* Small Mobile Phones (< 480px) */
    @media (max-width: 480px) {
      .jyh-container {
        padding-left: 14px !important;
        padding-right: 14px !important;
      }
      .jyh-hero-title {
        font-size: 1.65rem !important;
      }
      .jyh-section-title {
        font-size: 1.6rem !important;
      }
      .jyh-section-header {
        margin-bottom: 32px !important;
      }
      .jyh-badge-iso {
        font-size: 0.68rem !important;
        padding: 2px 6px !important;
      }
      .factory-status-badge {
        font-size: 0.68rem !important;
      }
      .jyh-logo-title {
        font-size: 1.1rem !important;
      }
      .jyh-logo-sub {
        font-size: 0.62rem !important;
      }
    }
  

/* ============================================================
   PERFECT STRAIGHT VERTICAL FLOATING DOCK
   All buttons 100% aligned in a single straight vertical column
   ============================================================ */
.jyh-floating-dock,
.floating-contact-dock {
  position: fixed !important;
  bottom: 24px !important;
  right: 24px !important;
  z-index: 9999 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: auto !important;
}

.jyh-dock-btn,
.dock-btn,
#jyhChatBtn {
  position: relative !important;
  bottom: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  max-width: 52px !important;
  max-height: 52px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
  cursor: pointer !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
  box-sizing: border-box !important;
  animation: none !important;
}

.jyh-dock-btn:hover,
.dock-btn:hover,
#jyhChatBtn:hover {
  transform: translateY(-3px) scale(1.08) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35) !important;
}

.jyh-dock-whatsapp { background: linear-gradient(135deg, #25D366, #128C7E) !important; }
.jyh-dock-wechat { background: linear-gradient(135deg, #07C160, #06ad56) !important; }
.jyh-dock-ai,
#jyhChatBtn { background: linear-gradient(135deg, #0052FF, #00D2FF) !important; }
.jyh-dock-rfq { background: linear-gradient(135deg, #F97316, #EA580C) !important; }

#jyhChatBadge {
  position: absolute !important;
  top: -3px !important;
  right: -3px !important;
  background: #ff4757 !important;
  color: #ffffff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  border: 2px solid #ffffff !important;
  z-index: 10 !important;
}

#jyhChatWindow {
  position: fixed !important;
  bottom: 24px !important;
  right: 88px !important;
  width: 370px !important;
  max-height: 570px !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.22) !important;
  z-index: 10001 !important;
}

@media (max-width: 768px) {
  .jyh-floating-dock,
  .floating-contact-dock {
    bottom: 16px !important;
    right: 14px !important;
    gap: 10px !important;
  }
  .jyh-dock-btn,
  .dock-btn,
  #jyhChatBtn {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
  }
  .jyh-dock-btn svg,
  .dock-btn svg,
  #jyhChatBtn svg {
    width: 22px !important;
    height: 22px !important;
  }
  #jyhChatWindow {
    width: calc(100vw - 28px) !important;
    max-width: 380px !important;
    right: 14px !important;
    bottom: 74px !important;
  }
}


/* Modern Expertise Mega Dropdown (4-Column Layout) */
.jyh-header-inner {
  position: relative !important;
}

#navExpertiseItem {
  position: static !important;
}

.jyh-dropdown-mega {
  position: absolute;
  top: calc(100% - 4px) !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(12px) !important;
  width: 960px !important;
  max-width: 96vw !important;
  background: #FFFFFF !important;
  border: 1px solid #E5DFD3 !important;
  border-radius: 20px !important;
  box-shadow: 0 25px 60px -15px rgba(15, 23, 42, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.03) !important;
  padding: 24px 26px 16px 26px !important;
  opacity: 0;
  visibility: hidden;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  z-index: 1000 !important;
}

.jyh-dropdown-mega::before {
  content: '';
  position: absolute;
  top: -16px;
  left: 0;
  width: 100%;
  height: 16px;
  background: transparent;
}

#navExpertiseItem:hover .jyh-dropdown-mega,
.jyh-nav-item:hover .jyh-dropdown-mega,
.jyh-dropdown-mega.show-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(-50%) translateY(0) !important;
}

.jyh-mega-grid-4col {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.jyh-mega-column {
  display: flex;
  flex-direction: column;
}

.jyh-mega-column-highlight {
  background: #FAF7F0;
  padding: 14px 14px 12px 14px;
  border-radius: 14px;
  border: 1px solid #EFE8DA;
}

.jyh-mega-col-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  padding-bottom: 10px;
  border-bottom: 2px solid #F1F5F9;
}

.jyh-mega-column-highlight .jyh-mega-col-header {
  border-bottom-color: #E8E0D2;
}

.jyh-mega-col-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: #EFF6FF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  flex-shrink: 0;
}

.jyh-mega-col-title {
  font-size: 0.92rem;
  font-weight: 800;
  color: #1E3A5F;
  margin: 0;
  line-height: 1.2;
}

.jyh-mega-col-subtitle {
  font-size: 0.7rem;
  color: #64748B;
  font-weight: 500;
  display: block;
}

.jyh-mega-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.jyh-mega-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 10px;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  background: transparent;
}

.jyh-mega-item:hover {
  background: #F1F5F9;
  transform: translateX(3px);
}

.jyh-mega-column-highlight .jyh-mega-item:hover {
  background: #FFFFFF;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

.jyh-mega-item-text {
  font-size: 0.835rem;
  font-weight: 600;
  color: #1E293B;
  line-height: 1.35;
  transition: color 0.15s ease;
}

.jyh-mega-item:hover .jyh-mega-item-text {
  color: #1E3A5F;
}

.jyh-menu-arrow {
  color: #94A3B8;
  opacity: 0.4;
  transition: all 0.2s ease;
}

.jyh-mega-item:hover .jyh-menu-arrow {
  opacity: 1;
  color: #1E3A5F;
  transform: translateX(2px);
}

.jyh-badge-pill {
  font-size: 0.65rem;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 999px;
  background: #EFF6FF;
  color: #1D4ED8;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.jyh-mega-footer-banner {
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid #EAE5D9;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.jyh-mega-footer-left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.jyh-mega-badge-live {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #DCFCE7;
  color: #15803D;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
}

.jyh-mega-footer-desc {
  font-size: 0.78rem;
  color: #64748B;
  font-weight: 500;
}

.jyh-mega-footer-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #1E3A5F;
  color: #FFFFFF !important;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 7px 14px;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.jyh-mega-footer-btn:hover {
  background: #152B47;
  transform: translateY(-1px);
}


/* Industries Dropdown (Exact Match to Screenshot) */
#navIndustriesItem {
  position: relative !important;
}

.jyh-dropdown-industries {
  position: absolute;
  top: calc(100% - 4px) !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(12px) !important;
  width: 780px !important;
  max-width: 95vw !important;
  background: #FFFFFF !important;
  border: 1px solid #E5DFD3 !important;
  border-radius: 18px !important;
  box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.15), 0 0 0 1px rgba(0, 0, 0, 0.03) !important;
  padding: 24px 28px !important;
  opacity: 0;
  visibility: hidden;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  z-index: 1000 !important;
}

.jyh-dropdown-industries::before {
  content: '';
  position: absolute;
  top: -16px;
  left: 0;
  width: 100%;
  height: 16px;
  background: transparent;
}

#navIndustriesItem:hover .jyh-dropdown-industries,
.jyh-dropdown-industries.show-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(-50%) translateY(0) !important;
}

.jyh-industries-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 28px;
}

.jyh-industries-col {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.jyh-industry-card {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 10px 12px;
  border-radius: 12px;
  text-decoration: none;
  background: transparent;
  border: 1px solid transparent;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.jyh-industry-card:hover {
  background: #FAF7F0;
  border-color: #EFE8DA;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

.jyh-industry-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #EFF6FF;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 2px;
  transition: background 0.2s ease, transform 0.2s ease;
}

.jyh-industry-card:hover .jyh-industry-icon {
  background: #DBEAFE;
  transform: scale(1.05);
}

.jyh-industry-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.jyh-industry-title {
  font-size: 1.02rem;
  font-weight: 700;
  color: #1E3A5F;
  margin: 0;
  line-height: 1.25;
  font-family: var(--font-heading);
  transition: color 0.15s ease;
}

.jyh-industry-card:hover .jyh-industry-title {
  color: #1E3A5F;
}

.jyh-industry-desc {
  font-size: 0.8125rem;
  color: #64748B;
  line-height: 1.35;
  margin: 0;
}



/* Modern Navy Color Navigation Buttons for all 4 header items */
.jyh-nav-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 auto !important;
  gap: 10px !important;
  list-style: none !important;
}

.jyh-nav-item {
  position: relative;
}

.jyh-nav-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 8px 18px !important;
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  background-color: #1E3A5F !important; /* Dark Navy Blue */
  border-radius: 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 2px 8px rgba(30, 58, 95, 0.25) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
  user-select: none !important;
  text-decoration: none !important;
}

.jyh-nav-link span {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

.jyh-nav-link svg,
.jyh-nav-link .jyh-nav-chevron {
  stroke: #FFFFFF !important;
  color: #FFFFFF !important;
  transition: transform 0.25s ease !important;
}

.jyh-nav-link:hover,
.jyh-nav-item:hover .jyh-nav-link,
.jyh-nav-item.active .jyh-nav-link {
  color: #FFFFFF !important;
  background-color: #152B47 !important; /* Rich Darker Navy Hover */
  border-color: rgba(255, 255, 255, 0.25) !important;
  box-shadow: 0 4px 14px rgba(30, 58, 95, 0.4) !important;
  transform: translateY(-1px) !important;
}

.jyh-nav-item:hover .jyh-nav-chevron {
  transform: rotate(180deg) !important;
}




/* ==========================================================================
   JYH PROTOTYPE - MODERN CONTACT & INSTANT QUOTE PAGE UI/UX SYSTEM
   ========================================================================== */
.jyh-contact-page-wrapper {
  background: linear-gradient(180deg, #F8FAFC 0%, #FFFFFF 100%);
  color: #1E293B;
  padding: 30px 0 80px 0;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Breadcrumb Navigation */
.jyh-contact-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.875rem;
  color: #64748B;
  margin-bottom: 24px;
}
.jyh-contact-breadcrumb a {
  color: #1E3A5F;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
}
.jyh-contact-breadcrumb a:hover {
  color: #0b4e80;
  text-decoration: underline;
}

/* Hero Section */
.jyh-contact-hero-card {
  text-align: center;
  max-width: 920px;
  margin: 0 auto 36px auto;
}
.jyh-trust-pill-top {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(30, 58, 95, 0.08);
  border: 1px solid rgba(30, 58, 95, 0.22);
  color: #1E3A5F;
  font-size: 0.8125rem;
  font-weight: 700;
  padding: 6px 18px;
  border-radius: 9999px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 16px;
}
.jyh-contact-title-main {
  font-size: 2.85rem;
  font-weight: 800;
  color: #0F172A;
  line-height: 1.18;
  letter-spacing: -0.025em;
  margin-bottom: 16px;
}
.jyh-contact-desc-lead {
  font-size: 1.125rem;
  color: #475569;
  line-height: 1.7;
  max-width: 780px;
  margin: 0 auto 32px auto;
}

/* Trust Badges Strip */
.jyh-trust-badges-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  max-width: 1040px;
  margin: 0 auto 40px auto;
}
.jyh-trust-badge-item {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: 14px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.03);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.jyh-trust-badge-item:hover {
  transform: translateY(-2px);
  border-color: #93C5FD;
  box-shadow: 0 10px 24px rgba(30,58,95,0.08);
}
.jyh-trust-badge-icon {
  font-size: 1.5rem;
  flex-shrink: 0;
}
.jyh-trust-badge-text strong {
  display: block;
  font-size: 0.875rem;
  color: #0F172A;
  font-weight: 700;
  line-height: 1.25;
}
.jyh-trust-badge-text span {
  font-size: 0.75rem;
  color: #64748B;
}

/* Reception Desk Showcase Card (Compacted & Elegantly Centered) */
.jyh-reception-showcase {
  max-width: 760px;
  margin: 0 auto 35px auto;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15,23,42,0.08);
  border: 1.5px solid #1076BE;
  background: #0F172A;
}
.jyh-reception-img-container {
  width: 100%;
  max-height: 330px;
  background: #FAF7F0;
  overflow: hidden;
  display: block;
}
.jyh-reception-img {
  width: 100%;
  height: 330px;
  max-height: 330px;
  object-fit: cover;
  object-position: center 25%;
  display: block;
  transition: transform 0.5s ease;
}
.jyh-reception-showcase:hover .jyh-reception-img {
  transform: scale(1.015);
}
.jyh-reception-bottom-bar {
  background: linear-gradient(135deg, #0F172A 0%, #1E293B 100%);
  padding: 14px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.jyh-reception-info-tag {
  color: #FFFFFF;
}
.jyh-reception-info-tag h4 {
  color: #FFFFFF !important;
  font-size: 1.05rem;
  font-weight: 700;
  margin: 0 0 4px 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.jyh-reception-info-tag p {
  color: #94A3B8 !important;
  font-size: 0.8125rem;
  margin: 0;
  line-height: 1.4;
}
.jyh-facility-stats-strip {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.jyh-f-stat {
  background: rgba(17, 112, 182, 0.4);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1.5px solid rgba(0, 210, 255, 0.55);
  border-radius: 12px;
  padding: 9px 18px;
  text-align: center;
  transition: all 0.25s ease;
  box-shadow: 0 4px 14px rgba(17, 112, 182, 0.25);
}
.jyh-f-stat:hover {
  background: #1E3A5F !important;
  border-color: #00D2FF;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(17, 112, 182, 0.45);
}
.jyh-f-stat strong {
  display: block;
  font-size: 1.15rem;
  font-weight: 800;
  color: #00D2FF;
  line-height: 1.2;
}
.jyh-f-stat span {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  color: #FFFFFF;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
@media (max-width: 900px) {
  .jyh-reception-bottom-bar {
    flex-direction: column;
    align-items: flex-start;
  }
  .jyh-facility-stats-strip {
    width: 100%;
    justify-content: space-between;
  }
}
@media (max-width: 576px) {
  .jyh-facility-stats-strip {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
  }
}

/* Two-Column Grid */
.jyh-contact-main-grid {
  display: grid;
  grid-template-columns: 1fr 1.38fr;
  gap: 36px;
  align-items: start;
}

/* Left: Helpdesk Card */
.jyh-helpdesk-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: 20px;
  padding: 36px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.03);
}
.jyh-helpdesk-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid #F1F5F9;
}
.jyh-helpdesk-header h3 {
  font-size: 1.45rem;
  font-weight: 800;
  color: #0F172A;
  margin: 0;
}
.jyh-live-pulse-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #DCFCE7;
  color: #15803D;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 5px 12px;
  border-radius: 9999px;
  border: 1px solid #BBF7D0;
}
.jyh-pulse-dot {
  width: 8px;
  height: 8px;
  background: #22C55E;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  animation: jyhPulse 1.8s infinite;
}
@keyframes jyhPulse {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(34, 197, 94, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

/* Contact List Items */
.jyh-helpdesk-item-card {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 18px;
  border-radius: 14px;
  background: #FAF7F0;
  border: 1px solid #F1F5F9;
  margin-bottom: 16px;
  transition: all 0.2s ease;
}
.jyh-helpdesk-item-card:hover {
  background: #EFF6FF;
  border-color: #BFDBFE;
  transform: translateX(4px);
}
.jyh-helpdesk-icon-box {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
  flex-shrink: 0;
  box-shadow: 0 2px 5px rgba(0,0,0,0.03);
}
.jyh-helpdesk-details {
  flex: 1;
}
.jyh-helpdesk-label {
  font-size: 0.75rem;
  font-weight: 700;
  color: #64748B;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}
.jyh-helpdesk-val {
  font-size: 1.05rem;
  font-weight: 700;
  color: #1E3A5F;
  text-decoration: none;
  display: inline-block;
  line-height: 1.3;
}
.jyh-helpdesk-val:hover {
  color: #0b4e80;
  text-decoration: underline;
}
.jyh-helpdesk-subval {
  font-size: 0.8125rem;
  color: #64748B;
  margin-top: 4px;
  line-height: 1.45;
}

/* Support Highlights */
.jyh-dfm-guarantee-box {
  margin-top: 22px;
  background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
  border: 1px solid #BFDBFE;
  border-radius: 14px;
  padding: 18px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.jyh-dfm-guarantee-box .icon {
  font-size: 1.85rem;
  flex-shrink: 0;
}
.jyh-dfm-guarantee-box p {
  margin: 0;
  font-size: 0.8125rem;
  color: #1E40AF;
  line-height: 1.5;
}

.jyh-nda-security-card {
  margin-top: 14px;
  background: #FAF7F0;
  border: 1px dashed #CBD5E1;
  border-radius: 14px;
  padding: 14px 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 0.8125rem;
  color: #475569;
  line-height: 1.45;
}

/* Right: Form Card */
.jyh-quote-form-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: 20px;
  padding: 38px;
  box-shadow: 0 12px 35px rgba(0,0,0,0.04);
  position: relative;
}
.jyh-form-header-box {
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid #F1F5F9;
}
.jyh-form-header-box h3 {
  font-size: 1.65rem;
  font-weight: 800;
  color: #0F172A;
  margin: 0 0 6px 0;
}
.jyh-form-header-box p {
  color: #64748B;
  font-size: 0.875rem;
  margin: 0;
}

/* Service Selector Pills */
.jyh-service-selector-label {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #334155;
  margin-bottom: 10px;
  display: block;
}
.jyh-service-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
}
.jyh-service-pill {
  border: 1px solid #0E5C96;
  background: #1E3A5F !important;
  color: #FFFFFF !important;
  padding: 9px 20px;
  border-radius: 9999px;
  font-size: 0.875rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  user-select: none;
  box-shadow: 0 3px 10px rgba(17, 112, 182, 0.28);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.jyh-service-pill:hover {
  background: #0E5C96 !important;
  border-color: #00D2FF;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(17, 112, 182, 0.45);
}
.jyh-service-pill:active {
  transform: scale(0.96);
}
.jyh-service-pill.active {
  background: #094775 !important;
  border: 2px solid #00D2FF !important;
  box-shadow: 0 0 0 3px rgba(0, 210, 255, 0.35), 0 4px 14px rgba(9, 71, 117, 0.5) !important;
  transform: translateY(-1px);
}
.jyh-service-pill .pill-check {
  font-size: 0.8rem;
  display: none;
}
.jyh-service-pill.active .pill-check {
  display: inline-block;
}

/* Ensure smooth scrolling and prevent scroll locks */
html, body {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-behavior: smooth;
  touch-action: auto !important;
}

/* Form Inputs */
.jyh-form-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 16px;
}
.jyh-form-field {
  display: flex;
  flex-direction: column;
}
.jyh-form-field label {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #334155;
  margin-bottom: 6px;
}
.jyh-form-input, .jyh-form-select, .jyh-form-textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #CBD5E1;
  border-radius: 10px;
  font-size: 0.9375rem;
  color: #0F172A;
  background: #FFFFFF;
  font-family: inherit;
  transition: all 0.2s ease;
  box-sizing: border-box;
}
.jyh-form-input:focus, .jyh-form-select:focus, .jyh-form-textarea:focus {
  outline: none;
  border-color: #1E3A5F;
  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.15);
}

/* Modern Dropzone */
.jyh-modern-dropzone {
  border: 2px dashed #93C5FD;
  background: #F8FAFF;
  border-radius: 14px;
  padding: 26px 20px;
  text-align: center;
  cursor: pointer;
  transition: all 0.25s ease;
  margin-bottom: 20px;
  position: relative;
}
.jyh-modern-dropzone:hover, .jyh-modern-dropzone.dragover {
  border-color: #1E3A5F;
  background: #EFF6FF;
  box-shadow: 0 6px 20px rgba(30,58,95,0.08);
}
.jyh-dropzone-icon {
  font-size: 2.25rem;
  margin-bottom: 8px;
  display: inline-block;
  transition: transform 0.2s;
}
.jyh-modern-dropzone:hover .jyh-dropzone-icon {
  transform: translateY(-2px);
}
.jyh-dropzone-title {
  font-size: 1rem;
  font-weight: 700;
  color: #1E3A5F;
  margin-bottom: 4px;
}
.jyh-dropzone-desc {
  font-size: 0.8125rem;
  color: #64748B;
}
.jyh-format-pills {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-top: 8px;
  flex-wrap: wrap;
}
.jyh-format-pill {
  background: #E2E8F0;
  color: #475569;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 4px;
}
.jyh-uploaded-files-list {
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  text-align: left;
}
.jyh-uploaded-file-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #FFFFFF;
  border: 1px solid #BFDBFE;
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 0.8125rem;
  color: #0F172A;
}
.jyh-remove-file-btn {
  color: #EF4444;
  cursor: pointer;
  font-weight: 700;
  border: none;
  background: none;
  padding: 2px 6px;
}

/* NDA Checkbox */
.jyh-checkbox-group {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 24px;
  font-size: 0.8125rem;
  color: #475569;
  user-select: none;
}
.jyh-checkbox-group input {
  width: 16px;
  height: 16px;
  accent-color: #1E3A5F;
  cursor: pointer;
}

/* Submit Button */
.jyh-submit-quote-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  padding: 15px 32px;
  background: #1E3A5F !important;
  color: #FFFFFF;
  border: none;
  border-radius: 12px;
  font-size: 1.05rem;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(30,58,95,0.35);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.jyh-submit-quote-btn:hover {
  background: #152B47;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(30,58,95,0.45);
}
.jyh-submit-quote-btn:active {
  transform: translateY(0);
}

/* Articles Knowledge Hub Strip on Contact Page */
.jyh-contact-articles-hub {
  margin-top: 70px;
  padding-top: 50px;
  border-top: 1px solid #E2E8F0;
}
.jyh-articles-hub-header {
  text-align: center;
  margin-bottom: 36px;
}
.jyh-articles-hub-header h3 {
  font-size: 1.85rem;
  font-weight: 800;
  color: #0F172A;
  margin: 0 0 8px 0;
}
.jyh-articles-hub-header p {
  color: #64748B;
  font-size: 0.95rem;
  margin: 0;
}
.jyh-contact-articles-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.jyh-contact-article-card {
  background: #FFFFFF;
  border: 1.5px solid #1076BE;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.03);
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column;
}
.jyh-contact-article-card:hover {
  transform: translateY(-3px);
  border-color: #93C5FD;
  box-shadow: 0 10px 25px rgba(30,58,95,0.08);
}
.jyh-c-badge {
  font-size: 0.75rem;
  font-weight: 700;
  color: #1E3A5F;
  background: rgba(30,58,95,0.08);
  padding: 4px 12px;
  border-radius: 9999px;
  display: inline-block;
  margin-bottom: 12px;
  width: fit-content;
}
.jyh-c-article-title {
  font-size: 1.05rem;
  font-weight: 700;
  color: #0F172A;
  line-height: 1.4;
  margin-bottom: 8px;
}
.jyh-c-article-excerpt {
  font-size: 0.8125rem;
  color: #64748B;
  line-height: 1.6;
  margin-bottom: 16px;
  flex: 1;
}
.jyh-c-article-link {
  font-size: 0.8125rem;
  font-weight: 700;
  color: #1E3A5F;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.jyh-c-article-link:hover {
  text-decoration: underline;
}

/* Bottom CTA Banner */
.jyh-contact-cta-banner {
  margin-top: 60px;
  background: linear-gradient(135deg, #0F172A 0%, #1E3A5F 100%);
  border-radius: 20px;
  padding: 48px 36px;
  text-align: center;
  color: #FFFFFF;
  box-shadow: 0 15px 35px rgba(15,23,42,0.18);
  position: relative;
  overflow: hidden;
}
.jyh-contact-cta-banner::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 350px;
  height: 350px;
  background: radial-gradient(circle, rgba(0,210,255,0.15) 0%, rgba(0,210,255,0) 70%);
  border-radius: 50%;
  pointer-events: none;
}
.jyh-contact-cta-banner h3 { color: #FFFFFF !important; 
  font-size: 2rem;
  font-weight: 800;
  color: #FFFFFF;
  margin: 0 0 12px 0;
}
.jyh-contact-cta-banner p {
  font-size: 1.05rem;
  color: #CBD5E1;
  max-width: 680px;
  margin: 0 auto 28px auto;
  line-height: 1.6;
}
.jyh-cta-actions-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.jyh-cta-btn-white {
  background: #FFFFFF;
  color: #0F172A !important;
  font-weight: 700;
  border-radius: 10px;
  padding: 13px 30px;
  text-decoration: none;
  font-size: 0.95rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  transition: all 0.2s;
}
.jyh-cta-btn-white:hover {
  background: #F4EFE6;
  transform: translateY(-2px);
}

/* Mobile Responsiveness */
@media (max-width: 1024px) {
  .jyh-contact-main-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .jyh-trust-badges-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .jyh-contact-articles-grid {
    grid-template-columns: 1fr;
  }
  .jyh-reception-img {
    height: 340px;
  }
}
@media (max-width: 640px) {
  .jyh-contact-title-main {
    font-size: 2rem;
  }
  .jyh-trust-badges-grid {
    grid-template-columns: 1fr;
  }
  .jyh-form-grid-2 {
    grid-template-columns: 1fr;
  }
  .jyh-helpdesk-card, .jyh-quote-form-card {
    padding: 24px 18px;
  }
  .jyh-reception-img {
    height: 260px;
  }
  .jyh-facility-stats-strip {
    display: none;
  }
}



/* Universal Bulletproof Native Scrolling Fix */
html {
  overflow-y: scroll !important;
  overflow-x: hidden !important;
  scroll-behavior: smooth !important;
  height: auto !important;
  min-height: 100% !important;
}
body {
  overflow-y: visible !important;
  overflow-x: hidden !important;
  position: relative !important;
  height: auto !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}



.jyh-video-stat-info strong,
.jyh-video-stat-info span,
.jyh-video-stat-info * {
  color: #FFFFFF !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15) !important;
}



/* Compact Vertical Gap between Video Stat Cards and Agile Production / Services Section */
.jyh-video-section,
#company-video {
  padding-bottom: 16px !important;
}

.jyh-video-stats-strip {
  margin-top: 18px !important;
  margin-bottom: 8px !important;
}

#services.jyh-section,
#services {
  padding-top: 20px !important;
}

#services .jyh-section-header {
  margin-bottom: 24px !important;
}



/* Hero Section Stat Cards Styled as Blue Rounded Buttons */
.jyh-hero-features {
  display: flex !important;
  gap: 16px !important;
  width: 100% !important;
  padding-top: 14px !important;
  border-top: none !important;
  margin-top: 18px !important;
  flex-wrap: wrap !important;
}

.jyh-hero-feat-item {
  background: #1076BE !important;
  border: 2px solid #1076BE !important;
  border-radius: 14px !important;
  padding: 12px 18px !important;
  box-shadow: 0 4px 18px rgba(16, 118, 190, 0.25) !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  flex: 1 1 200px !important;
}

.jyh-hero-feat-item:hover {
  background: #0D64A3 !important;
  border-color: #0D64A3 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(16, 118, 190, 0.35) !important;
}

.jyh-hero-feat-icon {
  width: 40px !important;
  height: 40px !important;
  background: #FFFFFF !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
}

.jyh-hero-feat-info {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

.jyh-hero-feat-val {
  font-family: var(--font-heading) !important;
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  color: #FFFFFF !important;
  white-space: nowrap !important;
}

.jyh-hero-feat-lbl {
  font-size: 0.8rem !important;
  color: #FFFFFF !important;
  opacity: 0.95 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}



/* Hide old fat hero features block */
.jyh-hero-features {
  display: none !important;
}

/* 2 Slim Logo Blue Buttons Overlay at Bottom of Hero Image */
.jyh-hero-under-img-buttons {
  position: absolute !important;
  bottom: 24px !important;
  left: 24px !important;
  right: 24px !important;
  display: flex !important;
  gap: 12px !important;
  z-index: 10 !important;
  flex-wrap: wrap !important;
}

.jyh-slim-btn {
  background: #1076BE !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  border-radius: 8px !important;
  padding: 6px 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #FFFFFF !important;
  font-size: 0.8125rem !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
  transition: all 0.2s ease !important;
}

.jyh-slim-btn:hover {
  background: #0D64A3 !important;
  transform: translateY(-1px) !important;
}

.jyh-slim-btn-icon {
  width: 22px !important;
  height: 22px !important;
  background: #FFFFFF !important;
  border-radius: 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.jyh-slim-btn strong {
  font-weight: 800 !important;
  color: #FFFFFF !important;
}

.jyh-slim-btn span {
  color: #FFFFFF !important;
  font-weight: 500 !important;
}



/* Hide old fat hero features block */
.jyh-hero-features,
.jyh-hero-under-img-buttons {
  display: none !important;
}

/* 4 Slim Logo-Blue Buttons Side-by-Side in White Hero Area */
.jyh-hero-4-buttons {
  display: flex !important;
  gap: 10px !important;
  margin-top: 22px !important;
  width: 100% !important;
  max-width: 100% !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.jyh-slim-blue-btn {
  background: #1076BE !important;
  border: 1px solid #1076BE !important;
  border-radius: 8px !important;
  padding: 7px 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #FFFFFF !important;
  font-size: 0.8125rem !important;
  box-shadow: 0 3px 10px rgba(16, 118, 190, 0.22) !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}

.jyh-slim-blue-btn:hover {
  background: #0D64A3 !important;
  border-color: #0D64A3 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 14px rgba(16, 118, 190, 0.32) !important;
}

.jyh-slim-blue-btn .jyh-slim-btn-icon {
  width: 22px !important;
  height: 22px !important;
  background: #FFFFFF !important;
  border-radius: 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.jyh-slim-blue-btn strong {
  font-weight: 800 !important;
  color: #FFFFFF !important;
}

.jyh-slim-blue-btn span {
  color: #FFFFFF !important;
  font-weight: 500 !important;
}



/* Hide old fat hero features block */
.jyh-hero-features,
.jyh-hero-under-img-buttons {
  display: none !important;
}

/* 4 Slim Logo-Blue Buttons in ONE Single Straight Horizontal Row across full hero width */
.jyh-hero-4-buttons {
  display: flex !important;
  gap: 10px !important;
  margin-top: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
  grid-column: 1 / -1 !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow-x: auto !important;
}

.jyh-slim-blue-btn {
  background: #1076BE !important;
  border: 1px solid #1076BE !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #FFFFFF !important;
  font-size: 0.8rem !important;
  box-shadow: 0 3px 10px rgba(16, 118, 190, 0.22) !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.jyh-slim-blue-btn:hover {
  background: #0D64A3 !important;
  border-color: #0D64A3 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 14px rgba(16, 118, 190, 0.32) !important;
}

.jyh-slim-blue-btn .jyh-slim-btn-icon {
  width: 22px !important;
  height: 22px !important;
  background: #FFFFFF !important;
  border-radius: 5px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.jyh-slim-blue-btn strong {
  font-weight: 800 !important;
  color: #FFFFFF !important;
}

.jyh-slim-blue-btn span {
  color: #FFFFFF !important;
  font-weight: 500 !important;
}



/* Expand Hero Image Width on X-axis towards Red Mark Line */
.jyh-hero-grid {
  display: grid !important;
  grid-template-columns: 1fr 1.35fr !important;
  gap: 20px !important;
  align-items: flex-start !important;
}

.jyh-hero-cad-card {
  width: 100% !important;
  max-width: 100% !important;
  height: 540px !important;
  min-height: 540px !important;
  border-radius: 16px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important;
  align-self: flex-start !important;
  margin-top: 0px !important;
}



/* Compact Vertical Gap between Services Cards and Workflow Section (Agile Production) */
#services.jyh-section,
#services {
  padding-bottom: 16px !important;
}

#workflow.jyh-workflow-section,
#workflow,
.jyh-workflow-section {
  padding-top: 20px !important;
}

#workflow .jyh-section-header,
.jyh-workflow-section .jyh-section-header {
  margin-bottom: 24px !important;
}



/* Global Compact Section Gaps across Entire Site */
.jyh-section {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.jyh-section-header {
  margin-bottom: 24px !important;
}

.jyh-video-section,
#company-video {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.jyh-video-stats-strip {
  margin-top: 16px !important;
  margin-bottom: 12px !important;
}

#services.jyh-section,
#services {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

#workflow.jyh-workflow-section,
#workflow,
.jyh-workflow-section {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.jyh-qa-banner {
  padding: 28px 32px !important;
}



/* All Section & Card Borders Logo Blue (#1076BE) */
.jyh-service-card,
.jyh-workflow-card,
.jyh-cert-card,
.jyh-feedback-card,
.jyh-video-card,
.jyh-qa-banner,
.jyh-dropdown-card {
  border: 1.5px solid #1076BE !important;
}

.jyh-service-card:hover,
.jyh-workflow-card:hover,
.jyh-cert-card:hover,
.jyh-feedback-card:hover,
.jyh-dropdown-card:hover {
  border-color: #0D64A3 !important;
  box-shadow: 0 8px 24px rgba(16, 118, 190, 0.25) !important;
}



  /* ============================================================
     RFQ STEPPER BAR — Crisp Pure White Letters & Active Highlights
     ============================================================ */
  .jyh-wizard-stepper {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    background: #0B132B !important;
    border-bottom: 2.5px solid #1076BE !important;
    overflow: hidden !important;
  }

  .jyh-step-tab {
    padding: 18px 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    border-bottom: 4px solid transparent !important;
    cursor: pointer !important;
    user-select: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
  }
  .jyh-step-tab:last-child {
    border-right: none !important;
  }

  /* Crisp Pure White Text for ALL Steps */
  .jyh-step-text {
    font-size: 0.9375rem !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
  }

  /* Step Number Badge */
  .jyh-step-num {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.12) !important;
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    color: #FFFFFF !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.875rem !important;
    font-weight: 800 !important;
    transition: all 0.2s ease !important;
    flex-shrink: 0 !important;
  }

  /* Hover State — Smooth Clickable Glow */
  .jyh-step-tab:hover {
    background: rgba(16, 118, 190, 0.35) !important;
  }
  .jyh-step-tab:hover .jyh-step-text {
    color: #FFFFFF !important;
    transform: translateY(-1px) !important;
  }
  .jyh-step-tab:hover .jyh-step-num {
    border-color: #00D2FF !important;
    background: rgba(0, 210, 255, 0.25) !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 8px rgba(0, 210, 255, 0.6) !important;
  }

  /* ACTIVE STEP TAB STATE (High Contrast Logo Blue + Cyan Accent) */
  .jyh-step-tab.active {
    background: #1076BE !important;
    border-bottom-color: #00D2FF !important;
    box-shadow: inset 0 -4px 12px rgba(0, 210, 255, 0.4) !important;
  }

  .jyh-step-tab.active .jyh-step-num {
    background: #00D2FF !important;
    border-color: #FFFFFF !important;
    color: #070D18 !important;
    box-shadow: 0 0 12px rgba(0, 210, 255, 0.9) !important;
  }

  .jyh-step-tab.active .jyh-step-text {
    color: #FFFFFF !important;
    font-weight: 800 !important;
    letter-spacing: 0.3px !important;
  }

  @media (max-width: 768px) {
    .jyh-wizard-stepper {
      grid-template-columns: repeat(2, 1fr) !important;
    }
    .jyh-step-tab {
      padding: 14px 10px !important;
    }
    .jyh-step-text {
      font-size: 0.8125rem !important;
    }
  }



  /* ============================================================
     INSTANT QUOTE PILL BUTTON — Exact Pill Styling & Glow
     ============================================================ */
  .jyh-btn-instant-quote,
  .btn-quote,
  #headerQuoteBtn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #1076BE !important;
    color: #FFFFFF !important;
    font-family: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    padding: 12px 32px !important;
    border-radius: 9999px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: 0 4px 16px rgba(16, 118, 190, 0.4) !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    white-space: nowrap !important;
  }

  .jyh-btn-instant-quote:hover,
  .btn-quote:hover,
  #headerQuoteBtn:hover {
    background: #0052FF !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) scale(1.02) !important;
    box-shadow: 0 8px 24px rgba(0, 82, 255, 0.55) !important;
  }

  .jyh-btn-instant-quote:active,
  #headerQuoteBtn:active {
    transform: translateY(0) scale(0.98) !important;
  }

/* ==========================================================================
   MASTER PURE WHITE HERO & HOMEPAGE OVERRIDE — OFFICIAL JYH THEME
   ========================================================================== */

.jyh-hero,
#hero,
.hero-section {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  color: #0F172A !important;
  border-bottom: 1px solid #E2E8F0 !important;
  position: relative !important;
  padding: 50px 0 60px 0 !important;
}

.jyh-hero::before,
.jyh-hero::after,
#hero::before,
#hero::after {
  display: none !important;
  content: none !important;
}

.jyh-hero-title,
#hero h1,
.jyh-hero-title-text {
  color: #0F172A !important;
  font-weight: 800 !important;
}

.jyh-hero-title span.highlight,
.jyh-hero-title .highlight,
#hero .highlight {
  color: #1076BE !important;
  background: none !important;
  -webkit-text-fill-color: #1076BE !important;
}

.jyh-hero-desc,
#hero p {
  color: #475569 !important;
  font-size: 1.05rem !important;
  line-height: 1.65 !important;
}

.jyh-hero-badge {
  background: #EFF6FF !important;
  border: 1px solid #BFDBFE !important;
  color: #1076BE !important;
  font-weight: 700 !important;
}

.jyh-hero-stat-card,
.jyh-stat-card {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 12px !important;
  padding: 16px !important;
}

.jyh-hero-stat-num,
.jyh-stat-number,
.stat-value {
  color: #1076BE !important;
  font-weight: 800 !important;
}

.jyh-hero-stat-label,
.jyh-stat-label,
.stat-label {
  color: #475569 !important;
  font-weight: 600 !important;
}

/* Hero Action Buttons on White Background */
.jyh-hero-actions .jyh-btn-glow,
.jyh-hero-actions .btn-primary {
  background: #1076BE !important;
  color: #FFFFFF !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(16, 118, 190, 0.35) !important;
}

.jyh-hero-actions .jyh-btn-glow:hover,
.jyh-hero-actions .btn-primary:hover {
  background: #0D64A3 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
}

.jyh-hero-actions .jyh-btn-dark,
.jyh-hero-actions .btn-secondary {
  background: #FFFFFF !important;
  color: #0F172A !important;
  border: 1.5px solid #CBD5E1 !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05) !important;
}

.jyh-hero-actions .jyh-btn-dark:hover,
.jyh-hero-actions .btn-secondary:hover {
  background: #F8FAFC !important;
  border-color: #1076BE !important;
  color: #1076BE !important;
  transform: translateY(-2px) !important;
}

/* Pure White Background for Entire Site */
body, html {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  color: #334155 !important;
}

.jyh-section,
.jyh-workflow-section,
.jyh-materials-section,
.jyh-video-section,
.jyh-cert-section,
.jyh-testimonials-section,
.jyh-faq-section {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
}

.jyh-section:nth-of-type(even) {
  background: #F8FAFC !important;
}

.jyh-section-title,
.jyh-section-header h2,
.jyh-workflow-title,
.jyh-materials-title {
  color: #0F172A !important;
}

.jyh-section-subtitle,
.jyh-section-header p {
  color: #475569 !important;
}

/* ==========================================================================
   DROPDOWN & MEGA MENU ENHANCED STYLES
   ========================================================================== */
.jyh-nav-item {
  position: relative;
}

.jyh-dropdown,
.mega-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(12px);
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0;
  border-radius: 16px;
  box-shadow: 0 20px 45px -10px rgba(15, 23, 42, 0.18), 0 0 0 1px rgba(0, 0, 0, 0.04);
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.22s cubic-bezier(0.16, 1, 0.3, 1), transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.22s;
  z-index: 99999 !important;
}

.jyh-dropdown.jyh-dropdown-right {
  left: auto;
  right: 0;
  transform: translateY(12px);
}

.jyh-dropdown-mega {
  width: 960px;
  max-width: 95vw;
}

.jyh-nav-item:hover > .jyh-dropdown,
.jyh-nav-item:focus-within > .jyh-dropdown,
.jyh-dropdown.show-dropdown {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(4px) !important;
}

.jyh-nav-item:hover > .jyh-dropdown.jyh-dropdown-right,
.jyh-nav-item:focus-within > .jyh-dropdown.jyh-dropdown-right {
  transform: translateY(4px) !important;
}

.jyh-nav-item:hover .jyh-nav-chevron {
  transform: rotate(180deg);
}

.jyh-mega-grid-4col {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.jyh-dropdown-grid-2col {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.jyh-dropdown-grid-3col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.jyh-mega-column {
  display: flex;
  flex-direction: column;
}

.jyh-mega-col-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 12px;
  margin-bottom: 10px;
  border-bottom: 1px solid #F1F5F9;
}

.jyh-mega-col-icon {
  font-size: 1.35rem;
  line-height: 1;
}

.jyh-mega-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.jyh-mega-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  border-radius: 8px;
  color: #334155 !important;
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.18s ease;
}

.jyh-mega-item:hover {
  background: #F8FAFC;
  color: #1076BE !important;
  transform: translateX(3px);
}

.jyh-dropdown-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  background: #FFFFFF;
  border: 1px solid #F1F5F9;
  text-decoration: none;
  transition: all 0.2s ease;
}

.jyh-dropdown-card:hover {
  background: #F8FAFC;
  border-color: #CBD5E1;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
}

.jyh-dropdown-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #EFF6FF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
  flex-shrink: 0;
}

.jyh-badge-pill {
  font-size: 0.7rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 4px;
  background: #1076BE;
  color: #FFFFFF;
}

/* Permanently Disable Exit-Intent Popup */
.exit-intent-modal-overlay,
#exitIntentModal,
.exit-modal-card {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Topbar Badges Pure White Letters */
.jyh-badge-iso,
.jyh-badge-iso span,
.promo-tag,
.factory-status-badge,
.factory-status-badge span,
.factory-status-badge strong {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

@media (max-width: 991px) {
  .jyh-dropdown, .mega-menu {
    position: static;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-shadow: none;
    border: none;
    padding: 10px 0;
    display: none;
  }
  .jyh-nav-item.mobile-open .jyh-dropdown {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .jyh-mega-grid-4col,
  .jyh-dropdown-grid-2col,
  .jyh-dropdown-grid-3col {
    grid-template-columns: 1fr !important;
  }
}

/* Navigation Header Main Buttons - Sleek Logo Blue Border */
.jyh-nav-menu {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-wrap: nowrap !important;
}

.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link,
.jyh-nav-link {
  background: #0F2C59 !important;
  color: #FFFFFF !important;
  border: 1.5px solid #1076BE !important;
  border-radius: 10px !important;
  padding: 8px 14px !important;
  font-size: 0.86rem !important;
  font-weight: 700 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  text-decoration: none !important;
  box-shadow: 0 2px 8px rgba(15, 44, 89, 0.25) !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}

.jyh-nav-menu > .jyh-nav-item.active > .jyh-nav-link,
.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link:hover,
.jyh-nav-menu > .jyh-nav-item:hover > .jyh-nav-link,
.jyh-nav-link:hover {
  background: #153E7E !important;
  border-color: #38BDF8 !important;
  box-shadow: 0 4px 12px rgba(16, 118, 190, 0.35) !important;
  transform: translateY(-1px) !important;
}

.jyh-nav-menu > .jyh-nav-item.active > .jyh-nav-link {
  background: #1076BE !important;
  border-color: #38BDF8 !important;
}

.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link span,
.jyh-nav-link span {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link svg,
.jyh-nav-link svg,
.jyh-nav-link .jyh-nav-chevron {
  stroke: #FFFFFF !important;
}

/* Hero Grid & Actions with Badges in Red Marked Row */
.jyh-hero { padding: 30px 0 40px 0 !important; background: #FFFFFF !important; }
.jyh-hero-grid { display: grid !important; grid-template-columns: 1fr 1.15fr !important; gap: 24px !important; align-items: center !important; }
.jyh-hero-content { max-width: 100% !important; }
.jyh-hero-title { font-size: clamp(1.95rem, 2.35vw, 2.5rem) !important; line-height: 1.2 !important; letter-spacing: -0.02em !important; margin-bottom: 16px !important; }
.jyh-hero-desc { font-size: 1rem !important; line-height: 1.6 !important; margin-bottom: 24px !important; }
.jyh-hero-actions { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 10px !important; margin-top: 20px !important; }
.jyh-hero-actions .jyh-btn { height: 42px !important; box-sizing: border-box !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; }
.jyh-slim-blue-btn { background: #1076BE !important; border: 1px solid #1076BE !important; border-radius: 8px !important; padding: 6px 12px !important; display: inline-flex !important; align-items: center !important; gap: 6px !important; color: #FFFFFF !important; font-size: 0.8rem !important; line-height: 1.2 !important; box-shadow: 0 3px 10px rgba(16, 118, 190, 0.22) !important; white-space: nowrap !important; flex-shrink: 0 !important; height: 42px !important; box-sizing: border-box !important; transition: all 0.2s ease !important; }
.jyh-slim-blue-btn:hover { background: #0D64A3 !important; border-color: #0D64A3 !important; transform: translateY(-1px) !important; box-shadow: 0 6px 14px rgba(16, 118, 190, 0.32) !important; }
.jyh-slim-blue-btn .jyh-slim-btn-icon { width: 22px !important; height: 22px !important; background: #FFFFFF !important; border-radius: 5px !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.jyh-slim-blue-btn strong { font-weight: 800 !important; color: #FFFFFF !important; }
.jyh-slim-blue-btn span { color: #FFFFFF !important; font-weight: 500 !important; }
.jyh-hero-cad-card { width: 100% !important; max-width: 100% !important; height: 520px !important; min-height: 520px !important; border-radius: 16px !important; overflow: hidden !important; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important; position: relative !important; align-self: center !important; margin-top: 0 !important; margin-right: 0 !important; }
.jyh-hero-cad-card img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important; display: block !important; border-radius: 16px !important; }

/* Hero Layout: Left content + Right wide factory photo + Full-width bottom row of 5 buttons */
.jyh-hero { padding: 30px 0 35px 0 !important; background: #FFFFFF !important; }
.jyh-hero-grid { display: grid !important; grid-template-columns: 1fr 1.15fr !important; gap: 28px 24px !important; align-items: center !important; }
.jyh-hero-content { max-width: 100% !important; }
.jyh-hero-title { font-size: clamp(2rem, 2.4vw, 2.55rem) !important; line-height: 1.2 !important; letter-spacing: -0.02em !important; margin-bottom: 16px !important; }
.jyh-hero-desc { font-size: 1rem !important; line-height: 1.6 !important; margin-bottom: 22px !important; }
.jyh-hero-actions { display: flex !important; align-items: center !important; gap: 12px !important; margin-top: 8px !important; }
.jyh-hero-actions .jyh-btn { height: 46px !important; padding: 10px 24px !important; font-size: 0.92rem !important; font-weight: 700 !important; border-radius: 8px !important; box-sizing: border-box !important; display: inline-flex !important; align-items: center !important; gap: 8px !important; }
.jyh-hero-cad-card { width: 100% !important; max-width: 100% !important; height: 480px !important; min-height: 480px !important; border-radius: 16px !important; overflow: hidden !important; box-shadow: 0 12px 36px rgba(0,0,0,0.12) !important; position: relative !important; align-self: center !important; margin-top: 0 !important; margin-right: 0 !important; }
.jyh-hero-cad-card img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important; display: block !important; border-radius: 16px !important; }
.jyh-hero-5-buttons-row { grid-column: 1 / -1 !important; width: 100% !important; display: flex !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: flex-start !important; gap: 10px !important; margin-top: 10px !important; padding-top: 14px !important; border-top: 1px solid #E2E8F0 !important; overflow-x: auto !important; scrollbar-width: none !important; }
.jyh-hero-5-buttons-row::-webkit-scrollbar { display: none !important; }
.jyh-btn-row-explore { height: 42px !important; box-sizing: border-box !important; padding: 8px 16px !important; font-size: 0.82rem !important; font-weight: 700 !important; background: #FFFFFF !important; color: #1076BE !important; border: 1.5px solid #1076BE !important; border-radius: 8px !important; white-space: nowrap !important; flex-shrink: 0 !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; text-decoration: none !important; box-shadow: 0 2px 6px rgba(16, 118, 190, 0.12) !important; transition: all 0.2s ease !important; }
.jyh-btn-row-explore:hover { background: #1076BE !important; color: #FFFFFF !important; transform: translateY(-1px) !important; box-shadow: 0 4px 12px rgba(16, 118, 190, 0.25) !important; }
.jyh-slim-blue-btn { background: #1076BE !important; border: 1px solid #1076BE !important; border-radius: 8px !important; padding: 8px 14px !important; display: inline-flex !important; align-items: center !important; gap: 7px !important; color: #FFFFFF !important; font-size: 0.82rem !important; line-height: 1.2 !important; box-shadow: 0 3px 10px rgba(16, 118, 190, 0.2) !important; white-space: nowrap !important; flex-shrink: 0 !important; height: 42px !important; box-sizing: border-box !important; transition: all 0.2s ease !important; cursor: default !important; }
.jyh-slim-blue-btn:hover { background: #0D64A3 !important; border-color: #0D64A3 !important; transform: translateY(-1px) !important; box-shadow: 0 5px 14px rgba(16, 118, 190, 0.3) !important; }
.jyh-slim-blue-btn .jyh-slim-btn-icon { width: 22px !important; height: 22px !important; background: #FFFFFF !important; border-radius: 5px !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
.jyh-slim-blue-btn strong { font-weight: 800 !important; color: #FFFFFF !important; }
.jyh-slim-blue-btn span { color: #FFFFFF !important; font-weight: 600 !important; }

/* Navigation Header: Fix Pill Collision with Instant Quote Button */
.jyh-header-inner { display: flex !important; align-items: center !important; justify-content: space-between !important; max-width: 1440px !important; width: 100% !important; padding: 10px 18px !important; box-sizing: border-box !important; gap: 16px !important; }
.jyh-logo-wrap { flex-shrink: 0 !important; margin-right: 12px !important; }
.jyh-logo-img { height: 40px !important; max-width: 180px !important; width: auto !important; }
.jyh-nav-menu { display: flex !important; align-items: center !important; justify-content: center !important; gap: 5px !important; list-style: none !important; margin: 0 !important; padding: 0 !important; flex: 1 1 auto !important; flex-wrap: nowrap !important; }
.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link, .jyh-nav-link { padding: 7px 11px !important; font-size: 0.82rem !important; border-radius: 8px !important; white-space: nowrap !important; gap: 4px !important; }
.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link svg, .jyh-nav-chevron { width: 12px !important; height: 12px !important; margin-left: 2px !important; }
.jyh-header-cta { flex-shrink: 0 !important; margin-left: 22px !important; display: flex !important; align-items: center !important; }
.jyh-btn-instant-quote { padding: 8px 18px !important; font-size: 0.85rem !important; font-weight: 700 !important; border-radius: 9999px !important; white-space: nowrap !important; box-shadow: 0 3px 12px rgba(16, 118, 190, 0.3) !important; }

/* Every Nav Button Equal (Same Width, Height, Border-Radius & Centered Text) */
.jyh-header-inner { display: flex !important; align-items: center !important; justify-content: space-between !important; max-width: 1440px !important; width: 100% !important; padding: 10px 20px !important; box-sizing: border-box !important; gap: 12px !important; }
.jyh-logo-wrap { flex-shrink: 0 !important; margin-right: 10px !important; display: flex !important; align-items: center !important; }
.jyh-logo-img { height: 38px !important; max-width: 175px !important; width: auto !important; object-fit: contain !important; }
.jyh-nav-menu { display: flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important; list-style: none !important; margin: 0 auto !important; padding: 0 !important; flex: 0 1 auto !important; flex-wrap: nowrap !important; }
.jyh-nav-item { position: relative !important; flex-shrink: 0 !important; margin: 0 !important; padding: 0 !important; }
.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link, .jyh-nav-link { width: 106px !important; min-width: 106px !important; max-width: 106px !important; height: 38px !important; line-height: 38px !important; padding: 0 !important; box-sizing: border-box !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; text-align: center !important; border-radius: 8px !important; font-size: 0.82rem !important; font-weight: 700 !important; white-space: nowrap !important; background: #0F2C59 !important; color: #FFFFFF !important; border: 1.5px solid #1076BE !important; box-shadow: 0 2px 8px rgba(15, 44, 89, 0.2) !important; transition: all 0.2s ease !important; text-decoration: none !important; }
.jyh-nav-menu > .jyh-nav-item.active > .jyh-nav-link, #navHomeItem.active #navHomeLink { background: #1076BE !important; border-color: #38BDF8 !important; }
.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link:hover, .jyh-nav-link:hover { background: #153E7E !important; border-color: #38BDF8 !important; transform: translateY(-1px) !important; box-shadow: 0 4px 12px rgba(16, 118, 190, 0.35) !important; }
.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link span, .jyh-nav-link span { color: #FFFFFF !important; font-weight: 700 !important; font-size: 0.82rem !important; }
.jyh-nav-menu > .jyh-nav-item > .jyh-nav-link svg, .jyh-nav-chevron { width: 12px !important; height: 12px !important; margin-left: 3px !important; stroke: #FFFFFF !important; flex-shrink: 0 !important; }
.jyh-header-cta { flex-shrink: 0 !important; margin-left: 14px !important; display: flex !important; align-items: center !important; }
.jyh-btn-instant-quote { height: 38px !important; line-height: 38px !important; padding: 0 20px !important; box-sizing: border-box !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; background: #1076BE !important; color: #FFFFFF !important; font-size: 0.84rem !important; font-weight: 700 !important; border-radius: 8px !important; white-space: nowrap !important; text-decoration: none !important; box-shadow: 0 3px 12px rgba(16, 118, 190, 0.3) !important; transition: all 0.2s ease !important; }
.jyh-btn-instant-quote:hover { background: #0D64A3 !important; transform: translateY(-1px) !important; box-shadow: 0 5px 16px rgba(16, 118, 190, 0.45) !important; }

/* ENFORCED NAVY TOPBAR */
.jyh-topbar,
.top-promo-bar {
  background: #0F2C59 !important;
  color: #FFFFFF !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding: 8px 0 !important;
  position: relative !important;
  z-index: 1001 !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* ENFORCED LARGER LOGO & TOPBAR */
.jyh-topbar,
.top-promo-bar {
  background: #0F2C59 !important;
  color: #FFFFFF !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  padding: 8px 0 !important;
  position: relative !important;
  z-index: 1001 !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.jyh-logo-wrap {
  flex-shrink: 0 !important;
  margin-right: 18px !important;
  display: flex !important;
  align-items: center !important;
}

.jyh-logo-img,
.site-logo img {
  height: 52px !important;
  max-width: 250px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
}

/* JYH PREMIUM WHITE FOOTER STYLES */
.jyh-btn-logo-solid:hover {
  background: #0D64A3 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(16, 118, 190, 0.45) !important;
}
.jyh-btn-logo-outline:hover {
  background: #1076BE !important;
  color: #FFFFFF !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(16, 118, 190, 0.3) !important;
}
.jyh-btn-logo-outline:hover svg {
  stroke: #FFFFFF !important;
}
.jyh-footer-btn-card:hover {
  border-color: #0D64A3 !important;
  background: #DBEAFE !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(16, 118, 190, 0.15) !important;
}
.jyh-footer-link:hover {
  color: #1076BE !important;
  transform: translateX(3px);
}
@media (max-width: 1024px) {
  .jyh-footer-main-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
  }
}
@media (max-width: 640px) {
  .jyh-footer-main-grid {
    grid-template-columns: 1fr !important;
  }
}
