/* V4: bright B2B presentation, expanded navigation and video/news areas. */
:root { --ink: #151515; --muted: #686868; --line: #e6e6e6; --paper: #ffffff; --soft: #f6f6f4; --orange: #f45b20; }
html { background: var(--paper); scroll-behavior: smooth; }
body { background: var(--paper); color: var(--ink); }
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--line); box-shadow: 0 4px 18px rgba(0,0,0,.04); color: var(--ink); }
.brand { color: var(--ink); }
.brand span { background: var(--orange); color: #fff; }
.nav-links a { color: #333; font-size: .78rem; }
.nav-links a:hover { color: var(--orange); }
.nav-links .nav-contact { color: #fff; background: var(--ink); }
.language-picker { display: flex; align-items: center; margin-left: .3rem; }
.language-picker select { appearance: none; background: #fff; border: 1px solid var(--line); border-radius: 4px; color: var(--ink); cursor: pointer; font: 700 .72rem/1 inherit; letter-spacing: .04em; padding: .55rem 1.8rem .55rem .6rem; }
.visually-hidden { position: absolute; overflow: hidden; clip: rect(0,0,0,0); width: 1px; height: 1px; white-space: nowrap; }
.hero { background: var(--paper); color: var(--ink); min-height: 630px; }
.hero::before { background: radial-gradient(circle at 75% 55%, rgba(244,91,32,.12), transparent 32%); }
.hero-copy .eyebrow, .section .eyebrow, .factory-section .eyebrow, .social-section .eyebrow, .contact-section .eyebrow { color: var(--orange); }
.hero h1 { color: var(--ink); }
.hero h1 em { color: var(--orange); }
.hero-text, .section-heading p, .factory-copy p, .social-section p, .contact-section p { color: var(--muted); }
.button-primary { background: var(--orange); border-color: var(--orange); color: #fff; }
.button-primary:hover { background: #d94913; border-color: #d94913; }
.button-ghost { border-color: #bdbdbd; color: var(--ink); }
.button-ghost:hover { background: var(--ink); color: #fff; }
.hero-points li { color: #444; }
.hero-media { background: var(--soft); }
.hero-badge { background: var(--ink); }
.trust-strip { background: var(--ink); color: #fff; }
.category-section, .collection-section, .buyer-section, .video-section, .case-section, .process-section, .quality-section, .faq-section, .news-section { background: var(--paper); color: var(--ink); }
.category-section .section-heading h2, .collection-section h2, .buyer-section h2, .video-section h2, .case-section h2, .process-section h2, .quality-section h2, .faq-section h2, .news-section h2 { color: var(--ink); }
.category-grid article, .product-card, .buyer-grid article, .process-grid article, .news-grid article { border: 1px solid var(--line); background: #fff; box-shadow: 0 8px 30px rgba(25,25,25,.045); }
.category-grid article div, .product-card div { background: #fff; }
.category-grid h3, .category-grid p, .product-card h3, .product-card p, .buyer-grid h3, .buyer-grid p, .process-grid h3, .process-grid p { color: var(--ink); }
.category-grid p, .product-card p, .buyer-grid p, .process-grid p, .news-grid p { color: var(--muted); }
.spec-band { background: var(--soft); color: var(--ink); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.spec-band span { color: var(--muted); }
.oem-section { background: var(--ink); }
.oem-panel { background: var(--orange); }
.video-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1.2rem; max-width: 1080px; margin: 2.5rem auto 0; }
.video-poster { display: block; min-height: 330px; border: 1px solid var(--line); text-decoration: none; background: var(--ink); box-shadow: 0 12px 30px rgba(0,0,0,.1); }
.video-poster img { width: 100%; height: 330px; object-fit: cover; opacity: .75; transition: transform .25s ease, opacity .25s ease; }
.video-poster:hover img { opacity: .93; transform: scale(1.025); }
.video-poster div { background: linear-gradient(transparent, rgba(0,0,0,.82)); }
.video-poster strong { display: block; margin-top: .4rem; color: #fff; font-size: 1.1rem; }
.product-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.4rem; }
.video-card { background: #111; border: 1px solid #282828; box-shadow: 0 10px 28px rgba(0,0,0,.12); overflow: hidden; }
.video-card video { display: block; width: 100%; aspect-ratio: 16 / 9; background: #000; }
.video-card p { color: #fff; font-size: .84rem; font-weight: 800; letter-spacing: .04em; margin: 0; padding: .9rem 1rem; }
.video-social-link { margin: 1.6rem auto 0; text-align: center; }
.video-social-link a { color: var(--orange); font-weight: 800; text-decoration: none; }
.factory-section { background: var(--soft); color: var(--ink); }
.factory-copy h2 { color: var(--ink); }
.factory-stats strong { color: var(--orange); }
.news-section { border-top: 1px solid var(--line); }
.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem; max-width: 1180px; margin: 2.5rem auto 0; }
.news-grid article { padding: 1.7rem; min-height: 210px; }
.news-grid span { color: var(--orange); font-weight: 800; letter-spacing: .08em; }
.news-grid h3 { margin: .85rem 0 .55rem; font-size: 1.25rem; }
.news-grid a { color: var(--orange); display: inline-block; font-weight: 800; margin-top: 1rem; text-decoration: none; }
.full-catalogue-section { background: var(--soft); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
#catalogue-tables { margin: 2.2rem auto 0; max-width: 1180px; }
.catalogue-group { background: #fff; border: 1px solid var(--line); margin-bottom: .85rem; }
.catalogue-group summary { align-items: center; cursor: pointer; display: flex; font-size: 1rem; font-weight: 800; justify-content: space-between; list-style: none; padding: 1.1rem 1.25rem; }
.catalogue-group summary::-webkit-details-marker { display: none; }
.catalogue-group summary::after { color: var(--orange); content: '+'; font-size: 1.45rem; line-height: 1; margin-left: 1rem; }
.catalogue-group[open] summary::after { content: '−'; }
.catalogue-group summary small { color: var(--muted); font-size: .75rem; font-weight: 700; margin-left: auto; text-transform: uppercase; }
.catalogue-scroll { overflow-x: auto; }
.catalogue-group table { border-collapse: collapse; font-size: .82rem; min-width: 840px; width: 100%; }
.catalogue-group th { background: #171717; color: #fff; font-size: .72rem; letter-spacing: .05em; padding: .85rem .8rem; text-align: left; text-transform: uppercase; }
.catalogue-group td { border-bottom: 1px solid #ededed; color: #383838; padding: .78rem .8rem; vertical-align: top; }
.catalogue-group td:first-child { color: var(--ink); font-weight: 800; }
.catalogue-group td.catalogue-image { padding: .45rem; width: 96px; }
.catalogue-image img { background: #f3f3f3; display: block; height: 72px; object-fit: contain; width: 86px; }
.catalogue-group tr:last-child td { border-bottom: 0; }
.catalogue-group td a { color: var(--orange); font-weight: 800; text-decoration: none; white-space: nowrap; }
.social-section { background: var(--paper); color: var(--ink); border-top: 1px solid var(--line); }
.social-section h2 { color: var(--ink); }
.social-links .social-link { background: #fff; color: var(--ink); border: 1px solid var(--line); }
.social-link small { color: var(--muted); }
.contact-section { background: var(--soft); color: var(--ink); }
.contact-section h2, .contact-direct a { color: var(--ink); }
#inquiry-form { background: #fff; border: 1px solid var(--line); }
footer { background: #fff; color: var(--ink); border-top: 1px solid var(--line); }
footer p { color: var(--muted); }
html[dir="rtl"] body { text-align: right; }
html[dir="rtl"] .hero-copy, html[dir="rtl"] .section-heading, html[dir="rtl"] .factory-copy, html[dir="rtl"] .oem-content, html[dir="rtl"] .contact-section > div { text-align: right; }
html[dir="rtl"] .hero-points { padding-right: 0; }
@media (max-width: 1080px) { .nav-links { gap: .7rem; } .nav-links a { font-size: .7rem; } }
@media (max-width: 820px) { .site-header { flex-wrap: wrap; } .language-picker { margin-left: auto; margin-right: 3.4rem; } .nav-links { background: #fff; } .video-grid, .product-video-grid, .news-grid { grid-template-columns: 1fr; } .video-poster, .video-poster img { min-height: 260px; height: 260px; } }
