/*
 * Avenir Roman (weight 400), extracted from `public/Avenir.ttc` — face 11, the upright
 * normal weight — subset to Latin + Latin-1 + common punctuation and converted to woff2.
 *
 * Embedded as a data URI rather than a file reference for two reasons: `public/` is not
 * part of the Webflow library bundle, and `@font-face` declared inside a Shadow DOM only
 * reliably resolves same-document URLs. 18.7KB compressed, ~25KB as base64.
 *
 * NOTE: `.ttc` cannot be used directly — browser `@font-face` support for TrueType
 * Collections is inconsistent, so a single face has to be extracted first.
 *
 * ⚠️ LICENSING: Avenir is a commercial typeface (Monotype). A desktop/system licence does
 * not cover webfont embedding. Confirm BCS holds a webfont licence before this goes live.
 */
@font-face {
  font-family: 'Avenir BCS';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(data:font/woff2;base64,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) format('woff2');
}

/*
 * Bars are positioned inline from the ported geometry; only chrome lives here.
 * Visibility is deliberately NOT set: whoever places the hamburger controls that via a
 * wrapper, so it never depends on which stylesheet the bundler happens to emit last.
 */
.bcs-burger {
  position: relative;
  display: block;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.bcs-burger:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
  border-radius: 4px;
}

.bcs-burger__bar {
  position: absolute;
  display: block;
  background: currentColor;
  border-radius: 9em;
}

@media (prefers-reduced-motion: reduce) {
  .bcs-burger,
  .bcs-burger__bar {
    transition: none !important;
  }
}

/*
 * Rendered inside Shadow DOM, so these styles are fully isolated from the site.
 * Colours read Webflow site variables first and fall back to the Figma values, which
 * lets the nav pick up the site's design tokens without a second palette to maintain.
 */
.bcs-nav {
  --bcs-panel-bg: var(--nav-panel-background, #151617);
  --bcs-card-bg: var(--nav-card-background, #17181a);
  --bcs-card-border: var(--nav-card-border, #25282e);
  --bcs-text: var(--nav-text, #ffffff);
  /* Sits opposite --bcs-text; flips with it so filled buttons stay legible. */
  --bcs-text-contrast: var(--nav-text-on-dark, #000000);
  --bcs-text-muted: var(--nav-text-muted, #7c8488);

  /* Horizontal gutter for the whole component; overridden per breakpoint below. */
  --bcs-pad: 4rem;

  --bcs-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --bcs-duration: 260ms;
  /* Slow, soft reveal; the close is quicker so dismissing never feels sluggish. */
  --bcs-open-duration: 560ms;
  --bcs-close-duration: 420ms;
  --bcs-open-ease: cubic-bezier(0.22, 1, 0.36, 1);
  /* Panel switching is a crossfade between two stacked layers, so it reads slower than
     its duration — keep it shorter than the open/close transition. */
  --bcs-switch-duration: 180ms;

  position: relative;
  z-index: 100;
  font-family: 'Avenir BCS', 'Avenir Next', Avenir, system-ui, sans-serif;
  font-weight: 400;
  color: var(--bcs-text);
}

/* ---------------------------------------------------------------- top bar */

/* Transparent bar over a 35px backdrop blur. */
.bcs-nav__bar {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 36px var(--bcs-pad);
  background: transparent;
  -webkit-backdrop-filter: blur(35px);
  backdrop-filter: blur(35px);
}

/*
 * Auto-invert, scoped to the BAR only — the mega panel keeps its own dark palette.
 *
 * `data-bg` is set from JS by sampling what is actually behind the bar (see MegaNav.tsx).
 * `mix-blend-mode: difference` would be the tidier, JS-free answer, but it blends against
 * the nearest stacking context, and `.bcs-nav` establishes one via `z-index` (as does
 * Webflow's own component wrapper) — so the blend never reaches the page and the logo
 * simply stays white over white.
 */
.bcs-nav[data-bg='light'] .bcs-nav__bar {
  --bcs-text: var(--nav-text-on-light, #000000);
  --bcs-text-contrast: var(--nav-text-on-dark, #ffffff);
}

.bcs-nav__logo,
.bcs-nav__actions {
  transition: color var(--bcs-duration) var(--bcs-ease);
}

.bcs-nav__logo {
  display: block;
  flex-shrink: 1;
  min-width: 0;
  max-width: 418px;
  color: var(--bcs-text);
  text-decoration: none;
}

.bcs-nav__logo svg,
.bcs-nav__logo img {
  display: block;
  width: 100%;
  height: auto;
}

.bcs-nav__actions {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-shrink: 0;
}

.bcs-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  border: 1px solid var(--bcs-text);
  border-radius: 6px;
  background: transparent;
  color: var(--bcs-text);
  font-family: inherit;
  /* 1rem floor, growing on large screens. */
  font-size: clamp(1rem, 0.9rem + 0.28vw, 1.25rem);
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-color var(--bcs-duration) var(--bcs-ease),
    color var(--bcs-duration) var(--bcs-ease);
}

/* Unfilled at rest; the trigger fills only while the panel is open. */
.bcs-pill:hover,
.bcs-pill:focus-visible,
.bcs-nav[data-open] .bcs-pill--trigger {
  background: var(--bcs-text);
  color: var(--bcs-text-contrast);
}

/* ------------------------------------------------------------- mega panel */

/*
 * Closed, the panel collapses to ZERO height and clips its contents.
 *
 * This is not just cosmetic. Slot content lives in the light DOM, so a merely
 * `visibility: hidden` panel still laid a full-height box over the page and its
 * Collection List intercepted clicks meant for links underneath. Collapsing the row to
 * `0fr` means the closed panel occupies nothing and there is nothing to clip against.
 *
 * The grid `0fr → 1fr` trick animates to the content's natural height, which `height:
 * auto` cannot do and a hard-coded `max-height` only fakes (and times badly).
 */
.bcs-mega {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;

  /* Explicitly opts out of the bar's blend: the panel is opaque and must not invert
     or blur, so it isolates itself rather than relying on ancestry. */
  isolation: isolate;
  mix-blend-mode: normal;

  display: grid;
  grid-template-rows: 0fr;
  pointer-events: none;
  transition: grid-template-rows var(--bcs-close-duration) var(--bcs-open-ease);
}

.bcs-nav[data-open] .bcs-mega {
  grid-template-rows: 1fr;
  pointer-events: auto;
  transition: grid-template-rows var(--bcs-open-duration) var(--bcs-open-ease);
}

/* The grid row's child must be able to shrink below its content height to be clipped. */
.bcs-mega__clip {
  min-height: 0;
  overflow: hidden;
  background: var(--bcs-panel-bg);
}

/* Content slides down from behind the bar as the row opens. */
.bcs-mega__inner-motion {
  opacity: 0;
  transform: translateY(-28px);
  transition:
    opacity var(--bcs-close-duration) var(--bcs-open-ease),
    transform var(--bcs-close-duration) var(--bcs-open-ease);
}

.bcs-nav[data-open] .bcs-mega__inner-motion {
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity var(--bcs-open-duration) var(--bcs-open-ease),
    transform var(--bcs-open-duration) var(--bcs-open-ease);
}

.bcs-mega__inner {
  display: flex;
  align-items: center;
  gap: 182px;
  padding-left: var(--bcs-pad);
}

/* ------------------------------------------------------------ section list */

.bcs-mega__sections {
  display: flex;
  flex-direction: column;
  gap: 41px;
  width: 314px;
  flex-shrink: 0;
  padding-top: 64px;
  align-self: flex-start;
}

.bcs-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  /* Fluid across the range: ~2rem at the breakpoint, up to 3rem on large screens. */
  font-size: clamp(2rem, 1.2rem + 1.35vw, 3rem);
  line-height: 1.1;
  color: var(--bcs-text-muted);
  text-decoration: none;
  transition: color var(--bcs-duration) var(--bcs-ease);
}

.bcs-section[data-active] {
  color: var(--bcs-text);
}

.bcs-section__arrow {
  width: 25px;
  height: 18.75px;
  flex-shrink: 0;
  transition: transform var(--bcs-duration) var(--bcs-ease);
}

.bcs-section[data-active] .bcs-section__arrow {
  transform: translateX(4px);
}

/* ----------------------------------------------------------------- panels */

.bcs-mega__panels {
  position: relative;
  flex: 1;
  min-width: 0;
  min-height: 449px;
  padding: 26px var(--bcs-pad) 26px 0;
}

/*
 * Both panels stay mounted; the inactive one is taken out of flow so switching is a
 * crossfade. `visibility` (not `display`) keeps the transition animatable and keeps the
 * hidden panel out of the tab order.
 */
.bcs-mega__panel {
  position: absolute;
  inset: 26px var(--bcs-pad) 26px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  pointer-events: none;
  transition:
    opacity var(--bcs-switch-duration) var(--bcs-ease),
    transform var(--bcs-switch-duration) var(--bcs-ease),
    visibility 0s linear var(--bcs-switch-duration);
}

.bcs-mega__panel[data-active] {
  position: relative;
  inset: auto;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
  transition:
    opacity var(--bcs-switch-duration) var(--bcs-ease),
    transform var(--bcs-switch-duration) var(--bcs-ease),
    visibility 0s;
}

/*
 * Reaches the element Webflow assigns to the slot (the Collection List wrapper).
 * Shadow CSS cannot style *inside* slotted content, so the row layout of the items
 * themselves is set on the Collection List in the Designer — see the README.
 */
.bcs-mega__panel ::slotted(*) {
  display: block;
  width: 100%;
}

/* Desktop: the hamburger and the sheet's mirrored actions are both hidden. Both rules and
   their breakpoint overrides live in this file, so ordering is guaranteed. */
.bcs-nav__burger,
.bcs-nav__sheet-actions {
  display: none;
}

/* ------------------------------------------------------------- responsive */

/*
 * Tablet and below (Webflow's 991px breakpoint). The action buttons collapse into the
 * hamburger, and the mega panel becomes a full-width stacked sheet.
 */
@media (max-width: 991px) {
  .bcs-nav__bar {
    padding: 20px var(--bcs-pad);
    gap: 16px;
  }

  .bcs-nav__logo {
    max-width: 260px;
  }

  /* Actions move into the panel; the hamburger takes their place. */
  .bcs-nav__actions {
    display: none;
  }

  .bcs-nav__burger {
    display: block;
    flex-shrink: 0;
    margin-right: -12px; /* optical alignment: the 48px hit area overhangs the padding */
  }

  /*
   * Full-height sheet: fills everything below the bar. `--bcs-bar-h` is measured at
   * runtime (the bar's padding and logo both scale). `dvh` rather than `vh` so mobile
   * browser chrome collapsing doesn't leave the sheet short or overflowing.
   *
   * The min-height sits on the content and the max-height on the clip: the grid row
   * resolves `1fr` from the content, so the content is what has to be viewport-tall,
   * while the clip caps it and scrolls anything longer.
   */
  .bcs-nav[data-open] .bcs-mega__inner-motion {
    min-height: calc(100dvh - var(--bcs-bar-h, 88px));
  }

  .bcs-nav[data-open] .bcs-mega__clip {
    max-height: calc(100dvh - var(--bcs-bar-h, 88px));
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Sheet content spreads over the full height rather than bunching at the top. */
  .bcs-mega__inner {
    min-height: inherit;
    justify-content: flex-start;
  }

  .bcs-mega__inner {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding-left: 0;
  }

  .bcs-mega__sections {
    width: auto;
    gap: 0;
    padding: 8px var(--bcs-pad) 0;
  }

  .bcs-section {
    /* Larger than the old flat 24px, and still fluid down to phone widths. */
    font-size: clamp(1.75rem, 1.35rem + 1.8vw, 2.5rem);
    padding: 18px 0;
    border-bottom: 1px solid var(--bcs-card-border);
  }

  .bcs-mega__panels {
    min-height: 0;
    padding: 20px 0 20px var(--bcs-pad);
  }

  .bcs-mega__panel {
    inset: 20px 0 20px var(--bcs-pad);
  }

  /*
   * Mirror of the desktop actions, shown inside the sheet.
   * `order: -1` lifts them above the section list. The markup stays last in the DOM so
   * the tab order still reaches the sections first, which matches their visual weight.
   */
  .bcs-nav__sheet-actions {
    display: flex;
    order: -1;
    flex-direction: column;
    gap: 10px;
    padding: 24px var(--bcs-pad) 8px;
  }

  .bcs-nav__sheet-actions .bcs-pill {
    justify-content: center;
    padding: 14px;
    font-size: clamp(1rem, 0.9rem + 0.8vw, 1.15rem);
  }
}

/* ------------------------------------------------------------ gutter steps */

/* Webflow's breakpoints. Declared after the layout blocks so these win regardless of
   where the token is read. */
@media (max-width: 991px) {
  .bcs-nav {
    --bcs-pad: 2.5rem;
  }
}

@media (max-width: 767px) {
  .bcs-nav {
    --bcs-pad: 1.5rem;
  }
}

@media (max-width: 479px) {
  .bcs-nav {
    --bcs-pad: 1rem;
  }
}

/* --------------------------------------------------------- reduced motion */

@media (prefers-reduced-motion: reduce) {
  .bcs-nav {
    --bcs-duration: 1ms;
    --bcs-switch-duration: 1ms;
    --bcs-open-duration: 1ms;
    --bcs-close-duration: 1ms;
  }

  .bcs-section__arrow {
    transition: none;
  }
}

