
:root{
  --gs-navy:#081329;
  --gs-ink:#101C36;
  --gs-blue:#3188FF;
  --gs-cyan:#25D4F2;
  --gs-violet:#8958FA;
  --gs-soft:#B8CDEE;
}

.gs-page{
  background:
    radial-gradient(circle at 82% 12%,rgba(49,136,255,.08),transparent 26rem),
    radial-gradient(circle at 13% 35%,rgba(137,88,250,.055),transparent 28rem),
    var(--bg);
}

.gs-hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(49,136,255,.18);
  background:
    linear-gradient(110deg,rgba(8,19,41,.98),rgba(8,19,41,.93) 55%,rgba(16,28,54,.88)),
    #081329;
}
.gs-hero::before,
.gs-hero::after{
  content:"";
  position:absolute;
  pointer-events:none;
  opacity:.48;
  border-top:2px solid rgba(49,136,255,.75);
  width:46vw;
  height:20vw;
  transform:rotate(-33deg);
  right:-11vw;
  bottom:-15vw;
}
.gs-hero::after{
  border-top-color:rgba(137,88,250,.75);
  right:-5vw;
  bottom:-18vw;
  transform:rotate(-28deg);
}
.gs-hero-inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);
  gap:3rem;
  align-items:center;
  min-height:610px;
  padding:5.5rem 0;
}
.gs-parent{
  color:#c7d6ef;
  letter-spacing:.19em;
  text-transform:uppercase;
  font-size:.72rem;
  font-weight:850;
  margin-bottom:1.2rem;
}
.gs-lockup{
  width:min(100%,700px);
  margin-bottom:1.8rem;
}
.gs-hero h1{
  font-family:Inter,"Segoe UI",system-ui,sans-serif;
  font-size:clamp(2rem,4.25vw,4.6rem);
  line-height:1.08;
  letter-spacing:-.035em;
  max-width:950px;
  margin-bottom:1rem;
}
.gs-hero .lede{
  color:var(--gs-soft);
  max-width:760px;
  font-size:clamp(1.05rem,2vw,1.3rem);
}
.gs-status{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  width:max-content;
  padding:.42rem .7rem;
  margin-bottom:1.5rem;
  border-radius:999px;
  border:1px solid rgba(49,136,255,.45);
  background:rgba(49,136,255,.09);
  color:#bcd9ff;
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.gs-status::before{
  content:"";
  width:7px;height:7px;border-radius:50%;
  background:var(--gs-cyan);
  box-shadow:0 0 12px rgba(37,212,242,.65);
}
.gs-cta .btn-primary{
  background:linear-gradient(100deg,var(--gs-blue),var(--gs-violet));
  border-color:transparent;
}
.gs-cta .btn-primary:hover{filter:brightness(1.08)}
.gs-cta .btn-secondary{
  border-color:rgba(49,136,255,.35);
  background:rgba(49,136,255,.045);
}
.gs-symbol-stage{
  min-height:390px;
  display:grid;
  place-items:center;
  position:relative;
}
.gs-symbol-stage::before{
  content:"";
  position:absolute;
  width:330px;
  height:330px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(49,136,255,.2),rgba(137,88,250,.08) 42%,transparent 70%);
  filter:blur(3px);
}
.gs-symbol-stage img{
  position:relative;
  width:min(100%,360px);
  filter:drop-shadow(0 22px 60px rgba(18,79,180,.3));
}

.gs-section{
  padding:5.5rem 0;
  border-bottom:1px solid rgba(255,255,255,.055);
}
.gs-section.alt{
  background:linear-gradient(180deg,rgba(8,19,41,.34),rgba(16,28,54,.18));
}
.gs-section .eyebrow::before{
  background:linear-gradient(90deg,var(--gs-blue),var(--gs-violet));
}
.gs-section-heading{
  max-width:880px;
  margin-bottom:2.25rem;
}
.gs-section-heading p:last-child{
  font-size:1.08rem;
}

.gs-app-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.gs-app-card{
  position:relative;
  overflow:hidden;
  padding:1.4rem;
  border:1px solid rgba(79,129,214,.25);
  border-radius:16px;
  background:
    linear-gradient(155deg,rgba(49,136,255,.075),rgba(137,88,250,.025) 42%,rgba(255,255,255,.012)),
    #0b1221;
  min-height:370px;
  display:flex;
  flex-direction:column;
}
.gs-app-card::before{
  content:"";
  position:absolute;inset:0 auto auto 0;
  height:2px;width:100%;
  background:linear-gradient(90deg,var(--gs-blue),var(--gs-cyan),var(--gs-violet),transparent 82%);
}
.gs-app-icon{
  width:82px;
  height:82px;
  margin-bottom:1.15rem;
}
.gs-app-card h3{
  font-family:Inter,"Segoe UI",system-ui,sans-serif;
  font-size:1.5rem;
}
.gs-app-card p{flex:1}
.gs-app-status{
  display:inline-flex;
  width:max-content;
  border-radius:999px;
  padding:.3rem .55rem;
  border:1px solid rgba(49,136,255,.3);
  color:#bad7ff;
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
  margin-bottom:1rem;
}
.gs-app-status.planned{
  border-color:rgba(137,88,250,.35);
  color:#cab8ff;
}

.gs-goals{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.gs-goal{
  position:relative;
  padding:1.25rem;
  border:1px solid rgba(79,129,214,.2);
  border-radius:14px;
  background:#0b1221;
}
.gs-goal .goal-label{
  color:#94b8f3;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.68rem;
  font-weight:900;
  margin-bottom:.45rem;
}
.gs-goal h3{font-size:1.25rem}
.gs-goal p:last-child{margin-bottom:0}

.gs-dev-note{
  padding:1rem 1.1rem;
  border-left:3px solid var(--gs-cyan);
  background:rgba(37,212,242,.045);
  color:#c8d8ef;
  border-radius:0 10px 10px 0;
  margin-top:1.5rem;
}
.gs-dev-note strong{color:#fff}

.gs-selector{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);
  gap:1.25rem;
  align-items:start;
}
.gs-selector-panel,
.gs-result-panel{
  border:1px solid rgba(79,129,214,.22);
  border-radius:16px;
  background:#0b1221;
  padding:1.35rem;
}
.gs-choice-list{
  display:grid;
  gap:.7rem;
  margin:1rem 0 0;
}
.gs-choice{
  display:flex;
  align-items:flex-start;
  gap:.8rem;
  padding:.85rem .9rem;
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  cursor:pointer;
  background:rgba(255,255,255,.012);
}
.gs-choice:hover{border-color:rgba(49,136,255,.34)}
.gs-choice input{
  margin-top:.26rem;
  accent-color:var(--gs-blue);
}
.gs-choice strong{display:block;color:#fff}
.gs-choice span{display:block;color:var(--muted);font-size:.86rem}
.gs-recommendations{display:grid;gap:.75rem;margin-top:1rem}
.gs-rec{
  border:1px solid rgba(49,136,255,.25);
  background:rgba(49,136,255,.045);
  border-radius:10px;
  padding:.85rem;
}
.gs-rec strong{color:#fff}
.gs-rec small{
  display:block;color:#a8bfe2;margin-top:.2rem
}
.gs-rec[hidden]{display:none}
.gs-static-table{margin-top:1.5rem}

.gs-faq{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.gs-faq article{
  padding:1.15rem 1.2rem;
  border-top:1px solid rgba(79,129,214,.25);
}
.gs-faq h3{
  font-size:1.12rem;
  margin-bottom:.45rem;
}
.gs-faq p:last-child{margin-bottom:0}

.gs-software-card .mini-logo{
  width:min(100%,330px);
  margin:0 0 1rem;
}
.gs-software-card{
  background:
    linear-gradient(145deg,rgba(49,136,255,.08),rgba(137,88,250,.035)),
    rgba(14,17,20,.9);
}
.gs-software-card::before{
  background:linear-gradient(90deg,var(--gs-blue),var(--gs-cyan),var(--gs-violet),transparent 78%);
}

@media(max-width:900px){
  .gs-hero-inner{grid-template-columns:1fr;min-height:0;padding:4rem 0}
  .gs-symbol-stage{min-height:290px}
  .gs-symbol-stage img{width:280px}
  .gs-app-grid{grid-template-columns:1fr}
  .gs-selector{grid-template-columns:1fr}
}
@media(max-width:720px){
  .gs-hero-inner{padding:3rem 0;gap:2rem}
  .gs-lockup{width:100%}
  .gs-symbol-stage{min-height:230px}
  .gs-symbol-stage::before{width:240px;height:240px}
  .gs-symbol-stage img{width:220px}
  .gs-section{padding:4rem 0}
  .gs-goals,.gs-faq{grid-template-columns:1fr}
}
