﻿:root { --ink:#12232c; --night:#0f1c23; --paper:#f4f1eb; --blue:#1588c8; --mint:#9aca42; --muted:#64717a; --line:#cbd2d0; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"Helvetica Neue",Arial,"Microsoft YaHei",sans-serif; }
img { display:block; max-width:100%; }
a { color:inherit; }
.wrap { width:min(100% - 80px, 1320px); margin:0 auto; }
.site-header { position:absolute; inset:0 0 auto; z-index:20; display:grid; grid-template-columns:260px 1fr auto; align-items:center; min-height:92px; width:min(100% - 80px, 1320px); margin:auto; color:#fff; border-bottom:1px solid rgba(255,255,255,.25); }
.brand { width:158px; height:62px; overflow:hidden; display:flex; align-items:center; }
.brand img { width:150px; height:auto; filter:drop-shadow(0 1px 3px rgba(0,0,0,.45)); }
.main-nav { display:flex; justify-content:center; gap:30px; font-size:12px; letter-spacing:.08em; }
.main-nav a { text-decoration:none; opacity:.92; transition:opacity .2s,color .2s; }
.main-nav a:hover { color:var(--mint); opacity:1; }
.language { display:flex; align-items:center; gap:9px; font-size:11px; letter-spacing:.12em; }
.language i { width:18px; height:1px; background:rgba(255,255,255,.58); }.language a { color:rgba(255,255,255,.58); text-decoration:none; }
.menu-toggle { display:none; }
.hero { position:relative; min-height:780px; overflow:hidden; color:#fff; background:var(--night); }
.hero-image,.capability-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.hero-image { object-position:center 49%; filter:saturate(.72) contrast(1.07) brightness(.78); }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,18,24,.87) 0%,rgba(8,18,24,.64) 37%,rgba(8,18,24,.08) 73%,rgba(8,18,24,.2) 100%); }
.hero-copy { position:relative; z-index:2; padding-top:280px; }.kicker { margin:0 0 18px; font-size:11px; font-weight:700; letter-spacing:.22em; }.kicker.light,.kicker.mint { color:var(--mint); }.kicker.blue { color:var(--blue); }
h1,h2,h3,p { margin-top:0; } h1,h2 { font-weight:400; letter-spacing:-.045em; }
h1 { max-width:700px; margin-bottom:28px; font-size:clamp(54px,6.2vw,92px); line-height:.97; }.hero-subtitle { width:min(480px,100%); color:rgba(255,255,255,.79); font-size:17px; line-height:1.8; }
.text-link { display:inline-flex; gap:22px; align-items:center; margin-top:22px; padding-bottom:11px; border-bottom:1px solid currentColor; text-decoration:none; font-size:12px; letter-spacing:.11em; }.light-link { color:#fff; }.dark-link { color:var(--ink); }.text-link span { font-size:18px; line-height:0; }
.hero-note { position:absolute; z-index:2; right:max(40px,calc((100vw - 1320px)/2)); bottom:38px; margin:0; color:rgba(255,255,255,.65); font-size:10px; letter-spacing:.16em; }
.manifesto { position:relative; overflow:hidden; background:var(--paper); }.manifesto-grid { display:grid; grid-template-columns:43% 57%; min-height:650px; }.manifesto-copy { padding:118px 5vw 90px 0; }.manifesto h2,.quality h2,.contact h2 { margin-bottom:34px; font-size:clamp(42px,4.5vw,68px); line-height:1.05; }.manifesto-copy>p:not(.kicker) { max-width:390px; color:#59646a; font-size:16px; line-height:1.9; }.manifesto-image { min-height:520px; overflow:hidden; }.manifesto-image img { width:100%; height:100%; object-fit:cover; object-position:68% center; filter:grayscale(100%) contrast(1.05); }
.product-archive { padding:104px 0 112px; background:var(--night); color:#f4f3ef; }.section-head { display:flex; align-items:end; justify-content:space-between; margin-bottom:45px; }.section-head h2 { margin:0; font-size:clamp(40px,4vw,60px); font-weight:400; letter-spacing:-.04em; }.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }.product-card { min-width:0; overflow:hidden; background:#17272f; }.product-image { height:398px; overflow:hidden; background:#d6dde0; }.product-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }.product-card:not(.product-card--process) .product-image img { object-fit:contain; padding:18px; background:#dce4e7; }.product-card:hover img { transform:scale(1.035); }.product-card--process .product-image img { filter:grayscale(100%) contrast(1.08); }.product-meta { display:flex; align-items:baseline; gap:14px; min-height:80px; padding:19px 16px; border-top:1px solid rgba(255,255,255,.16); }.product-meta span { color:var(--mint); font-size:10px; letter-spacing:.12em; }.product-meta h3 { margin:0; font-size:14px; font-weight:500; letter-spacing:.02em; }
.capability { position:relative; min-height:610px; overflow:hidden; color:#fff; background:var(--night); }.capability-image { object-position:center; filter:grayscale(100%) contrast(1.1) brightness(.6); }.capability-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,25,33,.93) 5%,rgba(10,25,33,.74) 44%,rgba(10,25,33,.12) 100%); }.capability-content { position:relative; z-index:1; padding:108px 0 48px; }.capability h2 { width:min(680px,100%); margin:0 0 22px; font-size:clamp(44px,5.2vw,74px); font-weight:400; line-height:1.01; letter-spacing:-.05em; }.capability-copy { max-width:520px; color:rgba(255,255,255,.78); font-size:16px; line-height:1.85; }.process-list { display:grid; grid-template-columns:repeat(5,1fr); max-width:940px; margin:90px 0 0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.48); }.process-list li { padding:15px 12px 0 0; font-size:13px; }.process-list span { display:block; margin-bottom:12px; color:var(--mint); font-size:28px; font-weight:300; }
.quality { padding:112px 0; background:#e4e3de; }.quality-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:110px; }.quality-list { border-top:1px solid #aeb6b4; }.quality-list article { display:grid; grid-template-columns:80px 1fr 1.5fr; gap:14px; align-items:baseline; padding:24px 0; border-bottom:1px solid #bfc5c2; }.quality-list span { color:var(--blue); font-size:12px; }.quality-list h3 { margin:0; font-size:20px; font-weight:500; }.quality-list p { margin:0; color:#5e696d; font-size:14px; line-height:1.7; }
.contact { padding:112px 0; background:var(--paper); }.contact-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:11vw; }.contact-intro { max-width:380px; color:#59646a; font-size:16px; line-height:1.85; }.contact-details { margin-top:52px; border-top:1px solid var(--line); }.contact-details p { margin:0; padding:13px 0; border-bottom:1px solid var(--line); color:#3f4d52; font-size:13px; line-height:1.65; }.contact-details span { display:block; margin-bottom:3px; color:var(--blue); font-size:10px; letter-spacing:.13em; }.enquiry-form { padding:6px 0; }.enquiry-form label { display:block; color:#526066; font-size:11px; letter-spacing:.12em; }.enquiry-form input,.enquiry-form textarea { width:100%; margin:8px 0 20px; padding:9px 0 12px; border:0; border-bottom:1px solid #9fa8a8; outline:0; background:transparent; color:var(--ink); font:16px/1.4 "Helvetica Neue",Arial,"Microsoft YaHei",sans-serif; }.enquiry-form input:focus,.enquiry-form textarea:focus { border-color:var(--blue); }.enquiry-form button { width:100%; padding:18px 20px; border:0; background:var(--blue); color:#fff; cursor:pointer; font-size:12px; font-weight:700; letter-spacing:.12em; }.enquiry-form button:hover { background:#0c78b5; }.form-status { min-height:22px; margin:14px 0 0; color:#53727c; font-size:13px; }
.site-footer { padding:31px 0; background:#102028; color:#c4cbca; }.footer-content { display:flex; align-items:center; justify-content:space-between; gap:22px; }.footer-content img { width:135px; height:53px; object-fit:contain; object-position:left; filter:brightness(0) invert(1) grayscale(1) contrast(.7); }.footer-content p,.footer-content a { margin:0; color:#a4b1b0; font-size:11px; text-decoration:none; }
@media (max-width:900px) { .wrap { width:min(100% - 40px,1320px); }.site-header { grid-template-columns:1fr auto; width:calc(100% - 40px); min-height:76px; }.brand { width:132px; height:52px; }.brand img { width:132px; }.menu-toggle { display:block; border:0; background:transparent; color:#fff; font:11px "Helvetica Neue",Arial,sans-serif; letter-spacing:.13em; cursor:pointer; }.main-nav { display:none; grid-column:1/-1; grid-row:2; padding:15px 0 20px; flex-direction:column; gap:15px; background:rgba(13,27,34,.96); }.main-nav.open { display:flex; }.language { display:none; }.hero { min-height:720px; }.hero-copy { padding-top:250px; }.hero-overlay { background:linear-gradient(90deg,rgba(8,18,24,.78),rgba(8,18,24,.38)),linear-gradient(0deg,rgba(8,18,24,.42),transparent); }.manifesto-grid,.quality-grid,.contact-grid { grid-template-columns:1fr; gap:42px; }.manifesto-copy { padding:80px 0 15px; }.manifesto-image { min-height:340px; }.section-head { display:block; }.section-head .text-link { margin-top:0; }.product-grid { grid-template-columns:repeat(2,1fr); }.product-image { height:270px; }.capability { min-height:690px; }.capability-content { padding-top:85px; }.process-list { grid-template-columns:repeat(3,1fr); gap:18px; margin-top:60px; }.quality { padding:80px 0; }.quality-list article { grid-template-columns:45px 1fr; }.quality-list p { grid-column:2; }.contact { padding:80px 0; }.footer-content { align-items:flex-start; flex-direction:column; } }
@media (max-width:540px) { .hero h1 { font-size:49px; }.hero-subtitle { font-size:15px; }.product-grid { grid-template-columns:1fr; }.product-image { height:320px; }.manifesto h2,.quality h2,.contact h2 { font-size:43px; }.capability h2 { font-size:46px; }.process-list { grid-template-columns:1fr 1fr; }.process-list li:last-child { grid-column:span 2; }.quality-list article { padding:20px 0; } }
.product-card { color:inherit; text-decoration:none; }
.inner-page { background:var(--paper); }.inner-header { display:grid; grid-template-columns:220px 1fr auto; align-items:center; min-height:92px; border-bottom:1px solid var(--line); }.inner-header .brand { width:145px; height:58px; }.inner-header .brand img { width:145px; }.inner-nav { display:flex; justify-content:center; gap:30px; }.inner-nav a,.back-home { color:#334249; font-size:12px; letter-spacing:.08em; text-decoration:none; }.inner-nav a.active { color:var(--blue); }.back-home { color:var(--blue); }
.inner-hero { background:#e5e4df; }.inner-hero-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:90px; align-items:end; min-height:520px; padding:140px 0 80px; }.inner-hero h1,.products-page-head h1,.contact-page h1 { margin:0; font-size:clamp(48px,6vw,86px); line-height:.98; }.inner-hero-grid>p { max-width:375px; margin-bottom:8px; color:#58646a; font-size:16px; line-height:1.9; }
.about-statement { padding:110px 0; }.about-statement-grid { display:grid; grid-template-columns:1fr .9fr; gap:10vw; align-items:center; }.statement-image { height:520px; overflow:hidden; background:#d5dad9; }.statement-image img { width:100%; height:100%; object-fit:cover; filter:grayscale(100%); }.about-statement h2 { margin-bottom:26px; font-size:48px; line-height:1.08; font-weight:400; letter-spacing:-.04em; }.about-statement p:not(.kicker) { color:#58646a; font-size:16px; line-height:1.9; }
.values { padding:95px 0 110px; color:#fff; background:#102028; }.value-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.35); }.value-grid article { padding:25px 38px 10px 0; border-right:1px solid rgba(255,255,255,.22); }.value-grid article+article { padding-left:32px; }.value-grid span { color:var(--mint); font-size:13px; }.value-grid h3 { margin:45px 0 15px; font-size:25px; font-weight:400; }.value-grid p { color:#c8d0ce; font-size:14px; line-height:1.8; }
.capability-hero { position:relative; height:560px; overflow:hidden; color:#fff; background:#102028; }.capability-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:grayscale(100%) contrast(1.1) brightness(.65); }.inner-hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,19,26,.82),rgba(7,19,26,.32)); }.inner-hero-copy { position:relative; z-index:1; padding-top:210px; }.inner-hero-copy h1 { margin:0; font-size:clamp(50px,6vw,90px); font-weight:400; line-height:.98; }
.process-page { padding:110px 0; }.section-intro { display:grid; grid-template-columns:1fr 1fr; gap:9vw; align-items:end; }.section-intro h2 { margin:0; font-size:48px; line-height:1.08; font-weight:400; letter-spacing:-.04em; }.section-intro>p { color:#59666a; line-height:1.85; }.process-page-list { margin:85px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }.process-page-list li { display:grid; grid-template-columns:18% 1fr; padding:28px 0; border-bottom:1px solid var(--line); }.process-page-list span { color:var(--blue); font-size:34px; }.process-page-list h3 { margin:0 0 10px; font-size:25px; font-weight:400; }.process-page-list p { margin:0; color:#59666a; }
.products-page-head { padding:125px 0 86px; color:#fff; background:#102028; }.products-page-head p:not(.kicker) { max-width:430px; color:#c8d0ce; font-size:16px; line-height:1.8; }.products-page-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; padding:88px 0 112px; }.products-page-card { position:relative; min-height:510px; overflow:hidden; padding:28px; background:#dae1e2; color:var(--ink); text-decoration:none; }.products-page-card img { position:absolute; inset:7% 5% 20%; width:90%; height:73%; object-fit:contain; }.products-page-card span,.products-page-card h2,.products-page-card em { position:relative; z-index:1; }.products-page-card span { color:var(--blue); font-size:12px; }.products-page-card h2 { position:absolute; left:28px; bottom:43px; margin:0; font-size:25px; font-weight:400; }.products-page-card em { position:absolute; left:28px; bottom:24px; color:#697679; font-size:10px; font-style:normal; letter-spacing:.13em; }.process-card img { inset:0; width:100%; height:100%; object-fit:cover; filter:grayscale(100%) brightness(.7); }.process-card { color:#fff; background:#102028; }.process-card span { color:var(--mint); }.process-card em { color:#d0d8d6; }
.detail-hero { display:grid; grid-template-columns:.85fr 1.15fr; min-height:610px; }.detail-copy { padding:135px 9vw 85px 0; }.detail-copy h1 { margin-bottom:27px; font-size:clamp(49px,5.4vw,76px); line-height:.98; }.detail-copy>p:not(.kicker) { max-width:390px; color:#59666a; font-size:16px; line-height:1.85; }.detail-image { position:relative; overflow:hidden; background:#dbe1e1; }.detail-image img { position:absolute; inset:10%; width:80%; height:80%; object-fit:contain; }.detail-facts { padding:80px 0 110px; background:#e5e4df; }.detail-fact-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:40px; border-top:1px solid #abb4b2; }.detail-fact-grid div { min-height:120px; padding:18px 20px 0 0; border-right:1px solid #c2c8c5; }.detail-fact-grid div+div { padding-left:20px; }.detail-fact-grid span,.detail-fact-grid strong { display:block; }.detail-fact-grid span { color:var(--blue); font-size:11px; letter-spacing:.12em; }.detail-fact-grid strong { margin-top:25px; color:#3f4c50; font-size:15px; font-weight:500; line-height:1.5; }.contact-page { min-height:calc(100vh - 160px); }
@media (max-width:900px) { .inner-header { grid-template-columns:1fr auto; min-height:76px; }.inner-header .brand { width:132px; }.inner-header .brand img { width:132px; }.inner-nav { display:none; }.about-statement-grid,.section-intro,.detail-hero { grid-template-columns:1fr; }.inner-hero-grid { grid-template-columns:1fr; gap:25px; padding:120px 0 65px; }.about-statement-grid { gap:42px; }.value-grid { grid-template-columns:1fr; }.value-grid article,.value-grid article+article { padding:25px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.22); }.value-grid h3 { margin-top:20px; }.process-page-list li { grid-template-columns:90px 1fr; }.products-page-grid { grid-template-columns:1fr; }.detail-copy { padding:90px 0 45px; }.detail-image { min-height:400px; }.detail-fact-grid { grid-template-columns:1fr 1fr; }.detail-fact-grid div { border-bottom:1px solid #c2c8c5; } }
.site-header .brand { width:185px; gap:9px; overflow:visible; }
.site-header .brand img { content:url("assets/logo-symbol.png"); width:52px; height:52px; object-fit:contain; }
.site-header .brand::after { content:"信良鞋模\A XINLIANG SHOE MOLDS"; white-space:pre; color:#fff; font-size:16px; font-weight:700; line-height:1.15; letter-spacing:.05em; }
.inner-header .brand { width:185px; gap:9px; overflow:visible; }
.inner-header .brand img { content:url("assets/logo-symbol.png"); width:50px; height:50px; object-fit:contain; }
.inner-header .brand::after { content:"信良鞋模\A XINLIANG SHOE MOLDS"; white-space:pre; color:var(--ink); font-size:16px; font-weight:700; line-height:1.15; letter-spacing:.05em; }
@media (max-width:900px) { .site-header .brand,.inner-header .brand { width:172px; }.site-header .brand::after,.inner-header .brand::after { font-size:14px; }.site-header .menu-toggle { display:block !important; position:fixed; right:20px; top:19px; z-index:100; min-width:54px; padding:10px 6px; border:1px solid rgba(255,255,255,.48); background:rgba(11,25,33,.72); color:#fff !important; font-size:11px; line-height:1; text-align:center; }.hero-subtitle { max-width:315px; font-size:14px; word-break:break-word; overflow-wrap:anywhere; } }
.news-hero { padding:135px 0 82px; background:#e5e4df; }.news-hero h1 { margin:0 0 20px; font-size:clamp(52px,6vw,86px); line-height:.98; }.news-hero p:not(.kicker) { max-width:390px; margin:0; color:#59666a; font-size:16px; line-height:1.85; }.news-empty { padding:110px 0 150px; background:var(--paper); }.news-empty .wrap { display:grid; grid-template-columns:1fr 1fr; gap:11vw; align-items:end; border-top:1px solid var(--line); padding-top:27px; }.news-empty span { color:var(--blue); font-size:12px; }.news-empty h2 { margin:42px 0 0; font-size:46px; font-weight:400; letter-spacing:-.04em; }.news-empty p { max-width:420px; margin:0; color:#59666a; font-size:16px; line-height:1.9; }
@media (max-width:900px) { .news-empty .wrap { grid-template-columns:1fr; gap:35px; }.news-empty h2 { margin-top:25px; font-size:38px; } }

/* Editorial refinement: intentionally large rhythm, restrained motion, and asymmetric image framing. */
:root { --paper:#f3f1ec; --ink:#142831; --night:#10232c; --acid:#b7d66b; }
body { overflow-x:hidden; }
.site-header { transition:background .35s ease, min-height .35s ease; }
.site-header::after { content:""; position:absolute; right:0; bottom:-1px; width:64px; height:1px; background:var(--acid); }
.brand::after { font-weight:600; }
.hero { min-height:860px; }
.hero-image { transform:scale(1.025); animation:heroSettle 1.8s cubic-bezier(.2,.75,.2,1) both; }
.hero-overlay { background:linear-gradient(90deg,rgba(9,24,31,.84) 0%,rgba(9,24,31,.57) 40%,rgba(9,24,31,.08) 78%,rgba(9,24,31,.22)); }
.hero-copy { padding-top:316px; }
.hero-copy h1 { max-width:760px; letter-spacing:-.065em; }
.hero-subtitle { max-width:430px; font-size:15px; }
.hero-note { bottom:48px; }
.hero-scroll { position:absolute; z-index:3; left:max(40px,calc((100vw - 1320px)/2)); bottom:43px; display:flex; align-items:center; gap:14px; color:rgba(255,255,255,.72); font-size:9px; letter-spacing:.2em; }
.hero-scroll i { display:block; width:42px; height:1px; background:var(--acid); transform-origin:left; animation:linePulse 2.2s ease-in-out infinite; }
.manifesto-grid { min-height:760px; grid-template-columns:47% 53%; }
.manifesto-copy { display:flex; flex-direction:column; justify-content:center; padding:100px 8vw 100px 0; }
.manifesto-image { min-height:760px; }
.manifesto-image img { transform:scale(1.03); transition:transform 1s cubic-bezier(.2,.75,.2,1); }
.manifesto:hover .manifesto-image img { transform:scale(1); }
.materials { padding:152px 0 142px; background:#e5e5df; }
.materials-grid { display:grid; grid-template-columns:18% 1.1fr .9fr; column-gap:38px; align-items:start; }
.materials-aside span { display:block; margin-top:72px; color:#748084; font-size:11px; letter-spacing:.14em; }
.materials-main h2 { max-width:680px; margin:0; font-size:clamp(46px,5vw,76px); font-weight:400; line-height:1.02; letter-spacing:-.06em; }
.materials-list { border-top:1px solid #acb4b2; }
.materials-list article { display:flex; justify-content:space-between; gap:20px; padding:17px 0; border-bottom:1px solid #c4c9c5; }
.materials-list span { color:var(--blue); font-size:11px; font-weight:700; letter-spacing:.1em; }
.materials-list p { margin:0; color:#4a5a5f; font-size:14px; }
.product-archive { padding:150px 0 160px; }
.section-head { margin-bottom:70px; }
.product-grid { grid-template-columns:1.12fr .88fr .88fr 1.12fr; gap:18px; }
.product-card { position:relative; transition:transform .55s cubic-bezier(.2,.75,.2,1), background .4s ease; }
.product-card:nth-child(even) { transform:translateY(70px); }
.product-card:hover { transform:translateY(-8px); }
.product-card:nth-child(even):hover { transform:translateY(62px); }
.product-image { height:470px; }
.product-meta { min-height:94px; padding:22px 18px; }
.product-meta h3 { font-size:15px; }
.capability { min-height:760px; margin-top:70px; }
.capability-content { padding-top:130px; }
.capability h2 { max-width:730px; }
.process-list { margin-top:112px; max-width:1100px; }
.application { padding:170px 0 0; background:var(--paper); overflow:hidden; }
.application-top { padding-bottom:92px; }
.application-top h2 { max-width:850px; margin:0; font-size:clamp(46px,5.1vw,78px); font-weight:400; line-height:1.02; letter-spacing:-.06em; }
.application-strip { display:grid; grid-template-columns:53% 47%; min-height:540px; margin-left:calc((100vw - min(100vw - 80px,1320px))/2); }
.application-photo { overflow:hidden; background:#ccd1cf; }
.application-photo img { width:100%; height:100%; object-fit:cover; object-position:center; filter:grayscale(100%) contrast(1.04); transition:transform 1.1s cubic-bezier(.2,.75,.2,1); }
.application-strip:hover img { transform:scale(1.045); }
.application-copy { display:flex; flex-direction:column; justify-content:center; max-width:510px; padding:80px 9vw; background:#dce1df; }
.application-copy>span { color:var(--blue); font-size:11px; letter-spacing:.17em; }
.application-copy p { margin:38px 0 0; color:#34484e; font-size:clamp(20px,2vw,28px); font-weight:300; line-height:1.55; letter-spacing:-.025em; }
.application-copy .text-link { margin-top:50px; align-self:flex-start; }
.quality { padding:166px 0; }
.contact { padding:150px 0; }
.reveal { opacity:0; transform:translateY(28px); transition:opacity .85s cubic-bezier(.2,.75,.2,1), transform .85s cubic-bezier(.2,.75,.2,1); }
.reveal.is-visible { opacity:1; transform:none; }
@keyframes heroSettle { from { transform:scale(1.09); filter:saturate(.5) contrast(1.12) brightness(.65); } to { transform:scale(1.025); } }
@keyframes copyIn { from { opacity:0; transform:translateY(28px); } to { opacity:1; transform:none; } }
@keyframes linePulse { 50% { transform:scaleX(.35); opacity:.4; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; } }
@media (max-width:900px) {
  .hero { min-height:790px; }.hero-copy { padding-top:260px; }.hero-scroll { left:20px; bottom:28px; }.hero-note { display:none; }
  .manifesto-grid { min-height:auto; }.manifesto-copy { padding:104px 0 50px; }.manifesto-image { min-height:500px; }
  .materials { padding:100px 0; }.materials-grid { grid-template-columns:1fr; gap:42px; }.materials-aside span { margin-top:14px; }.materials-main h2 { font-size:48px; }
  .product-archive { padding:100px 0 120px; }.section-head { margin-bottom:42px; }.product-card:nth-child(even) { transform:translateY(32px); }.product-card:nth-child(even):hover { transform:translateY(25px); }.product-image { height:330px; }
  .capability { min-height:730px; margin-top:34px; }.capability-content { padding-top:100px; }.process-list { margin-top:72px; }
  .application { padding-top:110px; }.application-top { padding-bottom:55px; }.application-strip { grid-template-columns:1fr; margin-left:0; }.application-photo { min-height:400px; }.application-copy { max-width:none; padding:62px 20px 78px; }
  .quality,.contact { padding:100px 0; }
}
@media (max-width:540px) { .hero h1 { font-size:52px; }.materials-main h2,.application-top h2 { font-size:43px; }.product-image { height:310px; }.product-card:nth-child(even) { transform:none; }.product-card:nth-child(even):hover { transform:translateY(-5px); } }
@media (max-width:900px) { .site-header .menu-toggle { display:block !important; } }

.process-gallery { display:grid; grid-template-columns:1fr .72fr; gap:18px; margin-top:84px; }
.process-gallery figure { position:relative; min-height:360px; margin:0; overflow:hidden; background:#d6dddc; }
.process-gallery figure:last-child { min-height:300px; margin-top:84px; }
.process-gallery img { width:100%; height:100%; object-fit:cover; filter:saturate(.74) contrast(1.04); transition:transform .8s cubic-bezier(.2,.75,.2,1); }
.process-gallery figure:hover img { transform:scale(1.04); }
.process-gallery figcaption { position:absolute; left:18px; bottom:17px; padding:7px 9px; background:rgba(12,29,37,.8); color:#fff; font-size:10px; letter-spacing:.15em; }
.file-field { margin:3px 0 20px; color:#526066; font-size:11px; letter-spacing:.08em; }
.file-field input { margin:9px 0 0; padding:7px 0; border:0; color:#526066; font-size:12px; }
.privacy-field { display:flex !important; align-items:flex-start; gap:9px; margin:4px 0 22px; color:#526066 !important; font-size:12px !important; line-height:1.55; letter-spacing:0 !important; }
.privacy-field input { width:15px; height:15px; margin:2px 0 0; accent-color:var(--blue); }
@media (max-width:900px) {
  .inner-header { position:relative; }
  .inner-nav { display:none; position:absolute; top:76px; left:0; right:0; z-index:50; padding:16px 20px 22px; flex-direction:column; gap:16px; background:#f3f1ec; border-bottom:1px solid var(--line); }
  .inner-nav.open { display:flex; }
  .inner-menu-toggle { display:block !important; position:absolute; right:0; top:20px; z-index:60; min-width:54px; padding:10px 6px; border:1px solid #708086; background:#f3f1ec; color:var(--ink) !important; font-size:11px; line-height:1; text-align:center; }
  .inner-header .back-home { display:none; }
  .process-gallery { grid-template-columns:1fr; margin-top:52px; }
  .process-gallery figure,.process-gallery figure:last-child { min-height:300px; margin-top:0; }
}

/* V4 information architecture: Chinese-first copy, one visual per narrative purpose. */
body { font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif; }
h1,h2 { font-family:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong",serif; font-weight:500; }
.site-header { display:flex; grid-template-columns:none; }
.site-header .language { position:absolute; right:0; top:40px; margin:0; }
.site-header .main-nav { position:absolute; left:50%; transform:translateX(-50%); justify-content:center; gap:44px; font-size:13px; letter-spacing:.13em; white-space:nowrap; }
.site-header .main-nav .nav-home { padding-left:34px; border-left:1px solid rgba(255,255,255,.32); }
.hero-copy h1 { max-width:720px; font-size:clamp(54px,5.4vw,80px); line-height:1.08; letter-spacing:-.06em; }
.hero-copy .kicker { letter-spacing:.16em; }
.company-intro { padding:156px 0; background:var(--paper); }
.company-intro-grid { display:grid; grid-template-columns:.88fr 1.12fr; gap:10vw; align-items:center; }
.company-intro-copy h2,.process-summary h2,.home-contact h2 { margin:0 0 32px; font-size:clamp(42px,4.3vw,66px); line-height:1.16; letter-spacing:-.055em; }
.company-intro-copy>p:not(.kicker),.process-summary p { max-width:440px; color:#526167; font-size:16px; line-height:1.95; }
.company-intro-image { position:relative; min-height:550px; margin:0; overflow:hidden; background:#d4d9d7; }
.company-intro-image img { width:100%; height:100%; object-fit:cover; filter:saturate(.68) contrast(1.03); }
.company-intro-image figcaption { position:absolute; right:20px; bottom:18px; color:#fff; font-size:10px; letter-spacing:.15em; }
.product-archive { padding:154px 0 150px; }
.product-archive .section-head { align-items:flex-end; }
.section-note { max-width:280px; margin:0; color:rgba(255,255,255,.62); font-size:13px; line-height:1.8; }
.product-archive .product-grid { grid-template-columns:repeat(3,1fr); gap:20px; }
.product-archive .product-card,.product-archive .product-card:nth-child(even) { transform:none; }
.product-archive .product-card:hover,.product-archive .product-card:nth-child(even):hover { transform:translateY(-8px); }
.product-archive .product-image { height:470px; }
.product-all-link { margin-top:70px; }
.process-summary { padding:155px 0; background:#e3e4df; }
.process-flow { padding:150px 0 155px; overflow:hidden; background:#f3f1ec; }.flow-heading { display:grid; grid-template-columns:1fr 1.2fr .72fr; gap:45px; align-items:end; margin-bottom:66px; }.flow-heading h2 { margin:0; font-size:clamp(42px,4.4vw,68px); font-weight:500; line-height:1.12; letter-spacing:-.055em; }.flow-heading>p:not(.kicker) { margin:0; color:#59666a; font-size:14px; line-height:1.85; }.flow-track { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(190px,1fr); gap:14px; overflow-x:auto; padding-bottom:18px; scrollbar-width:thin; }.flow-track article { position:relative; min-height:310px; overflow:hidden; background:#dbe1e1; color:#fff; }.flow-track article img { width:100%; height:100%; object-fit:cover; filter:brightness(.63) saturate(.74); transition:transform .55s cubic-bezier(.2,.75,.2,1),filter .55s ease; }.flow-track article:hover img { transform:scale(1.08); filter:brightness(.78) saturate(.9); }.flow-track article::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(7,19,25,.82),rgba(7,19,25,.03) 70%); }.flow-track span,.flow-track h3 { position:absolute; z-index:1; left:18px; }.flow-track span { top:18px; color:#b7d66b; font-size:11px; }.flow-track h3 { bottom:17px; margin:0; font-family:"PingFang SC","Microsoft YaHei",sans-serif; font-size:18px; font-weight:500; }
.process-summary-grid { display:grid; grid-template-columns:1.02fr .98fr; gap:9vw; align-items:center; }
.process-summary figure { height:490px; margin:0; overflow:hidden; background:#d1d6d3; }.process-summary figure img { width:100%; height:100%; object-fit:cover; filter:saturate(.65) contrast(1.02); }
.process-summary h2 { font-size:clamp(38px,3.75vw,58px); }
.home-contact { padding:145px 0; color:#fff; background:#10242d; }.home-contact h2 { max-width:760px; color:#fff; }.home-contact-row { display:flex; align-items:end; justify-content:space-between; gap:60px; margin-top:72px; padding-top:22px; border-top:1px solid rgba(255,255,255,.35); }.home-contact-row p { max-width:425px; margin:0; color:#bcc7c5; font-size:16px; line-height:1.85; }.home-contact-row .text-link { margin:0; white-space:nowrap; }
@media (max-width:900px) { .site-header { grid-template-columns:1fr auto; }.site-header .language { display:none; }.site-header .main-nav { gap:15px; }.site-header .main-nav .nav-home { padding-left:0; border-left:0; }.company-intro { padding:95px 0; }.company-intro-grid,.process-summary-grid { grid-template-columns:1fr; gap:46px; }.company-intro-image { min-height:360px; }.product-archive .product-grid { grid-template-columns:1fr; }.product-archive .product-image { height:360px; }.process-summary { padding:100px 0; }.process-summary figure { height:350px; }.home-contact { padding:100px 0; }.home-contact-row { align-items:flex-start; flex-direction:column; gap:32px; margin-top:48px; } }
@media (max-width:900px) { .process-flow { padding:100px 0; }.flow-heading { grid-template-columns:1fr; gap:20px; margin-bottom:40px; }.flow-track { grid-auto-columns:76%; } }

/* Circular production-map treatment: follow the client's serpentine process order. */
.flow-track { --flow-node:205px; --flow-gap:34px; --flow-row-gap:48px; --flow-column:calc((min(100vw - 80px, 1320px) - (var(--flow-gap) * 3)) / 4); --flow-link:calc(var(--flow-column) - var(--flow-node) + var(--flow-gap)); position:relative; display:grid; grid-template-columns:repeat(4,minmax(150px,1fr)); gap:var(--flow-row-gap) var(--flow-gap); overflow:visible; padding:26px 0; }
.flow-track::before { display:none; }
.flow-track article { z-index:1; justify-self:center; width:min(100%,var(--flow-node)); min-height:var(--flow-node); overflow:visible; aspect-ratio:1; border:4px solid #258fca; border-radius:50%; background:#253640 center/cover no-repeat; }
.flow-track article::before { content:""; position:absolute; z-index:-1; top:calc(50% - 1.5px); width:calc(var(--flow-link) + 40px); height:3px; background:#258fca; pointer-events:none; }
.flow-track article:nth-child(1)::before,.flow-track article:nth-child(2)::before,.flow-track article:nth-child(3)::before,.flow-track article:nth-child(9)::before,.flow-track article:nth-child(10)::before,.flow-track article:nth-child(11)::before { left:100%; }
.flow-track article:nth-child(5)::before,.flow-track article:nth-child(6)::before,.flow-track article:nth-child(7)::before { right:100%; }
.flow-track article:nth-child(4)::before,.flow-track article:nth-child(8)::before { top:100%; left:calc(50% - 1.5px); width:3px; height:calc(var(--flow-row-gap) + 40px); background:#258fca; transform:none; }
.flow-track article:nth-child(12)::before { display:none; }
.flow-track article img { display:none; }.flow-track article::after { background:linear-gradient(0deg,rgba(7,19,25,.9),rgba(7,19,25,.03) 65%); border-radius:50%; }.flow-track span { top:22px; font-weight:700; }.flow-track h3 { right:15px; bottom:24px; left:15px; text-align:center; font-size:16px; }
.flow-track article:nth-child(1){grid-area:1/1;background-image:url("assets/process-01.png")}.flow-track article:nth-child(2){grid-area:1/2;background-image:url("assets/process-02.png")}.flow-track article:nth-child(3){grid-area:1/3;background-image:url("assets/process-03.png")}.flow-track article:nth-child(4){grid-area:1/4;background-image:url("assets/process-04.png")}
.flow-track article:nth-child(5){grid-area:2/4;background-image:url("assets/process-05.png")}.flow-track article:nth-child(6){grid-area:2/3;background-image:url("assets/process-06.png")}.flow-track article:nth-child(7){grid-area:2/2;background-image:url("assets/process-07.png")}.flow-track article:nth-child(8){grid-area:2/1;background-image:url("assets/process-08.png")}
.flow-track article:nth-child(9){grid-area:3/1;background-image:url("assets/process-09.png")}.flow-track article:nth-child(10){grid-area:3/2;background-image:url("assets/process-10.png")}.flow-track article:nth-child(11){grid-area:3/3;background-image:url("assets/process-11.png")}.flow-track article:nth-child(12){grid-area:3/4;background-image:url("assets/process-12.png")}
@media (max-width:900px) { .flow-track { grid-template-columns:repeat(2,1fr); gap:34px 18px; }.flow-track::before { display:none; }.flow-track article { width:min(100%,170px); min-height:170px; } }

/* Client review polish */
.brand { pointer-events:none; cursor:default; }
.kicker { display:none !important; }
.flow-heading > p:not(.kicker) { display:none; }
.flow-track span { display:none; }

/* V5 editorial polish: correct the reading rhythm before adding more decoration. */
@media (min-width:901px) {
  .site-header { min-height:102px; }
  .main-nav { gap:34px; }
  .main-nav a { position:relative; padding:8px 0; }
  .main-nav a::after { content:""; position:absolute; right:0; bottom:0; left:0; height:1px; background:var(--mint); transform:scaleX(0); transform-origin:right; transition:transform .28s ease; }
  .main-nav a:hover::after,.main-nav a.active::after { transform:scaleX(1); transform-origin:left; }
  .company-intro-grid { grid-template-columns:1fr 1fr; gap:8vw; }
  .company-intro-copy h2 { max-width:640px; font-size:clamp(42px,4vw,62px); line-height:1.12; }
  .company-intro-copy>p:not(.kicker) { max-width:500px; }
  .product-archive .section-head { margin-bottom:54px; padding-bottom:27px; border-bottom:1px solid rgba(255,255,255,.18); }
  .product-archive .section-note { max-width:300px; padding-bottom:4px; }
  .product-card { border:1px solid rgba(255,255,255,.12); transition:border-color .35s ease,transform .35s ease; }
  .product-card:hover { border-color:rgba(158,207,90,.62); }
  .product-meta { min-height:92px; padding:22px 20px; }
  .product-meta h3 { font-size:16px; }
  .flow-heading { display:flex; justify-content:center; margin-bottom:76px; }
  .flow-heading h2 { max-width:800px; text-align:center; }
}

html[lang="en"] .main-nav { gap:26px; }
html[lang="en"] .hero-copy h1,html[lang="en"] .company-intro-copy h2,html[lang="en"] .section-head h2,html[lang="en"] .flow-heading h2,html[lang="en"] .process-summary h2,html[lang="en"] .home-contact h2 { max-width:13ch; line-height:1.06; letter-spacing:-.045em; }
html[lang="en"] .flow-track h3 { display:grid; min-height:42px; align-items:end; line-height:1.28; font-size:13px; }

/* V6: editorial proportions for a more restrained industrial presentation. */
@media (min-width:901px) {
  .hero-copy { padding-top:300px; }
  .hero-copy h1 { max-width:690px; font-size:clamp(56px,5.1vw,78px); line-height:1.1; }
  .hero-subtitle { max-width:450px; font-size:15px; line-height:1.9; }
  .company-intro { padding:178px 0 164px; }
  .company-intro-copy { padding:46px 0 14px; border-top:1px solid var(--line); }
  .company-intro-copy h2 { margin-top:42px; }
  .company-intro-image { height:590px; }
  .product-archive { padding:170px 0 165px; }
  .product-archive .product-grid { grid-template-columns:1.12fr .84fr 1.04fr; gap:24px; align-items:start; }
  .product-archive .product-card:nth-child(2) { margin-top:92px; }
  .product-archive .product-card:nth-child(3) { margin-top:28px; }
  .product-archive .product-card:nth-child(1) .product-image { height:510px; }
  .product-archive .product-card:nth-child(2) .product-image { height:360px; }
  .product-archive .product-card:nth-child(3) .product-image { height:442px; }
  .product-archive .product-image { background:#d9e0e1; }
  .product-meta { min-height:84px; }
  .product-meta span { color:#7e9a96; }
  .product-all-link { margin-top:84px; }
  .process-flow { padding:176px 0 182px; }
  .process-summary { padding:178px 0; }
  .process-summary-grid { grid-template-columns:.94fr 1.06fr; gap:11vw; }
  .process-summary figure { height:530px; }
  .process-summary>*,.company-intro-grid>* { min-width:0; }
  .home-contact { padding:165px 0 156px; }
  .home-contact-row { margin-top:82px; }
}
.company-info-title { margin:34px 0 22px; color:var(--ink); font-size:28px !important; font-weight:500; letter-spacing:-.04em; }
.site-header .brand { width:240px; height:76px; gap:12px; }
.site-header .brand img { width:64px; height:64px; }
.site-header .brand::after { font-size:19px; line-height:1.08; letter-spacing:.055em; }
.company-intro-image { height:550px; min-height:0; }
.company-intro-image img { position:absolute; inset:0; height:100%; }
.company-intro-image::after { content:""; position:absolute; inset:auto 0 0; height:34%; background:linear-gradient(0deg,rgba(7,21,28,.62),transparent); pointer-events:none; }
.company-intro-image figcaption { z-index:1; }
.values { position:relative; overflow:hidden; background:#0d2028 url("assets/workshop-inspection-ai.webp") center/cover no-repeat; }
.values::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,23,31,.97),rgba(8,23,31,.84)); }
.values .wrap { position:relative; }.values .kicker { margin-bottom:28px; }
.value-grid { grid-template-columns:repeat(3,1fr); }.value-grid article { min-height:280px; padding:28px 40px 30px 0; transition:background .35s ease,transform .35s ease; }.value-grid article+article { padding-left:40px; }.value-grid article:hover { background:rgba(183,214,107,.08); transform:translateY(-8px); }.value-grid h3 { margin-top:78px; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; font-size:29px; }
.products-page-head { position:relative; min-height:500px; overflow:hidden; background:#10232c; }.products-page-head::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,22,29,.97) 0%,rgba(8,22,29,.77) 45%,rgba(8,22,29,.15) 100%),url("assets/product-hero-ai.webp") right center/cover no-repeat; }.products-page-head .wrap { position:relative; z-index:1; padding-top:145px; }.products-page-head h1 { max-width:610px; font-size:clamp(48px,5vw,76px); line-height:1.05; letter-spacing:-.045em; }.products-page-head p:not(.kicker) { max-width:360px; }
.products-page-grid { padding-top:110px; }.products-page-card { transition:transform .45s cubic-bezier(.2,.75,.2,1),box-shadow .45s ease; }.products-page-card:hover { transform:translateY(-10px); box-shadow:0 18px 40px rgba(13,30,36,.16); }
.news-list { padding:112px 0 150px; background:var(--paper); }.news-list .wrap { border-top:1px solid var(--line); }.news-item { display:grid; grid-template-columns:110px 1.05fr .95fr 48px; gap:26px; align-items:center; min-height:210px; border-bottom:1px solid var(--line); text-decoration:none; transition:padding .35s ease,background .35s ease; }.news-item:hover { padding:0 22px; background:#e5e6e1; }.news-item time { color:var(--blue); font-size:12px; }.news-item h2 { margin:0; font-size:30px; line-height:1.2; font-weight:500; }.news-item p { margin:0; color:#5b696d; font-size:14px; line-height:1.8; }.news-item b { justify-self:end; color:var(--blue); font-size:24px; font-weight:400; }
.about-depth { padding:142px 0; background:#e3e4df; }.about-depth-grid { display:grid; grid-template-columns:1fr 1fr; gap:10vw; }.about-depth h2 { margin:0; font-size:clamp(38px,4vw,62px); font-weight:500; line-height:1.16; letter-spacing:-.05em; }.about-depth-copy>p { margin:0 0 32px; color:#526167; font-size:16px; line-height:1.9; }.about-depth ul { margin:0; padding:0; list-style:none; border-top:1px solid #aeb8b6; }.about-depth li { padding:16px 0; border-bottom:1px solid #bdc4c1; color:#2d4148; font-size:14px; }.about-depth li::before { content:"/"; display:inline-block; width:28px; color:var(--blue); }
.factory-story { padding:164px 0 176px; background:#10242d; color:#f4f1eb; }.factory-story-head { display:grid; grid-template-columns:.9fr 1.15fr .75fr; gap:42px; align-items:end; padding-bottom:48px; border-bottom:1px solid rgba(225,235,233,.25); }.factory-eyebrow { margin:0; color:#b8d66c; font-size:12px; font-weight:600; letter-spacing:.16em; }.factory-story h2 { margin:0; font-size:clamp(42px,4.3vw,68px); font-weight:500; line-height:1.12; letter-spacing:-.055em; }.factory-story-head>p:last-child { margin:0 0 5px; color:#b9c4c3; font-size:14px; line-height:1.9; }.factory-story-grid { display:grid; grid-template-columns:1.45fr .85fr .85fr; gap:22px; margin-top:42px; }.factory-story figure { position:relative; min-height:330px; margin:0; overflow:hidden; background:#20343c; }.factory-story-main { min-height:500px !important; }.factory-story img { width:100%; height:100%; object-fit:cover; filter:saturate(.76) contrast(1.06) brightness(.84); transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .45s ease; }.factory-story figure:hover img { transform:scale(1.045); filter:saturate(.88) contrast(1.08) brightness(.94); }.factory-story figure::after { content:""; position:absolute; inset:40% 0 0; background:linear-gradient(transparent,rgba(5,17,22,.78)); pointer-events:none; }.factory-story figcaption { position:absolute; z-index:1; right:20px; bottom:18px; color:#fff; font-size:13px; letter-spacing:.12em; }
@media (max-width:900px) { .site-header .brand { width:190px; height:62px; }.site-header .brand img { width:52px; height:52px; }.site-header .brand::after { font-size:15px; }.company-intro-image { height:360px; }.value-grid article,.value-grid article+article { min-height:auto; padding:30px 0; }.value-grid h3 { margin-top:38px; }.products-page-head .wrap { padding-top:125px; }.news-item { grid-template-columns:1fr; gap:14px; padding:28px 0; }.news-item:hover { padding:28px 14px; }.news-item b { display:none; } }
@media (max-width:900px) { .about-depth { padding:95px 0; }.about-depth-grid { grid-template-columns:1fr; gap:40px; } }
@media (max-width:900px) { .factory-story { padding:98px 0; }.factory-story-head { grid-template-columns:1fr; gap:24px; padding-bottom:32px; }.factory-story-grid { grid-template-columns:1fr; gap:14px; margin-top:28px; }.factory-story figure,.factory-story-main { min-height:310px !important; }.factory-story-main { min-height:390px !important; } }

/* Keep every inner-page header on the same navigation system as the homepage. */
.inner-header { display:flex; position:relative; grid-template-columns:none; }
.inner-header .brand { width:240px; height:76px; gap:12px; }.inner-header .brand img { width:64px; height:64px; }.inner-header .brand::after { font-size:19px; line-height:1.08; letter-spacing:.055em; }
.inner-header .inner-nav { position:absolute; left:50%; transform:translateX(-50%); display:flex; justify-content:center; gap:44px; white-space:nowrap; }.inner-header .inner-nav a { font-size:13px; letter-spacing:.13em; }.inner-header .inner-nav .nav-home { padding-left:34px; border-left:1px solid #a6b0ae; }.inner-header .language { position:absolute; right:0; top:40px; display:flex; color:#334249; }.inner-header .language i { background:#8f9b9c; }.inner-header .language a { color:#607174; }
.inner-header .back-home { display:none; }
.values .value-grid article { position:relative; overflow:hidden; }.values .value-grid article::after { content:""; position:absolute; right:-36px; bottom:-36px; width:140px; height:140px; border:1px solid rgba(183,214,107,.35); border-radius:50%; box-shadow:0 0 0 22px rgba(183,214,107,.06),0 0 0 44px rgba(183,214,107,.035); transition:transform .5s cubic-bezier(.2,.75,.2,1); }.values .value-grid article:hover::after { transform:scale(1.18) rotate(20deg); }.values .value-grid h3,.values .value-grid p,.values .value-grid span { position:relative; z-index:1; }
@media (max-width:900px) { .inner-header .brand { width:190px; height:62px; }.inner-header .brand img { width:52px; height:52px; }.inner-header .brand::after { font-size:15px; }.inner-header .inner-nav { left:0; right:0; transform:none; }.inner-header .language { display:none; } }

/* Home product carousel: identical card proportions, continuous right-to-left motion. */
.product-carousel { --carousel-gap:24px; position:relative; width:100%; overflow:hidden; padding:12px 0 16px; }
.product-carousel::before,.product-carousel::after { content:""; position:absolute; z-index:2; top:0; bottom:0; width:clamp(28px,7vw,140px); pointer-events:none; }
.product-carousel::before { left:0; background:linear-gradient(90deg,var(--night),rgba(15,28,35,0)); }
.product-carousel::after { right:0; background:linear-gradient(270deg,var(--night),rgba(15,28,35,0)); }
.product-carousel-track { display:flex; width:max-content; gap:var(--carousel-gap); padding-right:var(--carousel-gap); animation:product-marquee 82s linear infinite; will-change:transform; }
.product-carousel:hover .product-carousel-track,.product-carousel:focus-within .product-carousel-track { animation-play-state:paused; }
.product-carousel .product-card { flex:0 0 324px; width:324px; margin:0 !important; transform:none !important; border:1px solid rgba(255,255,255,.16); background:#17272f; }
.product-carousel .product-card:hover { transform:translateY(-6px) !important; border-color:rgba(158,207,90,.64); }
.product-carousel .product-image,.product-carousel .product-card:nth-child(n) .product-image { display:grid; height:324px; place-items:center; overflow:hidden; background:#d9e0e1; }
.product-carousel .product-image img,.product-carousel .product-card:not(.product-card--process) .product-image img { width:78%; height:78%; max-width:none; padding:0; object-fit:contain; background:transparent; transition:transform .45s ease; }
.product-carousel .product-card:hover .product-image img { transform:scale(1.035); }
.product-carousel .product-meta { min-height:76px; padding:19px 18px; }
@keyframes product-marquee { to { transform:translateX(calc(-50% - (var(--carousel-gap) / 2))); } }
@media (prefers-reduced-motion:reduce) { .product-carousel-track { animation:none; } }
@media (max-width:900px) { .product-carousel { --carousel-gap:14px; }.product-carousel .product-card { flex-basis:246px; width:246px; }.product-carousel .product-image,.product-carousel .product-card:nth-child(n) .product-image { height:246px; }.product-carousel-track { animation-duration:68s; } }

/* Homepage V7: three continuous editorial chapters rather than stacked feature panels. */
.chapter-index { margin:0 0 28px; color:var(--blue); font-size:11px; font-weight:700; letter-spacing:.19em; text-transform:uppercase; }
.brand-chapter { position:relative; padding:154px 0 168px; background:var(--paper); }
.brand-chapter::after { content:""; position:absolute; right:0; bottom:0; left:0; height:1px; background:var(--line); }
.brand-chapter-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:10vw; align-items:center; }
.brand-chapter-intro { max-width:545px; padding-top:36px; border-top:1px solid var(--line); }
.brand-chapter h2,.manufacturing-heading h2,.process-stage h2,.project-closing h2 { margin:0; font-size:clamp(43px,4vw,64px); font-weight:500; line-height:1.12; letter-spacing:-.06em; }
.brand-chapter-intro > p:not(.chapter-index) { max-width:455px; margin:34px 0 0; color:#526167; font-size:16px; line-height:1.95; }
.brand-chapter-image { position:relative; height:585px; margin:0; overflow:hidden; background:#d6dcda; }
.brand-chapter-image img { width:100%; height:100%; object-fit:cover; filter:saturate(.68) contrast(1.04); }
.brand-chapter-image::after { content:""; position:absolute; inset:auto 0 0; height:36%; background:linear-gradient(0deg,rgba(8,22,29,.66),transparent); }
.brand-chapter-image figcaption { position:absolute; z-index:1; right:20px; bottom:18px; color:#fff; font-size:10px; letter-spacing:.15em; }

.manufacturing-chapter { padding:168px 0 104px; color:#f4f1eb; background:linear-gradient(180deg,#10222a 0%,#10222a 76%,#18313a 100%); }
.manufacturing-heading { display:grid; grid-template-columns:1.1fr .58fr; gap:9vw; align-items:end; padding-bottom:48px; border-bottom:1px solid rgba(255,255,255,.2); }
.manufacturing-heading .chapter-index { color:#a8d15b; }
.manufacturing-heading > p { max-width:350px; margin:0 0 7px; color:rgba(244,241,235,.68); font-size:14px; line-height:1.9; }
.product-grid--chapter { grid-template-columns:1.12fr .84fr 1.04fr !important; gap:24px !important; align-items:start; margin-top:58px; }
.product-grid--chapter .product-card { border:1px solid rgba(255,255,255,.14); background:#152a33; }
.product-grid--chapter .product-card:nth-child(2) { margin-top:76px; }
.product-grid--chapter .product-card:nth-child(3) { margin-top:24px; }
.product-grid--chapter .product-image { height:430px; background:#d9e0e1; }
.product-grid--chapter .product-card:nth-child(1) .product-image { height:492px; }
.product-grid--chapter .product-card:nth-child(2) .product-image { height:352px; }
.product-grid--chapter .product-card:nth-child(3) .product-image { height:418px; }
.product-grid--chapter .product-meta { min-height:84px; }
.manufacturing-chapter .product-all-link { margin-top:70px; }

.process-stage { margin-top:154px; padding:100px clamp(28px,5vw,78px) 104px; color:var(--ink); background:#f1eee8; }
.process-stage-heading { display:flex; align-items:end; justify-content:space-between; gap:60px; margin-bottom:70px; padding-bottom:36px; border-bottom:1px solid var(--line); }
.process-stage-heading .chapter-index { margin:0 0 22px; }
.process-stage-heading h2 { max-width:680px; font-size:clamp(40px,3.7vw,58px); }
.process-stage .flow-track { --flow-node:174px; --flow-gap:34px; --flow-row-gap:50px; --flow-column:calc((min(100vw - 80px, 1164px) - (var(--flow-gap) * 3)) / 4); --flow-link:calc(var(--flow-column) - var(--flow-node) + var(--flow-gap)); max-width:1164px; margin:auto; padding:0; }
.process-stage .flow-track article { z-index:1; overflow:hidden; border-width:3px; background-image:none !important; }
.process-stage .flow-track article img { position:absolute; inset:0; display:block; width:100%; height:100%; max-width:none; object-fit:cover; filter:brightness(.74) saturate(.74); }
.process-stage .flow-track article::after { z-index:0; border-radius:50%; background:linear-gradient(0deg,rgba(6,18,24,.86),rgba(6,18,24,.03) 66%); }
.process-stage .flow-track article::before { z-index:-1; height:2px; background:#258fca; }
.process-stage .flow-track article:nth-child(4)::before,.process-stage .flow-track article:nth-child(8)::before { width:2px; height:calc(var(--flow-row-gap) + 24px); }
.process-stage .flow-track h3 { z-index:2; right:12px; bottom:18px; left:12px; color:#fff; font-size:14px; line-height:1.2; text-shadow:0 1px 2px rgba(0,0,0,.45); }

.project-closing { padding:158px 0 0; background:#e2e3de; }
.project-closing-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:11vw; align-items:center; padding-bottom:154px; }
.project-closing figure { height:530px; margin:0; overflow:hidden; background:#cad0ce; }
.project-closing figure img { width:100%; height:100%; object-fit:cover; filter:saturate(.62) contrast(1.03); }
.project-closing-copy { max-width:620px; }
.project-closing-copy > p:not(.chapter-index) { max-width:465px; margin:32px 0 0; color:#526167; font-size:16px; line-height:1.92; }
.project-cta { display:flex; align-items:end; justify-content:space-between; gap:60px; padding:100px 0 108px; color:#fff; border-top:1px solid rgba(255,255,255,.18); }
.project-cta::before { content:""; position:absolute; right:0; left:0; z-index:0; height:100%; background:#10242d; }
.project-cta { position:relative; }
.project-cta > * { position:relative; z-index:1; }
.project-cta p { margin:0 0 18px; color:#aecf74; font-size:12px; letter-spacing:.13em; }
.project-cta h2 { color:#fff; font-size:clamp(42px,4vw,63px); }
.project-cta .text-link { margin:0 0 10px; white-space:nowrap; }

@media (max-width:900px) {
  .brand-chapter,.manufacturing-chapter,.project-closing { padding-top:96px; }
  .brand-chapter { padding-bottom:100px; }
  .brand-chapter-grid,.project-closing-grid,.manufacturing-heading { grid-template-columns:1fr; gap:42px; }
  .brand-chapter-intro { padding-top:28px; }
  .brand-chapter-image,.project-closing figure { height:360px; }
  .manufacturing-chapter { padding-bottom:64px; }
  .manufacturing-heading { padding-bottom:32px; }
  .product-grid--chapter { grid-template-columns:1fr !important; gap:18px !important; margin-top:42px; }
  .product-grid--chapter .product-card:nth-child(2),.product-grid--chapter .product-card:nth-child(3) { margin-top:0; }
  .product-grid--chapter .product-image,.product-grid--chapter .product-card:nth-child(n) .product-image { height:360px; }
  .process-stage { margin-top:92px; padding:64px 20px 70px; }
  .process-stage-heading { display:block; margin-bottom:46px; padding-bottom:26px; }
  .process-stage .flow-track { --flow-node:138px; --flow-gap:22px; --flow-row-gap:30px; --flow-column:calc((100vw - 80px - (var(--flow-gap) * 1)) / 2); --flow-link:calc(var(--flow-column) - var(--flow-node) + var(--flow-gap)); }
  .process-stage .flow-track article { width:var(--flow-node); min-height:var(--flow-node); }
  .project-closing { padding-bottom:0; }
  .project-closing-grid { padding-bottom:96px; }
  .project-cta { flex-direction:column; align-items:flex-start; gap:36px; padding:76px 0; }
}

/* Final visual pass: restrained motion and editorial product presentation. */
.reveal { transition-delay:var(--reveal-delay,0ms); }
.site-header,.inner-header { transition:background-color .42s ease,box-shadow .42s ease,backdrop-filter .42s ease; }
.site-header.is-scrolled,.inner-header.is-scrolled { background:rgba(245,244,239,.9); box-shadow:0 10px 28px rgba(10,26,33,.08); backdrop-filter:blur(14px); }
.site-header.is-scrolled .main-nav a,.site-header.is-scrolled .language,.site-header.is-scrolled .language a { color:#17303a; }
.products-page-card { isolation:isolate; border:1px solid transparent; transition:transform .65s cubic-bezier(.2,.75,.2,1),box-shadow .65s cubic-bezier(.2,.75,.2,1),border-color .45s ease !important; }
.products-page-card img { transform:scale(.94); transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .5s ease; }
.products-page-card:hover { border-color:rgba(38,143,202,.35); box-shadow:0 24px 56px rgba(10,31,40,.15) !important; transform:translateY(-12px) !important; }
.products-page-card:hover img { transform:scale(1.015); filter:contrast(1.035) saturate(.94); }
.products-page-card:nth-child(4n+2) { transition-delay:80ms; }
.products-page-card:nth-child(4n+3) { transition-delay:140ms; }
.factory-story-grid figure { transform:translateY(0); transition:transform .72s cubic-bezier(.2,.75,.2,1),box-shadow .72s ease; }
.factory-story-grid figure:hover { transform:translateY(-10px); box-shadow:0 22px 38px rgba(0,0,0,.26); }
.factory-story.is-visible .factory-story-grid figure { animation:factoryImageIn .85s cubic-bezier(.2,.75,.2,1) both; }
.factory-story.is-visible .factory-story-grid figure:nth-child(2) { animation-delay:120ms; }
.factory-story.is-visible .factory-story-grid figure:nth-child(3) { animation-delay:220ms; }
@keyframes factoryImageIn { from { opacity:0; transform:translateY(26px) scale(.98); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce) { .factory-story.is-visible .factory-story-grid figure { animation:none; } }

/* Global footer and conversion rail. The rail stays silent until the visitor starts reading. */
.site-footer-rich { padding:72px 0 24px; color:#dce4e3; background:#10242d; }
.footer-rich-grid { display:grid; grid-template-columns:1.35fr .72fr .84fr 1.2fr; gap:48px; padding-bottom:54px; }
.site-footer-rich section { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.site-footer-rich h3 { margin:0 0 8px; color:#fff; font-size:14px; font-weight:600; letter-spacing:.06em; }
.site-footer-rich a { color:#b9c5c7; font-size:13px; text-decoration:none; transition:color .25s ease; }
.site-footer-rich a:hover,.site-footer-rich a:focus-visible { color:#a9d759; outline:0; }
.footer-brand img { width:180px; max-height:52px; object-fit:contain; object-position:left center; filter:brightness(0) invert(1); }
.footer-brand p { max-width:300px; margin:6px 0 8px; color:#aebbbe; font-size:13px; line-height:1.8; }
.footer-action { padding:23px 26px; border:1px solid rgba(224,236,234,.22); background:rgba(255,255,255,.035); }
.footer-action p { margin:0 0 8px; color:#bdc9ca; font-size:13px; line-height:1.75; }
.footer-button { display:inline-flex; gap:26px; align-items:center; padding:11px 0 8px; color:#fff !important; border-bottom:1px solid #a9d759; }
.footer-button span { color:#a9d759; font-size:18px; }
.footer-bottom { display:flex; justify-content:space-between; gap:24px; padding-top:22px; color:#839397; border-top:1px solid rgba(224,236,234,.18); font-size:11px; letter-spacing:.03em; }

.contact-rail { position:fixed; top:50%; right:20px; z-index:40; display:grid; width:50px; overflow:visible; border-radius:25px; background:rgba(22,43,51,.9); box-shadow:0 14px 34px rgba(6,17,22,.2); opacity:0; transform:translate(110%,-50%); transition:opacity .35s ease,transform .45s cubic-bezier(.2,.75,.2,1); pointer-events:none; backdrop-filter:blur(12px); }
.contact-rail.is-visible { opacity:1; transform:translate(0,-50%); pointer-events:auto; }
.contact-rail-item { position:relative; display:grid; width:50px; height:48px; padding:0; place-items:center; color:#fff; border:0; border-bottom:1px solid rgba(232,241,238,.2); background:transparent; cursor:pointer; text-decoration:none; transition:background .25s ease; }
.contact-rail-item:first-child { border-radius:25px 25px 0 0; }.contact-rail-item:last-child { border-bottom:0; border-radius:0 0 25px 25px; background:#187fb4; }
.contact-rail-item img { width:21px; height:21px; object-fit:contain; filter:brightness(0) invert(1); }
.contact-rail-item::before { position:absolute; right:calc(100% + 10px); padding:10px 14px; color:#fff; border-radius:20px; background:#187fb4; box-shadow:0 8px 20px rgba(8,24,31,.2); content:attr(data-label); font-size:12px; letter-spacing:.02em; line-height:1; opacity:0; transform:translateX(8px); transition:opacity .2s ease,transform .2s ease; white-space:nowrap; pointer-events:none; }
.contact-rail-item:hover,.contact-rail-item:focus-visible { background:rgba(255,255,255,.12); outline:0; }.contact-rail-item:hover::before,.contact-rail-item:focus-visible::before { opacity:1; transform:none; }.rail-top { font-size:25px; font-weight:300; }.rail-top:hover,.rail-top:focus-visible { background:#0f6e9d; }

.factory-story-grid.has-printing { grid-template-columns:1.28fr repeat(3,.82fr); }
.factory-story-grid.has-printing figure img { min-height:0; }
.factory-story-grid.has-printing .factory-story-printing { overflow:hidden; }
.factory-story-grid.has-printing .factory-story-printing img { width:100%; height:100%; object-fit:cover; }
@media (max-width:1050px) { .footer-rich-grid { grid-template-columns:1.2fr 1fr 1fr; }.footer-action { grid-column:1 / -1; }.factory-story-grid.has-printing { grid-template-columns:repeat(2,1fr); } }
@media (max-width:700px) { .site-footer-rich { padding-top:52px; }.footer-rich-grid { grid-template-columns:1fr 1fr; gap:34px 22px; }.footer-brand,.footer-action { grid-column:1 / -1; }.footer-bottom { flex-direction:column; }.contact-rail { right:10px; width:45px; }.contact-rail-item { width:45px; height:44px; }.contact-rail-item::before { font-size:11px; }.factory-story-grid.has-printing { grid-template-columns:1fr; } }

/* Final content pass: video depth, background continuity and support page. */
.main-nav { gap:48px !important; }
.main-nav .nav-help { letter-spacing:.18em; }
.factory-story { position:relative; isolation:isolate; overflow:hidden; }
.factory-story-video { position:absolute; z-index:0; inset:0; width:100%; height:100%; object-fit:cover; opacity:.16; filter:saturate(.5) contrast(1.15); }
.factory-story::before { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(115deg,rgba(11,35,44,.94),rgba(11,35,44,.83)); }
.factory-story .wrap { position:relative; z-index:2; }
.factory-story-head > p:last-child { display:none; }
.about-hero { position:relative; overflow:hidden; background:#e5e4df url("assets/about-intro-background.webp") right center/auto 100% no-repeat; }
.about-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#e5e4df 0%,rgba(229,228,223,.96) 42%,rgba(229,228,223,.28) 83%,rgba(229,228,223,.08) 100%); pointer-events:none; }
.about-hero .inner-hero-grid { position:relative; z-index:1; }
.contact-details p em { display:block; margin-top:4px; color:#66767c; font-size:.86em; font-style:normal; }
.contact-google-map { grid-column:1 / -1; margin-top:20px; padding:0; border:0; background:none; }
.contact-google-map iframe { display:block; width:100%; height:430px; border:0; background:#dfe3df; }
.help-hero { padding:185px 0 105px; color:#f5f3ed; background:linear-gradient(115deg,#0c252e,#183941); }
.help-hero p { margin:0 0 22px; color:#a8cf55; font-size:12px; font-weight:700; letter-spacing:.2em; }
.help-hero h1 { margin:0; font-size:clamp(54px,6.2vw,94px); font-weight:500; letter-spacing:-.06em; }
.help-hero span { display:block; max-width:420px; margin-top:30px; color:#c2cdca; font-size:15px; line-height:1.85; }
.faq-section { padding:110px 0 150px; background:#f2f1ec; }
.faq-list { border-top:1px solid #c5ccca; }
.faq-item { border-bottom:1px solid #c5ccca; }
.faq-question { display:grid; grid-template-columns:54px 1fr 44px; align-items:center; width:100%; min-height:94px; padding:22px 0; border:0; color:#15303a; background:transparent; text-align:left; cursor:pointer; }
.faq-question span { color:#78a848; font-size:17px; font-weight:700; }.faq-question strong { font-size:clamp(19px,2vw,27px); font-weight:500; letter-spacing:-.03em; }.faq-question i { justify-self:end; width:32px; height:32px; border:1px solid #8c9d9a; border-radius:50%; color:#17303a; font:300 28px/28px Arial,sans-serif; text-align:center; transition:transform .35s ease,background .35s ease,color .35s ease; }
.faq-item.is-open .faq-question i { color:#fff; background:#2a7648; border-color:#2a7648; transform:rotate(45deg); }.faq-answer { display:grid; grid-template-rows:0fr; padding-left:54px; transition:grid-template-rows .4s ease; }.faq-answer p { min-height:0; max-width:850px; margin:0; overflow:hidden; color:#59696d; font-size:16px; line-height:1.9; }.faq-item.is-open .faq-answer { grid-template-rows:1fr; padding-bottom:30px; }
@media (max-width:900px) { .main-nav { gap:16px !important; }.contact-map-heading { grid-template-columns:1fr; }.contact-map-heading span { grid-column:1; }.contact-map-frame { height:360px; }.help-hero { padding:140px 0 75px; }.faq-section { padding:74px 0 90px; }.faq-question { grid-template-columns:36px 1fr 34px; min-height:78px; }.faq-answer { padding-left:36px; }.faq-question strong { font-size:19px; } }

/* HELP stays with the language selector rather than crowding the centred navigation. */
.header-help-link { position:absolute; right:108px; top:50%; transform:translateY(-50%); display:inline-flex; align-items:center; gap:7px; color:inherit; text-decoration:none; font-size:12px; font-weight:700; letter-spacing:.15em; transition:color .25s ease,transform .25s ease; }
.header-help-link b { display:grid; place-items:center; width:16px; height:16px; border:1px solid currentColor; border-radius:50%; font-size:10px; line-height:1; font-family:Arial,sans-serif; }
.header-help-link:hover { color:var(--acid); transform:translateY(-50%) translateY(-2px); }
.inner-header .header-help-link { color:#334249; }
.site-header.is-scrolled .header-help-link { color:#17303a; }
@media (max-width:900px) { .header-help-link { display:none; }.contact-google-map { margin-top:20px; }.contact-google-map iframe { height:340px; } }

/* Company profile: the asymmetrical editorial composition gives the exterior image room to breathe. */
.company-intro-brochure { overflow:hidden; padding:0; }
.company-intro-brochure > .wrap { width:100%; max-width:none; margin:0; padding:0; }
.company-intro-brochure .company-intro-grid { grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr); gap:0; align-items:stretch; max-width:none; }
.company-intro-brochure .company-intro-copy { display:flex; flex-direction:column; justify-content:center; min-height:660px; padding:88px max(6vw,calc((100vw - 1400px)/2)); padding-right:max(6vw,calc((100vw - 1400px)/2)); background:linear-gradient(90deg,#f1f1ee 0%,#ededeb 100%); border-top:0; }
.company-intro-brochure .company-intro-copy h2 { max-width:620px; margin:26px 0 30px; font-size:clamp(43px,4vw,64px); line-height:1.1; }
.company-eyebrow { margin:0; color:#476f39; font-size:12px; font-weight:600; letter-spacing:.16em; }
.company-intro-points { display:grid; grid-template-columns:1fr 1fr; gap:12px 28px; max-width:560px; margin:0 0 26px; color:#20353c; font-size:18px; }
.company-intro-points span::before { margin-right:9px; color:#6d9d3e; content:'•'; }
.company-intro-points span:last-child { grid-column:1 / -1; }
.company-intro-brochure .company-intro-copy>p:not(.kicker):not(.company-eyebrow) { max-width:570px; margin:0 0 28px; font-size:15px; line-height:1.9; }
.company-intro-brochure .company-intro-image { min-height:660px; height:auto; }
.company-intro-brochure .company-intro-image img { filter:saturate(.88) contrast(1.04); transition:transform 1.8s cubic-bezier(.2,.75,.2,1),filter .8s ease; }
.company-intro-brochure.is-visible .company-intro-image img { animation:companyExteriorIn 1.2s cubic-bezier(.2,.75,.2,1) both; }
.company-intro-brochure .company-intro-image:hover img { transform:scale(1.045); filter:saturate(1) contrast(1.05); }
.company-intro-brochure .company-intro-image::before { position:absolute; inset:0; z-index:1; background:linear-gradient(110deg,rgba(16,36,45,.2),transparent 46%); content:''; pointer-events:none; }
.company-intro-brochure .company-intro-image::after { height:48%; background:linear-gradient(0deg,rgba(13,31,38,.66),transparent); }
.company-intro-brochure .company-intro-image figcaption { right:32px; bottom:28px; font-size:11px; }
@keyframes companyExteriorIn { from { opacity:.35; transform:scale(1.08); } to { opacity:1; transform:scale(1); } }

.site-footer-rich { background:#476f39; }
.site-footer-rich a:hover,.site-footer-rich a:focus-visible { color:#e4f2bf; }
.footer-contact-line { width:100%; padding:13px 0 12px; border-bottom:1px solid rgba(245,255,237,.28); }
.footer-contact-line span,.footer-contact-line a { display:block; }
.footer-contact-line span { margin-bottom:5px; color:#e8f3dd; font-size:11px; letter-spacing:.08em; }
.footer-contact-line a { color:#fff; font-size:16px; font-weight:600; }
.footer-action { border-color:rgba(245,255,237,.38); background:rgba(31,67,25,.16); }
.footer-button { border-bottom-color:#d9ef9d; }.footer-button span { color:#d9ef9d; }
.footer-bottom { border-top-color:rgba(245,255,237,.28); color:#d9e2d2; }

.whatsapp-qr-card { display:flex; align-items:center; gap:16px; margin:34px 0 0; padding:15px 0 0; border-top:1px solid #c3cdca; }
.whatsapp-qr-card img { width:116px; height:116px; padding:7px; background:#fff; object-fit:contain; }
.whatsapp-qr-card figcaption { display:grid; gap:6px; color:#56666a; font-size:13px; line-height:1.55; }
.whatsapp-qr-card strong { color:#16313b; font-size:18px; font-weight:500; }
@media (max-width:900px) { .company-intro-brochure .company-intro-grid { grid-template-columns:1fr; }.company-intro-brochure .company-intro-copy { min-height:0; padding:82px 28px; }.company-intro-brochure .company-intro-image { min-height:430px; }.company-intro-points { font-size:16px; }.whatsapp-qr-card { margin-top:28px; } }

/* Exact reference structure for the homepage company introduction. */
.company-intro-reference { padding:0; background:#fff; }
.company-intro-reference-grid { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(470px,.82fr); max-width:1440px; margin:0 auto; min-height:610px; }
.company-reference-copy { padding:54px 72px 50px; background:linear-gradient(90deg,#f1f1f1,#fafafa); }
.company-reference-title { margin-bottom:58px; }
.company-reference-title p { margin:0 0 8px; color:#476f39; font-size:20px; line-height:1; }
.company-reference-title h2 { margin:0; color:#111; font-family:Arial,sans-serif; font-size:31px; font-weight:400; letter-spacing:.02em; line-height:1.1; }
.company-reference-title i { display:block; width:78px; height:4px; margin-top:17px; background:#111; }
.company-reference-points { display:grid; grid-template-columns:1fr 1fr; gap:14px 60px; max-width:540px; margin:0 0 25px; color:#202c30; font-size:20px; line-height:1.25; }
.company-reference-points span::before { margin-right:9px; color:#6d9d3e; content:'•'; }
.company-reference-description { max-width:690px; color:#39494e; font-size:14px; line-height:1.75; }
.company-reference-description p { margin:0 0 12px; }
.company-reference-link { display:inline-flex; align-items:center; gap:26px; margin-top:14px; padding:11px 0; color:#1e3036; border:1px solid #aeb8b9; border-radius:23px; font-size:13px; text-decoration:none; transition:color .25s ease,background .25s ease,border-color .25s ease; }
.company-reference-link:hover { color:#fff; border-color:#476f39; background:#476f39; }.company-reference-link span { padding-right:15px; }
.company-reference-image { position:relative; min-height:610px; margin:0; overflow:hidden; background:#dce4e2; }
.company-reference-image img { width:100%; height:100%; object-fit:cover; filter:saturate(.9) contrast(1.02); transition:transform 1.7s cubic-bezier(.2,.75,.2,1); }
.company-intro-reference.is-visible .company-reference-image img { animation:companyExteriorIn 1.1s cubic-bezier(.2,.75,.2,1) both; }
.company-reference-image:hover img { transform:scale(1.045); }
.company-reference-image::after { position:absolute; right:0; bottom:0; left:0; height:30%; background:linear-gradient(transparent,rgba(8,23,30,.44)); content:''; pointer-events:none; }
.company-reference-image figcaption { position:absolute; right:24px; bottom:20px; z-index:1; color:#fff; font-size:11px; letter-spacing:.12em; }

/* Homepage company profile: a full-width warm interlude ties the dark hero to the product chapter. */
.company-intro-reference {
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#e3e8e5 0%,#f0f1ed 100%);
}
.company-intro-reference::before {
  position:absolute;
  inset:0 0 auto;
  height:1px;
  background:rgba(16,36,45,.16);
  content:"";
}
.company-intro-reference-grid {
  grid-template-columns:minmax(0,1.12fr) minmax(520px,.88fr);
  max-width:none;
  min-height:650px;
}
.company-reference-copy {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:78px clamp(42px,8vw,176px) 76px;
  background:rgba(246,247,243,.82);
}
.company-reference-title { margin-bottom:42px; }
.company-reference-title p {
  margin-bottom:10px;
  color:#456f3a;
  font-size:21px;
  font-weight:500;
  letter-spacing:.01em;
}
.company-reference-title h2 {
  color:#172f36;
  font-size:34px;
  font-weight:500;
  letter-spacing:.04em;
}
.company-reference-title i { width:72px; height:3px; margin-top:18px; background:#27454a; }
.company-reference-points {
  max-width:610px;
  gap:18px 76px;
  margin-bottom:42px;
  color:#20383e;
  font-size:21px;
  font-weight:500;
  line-height:1.3;
}
.company-reference-points span::before { margin-right:11px; color:#63953a; }
.company-reference-description {
  max-width:720px;
  color:#405258;
  font-size:15px;
  line-height:1.86;
}
.company-reference-description p { margin-bottom:15px; }
.company-reference-link {
  min-width:166px;
  justify-content:center;
  gap:12px;
  margin-top:17px;
  padding:12px 18px;
  color:#19343a;
  border-color:#93a5a3;
  border-radius:24px;
  line-height:1;
  text-align:center;
}
.company-reference-link span { padding:0; font-size:17px; line-height:1; }
.company-reference-image { min-height:650px; background:#bfcac7; }
.company-reference-image::before {
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(23,47,54,.16),transparent 42%);
  content:"";
  pointer-events:none;
}
.company-reference-image::after { z-index:2; height:38%; background:linear-gradient(transparent,rgba(11,30,36,.48)); }
.company-reference-image figcaption { z-index:3; }
@media (max-width:900px) {
  .company-reference-grid { grid-template-columns:1fr; min-height:0; }
  .company-reference-copy { padding:62px 28px 58px; }
  .company-reference-title { margin-bottom:34px; }
  .company-reference-points { gap:16px 26px; margin-bottom:34px; font-size:18px; }
  .company-reference-image { min-height:430px; }
}
@media (max-width:900px) { .company-intro-reference-grid { grid-template-columns:1fr; }.company-reference-copy { padding:54px 28px; }.company-reference-title { margin-bottom:38px; }.company-reference-points { gap:12px 22px; font-size:17px; }.company-reference-description { font-size:14px; }.company-reference-image { min-height:400px; } }

/* Corporate culture: a restrained expanding gallery, inspired by the reference interaction rather than a card grid. */
.culture-showcase { padding:104px 0 0; background:#f4f3ef; }
.culture-showcase-heading { display:grid; justify-items:center; gap:8px; margin:0 auto 44px; color:#18343b; text-align:center; }
.culture-showcase-heading p { margin:0; color:#59833e; font-size:11px; font-weight:700; letter-spacing:.2em; }
.culture-showcase-heading h2 { margin:0; font-size:clamp(34px,3.2vw,48px); font-weight:500; letter-spacing:-.05em; }
.culture-showcase-heading span { width:46px; height:2px; margin-top:7px; background:#6f9c43; }
.culture-panels { display:flex; width:100%; height:570px; overflow:hidden; background:#0e252d; }
.culture-panel { position:relative; flex:1 1 0; min-width:0; overflow:hidden; border-right:1px solid rgba(255,255,255,.68); cursor:pointer; transition:flex-grow .78s cubic-bezier(.2,.72,.16,1),filter .55s ease; outline:0; }
.culture-panel:last-child { border-right:0; }
.culture-panel img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.68) brightness(.62); transform:scale(1.08); transition:transform 1.05s cubic-bezier(.2,.72,.16,1),filter .55s ease; }
.culture-panel::after { position:absolute; inset:0; background:linear-gradient(0deg,rgba(5,17,21,.8),rgba(5,17,21,.07) 62%); content:""; pointer-events:none; transition:background .55s ease; }
.culture-panel-overlay { position:absolute; z-index:1; right:30px; bottom:30px; left:30px; color:#fff; }
.culture-panel-overlay span { display:block; margin-bottom:13px; color:#c7e48a; font-size:11px; font-weight:700; letter-spacing:.16em; }
.culture-panel-overlay h3 { margin:0; font-size:23px; font-weight:500; letter-spacing:.02em; white-space:nowrap; }
.culture-panel-overlay p { max-width:330px; max-height:0; margin:0; overflow:hidden; color:rgba(255,255,255,.86); font-size:14px; line-height:1.75; opacity:0; transform:translateY(12px); transition:max-height .45s ease .1s,margin .4s ease .1s,opacity .3s ease .12s,transform .4s ease .1s; }
.culture-panels:hover .culture-panel:not(:hover),.culture-panel:focus ~ .culture-panel { filter:brightness(.9); }
.culture-panel:hover,.culture-panel:focus { flex-grow:2.9; }
.culture-panel:hover img,.culture-panel:focus img { filter:saturate(.91) brightness(.92); transform:scale(1.02); }
.culture-panel:hover::after,.culture-panel:focus::after { background:linear-gradient(0deg,rgba(5,17,21,.72),rgba(5,17,21,.02) 65%); }
.culture-panel:hover .culture-panel-overlay p,.culture-panel:focus .culture-panel-overlay p { max-height:80px; margin-top:12px; opacity:1; transform:none; }
.culture-panel:focus-visible { box-shadow:inset 0 0 0 3px #a7d35e; }
@media (max-width:900px) { .culture-showcase { padding-top:72px; }.culture-showcase-heading { margin-bottom:28px; }.culture-panels { display:grid; grid-template-columns:1fr 1fr; height:680px; }.culture-panel { min-height:340px; border-right:1px solid rgba(255,255,255,.68); border-bottom:1px solid rgba(255,255,255,.68); }.culture-panel:nth-child(2n) { border-right:0; }.culture-panel:nth-child(n+3) { border-bottom:0; }.culture-panel,.culture-panel:hover,.culture-panel:focus { flex-grow:1; }.culture-panel img { filter:saturate(.76) brightness(.76); }.culture-panel-overlay { right:18px; bottom:18px; left:18px; }.culture-panel-overlay h3 { font-size:19px; }.culture-panel-overlay p { display:none; } }
