/* Brand X Holdings · brand.css · guidelines 1.4. Self-hosted fonts only. */
@font-face { font-family: "Cinzel"; src: url("fonts/cinzel-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Cormorant Garamond"; src: url("fonts/cormorant-garamond-500.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "EB Garamond"; src: url("fonts/eb-garamond-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "EB Garamond"; src: url("fonts/eb-garamond-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }

:root {
  --bx-navy: #1B2A41;
  --bx-ivory: #F5EFE3;
  --bx-gold: #B08D57;
  --bx-ink: #1C1A17;
  --bx-gold-text: #846535;
  --bx-gold-large: #9A7840;
  --bx-stone: #D9D0C1;
  --bx-paper: #FBF8F2;
  --bx-font-label: 'Cinzel', 'Times New Roman', serif;
  --bx-font-heading: 'Cormorant Garamond', Georgia, serif;
  --bx-font-text: 'EB Garamond', Georgia, serif;
  --bx-max: 1120px;
  --bx-measure: 68ch;
  --bx-margin: clamp(24px, 4vw, 48px);
  --bx-section: clamp(4rem, 10vw, 10rem);
}

html { background: var(--bx-ivory); color: var(--bx-ink); }
body { margin: 0; font: 400 1.1875rem/1.6 var(--bx-font-text); -webkit-font-smoothing: antialiased; }
.bx-wrap { max-width: var(--bx-max); margin: 0 auto; padding: 0 var(--bx-margin); }
.bx-section { padding: var(--bx-section) 0; }
.bx-section p { max-width: var(--bx-measure); }

h1, .bx-statement { font: 500 clamp(2.5rem, 4.6vw, 4rem)/1.1 var(--bx-font-heading); color: var(--bx-navy); margin: 0; }
h2 { font: 500 clamp(1.75rem, 2.6vw, 2.5rem)/1.2 var(--bx-font-heading); color: var(--bx-navy); margin: 0 0 1rem; }
h3 { font: 500 1.5rem/1.25 var(--bx-font-heading); color: var(--bx-navy); margin: 0 0 .5rem; }
.bx-label { font: 400 0.75rem/1.4 var(--bx-font-label); letter-spacing: 0.22em; text-transform: uppercase; color: var(--bx-gold-text); }
.bx-rule { width: 48px; height: 0; border: 0; border-top: 1px solid var(--bx-gold); margin: 1.5rem 0; }
.bx-rule--center { margin-left: auto; margin-right: auto; }

a { color: inherit; text-decoration: underline; text-decoration-color: var(--bx-gold); text-decoration-thickness: 1px; text-underline-offset: 4px; }
a:hover { text-decoration-thickness: 2px; }
:focus-visible { outline: 2px solid var(--bx-navy); outline-offset: 3px; }

.bx-band { background: var(--bx-navy); color: var(--bx-ivory); }
.bx-band, .bx-band * { -webkit-font-smoothing: auto; -moz-osx-font-smoothing: auto; }  /* light type on midnight: keep hairlines whole on 1x screens */
.bx-band .bx-label { color: var(--bx-gold); }
.bx-band :focus-visible { outline-color: var(--bx-ivory); }
.bx-header { height: 88px; display: flex; align-items: center; }
.bx-header .bx-wrap { width: 100%; display: flex; align-items: center; justify-content: space-between; }
.bx-header img, .bx-header svg { height: 40px; width: auto; }
.bx-nav a { font: 400 .75rem/1 var(--bx-font-label); letter-spacing: .22em; text-transform: uppercase; text-decoration: none; margin-left: 2rem; }
@media (max-width: 640px) { .bx-header { height: 64px; } .bx-header img, .bx-header svg { height: 32px; } }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
