/* =========================================================
   ACTYTE — BOOK A CALL LANDING PAGE
   Self-contained: does not rely on the theme's global style.css or on
   validate-lp.css. Design tokens are copied verbatim from Actyte's real
   brand palette (style.css :root) so this page is unmistakably Actyte,
   not a reinvented look.
   ========================================================= */

:root{
  --bg:#05060a;
  --bg-2:#090b13;
  --surface:rgba(255,255,255,.045);
  --surface-2:rgba(255,255,255,.07);
  --border:rgba(255,255,255,.09);
  --border-2:rgba(255,255,255,.14);
  --pink:#f472b6;
  --pink-strong:#db2777;
  --purple:#9b6bff;
  --purple-strong:#7c4dff;
  --white:#f8f8fc;
  --muted:#9aa2b8;
  --muted-2:#6b7386;
  --good:#34d399;
  --bad:#6b7386;
  --gradient-brand:linear-gradient(135deg,var(--pink),var(--purple));
  --gradient-brand-soft:linear-gradient(135deg,rgba(155,107,255,.18),rgba(124,77,255,.09));
  --radius-lg:24px;
  --radius-md:16px;
  --radius-sm:10px;
  --font:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,sans-serif;
  --container:1120px;
  --ease:cubic-bezier(.16,1,.3,1);
}

.actyte-bac{overflow-x:hidden;}
.actyte-bac *{margin:0;padding:0;box-sizing:border-box;}
.actyte-bac{font-family:var(--font);background:var(--bg);color:var(--white);line-height:1.5;-webkit-font-smoothing:antialiased;}
.actyte-bac a{color:inherit;text-decoration:none;}
.actyte-bac ul{list-style:none;}
.actyte-bac img,.actyte-bac svg{display:block;max-width:100%;}
.actyte-bac button{font-family:inherit;border:none;background:none;color:inherit;cursor:pointer;}
.actyte-bac h1,.actyte-bac h2,.actyte-bac h3,.actyte-bac h4{font-weight:700;letter-spacing:-.02em;line-height:1.1;}
.actyte-bac .container{width:100%;max-width:var(--container);margin:0 auto;padding:0 28px;position:relative;z-index:2;}
.actyte-bac section{position:relative;z-index:2;}
.actyte-bac .accent{background:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;color:transparent;}

/* ---------- background layers (verbatim from style.css, see header.php) ---------- */
.bg-fixed{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.bg-noise{
  position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.035;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.bg-grid{
  position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.35;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse 80% 60% at 50% 0%, #000 40%, transparent 100%);
}
.blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;will-change:transform;}
.blob-pink{background:radial-gradient(circle,var(--pink) 0%,transparent 70%);}
.blob-purple{background:radial-gradient(circle,var(--purple) 0%,transparent 70%);}
@keyframes drift1{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(40px,-30px) scale(1.08);}}
@keyframes drift2{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(-30px,40px) scale(1.05);}}
@media (prefers-reduced-motion:reduce){.blob{animation:none!important;}}

/* ---------- reveal on scroll ---------- */
.actyte-bac [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease);}
.actyte-bac [data-reveal].in{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion:reduce){
  .actyte-bac [data-reveal]{opacity:1!important;transform:none!important;transition:none!important;}
}

/* ---------- eyebrow / section head ---------- */
.actyte-bac .eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:var(--purple);padding:6px 14px;border-radius:100px;border:1px solid var(--border-2);
  background:var(--gradient-brand-soft);margin-bottom:18px;
}
.actyte-bac .section-head{max-width:620px;margin:0 auto 36px;text-align:center;}
.actyte-bac .section-head h2{font-size:clamp(26px,3.6vw,38px);margin-bottom:14px;}
.actyte-bac .section-head p{color:var(--muted);font-size:16px;line-height:1.6;}
.actyte-bac section{padding:64px 0;}

/* ---------- buttons ---------- */
.actyte-bac .btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:15px 28px;border-radius:100px;font-weight:600;font-size:15px;white-space:nowrap;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease);
}
.actyte-bac .btn-primary{background:var(--gradient-brand);color:#0a0710;box-shadow:0 8px 26px -10px rgba(124,77,255,.4),0 8px 22px -12px rgba(244,114,182,.4);}
.actyte-bac .btn-primary:hover{color:#fff;transform:translateY(-2px);box-shadow:0 14px 32px -8px rgba(124,77,255,.45),0 14px 26px -10px rgba(244,114,182,.5);}
.actyte-bac .btn-ghost{background:none;border:1px solid var(--border-2);color:var(--white);padding:13px 24px;}
.actyte-bac .btn-ghost:hover{border-color:var(--purple);color:#fff;}
.actyte-bac .btn-purple{background:var(--purple-strong);color:#fff;box-shadow:0 8px 20px -10px rgba(124,77,255,.55);}
.actyte-bac .btn-purple:hover{background:var(--purple);color:#fff;transform:translateY(-2px);}
.actyte-bac .btn svg{width:17px;height:17px;flex-shrink:0;}

/* ---------- header ---------- */
.actyte-bac{padding-top:76px;}
.actyte-bac #bac-site-header{
  position:fixed;top:0;left:0;right:0;z-index:100;background:transparent;border-bottom:1px solid transparent;
  transition:background .4s var(--ease),border-color .4s var(--ease);
}
.actyte-bac #bac-site-header.scrolled{background:rgba(6,7,12,.7);backdrop-filter:blur(18px) saturate(150%);border-bottom-color:var(--border);}
.actyte-bac .header-inner{max-width:var(--container);margin:0 auto;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.actyte-bac .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;}
.actyte-bac .logo{height:28px;width:auto;}
.actyte-bac .header-inner .btn{padding:11px 20px;font-size:14px;}

/* ---------- hero ---------- */
.actyte-bac .bac-hero{padding:56px 0 44px;text-align:center;}
.actyte-bac .bac-hero-inner{max-width:760px;margin:0 auto;}
.actyte-bac .bac-hero h1{font-size:clamp(32px,5vw,52px);margin-bottom:20px;}
.actyte-bac .bac-hero .lede{font-size:18px;color:var(--muted);max-width:580px;margin:0 auto 32px;line-height:1.65;}
.actyte-bac .bac-cta-row{display:flex;flex-direction:column;align-items:center;gap:12px;}
.actyte-bac .bac-note{font-size:13px;color:var(--muted-2);font-weight:600;}
.actyte-bac .bac-trust-line{margin-top:22px;font-size:13.5px;color:var(--muted-2);font-weight:600;}
.actyte-bac .bac-hero-cal{
  /* No fixed height here on purpose — Cal.com's own embed script resizes
     the iframe to match its real content (month grid, then the time-slot
     panel once a date is picked) and posts that height back to us. A fixed
     height here fights that: too small and it clips into an internal
     scrollbar, too big and it reserves dead space before a date is picked.
     min-height only keeps the loading skeleton from collapsing to nothing
     before the real calendar arrives. Width needs to be generous (~960px)
     because Cal.com only renders its 3-column month_view (info + calendar
     grid + time slots, all side by side) above a certain width — narrower
     than that and it stacks the time slots below the grid instead. */
  width:100%;max-width:960px;min-height:480px;margin:28px auto 0;text-align:left;
  border:1px solid rgba(155,107,255,.45);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);
  box-shadow:0 0 0 1px rgba(155,107,255,.2),0 24px 50px -20px rgba(124,77,255,.3);
}
.actyte-bac .bac-hero-cal iframe{
  width:100%;border:0;display:block;
  /* Crops off Cal.com's own "Cal.com" watermark strip at the very bottom of
     the widget — that footer is a fixed height regardless of how tall the
     rest of the calendar gets (month grid vs. month grid + time slots), so
     pulling it up by a constant pixel amount and letting the parent's
     overflow:hidden clip it stays correct at every state, unlike a
     percentage crop would. If Cal.com ever changes that footer's height,
     this number needs to move with it. */
  margin-bottom:-64px;
}
.actyte-bac .bac-hero-cal-skeleton{padding:24px;}
.actyte-bac .bac-skel-bar{
  height:14px;border-radius:6px;margin-bottom:14px;
  background:linear-gradient(90deg,var(--surface-2) 25%,var(--border-2) 50%,var(--surface-2) 75%);
  background-size:200% 100%;animation:bac-skel-shimmer 1.6s ease-in-out infinite;
}
.actyte-bac .bac-skel-w30{width:30%;}
.actyte-bac .bac-skel-w40{width:40%;}
.actyte-bac .bac-skel-w60{width:60%;}
.actyte-bac .bac-skel-w80{width:80%;}
.actyte-bac .bac-skel-lg{height:22px;}
.actyte-bac .bac-skel-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:22px;}
.actyte-bac .bac-skel-cell{
  aspect-ratio:1;border-radius:8px;
  background:linear-gradient(90deg,var(--surface-2) 25%,var(--border-2) 50%,var(--surface-2) 75%);
  background-size:200% 100%;animation:bac-skel-shimmer 1.6s ease-in-out infinite;
}
.actyte-bac .bac-hero-cal.is-loaded .bac-hero-cal-skeleton{display:none;}
@keyframes bac-skel-shimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
@media (prefers-reduced-motion:reduce){.actyte-bac .bac-skel-bar,.actyte-bac .bac-skel-cell{animation:none;opacity:.6;}}
@media (max-width:600px){.actyte-bac .bac-hero-cal{min-height:420px;}}

/* ---------- roadmap ---------- */
.actyte-bac .bac-roadmap{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.actyte-bac .bac-roadmap-track{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;
  /* Top margin has to clear the "You Are Here" tag stacked above this row
     (label + bounce arrow, ~86px tall including its own gap) — too small a
     margin here and that tag rides up into the section heading above it. */
  max-width:900px;margin:112px auto 40px;
}
.actyte-bac .bac-roadmap .section-head p{font-weight:600;}
.actyte-bac .bac-roadmap-stage{
  padding:14px 18px;border-radius:var(--radius-sm);background:var(--gradient-brand);border:1px solid transparent;
  font-size:13.5px;font-weight:700;color:#0a0710;text-align:center;white-space:nowrap;
  box-shadow:0 8px 20px -10px rgba(124,77,255,.4),0 8px 18px -12px rgba(244,114,182,.4);
}
.actyte-bac .bac-roadmap-stage.is-here{box-shadow:0 10px 26px -8px rgba(124,77,255,.55),0 10px 22px -10px rgba(244,114,182,.55);}
.actyte-bac .bac-roadmap-arrow{color:var(--muted-2);font-size:15px;flex-shrink:0;}
.actyte-bac .bac-roadmap-arrow.is-here{color:var(--purple);}
.actyte-bac .bac-roadmap-here-group{position:relative;display:inline-flex;}
.actyte-bac .bac-roadmap-here-inner{
  display:flex;align-items:center;gap:8px;padding:10px;
  border:3px dashed var(--purple);border-radius:var(--radius-md);
}
.actyte-bac .bac-roadmap-here-tag{
  position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:8px;
  display:flex;flex-direction:column;align-items:center;gap:2px;
}
.actyte-bac .bac-roadmap-here-label{
  font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#fff;
  padding:8px 18px;border-radius:100px;background:var(--gradient-brand);border:none;white-space:nowrap;
  box-shadow:0 8px 20px -8px rgba(124,77,255,.6);
}
.actyte-bac .bac-roadmap-here-arrow{width:44px;height:44px;color:var(--purple);stroke-width:2.5;animation:bac-roadmap-bounce 1.4s ease-in-out infinite;}
@keyframes bac-roadmap-bounce{0%,100%{transform:translateY(0);}50%{transform:translateY(4px);}}
@media (prefers-reduced-motion:reduce){.actyte-bac .bac-roadmap-here-arrow{animation:none;}}
@media (max-width:600px){
  .actyte-bac .bac-roadmap-track{gap:6px;margin-top:100px;}
  .actyte-bac .bac-roadmap-stage{padding:10px 12px;font-size:12px;}
  .actyte-bac .bac-roadmap-here-inner{padding:8px;gap:6px;}
  .actyte-bac .bac-roadmap-here-label{font-size:10px;padding:5px 10px;}
}

/* ---------- immediate trust ---------- */
.actyte-bac .bac-trust-strip{padding:0 0 44px;}
.actyte-bac .bac-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
.actyte-bac .bac-badge{
  display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--muted);
  border:1px solid var(--border);border-radius:100px;padding:8px 16px;background:var(--surface);
}
.actyte-bac .bac-badge svg{width:14px;height:14px;color:var(--good);flex-shrink:0;}

/* ---------- problem ---------- */
.actyte-bac .bac-problem{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.actyte-bac .bac-problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.actyte-bac .bac-problem h2{font-size:clamp(26px,3.6vw,36px);margin:8px 0 16px;}
.actyte-bac .bac-problem .lede{color:var(--muted);font-size:16.5px;line-height:1.6;}
.actyte-bac .bac-check-list{display:flex;flex-direction:column;gap:14px;}
.actyte-bac .bac-check-list li{display:flex;align-items:flex-start;gap:12px;font-size:15.5px;color:var(--white);}
.actyte-bac .bac-check-list svg{width:18px;height:18px;color:var(--pink);flex-shrink:0;margin-top:1px;}

/* ---------- cost of guessing ---------- */
.actyte-bac .bac-cost{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.actyte-bac .bac-cost-flow{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;max-width:920px;margin:0 auto;}
.actyte-bac .bac-cost-col{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;flex:1;min-width:280px;}
.actyte-bac .bac-cost-node{
  padding:14px 16px;border-radius:12px;font-weight:700;font-size:13.5px;text-align:center;
}
.actyte-bac .bac-cost-col.bad .bac-cost-node{background:var(--surface);border:1px dashed var(--border-2);color:var(--muted);}
.actyte-bac .bac-cost-col.good .bac-cost-node{background:var(--gradient-brand-soft);border:1px solid rgba(155,107,255,.3);color:var(--purple);}
.actyte-bac .bac-cost-arrow{color:var(--muted-2);font-size:15px;}
.actyte-bac .bac-cost-vs{
  width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--gradient-brand);color:#0a0710;
  display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;
}

/* ---------- card hover (verbatim from style.css .card / .card:hover) ---------- */
.actyte-bac .bac-process-step,
.actyte-bac .bac-look-item,
.actyte-bac .bac-findings-panel,
.actyte-bac .bac-why-card,
.actyte-bac .bac-proof-card,
.actyte-bac .bac-fit-col,
.actyte-bac .bac-objection-card{
  position:relative;overflow:hidden;
  transition:transform .4s var(--ease),border-color .4s,background .4s,box-shadow .4s;
}
.actyte-bac .bac-process-step::before,
.actyte-bac .bac-look-item::before,
.actyte-bac .bac-findings-panel::before,
.actyte-bac .bac-why-card::before,
.actyte-bac .bac-proof-card::before,
.actyte-bac .bac-fit-col::before,
.actyte-bac .bac-objection-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;
  background:radial-gradient(400px circle at var(--mx,50%) var(--my,0%),rgba(244,114,182,.12),transparent 60%);
}
.actyte-bac .bac-process-step:hover::before,
.actyte-bac .bac-look-item:hover::before,
.actyte-bac .bac-findings-panel:hover::before,
.actyte-bac .bac-why-card:hover::before,
.actyte-bac .bac-proof-card:hover::before,
.actyte-bac .bac-fit-col:hover::before,
.actyte-bac .bac-objection-card:hover::before{opacity:1;}
.actyte-bac .bac-process-step:hover,
.actyte-bac .bac-look-item:hover,
.actyte-bac .bac-findings-panel:hover,
.actyte-bac .bac-why-card:hover,
.actyte-bac .bac-proof-card:hover,
.actyte-bac .bac-fit-col:hover,
.actyte-bac .bac-objection-card:hover{
  transform:translateY(-6px);border-color:var(--border-2);box-shadow:0 24px 50px -20px rgba(0,0,0,.55);
}
@media (prefers-reduced-motion:reduce){
  .actyte-bac .bac-process-step,.actyte-bac .bac-look-item,.actyte-bac .bac-findings-panel,
  .actyte-bac .bac-why-card,.actyte-bac .bac-proof-card,.actyte-bac .bac-fit-col,.actyte-bac .bac-objection-card{
    transition:none!important;
  }
  .actyte-bac .bac-process-step:hover,.actyte-bac .bac-look-item:hover,.actyte-bac .bac-findings-panel:hover,
  .actyte-bac .bac-why-card:hover,.actyte-bac .bac-proof-card:hover,.actyte-bac .bac-fit-col:hover,.actyte-bac .bac-objection-card:hover{
    transform:none;
  }
}

/* ---------- process ---------- */
.actyte-bac .bac-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.actyte-bac .bac-process-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px 20px;}
.actyte-bac .bac-process-num{
  display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;
  background:var(--gradient-brand-soft);color:var(--purple);font-size:13px;font-weight:800;margin-bottom:16px;
}
.actyte-bac .bac-process-step h4{font-size:16px;margin-bottom:8px;}
.actyte-bac .bac-process-step p{font-size:13.5px;color:var(--muted);line-height:1.5;}
.actyte-bac .bac-center-cta{text-align:center;margin-top:32px;}

/* ---------- what we'll look at ---------- */
.actyte-bac .bac-look-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.actyte-bac .bac-look-item{padding:28px 24px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);}
.actyte-bac .bac-look-num{
  display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;
  background:var(--gradient-brand-soft);color:var(--purple);font-size:13px;font-weight:800;margin-bottom:16px;
}
.actyte-bac .bac-look-item h4{font-size:17.5px;color:var(--purple);margin-bottom:10px;}
.actyte-bac .bac-look-outcome{text-align:center;margin-top:28px;font-size:15.5px;font-weight:600;color:var(--muted);}
.actyte-bac .bac-look-item p{font-size:13.5px;color:var(--muted);line-height:1.5;}

/* ---------- make it tangible ---------- */
.actyte-bac .bac-tangible{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.actyte-bac .bac-tangible-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.actyte-bac .bac-tangible h2{font-size:clamp(24px,3.4vw,34px);margin:8px 0 14px;}
.actyte-bac .bac-tangible .lede{color:var(--muted);font-size:16px;line-height:1.6;margin-bottom:24px;}
.actyte-bac .bac-findings-panel{border:1px solid var(--border-2);border-radius:var(--radius-lg);background:var(--surface);padding:26px;}
.actyte-bac .bac-findings-head{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px;}
.actyte-bac .bac-findings-dot{width:7px;height:7px;border-radius:50%;background:var(--good);flex-shrink:0;}
.actyte-bac .bac-findings-chips{display:flex;flex-direction:column;gap:10px;}
.actyte-bac .bac-findings-chip{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;padding:12px 14px;border-radius:10px;background:rgba(255,255,255,.03);}
.actyte-bac .bac-findings-chip svg{width:16px;height:16px;color:var(--purple);flex-shrink:0;}

/* ---------- why actyte ---------- */
.actyte-bac .bac-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.actyte-bac .bac-why-card{padding:22px;border:1px solid var(--border);border-radius:var(--radius-md);}
.actyte-bac .bac-why-card h4{font-size:15.5px;margin-bottom:8px;}
.actyte-bac .bac-why-card p{font-size:13.5px;color:var(--muted);line-height:1.5;}

/* ---------- real proof: video cards (manual carousel, 3 at a time) ---------- */
.actyte-bac .bac-proof{padding-bottom:56px;}
.actyte-bac .bac-video-proof-marquee{
  max-width:700px;margin:0 auto 14px;overflow-x:auto;-webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;scrollbar-width:none;
}
.actyte-bac .bac-video-proof-marquee::-webkit-scrollbar{display:none;}
.actyte-bac .bac-video-proof-track{display:flex;gap:20px;padding:0 20px;}
.actyte-bac .bac-video-proof-card{flex:0 0 220px;scroll-snap-align:start;}
.actyte-bac .bac-video-proof-frame{
  width:100%;aspect-ratio:9/16;border-radius:var(--radius-lg);overflow:hidden;
  border:1px solid var(--border-2);box-shadow:0 24px 50px -20px rgba(0,0,0,.55);background:#000;
}
.actyte-bac .bac-video-proof-frame iframe,
.actyte-bac .bac-video-proof-frame video{width:100%;height:100%;border:0;display:block;object-fit:cover;}
.actyte-bac .bac-video-proof-play{position:relative;display:block;width:100%;height:100%;padding:0;border:none;background:#000;cursor:pointer;}
.actyte-bac .bac-video-proof-play video{pointer-events:none;}
.actyte-bac .bac-video-proof-play.is-playing video{pointer-events:auto;}
.actyte-bac .bac-video-proof-play-icon{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.96);
  display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(0,0,0,.45);
  transition:transform .3s var(--ease),background .3s var(--ease);
}
.actyte-bac .bac-video-proof-play-icon svg{width:18px;height:18px;color:var(--purple-strong);margin-left:2px;}
.actyte-bac .bac-video-proof-play:hover .bac-video-proof-play-icon{transform:translate(-50%,-50%) scale(1.08);background:#fff;}
.actyte-bac .bac-video-proof-play.is-playing .bac-video-proof-play-icon{display:none;}
.actyte-bac .bac-video-proof-person{display:flex;flex-direction:column;gap:1px;margin-top:10px;text-align:center;}
.actyte-bac .bac-video-proof-name{font-weight:700;font-size:13.5px;}
.actyte-bac .bac-video-proof-role{font-size:12px;color:var(--muted-2);}
/* Shared "prev/next" control for both carousels below — one circular
   button each side instead of the single loop-only arrow from before. */
.actyte-bac .bac-carousel-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 auto 32px;}
.actyte-bac .bac-carousel-arrow{
  display:flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:50%;border:1px solid var(--border-2);
  background:var(--surface);color:var(--purple-strong);cursor:pointer;
  box-shadow:0 8px 20px -10px rgba(0,0,0,.35);transition:transform .25s var(--ease),background .25s var(--ease);
}
.actyte-bac .bac-carousel-arrow svg{width:18px;height:18px;}
.actyte-bac .bac-carousel-arrow:hover{transform:scale(1.08);background:var(--gradient-brand);color:#fff;}
@media (max-width:760px){.actyte-bac .bac-video-proof-marquee{max-width:calc(100% - 32px);}}

/* ---------- real proof: text cards (manual carousel, same technique) ---------- */
.actyte-bac .bac-proof-marquee{
  max-width:1100px;margin:0 auto 14px;overflow-x:auto;-webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;scrollbar-width:none;
}
.actyte-bac .bac-proof-marquee::-webkit-scrollbar{display:none;}
.actyte-bac .bac-proof-track{display:flex;gap:20px;padding:0 20px;}
.actyte-bac .bac-proof-card{
  /* Fixed height (not just flex-stretch) is what actually guarantees a
     clean, even grid at rest — stretch alone only matches the tallest
     card, so one long quote was still making every card in the row taller
     than it needed to be. The quote itself is clamped below to fit. */
  flex:0 0 340px;height:280px;scroll-snap-align:start;padding:24px;border:1px solid var(--border);border-radius:var(--radius-md);
  background:var(--surface);display:flex;flex-direction:column;gap:12px;
}
.actyte-bac .bac-proof-top{display:flex;align-items:center;gap:12px;}
.actyte-bac .bac-proof-avatar{
  /* Same fixed size/crop/ring for every avatar regardless of the source
     photo's own framing, so a tightly-cropped headshot and a wider one
     both end up looking like they belong to the same set of cards. */
  width:44px;height:44px;border-radius:50%;flex-shrink:0;background:var(--gradient-brand);color:#0a0710;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;
  border:1.5px solid var(--border-2);
}
.actyte-bac img.bac-proof-avatar{object-fit:cover;object-position:top;background:var(--surface-2);}
.actyte-bac .bac-proof-person{display:flex;flex-direction:column;gap:1px;}
.actyte-bac .bac-proof-name{font-weight:700;font-size:13.5px;}
.actyte-bac .bac-proof-role{font-size:12px;color:var(--muted-2);}
.actyte-bac .bac-proof-headline{font-size:14.5px;font-weight:400;line-height:1.6;color:var(--muted);}
.actyte-bac .bac-proof-quote{
  font-size:14.5px;line-height:1.6;color:var(--muted);flex-grow:1;overflow:hidden;
  display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;
}
.actyte-bac .bac-proof-card.is-expanded{height:auto;}
.actyte-bac .bac-proof-card.is-expanded .bac-proof-quote{-webkit-line-clamp:unset;overflow:visible;}
.actyte-bac .bac-proof-more{
  align-self:flex-start;font-size:13px;font-weight:700;color:var(--purple-strong);
  background:none;border:none;padding:0;cursor:pointer;flex-shrink:0;
}
.actyte-bac .bac-proof-more:hover{text-decoration:underline;}
@media (max-width:760px){.actyte-bac .bac-proof-marquee{max-width:calc(100% - 32px);}}

/* ---------- who this is for ---------- */
.actyte-bac .bac-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:920px;margin:0 auto;}
.actyte-bac .bac-fit-col{padding:26px;border-radius:var(--radius-md);border:1px solid var(--border);}
.actyte-bac .bac-fit-col.yes{background:rgba(52,211,153,.05);border-color:rgba(52,211,153,.25);}
.actyte-bac .bac-fit-col.no{background:var(--surface);}
.actyte-bac .bac-fit-col h4{font-size:15px;margin-bottom:16px;}
.actyte-bac .bac-fit-col ul{display:flex;flex-direction:column;gap:12px;}
.actyte-bac .bac-fit-col li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;}
.actyte-bac .bac-fit-col.yes svg{width:16px;height:16px;color:var(--good);flex-shrink:0;margin-top:2px;}
.actyte-bac .bac-fit-col.no svg{width:14px;height:14px;color:var(--muted-2);flex-shrink:0;margin-top:3px;}
.actyte-bac .bac-fit-col.no li{color:var(--muted);}

/* ---------- objections ---------- */
.actyte-bac .bac-objections-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.actyte-bac .bac-objection-card{padding:20px 22px;border-left:3px solid var(--purple);background:var(--surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;}
.actyte-bac .bac-objection-card h4{font-size:14.5px;color:var(--muted);font-weight:600;margin-bottom:8px;}
.actyte-bac .bac-objection-card p{font-size:14.5px;line-height:1.55;color:var(--white);}

/* ---------- faq ---------- */
.actyte-bac .bac-faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;}
.actyte-bac .bac-faq-item{border-bottom:1px solid var(--border);padding:20px 0;}
.actyte-bac .bac-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font-weight:600;font-size:15.5px;list-style:none;}
.actyte-bac .bac-faq-item summary::-webkit-details-marker{display:none;}
.actyte-bac .bac-faq-toggle{
  flex-shrink:0;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-2);position:relative;
}
.actyte-bac .bac-faq-toggle::before,.actyte-bac .bac-faq-toggle::after{content:"";position:absolute;background:var(--muted);transition:transform .25s var(--ease);}
.actyte-bac .bac-faq-toggle::before{top:50%;left:5px;right:5px;height:1.5px;transform:translateY(-50%);}
.actyte-bac .bac-faq-toggle::after{left:50%;top:5px;bottom:5px;width:1.5px;transform:translateX(-50%);}
.actyte-bac .bac-faq-item[open] .bac-faq-toggle::after{transform:translateX(-50%) rotate(90deg);opacity:0;}
.actyte-bac .bac-faq-item p{font-size:14.5px;color:var(--muted);line-height:1.6;margin-top:14px;}

/* ---------- final cta ---------- */
.actyte-bac .bac-final{text-align:center;padding:80px 0;}
.actyte-bac .bac-after-list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;margin:0 auto 28px;max-width:680px;font-size:13.5px;color:var(--muted);}
.actyte-bac .bac-after-list li{display:flex;align-items:center;gap:7px;}
.actyte-bac .bac-after-list svg{width:14px;height:14px;color:var(--good);flex-shrink:0;}
.actyte-bac .bac-final h2{font-size:clamp(28px,4vw,42px);max-width:680px;margin:0 auto 16px;}
.actyte-bac .bac-final .lede{color:var(--muted);font-size:17px;margin-bottom:32px;}

/* ---------- footer ---------- */
.actyte-bac footer{padding:40px 0 32px;border-top:1px solid var(--border);}
.actyte-bac .bac-footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:20px;}
.actyte-bac .footer-logo{height:24px;}
.actyte-bac .bac-footer-links{display:flex;flex-wrap:wrap;gap:20px;font-size:13.5px;color:var(--muted);}
.actyte-bac .bac-footer-links a:hover{color:var(--purple);}
.actyte-bac .bac-footer-bottom{font-size:12.5px;color:var(--muted-2);padding-top:18px;border-top:1px solid var(--border);}

/* ---------- sticky mobile call bar ---------- */
.actyte-bac .bac-mobile-bar{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:999;
  background:var(--bg-2);border-top:1px solid var(--border);padding:12px 20px;
}
.actyte-bac .bac-mobile-bar .btn{width:100%;}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .actyte-bac .bac-problem-grid,.actyte-bac .bac-tangible-grid{grid-template-columns:1fr;gap:36px;}
  .actyte-bac .bac-process-grid{grid-template-columns:repeat(2,1fr);}
  .actyte-bac .bac-look-grid{grid-template-columns:1fr;}
  .actyte-bac .bac-why-grid{grid-template-columns:repeat(2,1fr);}
  .actyte-bac .bac-fit-grid,.actyte-bac .bac-objections-grid{grid-template-columns:1fr;}
  .actyte-bac .bac-proof-card{flex-basis:300px;}
  .actyte-bac section{padding:48px 0;}
}
@media (max-width:600px){
  .actyte-bac .header-inner{padding:12px 18px;}
  .actyte-bac .brand span{font-size:15px;}
  .actyte-bac .header-inner .btn{padding:9px 16px;font-size:13px;}
  .actyte-bac .bac-hero{padding:44px 0 40px;}
  .actyte-bac .bac-process-grid{grid-template-columns:1fr;}
  .actyte-bac .bac-look-grid,.actyte-bac .bac-why-grid{grid-template-columns:1fr;}
  .actyte-bac .bac-proof-card{flex-basis:82vw;}
  .actyte-bac .bac-cost-flow{flex-direction:column;}
  .actyte-bac .bac-cost-vs{margin:4px 0;}
  .actyte-bac{padding-bottom:76px;}
  .actyte-bac .bac-mobile-bar{display:block;}
  .actyte-bac .bac-footer-inner{flex-direction:column;align-items:flex-start;}
}

/* Adaptive light palette — real values copied verbatim from style.css's
   own @media (prefers-color-scheme:light) block, so this page switches to
   light mode exactly like the rest of Actyte (including the live
   /distribution-channel-validation/ page) instead of staying dark-only.
   Deliberately placed at the END of this file: every rule here has the
   same specificity as its dark-mode counterpart above, and CSS resolves
   equal-specificity ties by source order, not by which @media block
   currently matches — so this must come last to actually win under a
   light-mode browser/OS instead of being silently overridden. */
@media (prefers-color-scheme:light){
  :root{
    --bg:#fbfbfe;
    --bg-2:#f1f0f7;
    --surface:rgba(20,15,50,.035);
    --surface-2:rgba(20,15,50,.055);
    --border:rgba(20,15,50,.10);
    --border-2:rgba(20,15,50,.16);
    --pink:#db2777;
    --pink-strong:#9d174d;
    --purple:#7c4dff;
    --purple-strong:#5b21b6;
    --white:#14121f;
    --muted:#565b74;
    --muted-2:#7c8299;
    --gradient-brand-soft:linear-gradient(135deg,rgba(124,77,255,.10),rgba(91,33,182,.05));
  }
  .actyte-bac #bac-site-header.scrolled{background:rgba(255,255,255,.75);}
  .bg-noise{opacity:.02;}
  .bg-grid{background-image:linear-gradient(rgba(20,15,50,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(20,15,50,.035) 1px,transparent 1px);}
  .blob{opacity:.28;}
  .actyte-bac .btn-primary,.actyte-bac .bac-cost-vs,.actyte-bac .bac-roadmap-stage{color:#fff;}
  .actyte-bac .bac-cost-col.good .bac-cost-node{border-color:rgba(124,77,255,.3);}
  .actyte-bac .bac-findings-chip{background:rgba(20,15,50,.04);}
}
