/* Reference: https://fs8.com/wp-content/themes/f45/assets/css/main.css?ver=6.8.1 */
@font-face {
  font-family: "Helvetica Neue";
  src: url("https://fs8.com/wp-content/themes/f45/assets/fonts/HelveticaNeue-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Helvetica Neue";
  src: url("https://fs8.com/wp-content/themes/f45/assets/fonts/HelveticaNeue-Light.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
:root {
  --page-bg: #FFFFFF;
  --text-primary: #000000;
  --text-secondary: #818184;
  --text-heading: #000000;
  --text-hero: #FFFFFF;
  --font: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
* { box-sizing: border-box; }
html, body { margin: 0; }
body { background: var(--page-bg); color: var(--text-primary); font-family: var(--font); font-weight: 300; -webkit-font-smoothing: antialiased; }

.split { display: grid; grid-template-columns: 100%; }
.split-left {
  position: relative;
  display: flex;
  align-items: center;
  padding: 48px 24px;
  background: url("/assets/fs8/event-bg.jpg") center / cover no-repeat;
  color: var(--text-hero);
}
.split-left::before { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, 0.5); }
.split-left .split-inner { position: relative; width: 100%; }
.split-right { display: flex; align-items: center; justify-content: center; padding: 24px; background: var(--page-bg); }
.split-right .split-inner { width: 100%; max-width: 480px; }

.brand-logo { display: block; height: 40px; width: auto; margin: 0 0 32px; }
.eyebrow, .subheadline, .cta-line { color: var(--text-hero); font-weight: 300; }
.eyebrow { margin: 0; font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; }
h1 { margin: 12px 0 0; font-size: clamp(32px, 9vw, 56px); line-height: 1.02; font-weight: 700; text-transform: uppercase; color: var(--text-hero); }
.subheadline { margin: 16px 0 0; font-size: 17px; line-height: 1.45; }
.cta-line { margin: 8px 0 0; font-size: 14px; line-height: 1.45; }

.form-title { margin: 0 0 16px; font-size: 24px; font-weight: 700; color: var(--text-heading); }
.form-frame { width: 100%; min-height: 474px; }
.form-note { margin: 12px 0 0; font-size: 14px; line-height: 1.5; color: var(--text-secondary); }

.legal-footer { width: 100%; padding: 24px; background: var(--page-bg); color: var(--text-secondary); font-size: 12px; }
.legal-footer:empty { display: none; }

@media (min-width: 900px) {
  .split { grid-template-columns: 1fr 1fr; min-height: 100vh; }
  .split-left, .split-right { padding: 64px; }
  h1 { font-size: 56px; }
}
