:root { --ink:#0a1b2d; --blue:#0b55d8; --line:rgba(255,255,255,.24); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fff; color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { z-index:40; top:0; height:88px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 4.5vw; transition:height .25s ease,background .25s ease,box-shadow .25s ease; }
.site-header.overlay { position:fixed; inset:0 0 auto; color:white; border-bottom:1px solid var(--line); }
.site-header.solid { position:sticky; color:#0a1b2d; background:white; border-bottom:1px solid #dce4eb; }
.site-header.overlay.is-scrolled { height:74px; background:rgba(4,19,33,.94); box-shadow:0 12px 35px rgba(1,12,25,.22); backdrop-filter:blur(14px); }
.site-header.solid.is-scrolled { height:74px; box-shadow:0 10px 30px rgba(17,42,69,.1); }
.brand { justify-self:start; display:flex; align-items:center; gap:12px; letter-spacing:.06em; }
.brand-mark { display:grid; place-items:center; width:42px; height:42px; border:2px solid #fff; font-size:14px; font-weight:800; transform:skew(-8deg); }
.brand b,.brand small { display:block; }
.brand b { font-size:15px; line-height:1.1; }
.brand small { margin-top:4px; font-size:8px; letter-spacing:.2em; opacity:.72; }
nav { display:flex; gap:34px; font-size:13px; }

/* Homepage quality equipment: balance portrait and landscape evidence photos. */
.home .quality-evidence .tolerance-snapshot + div {
  align-items:start !important;
  max-width:1180px;
  margin:28px auto 0 !important;
  gap:20px !important;
}
.home .quality-evidence .tolerance-snapshot + div figure {
  min-width:0;
}
.home .quality-evidence .tolerance-snapshot + div figure,
.home .quality-evidence .tolerance-snapshot + div img {
  width:100% !important;
  height:auto !important;
}
@media (min-width:851px) {
  .home .quality-evidence .tolerance-snapshot + div {
    grid-template-columns:minmax(0,.55fr) minmax(0,1fr) !important;
  }
}
@media (max-width:850px) {
  .home .quality-evidence .tolerance-snapshot + div {
    grid-template-columns:1fr !important;
    gap:16px !important;
  }
  .home .quality-evidence .tolerance-snapshot + div figure:first-child {
    width:72% !important;
    margin-right:auto !important;
    margin-left:auto !important;
  }
}

nav a { opacity:.78; transition:.2s ease; }
nav a:hover { opacity:1; }
.desktop-nav { align-items:stretch; height:100%; }
.desktop-nav>a,.nav-item { display:flex; align-items:center; position:relative; }
.desktop-nav>a:after,.nav-item:after { content:""; position:absolute; right:0; bottom:0; left:0; height:2px; background:#70a9ff; transform:scaleX(0); transform-origin:left; transition:transform .2s ease; }
.desktop-nav>a:hover:after,.desktop-nav>a.is-active:after,.nav-item:hover:after,.nav-item.is-active:after { transform:scaleX(1); }
.nav-item>a { opacity:.78; }
.nav-caret { margin-left:6px; font-size:13px; opacity:.7; transform:translateY(-1px); }
.product-subnav { position:absolute; top:calc(100% - 1px); left:50%; width:330px; padding:11px; color:#0a1b2d; background:#fff; border:1px solid #dce4eb; box-shadow:0 22px 55px rgba(7,28,50,.2); opacity:0; visibility:hidden; transform:translate(-50%,10px); transition:opacity .2s ease,transform .2s ease,visibility .2s ease; }
.nav-item:hover .product-subnav,.nav-item:focus-within .product-subnav { opacity:1; visibility:visible; transform:translate(-50%,0); }
.product-subnav a { display:block; padding:15px 16px; border-bottom:1px solid #e3e9ef; opacity:1; }
.product-subnav a:last-child { border-bottom:0; }
.product-subnav a:hover { color:#1262e6; background:#f4f7fa; }
.product-subnav small,.product-subnav b { display:block; }
.product-subnav small { margin-bottom:7px; color:#6c83a0; font-size:8px; letter-spacing:.14em; }
.product-subnav b { font-size:12px; line-height:1.35; }
.mobile-menu { display:none; }
.header-cta { justify-self:end; padding:12px 17px; font-size:12px; font-weight:700; border:1px solid rgba(255,255,255,.65); }
.solid .brand-mark { border-color:#1262e6; color:#1262e6; }
.solid .header-cta { color:white; background:#1262e6; border-color:#1262e6; }
.header-cta span { margin-left:12px; }
.hero { position:relative; min-height:780px; height:100svh; color:#fff; overflow:hidden; background:#14263a; }
.hero-image { object-fit:cover; object-position:center 42%; }
.hero-image,.card-image img,.process-image img,.equipment-feature>img,.quality-photo img,.about-photo img,.product-photo img { position:absolute; inset:0; width:100%; height:100%; }
.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,16,31,.9) 0%,rgba(3,20,39,.58) 46%,rgba(5,18,33,.08) 82%),linear-gradient(0deg,rgba(2,12,24,.7),transparent 48%); }
.hero-content { position:relative; z-index:2; padding:190px 4.5vw 170px; width:min(890px,72vw); }
.eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 28px; font-size:12px; text-transform:uppercase; letter-spacing:.18em; color:#bcd7ff; }
.eyebrow span { width:34px; height:2px; background:#3f8cff; }
h1 { margin:0; font-size:clamp(54px,6.25vw,96px); line-height:.96; letter-spacing:-.048em; font-weight:700; }
h1 em { color:#8fb9ff; font-style:normal; }
.hero-copy { max-width:650px; margin:30px 0 34px; font-size:17px; line-height:1.7; color:rgba(255,255,255,.78); }
.hero-actions { display:flex; align-items:center; gap:34px; }
.primary-button { display:inline-flex; align-items:center; gap:40px; padding:17px 20px; background:#1262e6; font-size:13px; font-weight:700; box-shadow:0 14px 30px rgba(0,56,154,.3); }
.text-link { font-size:13px; color:rgba(255,255,255,.82); border-bottom:1px solid rgba(255,255,255,.4); padding:0 0 6px; }
.text-link span { margin-left:9px; }
.proof-bar { position:absolute; z-index:3; right:0; bottom:0; display:grid; grid-template-columns:repeat(4,minmax(150px,1fr)); width:min(920px,72vw); min-height:130px; background:rgba(3,19,36,.9); backdrop-filter:blur(12px); border-top:1px solid var(--line); }
.proof-bar div { display:flex; align-items:center; gap:13px; padding:26px; border-left:1px solid var(--line); }
.proof-bar strong { font-size:27px; color:#8fb9ff; letter-spacing:-.04em; }
.proof-bar span { font-size:10px; line-height:1.5; text-transform:uppercase; letter-spacing:.08em; color:rgba(255,255,255,.62); }
.section-pad { padding:115px 5vw; }
.section-kicker { display:flex; align-items:center; gap:13px; margin-bottom:42px; color:#65778a; font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.section-kicker span { color:#1262e6; }
.section-kicker:after { content:""; width:54px; height:1px; background:#bdc8d4; }
.section-kicker.light { color:#93a8be; }
.section-kicker.light:after { background:#40546a; }
h2 { margin:0; font-size:clamp(42px,4.5vw,72px); line-height:1.04; letter-spacing:-.045em; }
h2 em { color:#1262e6; font-style:normal; }
.intro { background:#f4f7fa; }
.intro-grid { display:grid; grid-template-columns:1.05fr .8fr; align-items:end; gap:8vw; }
.intro-copy { max-width:620px; padding-bottom:6px; }
.intro-copy p,.equipment-head p,.about-copy>p,.rfq-copy>p { margin:0 0 28px; color:#617286; font-size:16px; line-height:1.8; }
.blue-link { display:inline-flex; gap:55px; padding-bottom:7px; color:#1262e6; font-size:13px; font-weight:700; border-bottom:1px solid #1262e6; }
.capability-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:70px; }
.cap-card { position:relative; background:#fff; border:1px solid #dce4eb; overflow:hidden; transition:transform .25s ease,box-shadow .25s ease; }
.cap-card:hover { transform:translateY(-5px); box-shadow:0 20px 45px rgba(17,42,69,.1); }
.card-image { position:relative; height:auto; aspect-ratio:4 / 3; overflow:hidden; background:#e7ebef; }
.card-image img { object-fit:cover; transition:transform .5s ease; }
.cap-card:hover .card-image img { transform:scale(1.025); }
.cap-main { background:#0a2a54; color:white; border-color:#0a2a54; }
.cap-content { position:relative; min-height:285px; padding:31px; }
.cap-content>span,.quality-card>span,.contact-card>span { color:#1262e6; font-size:9px; letter-spacing:.17em; font-weight:800; }
.cap-main .cap-content>span { color:#8fb9ff; }
.cap-content h3 { margin:13px 0; font-size:22px; letter-spacing:-.02em; }
.cap-content p { margin:0; color:#687a8d; font-size:13px; line-height:1.75; }
.cap-main .cap-content p { color:#b3c4d7; }
.cap-tags { display:block; margin-top:21px; color:#7890a7; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.cap-main .cap-tags { color:#8fb9bf; }
.card-link { display:inline-block; margin-top:21px; color:#1262e6; font-size:11px; font-weight:700; border-bottom:1px solid currentColor; padding-bottom:4px; }
.cap-main .card-link { color:#9cc2ff; }
.cap-content b { position:absolute; right:28px; bottom:23px; font-size:38px; color:#e4eaf0; }
.cap-main .cap-content b { color:#194275; }
.component-map { background:#f4f7fa; border-top:1px solid #dce4eb; }
.component-map-head { display:grid; grid-template-columns:1.05fr .8fr; align-items:end; gap:8vw; }
.component-map-head>div { max-width:620px; padding-bottom:6px; }
.component-map-head p { margin:0 0 28px; color:#617286; font-size:16px; line-height:1.8; }
.component-range-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:65px; border-top:1px solid #cbd7e1; border-left:1px solid #cbd7e1; }
.component-range-grid>a { position:relative; min-height:300px; padding:30px 28px 70px; background:#fff; border-right:1px solid #cbd7e1; border-bottom:1px solid #cbd7e1; transition:background .25s ease,color .25s ease,transform .25s ease; }
.component-range-grid>a:hover { z-index:1; color:#fff; background:#0a2a54; transform:translateY(-4px); }
.component-range-grid small { color:#1262e6; font-size:8px; font-weight:800; letter-spacing:.15em; }
.component-range-grid h3 { margin:43px 0 15px; font-size:21px; line-height:1.18; letter-spacing:-.025em; }
.component-range-grid p { margin:0; color:#687a8d; font-size:12px; line-height:1.72; }
.component-range-grid>a:hover p { color:#afc0d1; }
.component-range-grid>a>span { position:absolute; right:28px; bottom:28px; left:28px; color:#1262e6; font-size:10px; font-weight:800; }
.component-range-grid>a:hover>span { color:#8fb9ff; }
.work-samples { background:#fff; }
.work-samples-head { display:grid; grid-template-columns:1.05fr .8fr; align-items:end; gap:8vw; }
.work-samples-head>div { max-width:620px; padding-bottom:6px; }
.work-samples-head p { margin:0 0 28px; color:#617286; font-size:16px; line-height:1.8; }
.sample-gallery { display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:300px; gap:16px; margin-top:65px; }
.sample-gallery figure { position:relative; margin:0; overflow:hidden; background:#dfe6ec; }
.sample-gallery .sample-wide { grid-column:span 2; }
.sample-gallery img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .55s ease; }
.sample-gallery figure:hover img { transform:scale(1.025); }
.sample-gallery figure:after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(3,17,31,.9)); }
.sample-gallery figcaption { position:absolute; z-index:2; right:25px; bottom:23px; left:25px; color:#fff; }
.sample-gallery figcaption strong,.sample-gallery figcaption span { display:block; }
.sample-gallery figcaption strong { font-size:17px; letter-spacing:-.01em; }
.sample-gallery figcaption span { margin-top:7px; color:#b9cadb; font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.sample-note { margin:18px 0 0; color:#7a8b9d; font-size:10px; line-height:1.6; }
.workflow { color:white; background:#071c32; }
.workflow-head { display:grid; grid-template-columns:1.15fr .65fr; align-items:end; gap:9vw; }
.workflow-head h2 em { color:#8fb9ff; }
.workflow-head p { margin:0 0 8px; color:#9fb2c6; font-size:15px; line-height:1.8; }
.workflow-steps { display:grid; grid-template-columns:repeat(5,1fr); margin-top:65px; border-top:1px solid #30475e; border-bottom:1px solid #30475e; }
.workflow-steps article { min-height:250px; padding:32px 26px; border-left:1px solid #30475e; }
.workflow-steps article:first-child { border-left:0; }
.workflow-steps span { color:#5d91d8; font-size:10px; font-weight:800; }
.workflow-steps h3 { margin:55px 0 16px; font-size:18px; }
.workflow-steps p { margin:0; color:#91a6bb; font-size:11px; line-height:1.7; }
.quality-evidence { background:#fff; }
.quality-evidence-head { display:grid; grid-template-columns:1.05fr .8fr; align-items:end; gap:8vw; }
.quality-evidence-head>p { max-width:620px; margin:0 0 6px; color:#617286; font-size:16px; line-height:1.8; }
.quality-evidence-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:22px; margin-top:65px; }
.quality-evidence-photo { position:relative; min-height:600px; margin:0; overflow:hidden; background:#e9eef3; }
.quality-evidence-photo img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.quality-evidence-photo:after { content:""; position:absolute; inset:58% 0 0; background:linear-gradient(transparent,rgba(3,17,31,.9)); }
.quality-evidence-photo figcaption { position:absolute; z-index:2; right:32px; bottom:30px; left:32px; color:#fff; }
.quality-evidence-photo figcaption strong,.quality-evidence-photo figcaption span { display:block; }
.quality-evidence-photo figcaption strong { font-size:23px; }
.quality-evidence-photo figcaption span { margin-top:8px; color:#b8cadb; font-size:9px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
.quality-checkpoints { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #cbd7e1; border-left:1px solid #cbd7e1; }
.quality-checkpoints article { min-height:289px; padding:34px 31px; border-right:1px solid #cbd7e1; border-bottom:1px solid #cbd7e1; }
.quality-checkpoints small { color:#1262e6; font-size:8px; font-weight:800; letter-spacing:.16em; }
.quality-checkpoints h3 { margin:48px 0 15px; font-size:21px; letter-spacing:-.025em; }
.quality-checkpoints p { margin:0; color:#687a8d; font-size:12px; line-height:1.75; }
.tolerance-snapshot { display:grid; grid-template-columns:repeat(4,1fr); margin-top:22px; color:#fff; background:#071c32; border-top:1px solid #30475e; border-left:1px solid #30475e; }
.tolerance-snapshot>div { min-height:245px; padding:31px 28px; border-right:1px solid #30475e; border-bottom:1px solid #30475e; }
.tolerance-snapshot span,.tolerance-snapshot strong,.tolerance-snapshot small { display:block; }
.tolerance-snapshot span { color:#6f9bd7; font-size:8px; font-weight:800; letter-spacing:.15em; }
.tolerance-snapshot strong { margin:34px 0 10px; color:#fff; font-size:32px; letter-spacing:-.035em; }
.tolerance-snapshot small { color:#91a6bb; font-size:10px; line-height:1.5; }
.quality-caveat { max-width:980px; margin:22px 0 0; color:#718397; font-size:10px; line-height:1.7; }
.process { display:grid; grid-template-columns:.92fr 1.08fr; min-height:800px; background:#071c32; color:white; }
.process-image { position:relative; min-height:680px; }
.process-image img { object-fit:cover; }
.process-copy { padding:105px 8vw 80px 7vw; }
.process-copy h2 em,.industries h2 em,.rfq h2 em { color:#8fb9ff; }
.process-copy>p { max-width:630px; margin:28px 0 42px; color:#a9b9ca; font-size:15px; line-height:1.8; }
.process-list { border-top:1px solid #30475e; }
.process-list div { display:grid; grid-template-columns:38px 160px 1fr; align-items:center; gap:15px; padding:21px 0; border-bottom:1px solid #30475e; }
.process-list span { color:#5d85b1; font-size:12px; }
.process-list b { font-size:14px; }
.process-list small { color:#90a3b7; font-size:11px; line-height:1.45; }
.equipment { background:white; }
.equipment-head { display:grid; grid-template-columns:1.2fr .65fr; align-items:end; gap:9vw; }
.equipment-grid { display:grid; grid-template-columns:1.35fr .75fr; gap:22px; margin-top:65px; }
.machine-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:65px; }
.machine-card { overflow:hidden; background:#f4f7fa; border:1px solid #dce4eb; }
.machine-photo { height:430px; padding:22px; background:#e8edf2; }
.machine-photo img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.machine-copy { min-height:205px; padding:28px 30px 32px; background:white; }
.machine-copy span { color:#1262e6; font-size:9px; font-weight:800; letter-spacing:.17em; }
.machine-copy h3 { margin:14px 0 13px; font-size:24px; letter-spacing:-.025em; }
.machine-copy p { margin:0; color:#687a8d; font-size:12px; line-height:1.7; }
.equipment-feature { position:relative; min-height:560px; overflow:hidden; background:#17283a; }
.equipment-feature img { object-fit:cover; }
.equipment-feature:after { content:""; position:absolute; inset:40% 0 0; background:linear-gradient(transparent,rgba(2,17,33,.92)); }
.equipment-feature>div { position:absolute; z-index:2; left:40px; right:40px; bottom:38px; color:white; }
.equipment-feature span { font-size:9px; letter-spacing:.18em; color:#9cc2ff; }
.equipment-feature h3 { margin:10px 0 9px; font-size:31px; }
.equipment-feature p { margin:0; color:#bdcad7; font-size:13px; }
.quality-card { padding:0 36px 34px; background:#f1f5f9; }
.quality-photo { position:relative; height:260px; margin:0 -36px 32px; }
.quality-photo img { object-fit:cover; }
.quality-card h3 { margin:13px 0 25px; font-size:27px; line-height:1.18; }
.quality-card ul { margin:0; padding:0; list-style:none; }
.quality-card li { padding:13px 0; color:#617286; font-size:12px; border-top:1px solid #d1dce6; }
.quality-card li:before { content:"✓"; color:#1262e6; margin-right:10px; }
.equipment-stats { display:grid; grid-template-columns:repeat(5,1fr); margin-top:22px; border:1px solid #dce4eb; }
.equipment-stats div { display:flex; align-items:center; gap:13px; min-height:92px; padding:20px 24px; border-left:1px solid #dce4eb; }
.equipment-stats div:first-child { border-left:0; }
.equipment-stats strong { color:#1262e6; font-size:28px; }
.equipment-stats span { color:#687a8d; font-size:10px; line-height:1.4; text-transform:uppercase; letter-spacing:.07em; }
.industries { color:white; background:#0a2a54; }
.industries-head { padding-bottom:75px; }
.industry-row { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.18); }
.industry-row>div { min-height:270px; padding:42px 3vw; border-left:1px solid rgba(255,255,255,.18); }
.industry-row>div:first-child { border-left:0; }
.industry-row span { color:#5e91d7; font-size:10px; }
.industry-row h3 { margin:45px 0 16px; font-size:20px; }
.industry-row p { margin:0; color:#a8bbcf; font-size:12px; line-height:1.7; }
.market-proof { background:#f4f7fa; }
.market-proof-head { display:grid; grid-template-columns:1.05fr .8fr; align-items:end; gap:8vw; }
.market-proof-head>div { max-width:660px; padding-bottom:6px; }
.market-proof-head p { margin:0 0 28px; color:#617286; font-size:15px; line-height:1.8; }
.project-profile-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:65px; border-top:1px solid #cbd7e1; border-left:1px solid #cbd7e1; }
.project-profile-grid article { position:relative; min-height:360px; padding:32px 29px 78px; background:#fff; border-right:1px solid #cbd7e1; border-bottom:1px solid #cbd7e1; }
.project-profile-grid small { color:#1262e6; font-size:8px; font-weight:800; letter-spacing:.15em; }
.project-profile-grid h3 { margin:54px 0 16px; font-size:21px; line-height:1.2; letter-spacing:-.025em; }
.project-profile-grid p { margin:0; color:#687a8d; font-size:12px; line-height:1.75; }
.project-profile-grid article>span { position:absolute; right:29px; bottom:28px; left:29px; color:#8293a4; font-size:8px; font-weight:700; line-height:1.5; letter-spacing:.08em; text-transform:uppercase; }
.buyer-support { color:#fff; background:#071c32; }
.buyer-support h2 em { color:#8fb9ff; }
.buyer-support-head { display:grid; grid-template-columns:1.05fr .8fr; align-items:end; gap:8vw; }
.buyer-support-head>p { max-width:620px; margin:0 0 6px; color:#9fb2c6; font-size:16px; line-height:1.8; }
.buyer-support-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:65px; border-top:1px solid #30475e; border-left:1px solid #30475e; }
.buyer-support-grid article { min-height:285px; padding:32px 29px; border-right:1px solid #30475e; border-bottom:1px solid #30475e; }
.buyer-support-grid span { color:#5d91d8; font-size:10px; font-weight:800; }
.buyer-support-grid h3 { margin:54px 0 15px; font-size:20px; }
.buyer-support-grid p { margin:0; color:#91a6bb; font-size:11px; line-height:1.75; }
.buyer-support-bottom { display:flex; align-items:center; justify-content:space-between; gap:40px; margin-top:22px; padding:28px 30px; background:#0a2a54; }
.buyer-support-bottom>div { display:flex; flex-direction:column; gap:8px; }
.buyer-support-bottom strong { font-size:14px; }
.buyer-support-bottom span { color:#a9bed3; font-size:11px; line-height:1.6; }
.buyer-support-bottom .primary-button { flex:0 0 auto; }
.about { display:grid; grid-template-columns:.85fr 1fr; align-items:center; gap:8vw; background:#f4f7fa; }
.about-photo { position:relative; min-height:0; aspect-ratio:4 / 3; box-shadow:35px 35px 0 #dae5f0; }
.about-photo img { object-fit:cover; }
.about-copy { padding-right:4vw; }
.about-copy h2 { margin-bottom:31px; }
.about-points { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; padding-top:12px; }
.about-points div { padding-top:20px; border-top:2px solid #1262e6; }
.about-points strong,.about-points span { display:block; }
.about-points strong { font-size:21px; }
.about-points span { margin-top:7px; color:#77889a; font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.certification-proof { display:grid; grid-template-columns:92px 1fr; gap:20px; align-items:center; margin-top:28px; padding:18px; background:#fff; border:1px solid #d7e0e8; }
.certification-proof>a { display:block; height:116px; overflow:hidden; background:#edf1f4; }
.certification-proof img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.certification-proof span,.certification-proof strong { display:block; }
.certification-proof span { color:#1262e6; font-size:8px; font-weight:800; letter-spacing:.16em; }
.certification-proof strong { margin:8px 0; font-size:18px; }
.certification-proof p { margin:0; color:#687a8d; font-size:10px; line-height:1.65; }
.about-copy .small-note { margin-top:28px; font-size:10px; line-height:1.55; }
.faq-section { background:#fff; }
.faq-layout,.detail-faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:9vw; align-items:start; }
.faq-layout>div:first-child>p { max-width:500px; margin:28px 0 0; color:#687a8d; font-size:14px; line-height:1.8; }
.faq-list { border-top:1px solid #cdd8e2; }
.faq-list details { border-bottom:1px solid #cdd8e2; }
.faq-list summary { position:relative; padding:23px 44px 23px 0; cursor:pointer; list-style:none; color:#173653; font-size:15px; font-weight:700; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary:after { content:"+"; position:absolute; right:6px; top:20px; color:#1262e6; font-size:23px; font-weight:400; }
.faq-list details[open] summary:after { content:"−"; }
.faq-list details p { margin:0; padding:0 46px 25px 0; color:#687a8d; font-size:13px; line-height:1.75; }
.rfq { display:grid; grid-template-columns:1.3fr .7fr; gap:10vw; color:white; background:#071c32; }
.rfq-copy>p { max-width:650px; margin-top:28px; color:#9fb2c6; }
.rfq-button { display:inline-flex; align-items:center; justify-content:space-between; min-width:260px; margin-top:12px; padding:18px 20px; background:#1262e6; font-size:13px; font-weight:700; }
.contact-card { align-self:end; padding:39px; background:#fff; color:#0a1b2d; }
.contact-card h3 { margin:13px 0 22px; font-size:29px; }
.contact-card a { display:block; padding:10px 0; color:#315372; font-size:13px; border-bottom:1px solid #e2e8ef; }
.contact-card a b,.contact-card a small { display:block; }
.contact-card a b { color:#193954; font-size:11px; }
.contact-card a small { margin-top:5px; color:#60768b; font-size:11px; }
.contact-card address { margin-top:22px; color:#687a8d; font-size:11px; line-height:1.65; font-style:normal; }
.site-footer { color:#a4b4c5; background:#041321; border-top:1px solid #1e344a; }
.footer-main { display:grid; grid-template-columns:1.35fr 1fr .75fr 1fr; gap:5vw; padding:72px 5vw 62px; }
.footer-brand { color:white; }
.footer-brand .brand-mark { border-color:#fff; }
.footer-company>p { max-width:410px; margin:28px 0; color:#8297ab; font-size:12px; line-height:1.75; }
.footer-cert { display:inline-flex; flex-direction:column; gap:6px; padding:14px 17px; border:1px solid #294057; }
.footer-cert span { color:#8fb9ff; font-size:11px; font-weight:800; letter-spacing:.08em; }
.footer-cert small { color:#8ea1b4; font-size:9px; line-height:1.4; }
.footer-column,.footer-contact { display:flex; flex-direction:column; align-items:flex-start; }
.footer-column>span,.footer-contact>span { margin-bottom:25px; color:#6f9bd7; font-size:9px; font-weight:800; letter-spacing:.17em; }
.footer-column>a,.footer-contact>a:not(.footer-rfq) { padding:7px 0; color:#b7c4d0; font-size:11px; line-height:1.55; }
.footer-column>a:hover,.footer-contact>a:hover { color:#fff; }
.footer-contact strong { margin-bottom:5px; color:#fff; font-size:18px; }
.footer-contact>small { margin:9px 0 1px; color:#6f9bd7; font-size:8px; font-weight:800; letter-spacing:.11em; }
.footer-contact address { margin:17px 0 19px; color:#8297ab; font-size:10px; line-height:1.7; font-style:normal; }
.footer-rfq { display:flex; justify-content:space-between; gap:30px; min-width:205px; padding:14px 16px; color:#fff; background:#1262e6; font-size:11px; font-weight:700; }
.footer-bottom { display:flex; justify-content:space-between; gap:30px; padding:21px 5vw; border-top:1px solid #1e344a; }
.footer-bottom p { margin:0; color:#72879a; font-size:9px; line-height:1.5; letter-spacing:.05em; }

.blog-archive { background:#f4f7fa; }
.post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.post-card { min-height:360px; padding:38px; background:#fff; border:1px solid #dce4eb; }
.post-card>span { color:#1262e6; font-size:9px; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
.post-card h2 { margin:22px 0 18px; font-size:30px; line-height:1.12; letter-spacing:-.03em; }
.post-card p { margin:0 0 30px; color:#687a8d; font-size:13px; line-height:1.75; }
.article-hero { padding:105px 12vw 115px; color:#fff; background:#071c32; }
.article-hero h1 { max-width:1050px; font-size:clamp(48px,5.5vw,82px); }
.article-hero>p { max-width:760px; margin:30px 0 0; color:#a9b9ca; font-size:17px; line-height:1.8; }
.article-content { max-width:850px; margin:0 auto; padding:95px 30px 110px; color:#334b62; font-size:17px; line-height:1.85; }
.article-content h2 { margin:55px 0 20px; color:#0a1b2d; font-size:36px; line-height:1.18; }
.article-content p { margin:0 0 24px; }
.article-content ul { margin:0 0 28px; padding-left:22px; }
.article-content li { margin:10px 0; }
.generic-page { min-height:420px; }
.error-button { margin-top:35px; }
.navigation.pagination { margin-top:45px; }
.nav-links { display:flex; gap:8px; }
.nav-links .page-numbers { display:grid; place-items:center; min-width:40px; height:40px; padding:0 10px; border:1px solid #ccd7e1; font-size:12px; }
.nav-links .current { color:white; background:#1262e6; border-color:#1262e6; }
.admin-bar .site-header.overlay,.admin-bar .site-header.solid { top:32px; }

.inner-hero { padding:105px 5vw 115px; color:white; background:#071c32; }
.inner-hero h1 { max-width:1050px; }
.inner-hero h1 em { color:#8fb9ff; }
.inner-hero>p { max-width:700px; margin:30px 0 0; color:#a9b9ca; font-size:16px; line-height:1.8; }
.product-page { background:#f4f7fa; }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.product-item { background:white; border:1px solid #dce4eb; }
.product-photo { position:relative; height:280px; overflow:hidden; background:#dfe6ec; }
.product-photo img { object-fit:cover; }
.product-body { min-height:220px; padding:29px; }
.product-body>span { color:#1262e6; font-size:10px; letter-spacing:.12em; }
.product-body h2 { margin:20px 0 13px; font-size:25px; letter-spacing:-.025em; }
.product-body p { margin:0; color:#687a8d; font-size:13px; line-height:1.7; }
.product-core-grid { grid-template-columns:repeat(3,1fr); }
.product-link-item { display:block; transition:transform .25s ease,box-shadow .25s ease; }
.product-link-item:hover { transform:translateY(-5px); box-shadow:0 20px 45px rgba(17,42,69,.1); }
.product-link-item .product-photo { aspect-ratio:4 / 3; height:auto; }
.product-link-item .product-body { min-height:250px; }
.product-link-item .product-body strong { display:inline-block; margin-top:24px; color:#1262e6; font-size:11px; border-bottom:1px solid #1262e6; padding-bottom:4px; }
.component-index { background:#fff; }
.component-index-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #cdd8e2; border-bottom:1px solid #cdd8e2; }
.component-index-grid>div { min-height:210px; padding:34px 3vw; border-left:1px solid #cdd8e2; }
.component-index-grid>div:first-child { border-left:0; }
.component-index-grid h2 { font-size:24px; letter-spacing:-.025em; }
.component-index-grid p { margin:20px 0 0; color:#687a8d; font-size:13px; line-height:1.75; }
.spec-band { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; padding-top:0; padding-bottom:0; background:#dce4eb; }
.spec-band>div { min-height:190px; padding:43px 3vw; background:#fff; }
.spec-band span,.contact-label { display:block; margin-bottom:19px; color:#1262e6; font-size:11px; font-weight:800; letter-spacing:.14em; }
.spec-band strong { font-size:15px; line-height:1.7; }
.page-cta { text-align:center; color:white; background:#0a2a54; }
.page-cta h2 { font-size:clamp(38px,4vw,58px); }
.page-cta p { max-width:650px; margin:20px auto 28px; color:#adbed1; line-height:1.7; }

/* ════════════════════════════════════════════════════════════════════════
   CONTACT PAGE — full redesign
   ════════════════════════════════════════════════════════════════════════ */

/* ─── Hero V2 ─────────────────────────────────────────────────────────── */
.contact-hero-v2 {
  background:#071c32;
  color:#fff;
  padding:100px 5vw 0;
}
.chv2-inner {
  max-width:1200px;
  margin:0 auto;
}
.chv2-copy {
  max-width:820px;
  padding-bottom:72px;
}
.chv2-copy h1 {
  font-size:clamp(52px,5.8vw,92px);
  line-height:1.05;
  letter-spacing:-.03em;
  margin:26px 0 28px;
}
.chv2-copy h1 em { color:#8fb9ff; font-style:italic; }
.chv2-copy p {
  font-size:17px;
  color:#a9b9ca;
  line-height:1.8;
  max-width:620px;
  margin:0;
}

/* Trust stats strip */
.chv2-trust {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(255,255,255,.1);
  margin-top:0;
}
.chv2-stat {
  padding:28px 0 30px;
  border-right:1px solid rgba(255,255,255,.08);
  padding-right:32px;
  padding-left:0;
}
.chv2-stat:last-child { border-right:0; }
.chv2-stat strong {
  display:block;
  font-size:22px;
  font-weight:800;
  color:#fff;
  letter-spacing:-.02em;
  margin-bottom:5px;
}
.chv2-stat span {
  font-size:12px;
  color:#6b86a0;
  line-height:1.5;
}

/* ─── Contact Body (2-col: dark panel + form) ─────────────────────────── */
.contact-body {
  display:grid;
  grid-template-columns:380px 1fr;
  min-height:600px;
}

/* LEFT: Dark panel */
.contact-panel {
  background:#071c32;
  color:#fff;
  position:relative;
}
.contact-panel::after {
  content:'';
  position:absolute;
  top:0; right:-1px; bottom:0;
  width:1px;
  background:linear-gradient(to bottom, rgba(255,255,255,.06) 0%, rgba(255,255,255,.12) 50%, rgba(255,255,255,.06) 100%);
}
.cpanel-inner {
  padding:56px 44px 60px;
  position:sticky;
  top:0;
}
.cpanel-label {
  font-size:9px;
  font-weight:800;
  letter-spacing:.18em;
  color:#4a6a8a;
  text-transform:uppercase;
  margin-bottom:16px;
}
.cpanel-block {
  margin-bottom:36px;
}
.cpanel-lines { margin-top:0; }
.cpanel-line {
  display:block;
  padding:16px 0;
  border-bottom:1px solid rgba(255,255,255,.07);
  text-decoration:none;
  transition:background .15s;
}
.cpanel-line:first-child { border-top:1px solid rgba(255,255,255,.07); }
.cpanel-line span {
  display:block;
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  color:#4a6a8a;
  text-transform:uppercase;
  margin-bottom:6px;
}
.cpanel-line strong {
  display:block;
  font-size:14px;
  color:#c8daea;
  font-weight:500;
  line-height:1.4;
}
.cpanel-line:hover strong { color:#fff; }
.cpanel-address {
  font-style:normal;
  font-size:14px;
  color:#8aaabf;
  line-height:1.85;
  margin:0;
}
.cpanel-text {
  font-size:13px;
  color:#8aaabf;
  line-height:1.8;
  margin:0;
}
.cpanel-divider {
  height:1px;
  background:rgba(255,255,255,.07);
  margin:4px 0 36px;
}
.cpanel-list {
  margin:0;
  padding:0;
  list-style:none;
}
.cpanel-list li {
  position:relative;
  padding:8px 0 8px 18px;
  font-size:13px;
  color:#7a9ab5;
  line-height:1.55;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.cpanel-list li:last-child { border-bottom:0; }
.cpanel-list li::before {
  content:'→';
  position:absolute;
  left:0;
  top:9px;
  color:#2d6ae0;
  font-size:10px;
  font-weight:700;
}
.cpanel-nda {
  margin:18px 0 0;
  padding:12px 14px;
  background:rgba(18,98,230,.12);
  border-left:2px solid #2d6ae0;
  border-radius:0 3px 3px 0;
  font-size:12px;
  color:#7baad0;
  line-height:1.6;
}

/* RIGHT: Form area */
.contact-form-area {
  background:#f4f7fa;
  display:flex;
  flex-direction:column;
}
.cfa-header {
  padding:56px 56px 0;
  max-width:640px;
}
.cfa-header .contact-label { margin-bottom:16px; }
.cfa-header h2 {
  font-size:clamp(32px,3.2vw,48px);
  line-height:1.12;
  letter-spacing:-.03em;
  margin:0 0 16px;
  color:#0a1f38;
}
.cfa-header p {
  font-size:15px;
  color:#617286;
  line-height:1.75;
  margin:0;
}
.cfa-header a { color:#1262e6; font-weight:600; }
.cfa-form {
  flex:1;
  padding:36px 56px 56px;
}

/* ─── CF7 Form Fields ─────────────────────────────────────────────────── */
.cfa-form .wpcf7 { margin:0; }
.cfa-form .wpcf7-form { display:flex; flex-direction:column; gap:0; }

.hc-form-row { margin-bottom:20px; }
.hc-form-half {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-bottom:20px;
}
.hc-field-wrap { margin-bottom:0; }

/* Kill CF7 default <p> spacing  */
.cfa-form .wpcf7-form p,
.hc-form-row p,
.hc-field-wrap p { margin:0; padding:0; display:contents; }

/* Labels */
.cfa-form label {
  display:flex;
  flex-direction:column;
  font-size:11px;
  font-weight:700;
  color:#3e5567;
  letter-spacing:.07em;
  text-transform:uppercase;
  cursor:pointer;
}
.cfa-form label abbr {
  color:#1262e6;
  text-decoration:none;
  margin-left:2px;
}

/* All text inputs, email, tel */
.cfa-form input[type="text"],
.cfa-form input[type="email"],
.cfa-form input[type="tel"] {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:8px;
  padding:13px 16px;
  font-size:14px;
  color:#0d1e2e;
  font-family:inherit;
  background:#fff;
  border:1.5px solid #d6e1ec;
  border-radius:5px;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease;
  -webkit-appearance:none;
  appearance:none;
}

/* Select */
.cfa-form select {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:8px;
  padding:13px 40px 13px 16px;
  font-size:14px;
  color:#0d1e2e;
  font-family:inherit;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231262e6' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center;
  border:1.5px solid #d6e1ec;
  border-radius:5px;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease;
  -webkit-appearance:none;
  appearance:none;
  cursor:pointer;
}

/* Textarea */
.cfa-form textarea {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:8px;
  padding:13px 16px;
  font-size:14px;
  color:#0d1e2e;
  font-family:inherit;
  background:#fff;
  border:1.5px solid #d6e1ec;
  border-radius:5px;
  outline:none;
  resize:vertical;
  min-height:120px;
  line-height:1.65;
  transition:border-color .18s ease, box-shadow .18s ease;
  -webkit-appearance:none;
  appearance:none;
}

/* Focus state */
.cfa-form input[type="text"]:focus,
.cfa-form input[type="email"]:focus,
.cfa-form input[type="tel"]:focus,
.cfa-form select:focus,
.cfa-form textarea:focus {
  border-color:#1262e6;
  box-shadow:0 0 0 3px rgba(18,98,230,.12);
  background:#fff;
}

/* File upload */
.hc-form-row .wpcf7-file,
.cfa-form input[type="file"] {
  display:block;
  width:100%;
  box-sizing:border-box;
  margin-top:8px;
  padding:16px;
  font-size:13px;
  color:#5e7588;
  background:#fff;
  border:1.5px dashed #c0d0e0;
  border-radius:5px;
  cursor:pointer;
  transition:border-color .18s;
}
.hc-form-row .wpcf7-file:hover,
.cfa-form input[type="file"]:hover { border-color:#1262e6; }
.hc-file-hint {
  display:block;
  margin-top:7px;
  font-size:11px;
  color:#8da0b4;
  line-height:1.55;
}

/* Submit */
.cfa-form input[type="submit"],
.cfa-form .wpcf7-submit {
  display:block;
  width:100%;
  margin-top:14px;
  padding:17px 28px;
  background:#1262e6;
  color:#fff;
  font-family:inherit;
  font-size:15px;
  font-weight:700;
  letter-spacing:.03em;
  border:none;
  border-radius:5px;
  cursor:pointer;
  transition:background .2s ease, transform .15s ease, box-shadow .2s ease;
}
.cfa-form input[type="submit"]:hover,
.cfa-form .wpcf7-submit:hover {
  background:#0a4fbf;
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(18,98,230,.32);
}
.cfa-form .wpcf7-spinner { display:none !important; }

/* Validation */
.cfa-form .wpcf7-not-valid-tip {
  display:block;
  color:#d93025;
  font-size:11px;
  margin-top:5px;
  font-weight:600;
}
.cfa-form .wpcf7-response-output {
  margin:18px 0 0 !important;
  padding:16px 20px !important;
  font-size:13px !important;
  line-height:1.65 !important;
  border-radius:5px !important;
  border:0 !important;
  border-left:3px solid #1262e6 !important;
  background:#edf3fb;
  color:#2a4d7a;
}
.cfa-form .wpcf7-mail-sent-ok {
  background:#edf8f2 !important;
  border-left-color:#2a9d6e !important;
  color:#17533a !important;
}
.cfa-form .wpcf7-validation-errors,
.cfa-form .wpcf7-acceptance-missing {
  background:#fff8f0 !important;
  border-left-color:#e07b25 !important;
  color:#7a3d0a !important;
}

/* ─── Steps V2 ────────────────────────────────────────────────────────── */
.contact-steps-v2 { background:#fff; padding:100px 5vw; }
.csv2-inner { max-width:1160px; margin:0 auto; }
.csv2-inner h2 {
  font-size:clamp(36px,3.8vw,58px);
  letter-spacing:-.03em;
  margin:0 0 64px;
  line-height:1.1;
}
.csv2-inner h2 em { color:#1262e6; font-style:italic; }
.csv2-steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:2px;
  background:#e4edf5;
  border-radius:8px;
  overflow:hidden;
}
.csv2-step {
  background:#fff;
  padding:44px 36px;
  display:grid;
  grid-template-columns:56px 1fr;
  gap:24px;
  align-items:start;
}
.csv2-num {
  font-size:44px;
  font-weight:800;
  color:#e4edf5;
  line-height:1;
  padding-top:4px;
}
.csv2-content h3 {
  font-size:17px;
  font-weight:700;
  color:#0d1e2e;
  margin:0 0 14px;
  line-height:1.35;
}
.csv2-content p {
  font-size:14px;
  color:#6d8096;
  line-height:1.8;
  margin:0;
}

/* Keep old rfq-checklist class from breaking responsive */
.rfq-checklist { padding:48px 34px; background:#fff; box-shadow:0 18px 45px rgba(17,42,69,.08); }

/* ─── Responsive ──────────────────────────────────────────────────────── */
@media(max-width:1100px) {
  .contact-body { grid-template-columns:1fr; }
  .contact-panel::after { display:none; }
  .cpanel-inner { position:static; padding:48px 5vw 40px; }
  .contact-panel { border-bottom:1px solid rgba(255,255,255,.08); }
  .cfa-header { padding:48px 5vw 0; max-width:100%; }
  .cfa-form { padding:32px 5vw 56px; }
  .chv2-trust { grid-template-columns:1fr 1fr; }
  .chv2-stat:nth-child(2) { border-right:0; }
}
@media(max-width:700px) {
  .chv2-copy h1 { font-size:46px; }
  .chv2-trust { grid-template-columns:1fr 1fr; }
  .hc-form-half { grid-template-columns:1fr; gap:0; }
  .csv2-steps { grid-template-columns:1fr; }
  .csv2-step { grid-template-columns:44px 1fr; gap:16px; padding:32px 24px; }
  .csv2-num { font-size:34px; }
}
@media(max-width:500px) {
  .chv2-copy { padding-bottom:52px; }
  .chv2-trust { grid-template-columns:1fr; }
  .chv2-stat { border-right:0; padding-right:0; }
}

.blog-page { display:grid; grid-template-columns:.55fr 1.45fr; gap:8vw; background:#f4f7fa; }
.blog-index { position:sticky; top:30px; align-self:start; border-top:1px solid #cbd6df; }
.blog-index a { display:grid; grid-template-columns:30px 1fr 20px; gap:10px; padding:19px 0; border-bottom:1px solid #cbd6df; }
.blog-index span,.blog-index small { color:#1262e6; font-size:10px; }
.blog-index b { font-size:12px; line-height:1.45; }
.article-list article { display:grid; grid-template-columns:70px 1fr; gap:25px; padding:0 0 85px; margin:0 0 85px; border-bottom:1px solid #cbd6df; scroll-margin-top:35px; }
.article-no { color:#1262e6; font-size:28px; font-weight:800; }
.article-list article span { color:#1262e6; font-size:9px; font-weight:800; letter-spacing:.17em; }
.article-list article h2 { margin:15px 0 22px; font-size:clamp(32px,3.4vw,52px); }
.article-list article p { color:#5e7183; font-size:16px; line-height:1.8; }
.article-list article ul { margin:28px 0 0; padding:0; list-style:none; }
.article-list article li { padding:16px 0; color:#334b62; font-size:13px; line-height:1.55; border-top:1px solid #d3dde6; }
.article-list article li:before { content:"→"; margin-right:12px; color:#1262e6; }
.detail-hero { display:grid; grid-template-columns:1.08fr .92fr; min-height:690px; color:#fff; background:#071c32; }
.detail-hero-copy { display:flex; justify-content:center; flex-direction:column; padding:75px 6vw; }
.detail-hero-copy h1 { font-size:clamp(50px,5.1vw,82px); }
.detail-hero-copy>p { max-width:720px; margin:28px 0 34px; color:#a9b9ca; font-size:15px; line-height:1.8; }
.detail-hero-copy .primary-button { align-self:flex-start; }
.detail-hero-image { position:relative; min-height:520px; background:#e4e9ee; overflow:hidden; }
.detail-hero-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:46px; color:#8097ad; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.breadcrumbs a { color:#b9c9d8; }
.breadcrumbs b { color:#8fb9ff; }
.detail-overview { display:grid; grid-template-columns:.85fr 1.15fr; gap:9vw; align-items:start; background:#f4f7fa; }
.detail-intro>p { margin:0 0 30px; color:#5e7183; font-size:16px; line-height:1.85; }
.scope-tags { display:flex; flex-wrap:wrap; gap:8px; }
.scope-tags span { padding:10px 13px; color:#315372; background:#fff; border:1px solid #ccd8e3; font-size:10px; font-weight:700; letter-spacing:.04em; }
.component-proof { background:#fff; }
.component-proof-head { display:grid; grid-template-columns:1fr .72fr; gap:9vw; align-items:end; }
.component-proof-head>div { padding-bottom:5px; }
.component-proof-head p { margin:0 0 28px; color:#617286; font-size:15px; line-height:1.8; }
.component-proof-grid { display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:290px; gap:16px; margin-top:60px; }
.component-proof-grid figure { position:relative; margin:0; overflow:hidden; background:#dfe6ec; }
.component-proof-grid .proof-wide { grid-column:span 2; }
.component-proof-grid img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .55s ease; }
.component-proof-grid figure:hover img { transform:scale(1.025); }
.component-proof-grid figure:after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(3,17,31,.9)); }
.component-proof-grid figcaption { position:absolute; z-index:2; right:24px; bottom:22px; left:24px; color:#fff; }
.component-proof-grid figcaption strong,.component-proof-grid figcaption span { display:block; }
.component-proof-grid figcaption strong { font-size:17px; }
.component-proof-grid figcaption span { margin-top:7px; color:#b9cadb; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.component-proof-note { margin:18px 0 0; color:#7a8b9d; font-size:10px; line-height:1.65; }
.fact-table,.equipment-ledger,.injection-machines { color:white; background:#071c32; }
.fact-table>h2 { margin-top:20px; }
.home-fact-rows { margin-top:48px; }
.fact-rows { border-top:1px solid #30475e; }
.fact-rows>div { display:grid; grid-template-columns:.45fr 1fr; gap:5vw; padding:24px 0; border-bottom:1px solid #30475e; }
.fact-rows span { color:#8aa0b6; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.fact-rows strong { font-size:15px; line-height:1.6; }
.route-section { background:#fff; }
.route-head { display:grid; grid-template-columns:1fr .65fr; gap:9vw; align-items:end; }
.route-head>p { margin:0 0 5px; color:#687a8d; font-size:14px; line-height:1.8; }
.route-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:58px; border-top:1px solid #cdd8e2; border-left:1px solid #cdd8e2; }
.route-grid article { min-height:230px; padding:30px; border-right:1px solid #cdd8e2; border-bottom:1px solid #cdd8e2; }
.route-grid span { color:#1262e6; font-size:10px; font-weight:800; }
.route-grid h3 { margin:45px 0 14px; font-size:20px; }
.route-grid p { margin:0; color:#687a8d; font-size:12px; line-height:1.7; }
.route-grid-five { grid-template-columns:repeat(5,1fr); }
.route-grid-five article { min-height:260px; padding:27px 24px; }
.detail-faq { background:#f4f7fa; }
.detail-faq h2 { font-size:clamp(38px,4vw,62px); }
.ledger-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #30475e; border-left:1px solid #30475e; }
.ledger-grid article { min-height:225px; padding:34px 28px; border-right:1px solid #30475e; border-bottom:1px solid #30475e; }
.ledger-grid small { color:#6f9bd7; font-size:9px; font-weight:800; letter-spacing:.15em; }
.ledger-grid strong { display:block; margin:45px 0 16px; font-size:24px; }
.ledger-grid p { margin:0; color:#94a9bd; font-size:12px; line-height:1.7; }
.evidence-note { max-width:920px; margin:28px 0 0; color:#8fa5ba; font-size:11px; line-height:1.75; }
.capability-rows { margin-top:34px; }
.tonnage-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #30475e; border-bottom:1px solid #30475e; }
.tonnage-grid article { display:flex; align-items:center; gap:24px; min-height:175px; padding:30px 4vw; border-left:1px solid #30475e; }
.tonnage-grid article:first-child { border-left:0; }
.tonnage-grid strong { color:#8fb9ff; font-size:52px; letter-spacing:-.04em; }
.tonnage-grid span { color:#b4c3d1; font-size:12px; line-height:1.5; text-transform:uppercase; letter-spacing:.07em; }
@media (max-width:850px) {
  .site-header { height:72px; grid-template-columns:1fr auto auto; gap:8px; padding:0 20px; }
  .desktop-nav { display:none; }
  .mobile-menu { position:relative; display:block; }
  .mobile-menu summary { display:grid; place-items:center; width:38px; height:38px; cursor:pointer; list-style:none; color:inherit; border:1px solid currentColor; font-size:18px; }
  .mobile-menu summary::-webkit-details-marker { display:none; }
  .mobile-menu nav { position:absolute; z-index:50; top:46px; right:0; display:flex; width:min(320px,calc(100vw - 40px)); max-height:calc(100vh - 105px); padding:12px; flex-direction:column; gap:0; overflow:auto; color:#0a1b2d; background:white; box-shadow:0 18px 45px rgba(0,0,0,.2); }
  .mobile-menu nav a { display:block; padding:13px 12px; border-bottom:1px solid #e1e7ed; font-size:13px; }
  .mobile-menu nav a:last-child { border-bottom:0; }
  .mobile-menu nav .mobile-parent { color:#1262e6; font-weight:800; }
  .mobile-menu nav .mobile-child { padding:10px 12px 10px 25px; color:#557087; font-size:11px; }
  .header-cta { padding:10px 12px; }
  .brand small { display:none; }
  .hero { min-height:760px; height:auto; }
  .hero-content { width:auto; padding:150px 22px 270px; }
  h1 { font-size:clamp(43px,12vw,64px); }
  .hero-copy { font-size:15px; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:22px; }
  .proof-bar { width:100%; grid-template-columns:1fr 1fr; }
  .proof-bar div { min-height:94px; padding:18px 20px; }
  .section-pad { padding:80px 22px; }
  .intro-grid,.component-map-head,.work-samples-head,.quality-evidence-head,.equipment-head,.market-proof-head,.buyer-support-head,.about,.rfq { grid-template-columns:1fr; }
  .intro-copy { margin-top:30px; }
  .capability-cards { grid-template-columns:1fr; margin-top:45px; }
  .card-image { height:230px; }
  .component-map-head>div { margin-top:30px; }
  .component-range-grid { grid-template-columns:1fr; margin-top:42px; }
  .component-range-grid>a { min-height:0; padding:27px 24px 62px; }
  .component-range-grid h3 { margin:25px 0 12px; }
  .component-range-grid>a>span { right:24px; bottom:23px; left:24px; }
  .work-samples-head>div { margin-top:30px; }
  .sample-gallery { grid-template-columns:1fr; grid-auto-rows:260px; margin-top:42px; }
  .sample-gallery .sample-wide { grid-column:auto; }
  .process { grid-template-columns:1fr; }
  .process-image { min-height:450px; }
  .process-copy { padding:75px 22px; }
  .process-list div { grid-template-columns:30px 1fr; }
  .process-list small { grid-column:2; }
  .workflow-head { grid-template-columns:1fr; }
  .workflow-head p { margin-top:28px; }
  .workflow-steps { grid-template-columns:1fr; margin-top:42px; }
  .workflow-steps article { min-height:0; padding:25px 0; border-left:0; border-bottom:1px solid #30475e; }
  .workflow-steps article:last-child { border-bottom:0; }
  .workflow-steps h3 { margin:12px 0 8px; }
  .quality-evidence-head>p { margin-top:30px; }
  .quality-evidence-grid { grid-template-columns:1fr; margin-top:42px; }
  .quality-evidence-photo { min-height:0; aspect-ratio:4 / 3; }
  .quality-evidence-photo figcaption { right:22px; bottom:21px; left:22px; }
  .quality-checkpoints { grid-template-columns:1fr; }
  .quality-checkpoints article { min-height:0; padding:27px 24px; }
  .quality-checkpoints h3 { margin:25px 0 12px; }
  .tolerance-snapshot { grid-template-columns:1fr 1fr; }
  .tolerance-snapshot>div { min-height:165px; padding:25px 20px; }
  .tolerance-snapshot strong { margin:28px 0 9px; font-size:28px; }
  .equipment-grid { grid-template-columns:1fr; }
  .machine-cards { grid-template-columns:1fr; margin-top:42px; }
  .machine-photo { height:360px; padding:16px; }
  .equipment-feature { min-height:470px; }
  .equipment-feature>div { left:24px; right:24px; bottom:26px; }
  .equipment-stats { grid-template-columns:1fr 1fr; }
  .equipment-stats div { border-bottom:1px solid #dce4eb; }
  .industry-row { grid-template-columns:1fr 1fr; }
  .industry-row>div { min-height:230px; padding:32px 22px; border-bottom:1px solid rgba(255,255,255,.18); }
  .market-proof-head>div { margin-top:30px; }
  .project-profile-grid { grid-template-columns:1fr; margin-top:42px; }
  .project-profile-grid article { min-height:0; padding:27px 24px 68px; }
  .project-profile-grid h3 { margin:25px 0 12px; }
  .project-profile-grid article>span { right:24px; bottom:24px; left:24px; }
  .buyer-support-head>p { margin-top:30px; }
  .buyer-support-grid { grid-template-columns:1fr; margin-top:42px; }
  .buyer-support-grid article { min-height:0; padding:27px 24px; }
  .buyer-support-grid h3 { margin:25px 0 12px; }
  .buyer-support-bottom { align-items:flex-start; flex-direction:column; padding:26px 22px; }
  .about-photo { min-height:0; aspect-ratio:4 / 3; box-shadow:15px 15px 0 #dae5f0; }
  .about-copy { padding-top:30px; }
  .about-points { grid-template-columns:1fr; }
  .certification-proof { grid-template-columns:78px 1fr; padding:14px; }
  .certification-proof>a { height:100px; }
  .faq-layout,.detail-faq { grid-template-columns:1fr; gap:45px; }
  .rfq { gap:55px; }
  .contact-card { padding:30px 24px; }
  .footer-main { grid-template-columns:1fr; gap:45px; padding:58px 22px 48px; }
  .footer-company>p { max-width:none; }
  .footer-column,.footer-contact { padding-top:32px; border-top:1px solid #1e344a; }
  .footer-bottom { align-items:flex-start; flex-direction:column; gap:10px; padding:22px; }
  .inner-hero { padding:80px 22px 90px; }
  .product-grid { grid-template-columns:1fr; }
  .product-photo { height:250px; }
  .spec-band { grid-template-columns:1fr; }
  .contact-page,.blog-page { grid-template-columns:1fr; }
  .rfq-checklist { padding:34px 22px; }
  .blog-index { position:static; }
  .article-list article { grid-template-columns:1fr; gap:15px; }
  .post-grid { grid-template-columns:1fr; }
  .post-card { min-height:0; padding:30px 24px; }
  .article-hero { padding:80px 22px 90px; }
  .article-content { padding:65px 22px 80px; font-size:16px; }
  .article-content h2 { font-size:30px; }
  .component-index-grid { grid-template-columns:1fr; }
  .component-index-grid>div { min-height:0; padding:28px 0; border-left:0; border-bottom:1px solid #cdd8e2; }
  .component-index-grid>div:last-child { border-bottom:0; }
  .detail-hero { grid-template-columns:1fr; }
  .detail-hero-copy { padding:65px 22px 75px; }
  .detail-hero-image { width:100%; height:auto; min-height:0; aspect-ratio:4 / 3; }
  .breadcrumbs { margin-bottom:34px; }
  .detail-overview,.component-proof-head,.route-head { grid-template-columns:1fr; }
  .detail-intro { margin-top:32px; }
  .component-proof-head>div { margin-top:30px; }
  .component-proof-grid { grid-template-columns:1fr; grid-auto-rows:260px; margin-top:42px; }
  .component-proof-grid .proof-wide { grid-column:auto; }
  .fact-rows>div { grid-template-columns:1fr; gap:10px; }
  .route-grid,.route-grid-five { grid-template-columns:1fr; }
  .route-grid article,.route-grid-five article { min-height:0; }
  .route-grid h3 { margin:18px 0 10px; }
  .ledger-grid { grid-template-columns:1fr; }
  .ledger-grid article { min-height:0; }
  .ledger-grid strong { margin:28px 0 13px; }
  .tonnage-grid { grid-template-columns:1fr; }
  .tonnage-grid article { min-height:125px; border-left:0; border-bottom:1px solid #30475e; }
  .tonnage-grid article:last-child { border-bottom:0; }
  .admin-bar .site-header.overlay,.admin-bar .site-header.solid { top:46px; }
}

/* Capability galleries: balanced real-photo sizing without changing product geometry. */
body.page-id-19 .detail-hero-image,
body.page-id-20 .detail-hero-image,
body.page-id-21 .detail-hero-image {
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  align-self:center !important;
  background:transparent !important;
}
body.page-id-19 .detail-hero-image img,
body.page-id-20 .detail-hero-image img,
body.page-id-21 .detail-hero-image img {
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

@media (min-width:851px) {
  body.page-id-19 .component-proof-grid,
  body.page-id-20 .component-proof-grid,
  body.page-id-21 .component-proof-grid {
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    margin-right:auto !important;
    margin-left:auto !important;
    gap:20px !important;
  }
  body.page-id-20 .component-proof-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    max-width:1040px;
  }
  body.page-id-21 .component-proof-grid {
    grid-template-columns:minmax(0,1.42fr) repeat(2,minmax(0,1fr)) !important;
    max-width:1040px;
  }
  body.page-id-19 .component-proof-grid {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    max-width:1137px;
  }
  body.page-id-19 .component-proof-grid figure,
  body.page-id-20 .component-proof-grid figure,
  body.page-id-21 .component-proof-grid figure {
    grid-column:auto !important;
    grid-row:auto !important;
    align-self:start !important;
    width:100% !important;
    height:auto !important;
  }
  body.page-id-19 .component-proof-grid .proof-wide {
    grid-column:span 2 !important;
  }
  body.page-id-19 .component-proof-grid figure:nth-child(4) {
    grid-column:2 !important;
  }
  body.page-id-19 .component-proof-grid figure:nth-child(5) {
    grid-column:3 !important;
  }
}

body.page-id-19 .component-proof-grid img,
body.page-id-20 .component-proof-grid img,
body.page-id-21 .component-proof-grid img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}

@media (max-width:850px) {
  body.page-id-19 .component-proof-grid,
  body.page-id-20 .component-proof-grid,
  body.page-id-21 .component-proof-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    gap:12px !important;
  }
  body.page-id-19 .component-proof-grid figure,
  body.page-id-20 .component-proof-grid figure,
  body.page-id-21 .component-proof-grid figure {
    grid-column:auto !important;
    grid-row:auto !important;
    width:100% !important;
    height:auto !important;
  }
  body.page-id-19 .component-proof-grid .proof-wide,
  body.page-id-21 .component-proof-grid figure:first-child {
    grid-column:1 / -1 !important;
  }
  body.page-id-20 .component-proof-grid figure:nth-child(3) {
    grid-column:1 / -1 !important;
    justify-self:center;
    width:calc(50% - 6px) !important;
  }
  body.page-id-19 .component-proof-grid figcaption,
  body.page-id-20 .component-proof-grid figcaption,
  body.page-id-21 .component-proof-grid figcaption {
    right:14px;
    bottom:14px;
    left:14px;
  }
}
	

/* Sliders and lifters gallery: three equal landscape proof cards. */
body.page-id-124 .detail-hero-image {
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  align-self:center !important;
  background:transparent !important;
}
body.page-id-124 .detail-hero-image img {
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
body.page-id-124 .component-proof-grid img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}
body.page-id-124 .component-proof-grid figure {
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  background:#fff !important;
}
body.page-id-124 .component-proof-grid figure:after {
  display:none !important;
}
body.page-id-124 .component-proof-grid figcaption {
  position:static !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  padding:16px 2px 0 !important;
  color:#0d1d2f !important;
}
body.page-id-124 .component-proof-grid figcaption strong {
  color:#0d1d2f !important;
  font-size:17px !important;
  line-height:1.3 !important;
}
body.page-id-124 .component-proof-grid figcaption span {
  margin-top:7px !important;
  color:#64778a !important;
  font-size:10px !important;
  line-height:1.55 !important;
}

@media (min-width:851px) {
  body.page-id-124 .component-proof-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:stretch !important;
    max-width:1040px;
    margin-right:auto !important;
    margin-left:auto !important;
    gap:20px !important;
  }
  body.page-id-124 .component-proof-grid figure,
  body.page-id-124 .component-proof-grid .proof-wide,
  body.page-id-124 .component-proof-grid figure:nth-child(2),
  body.page-id-124 .component-proof-grid figure:nth-child(3) {
    grid-column:auto !important;
    grid-row:auto !important;
    align-self:stretch !important;
    width:100% !important;
    height:auto !important;
  }
}

@media (max-width:850px) {
  body.page-id-124 .component-proof-grid {
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    gap:12px !important;
  }
  body.page-id-124 .component-proof-grid figure,
  body.page-id-124 .component-proof-grid .proof-wide {
    grid-column:auto !important;
    grid-row:auto !important;
    width:100% !important;
    height:auto !important;
  }
  body.page-id-124 .component-proof-grid figcaption {
    right:14px;
    bottom:14px;
    left:14px;
  }
}



/* Stamping die page: real 4:3 hero and three equal landscape proof cards. */
body.page-id-126 .detail-hero-image {
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  align-self:center !important;
  background:transparent !important;
}
body.page-id-126 .detail-hero-image img {
  position:static !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
}
body.page-id-126 .component-proof-grid img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}
body.page-id-126 .component-proof-grid figure {
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  background:#fff !important;
}
body.page-id-126 .component-proof-grid figure:after {
  display:none !important;
}
body.page-id-126 .component-proof-grid figcaption {
  position:static !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  padding:16px 2px 0 !important;
  color:#0d1d2f !important;
}
body.page-id-126 .component-proof-grid figcaption strong {
  color:#0d1d2f !important;
  font-size:17px !important;
  line-height:1.3 !important;
}
body.page-id-126 .component-proof-grid figcaption span {
  margin-top:7px !important;
  color:#64778a !important;
  font-size:10px !important;
  line-height:1.55 !important;
}

@media (min-width:851px) {
  body.page-id-126 .component-proof-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:stretch !important;
    max-width:1040px;
    margin-right:auto !important;
    margin-left:auto !important;
    gap:20px !important;
  }
  body.page-id-126 .component-proof-grid figure,
  body.page-id-126 .component-proof-grid .proof-wide,
  body.page-id-126 .component-proof-grid figure:nth-child(2),
  body.page-id-126 .component-proof-grid figure:nth-child(3) {
    grid-column:auto !important;
    grid-row:auto !important;
    align-self:stretch !important;
    width:100% !important;
    height:auto !important;
  }
}

@media (max-width:850px) {
  body.page-id-126 .component-proof-grid {
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    gap:12px !important;
  }
  body.page-id-126 .component-proof-grid figure,
  body.page-id-126 .component-proof-grid .proof-wide {
    grid-column:auto !important;
    grid-row:auto !important;
    width:100% !important;
    height:auto !important;
  }
}

/* Core pins and ejector sleeves gallery: three equal landscape proof cards. */
body.page-id-122 .component-proof-grid img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}

@media (min-width:851px) {
  body.page-id-122 .component-proof-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:stretch !important;
    max-width:1040px;
    margin-right:auto !important;
    margin-left:auto !important;
    gap:20px !important;
  }
  body.page-id-122 .component-proof-grid figure,
  body.page-id-122 .component-proof-grid .proof-wide,
  body.page-id-122 .component-proof-grid figure:nth-child(2),
  body.page-id-122 .component-proof-grid figure:nth-child(3) {
    grid-column:auto !important;
    grid-row:auto !important;
    align-self:stretch !important;
    width:100% !important;
    height:auto !important;
  }
}

@media (max-width:850px) {
  body.page-id-122 .component-proof-grid {
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    gap:12px !important;
  }
  body.page-id-122 .component-proof-grid figure,
  body.page-id-122 .component-proof-grid .proof-wide {
    grid-column:auto !important;
    grid-row:auto !important;
    width:100% !important;
    height:auto !important;
  }
  body.page-id-122 .component-proof-grid figcaption {
    right:14px;
    bottom:14px;
    left:14px;
  }
}

/* Precision mold inserts gallery: three equal landscape proof cards. */
body.page-id-118 .component-proof-grid img {
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}

@media (min-width:851px) {
  body.page-id-118 .component-proof-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    max-width:1040px;
    margin-right:auto !important;
    margin-left:auto !important;
    gap:20px !important;
  }
  body.page-id-118 .component-proof-grid figure,
  body.page-id-118 .component-proof-grid .proof-wide,
  body.page-id-118 .component-proof-grid figure:nth-child(2),
  body.page-id-118 .component-proof-grid figure:nth-child(3) {
    grid-column:auto !important;
    grid-row:auto !important;
    align-self:start !important;
    width:100% !important;
    height:auto !important;
  }
}

@media (max-width:850px) {
  body.page-id-118 .component-proof-grid {
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    gap:12px !important;
  }
  body.page-id-118 .component-proof-grid figure,
  body.page-id-118 .component-proof-grid .proof-wide {
    grid-column:auto !important;
    grid-row:auto !important;
    width:100% !important;
    height:auto !important;
  }
  body.page-id-118 .component-proof-grid figcaption {
    right:14px;
    bottom:14px;
    left:14px;
  }
}

/* Homepage component scope: valid, readable 4-by-2 card grid. */
.home-scope-title { color:#fff; }
.home-scope-title em { color:#7fb3ff; }
.home-scope-copy p { color:rgba(255,255,255,.72); }
.home-scope-link {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding-bottom:6px;
  color:#7fb3ff;
  font-size:14px;
  font-weight:700;
  border-bottom:1px solid rgba(127,179,255,.65);
}
.home-component-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin-top:38px;
  overflow:hidden;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;
}
.home-component-grid > a {
  position:relative;
  min-height:215px;
  padding:30px 30px 58px;
  color:#fff;
  background:#0a2a54;
  transition:background .2s ease,transform .2s ease;
}
.home-component-grid > a:hover {
  z-index:1;
  background:#123765;
}
.home-component-grid strong,
.home-component-grid small { display:block; }
.home #product-scope .home-component-grid > a > strong {
  color:#dbe9ff;
  font-size:18px !important;
  line-height:1.45;
}
.home-component-grid strong span {
  display:block;
  margin-bottom:9px;
  color:#69a5ff;
  font-size:12px;
  letter-spacing:.12em;
}
.home #product-scope .home-component-grid > a > small {
  margin-top:18px;
  color:rgba(255,255,255,.66);
  font-size:15px !important;
  line-height:1.65;
}
.home-component-grid b {
  position:absolute;
  right:24px;
  bottom:20px;
  color:#69a5ff;
  font-size:18px;
}
@media (max-width:1000px) {
  .home-component-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .home-component-grid { grid-template-columns:1fr; }
  .home-component-grid > a { min-height:0; padding:24px 24px 50px; }
  .home #product-scope .home-component-grid > a > strong { font-size:17px !important; }
  .home #product-scope .home-component-grid > a > small { font-size:14px !important; }
}

/* Homepage RFQ support and specification band: compact, connected layout. */
.home .buyer-support {
  padding-bottom:72px !important;
}
.home .buyer-support-bottom {
  padding:24px 28px !important;
}
.home .spec-band {
  gap:0 !important;
  background:#fff !important;
  border-top:1px solid #dce4eb;
  border-bottom:1px solid #dce4eb;
}
.home .spec-band > div {
  min-height:170px !important;
  padding-top:36px !important;
  padding-bottom:36px !important;
}
.home .spec-band > div + div {
  border-left:1px solid #dce4eb;
}
.home .spec-band strong {
  font-size:14px;
  font-weight:600;
  line-height:1.75;
}
.home .faq-section {
  padding-top:80px !important;
}
@media (max-width:850px) {
  .home .buyer-support { padding-bottom:56px !important; }
  .home .spec-band > div { min-height:0 !important; }
  .home .spec-band > div + div {
    border-top:1px solid #dce4eb;
    border-left:0;
  }
  .home .faq-section { padding-top:64px !important; }
}

