/* Pixel-based sizing keeps the restored first screen independent of the legacy rem scaler. */
#app .nav-container, #app .nav-container.hidden {
  position: fixed; top: 0; left: 0; transform: none !important;
  height: 100px; background: linear-gradient(rgba(8,8,8,.6), transparent);
  transition: background .25s;
}
html.nav-scrolled #app .nav-container { background: #111; }
#app .nav-container .nav-left .logo, #app .nav-container .nav-left .logo img { width: 150px; height: 84px; }
#app .nav-container .nav-right { gap: clamp(24px, 5vw, 92px); }
#app .nav-container .nav-item { font: 700 15px Arial, sans-serif; padding-bottom: 6px; }
#app .nav-container .nav-item::after { height: 3px; bottom: -5px; }
#app .nav-container .contact-btn { font: 700 15px Arial, sans-serif; height: 50px; padding: 0 24px; }
#app .restored-hero { height: 100vh; height: 100dvh; min-height: 720px; max-height: none; overflow: hidden; color: white; background: #05080d; font-family: Arial, sans-serif; }
.restored-slides, .restored-shade { position: absolute; inset: 0; }
.restored-slides img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 1s; }
.restored-slides img.is-active { opacity: 1; }
.restored-shade { background: linear-gradient(90deg,#030712eb 0%,#06122699 40%,transparent 75%),linear-gradient(0deg,#02050b66,transparent 50%); }
.restored-copy { position: absolute; left: 7vw; top: 52%; transform: translateY(-43%); }
.restored-label { color: #f36817; font-size: 13px; font-weight: 800; letter-spacing: .2em; margin-bottom: 28px; }
.restored-copy h1 { font-size: clamp(64px, min(9vw, 15vh),150px); font-weight: 900; line-height: .84; letter-spacing: -.065em; margin: 0; }
.restored-copy h1 em { color: #a2c4ff; font-style: normal; }
.restored-lead { font-size: clamp(15px,1.35vw,22px); line-height: 1.55; color: #c8d0dd; margin: 30px 0; }
.restored-actions { display: flex; gap: 14px; }
.restored-actions a { padding: 16px 22px; border: 1px solid #ffffff80; border-radius: 99px; color: white; text-decoration: none; font-size: 13px; font-weight: 800; }
.restored-actions a:first-child { background: #f36817; border-color: #f36817; }
.restored-dots { position: absolute; left: 50%; bottom: 24px; transform: translateX(-50%); display: flex; gap: 8px; }
.restored-dots button { width: 30px; height: 30px; padding: 0; background: transparent; border: 0; cursor: pointer; }
.restored-dots button::after { content: ''; display: block; height: 4px; border-radius: 4px; background: #ffffff66; }
.restored-dots button[aria-current=true]::after { background: #f36817; }
.restored-scroll { position: absolute; bottom: 30px; right: 5vw; background: none; border: 0; color: white; font-size: 11px; letter-spacing: .16em; line-height: 2; cursor: pointer; }
.restored-hero a:focus-visible,.restored-hero button:focus-visible { outline: 2px solid #f36817; outline-offset: 4px; }
@media(max-width:800px) {
  #app .nav-container, html.nav-scrolled #app .nav-container { height: 78px; padding: 0 3vw; gap: 12px; }
  #app .nav-container .nav-left .logo, #app .nav-container .nav-left .logo img { width: 90px; height: 64px; }
  #app .nav-container .nav-right { gap: 14px; }
  #app .nav-container .nav-item { font-size: 11px; }
  #app .nav-container .contact-btn { font-size: 10px; height: 36px; padding: 0 12px; }
  .restored-copy h1 { font-size: clamp(60px,12vw,100px); }
  .restored-lead { max-width: 80vw; }
}
@media(max-width:520px) {
  #app .nav-container, html.nav-scrolled #app .nav-container { height: 100px; flex-wrap: wrap; gap: 0; }
  #app .nav-container .nav-left { height: 46px; }
  #app .nav-container .nav-left .logo, #app .nav-container .nav-left .logo img { width: 80px; height: 44px !important; }
  #app .nav-container .nav-right { width: 100%; height: 44px; justify-content: space-between; gap: 6px; }
  .restored-actions a { font-size: 10px; padding: 14px; }
}
@media(prefers-reduced-motion:reduce) { .restored-slides img { transition: none; } }
