
:root {
  color-scheme: dark;
}
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: #020617;
  color: #e2e8f0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow-x: hidden;
}
.gi-shell {
  min-height: 100vh;
  background:
    radial-gradient(circle at top right, rgba(6,182,212,0.12), transparent 28%),
    linear-gradient(180deg, rgba(15,23,42,0.96), rgba(2,6,23,1));
}
.gi-panel,
.gi-card {
  border: 1px solid rgba(255,255,255,0.08);
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
  box-shadow: 0 16px 60px rgba(2,6,23,0.35);
  backdrop-filter: blur(16px);
}
.gi-kicker {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: #67e8f9;
  font-size: .75rem;
  font-weight: 700;
}
.gi-kicker::before {
  content: "";
  width: 2.5rem;
  height: 1px;
  background: rgba(103,232,249,.75);
}
.gi-link[aria-current="page"],
.gi-link.is-active {
  color: #fff;
}
.gi-link[aria-current="page"]::after,
.gi-link.is-active::after {
  transform: scaleX(1);
}
.gi-link {
  position: relative;
}
.gi-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.45rem;
  height: 1px;
  background: rgba(103,232,249,.85);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .25s ease;
}
.gi-link:hover::after,
.gi-link:focus-visible::after { transform: scaleX(1); }
.gi-image-mask::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 28%;
  background: linear-gradient(180deg, rgba(2,6,23,0), rgba(2,6,23,0.2) 35%, rgba(2,6,23,0.46));
  pointer-events: none;
}
.gi-stat + .gi-stat {
  border-left: 1px solid rgba(255,255,255,.08);
}
.gi-richtext p,
.gi-richtext li {
  color: #cbd5e1;
}
.gi-richtext ul {
  padding-left: 1.1rem;
}
.gi-focus:focus-visible,
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid #67e8f9;
  outline-offset: 3px;
}
[data-mobile-menu].is-open { display: block; }
body.menu-open, body.modal-open { overflow: hidden; }
#contact-modal[hidden] { display: none !important; }
.modal-card {
  max-height: calc(100vh - 3rem);
}
.form-error {
  border-color: rgba(248,113,113,.7) !important;
}
video { background: #020617; }
@media (max-width: 639px) {
  .gi-stat + .gi-stat {
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.08);
    padding-left: 0 !important;
    margin-left: 0 !important;
    padding-top: 1rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


.skip-link{position:absolute;left:1rem;top:1rem;z-index:90}
.form-note a{color:#67e8f9;text-decoration:underline}
.gi-legal-links a{color:#94a3b8;text-decoration:none}
.gi-legal-links a:hover,.gi-legal-links a:focus-visible{color:#fff}
.gi-button-secondary{border:1px solid rgba(255,255,255,.15)}
.gi-button-secondary:hover{background:rgba(255,255,255,.05)}
.gi-form-copy{color:#cbd5e1}
input,textarea,select{font:inherit}
[aria-invalid="true"]{border-color:rgba(248,113,113,.85)!important}
[data-form-status].is-error{color:#fca5a5}
[data-form-status].is-success{color:#a7f3d0}
.hero-image img{display:block}
@media (min-width: 768px){
  .gi-sticky-footer{margin-top:auto}
}
