@import url('./tokens.css?v=20261001-typography');
* { box-sizing: border-box; }
body { margin: 0; background: var(--bb-black); color: var(--bb-text); font: var(--bb-body)/1.65 var(--bb-font); }
img { max-width: 100%; height: auto; }
a { color: var(--bb-gold); text-underline-offset: .25em; }
a:hover { color: var(--bb-gold-hover); }
:focus-visible { outline: 3px solid var(--bb-gold-hover); outline-offset: 5px; }
.bb-container { width: min(100%, var(--bb-content)); margin-inline: auto; padding-inline: var(--bb-gutter); }
.bb-logo { display: block; width: clamp(14rem, 25vw, 24rem); height: auto; }
.bb-title { font-family: var(--bb-font-display); font-size: var(--bb-h1); line-height: 1.3; font-weight: 400; letter-spacing: .02em; max-width: 20ch; margin-block: 0 1.5rem; }
.bb-section-title { font-family: var(--bb-font-display); font-size: var(--bb-h2); line-height: 1.35; font-weight: 400; margin-block: 0 1.5rem; }
.bb-eyebrow { color: var(--bb-gold); font-family: var(--bb-font-display); font-size: var(--bb-label); letter-spacing: .12em; text-transform: uppercase; }
.bb-copy { max-width: 62ch; }
.bb-muted { color: var(--bb-muted); }
.bb-button { display: inline-flex; align-items: center; justify-content: center; min-height: 3rem; padding: .875rem 1.5rem; border: 1px solid var(--bb-gold); border-radius: var(--bb-radius); background: var(--bb-gold); color: var(--bb-black); font: 600 1rem/1.25 var(--bb-font); text-decoration: none; cursor: pointer; transition: background var(--bb-transition), border-color var(--bb-transition); }
.bb-button:hover { background: var(--bb-gold-hover); border-color: var(--bb-gold-hover); color: var(--bb-black); }
.bb-button--secondary { color: var(--bb-text); background: transparent; border-color: var(--bb-border); }
.bb-button--secondary:hover { background: var(--bb-raised); color: var(--bb-text); border-color: var(--bb-gold); }
.bb-button:disabled { opacity: .55; cursor: not-allowed; }
.bb-field { display: grid; gap: .5rem; }
.bb-field label { font-size: var(--bb-label); font-weight: 600; }
.bb-field input, .bb-field textarea, .bb-field select { width: 100%; min-height: 3rem; padding: .875rem 1rem; background: var(--bb-surface); border: 1px solid var(--bb-border); border-radius: var(--bb-radius); color: var(--bb-text); font: 1rem/1.5 var(--bb-font); }
.bb-field [aria-invalid='true'] { border-color: var(--bb-error); }
.bb-error { color: var(--bb-error); }
.bb-notice { padding: 1rem 1.25rem; border-left: 2px solid var(--bb-gold); background: var(--bb-surface); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
