/* Beedy site header + footer: ONE look on every beedy.ca page (home, services, academy, help, OTIS, privacy).
   Self-contained: own colour tokens per theme, so it looks the same whatever the page's own stylesheet is. */
.bzh,.bzf{--h-bg0:#06090f;--h-bg1:#0b1119;--h-text:#e6eef7;--h-muted:#8aa0b8;--h-line:rgba(120,200,220,.10);--h-line2:rgba(120,200,220,.22);
  --h-acc:#3ad9d9;--h-cta:#3ad9d9;--h-cta-ink:#06090f;--h-card:#0f1822;--h-shadow:0 1px 6px rgba(0,0,0,.75),0 0 2px rgba(0,0,0,.6)}
:root[data-theme="light"] .bzh,:root[data-theme="light"] .bzf{--h-bg0:#f4ede0;--h-bg1:#fbf6ea;--h-text:#1c1a14;--h-muted:#5b5240;--h-line:rgba(70,55,30,.12);
  --h-line2:rgba(70,55,30,.26);--h-acc:#b8590b;--h-cta:#b8590b;--h-cta-ink:#fff;--h-card:#fbf6ea;--h-shadow:0 1px 4px rgba(255,255,255,.85)}

/* ---- header ---- */
nav#navbar.bzh{position:sticky;top:0;left:0;right:0;z-index:100;padding:8px 0;margin:0;border:0;border-bottom:1px solid var(--h-line);
  background:color-mix(in srgb,var(--h-bg0) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  font-family:'Inter',system-ui,sans-serif;transition:background .3s,border-color .3s;box-sizing:border-box;width:100%}
nav#navbar.bzh *{box-sizing:border-box}
nav#navbar.bzh.bzh-over{position:fixed;background:transparent;border-bottom-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
nav#navbar.bzh.bzh-over.scrolled,nav#navbar.bzh.bzh-over.open{background:color-mix(in srgb,var(--h-bg0) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom-color:var(--h-line)}
.bzh .bzh-in{max-width:1180px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:20px}
.bzh .bzh-brand{display:flex;align-items:center;gap:4px;text-decoration:none;color:var(--h-text);flex:none}
.bzh .bzh-brand img{height:64px;width:auto;display:block;filter:drop-shadow(0 0 14px color-mix(in srgb,var(--h-acc) 35%,transparent))}
:root[data-theme="light"] .bzh .bzh-brand img{filter:none}
.bzh .bzh-word{font-family:'Fraunces',Georgia,serif;font-weight:800;font-size:1.75rem;letter-spacing:-.02em;line-height:1;color:var(--h-text)}
.bzh .bzh-word span{color:var(--h-acc)}
.bzh .bzh-links{display:flex;align-items:center;gap:22px;list-style:none;margin:0 0 0 auto;padding:0}
.bzh .bzh-links li{margin:0;padding:0;list-style:none}
.bzh .bzh-links a{color:var(--h-text);font-weight:600;font-size:.92rem;text-decoration:none;white-space:nowrap;transition:color .2s;border:0;background:none;padding:0}
.bzh.bzh-over:not(.scrolled):not(.open) .bzh-links a,.bzh.bzh-over:not(.scrolled):not(.open) .bzh-ib,.bzh.bzh-over:not(.scrolled):not(.open) .bzh-word{text-shadow:var(--h-shadow)}
.bzh .bzh-links a:hover,.bzh .bzh-links a[aria-current="page"]{color:var(--h-acc)}
.bzh .bzh-links a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.bzh .bzh-links .bzh-mcta{display:none}
.bzh .bzh-act{display:flex;align-items:center;gap:8px;flex:none}
.bzh .bzh-ib{background:transparent;border:1px solid var(--h-line2);color:var(--h-text);height:34px;min-width:34px;padding:0 9px;border-radius:8px;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:3px;font-family:'JetBrains Mono',monospace;font-size:.78rem;font-weight:700;line-height:1;margin:0}
:root[data-theme="light"] .bzh.bzh-over:not(.scrolled):not(.open) .bzh-ib{background:color-mix(in srgb,var(--h-bg1) 55%,transparent)}
.bzh .bzh-ib:hover{border-color:var(--h-acc);color:var(--h-acc)}
.bzh .bzh-ib:focus-visible,.bzh a:focus-visible{outline:2px solid var(--h-acc);outline-offset:2px}
.bzh .bzh-lw{position:relative;display:inline-flex}
.bzh .lang-caret{font-size:.6rem;opacity:.7;transition:transform .2s}
.bzh .bzh-lw.open .lang-caret{transform:rotate(180deg)}
.bzh .bzh-lm{position:absolute;top:calc(100% + 8px);right:0;z-index:120;min-width:172px;margin:0;padding:5px;list-style:none;background:var(--h-card);
  border:1px solid var(--h-line2);border-radius:10px;box-shadow:0 14px 34px rgba(0,0,0,.38);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s,transform .16s}
.bzh .bzh-lw.open .bzh-lm{opacity:1;transform:none;pointer-events:auto}
.bzh .bzh-lm li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;cursor:pointer;color:var(--h-text);font-size:.86rem;font-weight:500;white-space:nowrap;margin:0}
.bzh .bzh-lm li:hover,.bzh .bzh-lm li:focus{background:color-mix(in srgb,var(--h-acc) 14%,transparent);color:var(--h-acc);outline:none}
.bzh .bzh-lm li[aria-selected="true"]{color:var(--h-acc);font-weight:700}
.bzh .lang-code{font-family:'JetBrains Mono',monospace;font-size:.66rem;font-weight:700;letter-spacing:.04em;min-width:22px;padding:2px 4px;border-radius:4px;text-align:center;border:1px solid var(--h-line2);color:var(--h-muted)}
.bzh .bzh-lm li[aria-selected="true"] .lang-code,.bzh .bzh-lm li:hover .lang-code{border-color:var(--h-acc);color:var(--h-acc)}
.bzh .bzh-cta{display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:9px;background:var(--h-cta);color:var(--h-cta-ink);font-weight:700;font-size:.86rem;text-decoration:none;white-space:nowrap;border:0}
.bzh .bzh-cta:hover{filter:brightness(1.08)}
.bzh .bzh-burger{display:none;font-size:1.05rem}
@media (max-width:1180px){
  .bzh .bzh-links{display:none}
  .bzh .bzh-burger{display:inline-flex}
  .bzh .bzh-act{margin-left:auto}
  nav#navbar.bzh.open .bzh-links{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;top:100%;left:0;right:0;margin:0;padding:8px 16px 14px;
    background:var(--h-bg0);border-bottom:1px solid var(--h-line2);box-shadow:0 18px 30px rgba(0,0,0,.25);max-height:calc(100vh - 80px);overflow:auto}
  nav#navbar.bzh.open .bzh-links a{display:block;padding:13px 6px;font-size:1rem;border-bottom:1px solid var(--h-line);text-shadow:none}
  nav#navbar.bzh.open .bzh-links .bzh-mcta{display:block}
  nav#navbar.bzh.open .bzh-links .bzh-mcta a{border:0;margin-top:10px;text-align:center;border-radius:9px;background:var(--h-cta);color:var(--h-cta-ink)}
}
@media (max-width:640px){
  .bzh .bzh-in{padding:0 16px;gap:10px}
  .bzh .bzh-brand img{height:44px}
  .bzh .bzh-word{font-size:1.35rem}
  .bzh .bzh-act > .bzh-cta{display:none}
}
@media (max-width:360px){.bzh .bzh-word{display:none}}

/* ---- footer ---- */
footer.bzf{padding:48px 0 30px;margin:0;border-top:1px solid var(--h-line);background:var(--h-bg1);color:var(--h-text);font-family:'Inter',system-ui,sans-serif;text-align:left}
.bzf *{box-sizing:border-box}
.bzf .bzf-in{max-width:1180px;margin:0 auto;padding:0 24px}
.bzf .bzf-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px;margin-bottom:30px}
.bzf .bzf-brand img{height:110px;width:auto;margin-bottom:16px;display:block;filter:drop-shadow(0 0 18px color-mix(in srgb,var(--h-acc) 30%,transparent))}
:root[data-theme="light"] .bzf .bzf-brand img{filter:none}
.bzf .bzf-brand p{color:var(--h-muted);font-size:.85rem;max-width:300px;line-height:1.6;margin:0}
.bzf h5{font-size:.74rem;text-transform:uppercase;letter-spacing:.22em;font-family:'JetBrains Mono',monospace;color:var(--h-muted);margin:0 0 14px;font-weight:600}
.bzf ul{list-style:none;margin:0;padding:0}
.bzf li{margin:0 0 8px;padding:0}
.bzf a{color:var(--h-text);font-size:.86rem;text-decoration:none}
.bzf a:hover{color:var(--h-acc)}
.bzf .bzf-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:22px;border-top:1px solid var(--h-line);color:var(--h-muted);font-size:.75rem;
  flex-wrap:wrap;gap:12px;font-family:'JetBrains Mono',monospace;letter-spacing:.08em}
.bzf .bzf-roots{font-style:italic;font-family:'Inter',sans-serif;letter-spacing:0;font-size:.8rem}
@media (max-width:860px){.bzf .bzf-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.bzf .bzf-grid{grid-template-columns:1fr}.bzf .bzf-in{padding:0 16px}}

/* same primary-button colour on every page (main site: orange in light, teal in dark) */
:root[data-theme="light"] .btn-primary{background:#b8590b;border-color:#b8590b;color:#fff}
:root[data-theme="light"] .btn-primary:hover{background:#a14e08;border-color:#a14e08}
nav#navbar.bzh,footer.bzf{letter-spacing:normal;line-height:1.5;font-size:16px}
/* page title as <h1> on services / beyond, styled like the section titles */
.sec-head h1.title{font-family:var(--serif);font-size:clamp(1.8rem,3.2vw,2.5rem);font-weight:800;line-height:1.13;letter-spacing:-0.02em;margin:0 0 14px}
.sec-head h1.title .hl{background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
:root[data-theme="light"] .sec-head h1.title{font-weight:600;letter-spacing:-0.01em}
:root[data-theme="light"] .sec-head h1.title .hl{background:none;-webkit-text-fill-color:initial;color:var(--accent-2);font-style:italic}
html{scroll-padding-top:90px}
