/* ===== MENU HAMBURGUER v2 (padrao Cyrela, identidade Planik) 28/08/2026 ===== */

/* painel: mais largo, respiro grande, grafite quase-preto */
#menu-hamburguer{background:#161616 !important}
#menu-hamburguer.menu-open{animation:plk-slide-in .35s cubic-bezier(.4,0,.2,1)}
@keyframes plk-slide-in{from{transform:translateX(40px);opacity:0}to{transform:translateX(0);opacity:1}}

@media (min-width:768px){
  #menu-hamburguer{max-width:480px;padding:48px 56px 28px}
  #menu-hamburguer > *:nth-child(1){margin-bottom:32px !important}
  #menu-hamburguer #secundary-menu li{margin-bottom:26px !important}
  #menu-hamburguer #secundary-menu li a{font-size:17px;line-height:26px;letter-spacing:.08em}
}
@media (max-width:767px){
  #menu-hamburguer{max-width:100%;padding:24px 24px 28px}
  #menu-hamburguer > *:nth-child(1){margin-bottom:28px !important}
  #menu-hamburguer #secundary-menu li{margin-bottom:22px !important}
  #menu-hamburguer #secundary-menu li a{font-size:16px;line-height:26px;letter-spacing:.06em}
}

/* itens: mudos por padrao, hover acende branco e engorda levemente */
#menu-hamburguer #secundary-menu li:last-child{margin-bottom:0 !important}
#menu-hamburguer #secundary-menu li a{color:rgba(255,255,255,.78);font-weight:400;transition:color .2s,font-weight .2s}
#menu-hamburguer #secundary-menu li a:hover{color:#fff;font-weight:600}
#menu-hamburguer #secundary-menu li.current-menu-item a,
#menu-hamburguer #secundary-menu li.current_page_item a{color:#fff;font-weight:700}

/* busca: barra clara cheia, estilo Cyrela */
#menu-hamburguer > *:nth-child(2){margin-bottom:28px !important}
#menu-hamburguer > *:nth-child(2) input{background:#f0f1f2 !important;color:#0a0c10 !important;border:0 !important;border-radius:0 !important;height:52px !important;padding:0 16px !important;font-size:16px !important}
#menu-hamburguer > *:nth-child(2) input::placeholder{color:#6b7280 !important}
#menu-hamburguer > *:nth-child(2) svg,#menu-hamburguer > *:nth-child(2) button{color:#0a0c10 !important;fill:#0a0c10 !important}

/* rodape: sem divisoria, eixo unico a esquerda */
#menu-hamburguer > *:nth-child(3){border-bottom:0 !important;padding-bottom:0 !important;margin-bottom:20px !important;text-align:left !important}
#menu-hamburguer > *:nth-child(3) *{text-align:left !important;font-weight:400 !important;font-size:13px !important;color:rgba(255,255,255,.62) !important}
#menu-hamburguer > ul:last-child{justify-content:flex-start !important;gap:4px}
#menu-hamburguer > ul:last-child li{margin-left:0 !important;margin-right:14px !important}

/* stagger: itens surgem em cascata guiando a leitura */
#menu-hamburguer.menu-open #secundary-menu li,
#menu-hamburguer.menu-open > *:nth-child(2),
#menu-hamburguer.menu-open > *:nth-child(3),
#menu-hamburguer.menu-open > ul:last-child{animation:plk-item-in .55s cubic-bezier(.4,0,.2,1) both}
@keyframes plk-item-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(1){animation-delay:0.08s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(2){animation-delay:0.17s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(3){animation-delay:0.26s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(4){animation-delay:0.35s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(5){animation-delay:0.44s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(6){animation-delay:0.53s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(7){animation-delay:0.62s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(8){animation-delay:0.71s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(9){animation-delay:0.80s}
#menu-hamburguer.menu-open #secundary-menu li:nth-child(10){animation-delay:0.89s}
#menu-hamburguer.menu-open > *:nth-child(2){animation-delay:1s}
#menu-hamburguer.menu-open > *:nth-child(3){animation-delay:1.1s}
#menu-hamburguer.menu-open > ul:last-child{animation-delay:1.2s}
@media (prefers-reduced-motion:reduce){#menu-hamburguer.menu-open *{animation:none !important}#menu-hamburguer{animation:none}}

/* veu por cima das setas do banner */
#menu-hamburguer-bg{z-index:36 !important}

/* ---------- MENU DO TOPO: hover sem linha (ago/2026) ---------- */
#primary-menu .menu-item a:hover::after{content:none}
#primary-menu .menu-item a{transition:font-weight .2s ease}
#primary-menu .menu-item a:hover{font-weight:500}
#primary-menu .menu-item.current-menu-item a:hover::after{content:'';position:absolute;bottom:-3px;left:0;width:100%;height:1px;background:linear-gradient(90deg,#713418 0%,#B05126 100%);opacity:1}

/* galeria Estagio da Obra: slick-list estourava a altura do modal e cortava a foto */
.stage-gallery-modal-carousel .slick-list,
.stage-gallery-modal-carousel .slick-track{height:100% !important}
.stage-gallery-modal-carousel .gallery-modal-slide{height:100% !important;min-height:0 !important}
.stage-gallery-modal-carousel .gallery-modal-slide > *{width:100% !important;height:100% !important;min-height:0 !important}
.stage-gallery-modal-carousel .gallery-modal-slide img{width:100% !important;height:100% !important;max-width:100% !important;max-height:100% !important;object-fit:contain !important}

/* ---------- BOTAO HAMBURGUER: desenho das LPs, calibrado para ESTE header (01/09/2026)
   Mesmo desenho das LPs (3 tracos, o do meio a 65%, dourado #C4956A + a palavra MENU),
   mas na escala do header do site: o rotulo usa a MESMA tipografia dos itens do
   #primary-menu (Montserrat 14px, peso 300, ls .12em, preto), entao "MENU" le como
   mais um item do menu; as barras subiram para 30x2px com gap de 6px para acompanhar.
   O rotulo mora no <i> -- que o tema ja usa como traco do meio, com o texto escondido
   por text-indent -- entao fica DENTRO do <a> e continua clicavel.
   Cuidado: as barras do tema usam width:100%;left:0;right:0 e esticavam junto com o
   padding-right do <a> (que cria a area de clique da palavra); por isso width fixo. */
#open-menu-hamburguer.hamburger a.main-nav-toggle{width:30px !important;height:26px !important;padding-right:60px !important;box-sizing:content-box !important}
#open-menu-hamburguer.hamburger a.main-nav-toggle::before,
#open-menu-hamburguer.hamburger a.main-nav-toggle::after{width:30px !important;left:0 !important;right:auto !important;height:2px !important;border-bottom:0 !important;background:#C4956A !important}
/* o 'top' vai SEM !important de proposito: e o que a regra .active-menu do tema
   precisa sobrescrever para as duas barras virarem X */
#open-menu-hamburguer.hamburger a.main-nav-toggle::before{top:4px}
#open-menu-hamburguer.hamburger a.main-nav-toggle::after{top:20px}
#open-menu-hamburguer.hamburger a.main-nav-toggle i{width:19.5px !important;height:2px !important;background-color:#C4956A !important;font-size:0 !important;text-indent:0 !important;overflow:visible !important}
#open-menu-hamburguer.hamburger a.main-nav-toggle i{top:12px}
#open-menu-hamburguer.hamburger a.main-nav-toggle i::after{content:'MENU';position:absolute;left:42px;top:50%;transform:translateY(-50%);font-family:'Montserrat',sans-serif;font-size:14px;font-weight:300;font-style:normal;letter-spacing:.12em;text-transform:uppercase;color:#000;white-space:nowrap;line-height:1}
/* aberto: vira X e o rotulo continua (o tema zerava a opacidade do <i>) */
#open-menu-hamburguer.hamburger a.main-nav-toggle.active-menu i{opacity:1 !important;height:0 !important;background:none !important}
@media (min-width:769px){#site-navigation.main-navigation{padding-right:112px}}

/* ---------- HEADER DO DESKTOP: 100px -> 74px (01/09/2026) ----------
   O tema tinha padding de 38px em cima e embaixo de um logo de 21px. 25px deixa a
   barra em 74px, na mesma altura da nav das LPs. O botao do menu se recentra
   sozinho (e absoluto sem 'top', usa a posicao estatica). */
@media (min-width:769px){
  header#masthead.site-header{padding:25px 0}
  /* o veu do menu tinha top:102px e h-screen cravados: sobrava faixa em cima e
     estourava 102px embaixo. 'top:100%' passa a acompanhar a altura real do header. */
  #menu-hamburguer-bg{top:100% !important;height:calc(100vh - 74px) !important}
  #menu-hamburguer{height:100% !important}
}

/* --------- TABLET (769-1023px): o menu desktop nao cabe (03/09/2026) ----------
   Nessa faixa o container do header encolhe para 736px, mas o ul + o botao medem
   862px: a pagina ganhava scroll horizontal (docW 947 em 834). Escondo o ul e a
   navegacao fica no hamburguer + MENU, exatamente como no celular. Acima de 1024
   o container volta a 992px e o menu inteiro cabe (130 de logo + 862). */
@media (min-width:769px) and (max-width:1023px){
  #site-navigation ul#primary-menu{display:none !important}
  /* Sobrava ainda scroll lateral de margens fixas do tema (h2 com mr-[145px], slick
     com margem negativa): o conteudo fica dentro da tela, so a area rolavel estica.
     'clip' corta a area fantasma sem virar scroll container (sticky/fixed intactos). */
  body{overflow-x:clip}
}

/* ---------- HEADER FIXO E COMPACTO NO MOBILE (01/09/2026) ---------- */
@media (max-width:768px){
  header#masthead.site-header{position:fixed;top:0;left:0;right:0;background:#fff;z-index:40;padding:18px 0;box-shadow:0 1px 0 rgba(0,0,0,.08)}
  header#masthead.site-header .site-title img{width:120px}
  body{padding-top:53px}
  body.admin-bar header#masthead.site-header{top:46px}
  /* o veu do menu e filho do header: com o header fixo ele tem que ser fixo tambem,
     senao herda o top:102px absoluto do tema */
  #menu-hamburguer-bg{position:fixed !important;top:53px !important;bottom:0 !important;height:auto !important}
  #menu-hamburguer{height:100% !important}
}

/* Header desktop — menu enxuto e respiro (01/09/2026, pedido do Isaac):
   Contato sai do menu aparente (segue no hamburguer e no rodape); folga entre menu e hamburguer,
   que e position:absolute right:30px width:90px e encostava no ultimo item */
#primary-menu #menu-item-496{display:none}
#site-navigation.main-navigation{padding-right:175px !important}
/* ---------- BANNER NO MOBILE (01/09/2026) ---------- */
@media (max-width:768px){
  /* HOME: a caixa do banner tinha 400px fixos e a midia e 2,59:1 (1490x576), entao
     sobrava tarja preta de 106px em cima e embaixo. A caixa passa a ter a altura da
     propria midia: nada e cortado e a tarja some. O :has() limita ao slide de video --
     as paginas com banner de IMAGEM usam a mesma classe de container e nao podem
     encolher (background-image nao gera altura). */
  .video-background-container:has(video.js-banner-video){height:auto !important}
  .video-background-container:has(video.js-banner-video) video.js-banner-video{position:static !important;transform:none !important;width:100% !important;height:auto !important;display:block !important;object-fit:contain !important}

  /* FICHA DO EMPREENDIMENTO: o veu escuro do hero (bg-black/50, md:hidden) e filho
     DIRETO do <body> com top:102px cravado -- a altura antiga do header. Como o body
     e static, ele se posiciona pelo containing block inicial, entao com o header em
     53px o veu comecava 49px abaixo da foto e deixava uma faixa clara no topo da
     imagem. Alinhado com o topo da foto. */
  body > div[class*="top-[102px]"]{top:53px !important}
}
