/* ══════════════════════════════════════════
   NAV CSS — Orb Digital Branding (site-v3)
   Desktop: menu horizontal inline no header
   Mobile: hamburger circle + fullscreen menu
══════════════════════════════════════════ */

/* ── Cursor customizado (magenta) ── */
#cur{
  position:fixed;width:10px;height:10px;border-radius:50%;
  background:#FF00AA;pointer-events:none;z-index:99999;
  transform:translate(-50%,-50%);
  transition:width .22s var(--ease),height .22s var(--ease);
  mix-blend-mode:difference;
}
#cur.big{width:44px;height:44px}
@media(hover:none){#cur{display:none}}

/* Ocultar menu Portfólio */
.header-nav-link[href="portfolio.php"],
.mobile-menu-link[href="portfolio.php"]{display:none!important;}

/* ══════════════════════════════════════════
   HEADER BAR — logo + nav inline + CTA
══════════════════════════════════════════ */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:600;
  display:flex;align-items:center;
  padding:16px 28px;
  transition:background .4s ease, backdrop-filter .4s ease;
}
.site-header.scrolled{
  background:rgba(0,8,32,.85);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

/* Logo */
.site-logo{
  display:flex;align-items:center;
  text-decoration:none;flex-shrink:0;
}
.site-logo img{height:28px;width:auto;opacity:0.9;transition:opacity .3s}
.site-logo:hover img{opacity:1}

/* ── Nav inline (desktop) ── */
.header-nav{
  display:flex;align-items:center;gap:6px;
  margin-left:auto;margin-right:24px;
}

.header-nav-link{
  font-family:var(--sans);
  font-size:14px;font-weight:500;
  letter-spacing:.03em;
  color:rgba(255,255,255,.45);
  text-decoration:none;
  padding:8px 14px;
  border-radius:3px;
  transition:color .2s, background .2s;
  cursor:none;
  border:none;background:none;
}
.header-nav-link:hover{
  color:rgba(255,255,255,.9);
  background:rgba(255,255,255,.04);
}
.header-nav-link.active{
  color:#fff;
}

/* ── Dropdown Cases (desktop) ── */
.header-nav-dropdown{
  position:relative;
}
.header-nav-chevron{
  display:inline-block;margin-left:3px;
  transition:transform .3s var(--ease);
  opacity:.5;vertical-align:middle;
}
.header-nav-dropdown.open .header-nav-chevron{
  transform:rotate(180deg);opacity:.8;
}

.header-dropdown-panel{
  position:absolute;
  top:calc(100% + 8px);left:50%;
  transform:translateX(-50%) translateY(4px);
  min-width:180px;
  background:rgba(0,8,32,.95);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(255,255,255,.06);
  border-radius:6px;
  padding:10px 0;
  opacity:0;pointer-events:none;
  transition:opacity .25s ease, transform .25s ease;
  z-index:700;
}
.header-nav-dropdown.open .header-dropdown-panel{
  opacity:1;pointer-events:all;
  transform:translateX(-50%) translateY(0);
}
.header-dropdown-panel a{
  display:block;
  font-family:var(--sans);
  font-size:13px;font-weight:400;
  color:rgba(255,255,255,.45);
  text-decoration:none;
  padding:7px 20px;
  transition:color .2s, background .2s;
}
.header-dropdown-panel a:hover{
  color:#fff;
  background:rgba(255,255,255,.04);
}

/* CTA Group (desktop header) */
.site-cta-group{
  display:flex;align-items:center;gap:12px;flex-shrink:0;
}
.site-cta-secondary{
  font-family:var(--sans);
  font-size:10px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.5);
  text-decoration:none;
  padding:9px 14px;
  border-radius:100px;
  border:1px solid rgba(255,255,255,.12);
  transition:color .3s, border-color .3s, transform .2s;
  cursor:none;
}
.site-cta-secondary:hover{
  color:rgba(255,255,255,.9);
  border-color:rgba(255,255,255,.3);
  transform:translateY(-1px);
}
.site-cta-secondary.active{
  color:rgba(255,255,255,.7);
  border-color:rgba(255,255,255,.2);
}
.site-cta{
  display:inline-flex;align-items:center;gap:6px;
  padding:9px 20px;
  background:var(--blue);
  color:#fff;
  border:none;border-radius:100px;
  font-family:var(--sans);
  font-size:10px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  text-decoration:none;
  transition:background .3s, transform .2s;
  cursor:none;flex-shrink:0;
}
.site-cta:hover{background:var(--orb2, #2255FF);transform:translateY(-1px)}
.site-cta svg{width:14px;height:14px;fill:currentColor;opacity:.7}

/* ══════════════════════════════════════════
   CÍRCULO HAMBURGER — mobile only
══════════════════════════════════════════ */
.circle-wrap{
  position:fixed;
  top:20px;right:20px;
  z-index:10001;
  width:48px;height:48px;
  display:none; /* hidden on desktop */
  align-items:center;justify-content:center;
}

/* Anéis de energia */
.circle-ring{
  position:absolute;inset:0;border-radius:50%;
  border:1.5px solid var(--blue);
  opacity:0;
  animation:ringPulse 2.8s ease-out infinite;
}
.circle-ring:nth-child(2){animation-delay:.9s}
.circle-ring:nth-child(3){animation-delay:1.8s}

@keyframes ringPulse{
  0%  {transform:scale(1);opacity:.55}
  100%{transform:scale(2.6);opacity:0}
}

/* Glow interno */
.circle-glow{
  position:absolute;inset:0;border-radius:50%;
  background:radial-gradient(circle,rgba(0,63,255,.35) 0%,transparent 70%);
  animation:glowBreath 3s ease-in-out infinite;
}
@keyframes glowBreath{
  0%,100%{transform:scale(.95);opacity:.6}
  50%{transform:scale(1.15);opacity:1}
}

/* Botão círculo */
.circle-btn{
  position:relative;z-index:1;
  width:48px;height:48px;border-radius:50%;border:none;
  background:var(--blue);
  cursor:pointer;
  transition:background .35s,transform .25s;
  display:flex;align-items:center;justify-content:center;
}
.circle-btn:hover{transform:scale(1.08)}
.circle-btn.open{background:var(--orb2)}

/* Ícone hamburger/X */
.circle-icon{
  width:18px;height:14px;position:relative;
  display:flex;flex-direction:column;
  align-items:center;justify-content:space-between;
  transition:transform .4s var(--ease);
}
.circle-icon span{
  display:block;width:16px;height:2px;
  background:#fff;border-radius:2px;
  transition:transform .4s var(--ease),opacity .3s;
  transform-origin:center center;
  position:absolute;
  left:50%;margin-left:-8px;
}
.circle-icon span:nth-child(1){top:0}
.circle-icon span:nth-child(2){top:6px}
.circle-icon span:nth-child(3){top:12px}

/* Estado X (aberto) */
.circle-btn.open .circle-icon span:nth-child(1){
  top:6px;transform:rotate(45deg);
}
.circle-btn.open .circle-icon span:nth-child(2){
  opacity:0;transform:scaleX(0);
}
.circle-btn.open .circle-icon span:nth-child(3){
  top:6px;transform:rotate(-45deg);
}

/* ══════════════════════════════════════════
   MOBILE MENU — fullscreen overlay
══════════════════════════════════════════ */
.mobile-menu{
  position:fixed;inset:0;z-index:10000;
  background:rgba(0,4,16,.97);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  display:none; /* hidden on desktop */
  opacity:0;pointer-events:none;
  transition:opacity .4s var(--ease);
}
.mobile-menu.open{
  opacity:1;pointer-events:all;
}

.mobile-menu-inner{
  display:flex;flex-direction:column;
  padding:100px 32px 60px;
  height:100vh;overflow-y:auto;
  gap:4px;
}

.mobile-menu-link{
  font-family:var(--serif);
  font-size:24px;font-weight:400;
  color:rgba(255,255,255,.5);
  text-decoration:none;
  padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.04);
  transition:color .2s;
  display:block;
  background:none;border-top:none;border-left:none;border-right:none;
  text-align:left;cursor:pointer;width:100%;
}
.mobile-menu-link:hover,
.mobile-menu-link.active{color:#fff}

/* Chevron do Cases mobile */
.mobile-menu-chevron{
  display:inline-block;margin-left:8px;
  transition:transform .3s var(--ease);
  opacity:.4;vertical-align:middle;
}
.mobile-menu-group.open .mobile-menu-chevron{
  transform:rotate(180deg);opacity:.7;
}

/* Sublinks Cases mobile */
.mobile-menu-sublinks{
  display:flex;flex-direction:row;flex-wrap:wrap;gap:6px 16px;
  padding:8px 0 12px;
  max-height:0;overflow:hidden;opacity:0;
  transition:max-height .4s var(--ease), opacity .3s ease, padding .3s ease;
}
.mobile-menu-group.open .mobile-menu-sublinks{
  max-height:300px;opacity:1;
  padding:12px 0 16px;
}
.mobile-menu-sublinks a{
  font-family:var(--sans);
  font-size:13px;font-weight:400;
  color:rgba(255,255,255,.4);
  text-decoration:none;
  padding:4px 0;
  transition:color .2s;
}
.mobile-menu-sublinks a:hover{color:rgba(255,255,255,.9)}

/* CTA no menu mobile */
.mobile-menu-cta{
  display:inline-block;
  margin-top:24px;
  padding:14px 28px;
  background:var(--blue);
  color:#fff;
  font-family:var(--sans);
  font-size:12px;font-weight:600;
  letter-spacing:.06em;
  text-decoration:none;
  border-radius:4px;
  text-align:center;
  transition:background .3s;
}
.mobile-menu-cta:hover{background:var(--orb2)}

/* CTA secundário no menu mobile */
.mobile-menu-cta-secondary{
  display:inline-block;
  margin-top:10px;
  padding:14px 28px;
  color:rgba(255,255,255,.5);
  font-family:var(--sans);
  font-size:12px;font-weight:600;
  letter-spacing:.06em;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:4px;
  text-align:center;
  transition:color .3s, border-color .3s;
}
.mobile-menu-cta-secondary:hover{
  color:rgba(255,255,255,.9);
  border-color:rgba(255,255,255,.3);
}

/* ══════════════════════════════════════════
   Transição de página
══════════════════════════════════════════ */
.page-fade{
  position:fixed;inset:0;z-index:9000;
  background:var(--bg-dark);opacity:0;pointer-events:none;
  transition:opacity .4s ease;
}
.page-fade.active{opacity:1;pointer-events:all}

/* ══════════════════════════════════════════
   TABLET — ≤1100px
══════════════════════════════════════════ */
@media(max-width:1100px){
  .header-nav{gap:2px}
  .header-nav-link{font-size:12px;padding:8px 10px}
  .header-dropdown-panel a{font-size:12px}
}

/* ══════════════════════════════════════════
   MOBILE — ≤768px
══════════════════════════════════════════ */
@media(max-width:768px){
  .site-header{padding:12px 20px}

  /* Esconder nav inline e CTA do header */
  .header-nav{display:none}
  .site-cta-group{display:none}
  .site-header > .site-cta{display:none}

  /* Mostrar hamburger circle */
  .circle-wrap{display:flex}

  /* Ativar mobile menu */
  .mobile-menu{display:block}
}
