@font-face {
  font-family: "BC Smooch";
  src: url("/assets/fonts/landing/smooch-sans-latin-300-500.woff2") format("woff2");
  font-weight: 300 500;
  font-display: swap;
}
@font-face {
  font-family: "BC Geist";
  src: url("/assets/fonts/landing/geist-latin-400.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}
.bc-page {
  --bc-bg: #050c0e;
  --bc-text: #edf2ee;
  --bc-muted: #a5b8b5;
  --bc-accent: #ebea52;
  --bc-line: #ffffff24;
  margin: 0;
  background: var(--bc-bg);
  color: var(--bc-text);
  font: 400 16px/1.6 "BC Geist", sans-serif;
  -webkit-font-smoothing: antialiased;
}
.bc-page * { box-sizing: border-box; }
.bc-page [hidden] { display: none !important; }
.bc-page img { display: block; max-width: 100%; height: auto; }
.bc-page a { color: inherit; text-decoration: none; }
.bc-page h1, .bc-page h2, .bc-page h3, .bc-page p, .bc-page figure { margin: 0; }
.bc-page h1, .bc-page h2, .bc-page h3 { font-weight: 400; }
.bc-page :is(a, summary, [tabindex]):focus-visible { outline: 2px solid var(--bc-accent); outline-offset: 5px; }
.bc-page [id] { scroll-margin-top: 30px; }
.bc-wrap { width: min(1260px, calc(100% - 96px)); margin-inline: auto; }
.bc-skip { position: fixed; z-index: 20; left: 16px; top: 12px; padding: 10px 18px; background: var(--bc-accent); color: var(--bc-bg) !important; transform: translateY(-150%); }
.bc-skip:focus { transform: none; }
.bc-header { display: flex; align-items: center; min-height: 90px; gap: 28px; }
.bc-brand { width: 138px; flex-shrink: 0; }
.bc-brand img { width: 100%; height: auto; }
.bc-footer a:hover { color: var(--bc-accent); }
.bc-header-cta { display: flex; align-items: center; gap: 20px; margin-left: auto; font-size: 14px; color: var(--bc-accent) !important; }
.bc-hero { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 64px; padding-block: 54px 76px; }
.bc-eyebrow { font-size: 12px; letter-spacing: .09em; color: var(--bc-accent); }
.bc-hero h1 { margin-top: 28px; font: 300 clamp(82px, 8.8vw, 124px)/.88 "BC Smooch", sans-serif; letter-spacing: -.015em; }
.bc-page em { font-style: normal; color: var(--bc-accent); }
.bc-hero-description { max-width: 420px; margin-top: 28px !important; color: var(--bc-muted); line-height: 1.8; }
.bc-button { display: inline-flex; min-height: 54px; padding: 14px 22px; align-items: center; justify-content: center; background: var(--bc-accent); color: #101919 !important; font-size: 14px; line-height: 1.4; transition: background .18s; }
.bc-button:hover { background: #f6f68a; }
.bc-hero .bc-button { margin-top: 32px; }
.bc-free-note { margin-top: 14px !important; color: var(--bc-muted); font-size: 12px; }
.bc-product-preview { display: flex; justify-content: center; }
.bc-product-preview img { width: auto; height: 620px; max-width: 100%; object-fit: contain; }
.bc-section { padding-block: 84px; }
.bc-page h2 { font: 300 clamp(54px, 5.3vw, 76px)/1 "BC Smooch", sans-serif; letter-spacing: -.012em; }
.bc-build { background: #0d1d20; }
.bc-build-layout { display: grid; grid-template-columns: 1.15fr 1fr; align-items: center; gap: 64px; }
.bc-steps { display: grid; grid-template-columns: 1fr; gap: 30px; padding: 0; margin: 40px 0 0; list-style: none; counter-reset: step; }
.bc-steps li { counter-increment: step; }
.bc-steps h3 { font: 400 32px/1.15 "BC Smooch", sans-serif; }
.bc-steps h3::before { content: counter(step) ". "; color: var(--bc-accent); }
.bc-steps p { max-width: 390px; margin-top: 10px; font-size: 14px; color: var(--bc-muted); line-height: 1.8; }
.bc-section-cta { margin-top: 34px; }
.bc-visitor-preview { width: 100%; max-width: 300px; justify-self: center; }
.bc-visitor-preview img { width: 100%; }
.bc-visitor-preview figcaption { margin-top: 12px; text-align: center; font-size: 12px; color: var(--bc-muted); }
.bc-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 32px; }
.bc-section-heading .bc-button { flex-shrink: 0; }
.bc-template-grid { display: flex; gap: 32px; margin-top: 44px; padding: 40px; background: #102024; overflow-x: auto; scroll-snap-type: x proximity; scroll-padding-inline: 40px; scrollbar-width: thin; scrollbar-color: #788c86 #102024; }
.bc-template-grid img { flex: 0 0 auto; width: auto; height: 390px; max-width: none; object-fit: contain; border-radius: 4px; scroll-snap-align: start; }
.bc-faq { display: grid; grid-template-columns: 1fr 1.3fr; gap: 72px; padding-top: 24px; }
.bc-faq-list { border-top: 1px solid var(--bc-line); }
.bc-faq details { border-bottom: 1px solid var(--bc-line); }
.bc-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; list-style: none; cursor: pointer; padding-block: 24px; font-size: 15px; }
.bc-faq summary::-webkit-details-marker { display: none; }
.bc-faq summary>span { color: var(--bc-accent); font-size: 23px; line-height: 1; }
.bc-faq details[open] summary>span { transform: rotate(45deg); }
.bc-faq details>p { font-size: 14px; line-height: 1.8; color: var(--bc-muted); padding: 0 25px 24px 0; }
.bc-faq details a { text-decoration: underline; text-underline-offset: 3px; color: var(--bc-text); }
.bc-final { padding-block: 76px 88px; background: #102321; text-align: center; }
.bc-final h2 { font-size: clamp(72px, 7.8vw, 112px); line-height: .95; }
.bc-final .bc-button { margin-top: 36px; }
.bc-footer { min-height: 100px; display: flex; align-items: center; justify-content: space-between; gap: 26px; color: var(--bc-muted); font-size: 12px; }
.bc-footer nav { display: flex; flex-wrap: wrap; gap: 26px; }
.bc-mobile-cta { display: none; }
@media (max-width: 1100px) {
  .bc-wrap { width: calc(100% - 64px); }
  .bc-hero { gap: 36px; }
  .bc-hero h1 { font-size: clamp(80px, 9vw, 108px); }
  .bc-product-preview img { height: 580px; }
  .bc-build-layout { gap: 36px; }
  .bc-steps { gap: 30px; }
  .bc-steps h3 { font-size: 29px; }
  .bc-template-grid { gap: 30px; padding: 32px; scroll-padding-inline: 32px; }
  .bc-template-grid img { height: 350px; }
  .bc-faq { gap: 42px; }
}
@media (max-width: 820px) {
  .bc-wrap { width: calc(100% - 48px); }
  .bc-header { min-height: 76px; justify-content: space-between; }
  .bc-brand { width: 119px; }
  .bc-header-cta { font-size: 13px; gap: 14px; }
  .bc-hero { grid-template-columns: 1fr; gap: 44px; padding-block: 32px 52px; }
  .bc-hero h1 { font-size: clamp(80px, 12vw, 108px); }
  .bc-hero-copy { max-width: 570px; }
  .bc-hero-description { font-size: 15px; }
  .bc-product-preview img { height: auto; width: 330px; }
  .bc-section { padding-block: 60px; }
  .bc-page h2 { font-size: 62px; }
  .bc-build-layout { grid-template-columns: 1fr; gap: 36px; }
  .bc-visitor-preview { max-width: 300px; }
  .bc-steps { gap: 24px; margin-top: 32px; }
  .bc-steps h3 { font-size: 26px; }
  .bc-steps p { font-size: 13px; }
  .bc-template-grid { gap: 24px; padding: 28px; margin-top: 32px; scroll-padding-inline: 28px; }
  .bc-template-grid img { height: 290px; }
  .bc-faq { grid-template-columns: 1fr; gap: 30px; padding-top: 10px; }
  .bc-faq-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
  .bc-faq-heading .bc-section-cta { margin-top: 0; flex-shrink: 0; }
  .bc-final h2 { font-size: 86px; }
  .bc-footer { flex-wrap: wrap; padding-block: 26px; padding-bottom: 115px; gap: 20px; }
  .bc-footer nav { flex-basis: 100%; justify-content: space-between; gap: 14px; font-size: 11px; }
  .bc-mobile-cta { display: block; position: fixed; bottom: 0; left: 0; right: 0; z-index: 10; padding: 12px 20px calc(12px + env(safe-area-inset-bottom)); background: #071213f7; border-top: 1px solid var(--bc-line); }
  .bc-mobile-cta .bc-button { display: flex; max-width: 500px; margin: auto; }
}
@media (max-width: 540px) {
  .bc-wrap { width: calc(100% - 40px); }
  .bc-header { min-height: 72px; }
  .bc-brand { width: 108px; }
  .bc-hero h1 { font-size: clamp(64px, 19.2vw, 92px); margin-top: 24px; }
  .bc-hero-description { margin-top: 24px !important; }
  .bc-hero .bc-button { margin-top: 26px; }
  .bc-product-preview img { width: 300px; }
  .bc-page h2 { font-size: 54px; }
  .bc-section-heading { align-items: start; flex-direction: column; gap: 22px; }
  .bc-steps { grid-template-columns: 1fr; gap: 28px; }
  .bc-steps h3 { font-size: 30px; }
  .bc-steps p { margin-top: 8px; max-width: 330px; }
  .bc-template-grid { gap: 20px; padding: 20px; scroll-padding-inline: 20px; }
  .bc-template-grid img { height: 340px; }
  .bc-faq summary { font-size: 14px; gap: 16px; padding-block: 21px; }
  .bc-faq-heading { align-items: start; flex-direction: column; }
  .bc-faq-heading .bc-section-cta { margin-top: 4px; }
  .bc-faq details>p { padding-right: 0; font-size: 13px; }
  .bc-final { padding-block: 58px 64px; }
  .bc-final h2 { font-size: 72px; }
}
@media (prefers-reduced-motion: reduce) {
  .bc-page * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
