: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:20; height:88px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; padding:0 4.5vw; }
.site-header.overlay { position:absolute; inset:0 0 auto; color:white; border-bottom:1px solid var(--line); }
.site-header.solid { position:relative; color:#0a1b2d; background:white; border-bottom:1px solid #dce4eb; }
.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; }
nav a { opacity:.78; transition:.2s ease; }
nav a:hover { opacity:1; }
.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:235px; 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; }
.cap-content b { position:absolute; right:28px; bottom:23px; font-size:38px; color:#e4eaf0; }
.cap-main .cap-content b { color:#194275; }
.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; }
.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:10px; }
.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; }
.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; }
.about-copy .small-note { margin-top:28px; font-size:10px; line-height:1.55; }
.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 address { margin-top:22px; color:#687a8d; font-size:11px; line-height:1.65; font-style:normal; }
footer { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; min-height:125px; padding:25px 5vw; color:#a4b4c5; background:#041321; border-top:1px solid #1e344a; }
.footer-brand { color:white; }
footer p,footer>a:last-child { font-size:10px; letter-spacing:.05em; }
.footer-links { justify-self:end; display:flex; gap:22px; font-size:10px; 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 { 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; }
.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:9px; font-weight:800; letter-spacing:.17em; }
.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 { display:grid; grid-template-columns:.8fr 1.2fr; gap:9vw; background:#f4f7fa; }
.contact-details h2,.rfq-checklist h2 { font-size:clamp(35px,3.5vw,53px); }
.contact-lines { margin:36px 0; border-top:1px solid #ccd7e1; }
.contact-lines a { display:block; padding:21px 0; border-bottom:1px solid #ccd7e1; }
.contact-lines small,.contact-details address small { display:block; margin-bottom:8px; color:#78899a; font-size:8px; letter-spacing:.15em; }
.contact-lines strong,.contact-details address strong { color:#23415e; font-size:14px; line-height:1.6; }
.contact-details address { font-style:normal; }
.rfq-checklist { padding:48px; background:white; box-shadow:0 18px 45px rgba(17,42,69,.08); }
.rfq-checklist ol { margin:30px 0; padding:0; list-style:none; counter-reset:rfq; }
.rfq-checklist li { position:relative; padding:19px 0 19px 48px; border-top:1px solid #dde5ed; counter-increment:rfq; }
.rfq-checklist li:before { content:"0" counter(rfq); position:absolute; left:0; top:21px; color:#1262e6; font-size:11px; font-weight:800; }
.rfq-checklist li b,.rfq-checklist li span { display:block; }
.rfq-checklist li b { margin-bottom:6px; font-size:14px; }
.rfq-checklist li span { color:#758697; font-size:11px; line-height:1.5; }
.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; }
@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:220px; padding:12px; flex-direction:column; gap:0; 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; }
  .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,.equipment-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; }
  .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; }
  .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); }
  .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; }
  .rfq { gap:55px; }
  .contact-card { padding:30px 24px; }
  footer { grid-template-columns:1fr; gap:23px; text-align:center; }
  .footer-brand,.footer-links { justify-self:center; }
  .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; }
  .admin-bar .site-header.overlay { top:46px; }
}
