:root{
  --ink:    #06080F;
  --bay:    #0A0E1A;
  --rack:   #121829;
  --rack-2: #171E33;
  --steel:  #232C46;
  --mist:   #8792B0;
  --paper:  #E9EEFA;
  --signal: #FFB020;
  --signal-dim: rgba(255,176,32,.14);
  --up:     #3BD69B;

  --display: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
  --body:    'IBM Plex Sans', system-ui, -apple-system, Segoe UI, sans-serif;
  --mono:    'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  --wrap: 1220px;
  --pad: 28px;
  --r: 3px;
  --ease: cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; scroll-padding-top:90px; }

body{
  margin:0;
  background:var(--ink);
  color:var(--paper);
  font-family:var(--body);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img,svg{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }

.wrap{ width:100%; max-width:var(--wrap); margin:0 auto; padding:0 var(--pad); }

.mono{
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.skip{
  position:absolute; left:-9999px; top:0; z-index:200;
  background:var(--signal); color:var(--ink); padding:10px 16px; font-family:var(--mono);
}
.skip:focus{ left:12px; top:12px; }

:focus-visible{ outline:2px solid var(--signal); outline-offset:3px; }

.hdr{
  position:sticky; top:0; z-index:100;
  background:rgba(6,8,15,.72);
  backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;
  transition:border-color .3s var(--ease), background .3s var(--ease);
}
.hdr.is-stuck{ border-bottom-color:var(--steel); background:rgba(6,8,15,.94); }

.hdr__in{ display:flex; align-items:center; justify-content:space-between; height:74px; gap:20px; }

.logo{ display:flex; align-items:center; gap:11px; flex-shrink:0; }
.logo__mark{ width:26px; height:26px; }
.logo__mark .lm-f{ fill:var(--paper); }
.logo__mark .lm-s{ stroke:var(--paper); }
.logo__led{ fill:var(--signal); }
.logo__txt{ font-family:var(--display); font-size:.98rem; letter-spacing:.06em; }
.logo__txt b{ font-weight:700; font-variation-settings:'wdth' 118; }
.logo__txt i{ font-style:normal; font-weight:400; color:var(--mist); margin-left:.42em; }

.nav{ display:flex; align-items:center; gap:30px; }
.nav__a{
  font-size:.92rem; color:var(--mist);
  transition:color .2s var(--ease);
  position:relative; padding:6px 0;
}
.nav__a:hover{ color:var(--paper); }
.nav__a.is-active{ color:var(--paper); }
.nav__a.is-active::after{
  content:''; position:absolute; left:0; right:0; bottom:0;
  height:1px; background:var(--signal);
}
.nav__status{
  display:flex; align-items:center; gap:8px;
  font-family:var(--mono); font-size:.66rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--mist);
  padding-left:30px; border-left:1px solid var(--steel);
}

.led{ width:6px; height:6px; border-radius:50%; display:inline-block; flex-shrink:0; }
.led--up{ background:var(--up); box-shadow:0 0 8px rgba(59,214,155,.8); animation:blink 2.6s infinite; }
@keyframes blink{ 0%,92%{opacity:1} 94%{opacity:.25} 100%{opacity:1} }

.burger{
  display:none; width:38px; height:38px; background:none; border:1px solid var(--steel);
  border-radius:var(--r); cursor:pointer; padding:0; position:relative;
}
.burger span{
  position:absolute; left:10px; width:18px; height:1.5px; background:var(--paper);
  transition:transform .3s var(--ease), opacity .2s;
}
.burger span:first-child{ top:15px; }
.burger span:last-child{ top:21px; }
.burger[aria-expanded="true"] span:first-child{ transform:translateY(3px) rotate(45deg); }
.burger[aria-expanded="true"] span:last-child{ transform:translateY(-3px) rotate(-45deg); }

.btn{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--mono); font-size:.74rem; letter-spacing:.12em; text-transform:uppercase;
  background:var(--signal); color:var(--ink);
  padding:14px 22px; border:1px solid var(--signal); border-radius:var(--r);
  cursor:pointer; transition:background .2s var(--ease), transform .2s var(--ease);
}
.btn:hover{ background:#FFC24D; border-color:#FFC24D; }
.btn:active{ transform:translateY(1px); }
.btn--sm{ padding:10px 16px; font-size:.68rem; }
.btn--ghost{
  background:transparent; color:var(--paper); border-color:var(--steel);
}
.btn--ghost:hover{ background:var(--rack); border-color:var(--mist); }
.btn--block{ width:100%; justify-content:center; padding:17px 22px; }

.hero{
  position:relative;
  padding:96px 0 88px;
  border-bottom:1px solid var(--steel);
  overflow:hidden;
}
.hero::before{
  content:''; position:absolute; inset:0;
  background:
    radial-gradient(900px 420px at 78% 28%, rgba(255,176,32,.07), transparent 65%),
    radial-gradient(700px 500px at 8% 90%, rgba(43,66,120,.24), transparent 70%);
  pointer-events:none;
}
.hero__in{ position:relative; }
.hero__in > div{ max-width:60ch; }

.eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--mono); font-size:.7rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--signal); margin-bottom:26px;
}
.eyebrow::before{ content:''; width:26px; height:1px; background:var(--signal); }

.hero h1{
  font-family:var(--display);
  font-variation-settings:'wdth' 122;
  font-weight:700;
  font-size:clamp(2.5rem, 5.4vw, 4.6rem);
  line-height:.98;
  letter-spacing:-.015em;
  text-transform:uppercase;
  margin:0 0 26px;
}
.hero h1 em{ font-style:normal; color:var(--signal); }

.hero__lead{
  font-size:1.12rem; color:var(--mist); max-width:52ch; margin:0 0 36px;
}
.hero__cta{ display:flex; gap:14px; flex-wrap:wrap; }

.hero__bg{ position:absolute; inset:0; overflow:hidden; }
.hero__bg img{
  width:100%; height:100%; object-fit:cover;
  opacity:.34; filter:saturate(.75) contrast(1.05);
}
.hero__bg::after{
  content:''; position:absolute; inset:0;
  background:
    linear-gradient(90deg, var(--ink) 6%, rgba(6,8,15,.72) 46%, rgba(6,8,15,.34) 100%),
    linear-gradient(180deg, rgba(6,8,15,.65) 0%, transparent 30%, var(--ink) 100%);
}
.hero--photo::before{ opacity:.55; }

.strip{
  display:grid; grid-template-columns:1fr 1fr; gap:1px;
  background:var(--steel); border-bottom:1px solid var(--steel);
}
.figure{ margin:0; position:relative; background:var(--ink); overflow:hidden; }
.figure img{
  width:100%; height:340px; object-fit:cover; display:block;
  filter:saturate(.8) contrast(1.04);
  transition:transform .8s var(--ease);
}
.figure:hover img{ transform:scale(1.03); }
.figure figcaption{
  position:absolute; left:0; right:0; bottom:0;
  padding:44px 26px 20px; color:var(--paper);
  background:linear-gradient(180deg, transparent, rgba(6,8,15,.92));
  font-size:.66rem; line-height:1.5;
}

.stats{ border-bottom:1px solid var(--steel); background:var(--bay); }
.stats__grid{ display:grid; grid-template-columns:repeat(4,1fr); }
.stat{ padding:36px 30px; border-left:1px solid var(--steel); }
.stat:first-child{ border-left:0; padding-left:0; }
.stat__k{ font-family:var(--mono); font-size:.66rem; letter-spacing:.16em; text-transform:uppercase; color:var(--signal); }
.stat__v{
  font-family:var(--display); font-variation-settings:'wdth' 112;
  font-size:2.1rem; font-weight:600; line-height:1.15; margin:8px 0 6px;
}
.stat__n{ font-size:.86rem; color:var(--mist); line-height:1.5; }

.sec{ padding:96px 0; border-bottom:1px solid var(--steel); }
.sec--flat{ border-bottom:0; }
.sec--bay{ background:var(--bay); }

.sec__head{ max-width:64ch; margin-bottom:52px; }
.sec__head h2{
  font-family:var(--display); font-variation-settings:'wdth' 112;
  font-weight:700; font-size:clamp(1.85rem,3.3vw,2.7rem); line-height:1.08;
  letter-spacing:-.01em; margin:14px 0 18px;
}
.sec__head p{ color:var(--mist); font-size:1.05rem; margin:0; }
.sec__head--flush{ margin-bottom:0; }

.h2{
  font-family:var(--display); font-variation-settings:'wdth' 112;
  font-weight:700; font-size:clamp(1.85rem,3.3vw,2.7rem); line-height:1.08;
  letter-spacing:-.01em; margin:14px 0 18px;
}
.lede{ color:var(--mist); margin:0 0 26px; font-size:1.02rem; }
.kicker{ color:var(--signal); }
.label{ color:var(--mist); display:block; margin-bottom:18px; }
.label--gap{ margin-top:36px; }

.cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--steel); border:1px solid var(--steel); }
.card{
  background:var(--ink); padding:34px 30px 30px;
  display:flex; flex-direction:column;
  transition:background .3s var(--ease);
}
.card:hover{ background:var(--rack); }
.card__code{
  font-family:var(--mono); font-size:.66rem; letter-spacing:.16em; color:var(--signal);
  border:1px solid var(--signal-dim); background:var(--signal-dim);
  padding:3px 8px; border-radius:2px; align-self:flex-start;
}
.card__t{
  font-family:var(--display); font-variation-settings:'wdth' 108;
  font-size:1.32rem; font-weight:600; margin:20px 0 10px;
}
.card__lead{ color:var(--mist); font-size:.95rem; margin:0 0 20px; }
.card__specs{ list-style:none; margin:0 0 26px; padding:0; flex:1; }
.card__specs li{
  font-size:.88rem; color:var(--mist); padding:8px 0 8px 18px;
  border-top:1px solid rgba(35,44,70,.6); position:relative;
}
.card__specs li::before{
  content:''; position:absolute; left:0; top:16px;
  width:5px; height:1px; background:var(--signal);
}
.card__price{
  display:flex; align-items:baseline; justify-content:space-between;
  border-top:1px solid var(--steel); padding-top:18px; margin-bottom:16px;
}
.card__price .mono{ color:var(--mist); }
.card__price b{
  font-family:var(--display); font-variation-settings:'wdth' 110;
  font-size:1.05rem; font-weight:600; color:var(--signal);
}

.infra{ display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--steel); border:1px solid var(--steel); }
.blk{ background:var(--ink); padding:38px 34px; }
.blk__t{
  font-family:var(--display); font-variation-settings:'wdth' 110;
  font-size:1.45rem; font-weight:600; margin:0 0 10px;
}
.blk__lead{ color:var(--mist); font-size:.95rem; margin:0 0 24px; max-width:46ch; }
.spec{ width:100%; border-collapse:collapse; }
.spec td{
  padding:11px 0; border-top:1px solid rgba(35,44,70,.7);
  font-size:.9rem; vertical-align:top;
}
.spec td:first-child{
  font-family:var(--mono); font-size:.68rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--mist); width:38%; padding-right:16px; padding-top:14px;
}

.tags{ display:flex; flex-wrap:wrap; gap:10px; }
.tag{
  font-family:var(--mono); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase;
  border:1px solid var(--steel); border-radius:2px; padding:9px 14px; color:var(--mist);
  background:var(--bay);
}
.tag--on{ color:var(--signal); border-color:var(--signal-dim); background:var(--signal-dim); }

.split{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; }
.split--gap{ margin-top:56px; }

.steps{ counter-reset:s; list-style:none; margin:0; padding:0; }
.steps li{
  counter-increment:s; position:relative; padding:0 0 30px 62px; border-left:1px solid var(--steel);
  margin-left:14px;
}
.steps li:last-child{ border-left-color:transparent; padding-bottom:0; }
.steps li::before{
  content:counter(s,decimal-leading-zero);
  position:absolute; left:-14px; top:-2px;
  width:28px; height:28px; border-radius:50%;
  background:var(--ink); border:1px solid var(--steel);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--mono); font-size:.62rem; color:var(--signal);
}
.steps h4{ font-family:var(--display); font-size:1.05rem; font-weight:600; margin:0 0 6px; }
.steps p{ color:var(--mist); font-size:.93rem; margin:0; }

.band{
  padding:84px 0; text-align:center; position:relative; overflow:hidden;
  background:var(--bay); border-bottom:1px solid var(--steel);
}
.band::before{
  content:''; position:absolute; inset:0;
  background:radial-gradient(700px 300px at 50% 0%, rgba(255,176,32,.09), transparent 70%);
}
.band__bg{ position:absolute; inset:0; overflow:hidden; }
.band__bg img{ width:100%; height:100%; object-fit:cover; opacity:.26; filter:saturate(.7); }
.band__bg::after{
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 50% 50%, rgba(6,8,15,.72), rgba(6,8,15,.94));
}
.band__in{ position:relative; }
.band h2{
  font-family:var(--display); font-variation-settings:'wdth' 118; text-transform:uppercase;
  font-weight:700; font-size:clamp(1.8rem,4vw,3rem); line-height:1.02; margin:16px 0 18px;
}
.band p{ color:var(--mist); max-width:54ch; margin:0 auto 32px; }
.band__cta{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

.contact{ display:grid; grid-template-columns:1.15fr .85fr; gap:64px; align-items:start; }

.field{ margin-bottom:20px; }
.field label{
  display:block; font-family:var(--mono); font-size:.66rem; letter-spacing:.14em;
  text-transform:uppercase; color:var(--mist); margin-bottom:9px;
}
.field input, .field select, .field textarea{
  width:100%; background:var(--bay); border:1px solid var(--steel); border-radius:var(--r);
  color:var(--paper); font-family:var(--body); font-size:.98rem;
  padding:14px 15px; transition:border-color .2s var(--ease), background .2s var(--ease);
}
.field textarea{ min-height:140px; resize:vertical; }
.field input:focus, .field select:focus, .field textarea:focus{
  outline:none; border-color:var(--signal); background:var(--rack);
}
.field input::placeholder, .field textarea::placeholder{ color:#586382; }
.field--err input, .field--err select, .field--err textarea{ border-color:#E4574A; }
.field__err{ color:#E4574A; font-size:.8rem; margin-top:7px; font-family:var(--mono); letter-spacing:.06em; }
.row2{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.hp{ position:absolute; left:-9999px; opacity:0; height:0; }

.note{ color:var(--mist); font-size:.82rem; margin-top:16px; }

.alert{
  border:1px solid var(--steel); border-left:2px solid var(--signal);
  background:var(--bay); padding:20px 22px; margin-bottom:30px; border-radius:var(--r);
}
.alert--ok{ border-left-color:var(--up); }
.alert h3{ font-family:var(--display); font-size:1.1rem; margin:0 0 6px; font-weight:600; }
.alert p{ margin:0; color:var(--mist); font-size:.93rem; }

.info{ border:1px solid var(--steel); background:var(--bay); }
.info__row{ padding:22px 26px; border-bottom:1px solid var(--steel); }
.info__row:last-child{ border-bottom:0; }
.info__k{ font-family:var(--mono); font-size:.64rem; letter-spacing:.16em; text-transform:uppercase; color:var(--signal); }
.info__v{ margin-top:7px; font-size:.98rem; }
.info__v a:hover{ color:var(--signal); }
.info__link{ display:inline-block; margin-top:10px; }

.faq{ border-top:1px solid var(--steel); }
.faq details{ border-bottom:1px solid var(--steel); }
.faq summary{
  list-style:none; cursor:pointer; padding:24px 40px 24px 0; position:relative;
  font-family:var(--display); font-size:1.06rem; font-weight:500;
}
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{
  content:'+'; position:absolute; right:6px; top:22px;
  font-family:var(--mono); color:var(--signal); font-size:1.2rem; transition:transform .25s var(--ease);
}
.faq details[open] summary::after{ transform:rotate(45deg); }
.faq p{ color:var(--mist); font-size:.95rem; margin:0 0 26px; max-width:70ch; }

.ftr{ padding:70px 0 34px; background:var(--ink); }
.ftr__grid{ display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:44px; padding-bottom:46px; }
.logo--ftr{ margin-bottom:18px; }
.ftr__lead{ color:var(--mist); font-size:.93rem; max-width:34ch; margin:0 0 16px; }
.ftr__meta{ color:#5C6786; }
.ftr__h{
  font-family:var(--mono); font-size:.64rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--signal); margin:0 0 16px; font-weight:500;
}
.ftr__a{ display:block; color:var(--mist); font-size:.9rem; padding:5px 0; transition:color .2s; }
.ftr__a:hover{ color:var(--paper); }
.ftr__bar{
  border-top:1px solid var(--steel); padding-top:26px;
  display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; color:#5C6786;
}
.ftr__certs{ color:#5C6786; }

.rv{ opacity:0; transform:translateY(16px); transition:opacity .7s var(--ease), transform .7s var(--ease); }
.rv.is-in{ opacity:1; transform:none; }

@media (max-width:1000px){
  .stats__grid{ grid-template-columns:repeat(2,1fr); }
  .stat{ padding:28px 24px; border-top:1px solid var(--steel); }
  .stat:nth-child(odd){ border-left:0; padding-left:0; }
  .stat:nth-child(-n+2){ border-top:0; }
  .cards{ grid-template-columns:repeat(2,1fr); }
  .infra{ grid-template-columns:1fr; }
  .figure img{ height:280px; }
  .split, .contact{ grid-template-columns:1fr; gap:44px; }
  .ftr__grid{ grid-template-columns:1fr 1fr; gap:34px; }}

@media (max-width:760px){
  body{ font-size:16px; }
  .burger{ display:block; order:3; }
  .nav{
    position:fixed; inset:74px 0 auto 0;
    flex-direction:column; align-items:flex-start; gap:0;
    background:var(--bay); border-bottom:1px solid var(--steel);
    padding:10px var(--pad) 26px;
    transform:translateY(-8px); opacity:0; pointer-events:none;
    transition:opacity .25s var(--ease), transform .25s var(--ease);
  }
  .nav.is-open{ opacity:1; transform:none; pointer-events:auto; }
  .nav__a{ width:100%; padding:15px 0; border-bottom:1px solid var(--steel); font-size:1rem; }
  .nav__status{ border-left:0; padding:18px 0 14px; }
  .nav .btn{ width:100%; justify-content:center; }
  .sec{ padding:66px 0; }
  .hero{ padding:64px 0 60px; }
  .cards{ grid-template-columns:1fr; }
  .strip{ grid-template-columns:1fr; }
  .figure img{ height:240px; }
  .hero__bg img{ opacity:.22; }
  .row2{ grid-template-columns:1fr; gap:0; }
  .ftr__grid{ grid-template-columns:1fr; }
  .band{ padding:64px 0; }}

@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; transition:none !important; }
  .rv{ opacity:1; transform:none; }
  html{ scroll-behavior:auto; }}