/* ====== LCS FUTURISTIC 2026 — SHOWREEL THEME ====== */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
:root{
  --electric:#00B4FF;
  --electric2:#6DDEFF;
  --navy:#001C40;
  --bg:#000A1A;
  --glass:rgba(255,255,255,0.06);
  --text:#E8F2FF;
  --muted:#95A9C9;
  --border:rgba(255,255,255,0.12);
}
body{
  padding-top:64px;
  font-family:"Satoshi","DM Sans",system-ui,sans-serif;
  background:radial-gradient(circle at 25% 20%,#001C40 0%,#000A1A 85%);
  color:var(--text);line-height:1.7;letter-spacing:-.01em;overflow-x:hidden;
}

/* ---------- TYPOGRAPHY ---------- */
h1,h2,h3,h4{
  font-family:"Satoshi","Urbanist",sans-serif;
  font-weight:800;line-height:1.1;
  background:linear-gradient(90deg,var(--electric2),#fff);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  text-shadow:0 0 10px rgba(0,180,255,.30);
}
h1{font-size:clamp(2.6rem,5vw,4rem)}
h2{font-size:clamp(1.9rem,3.1vw,2.6rem)}
h3{font-size:clamp(1.2rem,2vw,1.6rem)}
p{color:var(--muted);font-size:1.05rem}
strong{color:var(--electric2);font-weight:700}

/* ---------- NAV ---------- */
.navbar{
  position:fixed;top:0;width:100%;z-index:1000;
  backdrop-filter:blur(12px) saturate(160%);
  background:linear-gradient(180deg,rgba(0,16,40,.65),rgba(0,16,40,.25));
  border-bottom:1px solid var(--border);
  animation:navdrop .5s ease forwards;
}
@keyframes navdrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.nav-container{max-width:1180px;margin:auto;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem}
.nav-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none}
.logo{height:54px;width:auto;filter:drop-shadow(0 0 8px #00B4FF70);animation:floatLogo 4s ease-in-out infinite alternate}
@keyframes floatLogo{from{transform:translateY(0)}to{transform:translateY(5px)}}
.brand-text{font-weight:800;font-size:1.15rem;color:var(--text)}
.nav-menu{display:flex;align-items:center;gap:1.25rem}
.nav-link{color:var(--text);text-decoration:none;font-weight:600;opacity:.95;transition:.25s}
.nav-link:hover{color:var(--electric)}
.hamburger{display:none;background:none;border:0;cursor:pointer}
.hamburger span{display:block;width:24px;height:2px;background:#cfe6ff;margin:5px 0}

/* ---------- BUTTONS ---------- */
.btn{
  padding:.9rem 1.6rem;border-radius:12px;
  background:linear-gradient(135deg,#0076C7,#00B4FF);
  color:#fff;text-decoration:none;font-weight:700;
  box-shadow:0 10px 25px -10px rgba(0,180,255,.6);
  transition:transform .3s,box-shadow .3s;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 18px 40px -10px rgba(0,180,255,.7)}
.btn-secondary{background:transparent;border:2px solid var(--electric);color:var(--electric)}
.btn-secondary:hover{background:rgba(0,180,255,.15)}

/* ---------- LIGHTS / GRID / CANVAS ---------- */
.light-grid{
  pointer-events:none;position:fixed;inset:0;z-index:0;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:60px 60px;animation:gridmove 40s linear infinite;
}
@keyframes gridmove{to{background-position:60px 60px}}
.orb-canvas{position:fixed;inset:0;z-index:0}

/* ---------- HERO ---------- */
.hero{min-height:100vh;display:grid;place-items:center;position:relative;text-align:center;z-index:1}
.hero-compact{min-height:70vh}
.hero-content{max-width:900px;padding:0 1rem;animation:fadeUp 1s ease forwards}
.hero-subtitle{margin-top:1.2rem;color:#C8E0FF;max-width:760px;margin-inline:auto}
.hero-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2.2rem;flex-wrap:wrap;align-items:center}
.hero-link{
  display:inline-block;
  padding:.6rem .95rem;
  border-radius:12px;
  text-decoration:none;
  color:var(--electric2);
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.03);
  transition:transform .25s, background .25s, color .25s;
}
.hero-link:hover{transform:translateY(-2px);background:rgba(0,180,255,.12);color:#fff}
.hero-micro{margin-top:1.3rem;display:flex;justify-content:center}
.micro-pill{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.55rem .85rem;border-radius:999px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.03);
  color:rgba(200,224,255,0.86);
  font-size:.95rem;
}
@keyframes fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}

/* ---------- SECTIONS / DIVIDERS ---------- */
section{padding:120px 0;position:relative;overflow:hidden;z-index:1}
.container{max-width:1180px;margin:auto;padding:0 2rem;text-align:center}
.reveal{opacity:0;transform:translateY(60px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:none}

.divider{width:100%;height:120px;position:relative;overflow:hidden}
.divider::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(0,180,255,.25),transparent);
  opacity:.8;filter:blur(60px);animation:flow 8s linear infinite
}
@keyframes flow{to{background-position:200% 0}}
.wave{position:absolute;left:0;right:0;top:0;height:100%;
  background:radial-gradient(circle at 50% 100%,rgba(0,180,255,.25),transparent 70%);
  animation:wavemove 10s ease-in-out infinite alternate}
@keyframes wavemove{from{transform:translateY(0)}to{transform:translateY(15px)}}

/* ---------- GRIDS / CARDS ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.8rem;margin-top:2rem}
.card{
  background:rgba(255,255,255,0.03);
  border:1px solid var(--border);
  border-radius:16px;padding:2rem;text-align:left;
  transition:transform .4s,box-shadow .4s,background .3s
}
.card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 20px 40px -10px rgba(0,180,255,.4);background:rgba(255,255,255,.05)}
.card .icon{font-size:2rem;margin-bottom:.8rem}
.section-cta{margin-top:2.2rem;display:flex;justify-content:center}
.section-subtitle{margin-top:1rem}

/* ---------- CONTENT CARD (for long text like privacy) ---------- */
.content-card{
  margin-top:18px;
  padding:22px 22px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.12);
  background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
  box-shadow:0 18px 40px -18px rgba(0,180,255,.45);
}
.content-card h2{margin-top:16px}
.content-card p{margin-top:8px}

/* ---------- EXECUTION PILLARS (OPTION 1) ---------- */
.pillars{
  margin-top:2.2rem;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1.2rem;
  perspective: 1200px;
}
.pillars-compact{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}
.pillar{
  position:relative;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.12);
  background:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
  box-shadow:0 16px 45px -22px rgba(0,180,255,.55);
  overflow:hidden;
  transform-style:preserve-3d;
  transition:transform .35s ease, box-shadow .35s ease, background .35s ease, border-color .35s ease;
}
.pillar::before{
  content:"";
  position:absolute; inset:-2px;
  background:radial-gradient(circle at 20% 10%, rgba(109,222,255,0.26), transparent 55%),
             radial-gradient(circle at 80% 30%, rgba(0,180,255,0.18), transparent 60%);
  filter: blur(10px);
  opacity:.9;
  pointer-events:none;
}
.pillar::after{
  content:"";
  position:absolute; left:-40%; top:-20%;
  width:180%; height:140%;
  background:linear-gradient(90deg, transparent, rgba(109,222,255,0.10), transparent);
  transform:translateX(-20%) rotate(8deg);
  opacity:0;
  transition:opacity .35s ease;
  pointer-events:none;
}
.pillar:hover,
.pillar:focus-within{
  transform:translateY(-6px) rotateX(3deg) rotateY(-3deg);
  border-color:rgba(109,222,255,0.28);
  box-shadow:0 26px 70px -26px rgba(0,180,255,.75);
  background:linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
}
.pillar:hover::after,
.pillar:focus-within::after{opacity:1}

.pillar summary{
  list-style:none;
  cursor:pointer;
  padding:20px 18px;
  display:flex;
  flex-direction:column;
  gap:8px;
  position:relative;
  z-index:1;
}
.pillar summary::-webkit-details-marker{display:none}

.pillar-title{
  font-size:1.6rem;
  font-weight:900;
  letter-spacing:-.02em;
  color:#EAF6FF;
  text-shadow:0 0 14px rgba(0,180,255,0.25);
}
.pillar-kicker{
  color:rgba(200,224,255,0.78);
  font-size:.98rem;
}

.pillar[open]{
  transform:translateY(-6px) rotateX(3deg) rotateY(-3deg);
  border-color:rgba(109,222,255,0.30);
}
.pillar-body{
  padding:0 18px 18px;
  position:relative;
  z-index:1;
  text-align:left;
}
.pillar-body p{margin-top:6px}
.pillar-list{
  margin:12px 0 0 1.1rem;
  color:rgba(200,224,255,0.80);
}
.pillar-list li{margin:6px 0}

/* ---------- SIGNAL STRIP (replaces boring paragraphs with UI) ---------- */
.signal-strip{
  margin-top:1.6rem;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1.1rem;
}
.signal-card{
  padding:16px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,0.10);
  background:rgba(255,255,255,0.03);
  text-align:left;
  transition:transform .3s ease, box-shadow .3s ease;
}
.signal-card:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 45px -26px rgba(0,180,255,.6);
}
.signal-title{
  display:inline-block;
  font-weight:900;
  color:#EAF6FF;
  margin-bottom:6px;
}
.signal-text{margin:0}

/* ---------- CONTACT (chips instead of long text blocks) ---------- */
.contact-stack{display:flex;flex-direction:column;gap:.75rem;margin-top:.2rem}
.contact-chip{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  padding:.75rem 1rem;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.03);
  color:rgba(232,242,255,0.92);
  text-decoration:none;
  transition:transform .25s ease, background .25s ease, border-color .25s ease;
}
.contact-chip:hover{
  transform:translateY(-2px);
  background:rgba(0,180,255,0.10);
  border-color:rgba(109,222,255,0.26);
}

/* ---------- COLLABORATIONS (PREMIUM, CLEAN) ---------- */
.collab-grid{margin-top:2.2rem}
.collab-card{display:flex;flex-direction:column;gap:1.05rem}
.collab-head{display:flex;align-items:center;gap:1rem}
.collab-logo-wrap{
  width:56px;height:56px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.10);
  box-shadow:0 10px 25px -14px rgba(0,180,255,.35);
}
.collab-logo{
  height:40px;width:auto;max-width:150px;
  object-fit:contain;
  filter:drop-shadow(0 0 10px rgba(0,180,255,.18));
}
.collab-title-wrap{display:flex;flex-direction:column;gap:.25rem}
.collab-title{margin:0}
.collab-tag{
  margin:0;
  color:rgba(200,224,255,0.80);
  font-size:.95rem;
  letter-spacing:-.01em;
}
.collab-desc{margin:0}
.collab-actions{margin-top:.3rem;display:flex;gap:.8rem;flex-wrap:wrap}

/* ---------- CONTACT ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;text-align:left;margin-top:2rem}
.contact a{color:var(--electric2);text-decoration:none}
.contact a:hover{color:#fff}
.contact-form input,.contact-form textarea{
  width:100%;padding:.9rem 1rem;margin-bottom:1rem;border-radius:10px;
  border:1px solid rgba(255,255,255,0.15);background:rgba(255,255,255,0.04);
  color:#fff;font:inherit
}
.contact-form input:focus,.contact-form textarea:focus{
  outline:none;border-color:var(--electric);box-shadow:0 0 15px -3px rgba(0,180,255,.7)
}
.small-note{color:#8fb5da;font-size:.9rem}
.mini-links{margin-top:1.2rem}
.mini-link{display:inline-block;color:var(--electric2);text-decoration:none}
.mini-link:hover{color:#fff}

/* ---------- FOOTER (ONE-LINE, TIGHT, PREMIUM) ---------- */
.footer{
  background:rgba(255,255,255,0.02);
  border-top:1px solid rgba(255,255,255,0.10);
  padding:1.25rem 0;
  color:rgba(232,242,255,0.70);
}
.footer-inner{
  max-width:1180px;
  margin:auto;
  padding:0 2rem;
  display:flex;
  align-items:center;
}
.footer-line{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:.65rem;
  font-size:.95rem;
  letter-spacing:-.01em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.footer-copy{opacity:.9}
.footer-sep{opacity:.35}
.footer-a{
  color:rgba(232,242,255,0.78);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,0.0);
  transition:color .2s ease, border-color .2s ease;
}
.footer-a:hover{
  color:#fff;
  border-color:rgba(109,222,255,0.55);
}

/* ---------- FAB ---------- */
.whatsapp-fab{
  position:fixed;right:20px;bottom:20px;width:60px;height:60px;display:grid;place-items:center;
  font-size:26px;border-radius:50%;background:linear-gradient(135deg,#25D366,#00B4FF);color:#fff;
  text-decoration:none;box-shadow:0 12px 24px -8px rgba(0,180,255,.6);z-index:999;animation:pulse 3s infinite ease-in-out
}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}

/* ---------- RESPONSIVE ---------- */
@media (max-width:900px){h1{font-size:2.3rem}}
@media (max-width:900px){
  .nav-container{padding:0 1.2rem}
  .logo{height:46px}
}
@media (max-width:900px){
  .pillars{grid-template-columns:1fr; gap:1rem}
  .signal-strip{grid-template-columns:1fr; gap:1rem}
}
@media (max-width:1024px){
  .hamburger{display:block}
  .nav-menu{display:none}
  .nav-menu.open{
    display:flex;
    position:absolute;
    top:64px;
    left:0;right:0;
    flex-direction:column;
    gap:.9rem;
    padding:1.1rem 1.2rem 1.4rem;
    background:linear-gradient(180deg,rgba(0,16,40,.92),rgba(0,16,40,.75));
    border-bottom:1px solid rgba(255,255,255,0.12);
    backdrop-filter:blur(14px) saturate(160%);
  }
  .nav-menu.open .btn{width:100%;text-align:center}
  .contact-grid{grid-template-columns:1fr}
  .footer-line{white-space:normal;line-height:1.5}
  .collab-logo-wrap{width:54px;height:54px}
  .collab-logo{height:38px}
}
