/* Cabecera — venía del bloque HTML de Elementor «Header #48». */
:root{
  --base:    #FAF7F0;
  --card:    #F0E8D0;
  --brasa:   #1C1510;
  --tostado: #3D2008;
  --ambar:   #C4631A;
  --line:    rgba(28,21,16,0.13);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
*{-webkit-tap-highlight-color:transparent;}
html,body{width:100%;margin:0;padding:0;background:var(--base);overflow-x:hidden;}

/* Las cajas del tema (antes, las de Elementor), sin relleno ni margen */
.agencia-bloque{
  padding:0 !important;
  margin:0 !important;
  width:100% !important;
}

.site-header{
  width:100%;
  position:sticky;top:0;z-index:9999;
  background:var(--base);
  border-bottom:1px solid var(--line);
  display:flex;align-items:stretch;justify-content:space-between;
  height:80px;
}

/* Logo */
.header-logo{
  display:flex;align-items:center;
  text-decoration:none;flex-shrink:0;
  padding-left:52px;
}
.header-logo img{
  height:48px;width:auto;display:block;
}

/* Nav */
.header-nav{
  display:flex;align-items:center;gap:40px;
}
.header-nav a{
  font-family:'DM Sans',sans-serif;
  font-size:0.88rem;font-weight:500;
  letter-spacing:0.1em;text-transform:uppercase;
  color:var(--brasa) !important;
  -webkit-text-fill-color:var(--brasa) !important;
  text-decoration:none !important;
  opacity:0.55;
  transition:opacity 0.2s;
  white-space:nowrap;
}
.header-nav a:hover{opacity:1;}
.header-nav a.active{opacity:1;color:var(--ambar) !important;-webkit-text-fill-color:var(--ambar) !important;}

/* CTA */
.header-cta{
  font-family:'DM Sans',sans-serif;
  font-size:0.88rem;font-weight:500;
  letter-spacing:0.1em;text-transform:uppercase;
  background:var(--ambar);
  color:var(--base) !important;
  -webkit-text-fill-color:var(--base) !important;
  padding:0 44px;
  text-decoration:none !important;
  transition:background 0.2s;
  white-space:nowrap;
  flex-shrink:0;
  display:flex;align-items:center;
}
.header-cta:hover{background:var(--tostado);}
@media(max-width:900px){.header-cta{display:none;}}

@media(max-width:900px){
  .header-logo{padding-left:24px;padding-bottom:0;transform:translateY(-5px);}
  .header-nav{display:none;}
}

/* Hamburger */
.header-hamburger{
  display:none;
  flex-direction:column;justify-content:center;align-items:center;
  gap:5px;
  width:44px;height:80px;
  cursor:pointer;
  padding:0 14px 0 0;
  flex-shrink:0;
  background:none;border:none;
}
.header-hamburger span{
  display:block;width:22px;height:2px;
  background:var(--brasa);
  transition:transform 0.3s ease, opacity 0.3s ease;
  transform-origin:center;
}
.header-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.header-hamburger.open span:nth-child(2){opacity:0;}
.header-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

@media(max-width:900px){
  .header-hamburger{display:flex;}
}

/* Mobile drawer */
.header-drawer{
  display:none;
  position:fixed;
  top:80px;left:0;right:0;
  background:var(--base);
  border-bottom:1px solid var(--line);
  z-index:9998;
  flex-direction:column;
  padding:8px 0 16px;
  box-shadow:0 8px 24px rgba(28,21,16,0.08);
}
.header-drawer.open{display:flex;}
.header-drawer a{
  font-family:'DM Sans',sans-serif;
  font-size:0.92rem;font-weight:500;
  letter-spacing:0.12em;text-transform:uppercase;
  color:var(--brasa) !important;
  text-decoration:none !important;
  padding:16px 28px;
  opacity:0.6;
  transition:opacity 0.2s,background 0.2s;
  border:none;background:none;
  text-align:left;cursor:pointer;width:100%;
}
.header-drawer a:hover{opacity:1;background:var(--card);}
.header-drawer .drawer-cta{
  margin:8px 28px 0;
  background:var(--ambar);
  color:var(--base) !important;
  -webkit-text-fill-color:var(--base) !important;
  opacity:1;padding:13px 28px;
  text-align:center;
}
.header-drawer .drawer-cta:hover{background:var(--tostado);}
