/* BSTCRM is a product story inside Omnia, not a second visual identity.
   Primitive -> semantic -> component tokens are kept local to these routes. */
.omnia-bstcrm-page {
  --crm-primitive-black: #030303;
  --crm-primitive-graphite: #151515;
  --crm-primitive-violet: #6b26e2;
  --crm-primitive-violet-light: #c8b6ff;
  --crm-primitive-white: #f4f3f0;
  --crm-canvas: var(--crm-primitive-black);
  --crm-surface: var(--crm-primitive-graphite);
  --crm-surface-raised: #1b1a1e;
  --crm-foreground: var(--crm-primitive-white);
  --crm-secondary: #bcb9c1;
  --crm-accent: var(--crm-primitive-violet);
  --crm-accent-text: var(--crm-primitive-violet-light);
  --crm-rule: rgba(244, 243, 240, .18);
  --bst-bg: var(--crm-canvas);
  --bst-bg-deep: var(--crm-canvas);
  --bst-panel: var(--crm-surface);
  --bst-panel-soft: var(--crm-surface-raised);
  --bst-line: var(--crm-rule);
  --bst-gold: var(--crm-accent);
  --bst-gold-light: var(--crm-accent-text);
  --bst-copy: var(--crm-foreground);
  --bst-muted: var(--crm-secondary);
  --bst-ink: #fff;
  background: var(--crm-canvas);
  color: var(--crm-foreground);
  font-family: Gilroy, Arial, sans-serif;
}
.omnia-bstcrm-page .omnia-route-shell {
  width: min(100%, 1540px);
  background: var(--crm-canvas);
  overflow: visible;
}
.omnia-bstcrm-page .omnia-route-nav {
  border-color: var(--crm-rule);
  border-radius: 999px;
  background: rgba(18, 17, 20, .94);
  box-shadow: none;
}
.omnia-bstcrm-page .omnia-route-brand { color: var(--crm-accent); }
.omnia-bstcrm-page .omnia-route-links a,
.omnia-bstcrm-page .omnia-route-cta,
.omnia-bstcrm-page .omnia-mobile-menu a,
.omnia-bstcrm-page .omnia-route-footer { font-family: Gilroy, Arial, sans-serif; }
.omnia-bstcrm-page .omnia-route-links a:hover,
.omnia-bstcrm-page .omnia-route-links a[aria-current="page"],
.omnia-bstcrm-page .omnia-mobile-menu a:hover,
.omnia-bstcrm-page .omnia-route-footer a { color: var(--crm-accent-text); }
.omnia-bstcrm-page .omnia-route-links .omnia-app-nav-link,
.omnia-bstcrm-page .omnia-route-links .omnia-app-nav-link:hover,
.omnia-bstcrm-page .omnia-route-links .omnia-app-nav-link[aria-current="page"] {
  border-color: rgba(107, 38, 226, .65);
  background: rgba(107, 38, 226, .13);
  color: var(--crm-accent-text);
}
.omnia-bstcrm-page .omnia-route-cta,
.omnia-bstcrm-page .omnia-mobile-menu-cta { background: var(--crm-accent); border-color: var(--crm-accent); color: #fff; }
.omnia-bstcrm-page .omnia-mobile-menu { background: #0b0a0d; }
.omnia-bstcrm-page :is(a, button, summary):focus-visible { outline: 2px solid var(--crm-accent-text); outline-offset: 3px; }
.bstcrm-breadcrumbs { color: #b2adb8; }
.bstcrm-breadcrumbs a { color: var(--crm-accent-text); }
.bstcrm-eyebrow,
.bstcrm-eyebrow span,
.bstcrm-eyebrow i { color: var(--crm-accent-text); font-family: Gilroy, Arial, sans-serif; }
.bstcrm-eyebrow { margin-bottom: 16px; font-size: 11px; font-weight: 800; letter-spacing: .13em; }
.bstcrm-hero,
.bstcrm-segment-hero {
  isolation: isolate;
  min-height: min(750px, 75vh);
  padding: clamp(55px, 6.5vw, 102px) clamp(23px, 3.5vw, 55px);
  border: 1px solid var(--crm-rule);
  border-radius: 28px;
  overflow: hidden;
  background: #0c0b0e;
}
.bstcrm-hero::before,
.bstcrm-segment-hero::before {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: auto;
  aspect-ratio: auto;
  border-radius: 0;
  background: url('/omnia-media/bstcrm/workshop-editorial-v1.png') center / cover no-repeat;
  content: '';
}
.bstcrm-hero::after,
.bstcrm-segment-hero::after {
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(2,2,3,.95) 0%, rgba(2,2,3,.83) 40%, rgba(2,2,3,.37) 100%),
              linear-gradient(0deg, rgba(2,2,3,.78), transparent 45%);
  content: '';
  pointer-events: none;
}
.bstcrm-hero-copy { max-width: 650px; }
.bstcrm-hero h1,
.bstcrm-segment-hero h1,
.bstcrm-price-hero h1,
.bstcrm-section h2,
.bstcrm-final-cta h2 {
  color: var(--crm-foreground);
  font-family: DrukCyr, Bebasneue, Impact, sans-serif;
  font-weight: 700;
  letter-spacing: .005em;
  line-height: .98;
  text-wrap: balance;
  overflow-wrap: normal;
}
.bstcrm-hero h1 { font-size: clamp(64px, 7.2vw, 118px); }
.bstcrm-segment-hero h1 { font-family: Bebasneue, Impact, sans-serif; font-size: clamp(48px, 4.8vw, 72px); letter-spacing: .016em; line-height: 1.04; }
.bstcrm-hero h1 em,
.bstcrm-segment-hero h1 em,
.bstcrm-price-hero h1 em,
.bstcrm-section h2 em,
.bstcrm-final-cta h2 em {
  color: var(--crm-accent-text);
  font-family: DrukCyr, Bebasneue, Impact, sans-serif;
  font-size: 1em;
  font-style: normal;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}
.bstcrm-hero-lede { color: #e0dce3; font-family: Gilroy, Arial, sans-serif; line-height: 1.52; }
.bstcrm-button { border-radius: 999px; font-family: Gilroy, Arial, sans-serif; font-size: 13px; }
.bstcrm-button--gold { background: var(--crm-accent); color: #fff !important; }
.bstcrm-button--gold:hover { background: #8440f0; }
.bstcrm-button--quiet { border-color: rgba(255,255,255,.55); background: rgba(3,3,3,.4); }
.bstcrm-button--quiet:hover { border-color: var(--crm-accent-text); background: rgba(107,38,226,.15); }
.bstcrm-hero-facts { border-color: var(--crm-rule); }
.bstcrm-hero-facts strong { color: var(--crm-accent-text); font-family: Bebasneue, Impact, sans-serif; font-size: clamp(22px, 2.1vw, 32px); letter-spacing: .025em; }
.bstcrm-hero-facts span { color: #d0cbd2; font-size: 12px; }
.bstcrm-hero-media { padding: 11px; border-color: rgba(200,182,255,.35); border-radius: 24px; background: rgba(13,12,16,.78); box-shadow: 0 32px 85px rgba(0,0,0,.42); transform: perspective(1100px) rotateY(var(--crm-tilt-x, 0deg)) rotateX(var(--crm-tilt-y, 0deg)); transition: transform .35s ease-out; will-change: transform; }
.bstcrm-screen { border-radius: 13px; }
.bstcrm-screen-top { background: #ececef; color: #34323b; font-family: Gilroy, Arial, sans-serif; }
.bstcrm-screen-top > span:last-child { color: #6b26e2; }
.bstcrm-window-dots i { background: var(--crm-accent); }
.bstcrm-screen figcaption { background: #ececef; color: #4b4651; font-size: 10px; }
.bstcrm-product-tabs { display: flex; flex-wrap: wrap; gap: 7px; padding: 11px 2px 1px; }
.bstcrm-product-tabs button { min-height: 36px; padding: 8px 13px; border: 1px solid rgba(255,255,255,.26); border-radius: 999px; background: #171419; color: #e4dfe8; font: 700 11px/1 Gilroy, Arial, sans-serif; cursor: pointer; }
.bstcrm-product-tabs button:hover,
.bstcrm-product-tabs button.is-active { border-color: var(--crm-accent); background: var(--crm-accent); color: #fff; }
.bstcrm-floating-note { border-color: rgba(200,182,255,.5); border-radius: 18px; background: #18121e; }
.bstcrm-floating-note span,
.bstcrm-pain-grid article > span,
.bstcrm-view-card > div > span,
.bstcrm-detail-grid article > span { color: var(--crm-accent-text); }
.bstcrm-floating-note strong { font-family: Gilroy, Arial, sans-serif; font-size: 15px; }
.bstcrm-section { border-color: var(--crm-rule); }
.bstcrm-section h2,
.bstcrm-final-cta h2 { font-size: clamp(44px, 4.9vw, 72px); line-height: .98; }
.bstcrm-section-head > p:last-child,
.bstcrm-section-head--split > p,
.bstcrm-pain-close { color: var(--crm-secondary); line-height: 1.55; }
.bstcrm-pain-grid article,
.bstcrm-capability-grid article,
.bstcrm-detail-grid article,
.bstcrm-view-card,
.bstcrm-price-compare article { border: 1px solid var(--crm-rule); border-radius: 23px; background: var(--crm-surface); }
.bstcrm-pain-grid h3,
.bstcrm-view-card h3,
.bstcrm-detail-grid h3,
.bstcrm-capability-grid h3,
.bstcrm-workflow-list h3,
.bstcrm-price-compare strong { font-family: Gilroy, Arial, sans-serif; font-weight: 800; letter-spacing: -.025em; line-height: 1.23; }
.bstcrm-pain-grid p,
.bstcrm-view-card p,
.bstcrm-detail-grid p,
.bstcrm-capability-grid p,
.bstcrm-workflow-list p { color: var(--crm-secondary); line-height: 1.55; }
.bstcrm-pain-close { border-color: var(--crm-accent); }
.bstcrm-workflow-list { gap: 9px; }
.bstcrm-workflow-list li,
.bstcrm-workflow-list li:first-child,
.bstcrm-workflow-list li:last-child { border: 1px solid var(--crm-rule); border-radius: 19px; background: var(--crm-surface); }
.bstcrm-workflow-list li > span,
.bstcrm-capability-grid article > span,
.bstcrm-onboarding-steps span { color: var(--crm-accent-text); font-family: Bebasneue, Impact, sans-serif; font-size: 30px; }
.bstcrm-workflow-list li > b { color: #b9b0c4; }
.bstcrm-view-card { padding: 22px; }
.bstcrm-pricing-band,
.bstcrm-final-cta,
.bstcrm-price-card { border: 1px solid rgba(200,182,255,.36); border-radius: 26px; background: #191420; }
.bstcrm-pricing-band h2,
.bstcrm-price-card > div > strong { color: var(--crm-accent-text); font-family: DrukCyr, Bebasneue, Impact, sans-serif; letter-spacing: .01em; }
.bstcrm-pricing-band h2 em { font-family: Gilroy, Arial, sans-serif; }
.bstcrm-pricing-band p { color: #d0cad5; }
.bstcrm-price-mark { color: rgba(200,182,255,.45); font-family: DrukCyr, Bebasneue, Impact, sans-serif; }
.bstcrm-onboarding-steps strong,
.bstcrm-faq summary,
.bstcrm-segment-benefit strong { font-family: Gilroy, Arial, sans-serif; }
.bstcrm-segment-benefit { border-color: var(--crm-accent); background: var(--crm-surface); }
.bstcrm-segment-benefit span,
.bstcrm-price-card > div > span,
.bstcrm-price-compare article > span { color: var(--crm-accent-text); }
.bstcrm-price-hero h1 { font-size: clamp(57px, 7vw, 98px); }
.bstcrm-price-hero { max-width: 1200px; }
.bstcrm-price-card li { color: #e1dce5; }
.bstcrm-price-card li::before,
.bstcrm-faq summary::after { color: var(--crm-accent-text); }
.bstcrm-price-compare article { padding: 25px; }
.bstcrm-contextual-link a { color: var(--crm-accent-text); }
.bstcrm-final-cta { background: linear-gradient(110deg, rgba(25,20,32,.96), rgba(12,10,16,.98)), url('/omnia-media/bstcrm/workshop-editorial-v1.png') center/cover; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .bstcrm-hero-media:hover { transition-duration: .12s; }
  .bstcrm-pain-grid article:hover,
  .bstcrm-view-card:hover,
  .bstcrm-capability-grid article:hover { border-color: rgba(200,182,255,.52); }
}
@media (max-width: 1050px) {
  .bstcrm-hero, .bstcrm-segment-hero { min-height: 0; }
  .bstcrm-hero h1 { font-size: clamp(61px, 8vw, 92px); }
  .bstcrm-workflow-list li { border: 1px solid var(--crm-rule); border-radius: 19px; }
}
@media (max-width: 760px) {
  .omnia-bstcrm-page .omnia-route-shell { padding-inline: 12px; }
  .omnia-bstcrm-page .omnia-route-nav { border-radius: 18px; }
  .omnia-bstcrm-page .omnia-mobile-menu-toggle { border-color: var(--crm-rule); background: var(--crm-surface); }
  .bstcrm-hero, .bstcrm-segment-hero { gap: 20px; padding: 38px 19px 43px; border-radius: 23px; }
  .bstcrm-hero::after, .bstcrm-segment-hero::after { background: linear-gradient(180deg, rgba(2,2,3,.92), rgba(2,2,3,.72) 62%, rgba(2,2,3,.91)); }
  .bstcrm-hero h1 { font-size: clamp(62px, 12vw, 87px); }
  .bstcrm-segment-hero h1,
  .bstcrm-price-hero h1 { font-size: clamp(50px, 9vw, 70px); }
  .bstcrm-section { padding: 43px 6px; }
  .bstcrm-section h2,
  .bstcrm-final-cta h2 { font-size: clamp(42px, 8vw, 60px); }
  .bstcrm-hero-media { margin: 0 6px 0 0; transform: none !important; }
  .bstcrm-floating-note { right: -6px; width: 133px; }
  .bstcrm-product-tabs { gap: 5px; }
  .bstcrm-product-tabs button { padding-inline: 10px; font-size: 10px; }
  .bstcrm-workflow-list li,
  .bstcrm-workflow-list li:first-child,
  .bstcrm-workflow-list li:nth-child(2),
  .bstcrm-workflow-list li:nth-child(3),
  .bstcrm-workflow-list li:last-child { margin-bottom: 8px; border: 1px solid var(--crm-rule); border-radius: 18px; }
  .bstcrm-pricing-band { margin-inline: 4px; }
  .bstcrm-final-cta { margin-inline: 4px; }
}
@media (max-width: 390px) {
  .bstcrm-hero h1 { font-size: clamp(54px, 12vw, 65px); }
  .bstcrm-hero-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bstcrm-hero-facts div { display: grid; grid-template-columns: 1fr; }
  .bstcrm-hero-facts strong { font-size: 20px; }
  .bstcrm-hero-facts span { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .bstcrm-hero-media { transform: none !important; transition: none !important; will-change: auto; }
}
