/* BirchStreet AI header — matched to birchstreetai.com (Elementor post-29 + dd-style) */

:root {
  --bss-header-bg: #3A3838CF;
  --bss-header-max-width: 1375px;
  --bss-header-side-padding: 20px;
  --bss-header-spacer: 17px;
  --bss-header-border: 2px;
  --bss-header-gold-start: #b7904a;
  --bss-header-gold-end: #ecdda0;
  --bss-header-gold-angle: 139deg;
  --bss-header-gold-stop-a: 3.23%;
  --bss-header-gold-stop-b: 96.77%;
  /* 24% logo col + 80% nav col → logo img at 90% of logo column */
  --bss-header-logo-share: 0.2076923077;
  --bss-header-logo-ratio: 0.2763636364; /* 76 / 275 */
  --bss-header-inner-w: calc(min(100vw, var(--bss-header-max-width)) - (var(--bss-header-side-padding) * 2));
  --bss-header-logo-w: calc(var(--bss-header-inner-w) * var(--bss-header-logo-share));
  --bss-header-logo-h: calc(var(--bss-header-logo-w) * var(--bss-header-logo-ratio));
  --bss-header-logo-row: 89px;
  --bss-header-height: calc(var(--bss-header-spacer) + var(--bss-header-border) + var(--bss-header-logo-row));
}

.bss-site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: var(--bss-header-border) solid;
  border-image: linear-gradient(
    var(--bss-header-gold-angle),
    var(--bss-header-gold-start) var(--bss-header-gold-stop-a),
    var(--bss-header-gold-end) var(--bss-header-gold-stop-b)
  ) 1;
  background-color: var(--bss-header-bg);
  box-shadow: none;
}

.bss-site-header__spacer {
  display: block;
  height: var(--bss-header-spacer);
  min-height: var(--bss-header-spacer);
  max-height: var(--bss-header-spacer);
  width: 100%;
  margin: 0;
  padding: 0;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 100%),
    linear-gradient(90deg, var(--bss-header-gold-start) 0%, var(--bss-header-gold-end) 100%);
}

.bss-site-header__bar {
  width: 100%;
  margin: 0;
  padding: 0;
}

.bss-site-header__inner {
  box-sizing: border-box;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  max-width: var(--bss-header-max-width);
  width: 100%;
  min-height: var(--bss-header-logo-row);
  margin: 0 auto;
  padding: 0 var(--bss-header-side-padding);
}

.bss-site-header__logo-col {
  box-sizing: border-box;
  flex: 0 1 24%;
  width: 24%;
  max-width: 24%;
  min-width: 0;
}

.bss-site-header__nav-spacer {
  flex: 1 1 80%;
  width: 80%;
  min-width: 0;
}

.bss-site-header__brand {
  display: block;
  line-height: 0;
  margin: 0;
  padding: 0;
  text-decoration: none;
}

.bss-site-header__logo {
  display: block;
  width: var(--bss-header-logo-w) !important;
  height: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  vertical-align: top;
}

body.bss-has-fixed-header {
  padding-top: var(--bss-header-height);
}

@media (max-width: 1366px) {
  .bss-site-header__inner,
  body.bss-has-fixed-header .container {
    max-width: 100%;
  }
}

@media (max-width: 1200px) {
  :root {
    --bss-header-logo-row: 87px;
  }
}

@media (max-width: 1024px) {
  :root {
    --bss-header-logo-row: auto;
    --bss-header-height: calc(
      var(--bss-header-spacer) + var(--bss-header-border) + 30px + var(--bss-header-logo-h)
    );
  }

  .bss-site-header__inner {
    min-height: 0;
    padding: 15px var(--bss-header-side-padding);
  }
}

@media (max-width: 767px) {
  :root {
    --bss-header-logo-share: 0.9;
    --bss-header-height: calc(
      var(--bss-header-spacer) + var(--bss-header-border) + 20px + min(var(--bss-header-logo-h), 76px)
    );
  }

  .bss-site-header__inner {
    padding: 10px var(--bss-header-side-padding);
  }

  .bss-site-header__logo-col {
    flex: 0 1 auto;
    width: auto;
    max-width: none;
  }

  .bss-site-header__nav-spacer {
    display: none;
  }

  .bss-site-header__logo {
    width: min(90vw, 275px) !important;
    height: auto !important;
  }
}

@media (min-width: 768px) {
  body.bss-has-fixed-header .container {
    max-width: var(--bss-header-max-width);
    padding-left: var(--bss-header-side-padding);
    padding-right: var(--bss-header-side-padding);
  }
}
