:root{
  --bd-primary:#111;         /* deep black */
  --bd-accent:#FFC400;       /* warm club yellow */
  --bd-ink:#1a1a1a;
  --bd-bg:#fffdf3;           /* faint warm background */
}
html,body{height:100%;}
body{display:flex;flex-direction:column;background:var(--bd-bg);}
/* Top promo bar */
.topbar{
  background: var(--bd-accent);
  color:#111;
  font-weight:700;
  letter-spacing:.2px;
}
.topbar a{color:#111;text-decoration:none;}
/* Header + Nav */
.bd-topbar .brand-title{color:#111;}
.navbar{
  background:#fff;
}
.navbar .nav-link{
  font-weight:700;
  color:#222;
  text-transform:uppercase;
  letter-spacing:.5px;
  padding:.75rem 1rem;
  border-bottom:3px solid transparent;
}
.navbar .nav-link:hover{color:#000;background:rgba(0,0,0,.04);}
.navbar .nav-link.active{border-color:var(--bd-accent); color:#000;}

/* Ads visual placeholders */
.bg-ad{
  background: repeating-linear-gradient(45deg, #fff2b0, #fff2b0 10px, #ffe37a 10px, #ffe37a 20px);
  border:2px dashed #111;
  border-radius:6px;
  display:flex;align-items:center;justify-content:center;
  color:#111;font-weight:800;text-transform:uppercase;
}

/* Hero banner inspired by modern travel site */
.hero-wrap{
  position:relative;
  min-height: 380px;
  background: url('https://images.unsplash.com/photo-1512453979798-5ea266f8880c?q=80&w=2000&auto=format&fit=crop') center/cover no-repeat;
}
.hero-overlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55));
}
.hero-content{
  position:relative; z-index:2;
  padding: 3rem 0;
  color:#fff;
}
/* Floating search card */
.search-card{
  background:#fff;
  border:3px solid #000;
  border-radius:12px;
  box-shadow: 8px 8px 0 #000;
}
.search-tabs .nav-link{
  color:#000; font-weight:800; text-transform:uppercase;
}
.search-tabs .nav-link.active{
  background:var(--bd-accent);
  border-color:#000;
}
/* Cards with bold borders like DSI tiles */
.card{
  border:3px solid #000;
  border-radius:12px;
  box-shadow: 6px 6px 0 #0000;
  overflow:hidden;
}
.card .badge-soft{background:var(--bd-accent); color:#000; font-weight:800;}
.card-img-top{object-fit:cover;height:180px;}

/* Sidebar */
.sidebar-sticky{position:sticky; top:1rem;}
.section-title{display:flex;align-items:center;gap:.5rem;}
.section-title .dot{width:10px;height:10px;border-radius:2px;background:var(--bd-accent);display:inline-block;}

/* Footer */
.bd-footer{background:#111;color:#f5f5f5;}
.bd-footer a{color:#ffe37a;}
.bd-footer hr{border-top:2px solid #222;}
footer .form-control{background:#222;border-color:#333;color:#f5f5f5;}
footer .form-control::placeholder{color:#aaa;}
footer .btn{border-radius:10rem;background:var(--bd-accent);color:#111;border:2px solid #000;font-weight:800;}
/* Small utilities */
.badge-soft{background:rgba(255,196,0,.25); color:#000; font-weight:700;}
