:root {
  --navy: #061a31;
  --navy-2: #0a2e56;
  --blue: #1688ff;
  --blue-soft: #dceeff;
  --orange: #ff6800;
  --orange-soft: #fff0e6;
  --ink: #0d2848;
  --muted: #5a6d80;
  --paper: #f4f8fc;
  --line: #d7e2ed;
  --green: #178457;
  --yellow: #d89700;
  --red: #cf322b;
  --radius: 24px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: #fff;
  scroll-behavior: smooth;
}
* { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: clip; }
body { margin: 0; min-width: 320px; background: #fff; line-height: 1.55; }
button, a { font: inherit; }
a { color: inherit; }
img { display: block; max-width: 100%; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 100; padding: 10px 14px; background: #fff; color: var(--navy); border-radius: 8px; transform: translateY(-160%); }
.skip-link:focus { transform: none; }
.site-header { position: sticky; top: 0; z-index: 50; width: 100%; min-height: 76px; padding: 0 max(24px, calc((100vw - 1280px) / 2)); display: flex; align-items: center; justify-content: space-between; gap: 30px; background: color-mix(in srgb, var(--navy) 94%, transparent); border-bottom: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(16px); color: #fff; }
.brand { display: inline-flex; align-items: center; gap: 11px; color: #fff; text-decoration: none; }
.brand img { width: 46px; height: 46px; border-radius: 13px; box-shadow: 0 0 0 2px rgba(22,136,255,.55); }
.brand span { display: grid; line-height: 1.05; }
.brand strong { font-size: 1.05rem; }
.brand small { margin-top: 5px; color: #90c7ff; }
.site-navigation { display: flex; align-items: center; gap: 28px; }
.site-navigation a { text-decoration: none; font-weight: 700; font-size: .93rem; color: #d7eaff; }
.site-navigation a:hover, .site-navigation a:focus-visible { color: #fff; }
.site-navigation .nav-cta { padding: 11px 17px; border: 1px solid #4f9de5; border-radius: 12px; color: #fff; }
.menu-button { display: none; align-items: center; gap: 9px; min-height: 44px; border: 1px solid #5682aa; border-radius: 10px; color: #fff; background: transparent; font-weight: 800; }
.menu-icon, .menu-icon::before, .menu-icon::after { display: block; width: 18px; height: 2px; background: currentColor; content: ""; }
.menu-icon::before { transform: translateY(-6px); }.menu-icon::after { transform: translateY(4px); }
.hero { position: relative; isolation: isolate; min-height: 700px; overflow: hidden; padding: 100px max(24px, calc((100vw - 1280px) / 2)) 85px; display: grid; grid-template-columns: 1.03fr .97fr; align-items: center; gap: 56px; background: radial-gradient(circle at 85% 15%, #0a4278 0, transparent 30%), linear-gradient(135deg, #041426, #082a4d 72%, #0a3970); color: #fff; }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(8px); opacity: .22; z-index: -1; }
.hero-glow-one { width: 430px; height: 430px; background: var(--orange); right: -230px; bottom: -240px; }
.hero-glow-two { width: 320px; height: 320px; background: var(--blue); left: -220px; top: 40px; }
.eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font-size: .78rem; letter-spacing: .14em; font-weight: 900; color: #b9dcff; }
.eyebrow span { width: 28px; height: 3px; border-radius: 9px; background: var(--orange); }
.eyebrow.dark { color: #22629b; }.eyebrow.light { color: #b9dcff; }
.hero h1 { max-width: 690px; margin: 0; font-size: clamp(3.4rem, 6vw, 6.6rem); letter-spacing: -.065em; line-height: .93; }
.hero h1 em { font-style: normal; color: var(--orange); }
.hero-lead { max-width: 670px; margin: 30px 0 0; font-size: clamp(1.05rem, 1.5vw, 1.25rem); line-height: 1.75; color: #d5e8fa; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin: 34px 0 26px; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 13px 20px; border-radius: 13px; text-decoration: none; font-weight: 900; transition: transform .18s ease, box-shadow .18s ease; }
.button:hover, .button:focus-visible { transform: translateY(-2px); }
.button-primary { background: var(--orange); color: #fff; box-shadow: 0 12px 30px rgba(255,104,0,.25); }
.button-secondary { border: 1px solid #5888b6; color: #fff; background: rgba(255,255,255,.04); }
.button-light { background: #fff; color: var(--navy); }
.boundary { max-width: 690px; padding: 15px 17px; border-left: 3px solid var(--blue); border-radius: 8px; background: rgba(3,16,31,.48); color: #bfd2e4; font-size: .9rem; }
.hero-copy, .hero-visual, .surface-panel, .surface-copy { min-width: 0; }
.hero-visual { position: relative; min-height: 540px; }
.animal-orbit { position: absolute; inset: 110px 70px 80px 70px; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle, rgba(15,75,128,.8), rgba(6,26,49,.15) 62%, transparent 63%); }
.animal-orbit img { width: 190px; height: 190px; border-radius: 44px; box-shadow: 0 0 0 2px #167ee3, 0 28px 65px rgba(0,0,0,.42); z-index: 2; }
.orbit { position: absolute; inset: 6%; border: 1px solid rgba(130,198,255,.28); border-radius: 50%; }.orbit-two { inset: 20%; border-style: dashed; }
.signal-card, .alert-card { position: absolute; border: 1px solid rgba(133,196,249,.38); border-radius: 15px; background: rgba(7,31,56,.88); box-shadow: 0 20px 45px rgba(0,0,0,.28); backdrop-filter: blur(12px); }
.signal-card { min-width: 145px; padding: 13px 16px; display: grid; }
.signal-card span { color: #8dbce8; font-size: .76rem; text-transform: uppercase; letter-spacing: .1em; }.signal-card strong { margin-top: 2px; }
.signal-card-camera { top: 35px; left: 12px; }.signal-card-audio { top: 86px; right: 4px; }.signal-card-position { bottom: 135px; left: 0; }
.alert-card { right: 0; bottom: 18px; width: min(430px, 92%); padding: 16px 18px; display: flex; align-items: flex-start; gap: 13px; border-color: rgba(255,119,45,.7); }
.alert-dot { flex: 0 0 12px; width: 12px; height: 12px; margin-top: 7px; border-radius: 50%; background: var(--orange); box-shadow: 0 0 0 7px rgba(255,104,0,.14); }
.alert-card div { display: grid; }.alert-card small { color: #ffb17d; font-weight: 900; letter-spacing: .1em; }.alert-card strong { margin: 3px 0; }.alert-card div span { color: #aac7e2; font-size: .86rem; }
.trust-strip { display: grid; grid-template-columns: repeat(4, 1fr); background: #fff; border-bottom: 1px solid var(--line); box-shadow: 0 14px 32px rgba(9,38,68,.06); }
.trust-strip div { min-height: 110px; padding: 27px 30px; display: grid; place-content: center; border-right: 1px solid var(--line); }.trust-strip div:last-child { border: 0; }
.trust-strip strong { font-size: 1.35rem; color: var(--navy-2); }.trust-strip span { color: var(--muted); }
.section { padding: 105px max(24px, calc((100vw - 1280px) / 2)); }
.section-heading { max-width: 790px; margin-bottom: 50px; }.section-heading h2, .security-copy h2, .pilot-card h2, .contact-section h2 { margin: 0; font-size: clamp(2.2rem, 4vw, 4rem); line-height: 1.07; letter-spacing: -.045em; }.section-heading > p:last-child { max-width: 700px; color: var(--muted); font-size: 1.08rem; }
.process-section { background: var(--paper); }
.process-grid { counter-reset: step; list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.process-grid li { position: relative; min-height: 300px; padding: 28px; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 15px 35px rgba(15,47,77,.05); }
.step-number { position: absolute; top: 20px; right: 22px; color: #bfd0df; font-weight: 900; font-size: 1.4rem; }.step-icon { display: grid; place-items: center; width: 56px; height: 56px; margin: 45px 0 30px; border-radius: 17px; color: #fff; background: linear-gradient(135deg, var(--blue), #075db6); font-size: 1.65rem; font-weight: 900; box-shadow: 0 10px 25px rgba(22,136,255,.2); }
.process-grid h3 { margin: 0 0 12px; font-size: 1.25rem; }.process-grid p { margin: 0; color: var(--muted); }
.product-section { background: linear-gradient(145deg, #061a31, #0b3158); color: #fff; }
.section-heading.light p:last-child { color: #bdd5ea; }
.surface-tabs { display: flex; gap: 8px; margin-bottom: 20px; }
.surface-tabs button { min-height: 46px; padding: 10px 18px; border: 1px solid #416e95; border-radius: 12px; color: #b9d1e6; background: transparent; font-weight: 900; cursor: pointer; }.surface-tabs button[aria-selected="true"] { color: #fff; border-color: var(--orange); background: rgba(255,104,0,.14); box-shadow: inset 0 -3px var(--orange); }
.surface-stage { min-height: 600px; }.surface-panel { display: grid; grid-template-columns: .72fr 1.28fr; gap: 50px; align-items: center; padding: 45px; border: 1px solid #2c577d; border-radius: 30px; background: #0a2744; }.surface-panel[hidden] { display: none; }
.surface-label { color: #76b9f6; font-size: .78rem; font-weight: 900; letter-spacing: .14em; }.surface-copy h3 { margin: 0 0 18px; font-size: 2rem; line-height: 1.15; }.surface-copy > p:not(.surface-label), .surface-copy li { color: #c3d7e9; }.surface-copy ul { padding-left: 20px; }.surface-copy li { margin: 9px 0; }
.surface-shot { margin: 0; padding: 12px; overflow: hidden; border-radius: 20px; background: #eaf2fa; box-shadow: 0 25px 55px rgba(0,0,0,.28); }.surface-shot img { width: 100%; max-height: 520px; object-fit: cover; object-position: top; border-radius: 13px; }.surface-shot figcaption { padding: 10px 5px 2px; color: #5c6e80; font-size: .78rem; }.mobile-shot { max-width: 390px; justify-self: center; }.mobile-shot img { max-height: 580px; object-fit: contain; }
.observation-section { background: #fff; }.observation-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }.observation-grid article { position: relative; padding: 28px; border: 1px solid var(--line); border-radius: 20px; background: #fff; }.observation-grid span { color: var(--orange); font-size: .8rem; font-weight: 900; letter-spacing: .12em; }.observation-grid h3 { margin: 14px 0 8px; }.observation-grid p { margin: 0; color: var(--muted); }
.security-section { display: grid; grid-template-columns: 1.25fr .75fr; gap: 80px; background: var(--navy); color: #fff; }.security-copy > p:not(.eyebrow) { color: #bfd3e7; max-width: 700px; }.security-points { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 38px; }.security-points div { padding: 20px; border-left: 3px solid var(--blue); background: rgba(255,255,255,.04); }.security-points strong, .security-points span { display: block; }.security-points span { margin-top: 6px; color: #b7cee2; font-size: .9rem; }
.priority-card { align-self: center; padding: 28px; border: 1px solid #37648a; border-radius: 26px; background: #0a2b4b; box-shadow: 0 25px 60px rgba(0,0,0,.26); }.priority-card > p:first-child { color: #88b9e5; font-size: .78rem; font-weight: 900; letter-spacing: .14em; }.priority { display: flex; gap: 14px; align-items: flex-start; padding: 18px 0; border-top: 1px solid #31516d; }.priority > span { flex: 0 0 14px; height: 14px; margin-top: 5px; border-radius: 50%; }.priority div { display: grid; }.priority small { margin-top: 4px; color: #bad0e2; }.priority.green > span { background: #39b77d; }.priority.yellow > span { background: #ffc53d; }.priority.red > span { background: #ff6258; }.priority-note { color: #aac4dc; font-size: .86rem; }
.pilot-section { background: var(--paper); }.pilot-card { padding: 48px; display: flex; align-items: center; justify-content: space-between; gap: 40px; border-radius: 30px; color: #fff; background: linear-gradient(120deg, #0a2e56, #0756a0); box-shadow: 0 25px 55px rgba(4,52,98,.16); }.pilot-card > div { max-width: 780px; }.pilot-card p:not(.eyebrow) { color: #cae0f3; }.pilot-card .button { flex: 0 0 auto; }
.pilot-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 22px; }.pilot-facts div { padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }.pilot-facts span { color: var(--orange); font-weight: 900; }.pilot-facts strong { display: block; margin: 13px 0 6px; }.pilot-facts p { margin: 0; color: var(--muted); font-size: .9rem; }
.faq-section { background: #fff; }.faq-list { max-width: 900px; }.faq-list details { border-top: 1px solid var(--line); }.faq-list details:last-child { border-bottom: 1px solid var(--line); }.faq-list summary { padding: 22px 4px; cursor: pointer; list-style: none; font-size: 1.08rem; font-weight: 850; }.faq-list summary::after { content: "+"; float: right; color: var(--orange); font-size: 1.4rem; }.faq-list details[open] summary::after { content: "−"; }.faq-list details p { margin: 0 35px 22px 4px; color: var(--muted); }
.contact-section { padding: 75px max(24px, calc((100vw - 1280px) / 2)); display: flex; align-items: center; justify-content: space-between; gap: 40px; color: #fff; background: linear-gradient(115deg, var(--orange), #e64e00); }.contact-section div { max-width: 740px; }.contact-section p:not(.eyebrow) { color: #fff0e8; }
.site-footer { padding: 55px max(24px, calc((100vw - 1280px) / 2)) 28px; display: grid; grid-template-columns: 1.6fr 1fr .7fr .7fr; gap: 42px; color: #b8cfe3; background: #041322; }.site-footer > div { display: flex; flex-direction: column; gap: 7px; }.site-footer strong { color: #fff; }.site-footer a { text-decoration: none; }.site-footer a:hover { color: #fff; }.footer-brand { flex-direction: row !important; align-items: center; }.footer-brand img { width: 58px; height: 58px; border-radius: 15px; }.footer-brand div { display: grid; margin-left: 12px; }.footer-note { grid-column: 1/-1; margin: 22px 0 0; padding-top: 22px; border-top: 1px solid #254059; font-size: .82rem; }
:focus-visible { outline: 3px solid #65b1ff; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { :root { scroll-behavior: auto; } * { transition: none !important; } }
@media (max-width: 1050px) {
  .hero { grid-template-columns: 1fr; }.hero-visual { min-height: 480px; max-width: 700px; width: 100%; justify-self: center; }
  .process-grid, .pilot-facts { grid-template-columns: 1fr 1fr; }
  .surface-panel { grid-template-columns: 1fr; }.surface-copy { max-width: 720px; }.surface-shot { width: 100%; }
  .security-section { grid-template-columns: 1fr; }.priority-card { max-width: 720px; }.site-footer { grid-template-columns: 1.4fr 1fr 1fr; }.site-footer > div:last-of-type { display: none; }
}
@media (max-width: 820px) {
  .site-header { min-height: 68px; padding-inline: 18px; }.menu-button { display: inline-flex; flex: 0 0 auto; padding: 9px 12px; }.site-navigation { position: absolute; top: 67px; left: 0; right: 0; display: none; padding: 18px; flex-direction: column; align-items: stretch; gap: 4px; background: #061a31; border-top: 1px solid #284a69; box-shadow: 0 18px 28px rgba(0,0,0,.25); }.site-navigation.open { display: flex; }.site-navigation a { min-height: 46px; padding: 12px; }
  .hero { padding-top: 72px; }.trust-strip { grid-template-columns: 1fr 1fr; }.trust-strip div:nth-child(2) { border-right: 0; }.trust-strip div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .observation-grid { grid-template-columns: 1fr 1fr; }.pilot-card, .contact-section { align-items: flex-start; flex-direction: column; }.security-points { grid-template-columns: 1fr; }.site-footer { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .section { padding-top: 74px; padding-bottom: 74px; }.hero { min-height: auto; padding-bottom: 50px; }.hero h1 { font-size: 3.6rem; }.hero-visual { min-height: 410px; }.animal-orbit { inset: 75px 30px 70px; }.animal-orbit img { width: 140px; height: 140px; }.signal-card { min-width: 122px; padding: 10px 12px; font-size: .83rem; }.signal-card-camera { left: 0; }.signal-card-audio { right: 0; }.signal-card-position { bottom: 110px; }.alert-card { bottom: 0; }
  .trust-strip, .process-grid, .observation-grid, .pilot-facts, .site-footer { grid-template-columns: 1fr; }.trust-strip div { border-right: 0; border-bottom: 1px solid var(--line); }.trust-strip div:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
  .surface-tabs { overflow-x: auto; }.surface-tabs button { white-space: nowrap; }.surface-panel { padding: 25px; }.pilot-card { padding: 30px; }.site-footer > div:last-of-type { display: flex; }.footer-note { grid-column: 1; }
}
