/* Precision engineering hero, scoped to Home. */
.precision-home { --precision-bg: #060e1c; --precision-emerald: #00d4ff; }
.precision-home .header { background: transparent; border: 0; box-shadow: none; backdrop-filter: none; }
.precision-home .header.scrolled { background: #060e1cf5; }
.precision-home .logo-text { font-family: Syncopate, sans-serif; font-size: .8rem; letter-spacing: .1em; }
.precision-home .nav-links a:not(.btn) { font-family: 'Space Grotesk',sans-serif; font-size: .875rem; text-transform: uppercase; letter-spacing: .09em; }
.precision-home .header .btn { border-radius: 12px; background: linear-gradient(110deg,#a5f3fc,#00d4ff 55%,#60a5fa); border: 1px solid #67d9f5; box-shadow: 0 6px 24px #00a8c922; color: #061426; }
.precision-home .header .btn:hover { background: #b8f3ff; color: #061426; }
.precision-home .precision-hero { display: flex; flex-direction: column; justify-content: center; min-height: 100svh; padding: 10rem 0 0; background: #060e1c; isolation: isolate; }
.precision-video,.precision-vignette,.precision-grid { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.precision-video { object-fit: cover; opacity: .65; z-index: -3; }
.precision-vignette { background: radial-gradient(ellipse at 65% 40%,rgba(6,14,28,.28),rgba(6,14,28,.85) 78%),linear-gradient(90deg,#060e1cd9,transparent); z-index: -2; }
.precision-grid { background-image: linear-gradient(#38bdf812 1px,transparent 1px),linear-gradient(90deg,#38bdf812 1px,transparent 1px); background-size: 60px 60px; z-index: -1; }
.precision-layout { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(280px,1fr); align-items: center; gap: 4rem; padding-bottom: 4.5rem; }
.precision-copy { min-width: 0; }
.precision-kicker { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; color: #d8dce2; font: 500 .875rem 'Space Grotesk',sans-serif; letter-spacing: .16em; margin-bottom: 1.5rem; }
.precision-kicker > span { width: 2rem; height: 1px; background: #c6cbd2; }
.precision-kicker i { width: 5px; height: 5px; border-radius: 50%; background: #fff; }
.precision-copy h1 { font-family: Syncopate,sans-serif; font-size: clamp(2rem,4.5vw,4.25rem); letter-spacing: -.045em; line-height: 1.17; font-weight: 700; margin-bottom: 1.75rem; }
.precision-copy h1 > span { display: block; }
.precision-copy .chrome-muted { color: #60dfff; background: linear-gradient(110deg,#67e8f9,#38bdf8 60%,#93c5fd); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.precision-description { max-width: 35rem; color: #cbd5e1; font-size: 1rem; line-height: 1.8; }
.precision-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem; margin-top: 2rem; }
.precision-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.5rem; position: relative; overflow: hidden; padding: 1.1rem 1.4rem; color: #67e8f9; border: 1px solid #00d4ff80; border-radius: 12px; background: #071b30b3; font: 500 .875rem 'Space Grotesk',sans-serif; letter-spacing: .08em; isolation: isolate; }
.precision-button::before { content: ''; position: absolute; inset: 0; background: linear-gradient(110deg,#a5f3fc,#38bdf8); transform: translateX(-101%); transition: transform .3s ease; z-index: -1; }
.precision-button:hover,.precision-button:focus-visible { color: #060e1c; }
.precision-button:hover::before,.precision-button:focus-visible::before { transform: translateX(0); }
.precision-hud { position: relative; padding: 1.75rem; background: #0e2441d9; border: 1px solid #ffffff12; backdrop-filter: blur(12px); min-width: 0; }
.hud-corner { position: absolute; width: 16px; height: 16px; border-color: #66d9ff; border-style: solid; }
.corner-tl { top:-1px; left:-1px; border-width: 1px 0 0 1px; }.corner-tr { top:-1px; right:-1px; border-width: 1px 1px 0 0; }.corner-bl { bottom:-1px; left:-1px; border-width: 0 0 1px 1px; }.corner-br { bottom:-1px; right:-1px; border-width: 0 1px 1px 0; }
.hud-heading { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.75rem; border-bottom:1px solid #ffffff14; padding-bottom:1.25rem; }
.hud-heading h2 { font:500 .875rem 'Space Grotesk',sans-serif; letter-spacing:.08em; color:#e2e8f0; }
.hud-heading > span { font-size:.75rem; color:#a1aab6; }
.hud-item { margin-top:1.5rem; }
.hud-item > div:first-child { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:.5rem; }
.hud-item h3 { font:500 .875rem 'Space Grotesk',sans-serif; color:#94a3b8; letter-spacing:.1em; }
.hud-item span { color:#e2e8f0; font-size:.875rem; }
.hud-track { height:2px; background:#ffffff12; margin-top:.85rem; overflow:hidden; }
.hud-track > span { display:block; height:100%; width:100%; background:linear-gradient(90deg,#1e52c0,#38bdf8,#67e8f9); transform-origin:left; }
.hud-footer { display:flex; flex-direction:column; gap:.6rem; border-top:1px solid #ffffff14; margin-top:2rem; padding-top:1.25rem; font:.75rem 'Space Grotesk',sans-serif; letter-spacing:.06em; }
.hud-footer > span:last-child { color:#60ddff; font-size:.875rem; }
.hud-footer:hover > span:last-child { text-decoration:underline; }
.precision-metrics { width:100%; border-top:1px solid #ffffff1a; background:#060e1c55; margin-top:auto; }
.precision-metrics > .container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; padding-block:2rem; }
.precision-metrics .container > div { display:flex; align-items:center; gap:1.2rem; }
.precision-metrics i { color:#7dd3fc; font-size:1.8rem; }
.precision-metrics p { display:flex; flex-direction:column; gap:.5rem; }
.precision-metrics strong { font:700 clamp(1.1rem,1.6vw,1.6rem) Syncopate,sans-serif; }
.precision-metrics strong [data-hero-count] { font:inherit; color:inherit; letter-spacing:inherit; }
.precision-metrics p span { font-size:.75rem; color:#aab4c1; letter-spacing:.1em; }
.precision-home :focus-visible { outline-color:#60ddff; }
.motion-enabled .precision-kicker i { animation: precision-pulse 3s ease-in-out infinite; }
.motion-enabled .hud-track span { animation: precision-track 1.4s ease both; }
@keyframes precision-pulse { 50% { opacity:.3; } }
@keyframes precision-track { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@media(max-width:1200px) { .precision-layout { gap:2rem; }.precision-home .nav-links { background:#060e1c; }.precision-hud { padding:1.25rem; } }
@media(max-width:800px) { .precision-layout { grid-template-columns:1fr; gap:3rem; }.precision-copy h1 { font-size:clamp(2rem,7vw,3.8rem); }.precision-hud { max-width:540px; width:100%; }.precision-home .precision-hero { padding-top:8rem; }.precision-metrics > .container { gap:1rem; }.precision-metrics .container > div { align-items:flex-start; flex-direction:column; gap:.65rem; } }
@media(max-width:480px) { .precision-copy h1 { font-size:clamp(1.6rem,7vw,2.1rem); }.precision-kicker { font-size:.75rem; letter-spacing:.08em; }.precision-actions { gap:1.25rem; }.precision-button { width:100%; }.precision-metrics > .container { grid-template-columns:1fr; }.precision-metrics .container > div { flex-direction:row; align-items:center; border-bottom:1px solid #ffffff12; padding-bottom:1rem; }.precision-metrics .container > div:last-child { border:0; padding:0; } }
@media(prefers-reduced-motion:reduce) { .precision-home *, .precision-home *::before { animation:none!important; transition:none!important; } }

.precision-sr { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; }

/* Keep mobile motion behind the first screen, not stretched across the entire hero. */
.precision-video { opacity: .82; }
.precision-vignette { background: linear-gradient(90deg,rgba(6,14,28,.94),rgba(7,36,76,.78)),linear-gradient(0deg,#060e1c,transparent 35%); }
.precision-grid { opacity: .4; }
@media(max-width:800px) {
  .precision-home .precision-hero { background: radial-gradient(ellipse at 80% 20%,#123b70,#060e1c 60%); }
  .precision-video { height: min(960px,115svh); object-position: center top; opacity: .78; }
  .precision-vignette { height: min(960px,115svh); background: linear-gradient(90deg,rgba(6,14,28,.92),rgba(8,43,87,.76)),linear-gradient(0deg,#060e1c,transparent 40%,rgba(6,14,28,.2)); }
  .precision-grid { opacity: .23; mask-image: linear-gradient(black,transparent 75%); }
  .precision-copy { text-shadow: 0 2px 16px #0008; }
  .precision-hud { background: #0e2441e6; }
}

/* Keep the full brand legible on a single hero line across viewports. */
.precision-copy h1 .brand-full { font-size: .65em; letter-spacing: -.035em; line-height: 1.6; }

.precision-home .nav-links a:not(.btn):hover, .precision-home .nav-links a[aria-current="page"] { color: #67e8f9; }
.precision-kicker > span, .precision-kicker i { background: #67e8f9; }
