/* Service pages — shared premium layout, motion, components (bookkeeping + SaaS) */
:root {
  --bk-max: 1240px;
  --bk-prose: 720px;
  --bk-space-section: clamp(3.5rem, 6vw, 7rem);
  --bk-space-section-sm: clamp(3rem, 5vw, 5rem);
  --bk-radius: 1.25rem;
  --bk-radius-sm: 0.875rem;
  --bk-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --bk-tint: #fff4f0;
  --bk-tint-2: #f3f4f6;
}

.bk-page {
  --section-py: var(--bk-space-section);
}

.bk-container {
  max-width: var(--bk-max);
  margin-inline: auto;
  padding-inline: 1.25rem;
}
@media (min-width: 640px) {
  .bk-container { padding-inline: 1.5rem; }
}

.bk-prose {
  max-width: var(--bk-prose);
}

.bk-section {
  padding-block: var(--bk-space-section);
}
.bk-section--sm {
  padding-block: var(--bk-space-section-sm);
}

.bk-h1 {
  font-size: clamp(2.25rem, 4.5vw, 3.75rem);
  line-height: 1.1;
  letter-spacing: -0.03em;
  font-weight: 700;
}
.bk-h2 {
  font-size: clamp(1.875rem, 3.2vw, 2.75rem);
  line-height: 1.15;
  letter-spacing: -0.025em;
  font-weight: 700;
}
.bk-h3 {
  font-size: clamp(1.125rem, 1.5vw, 1.375rem);
  line-height: 1.3;
  font-weight: 700;
}
.bk-lead {
  font-size: clamp(1.05rem, 1.4vw, 1.25rem);
  line-height: 1.65;
  color: #5b6470;
}
.bk-body {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: #5b6470;
}

/* Sticky in-page nav */
.bk-subnav {
  position: sticky;
  top: 3.75rem;
  z-index: 40;
  background: rgba(250, 250, 247, 0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid #e8e8e3;
}
.bk-subnav__rail {
  display: flex;
  gap: 0.25rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 0.65rem 0;
}
.bk-subnav__rail::-webkit-scrollbar { display: none; }
.bk-subnav__link {
  flex: 0 0 auto;
  padding: 0.45rem 0.85rem;
  border-radius: 999px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #5b6470;
  white-space: nowrap;
  transition: background 180ms var(--bk-ease), color 180ms var(--bk-ease);
}
.bk-subnav__link:hover { color: #0f172a; background: #fff; }
.bk-subnav__link.is-active {
  color: #fff;
  background: #0f172a;
}

/* Cards */
.bk-card {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  padding: 1.5rem;
  transition: border-color 200ms var(--bk-ease), box-shadow 200ms var(--bk-ease), transform 200ms var(--bk-ease);
}
.bk-card:hover {
  border-color: #f0c4b8;
  box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);
  transform: translateY(-2px);
}
.bk-card:hover .bk-card__icon {
  transform: translateY(-3px);
}
.bk-card__icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--bk-tint);
  color: #ff6b47;
  transition: transform 200ms var(--bk-ease);
}
.bk-card--featured {
  background: #fafaf7;
  border-color: #ff6b47;
  box-shadow: 0 0 0 1px rgba(255, 107, 71, 0.15);
}
.bk-card--muted {
  background: #fafaf7;
}
.bk-card--boundary {
  background: #fff;
  border-style: dashed;
}

/* Scope list icons */
.bk-scope-list {
  list-style: none;
  padding: 0;
  margin: 1rem 0 0;
}
.bk-scope-list li {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: 0.7rem;
  color: #5b6470;
  line-height: 1.5;
}
.bk-scope-list--check li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.35rem;
  width: 1rem;
  height: 1rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF6B47' stroke-width='2.5'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center/contain no-repeat;
}
.bk-scope-list--plus li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.35rem;
  width: 1rem;
  height: 1rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B6470' stroke-width='2'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/contain no-repeat;
}
.bk-scope-list--shield li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.35rem;
  width: 1rem;
  height: 1rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B6470' stroke-width='2'%3E%3Cpath d='M12 3l8 4v5c0 5-3.5 8.5-8 10-4.5-1.5-8-5-8-10V7l8-4z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Benefit chips */
.bk-benefit {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.bk-benefit__icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.65rem;
  background: #fff;
  border: 1px solid #e8e8e3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ff6b47;
}

/* Trust strip */
.bk-trust {
  display: grid;
  gap: 1rem;
}
@media (min-width: 640px) {
  .bk-trust { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .bk-trust { grid-template-columns: repeat(4, 1fr); }
}
.bk-trust__item {
  background: #fff;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  padding: 1.15rem 1.25rem;
}

/* Workflow vertical */
.bk-flow {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-flow__step {
  display: grid;
  grid-template-columns: 2rem 1fr;
  gap: 0.85rem;
  align-items: start;
}
.bk-flow__marker {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
}
.bk-flow__dot {
  width: 0.85rem;
  height: 0.85rem;
  border-radius: 999px;
  background: #ff6b47;
  box-shadow: 0 0 0 4px rgba(255, 107, 71, 0.15);
  flex-shrink: 0;
}
.bk-flow__line {
  width: 2px;
  flex: 1;
  min-height: 1.5rem;
  background: linear-gradient(#ffb39f, #e8e8e3);
  margin-top: 0.35rem;
}
.bk-flow__step:last-child .bk-flow__line { display: none; }
.bk-flow__label {
  padding-bottom: 1.25rem;
  font-weight: 600;
  color: #0f172a;
  font-size: 0.95rem;
}

/* Hero image */
.bk-hero-figure {
  margin: 0;
  background: #fff;
  border: 1px solid #e8e8e3;
  border-radius: 1.25rem;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}
.bk-hero-figure img {
  display: block;
  width: 100%;
  height: auto;
}

/* Dashboard mock */
.bk-dash {
  background: #fff;
  border: 1px solid #e8e8e3;
  border-radius: 1.25rem;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}
.bk-dash__bar {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.75rem 1rem;
  background: #fafaf7;
  border-bottom: 1px solid #e8e8e3;
}
.bk-dash__dot {
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  background: #e8e8e3;
}
.bk-dash__dot:nth-child(1) { background: #ffb4a2; }
.bk-dash__dot:nth-child(2) { background: #fcd34d; }
.bk-dash__dot:nth-child(3) { background: #86efac; }
.bk-dash__body { padding: 1.25rem; }
.bk-dash__pipeline {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.5rem;
}
@media (max-width: 640px) {
  .bk-dash__pipeline { grid-template-columns: repeat(2, 1fr); }
}
.bk-dash__pipe {
  text-align: center;
  padding: 0.75rem 0.4rem;
  border-radius: 0.75rem;
  background: #fafaf7;
  border: 1px solid #e8e8e3;
  font-size: 0.7rem;
  font-weight: 600;
  color: #0f172a;
}
.bk-dash__pipe span {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0 auto 0.4rem;
  border-radius: 0.45rem;
  background: var(--bk-tint);
  color: #ff6b47;
  line-height: 1.5rem;
  font-size: 0.75rem;
}
.bk-dash__rows { margin-top: 1rem; display: grid; gap: 0.5rem; }
.bk-dash__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.65rem 0.85rem;
  border-radius: 0.65rem;
  background: #fafaf7;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-dash__status {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-weight: 600;
  color: #15803d;
  font-size: 0.75rem;
}
.bk-dash__status::before {
  content: '';
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #22c55e;
  animation: bk-pulse 1.8s ease-in-out infinite;
}

@keyframes bk-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.55; transform: scale(0.85); }
}

/* Snapshot panel */
.bk-snapshot {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.05);
}
.bk-snapshot__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: #0f172a;
  color: #fff;
}
.bk-snapshot__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.3rem 0.7rem;
  border-radius: 999px;
  background: rgba(255, 107, 71, 0.2);
  color: #ffb4a2;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.bk-snapshot table {
  width: 100%;
  border-collapse: collapse;
}
.bk-snapshot th,
.bk-snapshot td {
  padding: 0.9rem 1.25rem;
  text-align: left;
  border-bottom: 1px solid #e8e8e3;
  font-size: 0.9rem;
}
.bk-snapshot tr:last-child th,
.bk-snapshot tr:last-child td { border-bottom: 0; }
.bk-snapshot th {
  width: 38%;
  font-weight: 600;
  color: #0f172a;
  background: #fafaf7;
}
.bk-snapshot td { color: #5b6470; }

/* Challenge PPO */
.bk-ppo {
  display: grid;
  gap: 0.65rem;
}
@media (min-width: 768px) {
  .bk-ppo {
    grid-template-columns: 1fr auto 1fr auto 1fr;
    align-items: stretch;
  }
}
.bk-ppo__col {
  border-radius: 0.85rem;
  padding: 0.85rem 1rem;
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-ppo__col strong {
  display: block;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #ff6b47;
  margin-bottom: 0.35rem;
}
.bk-ppo__col p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #5b6470;
}
.bk-ppo__arrow {
  display: none;
  align-self: center;
  color: #c4c4bc;
}
@media (min-width: 768px) {
  .bk-ppo__arrow { display: block; }
}
.bk-ppo__arrow-mobile {
  display: flex;
  justify-content: center;
  color: #c4c4bc;
}
@media (min-width: 768px) {
  .bk-ppo__arrow-mobile { display: none; }
}

/* Process timeline */
.bk-timeline {
  display: grid;
  gap: 1.5rem;
  position: relative;
}
@media (min-width: 1024px) {
  .bk-timeline {
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
  }
  .bk-timeline::before {
    content: '';
    position: absolute;
    top: 1.35rem;
    left: 8%;
    right: 8%;
    height: 2px;
    background: #e8e8e3;
    z-index: 0;
  }
  .bk-timeline.is-inview::before {
    background: linear-gradient(90deg, #ff6b47, #ffb39f, #e8e8e3);
  }
}
.bk-timeline__step {
  position: relative;
  z-index: 1;
}
.bk-timeline__num {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 999px;
  background: #0f172a;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 0.875rem;
  margin-bottom: 1rem;
  border: 3px solid #fafaf7;
}

/* Software badges */
.bk-software {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}
.bk-software__badge {
  display: inline-flex;
  align-items: center;
  padding: 0.65rem 1.1rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-weight: 600;
  font-size: 0.9rem;
  color: #0f172a;
}

.bk-marquee {
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.bk-marquee__track {
  display: flex;
  gap: 0.75rem;
  width: max-content;
  animation: bk-marquee 28s linear infinite;
}
.bk-marquee:hover .bk-marquee__track { animation-play-state: paused; }

@keyframes bk-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

/* Responsibility matrix */
.bk-matrix-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
}
.bk-matrix {
  width: 100%;
  min-width: 40rem;
  border-collapse: collapse;
  font-size: 0.9rem;
}
.bk-matrix th,
.bk-matrix td {
  padding: 0.95rem 1.1rem;
  text-align: left;
  border-bottom: 1px solid #e8e8e3;
  vertical-align: top;
}
.bk-matrix thead th {
  background: #0f172a;
  color: #fff;
  font-weight: 600;
}
.bk-matrix tbody th {
  background: #fafaf7;
  color: #0f172a;
  font-weight: 600;
  width: 24%;
}
.bk-matrix tbody tr:nth-child(even) td { background: #fcfcfa; }
.bk-matrix tbody tr:last-child th,
.bk-matrix tbody tr:last-child td { border-bottom: 0; }

.bk-matrix-cards { display: none; gap: 1rem; }
@media (max-width: 767px) {
  .bk-matrix-wrap { display: none; }
  .bk-matrix-cards { display: grid; }
}
.bk-matrix-card {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  background: #fff;
  padding: 1.15rem;
}
.bk-matrix-card h4 {
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 0.75rem;
}
.bk-matrix-card dl {
  margin: 0;
  display: grid;
  gap: 0.65rem;
}
.bk-matrix-card dt {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #ff6b47;
  font-weight: 700;
}
.bk-matrix-card dd {
  margin: 0.15rem 0 0;
  color: #5b6470;
  font-size: 0.9rem;
}

/* CTA band */
.bk-cta {
  border-radius: 1.5rem;
  background: #0f172a;
  color: #fff;
  padding: clamp(2rem, 4vw, 3.5rem);
  position: relative;
  overflow: hidden;
}
.bk-cta::after {
  content: '';
  position: absolute;
  right: -4rem;
  top: -4rem;
  width: 16rem;
  height: 16rem;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.28), transparent 70%);
  pointer-events: none;
}
.bk-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.85rem 1.5rem;
  border-radius: 999px;
  font-weight: 600;
  transition: transform 180ms var(--bk-ease), opacity 180ms var(--bk-ease), box-shadow 180ms var(--bk-ease);
}
.bk-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12);
}
.bk-btn:hover .bk-btn__arrow {
  transform: translateX(4px);
}
.bk-btn__arrow {
  transition: transform 180ms var(--bk-ease);
  display: inline-block;
}
.bk-btn--primary {
  background: #ff6b47;
  color: #fff;
}
.bk-btn--primary:hover { opacity: 0.95; }
.bk-btn--secondary {
  background: transparent;
  color: #0f172a;
  border: 1px solid #e8e8e3;
}
.bk-btn--ghost {
  background: transparent;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.bk-btn--ghost:hover { border-color: rgba(255, 255, 255, 0.6); }
@media (max-width: 639px) {
  .bk-btn-row .bk-btn { width: 100%; }
}

/* Callout */
.bk-callout {
  border-left: 3px solid #ff6b47;
  background: #fff4f0;
  border-radius: 0 0.85rem 0.85rem 0;
  padding: 1rem 1.25rem;
}

/* Reveal animations */
.bk-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.55s var(--bk-ease), transform 0.55s var(--bk-ease);
}
.bk-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.bk-stagger > .bk-reveal:nth-child(1) { transition-delay: 0ms; }
.bk-stagger > .bk-reveal:nth-child(2) { transition-delay: 70ms; }
.bk-stagger > .bk-reveal:nth-child(3) { transition-delay: 140ms; }
.bk-stagger > .bk-reveal:nth-child(4) { transition-delay: 210ms; }
.bk-stagger > .bk-reveal:nth-child(5) { transition-delay: 280ms; }
.bk-stagger > .bk-reveal:nth-child(6) { transition-delay: 350ms; }

.bk-hero-anim .bk-reveal:nth-child(1) { transition-delay: 0ms; }
.bk-hero-anim .bk-reveal:nth-child(2) { transition-delay: 90ms; }
.bk-hero-anim .bk-reveal:nth-child(3) { transition-delay: 160ms; }
.bk-hero-anim .bk-reveal:nth-child(4) { transition-delay: 230ms; }
.bk-hero-anim .bk-reveal:nth-child(5) { transition-delay: 300ms; }
.bk-hero-anim .bk-reveal:nth-child(6) { transition-delay: 370ms; }

@media (prefers-reduced-motion: reduce) {
  .bk-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .bk-dash__status::before { animation: none; }
  .bk-marquee__track { animation: none; }
  .bk-card:hover,
  .bk-btn:hover,
  .bk-card:hover .bk-card__icon,
  .bk-btn:hover .bk-btn__arrow {
    transform: none;
  }
}

/* =====================================================================
   SaaS bookkeeping page components
   ===================================================================== */

/* Hero figure with floating status cards */
.bk-hero-stack {
  position: relative;
}
.bk-float-card {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: #fff;
  border: 1px solid #e8e8e3;
  border-radius: 0.75rem;
  padding: 0.55rem 0.8rem;
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.1);
  font-size: 0.78rem;
  font-weight: 600;
  color: #0f172a;
  white-space: nowrap;
}
.bk-float-card__tick {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.15rem;
  height: 1.15rem;
  border-radius: 999px;
  background: #dcfce7;
  color: #15803d;
  flex-shrink: 0;
}
.bk-float-card--a {
  top: 7%;
  left: -1.25rem;
  animation: bk-float 7s ease-in-out infinite;
}
.bk-float-card--b {
  bottom: 18%;
  right: -1.25rem;
  animation: bk-float 8s ease-in-out infinite 0.9s;
}
.bk-float-card--c {
  bottom: -0.9rem;
  left: 10%;
  animation: bk-float 9s ease-in-out infinite 1.6s;
}
@keyframes bk-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}
@media (max-width: 1023px) {
  .bk-float-card--a { left: 0.5rem; }
  .bk-float-card--b { right: 0.5rem; }
  .bk-float-card--c { display: none; }
}
@media (max-width: 480px) {
  .bk-float-card { font-size: 0.7rem; padding: 0.4rem 0.6rem; }
  .bk-float-card--b { display: none; }
}

/* Disconnected vs connected systems graphic */
.bk-systems {
  display: grid;
  gap: 1rem;
}
.bk-systems__panel {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  background: #fff;
  padding: 1.15rem;
}
.bk-systems__panel--fixed {
  border-color: rgba(255, 107, 71, 0.35);
  background: linear-gradient(180deg, #fff 0%, #fff8f6 100%);
}
.bk-systems__label {
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
  margin: 0 0 0.85rem;
}
.bk-systems__panel--fixed .bk-systems__label { color: #ff6b47; }
.bk-node-chain {
  display: grid;
  gap: 0.4rem;
}
.bk-node {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.6rem;
  background: #fafaf7;
  padding: 0.5rem 0.75rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: #0f172a;
}
.bk-node--loose {
  border-style: dashed;
  border-color: #d6d6cf;
  color: #5b6470;
}
.bk-node--loose:nth-child(2) { margin-left: 1.5rem; }
.bk-node--loose:nth-child(3) { margin-left: 0.5rem; }
.bk-node--loose:nth-child(4) { margin-left: 2rem; }
.bk-node--loose:nth-child(5) { margin-left: 1rem; }
.bk-systems__panel--fixed .bk-node {
  border-color: rgba(255, 107, 71, 0.28);
  background: #fff;
}
.bk-node__dot {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #cbd5e1;
  flex-shrink: 0;
}
.bk-systems__panel--fixed .bk-node__dot { background: #ff6b47; }

/* Monthly close document card */
.bk-close {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.07);
  overflow: hidden;
}
.bk-close__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: #fafaf7;
  border-bottom: 1px solid #e8e8e3;
}
.bk-close__title {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-close__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: #15803d;
  background: #dcfce7;
  border-radius: 999px;
  padding: 0.25rem 0.7rem;
}
.bk-close__list {
  list-style: none;
  margin: 0;
  padding: 0.5rem 1.25rem 1.1rem;
}
.bk-close__list li {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.6rem 0;
  border-bottom: 1px solid #f1f1ec;
  color: #0f172a;
  font-size: 0.92rem;
}
.bk-close__list li:last-child { border-bottom: 0; }
.bk-close__tick {
  color: #15803d;
  font-weight: 700;
  line-height: 1.5;
  flex-shrink: 0;
}

/* Outputs progression */
.bk-outputs {
  display: grid;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .bk-outputs { grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
}
.bk-output__step {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 1.1rem;
  padding-top: 0.9rem;
  border-top: 1px dashed #e8e8e3;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #ff6b47;
}

/* Audience cards */
.bk-audience {
  display: grid;
  gap: 0.85rem;
}
.bk-audience__item {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  background: #fff;
  padding: 1.1rem 1.25rem;
  transition: transform 200ms var(--bk-ease), border-color 200ms var(--bk-ease),
    box-shadow 200ms var(--bk-ease);
}
.bk-audience__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.4);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.07);
}
.bk-audience__item h3 {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-audience__item p {
  margin: 0.3rem 0 0;
  color: #5b6470;
  font-size: 0.9rem;
}

/* Horizontal pipeline diagram */
.bk-pipeline {
  display: grid;
  gap: 0.75rem;
  align-items: stretch;
}
@media (min-width: 900px) {
  .bk-pipeline {
    grid-template-columns: repeat(5, 1fr);
    gap: 0;
  }
}
.bk-pipeline__node {
  position: relative;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  background: #fff;
  padding: 1rem 0.85rem;
  text-align: center;
  font-weight: 600;
  color: #0f172a;
  font-size: 0.9rem;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.45s var(--bk-ease), transform 0.45s var(--bk-ease);
}
@media (min-width: 900px) {
  .bk-pipeline__node { margin-inline: 0.5rem; }
  .bk-pipeline__node::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -1.05rem;
    width: 1.05rem;
    height: 2px;
    background: #e8e8e3;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 0.4s var(--bk-ease);
  }
  .bk-pipeline__node:last-child::after { display: none; }
}
.bk-pipeline.is-inview .bk-pipeline__node {
  opacity: 1;
  transform: translateY(0);
}
.bk-pipeline.is-inview .bk-pipeline__node::after { transform: scaleX(1); }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(1) { transition-delay: 0ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(2) { transition-delay: 120ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(3) { transition-delay: 240ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(4) { transition-delay: 360ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(5) { transition-delay: 480ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(1)::after { transition-delay: 90ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(2)::after { transition-delay: 210ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(3)::after { transition-delay: 330ms; }
.bk-pipeline.is-inview .bk-pipeline__node:nth-child(4)::after { transition-delay: 450ms; }
.bk-pipeline__step {
  display: block;
  font-size: 0.68rem;
  font-weight: 700;
  color: #ff6b47;
  letter-spacing: 0.05em;
  margin-bottom: 0.3rem;
}

/* Pricing band */
.bk-pricing {
  border: 1px solid rgba(255, 107, 71, 0.28);
  border-radius: var(--bk-radius);
  background: linear-gradient(160deg, #fff6f3 0%, #fffdfc 60%, #fff 100%);
  padding: clamp(1.75rem, 4vw, 3rem);
}

/* Section tints */
.bk-tinted { background: #f7f7f3; }
.bk-surface { background: #fff; border-block: 1px solid #e8e8e3; }

/* FAQ shell + smooth open */
.bk-faq {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  overflow: hidden;
}
.bk-faq .faq-item + .faq-item { border-top: 1px solid #e8e8e3; }
.bk-faq .faq-question:hover { color: #ff6b47; }
.bk-page .faq-answer.is-open {
  animation: bk-faq-open 240ms var(--bk-ease) both;
}
@keyframes bk-faq-open {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  .bk-float-card { animation: none; }
  .bk-pipeline__node { opacity: 1; transform: none; transition: none; }
  .bk-pipeline__node::after { transform: scaleX(1); transition: none; }
  .bk-audience__item:hover { transform: none; }
  .bk-page .faq-answer.is-open { animation: none; }
}

/* Stacked Problem/Process/Outcome for 2-col challenge grid */
.bk-ppo--stack { grid-template-columns: 1fr !important; }
.bk-ppo--stack .bk-ppo__arrow { display: none !important; }
.bk-ppo--stack .bk-ppo__arrow-mobile { display: block !important; }

/* No-JS / JS-failure fallback: never leave SEO copy hidden */
html:not(.bk-js) .bk-reveal { opacity: 1; transform: none; transition: none; }
html:not(.bk-js) .bk-pipeline__node { opacity: 1; transform: none; transition: none; }
html:not(.bk-js) .bk-pipeline__node::after { transform: scaleX(1); }
html:not(.bk-js) .bk-timeline::before { transform: scaleX(1); }

/* =====================================================================
   Shopify bookkeeping page components
   ===================================================================== */

/* Section eyebrow label */
.bk-eyebrow {
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #ff6b47;
  margin: 0;
}

/* Status badges (icon + text, never colour alone) */
.bk-status {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.2rem 0.6rem;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  white-space: nowrap;
  border: 1px solid transparent;
}
.bk-status--ok {
  background: #dcfce7;
  color: #15803d;
  border-color: #bbf7d0;
}
.bk-status--pending {
  background: #fef3c7;
  color: #92400e;
  border-color: #fde68a;
}
.bk-status svg {
  width: 0.8rem;
  height: 0.8rem;
  flex-shrink: 0;
}

/* Payout waterfall: sales -> deductions -> payout -> deposit */
.bk-waterfall {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.07);
  overflow: hidden;
}
.bk-waterfall__head {
  padding: 1rem 1.25rem;
  background: #fafaf7;
  border-bottom: 1px solid #e8e8e3;
}
.bk-waterfall__note {
  margin: 0.3rem 0 0;
  font-size: 0.72rem;
  color: #5b6470;
}
.bk-waterfall__body {
  padding: 1.25rem;
}
.bk-waterfall__top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 0.9rem 1rem;
  border-radius: var(--bk-radius-sm);
  background: #0f172a;
  color: #fff;
}
.bk-waterfall__amount {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
}
.bk-waterfall__label {
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.75);
}
.bk-waterfall__deductions {
  list-style: none;
  margin: 0.75rem 0 0;
  padding: 0;
  display: grid;
  gap: 0.4rem;
}
.bk-waterfall__deductions li {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.55rem 0.85rem;
  border: 1px dashed #e2d9d4;
  border-radius: 0.6rem;
  background: #fffaf8;
  font-size: 0.86rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-waterfall__minus {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 999px;
  background: #ffe4dc;
  color: #c2410c;
  font-weight: 700;
  font-size: 0.8rem;
  flex-shrink: 0;
}
.bk-waterfall__arrow {
  display: block;
  text-align: center;
  color: #ff6b47;
  font-size: 1rem;
  line-height: 1;
  margin: 0.55rem 0;
}
.bk-waterfall__result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 0.85rem 1rem;
  border-radius: var(--bk-radius-sm);
  border: 1px solid rgba(255, 107, 71, 0.35);
  background: #fff4f0;
  font-weight: 700;
  color: #0f172a;
  font-size: 0.95rem;
}
.bk-waterfall__result--bank {
  border-color: #bbf7d0;
  background: #f0fdf4;
}
.bk-waterfall__tag {
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #5b6470;
}

/* Snapshot status cell alignment */
.bk-snapshot td .bk-status { vertical-align: middle; }

/* =====================================================================
   Amazon seller bookkeeping page components
   ===================================================================== */

/* Waterfall: proportion bars instead of figures (no fabricated amounts) */
.bk-waterfall__bar {
  display: block;
  height: 0.45rem;
  width: 100%;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
  overflow: hidden;
  margin-top: 0.6rem;
}
.bk-waterfall__bar > span {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: #ff6b47;
  transform-origin: left center;
}
.bk-waterfall__result .bk-waterfall__bar {
  background: #e8e8e3;
  margin-top: 0.5rem;
}
.bk-waterfall__result--bank .bk-waterfall__bar > span { background: #16a34a; }
.bk-waterfall__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  width: 100%;
}
.bk-waterfall__result {
  display: block;
}
.bk-waterfall__done {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  margin-top: 0.75rem;
  padding: 0.7rem 1rem;
  border-radius: var(--bk-radius-sm);
  background: #0f172a;
  color: #fff;
  font-weight: 700;
  font-size: 0.9rem;
}

/* Four-stage output flow */
.bk-outputs--4 { display: grid; gap: 1.25rem; }
@media (min-width: 640px) {
  .bk-outputs--4 { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
}
@media (min-width: 1024px) {
  .bk-outputs--4 { grid-template-columns: repeat(4, 1fr); }
}
.bk-stage__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0.6rem;
  background: #fff4f0;
  color: #ff6b47;
  font-weight: 800;
  font-size: 0.8rem;
  font-variant-numeric: tabular-nums;
}

/* Seller-model chips (FBA / FBM) */
.bk-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}
.bk-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.3);
  background: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-chip svg {
  width: 0.85rem;
  height: 0.85rem;
  color: #15803d;
  flex-shrink: 0;
}

/* Final CTA side panel */
.bk-cta__panel {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--bk-radius-sm);
  background: rgba(255, 255, 255, 0.06);
  padding: 1.1rem 1.25rem;
  text-align: left;
}
.bk-cta__step {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.5rem 0;
  font-size: 0.88rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.9);
}
.bk-cta__step + .bk-cta__step { border-top: 1px solid rgba(255, 255, 255, 0.12); }
.bk-cta__step svg { width: 1rem; height: 1rem; flex-shrink: 0; color: #86efac; }

@media (prefers-reduced-motion: reduce) {
  .bk-waterfall__bar > span { transition: none; }
}

/* =====================================================================
   Accounts payable page components
   ===================================================================== */

/* Responsibility lanes: what NenoBooks does vs what stays with the client */
.bk-lanes {
  display: grid;
  gap: 1rem;
}
@media (min-width: 768px) {
  .bk-lanes { grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
}
.bk-lane {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  padding: 1.35rem 1.5rem;
}
.bk-lane--ours { border-color: rgba(255, 107, 71, 0.35); background: linear-gradient(180deg, #fff 0%, #fff8f6 100%); }
.bk-lane--yours { border-color: #cbd5e1; background: linear-gradient(180deg, #fff 0%, #f6f8fb 100%); }
.bk-lane__label {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  padding: 0.25rem 0.65rem;
  border-radius: 999px;
}
.bk-lane--ours .bk-lane__label { background: #fff0eb; color: #c2410c; }
.bk-lane--yours .bk-lane__label { background: #eef2f7; color: #334155; }
.bk-lane h3, .bk-lane .bk-lane__title {
  margin: 0.75rem 0 0;
  font-size: 1.05rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-lane ul {
  list-style: none;
  margin: 0.85rem 0 0;
  padding: 0;
  display: grid;
  gap: 0.55rem;
}
.bk-lane li {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  color: #5b6470;
  font-size: 0.92rem;
}
.bk-lane li svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: 0.2rem;
}
.bk-lane--ours li svg { color: #ff6b47; }
.bk-lane--yours li svg { color: #475569; }

/* Neutral status badge (for non-binary states) */
.bk-status--neutral {
  background: #eef2f7;
  color: #334155;
  border-color: #dbe3ec;
}

/* Before / after panel labels reuse .bk-systems */
.bk-systems__panel--before .bk-systems__label { color: #5b6470; }
.bk-lane__title { margin: 0.75rem 0 0; font-size: 1.05rem; font-weight: 700; color: #0f172a; }

/* =====================================================================
   Real estate bookkeeping — long-form guide layout
   ===================================================================== */

/* Article: readable prose column with wide break-outs for visuals */
.bk-article {
  --bk-read: 46rem;
}
.bk-read {
  max-width: var(--bk-read);
}
.bk-article p,
.bk-article > section > ul,
.bk-article > section > ol {
  max-width: var(--bk-read);
}
.bk-article section > div > p { max-width: var(--bk-read); }
.bk-article p { color: #5b6470; line-height: 1.7; }
.bk-article p + p { margin-top: 1rem; }

.bk-byline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.85rem;
  color: #5b6470;
}
.bk-byline__dot {
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 999px;
  background: #cbd5e1;
}

/* Numbered workflow steps for the monthly process */
.bk-steps { counter-reset: bk-step; display: grid; gap: 1.25rem; }
.bk-step {
  position: relative;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  padding: 1.5rem 1.6rem;
  transition: transform 220ms var(--bk-ease), border-color 220ms var(--bk-ease),
    box-shadow 220ms var(--bk-ease);
}
.bk-step:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.4);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07);
}
.bk-step__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.65rem;
  background: #fff4f0;
  color: #ff6b47;
  font-weight: 800;
  font-size: 0.85rem;
  font-variant-numeric: tabular-nums;
  margin-bottom: 0.9rem;
}

/* Flow diagram used in place of placeholder blocks */
.bk-flow-diagram {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(180deg, #fff 0%, #fafaf7 100%);
  padding: 1.35rem;
}
.bk-flow-diagram__node {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.55rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.7rem;
  background: #fff;
  font-size: 0.85rem;
  font-weight: 600;
  color: #0f172a;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04);
}
.bk-flow-diagram__node--end {
  border-color: rgba(255, 107, 71, 0.4);
  background: #fff4f0;
  color: #c2410c;
}
.bk-flow-diagram__arrow {
  color: #ff6b47;
  font-weight: 700;
  flex-shrink: 0;
}
@media (max-width: 640px) {
  .bk-flow-diagram { flex-direction: column; align-items: stretch; }
  .bk-flow-diagram__node { justify-content: center; }
  .bk-flow-diagram__arrow { text-align: center; }
}

/* Property portfolio visual */
.bk-portfolio {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.07);
  overflow: hidden;
}
.bk-portfolio__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.9rem 1.15rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.8rem;
  font-weight: 700;
}
.bk-portfolio__body { padding: 1rem 1.15rem 1.15rem; display: grid; gap: 0.6rem; }
.bk-portfolio__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 0.65rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.7rem;
  background: #fafaf7;
}
.bk-portfolio__name {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 700;
  font-size: 0.88rem;
  color: #0f172a;
}
.bk-portfolio__name svg { width: 1rem; height: 1rem; color: #ff6b47; flex-shrink: 0; }
.bk-portfolio__foot {
  margin: 0.35rem 0 0;
  padding: 0.8rem 0.85rem;
  border-radius: 0.7rem;
  background: #fff4f0;
  border: 1px solid rgba(255, 107, 71, 0.3);
  text-align: center;
  font-weight: 700;
  font-size: 0.85rem;
  color: #0f172a;
}

/* Data tables */
.bk-table-wrap {
  overflow-x: auto;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
}
.bk-table { width: 100%; border-collapse: collapse; font-size: 0.9rem; }
.bk-table thead th {
  background: #fafaf7;
  border-bottom: 1px solid #e8e8e3;
  padding: 0.85rem 1rem;
  text-align: left;
  font-weight: 700;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #0f172a;
  white-space: nowrap;
}
.bk-table td {
  padding: 0.85rem 1rem;
  border-bottom: 1px solid #f1f1ec;
  color: #5b6470;
  vertical-align: top;
}
.bk-table tbody tr:last-child td { border-bottom: 0; }
.bk-table tbody tr:nth-child(even) td { background: #fcfcfa; }
.bk-table td:first-child { color: #0f172a; font-weight: 600; }

/* Sources list */
.bk-sources { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.5rem; }
.bk-sources li {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  padding: 0.7rem 0.9rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.7rem;
  background: #fff;
  font-size: 0.9rem;
}
.bk-sources li svg { width: 0.95rem; height: 0.95rem; color: #5b6470; flex-shrink: 0; margin-top: 0.2rem; }

/* Problem cards */
.bk-problem {
  border: 1px solid #e8e8e3;
  border-left: 3px solid rgba(255, 107, 71, 0.5);
  border-radius: 0 var(--bk-radius-sm) var(--bk-radius-sm) 0;
  background: #fff;
  padding: 1.3rem 1.5rem;
  transition: transform 220ms var(--bk-ease), box-shadow 220ms var(--bk-ease);
}
.bk-problem:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07); }
.bk-problem h3 { margin: 0 0 0.5rem; font-size: 1.05rem; font-weight: 700; color: #0f172a; }

/* Figure caption */
.bk-figcaption { margin-top: 0.75rem; font-size: 0.82rem; color: #5b6470; }

@media (prefers-reduced-motion: reduce) {
  .bk-step:hover, .bk-problem:hover { transform: none; }
}

/* =====================================================================
   Accounts receivable page components
   ===================================================================== */

/* Aging dashboard shell */
.bk-aging {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.07);
  overflow: hidden;
}
.bk-aging__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: #0f172a;
  color: #fff;
}
.bk-aging__title { margin: 0; font-size: 0.9rem; font-weight: 700; }

/* Age-band chips */
.bk-bands {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.5rem;
  padding: 1rem 1.25rem 0;
}
@media (min-width: 640px) { .bk-bands { grid-template-columns: repeat(5, 1fr); } }
.bk-band {
  border: 1px solid #e8e8e3;
  border-radius: 0.65rem;
  background: #fafaf7;
  padding: 0.6rem 0.7rem;
  text-align: center;
}
.bk-band__label {
  display: block;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #5b6470;
}
.bk-band--current { border-color: rgba(255, 107, 71, 0.35); background: #fff4f0; }
.bk-band--current .bk-band__label { color: #c2410c; }

/* Desktop table / mobile cards */
.bk-aging__table-wrap { padding: 1rem 1.25rem 1.25rem; overflow-x: auto; }
.bk-aging table { width: 100%; border-collapse: collapse; font-size: 0.85rem; min-width: 40rem; }
.bk-aging thead th {
  text-align: left;
  padding: 0.6rem 0.7rem;
  border-bottom: 1px solid #e8e8e3;
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #0f172a;
  white-space: nowrap;
}
.bk-aging tbody td {
  padding: 0.7rem;
  border-bottom: 1px solid #f1f1ec;
  color: #5b6470;
  vertical-align: middle;
}
.bk-aging tbody tr:last-child td { border-bottom: 0; }
.bk-aging tbody td:first-child { color: #0f172a; font-weight: 700; white-space: nowrap; }
.bk-aging__empty { color: #cbd5e1; }

.bk-aging-cards { display: none; padding: 1rem 1.25rem 1.25rem; gap: 0.75rem; }
@media (max-width: 767px) {
  .bk-aging__table-wrap { display: none; }
  .bk-aging-cards { display: grid; }
}
.bk-aging-card {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  background: #fff;
  padding: 1rem 1.1rem;
}
.bk-aging-card h4 { margin: 0 0 0.7rem; font-size: 0.95rem; font-weight: 700; color: #0f172a; }
.bk-aging-card dl { margin: 0; display: grid; gap: 0.55rem; }
.bk-aging-card dt {
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #ff6b47;
}
.bk-aging-card dd { margin: 0.15rem 0 0; color: #5b6470; font-size: 0.88rem; }

/* Exception review panel */
.bk-exception {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  overflow: hidden;
}
.bk-exception__head {
  padding: 0.85rem 1.1rem;
  background: #fafaf7;
  border-bottom: 1px solid #e8e8e3;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-exception__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 0.75rem 1.1rem;
  border-bottom: 1px solid #f1f1ec;
  font-size: 0.88rem;
  font-weight: 600;
  color: #0f172a;
}
.bk-exception__row:last-child { border-bottom: 0; }

/* AR mismatch diagram */
.bk-mismatch {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(180deg, #fff 0%, #fafaf7 100%);
  padding: 1.35rem;
  display: grid;
  gap: 0.45rem;
}
.bk-mismatch__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 0.6rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.65rem;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 600;
  color: #0f172a;
}
.bk-mismatch__item--unclear {
  border-color: #fde68a;
  background: #fffbeb;
}
.bk-mismatch__arrow { text-align: center; color: #ff6b47; line-height: 1; }

@media (prefers-reduced-motion: reduce) {
  .bk-aging-card, .bk-exception__row { transition: none; }
}

/* =====================================================================
   Management reporting page components
   ===================================================================== */

/* Layered report document stack */
.bk-stack {
  position: relative;
  display: grid;
  gap: 0.6rem;
}
.bk-doc {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  background: #fff;
  padding: 0.9rem 1.1rem;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05);
  transition: transform 220ms var(--bk-ease), box-shadow 220ms var(--bk-ease);
}
.bk-doc:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.09);
}
.bk-doc__name {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-weight: 700;
  font-size: 0.92rem;
  color: #0f172a;
}
.bk-doc__name svg { width: 1.05rem; height: 1.05rem; color: #ff6b47; flex-shrink: 0; }
.bk-doc--front { border-color: rgba(255, 107, 71, 0.35); background: linear-gradient(180deg, #fff 0%, #fff8f6 100%); }

/* Foundation chips */
.bk-foundation {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.9rem 1.1rem;
  border: 1px dashed #e2d9d4;
  border-radius: var(--bk-radius-sm);
  background: #fffaf8;
}
.bk-foundation__label {
  width: 100%;
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
  margin-bottom: 0.15rem;
}

/* Package-ready banner */
.bk-ready {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.85rem 1rem;
  border-radius: var(--bk-radius-sm);
  background: #0f172a;
  color: #fff;
  font-weight: 700;
  font-size: 0.9rem;
}
.bk-ready svg { width: 1rem; height: 1rem; color: #86efac; flex-shrink: 0; }

/* =====================================================================
   Tax-ready bookkeeping page components
   ===================================================================== */

.bk-checklist {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.07);
  overflow: hidden;
}
.bk-checklist__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  background: #0f172a;
  color: #fff;
}
.bk-checklist__title {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.bk-checklist__list { list-style: none; margin: 0; padding: 0.4rem 1.25rem 1.1rem; }
.bk-checklist__list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.9rem;
  flex-wrap: wrap;
  padding: 0.75rem 0;
  border-bottom: 1px solid #f1f1ec;
  color: #0f172a;
  font-size: 0.9rem;
  font-weight: 600;
}
.bk-checklist__list li:last-child { border-bottom: 0; }
.bk-checklist__list li > span:first-child { flex: 1 1 14rem; }
.bk-checklist__list li.is-final {
  margin-top: 0.4rem;
  padding: 0.85rem 1rem;
  border-radius: var(--bk-radius-sm);
  border-bottom: 0;
  background: #fff4f0;
  border: 1px solid rgba(255, 107, 71, 0.3);
}

/* Restaurant bookkeeping — flow + sample mock */
.bk-resto-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.35rem 1.25rem 1.5rem;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06);
}
.bk-resto-flow__label {
  margin: 0 0 0.85rem;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-resto-flow__inputs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.bk-resto-flow__inputs span {
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.75rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.7rem;
  background: #fff;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #0f172a;
  opacity: 0.85;
  transition: transform 500ms var(--bk-ease), opacity 500ms var(--bk-ease), border-color 500ms var(--bk-ease);
}
.bk-resto-flow.is-inview .bk-resto-flow__inputs span {
  opacity: 1;
  border-color: #e8e8e3;
  border-style: solid;
}
.bk-resto-flow__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  font-size: 1.15rem;
  margin: 0.65rem 0;
  line-height: 1;
}
.bk-resto-flow__hub,
.bk-resto-flow__out {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 1rem 1.1rem;
  border-radius: var(--bk-radius-sm);
  border: 1px solid #e8e8e3;
  background: #fff;
}
.bk-resto-flow__hub {
  border-color: rgba(255, 107, 71, 0.35);
  background: #fff4f0;
}
.bk-resto-flow__hub strong,
.bk-resto-flow__out strong {
  font-size: 0.95rem;
  color: #0f172a;
}
.bk-resto-flow__hub span,
.bk-resto-flow__out span:not(.bk-status) {
  font-size: 0.8125rem;
  color: #5b6470;
}
.bk-resto-flow__out {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.bk-resto-mock {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-resto-mock__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.85rem 1.1rem;
  background: #f3f4f6;
  font-size: 0.75rem;
  font-weight: 700;
  color: #5b6470;
  letter-spacing: 0.02em;
}
.bk-resto-mock__rows {
  list-style: none;
  margin: 0;
  padding: 0.35rem 1.1rem 1rem;
}
.bk-resto-mock__rows li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 0.7rem 0;
  border-bottom: 1px solid #f1f1ec;
  font-size: 0.9rem;
  font-weight: 600;
  color: #0f172a;
}
.bk-resto-mock__rows li:last-child { border-bottom: 0; }

@media (prefers-reduced-motion: reduce) {
  .bk-resto-flow__inputs span { transition: none; }
}

/* Compact service landing (restaurant bookkeeping) */
.bk-page--compact {
  --bk-max: 1180px;
  --bk-prose: 640px;
  --bk-space-section: clamp(2.75rem, 4.5vw, 5.25rem);
  --bk-space-section-sm: clamp(2.25rem, 3.5vw, 3.75rem);
  --bk-radius: 1rem;
  --bk-radius-sm: 0.75rem;
}
.bk-page--compact .bk-container {
  padding-inline: 1.125rem;
}
@media (min-width: 640px) {
  .bk-page--compact .bk-container { padding-inline: 1.5rem; }
}
@media (min-width: 1024px) {
  .bk-page--compact .bk-container { padding-inline: 1.75rem; }
}

.bk-page--compact .bk-h1 {
  font-size: clamp(1.875rem, 2.8vw, 2.625rem);
  line-height: 1.12;
  letter-spacing: -0.025em;
  font-weight: 700;
}
.bk-page--compact .bk-h2 {
  font-size: clamp(1.45rem, 2.1vw, 1.9rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
  font-weight: 700;
}
.bk-page--compact .bk-h3 {
  font-size: clamp(1.05rem, 1.2vw, 1.2rem);
  line-height: 1.3;
  font-weight: 600;
}
.bk-page--compact .bk-lead {
  font-size: clamp(0.9375rem, 1vw, 1rem);
  line-height: 1.6;
}
.bk-page--compact .bk-body {
  font-size: 0.9375rem;
  line-height: 1.6;
}
.bk-page--compact .bk-eyebrow {
  font-size: 0.68rem;
}
.bk-page--compact .bk-benefit {
  font-size: 0.9375rem;
}
.bk-page--compact .bk-scope-list li {
  font-size: 0.9rem;
}
.bk-page--compact .bk-callout,
.bk-page--compact .bk-callout p {
  font-size: 0.875rem;
}
.bk-page--compact .bk-ppo__col p {
  font-size: 0.875rem;
}
.bk-page--compact .bk-dash__row {
  font-size: 0.875rem;
}
.bk-page--compact .bk-cta h2,
.bk-page--compact .bk-cta .text-xl,
.bk-page--compact .bk-cta .sm\:text-2xl {
  font-size: clamp(1.2rem, 2vw, 1.45rem) !important;
}
.bk-page--compact .bk-cta p,
.bk-page--compact .bk-cta .text-\[0\.95rem\] {
  font-size: 0.875rem !important;
}

.bk-page--compact .bk-hero-copy {
  max-width: 36rem;
}
.bk-page--compact #overview.bk-section {
  padding-top: clamp(1.75rem, 3vw, 2.5rem);
  padding-bottom: clamp(2.5rem, 4vw, 3.5rem);
}
.bk-page--compact .bk-hero-stack--compact {
  max-width: 34rem;
  margin-inline: auto;
}
.bk-page--compact .bk-hero-figure {
  border-radius: 1rem;
}
.bk-page--compact .bk-hero-figure img {
  max-height: 22rem;
  width: 100%;
  object-fit: cover;
}
.bk-page--compact .bk-float-card {
  font-size: 0.72rem;
  padding: 0.4rem 0.65rem;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.1);
}
.bk-page--compact .bk-float-card--a,
.bk-page--compact .bk-float-card--b,
.bk-page--compact .bk-float-card--c {
  animation-duration: 9s;
}

.bk-page--compact .bk-card {
  padding: 1.25rem 1.35rem;
}
@media (max-width: 639px) {
  .bk-page--compact .bk-card { padding: 1.1rem 1.15rem; }
}
.bk-page--compact .bk-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
}
.bk-page--compact .bk-card:hover .bk-card__icon {
  transform: translateY(-2px);
}
.bk-page--compact .bk-card__icon {
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.65rem;
}
.bk-page--compact .bk-card__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}

.bk-page--compact .bk-btn {
  padding: 0.65rem 1.15rem;
  min-height: 2.75rem;
  font-size: 0.875rem;
}
.bk-page--compact .bk-btn:hover {
  transform: translateY(-1px);
}
.bk-page--compact .bk-btn:hover .bk-btn__arrow {
  transform: translateX(3px);
}

.bk-page--compact .bk-timeline__num {
  width: 2.25rem;
  height: 2.25rem;
  font-size: 0.8rem;
  margin-bottom: 0.65rem;
}
@media (min-width: 1024px) {
  .bk-page--compact .bk-timeline::before {
    top: 1.1rem;
  }
  .bk-page--compact .bk-timeline {
    gap: 0.85rem;
  }
}

.bk-page--compact .bk-pricing {
  padding: clamp(1.75rem, 3vw, 2.5rem) clamp(1.25rem, 3vw, 2rem);
}
.bk-page--compact .bk-cta {
  padding: clamp(2rem, 3.5vw, 3rem) clamp(1.25rem, 3vw, 2rem);
}
.bk-page--compact .bk-cta::after {
  width: 11rem;
  height: 11rem;
  right: -2.5rem;
  top: -2.5rem;
}

.bk-page--compact .bk-software__badge {
  padding: 0.55rem 0.9rem;
  font-size: 0.8125rem;
}

.bk-page--compact .bk-resto-flow {
  padding: 1.1rem 1rem 1.2rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-page--compact .bk-resto-flow__arrow {
  margin: 0.45rem 0;
  font-size: 1rem;
}
.bk-page--compact .bk-resto-flow__hub,
.bk-page--compact .bk-resto-flow__out {
  padding: 0.8rem 0.95rem;
}
.bk-page--compact .bk-resto-flow__inputs span {
  padding: 0.4rem 0.65rem;
  font-size: 0.75rem;
}

.bk-page--compact .bk-snapshot__head,
.bk-page--compact .bk-resto-mock__head {
  padding: 0.7rem 1rem;
}
.bk-page--compact .bk-resto-mock__rows {
  padding: 0.2rem 1rem 0.85rem;
}
.bk-page--compact .bk-resto-mock__rows li {
  padding: 0.55rem 0;
  font-size: 0.85rem;
}

.bk-page--compact .bk-audience--chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}
.bk-page--compact .bk-audience--chips .bk-audience__item {
  flex: 1 1 calc(50% - 0.65rem);
  min-width: 8.5rem;
  padding: 0.85rem 1rem;
  margin: 0;
}
.bk-page--compact .bk-audience--chips .bk-audience__item h3 {
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 600;
}
.bk-page--compact .bk-audience--chips .bk-audience__item p {
  display: none;
}

.bk-page--compact .bk-reveal {
  transition-duration: 450ms;
  transform: translateY(12px);
}
.bk-page--compact .bk-reveal.is-visible {
  transform: translateY(0);
}
.bk-page--compact .bk-stagger > .bk-reveal:nth-child(1) { transition-delay: 0ms; }
.bk-page--compact .bk-stagger > .bk-reveal:nth-child(2) { transition-delay: 50ms; }
.bk-page--compact .bk-stagger > .bk-reveal:nth-child(3) { transition-delay: 100ms; }
.bk-page--compact .bk-stagger > .bk-reveal:nth-child(4) { transition-delay: 150ms; }
.bk-page--compact .bk-stagger > .bk-reveal:nth-child(5) { transition-delay: 200ms; }
.bk-page--compact .bk-stagger > .bk-reveal:nth-child(6) { transition-delay: 250ms; }

.bk-page--compact .bk-faq .faq-question {
  padding-block: 0.9rem;
  font-size: 0.875rem;
}
.bk-page--compact .bk-faq .faq-answer {
  font-size: 0.875rem;
}
.bk-page--compact [data-faq-accordion] .faq-question {
  font-size: 0.875rem;
}
.bk-page--compact [data-faq-accordion] .faq-answer {
  font-size: 0.875rem;
}

.bk-page--compact #site-header > div:first-child {
  padding-block: 0.7rem;
}

@media (prefers-reduced-motion: reduce) {
  .bk-page--compact .bk-reveal {
    transition: none;
    transform: none;
  }
}

/* Trust / proof strip (no invented stats) */
.bk-trustbar {
  padding-block: 1rem;
  border-block: 1px solid #e8e8e3;
  background: #fff;
}
.bk-trustbar__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.65rem 1rem;
  text-align: center;
}
.bk-trustbar__item {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-trustbar__dot {
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: #ff6b47;
  opacity: 0.55;
  flex-shrink: 0;
}
@media (max-width: 639px) {
  .bk-trustbar__dot { display: none; }
  .bk-trustbar__inner {
    flex-direction: column;
    gap: 0.45rem;
  }
}

/* Multi-entity hierarchy visualization */
.bk-entity-tree {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 50%, #fff4f0 100%);
  padding: 1.5rem 1.25rem 1.35rem;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06);
  text-align: center;
}
.bk-entity-tree__parent {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.7rem 1.15rem;
  border-radius: var(--bk-radius-sm);
  background: #0f172a;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 700;
}
.bk-entity-tree__branch {
  width: 2px;
  height: 1.25rem;
  margin: 0.35rem auto 0;
  background: #e8e8e3;
  transition: background 500ms var(--bk-ease);
}
.bk-entity-tree.is-inview .bk-entity-tree__branch {
  background: linear-gradient(180deg, #ff6b47, #e8e8e3);
}
.bk-entity-tree__kids {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
  margin-top: 0.35rem;
}
.bk-entity-tree__kid {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.3rem;
  padding: 0.85rem 0.5rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius-sm);
  background: #fff;
  opacity: 0.92;
  transform: translateY(8px);
  transition: opacity 450ms var(--bk-ease), transform 450ms var(--bk-ease), border-color 450ms var(--bk-ease);
}
.bk-entity-tree.is-inview .bk-entity-tree__kid {
  opacity: 1;
  transform: translateY(0);
  border-color: rgba(255, 107, 71, 0.28);
}
.bk-entity-tree.is-inview .bk-entity-tree__kid:nth-child(1) { transition-delay: 60ms; }
.bk-entity-tree.is-inview .bk-entity-tree__kid:nth-child(2) { transition-delay: 140ms; }
.bk-entity-tree.is-inview .bk-entity-tree__kid:nth-child(3) { transition-delay: 220ms; }
.bk-entity-tree__kid strong {
  font-size: 0.875rem;
  color: #0f172a;
}
.bk-entity-tree__kid > span:not(.bk-status) {
  font-size: 0.75rem;
  color: #5b6470;
}
.bk-entity-tree__arrow {
  color: #ff6b47;
  font-weight: 700;
  font-size: 1.1rem;
  margin: 0.65rem 0 0.45rem;
  line-height: 1;
}
.bk-entity-tree__out {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 0.95rem 1rem;
  border-radius: var(--bk-radius-sm);
  border: 1px solid rgba(255, 107, 71, 0.35);
  background: #fff4f0;
}
.bk-entity-tree__out strong {
  font-size: 0.9rem;
  color: #0f172a;
}
.bk-entity-tree__out span {
  font-size: 0.8rem;
  color: #5b6470;
}
@media (max-width: 640px) {
  .bk-entity-tree__kids {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-entity-tree__kid,
  .bk-entity-tree__branch {
    transition: none;
    transform: none;
    opacity: 1;
  }
}
html:not(.bk-js) .bk-entity-tree__kid {
  opacity: 1;
  transform: none;
}

/* Multi-entity hero dashboard visual */
.bk-entity-dash {
  position: relative;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background:
    radial-gradient(ellipse 80% 60% at 100% 0%, rgba(255, 107, 71, 0.12), transparent 55%),
    linear-gradient(165deg, #fff 0%, #fafaf7 100%);
  box-shadow: 0 22px 50px rgba(15, 23, 42, 0.08);
  overflow: hidden;
  padding: 1.15rem 1.15rem 1.25rem;
}
.bk-entity-dash__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.9rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-entity-dash__parent {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 0.9rem;
  border-radius: var(--bk-radius-sm);
  background: #0f172a;
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 700;
  margin-bottom: 0.75rem;
}
.bk-entity-dash__rows {
  display: grid;
  gap: 0.55rem;
}
.bk-entity-dash__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
  padding: 0.75rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.75rem;
  background: #fff;
}
.bk-entity-dash__row strong {
  display: block;
  font-size: 0.875rem;
  color: #0f172a;
}
.bk-entity-dash__row span:not(.bk-status) {
  font-size: 0.75rem;
  color: #5b6470;
}
.bk-entity-dash__foot {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.85rem;
  padding-top: 0.85rem;
  border-top: 1px dashed #e8e8e3;
}

.bk-page--compact .bk-entity-tree {
  padding: 1.1rem 1rem 1.15rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-page--compact .bk-entity-tree__parent {
  padding: 0.55rem 0.9rem;
  font-size: 0.8rem;
}
.bk-page--compact .bk-entity-tree__kid {
  padding: 0.7rem 0.45rem;
}
.bk-page--compact .bk-trustbar {
  padding-block: 0.75rem;
}
.bk-page--compact .bk-trustbar__item {
  font-size: 0.75rem;
}

/* QuickBooks bookkeeping — messy feed → organized workflow */
.bk-qbo-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.1rem 1rem 1.2rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-qbo-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-qbo-flow__messy {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-qbo-flow__messy span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-qbo-flow.is-inview .bk-qbo-flow__messy span {
  border-style: solid;
  border-color: #e8e8e3;
}
.bk-qbo-flow__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  margin: 0.55rem 0;
  line-height: 1;
}
.bk-qbo-flow__steps {
  display: grid;
  gap: 0.45rem;
}
.bk-qbo-flow__step {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  flex-wrap: wrap;
  padding: 0.65rem 0.75rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.65rem;
  background: #fff;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #0f172a;
  opacity: 0.9;
  transform: translateY(8px);
  transition: opacity 400ms var(--bk-ease), transform 400ms var(--bk-ease);
}
.bk-qbo-flow.is-inview .bk-qbo-flow__step {
  opacity: 1;
  transform: none;
}
.bk-qbo-flow.is-inview .bk-qbo-flow__step:nth-child(1) { transition-delay: 40ms; }
.bk-qbo-flow.is-inview .bk-qbo-flow__step:nth-child(2) { transition-delay: 100ms; }
.bk-qbo-flow.is-inview .bk-qbo-flow__step:nth-child(3) { transition-delay: 160ms; }
.bk-qbo-flow.is-inview .bk-qbo-flow__step:nth-child(4) { transition-delay: 220ms; }

.bk-qbo-owner {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: #fff;
  padding: 1.1rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  display: grid;
  gap: 0.35rem;
  justify-items: stretch;
}
.bk-qbo-owner__step {
  text-align: center;
  padding: 0.7rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.7rem;
  background: #fafaf7;
  font-size: 0.875rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-qbo-owner__step--accent {
  border-color: rgba(255, 107, 71, 0.35);
  background: #fff4f0;
}
.bk-qbo-owner__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}

.bk-qbo-own-card {
  border: 1px solid rgba(255, 107, 71, 0.28);
  border-radius: var(--bk-radius);
  background: linear-gradient(165deg, #fff 0%, #fff4f0 100%);
  padding: 1.25rem 1.2rem;
}
.bk-qbo-own-card__icon {
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.65rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid #e8e8e3;
  color: #ff6b47;
  margin-bottom: 0.65rem;
}
.bk-qbo-own-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
  font-size: 0.72rem;
  font-weight: 600;
  color: #5b6470;
}

@media (prefers-reduced-motion: reduce) {
  .bk-qbo-flow__step { transition: none; transform: none; opacity: 1; }
}
html:not(.bk-js) .bk-qbo-flow__step { opacity: 1; transform: none; }

/* —— Service Business Bookkeeping —— */
.bk-svc-frag {
  display: grid;
  gap: 0.75rem;
  padding: 1.15rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(180deg, #fff 0%, #fafaf8 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-svc-frag__label {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-svc-frag__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-svc-frag__chips > span {
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
  padding: 0.35rem 0.55rem;
  border-radius: 999px;
  border: 1px dashed #d4d4ce;
  background: #fff;
}
.bk-svc-frag__arrow {
  text-align: center;
  font-size: 0.9rem;
  font-weight: 700;
  color: #9ca3af;
  line-height: 1;
}
.bk-svc-frag__broken {
  margin: 0;
  text-align: center;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
  padding: 0.55rem 0.75rem;
  border-radius: 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.28);
  background: rgba(255, 107, 71, 0.06);
}
.bk-svc-frag__result {
  margin: 0;
  text-align: center;
  font-size: 0.8rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-svc-frag__divider {
  height: 1px;
  background: #e8e8e3;
  margin: 0.1rem 0;
}
.bk-svc-frag__hub {
  text-align: center;
  font-size: 0.88rem;
  font-weight: 800;
  color: #fff;
  padding: 0.65rem 0.85rem;
  border-radius: 0.7rem;
  background: #0f172a;
  letter-spacing: 0.02em;
}
.bk-svc-frag__after {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}

.bk-svc-flow {
  display: grid;
  gap: 0.85rem;
  max-width: 56rem;
  margin: 0 auto;
}
.bk-svc-flow__col,
.bk-svc-flow__mid {
  padding: 1.15rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}
.bk-svc-flow__mid {
  background: linear-gradient(165deg, #fff 0%, #fff4f0 100%);
  border-color: rgba(255, 107, 71, 0.22);
}
.bk-svc-flow__col--out {
  background: #fafaf8;
}
.bk-svc-flow__title {
  margin: 0 0 0.75rem;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-svc-flow__col > span,
.bk-svc-flow__col--out > span {
  display: inline-flex;
  margin: 0 0.35rem 0.4rem 0;
  font-size: 0.78rem;
  font-weight: 600;
  color: #0f172a;
  padding: 0.4rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
}
.bk-svc-flow__steps {
  display: grid;
  gap: 0.35rem;
  justify-items: center;
  text-align: center;
}
.bk-svc-flow__steps > span {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-svc-flow__steps > span[aria-hidden="true"] {
  font-size: 0.8rem;
  font-weight: 700;
  color: #ff6b47;
  line-height: 1;
}

@media (min-width: 900px) {
  .bk-svc-flow {
    grid-template-columns: 1fr 1.05fr 1fr;
    align-items: stretch;
  }
}

/* —— Online / Virtual Bookkeeping —— */
.bk-ob-panel {
  display: grid;
  gap: 0.75rem;
  padding: 1.15rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
  height: 100%;
}
.bk-ob-panel--off {
  background: linear-gradient(180deg, #fff 0%, #fafaf8 100%);
}
.bk-ob-panel--on {
  background: linear-gradient(165deg, #fff 0%, #fff4f0 100%);
  border-color: rgba(255, 107, 71, 0.22);
}
.bk-ob-panel__label {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ob-panel--on .bk-ob-panel__label {
  color: #ff6b47;
}
.bk-ob-panel__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-ob-panel__chips > span {
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
  padding: 0.35rem 0.55rem;
  border-radius: 999px;
  border: 1px dashed #d4d4ce;
  background: #fff;
}
.bk-ob-panel__chips--solid > span {
  border-style: solid;
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff4f0;
  color: #0f172a;
}
.bk-ob-panel__flow {
  display: grid;
  gap: 0.3rem;
  justify-items: start;
}
.bk-ob-panel__flow > span {
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ob-panel__flow > span[aria-hidden="true"] {
  color: #ff6b47;
  font-size: 0.8rem;
  line-height: 1;
}
.bk-ob-panel__note {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.55;
  color: #5b6470;
}

.bk-ob-eco {
  display: grid;
  gap: 0.85rem;
  padding: 1.25rem 1.3rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf8 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-ob-eco__hub {
  margin: 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-ob-eco__nodes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ob-eco__nodes > span {
  font-size: 0.76rem;
  font-weight: 600;
  color: #0f172a;
  padding: 0.4rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
}
.bk-ob-eco__note {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}

.bk-ob-rhythm {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ob-rhythm > span:nth-child(even) {
  color: #ff6b47;
}

/* —— Financial Statement Preparation —— */
.bk-fs-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.55rem;
  padding: 1rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fs-strip > span[aria-hidden="true"] {
  color: #ff6b47;
}

/* —— Ecommerce Bookkeeping —— */
.bk-ecom-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.5rem;
  padding: 1rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-ecom-flow > span[aria-hidden="true"] {
  color: #ff6b47;
}
.bk-ecom-flow__end {
  color: #fff !important;
  background: #0f172a;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
}

.bk-ecom-channels {
  display: grid;
  gap: 0.65rem;
  max-width: 40rem;
  margin: 0 auto;
  padding: 1.25rem 1.3rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-ecom-channels__sources {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ecom-channels__sources > span {
  font-size: 0.76rem;
  font-weight: 600;
  color: #0f172a;
  padding: 0.4rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
}
.bk-ecom-channels__arrow {
  margin: 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-ecom-channels__hub {
  margin: 0 auto;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-ecom-channels__out {
  margin: 0;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}

/* —— Catch-up / Accounting Cleanup —— */
.bk-catchup-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem 0.55rem;
}
.bk-catchup-links a {
  display: inline-flex;
  align-items: center;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #0f172a;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  text-decoration: none;
  transition: border-color 200ms var(--bk-ease), color 200ms var(--bk-ease), transform 200ms var(--bk-ease);
}
.bk-catchup-links a:hover {
  border-color: rgba(255, 107, 71, 0.45);
  color: #ff6b47;
  transform: translateY(-1px);
}
.bk-catchup-links a::after {
  content: " →";
  color: #ff6b47;
}

.bk-catchup-why {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  padding: 1rem 1.1rem;
  border-radius: var(--bk-radius-sm, 0.85rem);
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.03);
  transition: transform 220ms var(--bk-ease), box-shadow 220ms var(--bk-ease), border-color 220ms var(--bk-ease);
}
@media (hover: hover) {
  .bk-catchup-why:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 107, 71, 0.35);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
  }
}

.bk-catchup-factors {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}
@media (max-width: 768px) {
  .bk-catchup-factors { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.bk-catchup-factor {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.55rem;
  text-align: center;
  padding: 1rem 0.75rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.03);
}
.bk-catchup-factor__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.65rem;
  background: #fff4f0;
  color: #ff6b47;
}

.bk-catchup-quote {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.25rem 1.2rem;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}
.bk-catchup-quote__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem 0.85rem;
  border-radius: 0.65rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  color: #0f172a;
}
.bk-catchup-quote__arrow {
  margin: 0.65rem 0;
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-catchup-quote__result {
  margin: 0;
  text-align: center;
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.95rem;
  font-weight: 800;
}

@media (prefers-reduced-motion: reduce) {
  .bk-catchup-links a,
  .bk-catchup-why {
    transition: none;
  }
  .bk-catchup-links a:hover,
  .bk-catchup-why:hover {
    transform: none;
  }
}

/* —— Construction Bookkeeping —— */
.bk-const-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  padding: 1rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}
@media (max-width: 900px) {
  .bk-const-trust { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
  .bk-const-trust { grid-template-columns: 1fr; }
}
.bk-const-trust__item {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}
.bk-const-trust__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 0.6rem;
  background: #fff4f0;
  color: #ff6b47;
  flex-shrink: 0;
}

.bk-const-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-const-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-const-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-const-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-const-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-const-flow__hub {
  margin: 0 auto;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-const-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
  margin-top: 0.75rem;
}
.bk-const-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-const-flow__out {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 800;
  color: #0f172a;
}

.bk-const-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1.35rem 1.5rem;
  border-radius: 1.15rem;
  background: #0f172a;
  color: #fff;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.18);
}
@media (max-width: 640px) {
  .bk-const-midcta { flex-direction: column; align-items: flex-start; }
}

/* —— Marketing Agency Bookkeeping —— */
.bk-agency-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-agency-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-agency-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-agency-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-agency-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-agency-flow__hub {
  margin: 0 auto;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-agency-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
  margin-top: 0.75rem;
}
.bk-agency-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-agency-flow__out {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 800;
  color: #0f172a;
}

.bk-agency-reports {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-agency-reports > span {
  font-size: 0.72rem;
  font-weight: 700;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  color: #0f172a;
}

.bk-agency-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-agency-tags > span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  color: #5b6470;
}
/* Australia online bookkeeping — premium helpers */
.bk-au-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #f7f8f5 50%, #eef4ea 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-au-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-au-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-au-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-au-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-au-flow__hub {
  margin: 0 auto;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-au-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
  margin-top: 0.75rem;
}
.bk-au-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #d5e0d2;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  color: #163528;
}

.bk-au-midcta {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: flex-start;
  border-radius: 1.25rem;
  border: 1px solid #1f3a2e;
  background:
    radial-gradient(ellipse 70% 80% at 100% 0%, rgba(79, 143, 90, 0.22), transparent 55%),
    linear-gradient(135deg, #163528 0%, #1f3a2e 55%, #245530 100%);
  color: #f4f7f4;
  padding: 1.75rem 1.5rem;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
}
.bk-au-midcta::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
  background-size: 28px 28px;
  opacity: 0.35;
  pointer-events: none;
}
.bk-au-midcta > * {
  position: relative;
  z-index: 1;
}
.bk-au-midcta .bk-btn--primary {
  background: #fff;
  color: #163528;
  border-color: #fff;
}
.bk-au-midcta .bk-btn--primary:hover {
  background: #eef4ea;
  border-color: #eef4ea;
}

.bk-au-workflow {
  display: grid;
  gap: 0.45rem;
  justify-items: center;
  padding: 1.25rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(180deg, #fff 0%, #f8f9f6 100%);
  text-align: center;
  max-width: 28rem;
}
.bk-au-workflow > span:not([aria-hidden="true"]):not(.bk-au-workflow__end) {
  padding: 0.65rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 600;
  color: #1f2937;
  width: 100%;
}
.bk-au-workflow > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-au-workflow__end {
  padding: 0.7rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  color: #163528;
  font-size: 0.88rem;
  font-weight: 800;
  width: 100%;
}

@media (min-width: 768px) {
  .bk-au-midcta {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 2.1rem 2.35rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bk-au-flow,
  .bk-au-midcta,
  .bk-au-workflow {
    transition: none !important;
  }
}

/* Xero bookkeeping — premium helpers */
.bk-xero-reports {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-xero-reports > span {
  font-size: 0.72rem;
  font-weight: 700;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  color: #0f172a;
}

.bk-xero-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-xero-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-xero-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-xero-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-xero-flow__chips--warn > span {
  border-color: #f0d9c8;
  background: #fffaf7;
  color: #7a5540;
}
.bk-xero-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-xero-flow__hub {
  margin: 0 auto 0.65rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-xero-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-xero-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-xero-flow__steps--ok > span {
  border-color: #d5e0d2;
  background: #eef4ea;
  color: #163528;
}

.bk-xero-own {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(180deg, #fff 0%, #f7f8f5 100%);
  padding: 1.15rem 1.1rem 1.2rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-xero-own__title {
  margin: 0 0 0.75rem;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #0f172a;
}
.bk-xero-own__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.45rem;
}
.bk-xero-own__list li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9rem;
  font-weight: 600;
  color: #374151;
}
.bk-xero-own__list li::before {
  content: "";
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 999px;
  background: #4f8f5a;
  flex-shrink: 0;
}
.bk-xero-own__note {
  margin: 0.9rem 0 0;
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.85rem;
  font-weight: 700;
}

.bk-xero-trust {
  display: flex;
  gap: 0.9rem;
  align-items: flex-start;
  padding: 1.05rem 1.1rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.bk-xero-trust:hover {
  transform: translateY(-3px);
  border-color: #d8d8d0;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}
.bk-xero-trust .bk-card__icon {
  flex-shrink: 0;
}

.bk-xero-questions {
  border: 1px dashed #e0e0d8;
  border-radius: 0.75rem;
  background: #fafaf7;
  padding: 0.75rem 0.85rem;
  display: grid;
  gap: 0.35rem;
}
.bk-xero-questions__label {
  margin: 0 0 0.15rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-xero-questions > p {
  margin: 0;
  font-size: 0.82rem;
  color: #374151;
  font-weight: 500;
}
.bk-xero-questions > span {
  margin-top: 0.25rem;
  display: inline-flex;
  width: fit-content;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 0.25rem 0.55rem;
  border-radius: 999px;
  background: #fff4f0;
  color: #c2410c;
  border: 1px solid #ffd7cc;
}

.bk-xero-proof {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.45rem;
}
.bk-xero-proof > span:not([class]) {
  font-size: 0.75rem;
  font-weight: 700;
  padding: 0.3rem 0.55rem;
  border-radius: 0.5rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  color: #0f172a;
}
.bk-xero-proof__plus,
.bk-xero-proof__arrow {
  color: #ff6b47;
  font-weight: 800;
  font-size: 0.85rem;
}
.bk-xero-proof__end {
  font-size: 0.75rem;
  font-weight: 800;
  padding: 0.3rem 0.55rem;
  border-radius: 0.5rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  color: #163528;
}

.bk-xero-collab {
  display: grid;
  gap: 0.45rem;
  justify-items: center;
  padding: 1.25rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(180deg, #fff 0%, #f8f9f6 100%);
  text-align: center;
  max-width: 28rem;
}
.bk-xero-collab > span:not([aria-hidden="true"]):not(.bk-xero-collab__end) {
  padding: 0.65rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 600;
  color: #1f2937;
  width: 100%;
}
.bk-xero-collab > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
  font-size: 0.8rem;
  line-height: 1.2;
}
.bk-xero-collab__end {
  padding: 0.7rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  color: #163528;
  font-size: 0.88rem;
  font-weight: 800;
  width: 100%;
}

@media (prefers-reduced-motion: reduce) {
  .bk-xero-trust:hover {
    transform: none;
  }
}

/* U.S. bookkeeping services — premium helpers */
.bk-us-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-us-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-us-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-us-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-us-flow__chips--warn > span {
  border-color: #f0d9c8;
  background: #fffaf7;
  color: #7a5540;
}
.bk-us-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-us-flow__hub {
  margin: 0 auto 0.85rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-us-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-us-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  font-size: 0.75rem;
  font-weight: 700;
  color: #163528;
}

.bk-us-midcta {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-items: flex-start;
  border-radius: 1.25rem;
  border: 1px solid #1f2937;
  background:
    radial-gradient(ellipse 70% 80% at 100% 0%, rgba(255, 107, 71, 0.18), transparent 55%),
    linear-gradient(135deg, #0f172a 0%, #1e293b 55%, #334155 100%);
  color: #f8fafc;
  padding: 1.75rem 1.5rem;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
}
.bk-us-midcta::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
  background-size: 28px 28px;
  opacity: 0.35;
  pointer-events: none;
}
.bk-us-midcta > * {
  position: relative;
  z-index: 1;
}
.bk-us-midcta .bk-btn--primary {
  background: #ff6b47;
  color: #fff;
  border-color: #ff6b47;
}
.bk-us-midcta .bk-btn--primary:hover {
  opacity: 0.95;
}

.bk-us-workflow {
  display: grid;
  gap: 0.45rem;
  justify-items: center;
  padding: 1.25rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(180deg, #fff 0%, #f8f9f6 100%);
  text-align: center;
  max-width: 28rem;
}
.bk-us-workflow > span:not([aria-hidden="true"]):not(.bk-us-workflow__end) {
  padding: 0.65rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 600;
  color: #1f2937;
  width: 100%;
}
.bk-us-workflow > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-us-workflow__end {
  padding: 0.7rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  color: #163528;
  font-size: 0.88rem;
  font-weight: 800;
  width: 100%;
}

@media (min-width: 768px) {
  .bk-us-midcta {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 2.1rem 2.35rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bk-us-flow,
  .bk-us-midcta,
  .bk-us-workflow {
    transition: none !important;
  }
}

/* WooCommerce bookkeeping — premium helpers */
.bk-woo-recon {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-woo-recon__label {
  margin: 0 0 0.75rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
  text-align: center;
}
.bk-woo-recon__stack {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.35rem;
  justify-items: center;
}
.bk-woo-recon__stack > li:not(.bk-woo-recon__op) {
  width: 100%;
  padding: 0.55rem 0.85rem;
  border-radius: 0.65rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  text-align: center;
  font-size: 0.88rem;
  font-weight: 600;
  color: #1f2937;
}
.bk-woo-recon__op {
  color: #ff6b47;
  font-weight: 800;
  font-size: 0.95rem;
  line-height: 1;
}
.bk-woo-recon__result {
  border-color: #d5e0d2 !important;
  background: #eef4ea !important;
  color: #163528 !important;
  font-weight: 800 !important;
}
.bk-woo-recon__pipe {
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: center;
  align-items: center;
  font-size: 0.72rem;
  font-weight: 700;
  color: #5b6470;
}
.bk-woo-recon__pipe > span:nth-child(odd) {
  padding: 0.3rem 0.55rem;
  border-radius: 0.5rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  color: #0f172a;
}

.bk-woo-eco {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  padding: 1.25rem 1.1rem;
  max-width: 36rem;
}
.bk-woo-eco__hub {
  margin: 0 auto 0.85rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-woo-eco__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-woo-eco__grid > span {
  padding: 0.4rem 0.7rem;
  border-radius: 0.55rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}

.bk-woo-price {
  display: grid;
  gap: 1.5rem;
  align-items: start;
  padding: 1.5rem;
  border-radius: 1.25rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
}
@media (min-width: 1024px) {
  .bk-woo-price {
    grid-template-columns: 1.2fr 0.8fr;
    gap: 2rem;
    padding: 2rem 2.25rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bk-woo-recon,
  .bk-woo-eco,
  .bk-woo-price {
    transition: none !important;
  }
}

/* Wholesale bookkeeping — premium helpers */
.bk-ws-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-ws-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-ws-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ws-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-ws-flow__chips--warn > span {
  border-color: #f0d9c8;
  background: #fffaf7;
  color: #7a5540;
}
.bk-ws-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-ws-flow.is-inview .bk-ws-flow__arrow {
  animation: bk-ws-pulse 1.4s var(--bk-ease) 1;
}
.bk-ws-flow__hub {
  margin: 0 auto 0.85rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-ws-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ws-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  font-size: 0.75rem;
  font-weight: 700;
  color: #163528;
}
.bk-ws-flow__steps > span::before {
  content: "✓ ";
  color: #2f6b4f;
}

.bk-ws-challenge {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  padding: 1.15rem 1.15rem 1.25rem;
}
.bk-ws-challenge--alt {
  background: #f8f8f4;
}
.bk-ws-challenge__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.bk-ws-challenge__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.1rem;
  height: 2.1rem;
  padding: 0 0.45rem;
  border-radius: 0.6rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}
.bk-ppo__col--out {
  border-color: #d5e0d2;
  background: #eef4ea;
}
.bk-ppo__col--out strong {
  color: #163528;
}

.bk-ws-pipe {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  padding: 1.25rem 1.15rem;
  text-align: center;
}
.bk-ws-pipe__label {
  margin: 0 0 0.65rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-ws-pipe__row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.15rem;
}
.bk-ws-pipe__row > span:not([aria-hidden="true"]) {
  padding: 0.5rem 0.8rem;
  border-radius: 0.65rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ws-pipe__row > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-ws-pipe__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: center;
}
.bk-ws-pipe__steps > span {
  padding: 0.38rem 0.6rem;
  border-radius: 0.5rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.74rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span {
  animation: bk-ws-rise 520ms var(--bk-ease) both;
}
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span:nth-child(2) { animation-delay: 60ms; }
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span:nth-child(3) { animation-delay: 120ms; }
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span:nth-child(4) { animation-delay: 180ms; }
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span:nth-child(5) { animation-delay: 240ms; }
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span:nth-child(6) { animation-delay: 300ms; }
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span:nth-child(7) { animation-delay: 360ms; }
.bk-ws-pipe.is-inview .bk-ws-pipe__steps > span:nth-child(8) { animation-delay: 420ms; }
.bk-ws-pipe__steps > span:last-child {
  border-color: #d5e0d2;
  background: #eef4ea;
  color: #163528;
}

.bk-ws-audiences {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.bk-ws-audiences > span {
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  color: #0f172a;
}

.bk-ws-collab {
  display: grid;
  gap: 0.45rem;
  justify-items: center;
  padding: 1.25rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(180deg, #fff 0%, #f8f9f6 100%);
  text-align: center;
  max-width: 28rem;
}
.bk-ws-collab > span:not([aria-hidden="true"]):not(.bk-ws-collab__end) {
  padding: 0.65rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 600;
  color: #1f2937;
  width: 100%;
}
.bk-ws-collab > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
  font-size: 0.8rem;
  line-height: 1.2;
}
.bk-ws-collab__end {
  padding: 0.7rem 0.9rem;
  border-radius: 0.7rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  color: #163528;
  font-size: 0.88rem;
  font-weight: 800;
  width: 100%;
}

.bk-ws-cta-flow {
  margin: 0 0 0.65rem;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: rgba(255, 255, 255, 0.72);
}

@keyframes bk-ws-rise {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes bk-ws-pulse {
  0%, 100% { opacity: 1; transform: translateY(0); }
  50% { opacity: 0.55; transform: translateY(2px); }
}

@media (prefers-reduced-motion: reduce) {
  .bk-ws-flow.is-inview .bk-ws-flow__arrow,
  .bk-ws-pipe.is-inview .bk-ws-pipe__steps > span {
    animation: none !important;
  }
}

/* Multi-currency bookkeeping — premium helpers */
.bk-fx-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.15rem;
  height: 1.15rem;
  border-radius: 999px;
  background: #fff4f0;
  color: #ff6b47;
  font-size: 0.7rem;
  font-weight: 800;
  margin-right: 0.35rem;
}

.bk-fx-flows {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-fx-flows__title {
  margin: 0 0 0.85rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
  text-align: center;
}
.bk-fx-flows__grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 640px) {
  .bk-fx-flows__grid { grid-template-columns: 1fr 1fr; gap: 0.85rem; }
}
.bk-fx-flow {
  display: grid;
  justify-items: center;
  gap: 0.2rem;
  text-align: center;
}
.bk-fx-flow__node,
.bk-fx-flow__end {
  width: 100%;
  padding: 0.5rem 0.65rem;
  border-radius: 0.6rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fx-flow__node span {
  display: inline-block;
  margin-left: 0.25rem;
  padding: 0.1rem 0.4rem;
  border-radius: 999px;
  background: #fff4f0;
  color: #c2410c;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}
.bk-fx-flow__arrow {
  color: #ff6b47;
  font-weight: 800;
  line-height: 1;
  font-size: 0.8rem;
}
.bk-fx-flow__end {
  border-color: #d5e0d2;
  background: #eef4ea;
  color: #163528;
}
.bk-fx-flows.is-inview .bk-fx-flow__arrow {
  animation: bk-ws-pulse 1.4s var(--bk-ease) 1;
}

.bk-fx-table-wrap { overflow: visible; }
.bk-fx-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.82rem;
}
.bk-fx-table th,
.bk-fx-table td {
  text-align: left;
  padding: 0.7rem 0.45rem;
  border-bottom: 1px solid #f1f1ec;
  vertical-align: middle;
}
.bk-fx-table thead th {
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #5b6470;
  font-weight: 700;
}
.bk-fx-table tbody th {
  font-weight: 700;
  color: #0f172a;
}
.bk-fx-table tbody tr:last-child th,
.bk-fx-table tbody tr:last-child td { border-bottom: 0; }
.bk-fx-table .bk-status { display: inline-flex; align-items: center; gap: 0.25rem; }
@media (max-width: 639px) {
  .bk-fx-table thead { display: none; }
  .bk-fx-table,
  .bk-fx-table tbody,
  .bk-fx-table tr,
  .bk-fx-table th,
  .bk-fx-table td { display: block; width: 100%; }
  .bk-fx-table tr {
    padding: 0.75rem 0;
    border-bottom: 1px solid #f1f1ec;
  }
  .bk-fx-table tbody tr:last-child { border-bottom: 0; padding-bottom: 0; }
  .bk-fx-table tbody th {
    padding: 0 0 0.45rem;
    font-size: 0.88rem;
  }
  .bk-fx-table td {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.25rem 0;
    border: 0;
  }
  .bk-fx-table td::before {
    content: attr(data-label);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #5b6470;
  }
}

.bk-fx-pipe {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  padding: 1.25rem 1.15rem;
  text-align: center;
}
.bk-fx-pipe__label {
  margin: 0 0 0.75rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-fx-pipe__currencies {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
  margin-bottom: 0.95rem;
}
.bk-fx-pipe__currencies > span {
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff4f0;
  font-size: 0.75rem;
  font-weight: 800;
  color: #0f172a;
}
.bk-fx-pipe__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
  align-items: center;
}
.bk-fx-pipe__steps > span:not([aria-hidden="true"]) {
  padding: 0.45rem 0.7rem;
  border-radius: 0.55rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fx-pipe__steps > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-fx-pipe__end {
  border-color: #d5e0d2 !important;
  background: #eef4ea !important;
  color: #163528 !important;
}
.bk-fx-pipe.is-inview .bk-fx-pipe__steps > span:not([aria-hidden="true"]) {
  animation: bk-ws-rise 520ms var(--bk-ease) both;
}
.bk-fx-pipe.is-inview .bk-fx-pipe__steps > span:nth-child(3) { animation-delay: 70ms; }
.bk-fx-pipe.is-inview .bk-fx-pipe__steps > span:nth-child(5) { animation-delay: 140ms; }
.bk-fx-pipe.is-inview .bk-fx-pipe__steps > span:nth-child(7) { animation-delay: 210ms; }
.bk-fx-pipe.is-inview .bk-fx-pipe__steps > span:nth-child(9) { animation-delay: 280ms; }
@media (max-width: 767px) {
  .bk-fx-pipe__steps {
    flex-direction: column;
  }
  .bk-fx-pipe__steps > span[aria-hidden="true"] { transform: rotate(90deg); }
}

.bk-fx-eco {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(180deg, #fff 0%, #f8f9f6 100%);
  padding: 1.25rem 1.1rem;
  max-width: 40rem;
}
.bk-fx-eco__hub {
  margin: 0 auto 0.9rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-fx-eco__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-fx-eco__grid > span {
  padding: 0.4rem 0.7rem;
  border-radius: 0.55rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}

@media (prefers-reduced-motion: reduce) {
  .bk-fx-flows.is-inview .bk-fx-flow__arrow,
  .bk-fx-pipe.is-inview .bk-fx-pipe__steps > span:not([aria-hidden="true"]) {
    animation: none !important;
  }
}

/* UK bookkeeping — before / after monthly bookkeeping */
.bk-uk-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #eef4ea 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-uk-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-uk-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-uk-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #f0d9c8;
  border-radius: 0.55rem;
  background: #fffaf7;
  font-size: 0.75rem;
  font-weight: 600;
  color: #7a5540;
}
.bk-uk-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-uk-flow.is-inview .bk-uk-flow__arrow {
  animation: bk-ws-pulse 1.4s var(--bk-ease) 1;
}
.bk-uk-flow__hub {
  margin: 0 auto 0.85rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-uk-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-uk-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  font-size: 0.75rem;
  font-weight: 700;
  color: #163528;
}
.bk-uk-flow__steps > span::before {
  content: "✓ ";
  color: #2f6b4f;
}
.bk-uk-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-uk-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 60ms; }
.bk-uk-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 140ms; }
.bk-uk-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 220ms; }
.bk-uk-dash.is-inview .bk-dash__row:nth-child(4) { animation-delay: 300ms; }
.bk-uk-dash.is-inview .bk-dash__row:nth-child(5) { animation-delay: 380ms; }
@keyframes bk-uk-row {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .bk-uk-flow.is-inview .bk-uk-flow__arrow,
  .bk-uk-dash.is-inview .bk-dash__row {
    animation: none !important;
  }
}

/* Property management bookkeeping — before / after monthly close */
.bk-pm-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #eef4ea 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-pm-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-pm-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-pm-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #f0d9c8;
  border-radius: 0.55rem;
  background: #fffaf7;
  font-size: 0.75rem;
  font-weight: 600;
  color: #7a5540;
}
.bk-pm-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-pm-flow.is-inview .bk-pm-flow__arrow {
  animation: bk-ws-pulse 1.4s var(--bk-ease) 1;
}
.bk-pm-flow__hub {
  margin: 0 auto 0.85rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-pm-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-pm-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  font-size: 0.75rem;
  font-weight: 700;
  color: #163528;
}
.bk-pm-flow__steps > span::before {
  content: "✓ ";
  color: #2f6b4f;
}
.bk-pm-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-pm-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 60ms; }
.bk-pm-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 140ms; }
.bk-pm-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 220ms; }
.bk-pm-dash.is-inview .bk-dash__row:nth-child(4) { animation-delay: 300ms; }
.bk-pm-dash.is-inview .bk-dash__row:nth-child(5) { animation-delay: 380ms; }
@media (prefers-reduced-motion: reduce) {
  .bk-pm-flow.is-inview .bk-pm-flow__arrow,
  .bk-pm-dash.is-inview .bk-dash__row {
    animation: none !important;
  }
}

/* Year-end bookkeeping — messy close → organized handoff */
.bk-ye-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #eef4ea 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-ye-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-ye-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ye-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #f0d9c8;
  border-radius: 0.55rem;
  background: #fffaf7;
  font-size: 0.75rem;
  font-weight: 600;
  color: #7a5540;
}
.bk-ye-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-ye-flow.is-inview .bk-ye-flow__arrow {
  animation: bk-ws-pulse 1.4s var(--bk-ease) 1;
}
.bk-ye-flow__hub {
  margin: 0 auto 0.85rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-ye-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ye-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  font-size: 0.75rem;
  font-weight: 700;
  color: #163528;
}
.bk-ye-flow__steps > span::before {
  content: "✓ ";
  color: #2f6b4f;
}
.bk-ye-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ye-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 50ms; }
.bk-ye-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 110ms; }
.bk-ye-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 170ms; }
.bk-ye-dash.is-inview .bk-dash__row:nth-child(4) { animation-delay: 230ms; }
.bk-ye-dash.is-inview .bk-dash__row:nth-child(5) { animation-delay: 290ms; }
.bk-ye-dash.is-inview .bk-dash__row:nth-child(6) { animation-delay: 350ms; }
.bk-ye-dash.is-inview .bk-dash__row:nth-child(7) { animation-delay: 410ms; }
@media (prefers-reduced-motion: reduce) {
  .bk-ye-flow.is-inview .bk-ye-flow__arrow,
  .bk-ye-dash.is-inview .bk-dash__row {
    animation: none !important;
  }
}

/* Professional services bookkeeping — messy feed → monthly close */
.bk-ps-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #eef4ea 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-ps-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-ps-flow__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ps-flow__chips > span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #f0d9c8;
  border-radius: 0.55rem;
  background: #fffaf7;
  font-size: 0.75rem;
  font-weight: 600;
  color: #7a5540;
}
.bk-ps-flow__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-ps-flow.is-inview .bk-ps-flow__arrow {
  animation: bk-ws-pulse 1.4s var(--bk-ease) 1;
}
.bk-ps-flow__hub {
  margin: 0 auto 0.85rem;
  display: inline-flex;
  padding: 0.65rem 1rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.88rem;
  font-weight: 800;
}
.bk-ps-flow__steps {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  justify-content: center;
}
.bk-ps-flow__steps > span {
  padding: 0.4rem 0.65rem;
  border-radius: 0.55rem;
  border: 1px solid #d5e0d2;
  background: #eef4ea;
  font-size: 0.75rem;
  font-weight: 700;
  color: #163528;
}
.bk-ps-flow__steps > span::before {
  content: "✓ ";
  color: #2f6b4f;
}
.bk-ps-audiences {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-ps-audiences > span {
  padding: 0.4rem 0.7rem;
  border: 1px solid #e8e8e3;
  border-radius: 999px;
  background: #fff;
  font-size: 0.8rem;
  font-weight: 600;
  color: #0f172a;
}
.bk-ps-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ps-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 50ms; }
.bk-ps-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 110ms; }
.bk-ps-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 170ms; }
.bk-ps-dash.is-inview .bk-dash__row:nth-child(4) { animation-delay: 230ms; }
.bk-ps-dash.is-inview .bk-dash__row:nth-child(5) { animation-delay: 290ms; }
.bk-ps-dash.is-inview .bk-dash__row:nth-child(6) { animation-delay: 350ms; }
@media (prefers-reduced-motion: reduce) {
  .bk-ps-flow.is-inview .bk-ps-flow__arrow,
  .bk-ps-dash.is-inview .bk-dash__row {
    animation: none !important;
  }
}

/* Etsy bookkeeping — order → payout → deposit */
.bk-et-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-et-flow__label {
  margin: 0 0 0.7rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
  text-align: center;
}
.bk-et-flow__steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
}
.bk-et-flow__steps > li {
  position: relative;
  padding: 0.55rem 0.75rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.65rem;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-et-flow__steps > li + li {
  margin-top: 1.05rem;
}
.bk-et-flow__steps > li + li::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -0.95rem;
  width: 2px;
  height: 0.95rem;
  background: #e8e8e3;
  transform: translateX(-50%);
}
.bk-et-flow.is-inview .bk-et-flow__steps > li + li::before {
  background: #ff6b47;
}
.bk-et-flow__neq {
  margin: 0.9rem 0 0.55rem;
  padding: 0.65rem 0.75rem;
  border-radius: 0.7rem;
  background: #fffaf7;
  border: 1px dashed #f0d9c8;
  color: #7a5540;
  font-size: 0.82rem;
  font-weight: 800;
  text-align: center;
}
.bk-et-flow__ok {
  margin: 0;
  padding: 0.65rem 0.75rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 800;
  text-align: center;
}
.bk-et-pipe,
.bk-et-stack {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
}
.bk-et-pipe > span:not([aria-hidden="true"]),
.bk-et-stack > span:not([aria-hidden="true"]) {
  padding: 0.55rem 0.85rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-et-pipe > span[aria-hidden="true"],
.bk-et-stack > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-et-pipe.is-inview > span:not([aria-hidden="true"]),
.bk-et-stack.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-et-pipe.is-inview > span:nth-child(1),
.bk-et-stack.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-et-pipe.is-inview > span:nth-child(3),
.bk-et-stack.is-inview > span:nth-child(3) { animation-delay: 120ms; }
.bk-et-pipe.is-inview > span:nth-child(5),
.bk-et-stack.is-inview > span:nth-child(5) { animation-delay: 200ms; }
.bk-et-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-et-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 50ms; }
.bk-et-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 110ms; }
.bk-et-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 170ms; }
.bk-et-dash.is-inview .bk-dash__row:nth-child(4) { animation-delay: 230ms; }
.bk-et-dash.is-inview .bk-dash__row:nth-child(5) { animation-delay: 290ms; }
@media (prefers-reduced-motion: reduce) {
  .bk-et-flow.is-inview .bk-et-flow__steps > li + li::before,
  .bk-et-pipe.is-inview > span:not([aria-hidden="true"]),
  .bk-et-stack.is-inview > span:not([aria-hidden="true"]),
  .bk-et-dash.is-inview .bk-dash__row {
    animation: none !important;
  }
}

/* General ledger bookkeeping — transaction → ledger → reports */
.bk-gl-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-gl-flow__label {
  margin: 0 0 0.7rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
  text-align: center;
}
.bk-gl-flow__steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0;
}
.bk-gl-flow__steps > li {
  position: relative;
  padding: 0.55rem 0.75rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.65rem;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-gl-flow__steps > li + li {
  margin-top: 1.05rem;
}
.bk-gl-flow__steps > li + li::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -0.95rem;
  width: 2px;
  height: 0.95rem;
  background: #e8e8e3;
  transform: translateX(-50%);
}
.bk-gl-flow.is-inview .bk-gl-flow__steps > li + li::before {
  background: #ff6b47;
}
.bk-gl-flow__ok {
  margin: 0.9rem 0 0;
  padding: 0.65rem 0.75rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 800;
  text-align: center;
}
.bk-gl-pipe,
.bk-gl-stack {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
}
.bk-gl-pipe > span:not([aria-hidden="true"]),
.bk-gl-stack > span:not([aria-hidden="true"]) {
  padding: 0.55rem 0.85rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-gl-pipe > span[aria-hidden="true"],
.bk-gl-stack > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-gl-pipe.is-inview > span:not([aria-hidden="true"]),
.bk-gl-stack.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-gl-pipe.is-inview > span:nth-child(1),
.bk-gl-stack.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-gl-pipe.is-inview > span:nth-child(3),
.bk-gl-stack.is-inview > span:nth-child(3) { animation-delay: 120ms; }
.bk-gl-pipe.is-inview > span:nth-child(5),
.bk-gl-stack.is-inview > span:nth-child(5) { animation-delay: 200ms; }
.bk-gl-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-gl-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 50ms; }
.bk-gl-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 110ms; }
.bk-gl-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 170ms; }
.bk-gl-dash.is-inview .bk-dash__row:nth-child(4) { animation-delay: 230ms; }
.bk-gl-open,
.bk-gl-check,
.bk-gl-accounts {
  border: 1px solid #e8e8e3;
  border-radius: 0.85rem;
  background: #fff;
  padding: 0.85rem 0.95rem;
}
.bk-gl-open ul,
.bk-gl-check ul,
.bk-gl-accounts ul {
  margin: 0.45rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}
.bk-gl-open li,
.bk-gl-check li {
  font-size: 0.8rem;
  color: #5b6470;
  padding-left: 1.1rem;
  position: relative;
}
.bk-gl-open li::before,
.bk-gl-check li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #ff6b47;
}
.bk-gl-accounts {
  background: linear-gradient(180deg, #fff 0%, #fafaf7 100%);
}
.bk-gl-accounts__label {
  margin: 0;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-gl-accounts li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  font-size: 0.82rem;
  font-weight: 600;
  color: #0f172a;
  padding: 0.4rem 0;
  border-bottom: 1px solid #f0f0ea;
}
.bk-gl-accounts li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.bk-page--compact .bk-trust__item {
  padding: 1rem 1.05rem;
}
.bk-page--compact .bk-trust__item .bk-body {
  font-size: 0.8125rem;
  line-height: 1.55;
}
.bk-page--compact .bk-gl-flow,
.bk-page--compact .bk-gl-accounts,
.bk-page--compact .bk-gl-open,
.bk-page--compact .bk-gl-check {
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
@media (prefers-reduced-motion: reduce) {
  .bk-gl-flow.is-inview .bk-gl-flow__steps > li + li::before,
  .bk-gl-pipe.is-inview > span:not([aria-hidden="true"]),
  .bk-gl-stack.is-inview > span:not([aria-hidden="true"]),
  .bk-gl-dash.is-inview .bk-dash__row {
    animation: none !important;
  }
}

/* Chart of accounts setup — messy list → practical structure */
.bk-coa-flow {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-coa-flow__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-coa-flow__messy {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-coa-flow__messy span {
  padding: 0.35rem 0.6rem;
  border: 1px dashed #d4d4cc;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-coa-flow.is-inview .bk-coa-flow__messy span {
  border-style: solid;
  border-color: #e8e8e3;
}
.bk-coa-flow__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  margin: 0.55rem 0;
  line-height: 1;
}
.bk-coa-flow.is-inview .bk-coa-flow__arrow {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-coa-flow__hub {
  text-align: center;
  padding: 0.7rem 0.85rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.82rem;
  font-weight: 800;
  margin-bottom: 0.65rem;
}
.bk-coa-flow__tree {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.45rem;
}
.bk-coa-flow__tree > li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  padding: 0.55rem 0.75rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.65rem;
  background: #fff;
  font-size: 0.8125rem;
  color: #0f172a;
  opacity: 0.9;
  transform: translateY(8px);
  transition: opacity 400ms var(--bk-ease), transform 400ms var(--bk-ease);
}
.bk-coa-flow.is-inview .bk-coa-flow__tree > li {
  opacity: 1;
  transform: none;
}
.bk-coa-flow.is-inview .bk-coa-flow__tree > li:nth-child(1) { transition-delay: 40ms; }
.bk-coa-flow.is-inview .bk-coa-flow__tree > li:nth-child(2) { transition-delay: 90ms; }
.bk-coa-flow.is-inview .bk-coa-flow__tree > li:nth-child(3) { transition-delay: 140ms; }
.bk-coa-flow.is-inview .bk-coa-flow__tree > li:nth-child(4) { transition-delay: 190ms; }
.bk-coa-flow.is-inview .bk-coa-flow__tree > li:nth-child(5) { transition-delay: 240ms; }
.bk-coa-flow__tree strong {
  font-weight: 700;
}
.bk-coa-flow__tree span {
  font-size: 0.72rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-coa-pipe,
.bk-coa-stack {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
}
.bk-coa-pipe > span:not([aria-hidden="true"]),
.bk-coa-stack > span:not([aria-hidden="true"]) {
  padding: 0.55rem 0.85rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-coa-pipe > span[aria-hidden="true"],
.bk-coa-stack > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-coa-pipe.is-inview > span:not([aria-hidden="true"]),
.bk-coa-stack.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-coa-pipe.is-inview > span:nth-child(1),
.bk-coa-stack.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-coa-pipe.is-inview > span:nth-child(3),
.bk-coa-stack.is-inview > span:nth-child(3) { animation-delay: 120ms; }
.bk-coa-pipe.is-inview > span:nth-child(5),
.bk-coa-stack.is-inview > span:nth-child(5) { animation-delay: 200ms; }
.bk-coa-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-coa-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 50ms; }
.bk-coa-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 110ms; }
.bk-coa-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 170ms; }
.bk-coa-dash.is-inview .bk-dash__row:nth-child(4) { animation-delay: 230ms; }
.bk-coa-dash.is-inview .bk-dash__row:nth-child(5) { animation-delay: 290ms; }
.bk-coa-dash .bk-dash__row em {
  font-style: normal;
  font-weight: 700;
  color: #5b6470;
  margin-right: 0.35rem;
  font-size: 0.72rem;
  letter-spacing: 0.04em;
}
.bk-coa-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(160deg, #0f172a 0%, #1e293b 100%);
  color: #fff;
}
.bk-coa-midcta p {
  margin: 0;
  max-width: 36rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.9);
}
.bk-page--compact .bk-coa-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-coa-midcta p {
  font-size: 0.875rem;
}
@media (prefers-reduced-motion: reduce) {
  .bk-coa-flow.is-inview .bk-coa-flow__arrow,
  .bk-coa-flow.is-inview .bk-coa-flow__tree > li,
  .bk-coa-pipe.is-inview > span:not([aria-hidden="true"]),
  .bk-coa-stack.is-inview > span:not([aria-hidden="true"]),
  .bk-coa-dash.is-inview .bk-dash__row {
    animation: none !important;
    transition: none;
    transform: none;
    opacity: 1;
  }
}
html:not(.bk-js) .bk-coa-flow__tree > li {
  opacity: 1;
  transform: none;
}

/* Payroll reconciliation — provider + bank + ledger */
.bk-pr-sources {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-pr-sources__label {
  margin: 0 0 0.7rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-pr-sources__nodes {
  display: grid;
  gap: 0.85rem;
}
.bk-pr-sources__nodes span {
  position: relative;
  padding: 0.65rem 0.55rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.7rem;
  background: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}
.bk-pr-sources__nodes span + span::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -0.75rem;
  width: 2px;
  height: 0.75rem;
  background: #e8e8e3;
  transform: translateX(-50%);
}
.bk-pr-sources.is-inview .bk-pr-sources__nodes span {
  border-color: rgba(255, 107, 71, 0.28);
}
.bk-pr-sources.is-inview .bk-pr-sources__nodes span + span::before {
  background: #ff6b47;
}
@media (min-width: 640px) {
  .bk-pr-sources__nodes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.7rem;
  }
  .bk-pr-sources__nodes span + span::before {
    left: -0.6rem;
    top: 50%;
    width: 0.6rem;
    height: 2px;
    transform: translateY(-50%);
  }
}
.bk-pr-sources__arrow {
  color: #ff6b47;
  font-weight: 800;
  margin: 0.55rem 0;
  line-height: 1;
}
.bk-pr-sources.is-inview .bk-pr-sources__arrow {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-pr-sources__hub {
  margin: 0;
  padding: 0.7rem 0.85rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.85rem;
  font-weight: 800;
}
.bk-pr-sources__note {
  margin: 0.65rem 0 0;
  font-size: 0.75rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-pr-pipe {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.5rem;
}
.bk-pr-pipe > span:not([aria-hidden="true"]) {
  padding: 0.5rem 0.75rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-pr-pipe > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-pr-pipe.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-pr-pipe.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-pr-pipe.is-inview > span:nth-child(3) { animation-delay: 100ms; }
.bk-pr-pipe.is-inview > span:nth-child(5) { animation-delay: 160ms; }
.bk-pr-pipe.is-inview > span:nth-child(7) { animation-delay: 220ms; }
.bk-pr-dash.is-inview .bk-dash__row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-pr-dash.is-inview .bk-dash__row:nth-child(1) { animation-delay: 50ms; }
.bk-pr-dash.is-inview .bk-dash__row:nth-child(2) { animation-delay: 110ms; }
.bk-pr-dash.is-inview .bk-dash__row:nth-child(3) { animation-delay: 170ms; }
.bk-pr-open {
  border: 1px solid #e8e8e3;
  border-radius: 0.85rem;
  background: #fff;
  padding: 0.85rem 0.95rem;
}
.bk-pr-open ul {
  margin: 0.45rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}
.bk-pr-open li {
  font-size: 0.8rem;
  color: #5b6470;
  padding-left: 1.1rem;
  position: relative;
}
.bk-pr-open li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #ff6b47;
}
.bk-pr-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(160deg, #0f172a 0%, #1e293b 100%);
  color: #fff;
}
.bk-pr-midcta p {
  margin: 0;
  max-width: 36rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.9);
}
.bk-page--compact .bk-pr-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-pr-midcta p {
  font-size: 0.875rem;
}
@media (prefers-reduced-motion: reduce) {
  .bk-pr-sources.is-inview .bk-pr-sources__arrow,
  .bk-pr-pipe.is-inview > span:not([aria-hidden="true"]),
  .bk-pr-dash.is-inview .bk-dash__row {
    animation: none !important;
  }
}

/* Bank reconciliation — statement vs books */
.bk-br-vs {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-br-vs__cols {
  display: grid;
  gap: 0.75rem;
  align-items: start;
}
@media (min-width: 480px) {
  .bk-br-vs__cols {
    grid-template-columns: 1fr auto 1fr;
    gap: 0.65rem;
    align-items: stretch;
  }
}
.bk-br-vs__col {
  border: 1px solid #e8e8e3;
  border-radius: 0.75rem;
  background: #fff;
  padding: 0.75rem 0.8rem;
}
.bk-br-vs__label {
  margin: 0 0 0.55rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
}
.bk-br-vs__col ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}
.bk-br-vs__col li {
  position: relative;
  padding: 0.45rem 0.55rem 0.45rem 1.35rem;
  border-radius: 0.5rem;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.35;
}
.bk-br-vs__col li::before {
  content: "";
  position: absolute;
  left: 0.45rem;
  top: 0.7rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #cbd5e1;
}
.bk-br-vs__col--books li::before {
  background: #ff6b47;
}
.bk-br-vs.is-inview .bk-br-vs__col--books li {
  background: #f0fdf4;
}
.bk-br-vs.is-inview .bk-br-vs__col--books li::before {
  background: #16a34a;
}
.bk-br-vs__vs {
  margin: 0;
  text-align: center;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #ff6b47;
  align-self: center;
}
.bk-br-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.5rem;
}
.bk-br-flow > span:not([aria-hidden="true"]) {
  padding: 0.5rem 0.75rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-br-flow > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-br-flow.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-br-flow.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-br-flow.is-inview > span:nth-child(3) { animation-delay: 100ms; }
.bk-br-flow.is-inview > span:nth-child(5) { animation-delay: 160ms; }
.bk-br-flow.is-inview > span:nth-child(7) { animation-delay: 220ms; }
.bk-br-dash.is-inview .bk-br-table tbody tr {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-br-dash.is-inview .bk-br-table tbody tr:nth-child(1) { animation-delay: 50ms; }
.bk-br-dash.is-inview .bk-br-table tbody tr:nth-child(2) { animation-delay: 110ms; }
.bk-br-dash.is-inview .bk-br-table tbody tr:nth-child(3) { animation-delay: 170ms; }
.bk-br-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.82rem;
}
.bk-br-table thead {
  display: none;
}
.bk-br-table tbody tr {
  display: grid;
  gap: 0.35rem;
  padding: 0.75rem 0.8rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.7rem;
  background: #fff;
  margin-bottom: 0.5rem;
}
.bk-br-table tbody tr:last-child { margin-bottom: 0; }
.bk-br-table th,
.bk-br-table td {
  text-align: left;
  font-weight: 600;
  color: #0f172a;
}
.bk-br-table td {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  font-weight: 500;
  color: #5b6470;
}
.bk-br-table td::before {
  content: attr(data-label);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-br-table th[scope="row"] {
  font-size: 0.88rem;
  padding-bottom: 0.15rem;
}
@media (min-width: 768px) {
  .bk-br-table thead {
    display: table-header-group;
  }
  .bk-br-table tbody tr {
    display: table-row;
    border: 0;
    border-radius: 0;
    background: transparent;
    margin: 0;
    padding: 0;
    animation: none;
  }
  .bk-br-table th,
  .bk-br-table td {
    padding: 0.7rem 0.55rem;
    border-bottom: 1px solid #f1f1ec;
    vertical-align: middle;
  }
  .bk-br-table thead th {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #5b6470;
    border-bottom: 1px solid #e8e8e3;
  }
  .bk-br-table td {
    display: table-cell;
    color: #0f172a;
  }
  .bk-br-table td::before { content: none; }
  .bk-br-table tbody tr:last-child th,
  .bk-br-table tbody tr:last-child td { border-bottom: 0; }
  .bk-br-dash.is-inview .bk-br-table tbody tr {
    animation: bk-uk-row 520ms var(--bk-ease) both;
  }
}
.bk-br-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(160deg, #0f172a 0%, #1e293b 100%);
  color: #fff;
}
.bk-br-midcta p {
  margin: 0;
  max-width: 36rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.9);
}
.bk-page--compact .bk-br-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-br-midcta p {
  font-size: 0.875rem;
}
@media (prefers-reduced-motion: reduce) {
  .bk-br-flow.is-inview > span:not([aria-hidden="true"]),
  .bk-br-dash.is-inview .bk-br-table tbody tr {
    animation: none !important;
  }
}

/* Airbnb host bookkeeping */
.bk-ab-scope {
  padding: 0.75rem 0.9rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.75rem;
  background: #fafaf7;
}
.bk-ab-scope__label {
  margin: 0 0 0.3rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ab-scope p:last-child {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: #5b6470;
}
.bk-ab-pipe {
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  padding: 1.15rem 1.1rem 1.25rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ab-pipe__label {
  margin: 0 0 0.7rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #5b6470;
  text-align: center;
}
.bk-ab-pipe__steps {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.45rem;
}
.bk-ab-pipe__steps span {
  padding: 0.45rem 0.7rem;
  border-radius: 0.65rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ab-pipe.is-inview .bk-ab-pipe__steps span {
  animation: bk-uk-row 520ms var(--bk-ease) both;
  border-color: rgba(255, 107, 71, 0.28);
}
.bk-ab-pipe.is-inview .bk-ab-pipe__steps span:nth-child(1) { animation-delay: 40ms; }
.bk-ab-pipe.is-inview .bk-ab-pipe__steps span:nth-child(2) { animation-delay: 90ms; }
.bk-ab-pipe.is-inview .bk-ab-pipe__steps span:nth-child(3) { animation-delay: 140ms; }
.bk-ab-pipe.is-inview .bk-ab-pipe__steps span:nth-child(4) { animation-delay: 190ms; }
.bk-ab-pipe.is-inview .bk-ab-pipe__steps span:nth-child(5) { animation-delay: 240ms; }
.bk-ab-pipe__notes {
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.4rem;
}
.bk-ab-pipe__notes li {
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-ab-pipe__hub {
  margin: 0.85rem 0 0;
  padding: 0.7rem 0.85rem;
  border-radius: 0.7rem;
  background: #0f172a;
  color: #fff;
  font-size: 0.8rem;
  font-weight: 800;
  text-align: center;
  line-height: 1.4;
}
.bk-ab-close {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.5rem;
}
.bk-ab-close li {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  padding: 0.55rem 0.65rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.7rem;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.4;
}
.bk-ab-close li::before {
  content: "";
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin-top: 0.1rem;
  border-radius: 999px;
  background: #16a34a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center / 0.65rem no-repeat;
}
.bk-ab-dash.is-inview .bk-ab-close li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ab-dash.is-inview .bk-ab-close li:nth-child(1) { animation-delay: 40ms; }
.bk-ab-dash.is-inview .bk-ab-close li:nth-child(2) { animation-delay: 90ms; }
.bk-ab-dash.is-inview .bk-ab-close li:nth-child(3) { animation-delay: 140ms; }
.bk-ab-dash.is-inview .bk-ab-close li:nth-child(4) { animation-delay: 190ms; }
.bk-ab-dash.is-inview .bk-ab-close li:nth-child(5) { animation-delay: 240ms; }
.bk-ab-disclaimer {
  margin: 0;
  font-size: 0.8125rem;
  color: #5b6470;
  max-width: 40rem;
}
@media (prefers-reduced-motion: reduce) {
  .bk-ab-pipe.is-inview .bk-ab-pipe__steps span,
  .bk-ab-dash.is-inview .bk-ab-close li {
    animation: none !important;
  }
}

/* Bookkeeping for trade businesses */
.bk-tb-glow {
  position: relative;
}
.bk-tb-glow::before {
  content: "";
  position: absolute;
  inset: 12% 8% auto;
  height: 70%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.18), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-tb-glow > * {
  position: relative;
  z-index: 1;
}
.bk-tb-scatter .bk-resto-flow__inputs span {
  transform: translateY(-10px);
  opacity: 0.55;
}
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span {
  transform: translateY(0);
  opacity: 1;
  animation: bk-uk-row 560ms var(--bk-ease) both;
}
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span:nth-child(1) { animation-delay: 40ms; }
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span:nth-child(2) { animation-delay: 80ms; }
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span:nth-child(3) { animation-delay: 120ms; }
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span:nth-child(4) { animation-delay: 160ms; }
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span:nth-child(5) { animation-delay: 200ms; }
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span:nth-child(6) { animation-delay: 240ms; }
.bk-tb-scatter.is-inview .bk-resto-flow__inputs span:nth-child(7) { animation-delay: 280ms; }
.bk-tb-dash.is-inview .bk-ab-close li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-tb-dash.is-inview .bk-ab-close li:nth-child(1) { animation-delay: 40ms; }
.bk-tb-dash.is-inview .bk-ab-close li:nth-child(2) { animation-delay: 90ms; }
.bk-tb-dash.is-inview .bk-ab-close li:nth-child(3) { animation-delay: 140ms; }
.bk-tb-dash.is-inview .bk-ab-close li:nth-child(4) { animation-delay: 190ms; }
.bk-tb-dash.is-inview .bk-ab-close li:nth-child(5) { animation-delay: 240ms; }
.bk-tb-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: linear-gradient(160deg, #fff6f3 0%, #fffdfc 70%, #fff 100%);
}
.bk-tb-midcta p {
  margin: 0;
  max-width: 36rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.5;
  color: #0f172a;
}
.bk-page--compact .bk-tb-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-tb-midcta p {
  font-size: 0.875rem;
}
.bk-tb-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
}
.bk-tb-collab > span:not([aria-hidden="true"]) {
  padding: 0.55rem 0.85rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-tb-collab > span:nth-child(3) {
  border-color: rgba(255, 107, 71, 0.35);
  background: #fff4f0;
}
.bk-tb-collab > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-tb-collab.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-tb-collab.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-tb-collab.is-inview > span:nth-child(3) { animation-delay: 140ms; }
.bk-tb-collab.is-inview > span:nth-child(5) { animation-delay: 240ms; }
.bk-tb-collab.is-inview > span:nth-child(7) { animation-delay: 340ms; }
.bk-tb-quote__icon {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 0.7rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.75rem;
  background: #fff4f0;
  color: #ff6b47;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-tb-cta-art {
  border-radius: var(--bk-radius-sm, 0.85rem);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
}
.bk-tb-cta-art img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 16rem;
  object-fit: cover;
  object-position: center;
}
html:not(.bk-js) .bk-tb-scatter .bk-resto-flow__inputs span {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .bk-tb-scatter .bk-resto-flow__inputs span,
  .bk-tb-scatter.is-inview .bk-resto-flow__inputs span,
  .bk-tb-dash.is-inview .bk-ab-close li,
  .bk-tb-collab.is-inview > span:not([aria-hidden="true"]) {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* Franchise bookkeeping */
.bk-fr-glow {
  position: relative;
}
.bk-fr-glow::before {
  content: "";
  position: absolute;
  inset: 12% 8% auto;
  height: 70%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.18), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-fr-glow > * {
  position: relative;
  z-index: 1;
}
.bk-fr-flow .bk-resto-flow__inputs span {
  transform: translateY(-8px);
  opacity: 0.6;
}
.bk-fr-flow.is-inview .bk-resto-flow__inputs span {
  transform: translateY(0);
  opacity: 1;
  animation: bk-uk-row 560ms var(--bk-ease) both;
}
.bk-fr-flow.is-inview .bk-resto-flow__inputs span:nth-child(1) { animation-delay: 40ms; }
.bk-fr-flow.is-inview .bk-resto-flow__inputs span:nth-child(2) { animation-delay: 90ms; }
.bk-fr-flow.is-inview .bk-resto-flow__inputs span:nth-child(3) { animation-delay: 140ms; }
.bk-fr-flow.is-inview .bk-resto-flow__inputs span:nth-child(4) { animation-delay: 190ms; }
.bk-fr-flow.is-inview .bk-resto-flow__inputs span:nth-child(5) { animation-delay: 240ms; }
.bk-fr-flow__out {
  flex-direction: column;
  align-items: stretch;
  gap: 0.55rem;
}
.bk-fr-flow__out ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-fr-flow__out li {
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-fr-dash .bk-br-table .bk-status {
  white-space: nowrap;
}
.bk-fr-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: linear-gradient(160deg, #fff6f3 0%, #fffdfc 70%, #fff 100%);
}
.bk-fr-midcta p {
  margin: 0;
  max-width: 36rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.5;
  color: #0f172a;
}
.bk-page--compact .bk-fr-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-fr-midcta p {
  font-size: 0.875rem;
}
.bk-fr-cta-art {
  border-radius: var(--bk-radius-sm, 0.85rem);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
}
.bk-fr-cta-art img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 16rem;
  object-fit: cover;
  object-position: center;
}
html:not(.bk-js) .bk-fr-flow .bk-resto-flow__inputs span {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .bk-fr-flow .bk-resto-flow__inputs span,
  .bk-fr-flow.is-inview .bk-resto-flow__inputs span {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* Loan-ready bookkeeping */
.bk-lr-glow {
  position: relative;
}
.bk-lr-glow::before {
  content: "";
  position: absolute;
  inset: 12% 8% auto;
  height: 70%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.18), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-lr-glow > * {
  position: relative;
  z-index: 1;
}
.bk-lr-flow .bk-resto-flow__inputs span {
  transform: translateY(-8px);
  opacity: 0.6;
}
.bk-lr-flow.is-inview .bk-resto-flow__inputs span {
  transform: translateY(0);
  opacity: 1;
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-lr-flow.is-inview .bk-resto-flow__inputs span:nth-child(1) { animation-delay: 40ms; }
.bk-lr-flow.is-inview .bk-resto-flow__inputs span:nth-child(2) { animation-delay: 90ms; }
.bk-lr-flow.is-inview .bk-resto-flow__inputs span:nth-child(3) { animation-delay: 140ms; }
.bk-lr-flow__out {
  flex-direction: column;
  align-items: stretch;
  gap: 0.55rem;
}
.bk-lr-flow__out ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-lr-flow__out li {
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-lr-dash.is-inview .bk-ab-close li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-lr-dash.is-inview .bk-ab-close li:nth-child(1) { animation-delay: 40ms; }
.bk-lr-dash.is-inview .bk-ab-close li:nth-child(2) { animation-delay: 90ms; }
.bk-lr-dash.is-inview .bk-ab-close li:nth-child(3) { animation-delay: 140ms; }
.bk-lr-dash.is-inview .bk-ab-close li:nth-child(4) { animation-delay: 190ms; }
.bk-lr-dash.is-inview .bk-ab-close li:nth-child(5) { animation-delay: 240ms; }
.bk-lr-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: linear-gradient(160deg, #fff6f3 0%, #fffdfc 70%, #fff 100%);
}
.bk-lr-midcta p {
  margin: 0;
  max-width: 36rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.5;
  color: #0f172a;
}
.bk-page--compact .bk-lr-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-lr-midcta p {
  font-size: 0.875rem;
}
.bk-lr-cta-panel .bk-cta__step {
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.875rem;
  font-weight: 600;
}
html:not(.bk-js) .bk-lr-flow .bk-resto-flow__inputs span {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .bk-lr-flow .bk-resto-flow__inputs span,
  .bk-lr-flow.is-inview .bk-resto-flow__inputs span,
  .bk-lr-dash.is-inview .bk-ab-close li {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* Bookkeeping for real estate agents */
.bk-rea-glow {
  position: relative;
}
.bk-rea-glow::before {
  content: "";
  position: absolute;
  inset: 12% 8% auto;
  height: 70%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.18), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-rea-glow > * {
  position: relative;
  z-index: 1;
}
.bk-rea-flow .bk-resto-flow__inputs span {
  transform: translateY(-8px);
  opacity: 0.6;
}
.bk-rea-flow.is-inview .bk-resto-flow__inputs span {
  transform: translateY(0);
  opacity: 1;
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-rea-flow.is-inview .bk-resto-flow__inputs span:nth-child(1) { animation-delay: 40ms; }
.bk-rea-flow.is-inview .bk-resto-flow__inputs span:nth-child(2) { animation-delay: 90ms; }
.bk-rea-flow.is-inview .bk-resto-flow__inputs span:nth-child(3) { animation-delay: 140ms; }
.bk-rea-flow.is-inview .bk-resto-flow__inputs span:nth-child(4) { animation-delay: 190ms; }
.bk-rea-flow.is-inview .bk-resto-flow__inputs span:nth-child(5) { animation-delay: 240ms; }
.bk-rea-flow__out {
  flex-direction: column;
  align-items: stretch;
  gap: 0.55rem;
}
.bk-rea-flow__out ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-rea-flow__out li {
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-rea-dash.is-inview .bk-br-table tbody tr {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-rea-dash.is-inview .bk-br-table tbody tr:nth-child(1) { animation-delay: 50ms; }
.bk-rea-dash.is-inview .bk-br-table tbody tr:nth-child(2) { animation-delay: 110ms; }
.bk-rea-dash.is-inview .bk-br-table tbody tr:nth-child(3) { animation-delay: 170ms; }
.bk-rea-dash.is-inview .bk-br-table tbody tr:nth-child(4) { animation-delay: 230ms; }
.bk-rea-dash.is-inview .bk-br-table tbody tr:nth-child(5) { animation-delay: 290ms; }
.bk-rea-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: linear-gradient(160deg, #fff6f3 0%, #fffdfc 70%, #fff 100%);
}
.bk-rea-midcta p {
  margin: 0;
  max-width: 36rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.5;
  color: #0f172a;
}
.bk-page--compact .bk-rea-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-rea-midcta p {
  font-size: 0.875rem;
}
.bk-rea-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
}
.bk-rea-collab > span:not([aria-hidden="true"]) {
  padding: 0.55rem 0.85rem;
  border-radius: 0.7rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-rea-collab > span:nth-child(5) {
  border-color: rgba(255, 107, 71, 0.35);
  background: #fff4f0;
}
.bk-rea-collab > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-rea-collab.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-rea-collab.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-rea-collab.is-inview > span:nth-child(3) { animation-delay: 120ms; }
.bk-rea-collab.is-inview > span:nth-child(5) { animation-delay: 200ms; }
.bk-rea-collab.is-inview > span:nth-child(7) { animation-delay: 280ms; }
.bk-rea-collab.is-inview > span:nth-child(9) { animation-delay: 360ms; }
html:not(.bk-js) .bk-rea-flow .bk-resto-flow__inputs span {
  opacity: 1;
  transform: none;
}
@media (min-width: 768px) {
  .bk-rea-dash.is-inview .bk-br-table tbody tr {
    animation: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-rea-flow .bk-resto-flow__inputs span,
  .bk-rea-flow.is-inview .bk-resto-flow__inputs span,
  .bk-rea-dash.is-inview .bk-br-table tbody tr,
  .bk-rea-collab.is-inview > span:not([aria-hidden="true"]) {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* eBay bookkeeping services */
.bk-eb-glow {
  position: relative;
}
.bk-eb-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.16), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-eb-glow > * {
  position: relative;
  z-index: 1;
}
.bk-eb-records__label {
  margin: 0 0 0.85rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-eb-records {
  display: grid;
  gap: 0.65rem;
}
.bk-eb-record {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  padding: 0.9rem 1rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.9rem;
  background: #fff;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.03);
  transition: transform 200ms var(--bk-ease), box-shadow 200ms var(--bk-ease), border-color 200ms var(--bk-ease);
}
@media (hover: hover) {
  .bk-eb-record:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 107, 71, 0.28);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
  }
}
.bk-eb-record p {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-eb-record__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  flex-shrink: 0;
  border-radius: 0.65rem;
  background: #fff4f0;
  color: #ff6b47;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-eb-record__icon svg {
  width: 1.15rem;
  height: 1.15rem;
}
.bk-page--compact .bk-eb-record p {
  font-size: 0.875rem;
}
.bk-page--compact .bk-eb-record {
  padding: 0.8rem 0.9rem;
}
.bk-eb-meta {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.65rem;
  margin-bottom: 1rem;
}
@media (min-width: 480px) {
  .bk-eb-meta {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.bk-eb-meta > div {
  padding: 0.7rem 0.8rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.8rem;
  background: #fafaf7;
}
.bk-eb-meta__label {
  margin: 0 0 0.2rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-eb-meta__value {
  margin: 0;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-eb-dash.is-inview .bk-status--ok {
  animation: bk-eb-status 520ms var(--bk-ease) both;
}
@keyframes bk-eb-status {
  from { transform: scale(0.92); opacity: 0.65; }
  to { transform: scale(1); opacity: 1; }
}
.bk-eb-dash.is-inview .bk-br-table tbody tr {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-eb-dash.is-inview .bk-br-table tbody tr:nth-child(1) { animation-delay: 50ms; }
.bk-eb-dash.is-inview .bk-br-table tbody tr:nth-child(2) { animation-delay: 110ms; }
.bk-eb-dash.is-inview .bk-br-table tbody tr:nth-child(3) { animation-delay: 170ms; }
.bk-eb-dash.is-inview .bk-br-table tbody tr:nth-child(4) { animation-delay: 230ms; }
.bk-eb-dash.is-inview .bk-br-table tbody tr:nth-child(5) { animation-delay: 290ms; }
.bk-eb-challenges {
  display: grid;
  gap: 0;
  border-top: 1px solid #e8e8e3;
}
.bk-eb-challenge {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.9rem 1rem;
  padding: 1.35rem 0;
  border-bottom: 1px solid #e8e8e3;
}
.bk-eb-challenge__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 2rem;
  margin-top: 0.1rem;
  border-radius: 999px;
  background: #fff4f0;
  color: #ff6b47;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}
.bk-eb-challenge .bk-h3 {
  margin: 0;
}
@media (min-width: 768px) {
  .bk-eb-challenges {
    grid-template-columns: 1fr 1fr;
    column-gap: 2.5rem;
    border-top: 0;
  }
  .bk-eb-challenge {
    padding: 1.25rem 0 1.4rem;
    border-bottom: 1px solid #e8e8e3;
  }
  .bk-eb-challenge--wide {
    grid-column: 1 / -1;
  }
}
.bk-eb-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-eb-band .bk-card {
  background: #fff;
}
@media (min-width: 768px) {
  .bk-eb-dash.is-inview .bk-br-table tbody tr {
    animation: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-eb-dash.is-inview .bk-status--ok,
  .bk-eb-dash.is-inview .bk-br-table tbody tr {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* Cash-to-accrual conversion services */
.bk-ca-glow {
  position: relative;
}
.bk-ca-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.16), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-ca-glow > * {
  position: relative;
  z-index: 1;
}
.bk-ca-strip {
  display: grid;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .bk-ca-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.bk-ca-strip__item {
  padding: 1.15rem 1.2rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
}
.bk-ca-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ca-chips li {
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff4f0;
  font-size: 0.78rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ca-flow .bk-resto-flow__inputs span {
  transform: translateY(-8px);
  opacity: 0.6;
}
.bk-ca-flow.is-inview .bk-resto-flow__inputs span {
  transform: translateY(0);
  opacity: 1;
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ca-flow.is-inview .bk-resto-flow__inputs span:nth-child(1) { animation-delay: 40ms; }
.bk-ca-flow.is-inview .bk-resto-flow__inputs span:nth-child(2) { animation-delay: 90ms; }
.bk-ca-flow.is-inview .bk-resto-flow__inputs span:nth-child(3) { animation-delay: 140ms; }
.bk-ca-flow.is-inview .bk-resto-flow__inputs span:nth-child(4) { animation-delay: 190ms; }
.bk-ca-flow.is-inview .bk-resto-flow__inputs span:nth-child(5) { animation-delay: 240ms; }
.bk-ca-flow__out {
  flex-direction: column;
  align-items: stretch;
  gap: 0.55rem;
}
.bk-ca-flow__out ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-ca-flow__out li {
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-ca-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ca-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-ca-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-ca-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-ca-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-ca-check.is-inview .bk-checklist__list li:nth-child(5) { animation-delay: 240ms; }
.bk-ca-check.is-inview .bk-checklist__list li:nth-child(6) { animation-delay: 290ms; }
.bk-ca-progress {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ca-progress span {
  color: #ff6b47;
}
.bk-ca-progress span + span::before {
  content: "→";
  margin-right: 0.55rem;
  color: #ff6b47;
}
.bk-ca-path {
  border: 1px solid rgba(255, 107, 71, 0.18);
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  padding: 1.2rem 1.15rem 1.3rem;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ca-path__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.7rem;
}
.bk-ca-path__list li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.8rem;
  background: #fafaf7;
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ca-path__list li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.85rem;
  height: 1.85rem;
  border-radius: 999px;
  background: #fff4f0;
  color: #ff6b47;
  font-size: 0.68rem;
  font-weight: 800;
}
.bk-ca-path.is-inview .bk-ca-path__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ca-path.is-inview .bk-ca-path__list li:nth-child(1) { animation-delay: 40ms; }
.bk-ca-path.is-inview .bk-ca-path__list li:nth-child(2) { animation-delay: 110ms; }
.bk-ca-path.is-inview .bk-ca-path__list li:nth-child(3) { animation-delay: 180ms; }
.bk-ca-path.is-inview .bk-ca-path__list li:nth-child(4) { animation-delay: 250ms; }
.bk-ca-journey {
  display: grid;
  gap: 0.85rem;
  position: relative;
}
@media (min-width: 768px) {
  .bk-ca-journey {
    grid-template-columns: 1fr 1fr;
  }
}
.bk-ca-journey__step {
  padding: 1.2rem 1.25rem 1.3rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  border-left: 3px solid #ff6b47;
}
.bk-ca-journey__num {
  margin: 0;
  font-size: 1.35rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #ff6b47;
  line-height: 1;
}
.bk-ca-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-ca-midcta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--bk-radius, 1rem);
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: linear-gradient(160deg, #fff6f3 0%, #fffdfc 70%, #fff 100%);
}
.bk-ca-midcta .bk-h3 {
  margin: 0;
}
.bk-ca-midcta .bk-body {
  max-width: 36rem;
}
.bk-page--compact .bk-ca-midcta {
  padding: 1.1rem 1.2rem;
}
.bk-page--compact .bk-ca-chips li {
  font-size: 0.72rem;
}
html:not(.bk-js) .bk-ca-flow .bk-resto-flow__inputs span {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .bk-ca-flow .bk-resto-flow__inputs span,
  .bk-ca-flow.is-inview .bk-resto-flow__inputs span,
  .bk-ca-check.is-inview .bk-checklist__list li,
  .bk-ca-path.is-inview .bk-ca-path__list li {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* Cash-to-accrual — page-only smaller type */
.bk-page--cac .bk-h1 {
  font-size: clamp(1.6rem, 2.4vw, 2.15rem);
  line-height: 1.15;
}
.bk-page--cac .bk-h2 {
  font-size: clamp(1.25rem, 1.85vw, 1.65rem);
  line-height: 1.22;
}
.bk-page--cac .bk-h3 {
  font-size: clamp(0.95rem, 1.05vw, 1.05rem);
  line-height: 1.35;
}
.bk-page--cac .bk-lead {
  font-size: clamp(0.875rem, 0.95vw, 0.9375rem);
  line-height: 1.55;
}
.bk-page--cac .bk-body {
  font-size: 0.875rem;
  line-height: 1.55;
}
.bk-page--cac .bk-eyebrow {
  font-size: 0.62rem;
}
.bk-page--cac .bk-benefit {
  font-size: 0.875rem;
}
.bk-page--cac .bk-scope-list li {
  font-size: 0.84rem;
}
.bk-page--cac .bk-callout,
.bk-page--cac .bk-callout p {
  font-size: 0.8125rem;
}
.bk-page--cac .bk-btn {
  font-size: 0.875rem;
  padding: 0.7rem 1.15rem;
}
.bk-page--cac .bk-ca-strip__item {
  font-size: 0.875rem;
}
.bk-page--cac .bk-ca-strip__item .bk-h3,
.bk-page--cac .bk-ca-strip__item h3 {
  font-size: 0.95rem;
}
.bk-page--cac .bk-ca-path__list li {
  font-size: 0.84rem;
}
.bk-page--cac .bk-ca-journey__num {
  font-size: 1.15rem;
}
.bk-page--cac .bk-ca-journey__step .bk-body {
  font-size: 0.84rem;
}
.bk-page--cac .bk-checklist__list li,
.bk-page--cac .bk-dash__row {
  font-size: 0.84rem;
}
.bk-page--cac [data-faq-accordion] .faq-question {
  font-size: 0.9375rem;
}
.bk-page--cac [data-faq-accordion] .faq-answer,
.bk-page--cac [data-faq-accordion] .faq-answer p {
  font-size: 0.875rem;
}
.bk-page--cac .bk-cta h2,
.bk-page--cac .bk-cta .text-xl,
.bk-page--cac .bk-cta .sm\:text-2xl {
  font-size: clamp(1.1rem, 1.7vw, 1.3rem) !important;
}
.bk-page--cac .bk-cta p,
.bk-page--cac .bk-cta .text-\[0\.95rem\] {
  font-size: 0.8125rem !important;
}
.bk-page--cac .bk-timeline__num {
  font-size: 1.15rem;
}
.bk-page--cac .bk-card .bk-body {
  font-size: 0.84rem;
}

/* Credit card reconciliation services */
.bk-cc-glow {
  position: relative;
}
.bk-cc-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.16), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-cc-glow > * {
  position: relative;
  z-index: 1;
}
.bk-cc-workspace {
  position: relative;
  z-index: 2;
  margin: -2.75rem 0.85rem 0;
  padding: 0.75rem 0.85rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.9rem;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}
@media (max-width: 639px) {
  .bk-cc-workspace {
    margin: 0.75rem 0 0;
  }
}
.bk-cc-workspace__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.55rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-cc-workspace__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1.25rem auto;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.55rem;
  border-radius: 0.55rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
  opacity: 0.55;
  transform: translateY(6px);
}
.bk-cc-workspace__line {
  height: 1px;
  background: repeating-linear-gradient(90deg, #d4d4cc 0 4px, transparent 4px 8px);
}
.bk-cc-workspace.is-inview .bk-cc-workspace__row {
  opacity: 1;
  transform: none;
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-cc-workspace.is-inview .bk-cc-workspace__row:nth-child(2) { animation-delay: 80ms; }
.bk-cc-workspace.is-inview .bk-cc-workspace__row:nth-child(3) { animation-delay: 160ms; }
.bk-cc-workspace.is-inview .bk-cc-workspace__row:nth-child(4) { animation-delay: 240ms; }
.bk-cc-workspace__row.is-ok {
  background: #f0fdf4;
}
.bk-cc-workspace__row.is-ok span:last-child {
  color: #15803d;
}
.bk-cc-workspace__row.is-ok span:last-child::before {
  content: "";
  display: inline-block;
  width: 0.55rem;
  height: 0.35rem;
  margin-right: 0.3rem;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg) translateY(-1px);
}
.bk-cc-workspace__row.is-review {
  background: #fffbeb;
}
.bk-cc-workspace__row.is-review span:last-child {
  color: #92400e;
}
.bk-cc-status-swap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 1.35rem;
  min-width: 6.75rem;
}
.bk-cc-status-swap__from,
.bk-cc-status-swap__to {
  display: inline-flex;
  align-items: center;
  gap: 0.2rem;
  padding: 0.15rem 0.5rem;
  border-radius: 999px;
  font-size: 0.65rem;
  font-weight: 800;
}
.bk-cc-status-swap__from {
  background: #fef3c7;
  color: #92400e;
}
.bk-cc-status-swap__to {
  position: absolute;
  right: 0;
  opacity: 0;
  background: #dcfce7;
  color: #15803d;
}
.bk-cc-status-swap__to svg {
  width: 0.7rem;
  height: 0.7rem;
}
.bk-cc-workspace.is-inview .bk-cc-status-swap__from {
  animation: bk-cc-swap-out 280ms 720ms var(--bk-ease) forwards;
}
.bk-cc-workspace.is-inview .bk-cc-status-swap__to {
  animation: bk-eb-status 480ms 780ms var(--bk-ease) both;
}
@keyframes bk-cc-swap-out {
  to { opacity: 0; }
}
html:not(.bk-js) .bk-cc-status-swap__from {
  display: none;
}
html:not(.bk-js) .bk-cc-status-swap__to {
  position: static;
  opacity: 1;
}
@media (prefers-reduced-motion: reduce) {
  .bk-cc-workspace .bk-cc-status-swap__from { display: none; }
  .bk-cc-workspace .bk-cc-status-swap__to {
    position: static;
    opacity: 1;
  }
}
.bk-cc-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-cc-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  color: #ff6b47;
}
.bk-cc-flow .bk-resto-flow__inputs span {
  transform: translateY(-8px);
  opacity: 0.6;
}
.bk-cc-flow.is-inview .bk-resto-flow__inputs span {
  transform: translateY(0);
  opacity: 1;
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-cc-flow.is-inview .bk-resto-flow__inputs span:nth-child(1) { animation-delay: 30ms; }
.bk-cc-flow.is-inview .bk-resto-flow__inputs span:nth-child(2) { animation-delay: 70ms; }
.bk-cc-flow.is-inview .bk-resto-flow__inputs span:nth-child(3) { animation-delay: 110ms; }
.bk-cc-flow.is-inview .bk-resto-flow__inputs span:nth-child(4) { animation-delay: 150ms; }
.bk-cc-flow.is-inview .bk-resto-flow__inputs span:nth-child(5) { animation-delay: 190ms; }
.bk-cc-flow.is-inview .bk-resto-flow__inputs span:nth-child(6) { animation-delay: 230ms; }
.bk-cc-flow.is-inview .bk-resto-flow__inputs span:nth-child(7) { animation-delay: 270ms; }
.bk-cc-flow__out {
  flex-direction: column;
  align-items: stretch;
  gap: 0.55rem;
}
.bk-cc-flow__out ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-cc-flow__out li {
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.7rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-cc-dash.is-inview .bk-br-table tbody tr {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-cc-dash.is-inview .bk-br-table tbody tr:nth-child(1) { animation-delay: 50ms; }
.bk-cc-dash.is-inview .bk-br-table tbody tr:nth-child(2) { animation-delay: 110ms; }
.bk-cc-dash.is-inview .bk-br-table tbody tr:nth-child(3) { animation-delay: 170ms; }
.bk-cc-progress {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-cc-progress span { color: #ff6b47; }
.bk-cc-progress span + span::before {
  content: "→";
  margin-right: 0.55rem;
  color: #ff6b47;
}
.bk-cc-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-cc-band .bk-card { background: #fff; }
.bk-cc-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 1rem;
  margin: 0;
  font-size: 0.875rem;
  color: #5b6470;
}
.bk-cc-related > span {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-cc-systems {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem 0.65rem;
  padding: 1.5rem 1.2rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  min-height: 10rem;
}
.bk-cc-systems > span:not([aria-hidden="true"]) {
  padding: 0.65rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cc-systems > span[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 800;
}
.bk-cc-systems.is-inview > span:not([aria-hidden="true"]) {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-cc-systems.is-inview > span:nth-child(1) { animation-delay: 40ms; }
.bk-cc-systems.is-inview > span:nth-child(3) { animation-delay: 140ms; }
.bk-cc-systems.is-inview > span:nth-child(5) { animation-delay: 240ms; }
html:not(.bk-js) .bk-cc-flow .bk-resto-flow__inputs span,
html:not(.bk-js) .bk-cc-workspace__row {
  opacity: 1;
  transform: none;
}
@media (min-width: 768px) {
  .bk-cc-dash.is-inview .bk-br-table tbody tr { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bk-cc-flow .bk-resto-flow__inputs span,
  .bk-cc-flow.is-inview .bk-resto-flow__inputs span,
  .bk-cc-workspace.is-inview .bk-cc-workspace__row,
  .bk-cc-dash.is-inview .bk-br-table tbody tr,
  .bk-cc-systems.is-inview > span:not([aria-hidden="true"]),
  .bk-cc-workspace.is-inview .bk-cc-status-swap__from,
  .bk-cc-workspace.is-inview .bk-cc-status-swap__to {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* Multi-location bookkeeping services */
.bk-ml-glow {
  position: relative;
}
.bk-ml-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.16), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-ml-glow > * {
  position: relative;
  z-index: 1;
}
.bk-ml-board {
  position: relative;
  z-index: 2;
  margin: -2.75rem 0.85rem 0;
  padding: 0.75rem 0.85rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.9rem;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}
@media (max-width: 639px) {
  .bk-ml-board {
    margin: 0.75rem 0 0;
  }
}
.bk-ml-board__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.55rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ml-board__locs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-ml-board__locs span {
  padding: 0.35rem 0.55rem;
  border-radius: 0.55rem;
  border: 1px dashed #d4d4cc;
  background: #fafaf7;
  font-size: 0.72rem;
  font-weight: 700;
  color: #0f172a;
  opacity: 0.55;
  transform: translateY(6px);
}
.bk-ml-board.is-inview .bk-ml-board__locs span {
  opacity: 1;
  transform: none;
  border-style: solid;
  border-color: #e8e8e3;
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-ml-board.is-inview .bk-ml-board__locs span:nth-child(1) { animation-delay: 60ms; }
.bk-ml-board.is-inview .bk-ml-board__locs span:nth-child(2) { animation-delay: 130ms; }
.bk-ml-board.is-inview .bk-ml-board__locs span:nth-child(3) { animation-delay: 200ms; }
.bk-ml-board__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  font-size: 0.95rem;
  margin: 0.35rem 0;
  line-height: 1;
}
.bk-ml-board__hub,
.bk-ml-board__out {
  padding: 0.45rem 0.6rem;
  border-radius: 0.55rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ml-board__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-ml-board__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  color: #15803d;
}
.bk-ml-records {
  display: grid;
  gap: 0.65rem;
}
@media (min-width: 640px) {
  .bk-ml-records {
    grid-template-columns: 1fr 1fr;
  }
  .bk-ml-records__wide {
    grid-column: 1 / -1;
  }
}
.bk-ml-join {
  display: flex;
  justify-content: center;
  margin: 0.85rem 0 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-ml-join span::before {
  content: "↓ ";
}
.bk-ml-dash.is-inview .bk-br-table tbody tr {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ml-dash.is-inview .bk-br-table tbody tr:nth-child(1) { animation-delay: 50ms; }
.bk-ml-dash.is-inview .bk-br-table tbody tr:nth-child(2) { animation-delay: 110ms; }
.bk-ml-dash.is-inview .bk-br-table tbody tr:nth-child(3) { animation-delay: 170ms; }
.bk-ml-progress {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ml-progress span { color: #ff6b47; }
.bk-ml-progress span + span::before {
  content: "→";
  margin-right: 0.55rem;
  color: #ff6b47;
}
.bk-ml-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-ml-band .bk-card { background: #fff; }
.bk-ml-compare {
  display: grid;
  gap: 0.65rem;
}
@media (min-width: 480px) {
  .bk-ml-compare {
    grid-template-columns: 1fr 1fr;
  }
}
.bk-ml-compare > div {
  padding: 0.85rem 0.95rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.85rem;
  background: #fff;
}
.bk-ml-compare strong {
  display: block;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #0f172a;
}
.bk-ml-compare p {
  margin: 0.35rem 0 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #5b6470;
}
.bk-ml-entity {
  margin: 0;
  font-size: 0.9rem;
}
.bk-ml-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 1rem;
  margin: 0;
  font-size: 0.875rem;
  color: #5b6470;
}
.bk-ml-related > span {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-ml-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-ml-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-ml-pipe {
  padding: 1.15rem 1.1rem 1.2rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
}
.bk-ml-pipe__label {
  margin: 0 0 0.55rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ml-pipe__in {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-ml-pipe__in span {
  padding: 0.35rem 0.55rem;
  border-radius: 0.55rem;
  border: 1px dashed #d4d4cc;
  background: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  color: #0f172a;
  opacity: 0.6;
  transform: translateY(6px);
}
.bk-ml-pipe.is-inview .bk-ml-pipe__in span {
  opacity: 1;
  transform: none;
  border-style: solid;
  border-color: #e8e8e3;
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-ml-pipe.is-inview .bk-ml-pipe__in span:nth-child(1) { animation-delay: 40ms; }
.bk-ml-pipe.is-inview .bk-ml-pipe__in span:nth-child(2) { animation-delay: 90ms; }
.bk-ml-pipe.is-inview .bk-ml-pipe__in span:nth-child(3) { animation-delay: 140ms; }
.bk-ml-pipe.is-inview .bk-ml-pipe__in span:nth-child(4) { animation-delay: 190ms; }
.bk-ml-pipe.is-inview .bk-ml-pipe__in span:nth-child(5) { animation-delay: 240ms; }
.bk-ml-pipe__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  margin: 0.55rem 0;
  line-height: 1;
}
.bk-ml-pipe__hub,
.bk-ml-pipe__out {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  padding: 0.7rem 0.8rem;
  border-radius: 0.7rem;
}
.bk-ml-pipe__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-ml-pipe__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-ml-pipe__hub strong,
.bk-ml-pipe__out strong {
  font-size: 0.72rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ml-pipe__hub span,
.bk-ml-pipe__out span {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
html:not(.bk-js) .bk-ml-board__locs span,
html:not(.bk-js) .bk-ml-pipe__in span {
  opacity: 1;
  transform: none;
}
@media (min-width: 768px) {
  .bk-ml-dash.is-inview .bk-br-table tbody tr { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bk-ml-board.is-inview .bk-ml-board__locs span,
  .bk-ml-pipe.is-inview .bk-ml-pipe__in span,
  .bk-ml-dash.is-inview .bk-br-table tbody tr {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* =====================================================================
   Adjusting journal entry services (.bk-aje-*)
   ===================================================================== */
.bk-aje-glow {
  position: relative;
}
.bk-aje-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.16), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-aje-glow > * {
  position: relative;
  z-index: 1;
}
.bk-aje-board {
  position: relative;
  z-index: 2;
  margin: -2.75rem 0.85rem 0;
  padding: 0.75rem 0.85rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.9rem;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}
@media (max-width: 639px) {
  .bk-aje-board {
    margin: 0.75rem 0 0;
  }
}
.bk-aje-board__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-aje-board__label {
  margin: 0 0 0.4rem;
  font-size: 0.72rem;
  font-weight: 800;
  color: #0f172a;
}
.bk-aje-board__rows {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.35rem;
}
.bk-aje-board__rows li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.35rem 0.5rem;
  border-radius: 0.5rem;
  background: #fafaf7;
  border: 1px solid #e8e8e3;
  font-size: 0.72rem;
  font-weight: 700;
  color: #0f172a;
  opacity: 0.55;
  transform: translateY(6px);
}
.bk-aje-board.is-inview .bk-aje-board__rows li {
  opacity: 1;
  transform: none;
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-aje-board.is-inview .bk-aje-board__rows li:nth-child(1) { animation-delay: 60ms; }
.bk-aje-board.is-inview .bk-aje-board__rows li:nth-child(2) { animation-delay: 130ms; }
.bk-aje-board.is-inview .bk-aje-board__rows li:nth-child(3) { animation-delay: 200ms; }
.bk-aje-board__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.5rem;
}
.bk-aje-board__chips span {
  padding: 0.22rem 0.5rem;
  border-radius: 999px;
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
  font-size: 0.65rem;
  font-weight: 700;
  color: #c2410c;
}
.bk-aje-strip {
  display: grid;
  gap: 0.75rem;
  position: relative;
}
@media (min-width: 640px) {
  .bk-aje-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .bk-aje-strip::before {
    content: "";
    position: absolute;
    top: 1.55rem;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, rgba(255, 107, 71, 0.15), rgba(255, 107, 71, 0.55), rgba(255, 107, 71, 0.15));
    transform: scaleX(0);
    transform-origin: left center;
    pointer-events: none;
  }
  .bk-aje-strip.is-inview::before {
    transform: scaleX(1);
    transition: transform 700ms var(--bk-ease);
  }
}
.bk-aje-strip__item {
  position: relative;
  z-index: 1;
  padding: 1.05rem 1.1rem 1.15rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  text-align: center;
}
.bk-aje-strip__item .bk-card__icon {
  margin-inline: auto;
}
.bk-aje-friction {
  padding: 1.15rem 1.1rem 1.2rem;
  border: 1px solid rgba(255, 107, 71, 0.18);
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fffdfb 55%, #fff8f6 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-aje-friction__label {
  margin: 0 0 0.75rem;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-aje-friction ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.55rem;
}
.bk-aje-friction li {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.7rem 0.75rem;
  border-radius: 0.75rem;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-aje-friction__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.7rem;
  height: 1.7rem;
  flex-shrink: 0;
  border-radius: 999px;
  background: #fff7ed;
  color: #c2410c;
  border: 1px solid #fed7aa;
}
.bk-aje-friction__icon svg {
  width: 0.9rem;
  height: 0.9rem;
}
.bk-aje-dash.is-inview .bk-br-table tbody tr {
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-aje-dash.is-inview .bk-br-table tbody tr:nth-child(1) { animation-delay: 50ms; }
.bk-aje-dash.is-inview .bk-br-table tbody tr:nth-child(2) { animation-delay: 110ms; }
.bk-aje-dash.is-inview .bk-br-table tbody tr:nth-child(3) { animation-delay: 170ms; }
.bk-aje-dash.is-inview .bk-br-table tbody tr:nth-child(4) { animation-delay: 230ms; }
.bk-aje-dash.is-inview .bk-br-table tbody tr:nth-child(5) { animation-delay: 290ms; }
.bk-aje-progress {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-aje-progress span { color: #ff6b47; }
.bk-aje-progress span + span::before {
  content: "→";
  margin-right: 0.55rem;
  color: #ff6b47;
}
.bk-aje-midcta {
  position: relative;
  overflow: hidden;
}
.bk-aje-midcta::after {
  content: "";
  position: absolute;
  right: -1.25rem;
  bottom: -1.5rem;
  width: 7.5rem;
  height: 7.5rem;
  border-radius: 1rem;
  border: 1px dashed rgba(255, 107, 71, 0.28);
  background:
    linear-gradient(#fff8f6, #fff8f6) padding-box,
    repeating-linear-gradient(180deg, rgba(255, 107, 71, 0.12) 0 2px, transparent 2px 10px);
  opacity: 0.7;
  pointer-events: none;
}
.bk-aje-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-aje-band .bk-card { background: #fff; }
.bk-aje-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-aje-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-aje-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-aje-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-aje-collab {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}
.bk-aje-collab article {
  padding: 1.05rem 1rem 1.15rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.9rem;
  background: #fff;
}
.bk-aje-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-aje-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-aje-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
html:not(.bk-js) .bk-aje-board__rows li {
  opacity: 1;
  transform: none;
}
@media (min-width: 768px) {
  .bk-aje-dash.is-inview .bk-br-table tbody tr { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bk-aje-board.is-inview .bk-aje-board__rows li,
  .bk-aje-dash.is-inview .bk-br-table tbody tr {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
  .bk-aje-strip::before,
  .bk-aje-strip.is-inview::before {
    transform: none;
    transition: none;
  }
}

/* =====================================================================
   Bookkeeping receipt management (.bk-rm-*)
   ===================================================================== */
.bk-rm-glow {
  position: relative;
}
.bk-rm-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.16), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-rm-glow > * {
  position: relative;
  z-index: 1;
}
.bk-rm-board {
  position: relative;
  z-index: 2;
  margin: -2.75rem 0.85rem 0;
  padding: 0.75rem 0.85rem 0.85rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.9rem;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}
@media (max-width: 639px) {
  .bk-rm-board {
    margin: 0.75rem 0 0;
  }
}
.bk-rm-board__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.55rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-rm-board__in {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}
.bk-rm-board__in span {
  padding: 0.32rem 0.5rem;
  border-radius: 0.5rem;
  border: 1px dashed #d4d4cc;
  background: #fafaf7;
  font-size: 0.7rem;
  font-weight: 700;
  color: #0f172a;
  opacity: 0.55;
  transform: translateY(6px);
}
.bk-rm-board.is-inview .bk-rm-board__in span {
  opacity: 1;
  transform: none;
  border-style: solid;
  border-color: #e8e8e3;
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-rm-board.is-inview .bk-rm-board__in span:nth-child(1) { animation-delay: 40ms; }
.bk-rm-board.is-inview .bk-rm-board__in span:nth-child(2) { animation-delay: 90ms; }
.bk-rm-board.is-inview .bk-rm-board__in span:nth-child(3) { animation-delay: 140ms; }
.bk-rm-board.is-inview .bk-rm-board__in span:nth-child(4) { animation-delay: 190ms; }
.bk-rm-board__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  font-size: 0.95rem;
  margin: 0.35rem 0;
  line-height: 1;
}
.bk-rm-board__hub {
  padding: 0.45rem 0.6rem;
  border-radius: 0.55rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-rm-board__out {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
}
.bk-rm-status--missing {
  background: #fff7ed;
  color: #c2410c;
  border-color: #fed7aa;
}
.bk-rm-scatter {
  padding: 1.15rem 1.1rem 1.2rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-rm-scatter__label {
  margin: 0 0 0.5rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-rm-scatter__in {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-rm-scatter__in span {
  padding: 0.38rem 0.6rem;
  border-radius: 0.55rem;
  background: #fff;
  border: 1px dashed #d4d4cc;
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
  opacity: 0.6;
  transform: translateY(6px);
}
.bk-rm-scatter.is-inview .bk-rm-scatter__in span {
  opacity: 1;
  transform: none;
  border-style: solid;
  border-color: #e8e8e3;
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-rm-scatter.is-inview .bk-rm-scatter__in span:nth-child(1) { animation-delay: 40ms; }
.bk-rm-scatter.is-inview .bk-rm-scatter__in span:nth-child(2) { animation-delay: 90ms; }
.bk-rm-scatter.is-inview .bk-rm-scatter__in span:nth-child(3) { animation-delay: 140ms; }
.bk-rm-scatter.is-inview .bk-rm-scatter__in span:nth-child(4) { animation-delay: 190ms; }
.bk-rm-scatter__arrow {
  text-align: center;
  color: #ff6b47;
  font-weight: 700;
  margin: 0.55rem 0;
  line-height: 1;
}
.bk-rm-scatter__chain {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}
.bk-rm-scatter__chain li {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.55rem 0.7rem;
  border-radius: 0.65rem;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.85rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-rm-scatter__chain li::before {
  content: "→";
  color: #ff6b47;
  font-weight: 800;
}
.bk-rm-scatter__out {
  padding: 0.7rem 0.8rem;
  border-radius: 0.7rem;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-rm-dash.is-inview .bk-br-table tbody tr {
  animation: bk-uk-row 480ms var(--bk-ease) both;
}
.bk-rm-dash.is-inview .bk-br-table tbody tr:nth-child(1) { animation-delay: 50ms; }
.bk-rm-dash.is-inview .bk-br-table tbody tr:nth-child(2) { animation-delay: 110ms; }
.bk-rm-dash.is-inview .bk-br-table tbody tr:nth-child(3) { animation-delay: 170ms; }
.bk-rm-dash.is-inview .bk-br-table tbody tr:nth-child(4) { animation-delay: 230ms; }
.bk-rm-dash.is-inview .bk-br-table tbody tr:nth-child(5) { animation-delay: 290ms; }
.bk-rm-progress {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-rm-progress span { color: #ff6b47; }
.bk-rm-progress span + span::before {
  content: "→";
  margin-right: 0.55rem;
  color: #ff6b47;
}
.bk-rm-midcta {
  position: relative;
  overflow: hidden;
}
.bk-rm-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-rm-band .bk-card { background: #fff; }
.bk-rm-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-rm-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-rm-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-rm-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-rm-collab {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}
.bk-rm-collab article {
  padding: 1.05rem 1rem 1.15rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.9rem;
  background: #fff;
}
.bk-rm-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-rm-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-rm-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
html:not(.bk-js) .bk-rm-board__in span,
html:not(.bk-js) .bk-rm-scatter__in span {
  opacity: 1;
  transform: none;
}
@media (min-width: 768px) {
  .bk-rm-dash.is-inview .bk-br-table tbody tr { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
  .bk-rm-board.is-inview .bk-rm-board__in span,
  .bk-rm-scatter.is-inview .bk-rm-scatter__in span,
  .bk-rm-dash.is-inview .bk-br-table tbody tr {
    animation: none !important;
    transform: none;
    opacity: 1;
  }
}

/* =====================================================================
   Child care bookkeeping services (.bk-ccare-*)
   ===================================================================== */
.bk-ccare-glow {
  position: relative;
}
.bk-ccare-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.14), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-ccare-glow > * {
  position: relative;
  z-index: 1;
}
.bk-ccare-records {
  display: grid;
  gap: 0.65rem;
}
@media (min-width: 640px) {
  .bk-ccare-records {
    grid-template-columns: 1fr 1fr;
  }
  .bk-ccare-records__wide {
    grid-column: 1 / -1;
  }
}
.bk-ccare-rhythm {
  display: grid;
  gap: 0.75rem;
  position: relative;
}
@media (min-width: 640px) {
  .bk-ccare-rhythm {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .bk-ccare-rhythm::before {
    content: "";
    position: absolute;
    top: 1.55rem;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, rgba(255, 107, 71, 0.15), rgba(255, 107, 71, 0.55), rgba(255, 107, 71, 0.15));
    transform: scaleX(0);
    transform-origin: left center;
    pointer-events: none;
  }
  .bk-ccare-rhythm.is-inview::before {
    transform: scaleX(1);
    transition: transform 700ms var(--bk-ease);
  }
}
.bk-ccare-rhythm__item {
  position: relative;
  z-index: 1;
  padding: 1.05rem 1.1rem 1.15rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  text-align: center;
}
.bk-ccare-rhythm__item .bk-card__icon {
  margin-inline: auto;
}
.bk-ccare-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ccare-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-ccare-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-ccare-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-ccare-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-ccare-check.is-inview .bk-checklist__list li:nth-child(5) { animation-delay: 240ms; }
.bk-ccare-check.is-inview .bk-checklist__list li:nth-child(6) { animation-delay: 290ms; }
.bk-ccare-check.is-inview .bk-checklist__list li:nth-child(7) { animation-delay: 340ms; }
.bk-ccare-progress {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ccare-progress span { color: #ff6b47; }
.bk-ccare-progress span + span::before {
  content: "→";
  margin-right: 0.55rem;
  color: #ff6b47;
}
.bk-ccare-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-ccare-band .bk-card { background: #fff; }
.bk-ccare-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-ccare-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-ccare-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-ccare-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-ccare-collab {
  padding: 1.25rem 1.15rem 1.35rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-ccare-collab__node,
.bk-ccare-collab__hub,
.bk-ccare-collab__out {
  padding: 0.75rem 0.9rem;
  border-radius: 0.75rem;
  font-size: 0.9rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ccare-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-ccare-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-ccare-collab__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-ccare-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  margin: 0.45rem 0;
  line-height: 1;
}
.bk-ccare-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ccare-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ccare-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (prefers-reduced-motion: reduce) {
  .bk-ccare-check.is-inview .bk-checklist__list li {
    animation: none !important;
  }
  .bk-ccare-rhythm::before,
  .bk-ccare-rhythm.is-inview::before {
    transform: none;
    transition: none;
  }
}

/* =====================================================================
   IT company bookkeeping services (.bk-it-*)
   ===================================================================== */
.bk-it-glow {
  position: relative;
}
.bk-it-glow::before {
  content: "";
  position: absolute;
  inset: 10% 6% auto;
  height: 72%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.14), transparent 68%);
  pointer-events: none;
  z-index: 0;
}
.bk-it-glow > * {
  position: relative;
  z-index: 1;
}
.bk-it-records {
  display: grid;
  gap: 0.65rem;
}
@media (min-width: 640px) {
  .bk-it-records {
    grid-template-columns: 1fr 1fr;
  }
}
.bk-it-rhythm {
  display: grid;
  gap: 0.75rem;
  position: relative;
}
@media (min-width: 640px) {
  .bk-it-rhythm {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .bk-it-rhythm::before {
    content: "";
    position: absolute;
    top: 1.55rem;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, rgba(255, 107, 71, 0.15), rgba(255, 107, 71, 0.55), rgba(255, 107, 71, 0.15));
    transform: scaleX(0);
    transform-origin: left center;
    pointer-events: none;
  }
  .bk-it-rhythm.is-inview::before {
    transform: scaleX(1);
    transition: transform 700ms var(--bk-ease);
  }
}
.bk-it-rhythm__item {
  position: relative;
  z-index: 1;
  padding: 1.05rem 1.1rem 1.15rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: #fff;
  text-align: center;
}
.bk-it-rhythm__item .bk-card__icon {
  margin-inline: auto;
}
.bk-it-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-it-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-it-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-it-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-it-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-it-check.is-inview .bk-checklist__list li:nth-child(5) { animation-delay: 240ms; }
.bk-it-check.is-inview .bk-checklist__list li:nth-child(6) { animation-delay: 290ms; }
.bk-it-check.is-inview .bk-checklist__list li:nth-child(7) { animation-delay: 340ms; }
.bk-it-band {
  background: linear-gradient(180deg, #fff6f3 0%, #fffdfb 100%);
  border-block: 1px solid rgba(255, 107, 71, 0.12);
}
.bk-it-band .bk-card { background: #fff; }
.bk-it-audience {
  display: grid;
  gap: 0.75rem;
  align-items: stretch;
}
@media (min-width: 640px) {
  .bk-it-audience {
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: 1fr;
  }
}
.bk-it-audience__card {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  height: 100%;
  min-height: 5.5rem;
  margin: 0;
  padding: 0.85rem 0.95rem;
  border: 1px solid #e8e8e3;
  border-radius: 0.85rem;
  background: #fff;
  transition: border-color 200ms var(--bk-ease), transform 200ms var(--bk-ease), box-shadow 200ms var(--bk-ease);
}
.bk-it-audience__card:hover {
  border-color: rgba(255, 107, 71, 0.35);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
}
.bk-it-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.45rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-it-audience__icon svg {
  width: 0.9rem;
  height: 0.9rem;
}
.bk-it-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
  line-height: 1.25;
}
.bk-it-audience__text {
  margin: 0.25rem 0 0;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.35;
  color: #0f172a;
}
@media (prefers-reduced-motion: reduce) {
  .bk-it-audience__card:hover {
    transform: none;
  }
}
.bk-it-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-it-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-it-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.45;
  color: #0f172a;
}
.bk-it-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-it-flow {
  padding: 1.35rem 1.2rem 1.45rem;
  border: 1px solid #e8e8e3;
  border-radius: var(--bk-radius, 1rem);
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-it-flow__sources {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}
.bk-it-flow__sources span,
.bk-it-flow__hub,
.bk-it-flow__out {
  padding: 0.7rem 0.85rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-it-flow__sources span {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-it-flow__hub {
  display: inline-block;
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-it-flow__out {
  display: inline-block;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-it-flow__arrow {
  color: #ff6b47;
  font-weight: 700;
  margin: 0.55rem 0;
  line-height: 1;
}
.bk-it-flow.is-inview .bk-it-flow__sources span {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-it-flow.is-inview .bk-it-flow__sources span:nth-child(1) { animation-delay: 40ms; }
.bk-it-flow.is-inview .bk-it-flow__sources span:nth-child(2) { animation-delay: 80ms; }
.bk-it-flow.is-inview .bk-it-flow__sources span:nth-child(3) { animation-delay: 120ms; }
.bk-it-flow.is-inview .bk-it-flow__sources span:nth-child(4) { animation-delay: 160ms; }
.bk-it-flow.is-inview .bk-it-flow__sources span:nth-child(5) { animation-delay: 200ms; }
.bk-it-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-it-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-it-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (prefers-reduced-motion: reduce) {
  .bk-it-check.is-inview .bk-checklist__list li,
  .bk-it-flow.is-inview .bk-it-flow__sources span {
    animation: none !important;
  }
  .bk-it-rhythm::before,
  .bk-it-rhythm.is-inview::before {
    transform: none;
    transition: none;
  }
}

/* ============================================================
   Consulting firm bookkeeping — compact page helpers (.bk-cf-*)
   ============================================================ */
.bk-page--compact .bk-cf-glow {
  position: relative;
}
.bk-page--compact .bk-cf-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-cf-glow > * {
  position: relative;
  z-index: 1;
}
.bk-cf-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-cf-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 1rem 1.05rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-cf-trust__item:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-cf-trust__item .bk-card__icon {
  width: 2.35rem;
  height: 2.35rem;
}
.bk-cf-trust__item span {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}
.bk-cf-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-cf-records__wide {
  grid-column: 1 / -1;
}
.bk-cf-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-cf-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-cf-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-cf-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-cf-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-cf-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-cf-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-cf-check.is-inview .bk-checklist__list li:nth-child(5) { animation-delay: 240ms; }
.bk-cf-audience {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
  align-items: stretch;
}
.bk-cf-audience__card {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  height: 100%;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-cf-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-cf-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.45rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-cf-audience__icon svg {
  width: 0.9rem;
  height: 0.9rem;
}
.bk-cf-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-cf-audience__text {
  margin: 0;
  flex: 1;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-cf-audience__wide {
  grid-column: 1 / -1;
}
.bk-cf-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0.85rem 0 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-cf-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-cf-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-cf-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-cf-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.55rem 0.65rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-cf-collab__node,
.bk-cf-collab__hub,
.bk-cf-collab__out {
  padding: 0.7rem 0.95rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cf-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-cf-collab__hub {
  display: inline-block;
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-cf-collab__out {
  display: inline-block;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-cf-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-cf-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-cf-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cf-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (max-width: 900px) {
  .bk-cf-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-cf-audience {
    grid-template-columns: 1fr;
  }
  .bk-cf-audience__wide {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .bk-cf-trust {
    grid-template-columns: 1fr;
  }
  .bk-cf-records {
    grid-template-columns: 1fr;
  }
  .bk-cf-records__wide {
    grid-column: auto;
  }
  .bk-cf-collab__arrow {
    transform: rotate(90deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-cf-check.is-inview .bk-checklist__list li {
    animation: none !important;
  }
  .bk-cf-trust__item:hover,
  .bk-cf-audience__card:hover {
    transform: none;
  }
}

/* ============================================================
   Creative professionals bookkeeping — compact helpers (.bk-cp-*)
   ============================================================ */
.bk-page--compact .bk-cp-glow {
  position: relative;
}
.bk-page--compact .bk-cp-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-cp-glow > * {
  position: relative;
  z-index: 1;
}
.bk-cp-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-cp-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 1rem 1.05rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-cp-trust__item:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-cp-trust__item .bk-card__icon {
  width: 2.35rem;
  height: 2.35rem;
}
.bk-cp-trust__item span:last-child {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}
.bk-cp-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-cp-records__wide {
  grid-column: 1 / -1;
}
.bk-cp-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-cp-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-cp-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-cp-flow li {
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cp-flow li:not([aria-hidden="true"]) {
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
}
.bk-cp-flow li[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
}
.bk-cp-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-cp-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-cp-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-cp-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-cp-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-cp-check.is-inview .bk-checklist__list li:nth-child(5) { animation-delay: 240ms; }
.bk-cp-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
  align-items: stretch;
}
.bk-cp-audience__card {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  height: 100%;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-cp-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-cp-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.45rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-cp-audience__icon svg {
  width: 0.9rem;
  height: 0.9rem;
}
.bk-cp-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-cp-audience__text {
  margin: 0;
  flex: 1;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-cp-audience__wide {
  grid-column: 1 / -1;
}
.bk-cp-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0.85rem 0 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-cp-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-cp-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-cp-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-cp-midcta {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-cp-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.55rem 0.65rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-cp-collab__node,
.bk-cp-collab__hub,
.bk-cp-collab__out {
  padding: 0.7rem 0.95rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cp-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-cp-collab__hub {
  display: inline-block;
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-cp-collab__out {
  display: inline-block;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-cp-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-cp-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-cp-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cp-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (max-width: 900px) {
  .bk-cp-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-cp-audience {
    grid-template-columns: 1fr;
  }
  .bk-cp-audience__wide {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .bk-cp-trust {
    grid-template-columns: 1fr;
  }
  .bk-cp-records {
    grid-template-columns: 1fr;
  }
  .bk-cp-records__wide {
    grid-column: auto;
  }
  .bk-cp-collab__arrow,
  .bk-cp-flow li[aria-hidden="true"] {
    transform: none;
  }
  .bk-cp-flow {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-cp-flow li[aria-hidden="true"] {
    transform: rotate(90deg);
    margin-left: 1.1rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-cp-check.is-inview .bk-checklist__list li {
    animation: none !important;
  }
  .bk-cp-trust__item:hover,
  .bk-cp-audience__card:hover {
    transform: none;
  }
}

/* ============================================================
   Sales tax bookkeeping — compact page helpers (.bk-st-*)
   ============================================================ */
.bk-page--compact .bk-st-glow {
  position: relative;
}
.bk-page--compact .bk-st-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-st-glow > * {
  position: relative;
  z-index: 1;
}
.bk-st-pipeline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.55rem 0.65rem;
  padding: 1rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-st-pipeline__node,
.bk-st-pipeline__hub,
.bk-st-pipeline__out {
  padding: 0.65rem 0.9rem;
  border-radius: 0.75rem;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-st-pipeline__node {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-st-pipeline__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-st-pipeline__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-st-pipeline__arrow {
  color: #ff6b47;
  font-weight: 700;
}
.bk-st-sources {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.bk-st-sources span {
  padding: 0.45rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-st-mismatch {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem;
  padding: 0.85rem 1rem;
  border-radius: 0.9rem;
  border: 1px dashed rgba(255, 107, 71, 0.35);
  background: #fff8f6;
}
.bk-st-mismatch__side {
  flex: 1 1 8rem;
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
  background: #fff;
  border: 1px solid #e8e8e3;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-st-mismatch__vs {
  color: #ff6b47;
  font-weight: 800;
  font-size: 1.1rem;
}
.bk-st-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-st-records__wide {
  grid-column: 1 / -1;
}
.bk-st-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-st-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-st-scope-label {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-st-sheet {
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease);
}
.bk-st-sheet:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
}
.bk-st-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  padding: 0.95rem 1.15rem;
  border-bottom: 1px solid #e8e8e3;
  background: #fafaf7;
}
.bk-st-meta__label {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-st-meta__value {
  margin: 0.2rem 0 0;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-st-rows {
  display: flex;
  flex-direction: column;
}
.bk-st-rows__head,
.bk-st-row {
  display: grid;
  grid-template-columns: 1.4fr 0.9fr 1.2fr;
  gap: 0.75rem;
  padding: 0.85rem 1.15rem;
  border-bottom: 1px solid #e8e8e3;
  font-size: 0.86rem;
}
.bk-st-rows__head {
  background: #fff;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-st-row span:nth-child(1) {
  color: #0f172a;
  font-weight: 600;
}
.bk-st-row span:nth-child(2) {
  color: #5b6470;
}
.bk-st-row span:nth-child(3) {
  color: #5b6470;
}
.bk-st-row--focus {
  background: #fff8f6;
}
.bk-st-sheet.is-inview .bk-st-row {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-st-sheet.is-inview .bk-st-row:nth-child(2) { animation-delay: 40ms; }
.bk-st-sheet.is-inview .bk-st-row:nth-child(3) { animation-delay: 90ms; }
.bk-st-sheet.is-inview .bk-st-row:nth-child(4) { animation-delay: 140ms; }
.bk-st-sheet.is-inview .bk-st-row:nth-child(5) { animation-delay: 190ms; }
.bk-st-sheet.is-inview .bk-st-row:nth-child(6) { animation-delay: 240ms; }
.bk-st-handoff {
  margin: 0;
  text-align: center;
  font-size: 0.88rem;
  font-weight: 700;
  color: #5b6470;
}
.bk-st-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.bk-st-chips span {
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-st-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
  align-items: stretch;
}
.bk-st-audience__card {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  height: 100%;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-st-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-st-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.45rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-st-audience__icon svg {
  width: 0.9rem;
  height: 0.9rem;
}
.bk-st-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-st-audience__text {
  margin: 0;
  flex: 1;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-st-audience__wide {
  grid-column: 1 / -1;
}
.bk-st-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0.85rem 0 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-st-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-st-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-st-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-st-collab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.55rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
  text-align: center;
}
.bk-st-collab__sources {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}
.bk-st-collab__sources span,
.bk-st-collab__node,
.bk-st-collab__hub,
.bk-st-collab__out {
  padding: 0.65rem 0.85rem;
  border-radius: 0.75rem;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-st-collab__sources span,
.bk-st-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-st-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-st-collab__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-st-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-st-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-st-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-st-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (max-width: 900px) {
  .bk-st-audience {
    grid-template-columns: 1fr;
  }
  .bk-st-audience__wide {
    grid-column: auto;
  }
  .bk-st-meta {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 700px) {
  .bk-st-rows__head {
    display: none;
  }
  .bk-st-row {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }
  .bk-st-row span:nth-child(2)::before {
    content: "Amount: ";
    font-weight: 700;
    color: #5b6470;
  }
  .bk-st-row span:nth-child(3)::before {
    content: "Notes: ";
    font-weight: 700;
    color: #5b6470;
  }
}
@media (max-width: 640px) {
  .bk-st-records {
    grid-template-columns: 1fr;
  }
  .bk-st-records__wide {
    grid-column: auto;
  }
  .bk-st-pipeline__arrow {
    transform: rotate(90deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-st-sheet.is-inview .bk-st-row {
    animation: none !important;
  }
  .bk-st-sheet:hover,
  .bk-st-audience__card:hover {
    transform: none;
  }
}

/* ============================================================
   Freelancers & sole traders bookkeeping — helpers (.bk-fl-*)
   ============================================================ */
.bk-page--compact .bk-fl-glow {
  position: relative;
}
.bk-page--compact .bk-fl-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-fl-glow > * {
  position: relative;
  z-index: 1;
}
.bk-fl-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-fl-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 1rem 1.05rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-fl-trust__item:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-fl-trust__item .bk-card__icon {
  width: 2.35rem;
  height: 2.35rem;
}
.bk-fl-trust__item span:last-child {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}
.bk-fl-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-fl-records__wide {
  grid-column: 1 / -1;
}
.bk-fl-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-fl-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-fl-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-fl-flow li {
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fl-flow li:not([aria-hidden="true"]) {
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
}
.bk-fl-flow li[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
}
.bk-fl-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-fl-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-fl-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-fl-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-fl-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-fl-check.is-inview .bk-checklist__list li:nth-child(5) { animation-delay: 240ms; }
.bk-fl-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
  align-items: stretch;
}
.bk-fl-audience__card {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  height: 100%;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-fl-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-fl-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.45rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-fl-audience__icon svg {
  width: 0.9rem;
  height: 0.9rem;
}
.bk-fl-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-fl-audience__text {
  margin: 0;
  flex: 1;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-fl-audience__wide {
  grid-column: 1 / -1;
}
.bk-fl-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0.85rem 0 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-fl-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-fl-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-fl-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-fl-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.55rem 0.65rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-fl-collab__node,
.bk-fl-collab__hub,
.bk-fl-collab__out {
  padding: 0.7rem 0.95rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fl-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-fl-collab__hub {
  display: inline-block;
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-fl-collab__out {
  display: inline-block;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-fl-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-fl-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-fl-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fl-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (max-width: 900px) {
  .bk-fl-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-fl-audience {
    grid-template-columns: 1fr;
  }
  .bk-fl-audience__wide {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .bk-fl-trust {
    grid-template-columns: 1fr;
  }
  .bk-fl-records {
    grid-template-columns: 1fr;
  }
  .bk-fl-records__wide {
    grid-column: auto;
  }
  .bk-fl-collab__arrow {
    transform: rotate(90deg);
  }
  .bk-fl-flow {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-fl-flow li[aria-hidden="true"] {
    transform: rotate(90deg);
    margin-left: 1.1rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-fl-check.is-inview .bk-checklist__list li {
    animation: none !important;
  }
  .bk-fl-trust__item:hover,
  .bk-fl-audience__card:hover {
    transform: none;
  }
}

/* ============================================================
   Cash-basis bookkeeping — compact page helpers (.bk-cb-*)
   ============================================================ */
.bk-page--compact .bk-cb-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-cb-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-cb-glow > * {
  position: relative;
  z-index: 1;
}
.bk-cb-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  padding: 0.85rem 1rem;
  list-style: none;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff8f6 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-cb-flow li {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.35;
}
.bk-cb-flow li:not([aria-hidden="true"]) {
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-weight: 700;
  color: #0f172a;
}
.bk-cb-flow li[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
}
.bk-cb-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-cb-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-cb-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-cb-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-cb-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-cb-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-cb-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-cb-check.is-inview .bk-checklist__list li:nth-child(5) { animation-delay: 240ms; }
.bk-cb-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-cb-audience__card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0.75rem;
  height: 100%;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-cb-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-cb-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-cb-audience__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-cb-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-cb-audience__text {
  margin: 0.25rem 0 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-cb-audience__wide {
  grid-column: 1 / -1;
}
.bk-cb-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0.85rem 0 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-cb-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-cb-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-cb-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-cb-collab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.65rem;
  padding: 1.35rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-cb-collab__sources {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.45rem;
}
.bk-cb-collab__sources span {
  padding: 0.55rem 0.8rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cb-collab__hub,
.bk-cb-collab__out {
  padding: 0.7rem 1.1rem;
  border-radius: 0.75rem;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cb-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-cb-collab__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-cb-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-cb-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-cb-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cb-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (max-width: 900px) {
  .bk-cb-audience {
    grid-template-columns: 1fr;
  }
  .bk-cb-audience__wide {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .bk-cb-flow {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-cb-flow li[aria-hidden="true"] {
    transform: rotate(90deg);
    margin-left: 1.1rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-cb-check.is-inview .bk-checklist__list li {
    animation: none !important;
  }
  .bk-cb-audience__card:hover {
    transform: none;
  }
}

/* ============================================================
   FreshBooks bookkeeping — compact page helpers (.bk-fb-*)
   ============================================================ */
.bk-page--compact .bk-fb-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-fb-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-fb-glow > * {
  position: relative;
  z-index: 1;
}
.bk-fb-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-fb-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 1rem 1.05rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-fb-trust__item:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-fb-trust__item .bk-card__icon {
  width: 2.35rem;
  height: 2.35rem;
}
.bk-fb-trust__item span:last-child {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}
.bk-fb-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-fb-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-fb-story {
  display: grid;
  gap: 0.85rem;
}
.bk-fb-story__panel {
  padding: 1.15rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-fb-story__panel--good {
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff8f6 100%);
  border-color: #ffd4c8;
}
.bk-fb-story__label {
  margin: 0 0 0.75rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-fb-story__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.bk-fb-story__chips span {
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.8rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fb-story__arrow {
  margin: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  text-align: center;
  line-height: 1;
}
.bk-fb-story__mid,
.bk-fb-story__bad {
  margin: 0;
  padding: 0.65rem 0.85rem;
  border-radius: 0.75rem;
  font-size: 0.88rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
.bk-fb-story__mid {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
  color: #0f172a;
}
.bk-fb-story__bad {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  color: #475569;
}
.bk-fb-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.4rem 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-fb-flow li {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.35;
}
.bk-fb-flow li:not([aria-hidden="true"]) {
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-weight: 700;
  color: #0f172a;
}
.bk-fb-flow li[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
}
.bk-fb-check.is-inview .bk-checklist__list li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-fb-check.is-inview .bk-checklist__list li:nth-child(1) { animation-delay: 40ms; }
.bk-fb-check.is-inview .bk-checklist__list li:nth-child(2) { animation-delay: 90ms; }
.bk-fb-check.is-inview .bk-checklist__list li:nth-child(3) { animation-delay: 140ms; }
.bk-fb-check.is-inview .bk-checklist__list li:nth-child(4) { animation-delay: 190ms; }
.bk-fb-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-fb-audience__card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0.75rem;
  height: 100%;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-fb-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-fb-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-fb-audience__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-fb-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-fb-audience__text {
  margin: 0.25rem 0 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-fb-audience__wide {
  grid-column: 1 / -1;
}
.bk-fb-midcta {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-fb-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.55rem 0.65rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-fb-collab__node,
.bk-fb-collab__hub,
.bk-fb-collab__out {
  padding: 0.7rem 0.95rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fb-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-fb-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-fb-collab__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-fb-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-fb-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-fb-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-fb-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (min-width: 900px) {
  .bk-fb-story {
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }
}
@media (max-width: 900px) {
  .bk-fb-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-fb-audience {
    grid-template-columns: 1fr;
  }
  .bk-fb-audience__wide {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .bk-fb-trust {
    grid-template-columns: 1fr;
  }
  .bk-fb-flow {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-fb-flow li[aria-hidden="true"] {
    transform: rotate(90deg);
    margin-left: 1.1rem;
  }
  .bk-fb-collab__arrow {
    transform: rotate(90deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-fb-check.is-inview .bk-checklist__list li {
    animation: none !important;
  }
  .bk-fb-trust__item:hover,
  .bk-fb-audience__card:hover {
    transform: none;
  }
}

/* ============================================================
   PayPal reconciliation — compact page helpers (.bk-pp-*)
   ============================================================ */
.bk-page--compact .bk-pp-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-pp-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-pp-glow > * {
  position: relative;
  z-index: 1;
}
.bk-pp-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-pp-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 1rem 1.05rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-pp-trust__item:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-pp-trust__item .bk-card__icon {
  width: 2.35rem;
  height: 2.35rem;
}
.bk-pp-trust__item span:last-child {
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.35;
}
.bk-pp-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-pp-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-pp-problems {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-pp-problem {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  margin: 0;
  padding: 0.95rem 1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-pp-problem p {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
}
.bk-pp-problem__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-pp-problem__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-pp-table-wrap {
  overflow: hidden;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-pp-table-wrap .bk-checklist__head {
  padding: 0.95rem 1.1rem;
  border-bottom: 1px solid #e8e8e3;
}
.bk-pp-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.88rem;
}
.bk-pp-table th,
.bk-pp-table td {
  padding: 0.75rem 1rem;
  text-align: left;
  border-bottom: 1px solid #f1f1ec;
  vertical-align: middle;
}
.bk-pp-table th {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #5b6470;
  background: #fafaf7;
}
.bk-pp-table tbody tr:last-child td {
  border-bottom: 0;
}
.bk-pp-table td:first-child {
  font-weight: 700;
  color: #0f172a;
}
.bk-pp-table td:nth-child(2) {
  color: #5b6470;
}
.bk-pp-workflow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  padding: 1.15rem 1.1rem;
  list-style: none;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff8f6 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-pp-workflow li {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.35;
}
.bk-pp-workflow li:not([aria-hidden="true"]) {
  padding: 0.5rem 0.8rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
  max-width: 14rem;
}
.bk-pp-workflow li[aria-hidden="true"] {
  color: #ff6b47;
  font-weight: 700;
}
.bk-pp-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-pp-audience__card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0.75rem;
  height: 100%;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-pp-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-pp-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-pp-audience__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-pp-audience__label {
  margin: 0;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-pp-audience__text {
  margin: 0.25rem 0 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-pp-audience__wide {
  grid-column: 1 / -1;
}
.bk-pp-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-pp-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-pp-why {
  display: grid;
  gap: 0.75rem;
}
.bk-pp-why__row {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  margin: 0;
  padding: 1.1rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-pp-why__row:hover {
  transform: translateY(-2px);
  border-color: #ffd4c8;
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.07);
}
.bk-pp-why__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.55rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-pp-why__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-pp-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.55rem 0.65rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-pp-collab__node,
.bk-pp-collab__hub,
.bk-pp-collab__out {
  padding: 0.7rem 0.95rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-pp-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-pp-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-pp-collab__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-pp-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 900px) {
  .bk-pp-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-pp-audience {
    grid-template-columns: 1fr;
  }
  .bk-pp-audience__wide {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .bk-pp-trust {
    grid-template-columns: 1fr;
  }
  .bk-pp-problems {
    grid-template-columns: 1fr;
  }
  .bk-pp-table {
    font-size: 0.8rem;
  }
  .bk-pp-table th,
  .bk-pp-table td {
    padding: 0.65rem 0.75rem;
  }
  .bk-pp-workflow {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-pp-workflow li[aria-hidden="true"] {
    transform: rotate(0deg);
    margin-left: 1.1rem;
  }
  .bk-pp-collab__arrow {
    transform: rotate(90deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-pp-trust__item:hover,
  .bk-pp-audience__card:hover,
  .bk-pp-why__row:hover {
    transform: none;
  }
}

/* ============================================================
   Recruitment agencies bookkeeping — helpers (.bk-ra-*)
   ============================================================ */
.bk-page--compact .bk-ra-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-ra-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-ra-glow > * {
  position: relative;
  z-index: 1;
}
.bk-ra-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ra-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-ra-trust__item:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-ra-trust__title {
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-ra-trust__text {
  font-size: 0.8rem;
  line-height: 1.4;
  color: #5b6470;
}
.bk-ra-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-ra-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-ra-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-ra-records__wide {
  grid-column: 1 / -1;
}
.bk-ra-record {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  margin: 0;
  padding: 0.95rem 1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-ra-record p {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
}
.bk-ra-record__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-ra-record__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-ra-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-ra-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #ff8f70);
  transition: width 0.7s var(--bk-ease);
}
.bk-ra-check.is-inview .bk-ra-dash__progress span {
  width: 100%;
}
.bk-ra-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-ra-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-ra-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-ra-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ra-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-ra-check.is-inview .bk-ra-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ra-check.is-inview .bk-ra-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-ra-check.is-inview .bk-ra-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-ra-check.is-inview .bk-ra-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-ra-check.is-inview .bk-ra-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-ra-types {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-ra-types__card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7rem;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-ra-types__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-ra-types__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.55rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-ra-types__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-ra-types__label {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 800;
  line-height: 1.35;
  color: #0f172a;
}
.bk-ra-qualify {
  display: grid;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: 46rem;
}
.bk-ra-qualify li {
  position: relative;
  margin: 0;
  padding: 0.7rem 0.9rem 0.7rem 2.15rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-ra-qualify li::before {
  content: "";
  position: absolute;
  left: 0.85rem;
  top: 0.95rem;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 999px;
  background: #ff6b47;
  box-shadow: inset 0 0 0 2px #fff4f0;
}
.bk-ra-midcta {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ra-midcta__label {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-ra-midcta__title {
  margin: 0.35rem 0 0;
  font-size: clamp(1.15rem, 2.2vw, 1.4rem);
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
  max-width: 36rem;
}
.bk-ra-sticky {
  display: none;
}
.bk-ra-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0.85rem 0 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-ra-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-ra-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-ra-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-ra-collab {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.55rem 0.65rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ra-collab__node,
.bk-ra-collab__hub,
.bk-ra-collab__out {
  padding: 0.7rem 0.95rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-ra-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-ra-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-ra-collab__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-ra-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-ra-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ra-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ra-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
@media (min-width: 1024px) {
  .bk-ra-sticky {
    position: fixed;
    left: 50%;
    bottom: 1.25rem;
    z-index: 40;
    display: flex;
    align-items: center;
    gap: 1rem;
    max-width: min(42rem, calc(100vw - 2.5rem));
    margin: 0;
    padding: 0.7rem 0.85rem 0.7rem 1.1rem;
    border-radius: 999px;
    border: 1px solid #e8e8e3;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.12);
    backdrop-filter: blur(8px);
    transform: translate(-50%, 120%);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.4s var(--bk-ease), opacity 0.4s ease;
  }
  .bk-ra-sticky.is-visible {
    transform: translate(-50%, 0);
    opacity: 1;
    pointer-events: auto;
  }
  .bk-ra-sticky[hidden] {
    display: none !important;
  }
  .bk-ra-sticky__text {
    margin: 0;
    font-size: 0.86rem;
    font-weight: 700;
    color: #0f172a;
    white-space: nowrap;
  }
  .bk-ra-sticky__actions {
    display: flex;
    align-items: center;
    gap: 0.45rem;
  }
  .bk-ra-sticky__btn {
    padding: 0.45rem 0.9rem;
    font-size: 0.82rem;
    border-radius: 999px;
  }
}
@media (max-width: 1100px) {
  .bk-ra-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-ra-types {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-ra-records {
    grid-template-columns: 1fr;
  }
  .bk-ra-records__wide {
    grid-column: auto;
  }
  .bk-ra-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-ra-types {
    grid-template-columns: 1fr;
  }
  .bk-ra-collab__arrow {
    transform: rotate(90deg);
  }
  .bk-ra-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-ra-check.is-inview .bk-ra-dash li {
    animation: none !important;
  }
  .bk-ra-trust__item:hover,
  .bk-ra-types__card:hover {
    transform: none;
  }
  .bk-ra-sticky,
  .bk-ra-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Subscription box bookkeeping — helpers (.bk-sb-*)
   ============================================================ */
.bk-page--compact .bk-sb-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-sb-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.12) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-sb-glow > * {
  position: relative;
  z-index: 1;
}
.bk-sb-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-sb-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-sb-trust__item:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-sb-trust__title {
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-sb-trust__text {
  font-size: 0.8rem;
  line-height: 1.4;
  color: #5b6470;
}
.bk-sb-flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  padding: 0.75rem 0.95rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-sb-flow span[aria-hidden="true"] {
  color: #ff6b47;
}
.bk-sb-takeaway {
  margin: 0;
  padding: 1.15rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #ffd4c8;
  background: linear-gradient(135deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.06);
}
.bk-sb-takeaway .bk-lead {
  margin-top: 0.5rem;
  color: #334155;
}
.bk-sb-records {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-sb-records__wide {
  grid-column: 1 / -1;
}
.bk-sb-record {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  margin: 0;
  padding: 0.95rem 1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-sb-record:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-sb-record p {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.4;
  color: #0f172a;
}
.bk-sb-record__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-sb-record__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-sb-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-sb-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #ff8f70);
  transition: width 0.7s var(--bk-ease);
}
.bk-sb-check.is-inview .bk-sb-dash__progress span {
  width: 100%;
}
.bk-sb-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-sb-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-sb-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-sb-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-sb-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-sb-check.is-inview .bk-sb-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-sb-check.is-inview .bk-sb-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-sb-check.is-inview .bk-sb-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-sb-check.is-inview .bk-sb-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-sb-check.is-inview .bk-sb-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-sb-qualify {
  display: grid;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: 46rem;
}
.bk-sb-qualify li {
  position: relative;
  margin: 0;
  padding: 0.7rem 0.9rem 0.7rem 2.15rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-sb-qualify li::before {
  content: "";
  position: absolute;
  left: 0.85rem;
  top: 0.95rem;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 999px;
  background: #ff6b47;
  box-shadow: inset 0 0 0 2px #fff4f0;
}
.bk-sb-boundary {
  margin: 0;
  padding: 1.25rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fafaf7 0%, #fff 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-sb-boundary__label {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-sb-boundary__text {
  margin: 0.5rem 0 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-sb-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-sb-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-sb-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-sb-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-sb-collab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  padding: 1.35rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 55%, #fff4f0 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-sb-collab__node,
.bk-sb-collab__hub,
.bk-sb-collab__out {
  width: 100%;
  max-width: 20rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-sb-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-sb-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-sb-collab__out {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-sb-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-sb-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-sb-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-sb-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-sb-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
.bk-sb-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-sb-mobile-cta {
    display: none;
  }
}
@media (min-width: 1024px) {
  .bk-sb-collab {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bk-sb-collab__arrow {
    transform: none;
  }
  .bk-sb-collab__node,
  .bk-sb-collab__hub,
  .bk-sb-collab__out {
    width: auto;
    max-width: none;
  }
}
@media (max-width: 1100px) {
  .bk-sb-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-sb-records {
    grid-template-columns: 1fr;
  }
  .bk-sb-records__wide {
    grid-column: auto;
  }
  .bk-sb-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-sb-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-sb-check.is-inview .bk-sb-dash li {
    animation: none !important;
  }
  .bk-sb-trust__item:hover,
  .bk-sb-record:hover {
    transform: none;
  }
  .bk-sb-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   New York bookkeeping — helpers (.bk-ny-*)
   ============================================================ */
.bk-page--compact .bk-ny-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-ny-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -12%;
  right: -8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-ny-glow::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 3.5rem;
  background: linear-gradient(180deg, transparent, rgba(15, 23, 42, 0.03));
  pointer-events: none;
  z-index: 0;
  opacity: 0.55;
}
.bk-page--compact .bk-ny-glow > * {
  position: relative;
  z-index: 1;
}
.bk-ny-remote {
  margin: 0;
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.88rem;
  line-height: 1.55;
  color: #475569;
}
.bk-ny-transform {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 0.75rem;
  align-items: stretch;
}
.bk-ny-transform__col {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-ny-transform__col--before {
  background: linear-gradient(165deg, #fafaf7 0%, #fff 100%);
}
.bk-ny-transform__col--after {
  border-color: #ffd4c8;
  background: linear-gradient(165deg, #fff8f5 0%, #fff 55%, #fafaf7 100%);
}
.bk-ny-transform__label {
  margin: 0 0 0.75rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ny-transform__col--after .bk-ny-transform__label {
  color: #ff6b47;
}
.bk-ny-transform__col ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.45rem;
}
.bk-ny-transform__col li {
  position: relative;
  margin: 0;
  padding: 0.45rem 0.55rem 0.45rem 1.65rem;
  border-radius: 0.55rem;
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.4;
  color: #334155;
  background: rgba(255, 255, 255, 0.65);
}
.bk-ny-transform__col--before li::before {
  content: "";
  position: absolute;
  left: 0.55rem;
  top: 0.72rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #cbd5e1;
}
.bk-ny-transform__col--after li::before {
  content: "";
  position: absolute;
  left: 0.5rem;
  top: 0.68rem;
  width: 0.55rem;
  height: 0.55rem;
  background: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-ny-transform__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  font-weight: 700;
  color: #ff6b47;
  line-height: 1;
}
.bk-ny-disclaimer {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 700;
  color: #ff6b47;
}
.bk-ny-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-ny-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #ff8f70);
  transition: width 0.7s var(--bk-ease);
}
.bk-ny-check.is-inview .bk-ny-dash__progress span {
  width: 100%;
}
.bk-ny-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-ny-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-ny-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-ny-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ny-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-ny-check.is-inview .bk-ny-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ny-check.is-inview .bk-ny-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-ny-check.is-inview .bk-ny-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-ny-check.is-inview .bk-ny-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-ny-check.is-inview .bk-ny-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-ny-check.is-inview .bk-ny-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-ny-audience__card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7rem;
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-ny-audience__card:hover {
  transform: translateY(-3px);
  border-color: #ffd4c8;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-ny-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.55rem;
  background: #fff4f0;
  color: #ff6b47;
}
.bk-ny-audience__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-ny-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-ny-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-ny-lock {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  margin: 0;
  padding: 0.55rem 0.65rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  border-radius: 0.65rem;
  background: #fff8f6;
  font-size: 0.88rem;
  line-height: 1.5;
  color: #475569;
}
.bk-ny-lock::before {
  content: "";
  flex-shrink: 0;
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.12rem;
  background: currentColor;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V8a4 4 0 018 0v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bk-ny-midcta {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ny-midcta__label {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-ny-midcta__title {
  margin: 0.35rem 0 0;
  font-size: clamp(1.15rem, 2.2vw, 1.4rem);
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
  max-width: 36rem;
}
.bk-ny-software {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}
.bk-ny-software__pill {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.55rem 0.85rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), border-color 0.35s ease, box-shadow 0.35s var(--bk-ease);
}
.bk-ny-software__pill::before {
  content: "";
  width: 0.85rem;
  height: 0.85rem;
  border-radius: 0.25rem;
  background: #fff4f0;
  color: #ff6b47;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 9h18M9 21V9'/%3E%3C/svg%3E") center / 0.7rem no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 9h18M9 21V9'/%3E%3C/svg%3E") center / 0.7rem no-repeat;
  background-color: currentColor;
}
.bk-ny-software__pill:hover {
  transform: translateY(-2px);
  border-color: #ffd4c8;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}
.bk-ny-boundary {
  margin: 0;
  padding: 1.05rem 1.1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
}
.bk-ny-boundary__text {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-ny-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #fafaf7 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ny-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ny-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ny-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
.bk-ny-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-ny-mobile-cta {
    display: none;
  }
}
@media (max-width: 767px) {
  .bk-ny-transform {
    grid-template-columns: 1fr;
  }
  .bk-ny-transform__arrow {
    transform: rotate(0deg);
    padding: 0.15rem 0;
  }
  .bk-ny-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-ny-check.is-inview .bk-ny-dash li {
    animation: none !important;
  }
  .bk-ny-audience__card:hover,
  .bk-ny-software__pill:hover {
    transform: none;
  }
  .bk-ny-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Dental bookkeeping — helpers (.bk-dental-*)
   ============================================================ */
.bk-page--compact .bk-dental-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-dental-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(13, 148, 136, 0.1) 0%, rgba(255, 107, 71, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-dental-glow > * {
  position: relative;
  z-index: 1;
}
.bk-dental-trustline {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #5b6470;
}
.bk-dental-scope {
  margin: 0;
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.88rem;
  line-height: 1.55;
  color: #475569;
}
.bk-dental-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-dental-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-dental-trust__item:hover {
  transform: translateY(-3px);
  border-color: #cce8e4;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-dental-trust__title {
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-dental-trust__text {
  font-size: 0.8rem;
  line-height: 1.4;
  color: #5b6470;
}
.bk-dental-flow {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-dental-flow__label {
  margin: 0 0 0.75rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-dental-flow__inputs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.bk-dental-flow__inputs span {
  padding: 0.45rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #334155;
}
.bk-dental-flow__arrow {
  display: flex;
  justify-content: center;
  padding: 0.55rem 0;
  color: #0d9488;
  font-weight: 700;
  line-height: 1;
}
.bk-dental-flow__out {
  padding: 0.95rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid rgba(13, 148, 136, 0.22);
  background: #f0fdfa;
  text-align: center;
}
.bk-dental-flow__out strong {
  display: block;
  font-size: 0.95rem;
  color: #0f172a;
}
.bk-dental-flow__out span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-dental-midcta {
  padding: 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
}
.bk-dental-midcta__text {
  margin: 0;
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-dental-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-dental-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-dental-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0d9488, #ff6b47);
  transition: width 0.7s var(--bk-ease);
}
.bk-dental-check.is-inview .bk-dental-dash__progress span {
  width: 100%;
}
.bk-dental-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-dental-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-dental-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-dental-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-dental-check.is-inview .bk-dental-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-dental-check.is-inview .bk-dental-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-dental-check.is-inview .bk-dental-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-dental-check.is-inview .bk-dental-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-dental-check.is-inview .bk-dental-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-dental-check.is-inview .bk-dental-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-dental-questions {
  margin: 0 1.1rem;
  padding: 0.85rem 0 0.55rem;
  border-top: 1px solid #f1f1ec;
}
.bk-dental-questions__label {
  margin: 0 0 0.55rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-dental-questions ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}
.bk-dental-questions li {
  padding: 0.45rem 0.65rem;
  border-radius: 0.55rem;
  background: #fafaf7;
  font-size: 0.84rem;
  color: #475569;
}
.bk-dental-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0.75rem 1.1rem 0.55rem;
  padding-top: 0.75rem;
  border-top: 1px solid #f1f1ec;
}
.bk-dental-tags__item {
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  color: #475569;
}
.bk-dental-tags__item--ok {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}
.bk-dental-tags__item--ready {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  color: #c2410c;
}
.bk-dental-challenge {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-dental-challenge:hover {
  transform: translateY(-3px);
  border-color: #cce8e4;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-dental-challenge__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  border-radius: 0.55rem;
  background: #f0fdfa;
  color: #0d9488;
}
.bk-dental-challenge__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-dental-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-dental-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-dental-audience {
  display: grid;
  gap: 0.75rem;
}
.bk-dental-audience__card {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  padding: 1rem 1.05rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-dental-audience__card strong {
  font-size: 0.92rem;
  color: #0f172a;
}
.bk-dental-audience__card span:last-child {
  font-size: 0.84rem;
  color: #5b6470;
  line-height: 1.45;
}
.bk-dental-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #f0fdfa;
  color: #0d9488;
}
.bk-dental-audience__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-dental-collab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  padding: 1.35rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-dental-collab__node,
.bk-dental-collab__hub,
.bk-dental-collab__out {
  width: 100%;
  max-width: 20rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-dental-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-dental-collab__hub {
  background: #f0fdfa;
  border: 1px solid rgba(13, 148, 136, 0.22);
}
.bk-dental-collab__out {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-dental-collab__arrow {
  color: #0d9488;
  font-weight: 700;
  line-height: 1;
}
.bk-dental-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-dental-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-dental-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-dental-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
.bk-dental-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-dental-mobile-cta {
    display: none;
  }
  .bk-dental-collab {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bk-dental-collab__node,
  .bk-dental-collab__hub,
  .bk-dental-collab__out {
    width: auto;
    max-width: none;
  }
}
@media (max-width: 1100px) {
  .bk-dental-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-dental-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-dental-check.is-inview .bk-dental-dash li {
    animation: none !important;
  }
  .bk-dental-trust__item:hover,
  .bk-dental-challenge:hover {
    transform: none;
  }
  .bk-dental-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Gold Coast bookkeeping — helpers (.bk-gc-*)
   ============================================================ */
.bk-page--compact .bk-gc-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-gc-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 50%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-gc-glow > * {
  position: relative;
  z-index: 1;
}
.bk-gc-scope {
  margin: 0;
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.88rem;
  line-height: 1.55;
  color: #475569;
}
.bk-gc-problem {
  height: 100%;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fafaf7 0%, #fff 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-gc-problem__label {
  margin: 0 0 0.75rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-gc-problem ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.45rem;
}
.bk-gc-problem li {
  position: relative;
  margin: 0;
  padding: 0.55rem 0.65rem 0.55rem 1.65rem;
  border-radius: 0.55rem;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 600;
  color: #334155;
}
.bk-gc-problem li::before {
  content: "";
  position: absolute;
  left: 0.65rem;
  top: 0.82rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #cbd5e1;
}
.bk-gc-rhythm {
  height: 100%;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: linear-gradient(165deg, #fff8f5 0%, #fff 55%, #f8fafb 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-gc-rhythm__label {
  margin: 0 0 0.55rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-gc-rhythm__intro {
  margin: 0 0 0.85rem;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #334155;
}
.bk-gc-rhythm__flow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
}
.bk-gc-rhythm__flow span:not(.bk-gc-rhythm__arrow) {
  padding: 0.5rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-gc-rhythm__arrow {
  color: #ff6b47;
  font-weight: 700;
}
.bk-gc-rhythm__note {
  margin: 0.85rem 0 0;
  font-size: 0.84rem;
  color: #5b6470;
}
.bk-gc-disclaimer {
  margin: 0;
  font-size: 0.82rem;
  font-weight: 700;
  color: #ff6b47;
}
.bk-gc-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-gc-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-gc-check.is-inview .bk-gc-dash__progress span {
  width: 100%;
}
.bk-gc-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-gc-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-gc-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-gc-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-gc-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-gc-check.is-inview .bk-gc-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-gc-check.is-inview .bk-gc-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-gc-check.is-inview .bk-gc-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-gc-check.is-inview .bk-gc-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-gc-check.is-inview .bk-gc-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-gc-check.is-inview .bk-gc-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-gc-check.is-inview .bk-gc-dash li:nth-child(6) { animation-delay: 290ms; }
.bk-gc-audience {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  padding: 1.25rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-gc-audience__card {
  width: 100%;
  max-width: 20rem;
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  text-align: center;
}
.bk-gc-audience__card strong {
  display: block;
  font-size: 0.9rem;
  color: #0f172a;
}
.bk-gc-audience__card span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-gc-audience__card--hub {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-gc-audience__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-gc-collab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  padding: 1.35rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-gc-collab__node,
.bk-gc-collab__hub,
.bk-gc-collab__out {
  width: 100%;
  max-width: 22rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-gc-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-gc-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-gc-collab__out {
  background: #f0f9ff;
  border: 1px solid rgba(14, 165, 233, 0.22);
}
.bk-gc-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-gc-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-gc-quote-label {
  margin: 0;
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  font-weight: 800;
  color: #0f172a;
}
.bk-gc-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-gc-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-gc-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
.bk-gc-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-gc-mobile-cta {
    display: none;
  }
  .bk-gc-collab {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bk-gc-collab__node,
  .bk-gc-collab__hub,
  .bk-gc-collab__out {
    width: auto;
    max-width: none;
  }
}
@media (max-width: 640px) {
  .bk-gc-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-gc-rhythm__flow {
    flex-direction: column;
    align-items: stretch;
  }
  .bk-gc-rhythm__arrow {
    text-align: center;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-gc-check.is-inview .bk-gc-dash li {
    animation: none !important;
  }
  .bk-gc-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Medical practice bookkeeping — helpers (.bk-mp-*)
   ============================================================ */
.bk-page--compact .bk-mp-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-mp-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(14, 165, 233, 0.1) 0%, rgba(13, 148, 136, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-mp-glow > * {
  position: relative;
  z-index: 1;
}
.bk-mp-scope {
  margin: 0;
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.88rem;
  line-height: 1.55;
  color: #475569;
}
.bk-mp-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-mp-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-mp-trust__item:hover {
  transform: translateY(-3px);
  border-color: #bae6fd;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-mp-trust__title {
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-mp-trust__text {
  font-size: 0.8rem;
  line-height: 1.4;
  color: #5b6470;
}
.bk-mp-compare {
  display: grid;
  gap: 0.75rem;
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-mp-compare__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-mp-compare__before,
.bk-mp-compare__after {
  padding: 0.95rem 1rem;
  border-radius: 0.85rem;
}
.bk-mp-compare__before {
  border: 1px solid #e8e8e3;
  background: #fafaf7;
}
.bk-mp-compare__after {
  border: 1px solid rgba(14, 165, 233, 0.22);
  background: #f0f9ff;
}
.bk-mp-compare ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}
.bk-mp-compare li {
  position: relative;
  padding-left: 1.1rem;
  font-size: 0.88rem;
  font-weight: 600;
  color: #334155;
}
.bk-mp-compare__before li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #cbd5e1;
}
.bk-mp-compare__after li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45rem;
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 999px;
  background: #0ea5e9;
}
.bk-mp-compare__arrow {
  display: flex;
  justify-content: center;
  color: #0ea5e9;
  font-weight: 700;
  line-height: 1;
}
.bk-mp-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-mp-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-mp-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0ea5e9, #ff6b47);
  transition: width 0.7s var(--bk-ease);
}
.bk-mp-check.is-inview .bk-mp-dash__progress span {
  width: 100%;
}
.bk-mp-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-mp-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-mp-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-mp-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-mp-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-mp-check.is-inview .bk-mp-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-mp-check.is-inview .bk-mp-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-mp-check.is-inview .bk-mp-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-mp-check.is-inview .bk-mp-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-mp-check.is-inview .bk-mp-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-mp-questions {
  margin: 0 1.1rem;
  padding: 0.85rem 0 0.55rem;
  border-top: 1px solid #f1f1ec;
}
.bk-mp-questions__label {
  margin: 0 0 0.55rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-mp-questions ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.4rem;
}
.bk-mp-questions li {
  padding: 0.45rem 0.65rem;
  border-radius: 0.55rem;
  background: #fafaf7;
  font-size: 0.84rem;
  color: #475569;
}
.bk-mp-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0.75rem 1.1rem 0.55rem;
  padding-top: 0.75rem;
  border-top: 1px solid #f1f1ec;
}
.bk-mp-tags__item {
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  color: #475569;
}
.bk-mp-tags__item--ok {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}
.bk-mp-tags__item--ready {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  color: #c2410c;
}
.bk-mp-challenge {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-mp-challenge:hover {
  transform: translateY(-3px);
  border-color: #bae6fd;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-mp-challenge__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #f0f9ff;
  color: #0284c7;
}
.bk-mp-challenge__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-mp-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-mp-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-mp-audience {
  display: grid;
  gap: 0.75rem;
}
.bk-mp-audience__card {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  padding: 1rem 1.05rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-mp-audience__card strong {
  font-size: 0.92rem;
  color: #0f172a;
}
.bk-mp-audience__card span:last-child {
  font-size: 0.84rem;
  color: #5b6470;
  line-height: 1.45;
}
.bk-mp-audience__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  background: #f0f9ff;
  color: #0284c7;
}
.bk-mp-audience__icon svg {
  width: 1rem;
  height: 1rem;
}
.bk-mp-midcta {
  padding: 1.2rem 1.25rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #f0f9ff 100%);
}
.bk-mp-midcta__title {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 800;
  color: #0f172a;
}
.bk-mp-midcta__text {
  margin: 0.35rem 0 0;
  font-size: 0.9rem;
  color: #5b6470;
}
.bk-mp-software {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}
.bk-mp-collab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  padding: 1.35rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-mp-collab__node,
.bk-mp-collab__hub,
.bk-mp-collab__out {
  width: 100%;
  max-width: 22rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-mp-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-mp-collab__hub {
  background: #f0f9ff;
  border: 1px solid rgba(14, 165, 233, 0.22);
}
.bk-mp-collab__out {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-mp-collab__arrow {
  color: #0ea5e9;
  font-weight: 700;
  line-height: 1;
}
.bk-mp-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #f0f9ff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-mp-factors {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-mp-factors li {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem 0.45rem 0.45rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-mp-factors .bk-card__icon {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
}
.bk-mp-pricing__cta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1.15rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.bk-mp-pricing__cta-label {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-mp-pricing__cta-note {
  margin: 0;
  font-size: 0.84rem;
  color: #5b6470;
}
.bk-mp-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-mp-mobile-cta {
    display: none;
  }
  .bk-mp-collab {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bk-mp-collab__node,
  .bk-mp-collab__hub,
  .bk-mp-collab__out {
    width: auto;
    max-width: none;
  }
}
@media (max-width: 1100px) {
  .bk-mp-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-mp-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-mp-trust {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-mp-check.is-inview .bk-mp-dash li {
    animation: none !important;
  }
  .bk-mp-trust__item:hover,
  .bk-mp-challenge:hover {
    transform: none;
  }
  .bk-mp-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Trucking bookkeeping — helpers (.bk-tr-*)
   ============================================================ */
.bk-page--compact .bk-tr-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-tr-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-tr-glow > * {
  position: relative;
  z-index: 1;
}
.bk-tr-scope {
  margin: 0;
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.88rem;
  line-height: 1.55;
  color: #475569;
}
.bk-tr-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-tr-scatter__label {
  margin: 0 0 0.75rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-tr-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.bk-tr-scatter__chips span {
  padding: 0.45rem 0.7rem;
  border-radius: 999px;
  border: 1px dashed #d4d4cf;
  background: #fafaf7;
  font-size: 0.82rem;
  font-weight: 700;
  color: #475569;
}
.bk-tr-scatter__arrow {
  display: flex;
  justify-content: center;
  padding: 0.55rem 0;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-tr-scatter__out {
  padding: 0.95rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  text-align: center;
}
.bk-tr-scatter__out strong {
  display: block;
  font-size: 0.95rem;
  color: #0f172a;
}
.bk-tr-scatter__out span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-tr-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-tr-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-tr-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-tr-check.is-inview .bk-tr-dash__progress span {
  width: 100%;
}
.bk-tr-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-tr-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-tr-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-tr-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-tr-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-tr-cats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.55rem;
}
.bk-tr-cats span {
  padding: 0.3rem 0.55rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.75rem;
  font-weight: 700;
  color: #475569;
}
.bk-tr-check.is-inview .bk-tr-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-tr-check.is-inview .bk-tr-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-tr-check.is-inview .bk-tr-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-tr-check.is-inview .bk-tr-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-tr-check.is-inview .bk-tr-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-tr-check.is-inview .bk-tr-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-tr-challenge {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-tr-challenge:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-tr-challenge__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-tr-challenge__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-tr-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-tr-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-tr-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-tr-audience__card {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4.25rem;
  padding: 0.9rem 0.85rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  text-align: center;
}
.bk-tr-audience__card strong {
  font-size: 0.88rem;
  color: #0f172a;
  line-height: 1.35;
}
.bk-tr-platforms {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}
.bk-tr-confirm {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 700;
  color: #5b6470;
}
.bk-tr-collab {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  padding: 1.35rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-tr-collab__node,
.bk-tr-collab__hub,
.bk-tr-collab__out {
  width: 100%;
  max-width: 22rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 0.86rem;
  font-weight: 700;
  color: #0f172a;
  text-align: center;
}
.bk-tr-collab__node {
  background: #fff;
  border: 1px solid #e8e8e3;
}
.bk-tr-collab__hub {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.22);
}
.bk-tr-collab__out {
  background: #f0f9ff;
  border: 1px solid rgba(14, 165, 233, 0.22);
}
.bk-tr-collab__arrow {
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
}
.bk-tr-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-tr-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-tr-mobile-cta {
    display: none;
  }
  .bk-tr-collab {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bk-tr-collab__node,
  .bk-tr-collab__hub,
  .bk-tr-collab__out {
    width: auto;
    max-width: none;
  }
}
@media (max-width: 640px) {
  .bk-tr-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-tr-audience {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-tr-check.is-inview .bk-tr-dash li {
    animation: none !important;
  }
  .bk-tr-challenge:hover {
    transform: none;
  }
  .bk-tr-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Veterinary bookkeeping — helpers (.bk-vet-*)
   ============================================================ */
.bk-page--compact .bk-vet-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-vet-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(13, 148, 136, 0.12) 0%, rgba(255, 107, 71, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-vet-glow > * {
  position: relative;
  z-index: 1;
}
.bk-vet-scope {
  margin: 0;
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.88rem;
  line-height: 1.55;
  color: #475569;
}
.bk-vet-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-vet-scatter__label {
  margin: 0 0 0.75rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-vet-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.bk-vet-scatter__chips span {
  padding: 0.45rem 0.7rem;
  border-radius: 999px;
  border: 1px dashed #d4d4cf;
  background: #fafaf7;
  font-size: 0.82rem;
  font-weight: 700;
  color: #475569;
}
.bk-vet-scatter__arrow {
  display: flex;
  justify-content: center;
  padding: 0.55rem 0;
  color: #0d9488;
  font-weight: 700;
  line-height: 1;
}
.bk-vet-scatter__out {
  padding: 0.95rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid rgba(13, 148, 136, 0.22);
  background: #f0fdfa;
  text-align: center;
}
.bk-vet-scatter__out strong {
  display: block;
  font-size: 0.95rem;
  color: #0f172a;
}
.bk-vet-scatter__out span {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-vet-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-vet-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-vet-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0d9488, #ff6b47);
  transition: width 0.7s var(--bk-ease);
}
.bk-vet-check.is-inview .bk-vet-dash__progress span {
  width: 100%;
}
.bk-vet-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-vet-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-vet-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-vet-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-vet-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-vet-check.is-inview .bk-vet-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-vet-check.is-inview .bk-vet-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-vet-check.is-inview .bk-vet-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-vet-check.is-inview .bk-vet-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-vet-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-vet-ppo:hover {
  transform: translateY(-3px);
  border-color: #cce8e4;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-vet-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #f0fdfa;
  color: #0d9488;
}
.bk-vet-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-vet-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-vet-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-vet-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-vet-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-vet-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-vet-ppo__stage--problem strong { color: #5b6470; }
.bk-vet-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-vet-ppo__stage--process strong { color: #ff6b47; }
.bk-vet-ppo__stage--outcome {
  background: #f0fdfa;
  border: 1px solid rgba(13, 148, 136, 0.18);
}
.bk-vet-ppo__stage--outcome strong { color: #0d9488; }
.bk-vet-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-vet-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-vet-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-vet-audience__card {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4rem;
  padding: 0.85rem 0.75rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  text-align: center;
}
.bk-vet-audience__card strong {
  font-size: 0.86rem;
  color: #0f172a;
  line-height: 1.35;
}
.bk-vet-audience__card--wide {
  grid-column: 1 / -1;
}
.bk-vet-platforms {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}
.bk-vet-confirm {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 700;
  color: #5b6470;
}
.bk-vet-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #f0fdfa 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-vet-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-vet-mobile-cta {
    display: none;
  }
}
@media (max-width: 640px) {
  .bk-vet-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-vet-audience {
    grid-template-columns: 1fr;
  }
  .bk-vet-audience__card--wide {
    grid-column: auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-vet-check.is-inview .bk-vet-dash li {
    animation: none !important;
  }
  .bk-vet-ppo:hover {
    transform: none;
  }
  .bk-vet-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Zoho Books accounting — helpers (.bk-zoho-*)
   ============================================================ */
.bk-page--compact .bk-zoho-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-zoho-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-zoho-glow > * {
  position: relative;
  z-index: 1;
}
.bk-zoho-scope {
  margin: 0;
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.88rem;
  line-height: 1.55;
  color: #475569;
}
.bk-zoho-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-zoho-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-zoho-trust__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-zoho-trust__title {
  font-size: 0.88rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-zoho-trust__text {
  font-size: 0.8rem;
  line-height: 1.4;
  color: #5b6470;
}
.bk-zoho-flow {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-zoho-flow__step {
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.9rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-zoho-flow__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  color: #0f172a;
}
.bk-zoho-flow__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.35rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-zoho-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-zoho-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-zoho-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-zoho-check.is-inview .bk-zoho-dash__progress span {
  width: 100%;
}
.bk-zoho-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-zoho-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-zoho-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-zoho-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-zoho-dash__note {
  margin: 0.35rem 0 0;
  font-size: 0.8rem;
  color: #5b6470;
}
.bk-zoho-check.is-inview .bk-zoho-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-zoho-check.is-inview .bk-zoho-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-zoho-check.is-inview .bk-zoho-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-zoho-check.is-inview .bk-zoho-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-zoho-check.is-inview .bk-zoho-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-zoho-check.is-inview .bk-zoho-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-zoho-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-zoho-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-zoho-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-zoho-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-zoho-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-zoho-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-zoho-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-zoho-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-zoho-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-zoho-ppo__stage--problem strong { color: #5b6470; }
.bk-zoho-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-zoho-ppo__stage--process strong { color: #ff6b47; }
.bk-zoho-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-zoho-ppo__stage--outcome strong { color: #166534; }
.bk-zoho-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-zoho-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-zoho-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-zoho-audience__card {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4.25rem;
  padding: 0.9rem 0.85rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  text-align: center;
}
.bk-zoho-audience__card strong {
  font-size: 0.86rem;
  color: #0f172a;
  line-height: 1.35;
}
.bk-zoho-software {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-zoho-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-zoho-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-zoho-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-zoho-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-zoho-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-zoho-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-zoho-trust {
    grid-template-columns: 1fr;
  }
  .bk-zoho-audience {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-zoho-check.is-inview .bk-zoho-dash li {
    animation: none !important;
  }
  .bk-zoho-trust__item:hover,
  .bk-zoho-ppo:hover {
    transform: none;
  }
  .bk-zoho-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Sage accounting — helpers (.bk-sage-*)
   ============================================================ */
.bk-page--compact .bk-sage-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-sage-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-sage-glow > * {
  position: relative;
  z-index: 1;
}
.bk-sage-note {
  margin: 0;
  padding: 0.65rem 0.85rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.84rem;
  line-height: 1.5;
  color: #5b6470;
}
.bk-sage-flow,
.bk-sage-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-sage-flow__step,
.bk-sage-pipeline__step {
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.9rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-sage-flow__step--out,
.bk-sage-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-sage-flow__arrow,
.bk-sage-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.35rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-sage-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-sage-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-sage-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-sage-check.is-inview .bk-sage-dash__progress span {
  width: 100%;
}
.bk-sage-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-sage-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-sage-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-sage-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-sage-check.is-inview .bk-sage-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-sage-check.is-inview .bk-sage-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-sage-check.is-inview .bk-sage-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-sage-check.is-inview .bk-sage-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-sage-check.is-inview .bk-sage-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-sage-check.is-inview .bk-sage-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-sage-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-sage-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-sage-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-sage-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-sage-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-sage-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-sage-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-sage-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-sage-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-sage-ppo__stage--problem strong { color: #5b6470; }
.bk-sage-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-sage-ppo__stage--process strong { color: #ff6b47; }
.bk-sage-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-sage-ppo__stage--outcome strong { color: #166534; }
.bk-sage-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-sage-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-sage-audience {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.bk-sage-audience__card {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4.25rem;
  padding: 0.9rem 0.85rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  text-align: center;
}
.bk-sage-audience__card strong {
  font-size: 0.86rem;
  color: #0f172a;
  line-height: 1.35;
}
.bk-sage-software {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-sage-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-sage-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-sage-mobile-cta {
    display: none;
  }
}
@media (max-width: 640px) {
  .bk-sage-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-sage-audience {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-sage-check.is-inview .bk-sage-dash li {
    animation: none !important;
  }
  .bk-sage-ppo:hover {
    transform: none;
  }
  .bk-sage-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Catering bookkeeping — helpers (.bk-cat-*)
   ============================================================ */
.bk-page--compact .bk-cat-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-cat-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-cat-glow > * {
  position: relative;
  z-index: 1;
}
.bk-cat-trust {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-cat-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-cat-trust__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-cat-trust__title {
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-cat-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-cat-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 1rem;
}
.bk-cat-scatter__chips span {
  display: inline-flex;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-cat-flow,
.bk-cat-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-cat-flow__step,
.bk-cat-pipeline__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cat-flow__step--out,
.bk-cat-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-cat-flow__arrow,
.bk-cat-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-cat-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-cat-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-cat-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-cat-check.is-inview .bk-cat-dash__progress span {
  width: 100%;
}
.bk-cat-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-cat-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-cat-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-cat-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-cat-check.is-inview .bk-cat-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-cat-check.is-inview .bk-cat-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-cat-check.is-inview .bk-cat-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-cat-check.is-inview .bk-cat-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-cat-check.is-inview .bk-cat-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-cat-check.is-inview .bk-cat-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-cat-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-cat-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-cat-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-cat-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-cat-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-cat-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-cat-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-cat-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-cat-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-cat-ppo__stage--problem strong { color: #5b6470; }
.bk-cat-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-cat-ppo__stage--process strong { color: #ff6b47; }
.bk-cat-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-cat-ppo__stage--outcome strong { color: #166534; }
.bk-cat-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-cat-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-cat-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-cat-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-cat-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-cat-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-cat-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-cat-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-cat-trust {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .bk-cat-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-cat-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-cat-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-cat-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-cat-check.is-inview .bk-cat-dash li {
    animation: none !important;
  }
  .bk-cat-trust__item:hover,
  .bk-cat-ppo:hover {
    transform: none;
  }
  .bk-cat-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Photographers bookkeeping — helpers (.bk-ph-*)
   ============================================================ */
.bk-page--compact .bk-ph-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-ph-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-ph-glow > * {
  position: relative;
  z-index: 1;
}
.bk-ph-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ph-scatter__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ph-scatter__label--out {
  margin-top: 1rem;
  color: #ff6b47;
}
.bk-ph-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 0.25rem;
}
.bk-ph-scatter__chips span {
  display: inline-flex;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-ph-flow,
.bk-ph-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-ph-flow__step,
.bk-ph-pipeline__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ph-flow__step--out,
.bk-ph-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-ph-flow__arrow,
.bk-ph-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-ph-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-ph-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-ph-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-ph-check.is-inview .bk-ph-dash__progress span {
  width: 100%;
}
.bk-ph-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-ph-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-ph-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-ph-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ph-check.is-inview .bk-ph-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ph-check.is-inview .bk-ph-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-ph-check.is-inview .bk-ph-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-ph-check.is-inview .bk-ph-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-ph-check.is-inview .bk-ph-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-ph-check.is-inview .bk-ph-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-ph-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-ph-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-ph-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-ph-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-ph-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-ph-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-ph-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-ph-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-ph-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-ph-ppo__stage--problem strong { color: #5b6470; }
.bk-ph-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-ph-ppo__stage--process strong { color: #ff6b47; }
.bk-ph-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-ph-ppo__stage--outcome strong { color: #166534; }
.bk-ph-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-ph-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-ph-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ph-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-ph-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ph-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-ph-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ph-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-ph-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-ph-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-ph-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-ph-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-ph-check.is-inview .bk-ph-dash li {
    animation: none !important;
  }
  .bk-ph-ppo:hover {
    transform: none;
  }
  .bk-ph-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Pharmacy bookkeeping — helpers (.bk-rx-*)
   ============================================================ */
.bk-page--compact .bk-rx-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-rx-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-rx-glow > * {
  position: relative;
  z-index: 1;
}
.bk-rx-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-rx-scatter__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-rx-scatter__label--out {
  margin-top: 1rem;
  color: #ff6b47;
}
.bk-rx-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 0.25rem;
}
.bk-rx-scatter__chips span {
  display: inline-flex;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-rx-flow,
.bk-rx-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-rx-flow__step,
.bk-rx-pipeline__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-rx-flow__step--out,
.bk-rx-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-rx-flow__arrow,
.bk-rx-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-rx-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-rx-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-rx-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-rx-check.is-inview .bk-rx-dash__progress span {
  width: 100%;
}
.bk-rx-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-rx-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-rx-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-rx-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-rx-check.is-inview .bk-rx-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-rx-check.is-inview .bk-rx-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-rx-check.is-inview .bk-rx-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-rx-check.is-inview .bk-rx-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-rx-check.is-inview .bk-rx-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-rx-check.is-inview .bk-rx-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-rx-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-rx-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-rx-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-rx-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-rx-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-rx-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-rx-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-rx-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-rx-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-rx-ppo__stage--problem strong { color: #5b6470; }
.bk-rx-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-rx-ppo__stage--process strong { color: #ff6b47; }
.bk-rx-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-rx-ppo__stage--outcome strong { color: #166534; }
.bk-rx-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-rx-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-rx-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-rx-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-rx-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-rx-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-rx-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-rx-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-rx-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-rx-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-rx-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-rx-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-rx-check.is-inview .bk-rx-dash li {
    animation: none !important;
  }
  .bk-rx-ppo:hover {
    transform: none;
  }
  .bk-rx-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Walmart bookkeeping — helpers (.bk-wm-*)
   ============================================================ */
.bk-page--compact .bk-wm-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-wm-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-wm-glow > * {
  position: relative;
  z-index: 1;
}
.bk-wm-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-wm-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-wm-trust__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-wm-trust__title {
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-wm-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-wm-scatter__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-wm-scatter__label--out {
  margin-top: 1rem;
  color: #ff6b47;
}
.bk-wm-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 0.25rem;
}
.bk-wm-scatter__chips span {
  display: inline-flex;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-wm-flow,
.bk-wm-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-wm-flow__step,
.bk-wm-pipeline__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-wm-flow__step--out,
.bk-wm-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-wm-flow__arrow,
.bk-wm-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-wm-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-wm-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-wm-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-wm-check.is-inview .bk-wm-dash__progress span {
  width: 100%;
}
.bk-wm-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-wm-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-wm-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-wm-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-wm-check.is-inview .bk-wm-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-wm-check.is-inview .bk-wm-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-wm-check.is-inview .bk-wm-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-wm-check.is-inview .bk-wm-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-wm-check.is-inview .bk-wm-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-wm-check.is-inview .bk-wm-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-wm-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-wm-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-wm-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-wm-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-wm-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-wm-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-wm-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-wm-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-wm-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-wm-ppo__stage--problem strong { color: #5b6470; }
.bk-wm-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-wm-ppo__stage--process strong { color: #ff6b47; }
.bk-wm-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-wm-ppo__stage--outcome strong { color: #166534; }
.bk-wm-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-wm-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-wm-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-wm-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-wm-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-wm-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-wm-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-wm-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-wm-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-wm-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-wm-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-wm-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-wm-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-wm-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-wm-check.is-inview .bk-wm-dash li {
    animation: none !important;
  }
  .bk-wm-trust__item:hover,
  .bk-wm-ppo:hover {
    transform: none;
  }
  .bk-wm-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   BigCommerce bookkeeping — helpers (.bk-bc-*)
   ============================================================ */
.bk-page--compact .bk-bc-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-bc-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-bc-glow > * {
  position: relative;
  z-index: 1;
}
.bk-bc-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-bc-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-bc-trust__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-bc-trust__title {
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-bc-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-bc-scatter__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-bc-flow,
.bk-bc-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-bc-flow__step,
.bk-bc-pipeline__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-bc-flow__step--out,
.bk-bc-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-bc-flow__arrow,
.bk-bc-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-bc-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-bc-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-bc-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-bc-check.is-inview .bk-bc-dash__progress span {
  width: 100%;
}
.bk-bc-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-bc-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-bc-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-bc-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-bc-check.is-inview .bk-bc-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-bc-check.is-inview .bk-bc-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-bc-check.is-inview .bk-bc-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-bc-check.is-inview .bk-bc-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-bc-check.is-inview .bk-bc-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-bc-check.is-inview .bk-bc-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-bc-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-bc-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-bc-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-bc-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-bc-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-bc-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-bc-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-bc-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-bc-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-bc-ppo__stage--problem strong { color: #5b6470; }
.bk-bc-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-bc-ppo__stage--process strong { color: #ff6b47; }
.bk-bc-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-bc-ppo__stage--outcome strong { color: #166534; }
.bk-bc-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-bc-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-bc-audience {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-bc-audience li {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-bc-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-bc-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-bc-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-bc-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-bc-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-bc-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-bc-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-bc-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-bc-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-bc-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-bc-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-bc-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-bc-check.is-inview .bk-bc-dash li {
    animation: none !important;
  }
  .bk-bc-trust__item:hover,
  .bk-bc-ppo:hover {
    transform: none;
  }
  .bk-bc-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Dropshipping bookkeeping — helpers (.bk-ds-*)
   ============================================================ */
.bk-page--compact .bk-ds-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-ds-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-ds-glow > * {
  position: relative;
  z-index: 1;
}
.bk-ds-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ds-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-ds-trust__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-ds-trust__title {
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-ds-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ds-scatter__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-ds-scatter__label--out {
  color: #ff6b47;
}
.bk-ds-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}
.bk-ds-scatter__chips span {
  display: inline-flex;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-ds-flow,
.bk-ds-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-ds-flow__step,
.bk-ds-pipeline__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ds-flow__step--out,
.bk-ds-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-ds-flow__arrow,
.bk-ds-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-ds-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-ds-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-ds-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-ds-check.is-inview .bk-ds-dash__progress span {
  width: 100%;
}
.bk-ds-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-ds-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-ds-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-ds-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ds-check.is-inview .bk-ds-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-ds-check.is-inview .bk-ds-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-ds-check.is-inview .bk-ds-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-ds-check.is-inview .bk-ds-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-ds-check.is-inview .bk-ds-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-ds-check.is-inview .bk-ds-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-ds-check.is-inview .bk-ds-dash li:nth-child(6) { animation-delay: 290ms; }
.bk-ds-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-ds-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-ds-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-ds-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-ds-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-ds-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-ds-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-ds-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-ds-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-ds-ppo__stage--problem strong { color: #5b6470; }
.bk-ds-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-ds-ppo__stage--process strong { color: #ff6b47; }
.bk-ds-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-ds-ppo__stage--outcome strong { color: #166534; }
.bk-ds-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-ds-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-ds-audience {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ds-audience li {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ds-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-ds-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-ds-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ds-workflow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.55rem;
  margin: 0;
  padding: 0.95rem 1.05rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-ds-workflow__arrow {
  color: #ff6b47;
}
.bk-ds-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-ds-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-ds-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-ds-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-ds-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-ds-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-ds-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-ds-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-ds-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-ds-check.is-inview .bk-ds-dash li {
    animation: none !important;
  }
  .bk-ds-trust__item:hover,
  .bk-ds-ppo:hover {
    transform: none;
  }
  .bk-ds-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Hair salon bookkeeping — helpers (.bk-hs-*)
   ============================================================ */
.bk-page--compact .bk-hs-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-hs-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-hs-glow > * {
  position: relative;
  z-index: 1;
}
.bk-hs-trust {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-hs-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-hs-trust__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-hs-trust__title {
  font-size: 0.84rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-hs-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-hs-scatter__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-hs-scatter__label--out {
  margin-top: 1rem;
  color: #ff6b47;
}
.bk-hs-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 0.25rem;
}
.bk-hs-scatter__chips span {
  display: inline-flex;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-hs-flow {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-hs-flow__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-hs-flow__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-hs-flow__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-hs-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-hs-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-hs-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-hs-check.is-inview .bk-hs-dash__progress span {
  width: 100%;
}
.bk-hs-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-hs-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-hs-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-hs-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-hs-check.is-inview .bk-hs-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-hs-check.is-inview .bk-hs-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-hs-check.is-inview .bk-hs-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-hs-check.is-inview .bk-hs-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-hs-check.is-inview .bk-hs-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-hs-check.is-inview .bk-hs-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-hs-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-hs-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-hs-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-hs-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-hs-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-hs-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-hs-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-hs-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-hs-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-hs-ppo__stage--problem strong { color: #5b6470; }
.bk-hs-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-hs-ppo__stage--process strong { color: #ff6b47; }
.bk-hs-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-hs-ppo__stage--outcome strong { color: #166534; }
.bk-hs-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-hs-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-hs-profile {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: linear-gradient(165deg, #fff 0%, #fff8f6 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-hs-profile__label {
  margin: 0 0 0.85rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ff6b47;
}
.bk-hs-profile ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.55rem;
}
.bk-hs-profile li {
  position: relative;
  padding: 0.65rem 0.85rem 0.65rem 2rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-hs-profile li::before {
  content: "";
  position: absolute;
  left: 0.75rem;
  top: 50%;
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: #ff6b47;
  transform: translateY(-50%);
}
.bk-hs-step-core {
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 10px 28px rgba(255, 107, 71, 0.08);
}
.bk-hs-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-hs-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-hs-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-hs-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-hs-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-hs-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-hs-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-hs-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-hs-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-hs-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-hs-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .bk-hs-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-hs-check.is-inview .bk-hs-dash li {
    animation: none !important;
  }
  .bk-hs-trust__item:hover,
  .bk-hs-ppo:hover {
    transform: none;
  }
  .bk-hs-dash__progress span {
    transition: none !important;
  }
}

/* ============================================================
   Influencer / creator bookkeeping — helpers (.bk-inf-*)
   ============================================================ */
.bk-page--compact .bk-inf-glow {
  position: relative;
  overflow: hidden;
}
.bk-page--compact .bk-inf-glow::before {
  content: "";
  position: absolute;
  width: min(42vw, 22rem);
  height: min(42vw, 22rem);
  top: -10%;
  right: -6%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 107, 71, 0.1) 0%, rgba(14, 165, 233, 0.08) 45%, transparent 72%);
  pointer-events: none;
  z-index: 0;
}
.bk-page--compact .bk-inf-glow > * {
  position: relative;
  z-index: 1;
}
.bk-inf-trust {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-inf-trust__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.45rem;
  margin: 0;
  padding: 1.1rem 1.1rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 100%);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-inf-trust__item:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-inf-trust__title {
  font-size: 0.9rem;
  font-weight: 800;
  line-height: 1.3;
  color: #0f172a;
}
.bk-inf-trust__text {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.5;
  color: #5b6470;
}
.bk-inf-scatter {
  padding: 1.25rem 1.2rem 1.35rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 55%, #fff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-inf-scatter__label {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
}
.bk-inf-scatter__label--out {
  margin-top: 1rem;
  color: #ff6b47;
}
.bk-inf-scatter__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 0.25rem;
}
.bk-inf-scatter__chips span {
  display: inline-flex;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.78rem;
  font-weight: 600;
  color: #5b6470;
}
.bk-inf-flow,
.bk-inf-pipeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.bk-inf-flow__step,
.bk-inf-pipeline__step {
  padding: 0.75rem 0.95rem;
  border-radius: 0.75rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.88rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-inf-flow__step--out,
.bk-inf-pipeline__step--out {
  border-color: rgba(255, 107, 71, 0.22);
  background: #fff8f6;
}
.bk-inf-flow__arrow,
.bk-inf-pipeline__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1.25rem;
  color: #ff6b47;
  font-weight: 700;
  line-height: 1;
  transform: rotate(90deg);
}
.bk-inf-disclaimer {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
  color: #334155;
}
.bk-inf-dash__progress {
  height: 3px;
  margin: 0 1.1rem;
  border-radius: 999px;
  background: #f1f1ec;
  overflow: hidden;
}
.bk-inf-dash__progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6b47, #0ea5e9);
  transition: width 0.7s var(--bk-ease);
}
.bk-inf-check.is-inview .bk-inf-dash__progress span {
  width: 100%;
}
.bk-inf-dash {
  margin: 0;
  padding: 0.35rem 0 0.55rem;
  list-style: none;
}
.bk-inf-dash li {
  margin: 0;
  padding: 0.85rem 1.1rem;
  border-top: 1px solid #f1f1ec;
}
.bk-inf-dash__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.bk-inf-dash__item {
  font-size: 0.92rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-inf-check.is-inview .bk-inf-dash li {
  animation: bk-uk-row 520ms var(--bk-ease) both;
}
.bk-inf-check.is-inview .bk-inf-dash li:nth-child(1) { animation-delay: 40ms; }
.bk-inf-check.is-inview .bk-inf-dash li:nth-child(2) { animation-delay: 90ms; }
.bk-inf-check.is-inview .bk-inf-dash li:nth-child(3) { animation-delay: 140ms; }
.bk-inf-check.is-inview .bk-inf-dash li:nth-child(4) { animation-delay: 190ms; }
.bk-inf-check.is-inview .bk-inf-dash li:nth-child(5) { animation-delay: 240ms; }
.bk-inf-ppo {
  margin: 0;
  padding: 1.15rem 1.1rem 1.2rem;
  border-radius: 1rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
  transition: transform 0.35s var(--bk-ease), box-shadow 0.35s var(--bk-ease), border-color 0.35s ease;
}
.bk-inf-ppo:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 107, 71, 0.28);
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.07);
}
.bk-inf-ppo__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.15rem;
  height: 2.15rem;
  margin-bottom: 0.65rem;
  border-radius: 0.55rem;
  background: #fff8f6;
  color: #ff6b47;
}
.bk-inf-ppo__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}
.bk-inf-ppo__stages {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.85rem;
}
.bk-inf-ppo__stage {
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
}
.bk-inf-ppo__stage strong {
  display: block;
  margin-bottom: 0.2rem;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.bk-inf-ppo__stage p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #334155;
}
.bk-inf-ppo__stage--problem {
  background: #fafaf7;
  border: 1px solid #e8e8e3;
}
.bk-inf-ppo__stage--problem strong { color: #5b6470; }
.bk-inf-ppo__stage--process {
  background: #fff8f6;
  border: 1px solid rgba(255, 107, 71, 0.18);
}
.bk-inf-ppo__stage--process strong { color: #ff6b47; }
.bk-inf-ppo__stage--outcome {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
}
.bk-inf-ppo__stage--outcome strong { color: #166534; }
.bk-inf-related {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.85rem;
  margin: 0;
  font-size: 0.92rem;
  color: #5b6470;
}
.bk-inf-related > span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5b6470;
  width: 100%;
}
.bk-inf-software {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bk-inf-software li {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.75rem 0.65rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fff;
  font-size: 0.84rem;
  font-weight: 700;
  text-align: center;
  color: #0f172a;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.bk-inf-ownership {
  margin: 0;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 107, 71, 0.22);
  background: #fff8f6;
  font-size: 0.84rem;
  font-weight: 700;
  color: #0f172a;
}
.bk-inf-note {
  margin: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.85rem;
  border: 1px solid #e8e8e3;
  background: #fafaf7;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #475569;
}
.bk-inf-pricing {
  padding: 1.35rem 1.35rem 1.45rem;
  border-radius: 1.15rem;
  border: 1px solid #e8e8e3;
  background: linear-gradient(165deg, #fff 0%, #f8fafb 50%, #fff8f5 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}
.bk-inf-mobile-cta {
  padding-bottom: env(safe-area-inset-bottom, 0);
}
@media (min-width: 768px) {
  .bk-inf-mobile-cta {
    display: none;
  }
}
@media (max-width: 1100px) {
  .bk-inf-trust {
    grid-template-columns: 1fr;
  }
  .bk-inf-software {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .bk-inf-dash__main {
    flex-direction: column;
    align-items: flex-start;
  }
  .bk-inf-software {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: reduce) {
  .bk-inf-check.is-inview .bk-inf-dash li {
    animation: none !important;
  }
  .bk-inf-trust__item:hover,
  .bk-inf-ppo:hover {
    transform: none;
  }
  .bk-inf-dash__progress span {
    transition: none !important;
  }
}
