
/* --- V15 cinematic enhancement layer: additive only --- */
:root{
  --mr15-cyan:#38e7ff;
  --mr15-cyan-soft:rgba(56,231,255,.18);
  --mr15-blue:#4c7dff;
  --mr15-panel:rgba(7,15,31,.72);
  --mr15-line:rgba(117,205,255,.22);
  --mr15-glow:0 0 0 1px rgba(117,205,255,.12),0 18px 40px rgba(0,0,0,.35),0 0 45px rgba(56,231,255,.08);
}
body::before{
  content:"";
  position:fixed; inset:0; pointer-events:none; z-index:-1;
  background:
    radial-gradient(circle at 15% 10%, rgba(64,160,255,.12), transparent 28%),
    radial-gradient(circle at 85% 12%, rgba(56,231,255,.11), transparent 30%),
    radial-gradient(circle at 50% 100%, rgba(37,78,170,.17), transparent 45%);
}
.site-header{backdrop-filter:blur(18px); background:linear-gradient(180deg, rgba(5,10,19,.85), rgba(5,10,19,.45)); box-shadow:0 8px 24px rgba(0,0,0,.2)}
.brand img{filter:drop-shadow(0 0 16px rgba(56,231,255,.18));}
.hero-next{position:relative; overflow:clip}
.hero-next::after{
  content:""; position:absolute; right:-16rem; top:-8rem; width:36rem; height:36rem; border-radius:50%;
  background:radial-gradient(circle, rgba(56,231,255,.18), rgba(56,231,255,.05) 35%, transparent 68%);
  filter:blur(12px); pointer-events:none;
}
.hero-grid{align-items:stretch; gap:clamp(1.4rem,2.5vw,2.25rem)}
.hero-copy{position:relative; z-index:2}
.hero-copy .hero-lead{max-width:68ch}
.hero-actions{flex-wrap:wrap; gap:.9rem}
.hero-actions .btn{box-shadow:var(--mr15-glow)}
.hero-identity-panel{
  position:relative; isolation:isolate;
  background:linear-gradient(180deg, rgba(10,18,34,.82), rgba(8,14,28,.68));
  border:1px solid var(--mr15-line); border-radius:28px; overflow:hidden;
  padding:1rem; box-shadow:var(--mr15-glow); align-self:stretch; min-height:100%;
}
.hero-identity-panel::before{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(135deg, rgba(56,231,255,.08), transparent 28%, transparent 72%, rgba(76,125,255,.12)),
    repeating-linear-gradient(90deg, transparent 0 22px, rgba(255,255,255,.025) 22px 23px),
    repeating-linear-gradient(180deg, transparent 0 22px, rgba(255,255,255,.025) 22px 23px);
  mask-image:linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,255,255,.8));
  pointer-events:none; z-index:-1;
}
.hero-identity-top{display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.9rem}
.hero-identity-top span,.hero-mini-badge{font-size:.73rem; letter-spacing:.12em; text-transform:uppercase; color:#9fd8ff}
.hero-identity-dot{display:inline-flex; width:.6rem; height:.6rem; border-radius:50%; background:#45ff96; box-shadow:0 0 18px #45ff96}
.hero-identity-portrait{position:relative; border-radius:24px; overflow:hidden; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.03)}
.hero-identity-portrait img{display:block; width:100%; height:auto; object-fit:cover; aspect-ratio:4/5}
.hero-logo-orb{
  position:absolute; right:1rem; bottom:1rem; width:4.9rem; height:4.9rem; border-radius:50%;
  padding:.25rem; background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.95), rgba(56,231,255,.25) 45%, rgba(2,7,15,.85));
  box-shadow:0 12px 25px rgba(0,0,0,.35), 0 0 24px rgba(56,231,255,.25); backdrop-filter:blur(12px);
}
.hero-logo-orb img{width:100%; height:100%; object-fit:contain; border-radius:50%}
.hero-identity-info{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; margin-top:1rem}
.hero-stat-card{padding:.9rem 1rem; border-radius:18px; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.075)}
.hero-stat-card strong{display:block; font-size:1.15rem; color:#fff; margin-bottom:.2rem}
.hero-stat-card small{display:block; color:#9eb5cd; line-height:1.4}
.hero-signal-strip{display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1rem}
.hero-signal-strip span,.identity-tags span{display:inline-flex; align-items:center; gap:.4rem; padding:.6rem .8rem; border-radius:999px; background:rgba(56,231,255,.08); color:#d7f7ff; border:1px solid rgba(56,231,255,.16); font-size:.8rem}
.hero-signal-strip i{display:inline-flex; width:.4rem; height:.4rem; border-radius:50%; background:#39e7ff; box-shadow:0 0 8px #39e7ff}
.identity-tags{display:flex; gap:.6rem; flex-wrap:wrap; margin-top:1rem}
.section-heading h2,.section h2{letter-spacing:-.02em}
.gateway-card,.mission-slide,.service-card,.social-node,.project-shell,.insight-card,.seo-intent-card,.concept-card,.project-card,.credential-tower, .contact-cta__inner, .mini-map{
  box-shadow:0 10px 28px rgba(0,0,0,.2);
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease, background .28s ease;
}
.gateway-card:hover,.mission-slide:hover,.service-card:hover,.social-node:hover,.project-shell:hover,.insight-card:hover,.seo-intent-card:hover,.concept-card:hover,.project-card:hover{
  transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.28), 0 0 0 1px rgba(56,231,255,.09);
}
.mini-map{position:relative; overflow:hidden; border:1px solid rgba(56,231,255,.18)}
.mini-map::before{content:""; position:absolute; inset:0; background:repeating-linear-gradient(90deg, transparent 0 31px, rgba(255,255,255,.03) 31px 32px), repeating-linear-gradient(180deg, transparent 0 31px, rgba(255,255,255,.03) 31px 32px); mix-blend-mode:screen; opacity:.45; pointer-events:none}
.mini-map::after{content:""; position:absolute; inset:-10% 0 auto 0; height:34%; background:linear-gradient(180deg, rgba(56,231,255,.12), transparent); animation:mr15-scan 6s linear infinite; pointer-events:none}
@keyframes mr15-scan{0%{transform:translateY(-120%)}100%{transform:translateY(360%)}}
.map-pulse{position:absolute; width:18px; height:18px; border-radius:50%; border:2px solid rgba(56,231,255,.58); box-shadow:0 0 20px rgba(56,231,255,.2)}
.map-pulse::before,.map-pulse::after{content:""; position:absolute; inset:-8px; border-radius:50%; border:1px solid rgba(56,231,255,.25); animation:mr15-pulse 2.2s ease-out infinite}
.map-pulse::after{animation-delay:.9s}
@keyframes mr15-pulse{from{transform:scale(.7); opacity:.85}to{transform:scale(1.8); opacity:0}}
.map-kpis{position:absolute; left:1rem; right:1rem; bottom:1rem; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem}
.map-kpis div{padding:.7rem .8rem; border-radius:16px; background:rgba(7,15,31,.72); border:1px solid rgba(56,231,255,.12); backdrop-filter:blur(12px)}
.map-kpis strong{display:block; font-size:1.05rem; margin-bottom:.12rem}
.map-kpis small{color:#9db1c8; font-size:.74rem; text-transform:uppercase; letter-spacing:.08em}
.map-legend{position:absolute; top:1rem; right:1rem; display:flex; flex-direction:column; gap:.55rem; padding:.75rem .85rem; background:rgba(7,15,31,.72); border:1px solid rgba(56,231,255,.14); border-radius:18px; backdrop-filter:blur(12px)}
.map-legend span{display:flex; align-items:center; gap:.5rem; font-size:.78rem; color:#d8f6ff}
.map-legend i{display:inline-flex; width:.55rem; height:.55rem; border-radius:50%; background:#39e7ff; box-shadow:0 0 12px rgba(56,231,255,.55)}
.social-uplink-status, .status-pill{box-shadow:var(--mr15-glow)}
.command-panel{box-shadow:0 32px 65px rgba(0,0,0,.45), 0 0 0 1px rgba(56,231,255,.12)}
.footer-brand img{filter:drop-shadow(0 0 12px rgba(56,231,255,.18))}
@media (max-width: 980px){
  .hero-identity-panel{margin-top:1rem}
}
@media (max-width: 680px){
  .hero-identity-info,.map-kpis{grid-template-columns:1fr}
  .hero-logo-orb{width:4rem;height:4rem}
  .map-legend{position:static; margin:.8rem 1rem 0}
}
