/* Shared site navigation (bc-nav) + base tokens, used on every redesigned page.
   Every class is prefixed with "bc-" so it can't clash with style.css. */
:root{
  --bc-bg:#f7f5f2;
  --bc-ink:#191815;
  --bc-muted:#726c64;
  --bc-line:#e3ddd4;
  --bc-accent:#8b7b63;
}

.bc-nav{font-family:'Inter',-apple-system,sans-serif;-webkit-font-smoothing:antialiased;font-weight:300;line-height:1.55}
:where(.bc-nav) *{box-sizing:border-box;margin:0;padding:0}
:where(.bc-nav) a{text-decoration:none;color:inherit}

.bc-wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 40px}
.bc-eyebrow{font-size:11px;letter-spacing:0.22em;text-transform:uppercase;font-weight:400;margin-bottom:18px}
.bc-btn{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 30px;font-family:inherit;font-size:13px;letter-spacing:0.12em;text-transform:uppercase;font-weight:400;border:1px solid transparent;cursor:pointer;transition:color .25s,background-color .25s,border-color .25s;white-space:nowrap}
.bc-btn-dark{background:var(--bc-ink);color:#fff}
.bc-btn-dark:hover{background:var(--bc-accent)}
.bc-nav .bc-btn-ghost{height:40px;padding:0 20px;border:1px solid rgba(255,255,255,.55);color:#fff;font-size:11px;letter-spacing:.14em;text-transform:uppercase;transition:color .25s,background-color .25s,border-color .25s;display:inline-flex;align-items:center}
.bc-nav .bc-btn-ghost:hover{background:#fff;color:var(--bc-ink)}
.bc-linkarrow{display:inline-flex;gap:10px;align-items:center;font-size:13px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:4px}
.bc-linkarrow span{transition:transform .25s}
.bc-linkarrow:hover span{transform:translateX(6px)}

/* Navigation */
.bc-nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:22px 0;transition:padding .3s,background-color .3s,border-color .3s}
.bc-nav-in{display:flex;align-items:center;justify-content:space-between;gap:30px}
.bc-logo{display:flex;align-items:center;gap:12px;font-size:15px;letter-spacing:.3em;font-weight:500;color:#fff}
.bc-logo img{width:34px;height:34px;display:block;filter:brightness(0) invert(1);transition:filter .3s}
.bc-nav-links{display:flex;gap:34px}
.bc-nav-links a{font-size:13px;color:rgba(255,255,255,.82);letter-spacing:.01em;transition:color .2s}
.bc-nav-links a:hover{color:#fff}
.bc-nav-right{display:flex;align-items:center;gap:26px}
.bc-burger{display:none;width:40px;height:40px;background:none;border:0;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;padding:0 8px}
.bc-burger span{display:block;height:1px;background:#fff;transition:transform .3s,background-color .3s}
.bc-nav.is-open .bc-burger span:nth-child(1){transform:translateY(3.5px) rotate(45deg)}
.bc-nav.is-open .bc-burger span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}

/* Solid state once the page is scrolled (class set by script.js / home-hero.js) */
.bc-nav.is-solid,.bc-nav.is-open{background:rgba(247,245,242,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--bc-line);padding:14px 0}
.bc-nav.is-solid .bc-logo,.bc-nav.is-open .bc-logo,
.bc-nav.is-solid .bc-nav-links a,.bc-nav.is-open .bc-nav-links a{color:var(--bc-ink)}
.bc-nav.is-solid .bc-logo img,.bc-nav.is-open .bc-logo img{filter:none}
.bc-nav.is-solid .bc-btn-ghost,.bc-nav.is-open .bc-btn-ghost{border-color:var(--bc-ink);color:var(--bc-ink)}
.bc-nav.is-solid .bc-btn-ghost:hover,.bc-nav.is-open .bc-btn-ghost:hover{background:var(--bc-ink);color:#fff}
.bc-nav.is-solid .bc-burger span,.bc-nav.is-open .bc-burger span{background:var(--bc-ink)}

@media(max-width:1040px){
  .bc-nav-links{display:none}
  .bc-burger{display:flex}
  .bc-nav.is-open .bc-nav-links{display:flex;flex-direction:column;gap:0;position:absolute;top:100%;left:0;right:0;background:rgba(247,245,242,.98);border-bottom:1px solid var(--bc-line);padding:10px 40px 24px}
  .bc-nav.is-open .bc-nav-links a{padding:14px 0;border-bottom:1px solid var(--bc-line);font-size:15px}
}
@media(max-width:720px){
  .bc-wrap{padding:0 22px}
  .bc-nav.is-open .bc-nav-links{padding:10px 22px 24px}
  .bc-nav-right .bc-btn-ghost{display:none}
}

/* Client portal links */
.bc-nav .bc-login{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.85);transition:color .2s}
.bc-nav .bc-login:hover{color:#fff}
.bc-nav.is-solid .bc-login,.bc-nav.is-open .bc-login{color:var(--bc-ink)}
.bc-nav-links .bc-mobile-only{display:none}
@media(max-width:1040px){
  .bc-nav.is-open .bc-nav-links .bc-mobile-only{display:block}
}
@media(max-width:720px){
  .bc-nav .bc-login{display:none}
}
