/* ===== ANTARIKSH GYAAN CONSORTIUM — split-screen · light · navy/teal/gold ===== */
:root{
  --teal:#0e9488; --teal-deep:#0a6e66; --gold:#c79328; --gold-soft:#e0b341;
  --navy:#0f1e42; --ink:#13213f; --ink-dim:#54637c; --line:rgba(15,30,66,.12);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{font-family:'Noto Sans',sans-serif;color:var(--ink);background:#fff;min-height:100vh;display:flex;overflow:hidden}

/* screen-reader-only utility (WCAG 1.3.1 / 4.1.3) */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.split{display:grid;grid-template-columns:46% 54%;width:100%;min-height:100vh}

/* ---- left hero panel ---- */
.hero{
  position:relative;overflow:hidden;color:#fff;padding:64px 56px;
  display:flex;flex-direction:column;justify-content:space-between;
  background:linear-gradient(155deg,#0f2350 0%, #103f54 55%, #0e6a62 120%);
}
.hero::after{content:"";position:absolute;inset:0;background:
  radial-gradient(520px 360px at 80% 12%, rgba(224,179,65,.16), transparent 60%);pointer-events:none}
.hero .topline{display:flex;align-items:center;gap:10px;font-size:1rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.88);z-index:2;opacity:0;animation:fade .8s .1s forwards}
.hero .topline .gd{width:26px;height:2px;background:var(--gold-soft)}
.hero .mid{z-index:2}
.hero h1{font-size:clamp(2.4rem,4.6vw,3.6rem);font-weight:800;line-height:1.06;letter-spacing:-.02em;opacity:0;animation:rise .9s .25s forwards}
.hero h1 .gold{color:var(--gold-soft)}
.hero p.tag{margin-top:20px;max-width:380px;font-weight:300;font-size:1.08rem;line-height:1.6;color:rgba(255,255,255,.93);opacity:0;animation:rise .9s .4s forwards}
.hero .foot{z-index:2;font-size:.82rem;letter-spacing:.04em;color:rgba(255,255,255,.82);opacity:0;animation:fade .9s .6s forwards}

/* decorative orbital system (hidden from assistive tech) */
.arcs{position:absolute;right:-160px;bottom:-160px;width:520px;height:520px;z-index:1;opacity:.62}
.arcs span{position:absolute;inset:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;animation:spin 90s linear infinite}
.arcs span:nth-child(2){inset:60px;border-color:rgba(224,179,65,.3);animation-duration:60s;animation-direction:reverse}
.arcs span:nth-child(3){inset:130px;border-color:rgba(255,255,255,.12);animation-duration:120s}
.arcs .orbiter{position:absolute;inset:0}
.arcs .planet{position:absolute;top:0;left:50%;border-radius:50%;transform:translate(-50%,-50%)}
.arcs .p-gold{width:14px;height:14px;background:var(--gold-soft);box-shadow:0 0 16px 3px rgba(224,179,65,.7)}
.arcs .p-gold-sm{width:8px;height:8px;background:var(--gold-soft);box-shadow:0 0 12px 2px rgba(224,179,65,.6)}
.arcs .p-teal{width:11px;height:11px;background:#46d3c6;box-shadow:0 0 15px 3px rgba(45,212,191,.6)}
.arcs .p-teal-sm{width:8px;height:8px;background:#46d3c6;box-shadow:0 0 12px 2px rgba(45,212,191,.55)}
.arcs .p-moon{width:12px;height:12px;background:#eaf1ff;box-shadow:0 0 14px 3px rgba(220,232,255,.55)}
.arcs .p-moon-sm{width:6px;height:6px;background:#dbe6ff;box-shadow:0 0 10px 2px rgba(220,232,255,.5)}
@keyframes spin{to{transform:rotate(360deg)}}

/* ---- right panel ---- */
/* content group is optically centred in the white section */
.form-side{display:flex;align-items:center;justify-content:center;padding:56px 48px;background:
  radial-gradient(700px 480px at 90% 0%, rgba(20,184,166,.07), transparent 60%),#fbfcfe}
.form-card{width:100%;max-width:500px}
.form-card .wel{font-size:1rem;letter-spacing:.28em;text-transform:uppercase;color:var(--teal-deep);font-weight:700;margin-bottom:12px;line-height:1.2;opacity:0;animation:rise .8s .3s forwards}
.form-card h2{font-size:2.5rem;font-weight:700;color:var(--navy);margin-bottom:14px;letter-spacing:-.01em;line-height:1.12;opacity:0;animation:rise .8s .42s forwards}
.form-card .desc{color:var(--ink-dim);font-size:1.2rem;line-height:1.6;margin-bottom:40px;opacity:0;animation:rise .8s .52s forwards}

/* ---- primary call-to-action ---- */
.enter{
  width:100%;border:none;cursor:pointer;font-family:inherit;
  font-size:1.4rem;font-weight:800;letter-spacing:.005em;color:#3a2c05;
  background:linear-gradient(100deg,var(--gold-soft),var(--gold));
  padding:24px 28px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;gap:14px;
  box-shadow:0 20px 40px -12px rgba(199,147,40,.6);
  transition:transform .2s, box-shadow .25s, filter .2s;
  opacity:0;animation:rise .8s .62s forwards, glow 3s 1.8s ease-in-out infinite;
}
.enter:hover:not(:disabled){transform:translateY(-3px) scale(1.01);box-shadow:0 28px 52px -12px rgba(199,147,40,.7);filter:saturate(1.05)}
.enter:active:not(:disabled){transform:translateY(-1px) scale(1)}
.enter:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.enter:disabled{cursor:default;animation:none;opacity:1}
.enter .arrow{flex:none;transition:transform .25s}
.enter:hover:not(:disabled) .arrow{transform:translateX(5px)}
@keyframes glow{0%,100%{box-shadow:0 20px 40px -12px rgba(199,147,40,.55)}50%{box-shadow:0 22px 54px -10px rgba(199,147,40,.9)}}

.note{margin-top:26px;font-size:.95rem;line-height:1.55;color:var(--ink-dim);text-align:center;opacity:0;animation:fade .9s .82s forwards}
.note strong{color:var(--ink)}

/* ---- redirect launch overlay ---- */
.launch{
  position:fixed;inset:0;z-index:200;
  display:flex;align-items:center;justify-content:center;text-align:center;
  color:#fff;
  background:linear-gradient(155deg,#0f2350 0%, #103f54 55%, #0e6a62 120%);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .45s ease, visibility .45s;
}
.launch::after{content:"";position:absolute;inset:0;background:
  radial-gradient(620px 460px at 50% 24%, rgba(224,179,65,.16), transparent 60%);pointer-events:none}
.launch.show{opacity:1;visibility:visible;pointer-events:auto}
.launch-panel{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;padding:24px;
  transform:translateY(14px) scale(.98);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.launch.show .launch-panel{transform:translateY(0) scale(1)}
.launch-orbit{position:relative;width:78px;height:78px;margin-bottom:30px}
.launch-orbit .ring{position:absolute;inset:0;border:2px solid rgba(255,255,255,.16);border-radius:50%}
.launch-orbit .ring.r2{inset:15px;border-color:rgba(224,179,65,.28)}
.launch-orbit .sweep{position:absolute;inset:0;animation:spin 1.15s linear infinite}
.launch-orbit .sweep.s2{inset:15px;animation:spin 1.7s linear infinite reverse}
.launch-orbit .p{position:absolute;top:-6px;left:50%;width:12px;height:12px;border-radius:50%;
  background:var(--gold-soft);box-shadow:0 0 16px 3px rgba(224,179,65,.7);transform:translateX(-50%)}
.launch-orbit .p.p-t{width:9px;height:9px;top:-5px;background:#46d3c6;box-shadow:0 0 14px 3px rgba(45,212,191,.6)}
.launch .lead{font-size:.85rem;letter-spacing:.28em;text-transform:uppercase;color:#8fe7dc;font-weight:600;margin-bottom:12px}
.launch .dest{font-size:clamp(1.4rem,3.4vw,1.9rem);font-weight:700;line-height:1.25;max-width:18ch;margin:0 auto}
.launch .sub{margin-top:16px;font-size:.95rem;color:rgba(255,255,255,.82)}

@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes fade{from{opacity:0}to{opacity:1}}

@media (max-width:880px){
  body{overflow:auto}
  .split{grid-template-columns:1fr}
  .hero{padding:44px 32px;min-height:auto}
  .arcs{width:340px;height:340px;right:-120px;bottom:-120px}
  .form-side{padding:44px 28px}
  .form-card h2{font-size:2.1rem}
  .enter{font-size:1.25rem;padding:22px 24px}
}

/* respects user motion preference (WCAG 2.3.3) — also keeps content visible without entrance animations */
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .hero .topline,.hero h1,.hero p.tag,.hero .foot,
  .form-card .wel,.form-card h2,.form-card .desc,.enter,.note{opacity:1!important;transform:none!important}
}
