/* Hola Budapest global fonts */
@font-face{
  font-family:'HB Naughty';
  src:url('/fuente/naughty.woff2') format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:'HB Bebas Neue';
  src:url('/fuente/bebasneue.woff2') format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

@font-face{
  font-family:'HB Poppins';
  src:url('/fuente/poppins.woff2') format('woff2');
  font-weight:400 900;
  font-style:normal;
  font-display:swap;
}

/* Texto general */
html,
body,
p,
a,
li,
ul,
ol,
div,
button,
input,
select,
textarea,
label,
small,
table,
td,
th,
blockquote,
figcaption,
.hb-text,
.sec-s,
.hero-sub,
.footer-bd,
.footer-col a,
.f-label,
.f-input,
.f-ta{
  font-family:'HB Poppins', Arial, sans-serif !important;
}

/* Títulos principales */
h1,
h2,
.hero h1,
.sec-t,
.cta-band h2,
.local-box h2,
.prec-amt,
.rev-bn,
.bk-confirm h3,
.card h1,
.blog-title,
.article-title,
.page-title{
  font-family:'HB Bebas Neue', Impact, sans-serif !important;
  letter-spacing:.01em;
}

/* Subtítulos y títulos menores */
h3,
h4,
h5,
h6,
.faq-q,
.info-val,
.local-quote strong,
.footer-ct{
  font-family:'HB Poppins', Arial, sans-serif !important;
}

/* Logo textual Hola Budapest */
.nav-logo,
.nav-logo span,
.footer-bn,
.hb-footer-brand-title,
.logo span,
.brand strong{
  font-family:'HB Naughty', cursive !important;
  font-weight:400 !important;
  letter-spacing:.01em;
}

/* Footer común */
.hb-footer{
  background:#050505;
  color:rgba(255,255,255,.62);
  padding:58px 24px 26px;
}

.hb-footer a{
  color:rgba(255,255,255,.68);
  text-decoration:none;
}

.hb-footer a:hover{
  color:#fff;
}

.hb-footer-in{
  max-width:1120px;
  margin:0 auto;
}

.hb-footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:38px;
  margin-bottom:34px;
}

.hb-footer-brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}

.hb-footer-brand img{
  width:46px;
  height:46px;
  display:block;
}

.hb-footer-brand-title{
  color:#fff;
  font-size:26px;
  line-height:1;
}

.hb-footer-desc{
  max-width:360px;
  font-size:13px;
  line-height:1.75;
  color:rgba(255,255,255,.52);
}

.hb-footer-title{
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:14px;
}

.hb-footer-col a{
  display:block;
  font-size:13px;
  padding:5px 0;
}

.hb-footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  font-size:12px;
  color:rgba(255,255,255,.42);
}

.hb-footer-legal{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

@media(max-width:768px){
  .hb-footer-grid{
    grid-template-columns:1fr 1fr;
    gap:28px;
  }

  .hb-footer-grid > :first-child{
    grid-column:1/-1;
  }

  .hb-footer-bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media(max-width:480px){
  .hb-footer-grid{
    grid-template-columns:1fr;
  }
}


/* Evitar que spans internos rompan la fuente de títulos */
h1 span,
h2 span,
.hero h1 span,
.sec-t span,
.page-title span,
.article-title span,
.blog-title span{
  font-family:inherit !important;
  font-weight:inherit !important;
  letter-spacing:inherit !important;
}
