/* Header, drawer, footer, skip link */
.cb-skip{position:absolute;left:-9999px;background:#000;color:#fff;padding:14px 20px;z-index:100}
.cb-skip:focus{left:16px;top:16px}

.cb-header{position:sticky;top:0;z-index:30;background:var(--c-black);color:#fff;border-bottom:1px solid var(--c-dark-line)}
.cb-header__bar{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);height:var(--header-h)}
.cb-header__logo{display:flex;align-items:center;padding:6px 0}
.cb-header__logo img{height:30px;width:auto;display:block}
.cb-header__actions{display:flex;align-items:center;gap:16px}
.cb-header__call{font-size:13px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#fff;text-decoration:none;padding:14px 0}
.cb-header__call:hover{color:var(--c-teal)}

/* HubSpot menu markup, restyled */
.cb-nav{display:none;align-items:center}
.cb-nav .hs-menu-wrapper > ul{display:flex;align-items:center;gap:20px;list-style:none;margin:0;padding:0}
.cb-nav .hs-menu-wrapper > ul > li{position:relative}
.cb-nav a{font-size:13px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--c-dark-text);text-decoration:none;padding:16px 0;display:inline-block;white-space:nowrap}
.cb-nav a:hover,.cb-nav .active-branch > a{color:#fff}
.cb-nav .active-branch > a{border-bottom:2px solid var(--c-teal)}
.cb-nav .hs-item-has-children > a::after{content:"▼";font-size:9px;opacity:.8;margin-left:7px}
.cb-nav .hs-menu-children-wrapper{position:absolute;top:100%;left:-20px;min-width:264px;background:#000;border:1px solid var(--c-dark-line);padding:8px 0;box-shadow:0 24px 48px rgba(0,0,0,.55);list-style:none;margin:0;opacity:0;visibility:hidden;transition:opacity .12s}
.cb-nav .hs-item-has-children:hover > .hs-menu-children-wrapper,
.cb-nav .hs-item-has-children:focus-within > .hs-menu-children-wrapper{opacity:1;visibility:visible}
.cb-nav .hs-menu-children-wrapper a{display:block;padding:13px 20px;font-weight:400;letter-spacing:.04em}
.cb-nav .hs-menu-children-wrapper li:first-child a{font-weight:600;color:#fff;letter-spacing:.06em}

.cb-burger{display:flex;flex-direction:column;gap:5px;padding:14px;margin-right:-14px;background:none;border:0;cursor:pointer}
.cb-burger span{width:22px;height:2px;background:#fff;display:block}

.cb-drawer{border-top:1px solid var(--c-dark-line);max-height:76vh;overflow:auto;background:#000}
.cb-drawer[hidden]{display:none}
.cb-drawer .hs-menu-wrapper ul{list-style:none;margin:0;padding:0}
.cb-drawer a{display:flex;align-items:center;min-height:52px;padding:0 var(--pad);border-bottom:1px solid var(--c-dark-line);color:#fff;font-size:14px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;text-decoration:none}
.cb-drawer .hs-menu-children-wrapper{background:#0A0A0A}
.cb-drawer .hs-menu-children-wrapper a{min-height:48px;padding-left:calc(var(--pad) + 14px);font-weight:400;letter-spacing:.04em;color:var(--c-dark-text)}
.cb-drawer__cta{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:16px var(--pad) 20px}
.cb-drawer__cta .cb-btn{text-align:center;padding:16px 0;font-size:10px;letter-spacing:.18em}

@media (min-width:1260px){
  .cb-nav{display:flex}
  .cb-header__actions{display:flex}
  .cb-burger{display:none}
  .cb-drawer{display:none}
}
@media (max-width:1259px){
  .cb-header__actions{display:none}
}

.cb-footer{background:var(--c-black);color:var(--c-dark-text);padding-top:var(--sec)}
.cb-footer__top{display:grid;grid-template-columns:1fr;gap:48px;padding-bottom:56px}
.cb-footer__brand img{height:38px;width:auto;margin-bottom:22px}
.cb-footer__blurb{max-width:46ch;margin-bottom:26px;font-size:15px}
.cb-footer__cols .hs-menu-wrapper > ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:36px;list-style:none;margin:0;padding:0}
.cb-footer__cols a{color:var(--c-dark-text);text-decoration:none;font-size:14px;display:block;padding:7px 0}
.cb-footer__cols a:hover{color:#fff}
.cb-footer__cols > .hs-menu-wrapper > ul > li > a{color:#fff;font-family:var(--f-acc);font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding-bottom:14px}
.cb-footer__cols .hs-menu-children-wrapper{list-style:none;margin:0;padding:0}
.cb-footer__base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:26px;padding-bottom:36px;border-top:1px solid var(--c-dark-line);font-size:13px}
.cb-footer__legal{display:flex;gap:24px}
.cb-footer__legal a{color:var(--c-dark-text);text-decoration:none}
@media (min-width:900px){ .cb-footer__top{grid-template-columns:minmax(280px,1fr) 2fr;gap:64px} }
