/* header.css — Cabecera fija citaitv_app */
.site-header{
  position:fixed;top:0;left:0;right:0;
  height:var(--header-h);
  z-index:1000;
  display:flex;align-items:center;
  padding:0 1.5rem;
  background:rgba(10,10,10,0.5);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  transition:background .3s, border-color .3s, box-shadow .3s;
}
.site-header.scrolled{
  background:rgba(10,10,10,0.92);
  border-bottom-color:var(--border-accent);
  box-shadow:0 0 30px rgba(255,77,26,0.10);
}

.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  width:100%;max-width:var(--container);margin:0 auto;
}

/* Logo */
.logo{
  display:flex;align-items:center;gap:.75rem;
  font-family:var(--font-display);
  font-size:1.1rem;font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.logo-icon{
  width:40px;height:40px;border-radius:10px;
  background:linear-gradient(135deg,var(--accent-dark),var(--accent));
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;
  box-shadow:0 0 18px var(--accent-glow);
}
.logo-text span{color:var(--accent);}

/* Nav */
.main-nav{display:flex;align-items:center;gap:.25rem;}
.main-nav a{
  padding:.5rem .9rem;
  border-radius:var(--radius-sm);
  font-size:.9rem;font-weight:500;
  color:var(--text-secondary);
  transition:color .2s, background .2s;
}
.main-nav a:hover,
.main-nav a.active{
  color:var(--text-primary);
  background:rgba(255,255,255,0.06);
}

/* CTA button */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.65rem 1.4rem;
  border-radius:var(--radius-full);
  font-family:var(--font-body);
  font-size:.9rem;font-weight:600;
  cursor:pointer;border:none;
  transition:transform .2s, box-shadow .2s, opacity .2s;
  text-decoration:none;
}
.btn:hover{transform:translateY(-2px);}
.btn:active{transform:translateY(0);}

.btn-primary{
  background:linear-gradient(135deg,var(--accent),var(--accent-dark));
  color:#fff;
  box-shadow:0 4px 20px var(--accent-glow);
}
.btn-primary:hover{box-shadow:0 6px 28px var(--accent-glow);}

.btn-outline{
  background:transparent;
  color:var(--accent);
  border:1px solid var(--border-accent);
}
.btn-outline:hover{background:var(--accent-glow-s);}

.btn-ghost{
  background:rgba(255,255,255,0.05);
  color:var(--text-primary);
  border:1px solid var(--border);
}
.btn-ghost:hover{background:rgba(255,255,255,0.09);}

.btn-lg{padding:.85rem 2rem;font-size:1rem;}
.btn-xl{padding:1rem 2.4rem;font-size:1.05rem;}

/* Hamburger */
.nav-toggle{
  display:none;
  flex-direction:column;justify-content:center;gap:5px;
  width:40px;height:40px;
  background:none;border:none;cursor:pointer;padding:8px;
  border-radius:var(--radius-sm);
}
.nav-toggle span{
  display:block;height:2px;border-radius:1px;
  background:var(--text-primary);
  transition:transform .3s,opacity .3s;
}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.open span:nth-child(2){opacity:0;}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* Mobile */
@media(max-width:768px){
  .main-nav{
    display:none;flex-direction:column;
    position:fixed;top:var(--header-h);left:0;right:0;
    background:rgba(10,10,10,0.97);
    padding:1.5rem;gap:.5rem;
    border-bottom:1px solid var(--border-accent);
  }
  .main-nav.open{display:flex;}
  .main-nav a{padding:.75rem 1rem;font-size:1rem;}
  .nav-toggle{display:flex;}
  .header-cta{display:none;}
}
