:root{
  --bg:#06070a;
  --bg-elev:#0c0f14;
  --bg-elev-2:#11151c;
  --chrome-1:#eef1f5;
  --chrome-1_1:#eef1f5;
  --chrome-2:#8d95a3;
  --chrome-3:#565d69;
  --gold:#e6a13d;
  --gold-bright:#ffc876;
  --cyan:#49c9d6;
  --line:rgba(238,241,245,0.10);
  --line-bright:rgba(238,241,245,0.22);
}

[data-theme="light"]{
  --bg:#f5f6f8;
  --bg-elev:#ffffff;
  --bg-elev-2:#eceef2;
  --chrome-1:#14171c;
  --chrome-1_1:#eef1f5;
  --chrome-2:#8d95a3;
  --chrome-3:#848d9c;
  --gold:#b8791f;
  --gold-bright:#d99a3d;
  --cyan:#0e93a0;
  --line:rgba(20,23,28,0.10);
  --line-bright:rgba(20,23,28,0.26);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
background:var(--bg);
color:var(--chrome-1);
font-family:'Inter',sans-serif;
overflow-x:hidden;
-webkit-font-smoothing:antialiased;
}
::selection{background:var(--gold);color:#06070a;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}

h1,h2,h3,h4,.display{
font-family:'Rajdhani',sans-serif;
font-weight:700;
letter-spacing:0.01em;
color:var(--chrome-1);
text-transform:uppercase;
}
.mono{
font-family:'JetBrains Mono',monospace;
letter-spacing:0.14em;
text-transform:uppercase;
font-size:12px;
}
.eyebrow{
display:flex;
align-items:center;
gap:10px;
color:var(--gold);
margin-bottom:18px;
}
.eyebrow::before{
content:"";
width:22px;height:1px;
background:var(--gold);
display:inline-block;
}
.wrap{
max-width:1200px;
margin:0 auto;
padding:0 32px;
}
section{position:relative;}

/* ---------- Background scan/grid texture ---------- */
.grid-bg{
position:fixed;inset:0;
background-image:
    linear-gradient(var(--line) 1px, transparent 1px),
    linear-gradient(90deg, var(--line) 1px, transparent 1px);
background-size:64px 64px;
opacity:0.6;
pointer-events:none;
z-index:0;
mask-image:radial-gradient(ellipse 80% 60% at 50% 0%, black 0%, transparent 75%);
}

/* ---------- Nav ---------- */
header{
position:fixed;top:0;left:0;right:0;
z-index:100;
background:rgba(6,7,10,0.78);
backdrop-filter:blur(14px);
border-bottom:1px solid var(--line);
}
.navbar{
max-width:1200px;margin:0 auto;
padding:16px 32px;
display:flex;align-items:center;justify-content:space-between;
}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:38px;width:auto;}
.brand-text{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:18px;letter-spacing:0.06em;line-height:1.1;}
.brand-text span{display:block;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:0.22em;color:var(--gold);font-weight:400;margin-top:2px;}
nav ul{list-style:none;display:flex;gap:36px;}
nav a{
font-family:'JetBrains Mono',monospace;
font-size:12px;letter-spacing:0.1em;
text-transform:uppercase;
color:var(--chrome-2);
transition:color .25s;
position:relative;
}
nav a:hover{color:var(--chrome-1);}
.nav-links{display:flex;align-items:center;gap:36px;}
.btn{
font-family:'JetBrains Mono',monospace;
font-size:12px;letter-spacing:0.1em;text-transform:uppercase;
padding:11px 22px;
border:1px solid var(--gold);
color:var(--gold);
display:inline-flex;align-items:center;gap:8px;
transition:all .25s ease;
white-space:nowrap;
}
.btn:hover{background:var(--gold);color:#06070a;box-shadow:0 0 24px rgba(230,161,61,0.35);}
.btn-solid{background:var(--gold);color:#06070a;}
.btn-solid:hover{background:var(--gold-bright);border-color:var(--gold-bright);}
.menu-toggle{display:none;background:none;border:none;color:var(--chrome-1);font-size:24px;cursor:pointer;}

/* ---------- Hero ---------- */
.hero{
min-height:100vh;
display:flex;flex-direction:column;justify-content:center;
padding-top:120px;padding-bottom:60px;
position:relative;
overflow:hidden;
}
.hero-radar{
position:absolute;
right:-220px;top:50%;
transform:translateY(-50%);
width:900px;height:900px;
z-index:0;
opacity:0.55;
}
.hero-radar svg{width:100%;height:100%;}
[data-theme="light"] .grid-bg{opacity:0.6;}
[data-theme="light"] .hero-radar{opacity:0.75;}
[data-theme="light"] header{background:rgba(245,246,248,0.82);}

.radar-ring{
fill:none;stroke:var(--line-bright);stroke-width:1;
}
.radar-sweep{
transform-origin:450px 450px;
animation:sweep 6s linear infinite;
}
@keyframes sweep{ to{ transform:rotate(360deg); } }
.hero-inner{
position:relative;z-index:2;
max-width:1200px;margin:0 auto;width:100%;
padding:0 32px;
}
.hero-content{max-width:760px;}
.hero h1{
font-size:clamp(42px,6.4vw,84px);
line-height:0.98;
margin-bottom:26px;
}
.hero h1 em{
font-style:normal;
color:transparent;
-webkit-text-stroke:1.5px var(--chrome-1);
}
.hero h1 .accent{color:var(--gold);-webkit-text-stroke:0;}
.hero p.lead{
font-size:17px;line-height:1.7;
color:var(--chrome-2);
max-width:540px;
margin-bottom:40px;
}
.hero-ctas{display:flex;gap:16px;margin-bottom:70px;flex-wrap:wrap;}

.telemetry{
display:grid;
grid-template-columns:repeat(4,1fr);
border-top:1px solid var(--line);
padding-top:24px;
}
.telemetry .item{
padding-right:24px;
border-right:1px solid var(--line);
}
.telemetry .item:last-child{border-right:none;}
.telemetry .val{
font-family:'Rajdhani',sans-serif;font-weight:700;
font-size:30px;color:var(--chrome-1);
display:flex;align-items:baseline;gap:4px;
}
.telemetry .val .unit{font-size:14px;color:var(--gold);font-family:'JetBrains Mono',monospace;}
.telemetry .lbl{
font-family:'JetBrains Mono',monospace;font-size:10.5px;
letter-spacing:0.12em;color:var(--chrome-3);text-transform:uppercase;
margin-top:6px;
}

/* ---------- Section heading pattern ---------- */
.section-head{
display:flex;justify-content:space-between;align-items:flex-end;
margin-bottom:56px;flex-wrap:wrap;gap:24px;
border-bottom:1px solid var(--line);
padding-bottom:28px;
}
.section-head h2{font-size:clamp(30px,3.6vw,46px);line-height:1.05;max-width:640px;}
.section-head .desc{max-width:360px;color:var(--chrome-2);font-size:14.5px;line-height:1.7;}
section.pad{padding:120px 0;}

/* ---------- About ---------- */
.about-grid{
display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;
}
.about-copy p{color:var(--chrome-2);font-size:15.5px;line-height:1.85;margin-bottom:22px;}
.about-copy p:last-child{margin-bottom:0;}
.about-list{margin-top:32px;display:flex;flex-direction:column;gap:16px;}
.about-list .row{display:flex;gap:16px;align-items:flex-start;border-top:1px solid var(--line);padding-top:16px;}
.about-list .row:first-child{border-top:none;padding-top:0;}
.about-list .num{font-family:'JetBrains Mono',monospace;color:var(--gold);font-size:12px;padding-top:3px;}
.about-list .row-title{font-family:'Rajdhani',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:0.03em;font-size:15px;margin-bottom:4px;}
.about-list .row-desc{color:var(--chrome-2);font-size:13.5px;line-height:1.6;}

.path-visual{
aspect-ratio:1/1.05;
border:1px solid var(--line);
position:relative;
background:
    radial-gradient(circle at 30% 20%, rgba(230,161,61,0.10), transparent 55%),
    linear-gradient(var(--bg-elev), var(--bg-elev));
overflow:hidden;
}
.path-visual svg{width:100%;height:100%;}
.corner{position:absolute;width:18px;height:18px;border-color:var(--gold);}
.corner.tl{top:-1px;left:-1px;border-top:1.5px solid;border-left:1.5px solid;}
.corner.tr{top:-1px;right:-1px;border-top:1.5px solid;border-right:1.5px solid;}
.corner.bl{bottom:-1px;left:-1px;border-bottom:1.5px solid;border-left:1.5px solid;}
.corner.br{bottom:-1px;right:-1px;border-bottom:1.5px solid;border-right:1.5px solid;}

/* ---------- Sectors ---------- */
.sector-grid{
display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
background:var(--line);
border:1px solid var(--line);
}
.sector-card {
    background:
        linear-gradient(rgba(10, 10, 10, 0.72), rgba(10, 10, 10, 0.72)),
        var(--sector-image) center/cover no-repeat;

    padding: 38px 32px;
    position: relative;
    transition: background .3s ease;
}

.sector-card:hover {
    background:
        linear-gradient(rgba(10, 10, 10, 0.5), rgba(10, 10, 10, 0.5)),
        var(--sector-image) center/cover no-repeat;
}
.sector-card .corner{opacity:0;transition:opacity .3s;}
.sector-card:hover .corner{opacity:1;}
.sector-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px;}
.sector-code{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.14em;color:var(--gold);}
.sector-icon{width:40px;height:40px;color:var(--chrome-2);transition:color .3s;}
.sector-card:hover .sector-icon{color:var(--gold);}
.sector-card h3{font-size:22px;margin-bottom:12px;letter-spacing:0.02em;color:var(  --chrome-1_1);}
.sector-card p{color:var(--chrome-2);font-size:14px;line-height:1.75;margin-bottom:20px;}
.tags{display:flex;flex-wrap:wrap;gap:8px;}
.tag{
font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.06em;
color:var(--chrome-3);border:1px solid var(--line-bright);
padding:5px 9px;text-transform:uppercase;
}

/* ---------- Technology / AI section ---------- */
.tech-section{
background:var(--bg-elev);
border-top:1px solid var(--line);
border-bottom:1px solid var(--line);
}
.tech-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:80px;align-items:center;}
.tech-feature{
display:flex;gap:20px;padding:22px 0;border-top:1px solid var(--line);
}
.tech-feature:first-child{border-top:none;padding-top:0;}
.tech-feature .idx{font-family:'JetBrains Mono',monospace;color:var(--gold);font-size:12px;padding-top:4px;min-width:28px;}
.tech-feature h4{font-size:16px;letter-spacing:0.02em;margin-bottom:6px;}
.tech-feature p{color:var(--chrome-2);font-size:13.5px;line-height:1.7;}
.node-visual{position:relative;aspect-ratio:1/1;}
.node-visual svg{width:100%;height:100%;}

/* ---------- Team ---------- */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.team-card{background:var(--bg);padding:34px 26px;text-align:left;}
.avatar{
width:56px;height:56px;
border:1px solid var(--line-bright);
display:flex;align-items:center;justify-content:center;
font-family:'Rajdhani',sans-serif;font-weight:700;font-size:18px;
color:var(--gold);margin-bottom:22px;
position:relative;
}
.avatar::after{
content:"";position:absolute;inset:5px;border:1px solid var(--line);
}
.team-card h4{font-size:16px;letter-spacing:0.02em;margin-bottom:4px;}
.team-card .role{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--gold);letter-spacing:0.08em;text-transform:uppercase;margin-bottom:14px;}
.team-card p{color:var(--chrome-2);font-size:13px;line-height:1.65;}

/* ---------- Contact ---------- */
.contact-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:80px;}
.contact-info .row{border-top:1px solid var(--line);padding:22px 0;}
.contact-info .row:first-child{padding-top:0;}
.contact-info .lbl{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:0.12em;color:var(--chrome-3);text-transform:uppercase;margin-bottom:8px;}
.contact-info .val{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:18px;color:var(--chrome-1);}
.contact-info .val a:hover{color:var(--gold);}

form{display:flex;flex-direction:column;gap:22px;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
.field label{
display:block;font-family:'JetBrains Mono',monospace;font-size:10.5px;
letter-spacing:0.1em;color:var(--chrome-3);text-transform:uppercase;margin-bottom:10px;
}
.field input,.field textarea,.field select{
width:100%;background:transparent;border:none;border-bottom:1px solid var(--line-bright);
color:var(--chrome-1);font-family:'Inter',sans-serif;font-size:15px;
padding:10px 2px;outline:none;transition:border-color .25s;
}
.field select option{background:var(--bg-elev);}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold);}
.field textarea{resize:vertical;min-height:90px;}
.field input::placeholder,.field textarea::placeholder{color:var(--chrome-3);}
.submit-row{display:flex;align-items:center;gap:18px;margin-top:6px;}
.form-note{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--chrome-3);}

/* ---------- Footer ---------- */
footer{border-top:1px solid var(--line);padding:56px 0 32px;}
.footer-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:40px;margin-bottom:48px;}
.footer-brand{display:flex;align-items:center;gap:12px;}
.footer-brand img{height:34px;}
.footer-cols{display:flex;gap:64px;flex-wrap:wrap;}
.footer-col h5{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.12em;color:var(--chrome-3);text-transform:uppercase;margin-bottom:16px;}
.footer-col a{display:block;color:var(--chrome-2);font-size:14px;margin-bottom:10px;transition:color .2s;}
.footer-col a:hover{color:var(--gold);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:28px;border-top:1px solid var(--line);flex-wrap:wrap;gap:12px;}
.footer-bottom p{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--chrome-3);}

/* ---------- Reveal on scroll ---------- */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:translateY(0);}

@media (prefers-reduced-motion: reduce){
.radar-sweep{animation:none;}
.reveal{transition:none;opacity:1;transform:none;}
}

/* ---------- Responsive ---------- */
@media (max-width: 980px) {

    .nav-links {
        position: fixed;

        /* Center the menu */
        top: 82px;
        left: 50%;
        right: auto;

        width: min(90vw, 420px);

        /* Glass effect */
        background: color-mix(
            in srgb,
            var(--bg-elev) 72%,
            transparent
        );

        backdrop-filter: blur(20px) saturate(140%);
        -webkit-backdrop-filter: blur(20px) saturate(140%);

        /* Border */
        border: 1px solid var(--line-bright);
        border-radius: 14px;

        /* Shadow */
        box-shadow:
            0 20px 60px rgba(0, 0, 0, 0.25),
            0 0 30px rgba(230, 161, 61, 0.05);

        /* Layout */
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: stretch;

        padding: 28px;

        gap: 28px;

        /* Hidden state */
        transform: translate(-50%, -15px);
        opacity: 0;
        visibility: hidden;

        transition:
            transform .35s cubic-bezier(.4,0,.2,1),
            opacity .25s ease,
            visibility .35s ease;

        z-index: 99;
    }

    /* Open state */
    .nav-links.open {
        transform: translate(-50%, 0);
        opacity: 1;
        visibility: visible;
    }

    nav ul {
        flex-direction: column;
        gap: 0;
        width: 100%;
    }

    nav ul li {
        width: 100%;
        border-bottom: 1px solid var(--line);
    }

    nav ul li:last-child {
        border-bottom: none;
    }

    nav a {
        display: block;
        padding: 16px 4px;
    }

    .menu-toggle {
        display: block;
        position: relative;
        z-index: 101;
    }

    .about-grid,
    .tech-grid,
    .contact-grid {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .sector-grid {
        grid-template-columns: 1fr 1fr;
    }

    .team-grid {
        grid-template-columns: 1fr 1fr;
    }

    .telemetry {
        grid-template-columns: 1fr 1fr;
        row-gap: 24px;
    }

    .telemetry .item:nth-child(2) {
        border-right: none;
    }

    .field-row {
        grid-template-columns: 1fr;
    }

    .hero-radar {
        opacity: 0.28;
        right: -380px;
    }
}
@media (max-width:620px){
.sector-grid,.team-grid{grid-template-columns:1fr;}
.wrap,.hero-inner{padding:0 20px;}
.navbar{padding:14px 20px;}
section.pad{padding:80px 0;}
}


/* ---------- Theme toggle ---------- */
.theme-toggle{
  appearance:none;
  border:1px solid var(--line-bright);
  background:var(--bg-elev);
  color:var(--chrome-1);
  width:42px;
  height:42px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:18px;
  line-height:1;
  transition:all .25s ease;
}

.theme-toggle:hover{
  border-color:var(--gold);
  color:var(--gold);
  box-shadow:0 0 18px rgba(230,161,61,0.18);
}

.theme-toggle:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:3px;
}

html.theme-transition,
html.theme-transition *,
html.theme-transition *::before,
html.theme-transition *::after{
  transition:
    background-color .25s ease,
    color .25s ease,
    border-color .25s ease,
    fill .25s ease,
    stroke .25s ease !important;
}

/* *************************************** */

/* ---------- Modern Theme Toggle ---------- */

.theme-toggle {
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.toggle-track {
    position: relative;
    width: 58px;
    height: 30px;
    border: 1px solid var(--line-bright);
    background: var(--bg-elev-2);
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 7px;
    transition: all 0.3s ease;
}

.toggle-thumb {
    position: absolute;
    width: 22px;
    height: 22px;
    left: 3px;
    top: 3px;
    border-radius: 50%;
    background: var(--gold);
    box-shadow: 0 0 12px rgba(230, 161, 61, 0.35);
    transition: transform 0.3s cubic-bezier(.4, 0, .2, 1);
}

.toggle-icon {
    position: relative;
    z-index: 2;
    font-size: 13px;
    line-height: 1;
    transition: opacity 0.25s ease;
}

.sun {
    color: #fff;
}

.moon {
    color: var(--chrome-2);
}

/* Light mode */
[data-theme="light"] .toggle-thumb {
    transform: translateX(14px);
}

[data-theme="light"] .sun {
    color: var(--chrome-2);
}

[data-theme="light"] .moon {
    color: #fff;
}

/* Hover */
.theme-toggle:hover .toggle-track {
    border-color: var(--gold);
}

.theme-toggle:hover .toggle-thumb {
    box-shadow: 0 0 18px rgba(230, 161, 61, 0.55);
}

/* Keyboard accessibility */
.theme-toggle:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 4px;
}