@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&family=Sora:wght@700;800&display=swap');

*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
:root {
    --navy:#0A1628; --navy2:#0E1F3D; --blue:#1B4FD8; --blue2:#2563EB;
    --blue-l:#EFF6FF; --blue-m:#BFDBFE; --blue-d:#1D4ED8;
    --text:#0F172A; --text2:#334155; --text3:#64748B; --text4:#94A3B8;
    --bg:#F8FAFC; --surface:#FFFFFF; --border:#E2E8F0; --border2:#CBD5E1;
    --green:#059669; --green-l:#DCFCE7; --yellow:#F59E0B; --yellow-l:#FEF3C7;
    --radius:10px; --radius-lg:16px;
    --shadow:0 1px 3px rgba(0,0,0,.06),0 4px 16px rgba(0,0,0,.06);
    --shadow-md:0 4px 12px rgba(0,0,0,.08),0 16px 48px rgba(0,0,0,.1);
}
body { font-family:'Plus Jakarta Sans',sans-serif; background:var(--bg); color:var(--text); line-height:1.6; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }

/* NAV */
.bh-nav { background:#fff; border-bottom:1px solid var(--border); position:sticky; top:0; z-index:200; }
.bh-nav-inner { max-width:1280px; margin:0 auto; padding:0 2rem; height:68px; display:flex; align-items:center; gap:1.5rem; }
.bh-logo { display:flex; align-items:center; gap:.65rem; flex-shrink:0; }
.bh-logo-mark { width:38px; height:38px; background:var(--navy); border-radius:10px; display:flex; align-items:center; justify-content:center; font-family:'Sora',sans-serif; font-size:.75rem; font-weight:800; color:#fff; }
.bh-logo-name { font-family:'Sora',sans-serif; font-size:.9rem; font-weight:800; color:var(--text); display:block; line-height:1.15; }
.bh-logo-sub { font-size:.6rem; color:var(--text4); letter-spacing:.04em; display:block; }
.bh-nav-search { flex:1; max-width:540px; display:flex; align-items:center; background:var(--bg); border:1.5px solid var(--border2); border-radius:10px; padding:0 1rem; gap:.5rem; transition:all .15s; }
.bh-nav-search:focus-within { border-color:var(--blue2); box-shadow:0 0 0 3px rgba(37,99,235,.1); background:#fff; }
.bh-search-icon { width:16px; height:16px; color:var(--text4); flex-shrink:0; }
.bh-nav-search input { flex:1; border:none; background:transparent; font-size:.9rem; color:var(--text); outline:none; padding:.7rem 0; font-family:inherit; }
.bh-nav-search input::placeholder { color:var(--text4); }
.bh-nav-search button { background:var(--blue2); border:none; border-radius:7px; width:34px; height:34px; display:flex; align-items:center; justify-content:center; cursor:pointer; color:#fff; transition:background .15s; flex-shrink:0; }
.bh-nav-search button:hover { background:var(--blue-d); }
.bh-nav-links { margin-left:auto; display:flex; align-items:center; gap:.25rem; flex-shrink:0; }
.bh-nav-links a { font-size:.85rem; font-weight:500; color:var(--text3); padding:.4rem .85rem; border-radius:8px; transition:all .15s; white-space:nowrap; }
.bh-nav-links a:hover,.bh-nav-links a.active { color:var(--blue2); background:var(--blue-l); }
.bh-nav-cta { background:var(--navy) !important; color:#fff !important; font-weight:700 !important; }
.bh-nav-cta:hover { background:var(--navy2) !important; }
.bh-hamburger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:.4rem; margin-left:.5rem; }
.bh-hamburger span { width:22px; height:2px; background:var(--text); border-radius:2px; display:block; }
.bh-mobile-nav { display:none; padding:.75rem 2rem 1rem; border-top:1px solid var(--border); background:#fff; flex-direction:column; gap:.3rem; }
body.nav-open .bh-mobile-nav { display:flex; }
.bh-mobile-nav a { padding:.55rem 0; font-size:.9rem; color:var(--text2); border-bottom:1px solid var(--border); }

/* HERO */
.bh-hero { background:var(--navy); padding:4.5rem 0 3.5rem; position:relative; overflow:hidden; }
.bh-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 70% 80% at 70% 40%,rgba(37,99,235,.3) 0%,transparent 65%); pointer-events:none; }
.bh-hero-inner { max-width:1280px; margin:0 auto; padding:0 2rem; display:grid; grid-template-columns:1fr 440px; gap:3.5rem; align-items:center; position:relative; z-index:1; }
.bh-hero-eyebrow { display:inline-flex; align-items:center; gap:.4rem; background:rgba(37,99,235,.2); border:1px solid rgba(37,99,235,.4); border-radius:20px; padding:.3rem .85rem; font-size:.72rem; font-weight:700; color:#93C5FD; text-transform:uppercase; letter-spacing:.08em; margin-bottom:1.25rem; }
.bh-hero h1 { font-family:'Sora',sans-serif; font-size:clamp(2rem,3.5vw,2.9rem); font-weight:800; color:#fff; line-height:1.08; letter-spacing:-.03em; margin-bottom:.85rem; }
.bh-hero h1 em { font-style:normal; color:#60A5FA; }
.bh-hero-sub { font-size:.97rem; color:rgba(255,255,255,.5); line-height:1.75; max-width:500px; margin-bottom:2rem; }
.bh-hero-checks { display:flex; gap:1.25rem; flex-wrap:wrap; margin-bottom:2.5rem; }
.bh-hero-check { display:flex; align-items:center; gap:.4rem; font-size:.82rem; color:rgba(255,255,255,.6); }
.bh-hero-check::before { content:'✓'; color:#34D399; font-weight:700; font-size:.9rem; }
.bh-hero-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:.65rem; }
.bh-stat { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08); border-radius:12px; padding:.85rem 1rem; }
.bh-stat-n { font-family:'Sora',sans-serif; font-size:1.35rem; font-weight:800; color:#fff; line-height:1; }
.bh-stat-l { font-size:.68rem; color:rgba(255,255,255,.38); margin-top:.2rem; }

/* SEARCH CARD */
.bh-search-card { background:rgba(15,28,60,.6); backdrop-filter:blur(16px); border:1px solid rgba(255,255,255,.1); border-radius:20px; padding:1.75rem; }
.bh-sc-title { font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:rgba(255,255,255,.35); margin-bottom:.85rem; }
.bh-sc-form { display:flex; flex-direction:column; gap:.55rem; }
.bh-sc-input { width:100%; padding:.8rem 1rem; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:10px; font-size:.9rem; color:#fff; outline:none; font-family:inherit; transition:all .15s; }
.bh-sc-input::placeholder { color:rgba(255,255,255,.3); }
.bh-sc-input:focus { border-color:rgba(96,165,250,.5); background:rgba(255,255,255,.12); }
.bh-sc-btn { height:48px; background:var(--blue2); color:#fff; border:none; border-radius:10px; font-size:.92rem; font-weight:700; cursor:pointer; font-family:inherit; transition:background .15s; }
.bh-sc-btn:hover { background:var(--blue-d); }
.bh-sc-tags { display:flex; gap:.35rem; flex-wrap:wrap; margin-top:.6rem; }
.bh-sc-tag { padding:.22rem .65rem; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.1); border-radius:20px; font-size:.73rem; color:rgba(255,255,255,.5); cursor:pointer; transition:all .15s; }
.bh-sc-tag:hover { background:rgba(255,255,255,.13); color:#fff; }
.bh-sc-features { display:flex; flex-direction:column; gap:.5rem; margin-top:1.1rem; border-top:1px solid rgba(255,255,255,.07); padding-top:1rem; }
.bh-sc-feat { display:flex; align-items:center; gap:.6rem; font-size:.8rem; color:rgba(255,255,255,.45); }
.bh-sc-feat-icon { width:28px; height:28px; border-radius:7px; background:rgba(37,99,235,.2); display:flex; align-items:center; justify-content:center; font-size:.82rem; flex-shrink:0; }

/* CONTAINER / SECTIONS */
.bh-container { max-width:1280px; margin:0 auto; padding:0 2rem; }
.bh-section { padding:3.5rem 0; }
.bh-section-white { background:var(--surface); border-top:1px solid var(--border); }
.bh-section-head { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:1.75rem; gap:1rem; flex-wrap:wrap; }
.bh-section-head h2 { font-family:'Sora',sans-serif; font-size:1.25rem; font-weight:800; color:var(--text); }
.bh-section-head p { font-size:.83rem; color:var(--text3); margin-top:.2rem; }
.bh-see-all { font-size:.83rem; font-weight:600; color:var(--blue2); display:flex; align-items:center; gap:.25rem; white-space:nowrap; }
.bh-see-all:hover { text-decoration:underline; }

/* CATEGORY GRID */
.bh-cat-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:.75rem; }
.bh-cat-card { background:var(--surface); border:1.5px solid var(--border); border-radius:14px; padding:1.25rem .85rem; text-align:center; transition:all .2s; }
.bh-cat-card:hover { border-color:var(--blue2); box-shadow:var(--shadow); transform:translateY(-2px); }
.bh-cat-icon { font-size:1.75rem; margin-bottom:.55rem; }
.bh-cat-name { font-size:.8rem; font-weight:700; color:var(--text); line-height:1.3; margin-bottom:.2rem; }
.bh-cat-count { font-size:.68rem; color:var(--text4); }

/* BIZ CARDS — horizontal list style */
.bh-biz-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:1rem; }
.bh-biz-card { background:var(--surface); border:1.5px solid var(--border); border-radius:14px; padding:1.1rem 1.25rem; display:flex; align-items:center; gap:1rem; transition:all .2s; }
.bh-biz-card:hover { border-color:var(--blue-m); box-shadow:var(--shadow-md); transform:translateY(-2px); }
.bh-biz-logo { width:56px; height:56px; border-radius:12px; background:var(--blue-l); border:1px solid var(--blue-m); display:flex; align-items:center; justify-content:center; overflow:hidden; flex-shrink:0; }
.bh-biz-logo img { width:100%; height:100%; object-fit:contain; }
.bh-biz-logo-init { font-family:'Sora',sans-serif; font-size:1rem; font-weight:800; color:var(--blue2); }
.bh-biz-info { flex:1; min-width:0; }
.bh-biz-name { font-size:.9rem; font-weight:700; color:var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bh-biz-type { font-size:.75rem; color:var(--blue2); font-weight:500; margin-top:.1rem; }
.bh-biz-loc  { font-size:.72rem; color:var(--text4); margin-top:.12rem; }
.bh-biz-meta { display:flex; align-items:center; gap:.4rem; margin-top:.3rem; flex-wrap:wrap; }
.bh-verified { display:inline-flex; align-items:center; gap:.2rem; background:var(--green-l); color:var(--green); font-size:.65rem; font-weight:700; padding:.15rem .45rem; border-radius:20px; }
.bh-followers { font-size:.7rem; color:var(--text4); }
.bh-biz-arrow { color:var(--border2); font-size:.9rem; flex-shrink:0; transition:all .15s; }
.bh-biz-card:hover .bh-biz-arrow { color:var(--blue2); transform:translateX(3px); }

/* LISTING */
.bh-listing-head { display:flex; align-items:flex-start; justify-content:space-between; margin-bottom:1.5rem; gap:1rem; flex-wrap:wrap; }
.bh-listing-head h1 { font-family:'Sora',sans-serif; font-size:1.5rem; font-weight:800; }
.bh-listing-head p { font-size:.83rem; color:var(--text3); margin-top:.2rem; }
.bh-filter-bar { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:.7rem 1.1rem; display:flex; gap:.75rem; align-items:center; margin-bottom:1.5rem; flex-wrap:wrap; }
.bh-filter-bar select { padding:.4rem .75rem; border:1px solid var(--border); border-radius:7px; font-size:.83rem; background:var(--bg); color:var(--text); outline:none; font-family:inherit; cursor:pointer; }
.bh-pagination { display:flex; gap:.35rem; justify-content:center; margin-top:2.5rem; flex-wrap:wrap; }
.bh-page { width:36px; height:36px; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:.85rem; font-weight:600; background:var(--surface); border:1.5px solid var(--border); color:var(--text3); transition:all .15s; }
.bh-page:hover,.bh-page.active { background:var(--blue2); color:#fff; border-color:var(--blue2); }
.bh-empty { text-align:center; padding:4rem 1rem; color:var(--text4); }

/* PROFILE */
.bh-profile-hero { background:var(--navy); padding:2.5rem 0; position:relative; overflow:hidden; }
.bh-profile-hero::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 50% 100% at 80% 50%,rgba(37,99,235,.25) 0%,transparent 65%); }
.bh-profile-inner { max-width:1280px; margin:0 auto; padding:0 2rem; display:flex; align-items:center; gap:1.5rem; flex-wrap:wrap; position:relative; z-index:1; }
.bh-profile-logo { width:84px; height:84px; border-radius:18px; background:rgba(255,255,255,.1); border:2px solid rgba(255,255,255,.15); overflow:hidden; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.bh-profile-logo img { width:100%; height:100%; object-fit:contain; }
.bh-profile-logo-init { font-family:'Sora',sans-serif; font-size:1.8rem; font-weight:800; color:#fff; }
.bh-profile-meta { flex:1; }
.bh-profile-name { font-family:'Sora',sans-serif; font-size:1.7rem; font-weight:800; color:#fff; letter-spacing:-.02em; }
.bh-profile-type { font-size:.88rem; color:#93C5FD; font-weight:500; margin-top:.3rem; }
.bh-profile-loc  { font-size:.82rem; color:rgba(255,255,255,.45); margin-top:.2rem; }
.bh-profile-badges { display:flex; gap:.45rem; margin-top:.85rem; flex-wrap:wrap; }
.bh-profile-badge { display:inline-flex; align-items:center; gap:.3rem; padding:.3rem .8rem; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); border-radius:20px; font-size:.75rem; color:rgba(255,255,255,.65); }
.bh-profile-actions { display:flex; gap:.6rem; flex-wrap:wrap; align-self:center; }
.bh-profile-body { max-width:1280px; margin:0 auto; padding:2rem; display:grid; grid-template-columns:1fr 320px; gap:2rem; }
.bh-pcard { background:var(--surface); border:1.5px solid var(--border); border-radius:var(--radius-lg); overflow:hidden; margin-bottom:1.25rem; }
.bh-pcard-head { padding:.85rem 1.25rem; border-bottom:1px solid var(--border); font-size:.82rem; font-weight:700; color:var(--text); background:var(--bg); display:flex; align-items:center; gap:.45rem; }
.bh-pcard-body { padding:1.25rem; }
.bh-contact-item { display:flex; align-items:center; gap:.6rem; padding:.5rem 0; border-bottom:1px solid var(--border); font-size:.85rem; color:var(--text2); }
.bh-contact-item:last-child { border-bottom:none; }
.bh-contact-item a { color:var(--blue2); }
.bh-floli-box { background:linear-gradient(135deg,var(--blue-l) 0%,#E0F2FE 100%); border:1px solid var(--blue-m); border-radius:var(--radius-lg); padding:1.25rem; text-align:center; }
.bh-floli-box p { font-size:.82rem; color:var(--text3); margin:.55rem 0 1rem; line-height:1.6; }
.bh-post { background:var(--surface); border:1.5px solid var(--border); border-radius:var(--radius); padding:1rem 1.25rem; margin-bottom:.75rem; }
.bh-post-date { font-size:.72rem; color:var(--text4); margin-bottom:.4rem; }
.bh-post-text { font-size:.88rem; color:var(--text2); line-height:1.65; }
.bh-post-link { display:inline-flex; align-items:center; gap:.3rem; margin-top:.6rem; font-size:.8rem; font-weight:600; color:var(--blue2); }

/* BUTTONS */
.bh-btn { height:40px; padding:0 1.1rem; border-radius:9px; font-size:.85rem; font-weight:600; cursor:pointer; display:inline-flex; align-items:center; gap:.35rem; transition:all .15s; border:none; font-family:inherit; white-space:nowrap; }
.bh-btn-primary { background:var(--blue2); color:#fff; }
.bh-btn-primary:hover { background:var(--blue-d); }
.bh-btn-outline { background:transparent; color:var(--text2); border:1.5px solid var(--border); }
.bh-btn-outline:hover { border-color:var(--blue2); color:var(--blue2); }
.bh-btn-white { background:#fff; color:var(--navy); }
.bh-btn-white:hover { background:var(--blue-l); }
.bh-btn-lg { height:48px; padding:0 1.5rem; font-size:.92rem; }

/* CTA SECTION */
.bh-cta { background:var(--navy); padding:4rem 0; text-align:center; }
.bh-cta h2 { font-family:'Sora',sans-serif; font-size:1.8rem; font-weight:800; color:#fff; margin-bottom:.65rem; }
.bh-cta p { font-size:.95rem; color:rgba(255,255,255,.45); margin-bottom:1.75rem; }

/* FOOTER */
.bh-footer { background:#060D1F; padding:3rem 2rem 1.5rem; border-top:1px solid rgba(255,255,255,.06); }
.bh-footer-inner { max-width:1280px; margin:0 auto; display:grid; grid-template-columns:1.5fr 1fr 1fr 1.5fr; gap:2rem; margin-bottom:2rem; }
.bh-footer-logo { width:36px; height:36px; background:var(--blue2); border-radius:9px; display:flex; align-items:center; justify-content:center; font-family:'Sora',sans-serif; font-size:.75rem; font-weight:800; color:#fff; margin-bottom:.75rem; }
.bh-footer-brand p { font-size:.82rem; color:rgba(255,255,255,.3); line-height:1.65; }
.bh-footer-brand a { color:rgba(255,255,255,.5); text-decoration:underline; }
.bh-footer-title { font-size:.65rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:rgba(255,255,255,.22); margin-bottom:.75rem; }
.bh-footer a { display:block; font-size:.82rem; color:rgba(255,255,255,.38); padding:.2rem 0; transition:color .15s; }
.bh-footer a:hover { color:rgba(255,255,255,.8); }
.bh-footer-cta { display:inline-block; margin-top:.5rem; padding:.55rem 1rem; background:var(--blue2); color:#fff !important; border-radius:8px; font-size:.8rem; font-weight:600; text-decoration:none !important; }
.bh-footer-bottom { max-width:1280px; margin:0 auto; padding-top:1.5rem; border-top:1px solid rgba(255,255,255,.06); font-size:.75rem; color:rgba(255,255,255,.2); }
.bh-footer-bottom a { color:rgba(255,255,255,.32); }

/* RESPONSIVE */
@media(max-width:1024px){
    .bh-hero-inner { grid-template-columns:1fr; }
    .bh-search-card { display:none; }
    .bh-hero-stats { grid-template-columns:repeat(2,1fr); }
    .bh-profile-body { grid-template-columns:1fr; }
    .bh-footer-inner { grid-template-columns:1fr 1fr; }
}
@media(max-width:768px){
    .bh-nav-links { display:none; }
    .bh-hamburger { display:flex; }
    .bh-nav-search { flex:1; }
    .bh-cat-grid { grid-template-columns:repeat(3,1fr); }
    .bh-biz-grid { grid-template-columns:1fr; }
    .bh-footer-inner { grid-template-columns:1fr; }
    .bh-container { padding:0 1rem; }
    .bh-nav-inner { padding:0 1rem; }
}
@media(max-width:480px){
    .bh-cat-grid { grid-template-columns:repeat(2,1fr); }
    .bh-hero-stats { grid-template-columns:repeat(2,1fr); }
}

/* ── Sidebar baneri ────────────────────────────────────────── */
.bh-sidebar { width:300px; flex-shrink:0; display:flex; flex-direction:column; gap:.85rem; position:sticky; top:84px; }
.bh-sidebar-banner { display:block; border-radius:10px; overflow:hidden; box-shadow:var(--shadow); transition:transform .2s, box-shadow .2s; }
.bh-sidebar-banner:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); }
.bh-sidebar-placeholder { display:block; }
@media(max-width:1024px) { .bh-sidebar { display:none; } }
