/* buildcontrol — Home page — chat widget, section rhythm and later refinements. */
.bcbot-fab{position:fixed;bottom:22px;right:22px;z-index:95;width:60px;height:60px;border-radius:50%;
  border:none;cursor:pointer;background:linear-gradient(180deg,#2D6BC8,#1F58AE);
  box-shadow:0 8px 24px rgba(31,88,174,.4);display:grid;place-items:center;transition:transform .2s}
.bcbot-fab:hover{transform:scale(1.06)}
.bcbot-fab svg{width:27px;height:27px;fill:#fff}
.bcbot-fab .ic-close{display:none}
.bcbot-fab.on .ic-chat{display:none}.bcbot-fab.on .ic-close{display:block}
.bcbot-badge{position:absolute;top:-3px;right:-3px;width:20px;height:20px;border-radius:50%;
  background:#399C36;color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;
  border:2px solid #fff;font-family:var(--f-header,sans-serif)}

.bcbot-panel{position:fixed;bottom:94px;right:22px;z-index:95;width:min(93vw,392px);height:min(74vh,600px);
  background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;
  box-shadow:0 20px 60px rgba(11,32,60,.3);opacity:0;visibility:hidden;transform:translateY(16px) scale(.98);
  transition:opacity .26s,visibility .26s,transform .26s;transform-origin:bottom right}
.bcbot-panel.on{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
@media(max-width:480px){.bcbot-panel{width:calc(100vw - 20px);right:10px;bottom:86px;height:76vh}}

.bcbot-hd{background:linear-gradient(180deg,#113967,#0B488D);padding:15px 18px;color:#fff;display:flex;align-items:center;gap:12px}
.bcbot-hd .av{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.15);display:grid;place-items:center;flex:none;position:relative}
.bcbot-hd .av svg{width:23px;height:23px;fill:#fff}
.bcbot-hd .av:after{content:"";position:absolute;bottom:1px;right:1px;width:10px;height:10px;border-radius:50%;background:#4ADE80;border:2px solid #0B488D}
.bcbot-hd b{font-family:var(--f-header,sans-serif);font-weight:700;font-size:15px;display:block;line-height:1.2}
.bcbot-hd small{font-size:12px;color:#B7C8DE}
.bcbot-hd .rst{margin-left:auto;background:rgba(255,255,255,.12);border:none;color:#fff;cursor:pointer;
  width:30px;height:30px;border-radius:8px;display:grid;place-items:center}
.bcbot-hd .rst svg{width:15px;height:15px;fill:#fff}

.bcbot-body{flex:1;overflow-y:auto;padding:16px;background:var(--screen-bg-alt,#FAFCFF);display:flex;flex-direction:column;gap:4px}
.bcbot-turn{display:flex;gap:9px;align-items:flex-end;margin-bottom:10px;max-width:90%}
.bcbot-turn.user{align-self:flex-end;flex-direction:row-reverse}
.bcbot-mav{width:28px;height:28px;border-radius:50%;flex:none;background:linear-gradient(180deg,#2D6BC8,#1F58AE);
  display:grid;place-items:center}
.bcbot-mav svg{width:15px;height:15px;fill:#fff}
.bcbot-turn.user .bcbot-mav{display:none}
.bcbot-col{display:flex;flex-direction:column;gap:2px;min-width:0}
.bcbot-turn.user .bcbot-col{align-items:flex-end}
.bcbot-msg{padding:10px 14px;border-radius:15px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}
.bcbot-msg.bot{background:#fff;color:#2A2E33;border:1px solid var(--n-150,#E8EBEF);border-bottom-left-radius:5px}
.bcbot-msg.user{background:linear-gradient(180deg,#2D6BC8,#1F58AE);color:#fff;border-bottom-right-radius:5px}
.bcbot-msg a{color:#1F58AE;font-weight:700;text-decoration:none}
.bcbot-msg.user a{color:#fff;text-decoration:underline}
.bcbot-time{font-size:10.5px;color:var(--n-400,#9AA3AD);padding:0 6px}

.bcbot-typing{align-self:flex-start;background:#fff;border:1px solid var(--n-150,#E8EBEF);border-radius:15px;
  border-bottom-left-radius:5px;padding:12px 15px;margin:0 0 10px 37px;display:none;gap:4px;width:fit-content}
.bcbot-typing.on{display:flex}
.bcbot-typing span{width:7px;height:7px;border-radius:50%;background:#9AA3AD;animation:bcbob 1.2s infinite}
.bcbot-typing span:nth-child(2){animation-delay:.2s}.bcbot-typing span:nth-child(3){animation-delay:.4s}
@keyframes bcbob{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}

.bcbot-chips{display:flex;flex-wrap:wrap;gap:7px;padding:2px 16px 12px;background:var(--screen-bg-alt,#FAFCFF)}
.bcbot-chip{border:1px solid #CFE0F6;background:#fff;color:#1F58AE;border-radius:9999px;padding:7px 13px;
  font-family:var(--f-header,sans-serif);font-weight:600;font-size:12.5px;cursor:pointer;transition:background .16s}
.bcbot-chip:hover{background:#EAF1FB}

.bcbot-foot{padding:11px 13px;border-top:1px solid var(--n-150,#E8EBEF);background:#fff;display:flex;gap:9px;align-items:center}
.bcbot-foot input{flex:1;height:42px;border:1px solid var(--n-200,#D5D9DE);border-radius:9999px;padding:0 16px;
  font-family:inherit;font-size:14px;color:#212121;outline:none;transition:border-color .18s}
.bcbot-foot input:focus{border-color:#2D6BC8}
.bcbot-foot{flex-wrap:wrap}
.bcbot-attach{width:40px;height:42px;border:none;background:none;cursor:pointer;flex:none;display:grid;place-items:center;border-radius:9px}
.bcbot-attach:hover{background:var(--screen-bg-alt,#FAFCFF)}
.bcbot-attach svg{width:20px;height:20px;fill:var(--n-500,#9AA3AD)}
.bcbot-attach:hover svg{fill:#1F58AE}
.bcbot-fchip{display:none;align-items:center;gap:8px;width:100%;margin:0 0 8px;padding:8px 11px;background:#EAF1FB;border:1px solid #CFE0F6;border-radius:9px;font-size:12.5px;color:#1F58AE;font-weight:600}
.bcbot-fchip.on{display:flex}
.bcbot-fchip .fn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bcbot-fchip .fx{margin-left:auto;background:none;border:none;cursor:pointer;color:#1F58AE;font-size:16px;line-height:1;padding:0 2px}
.bcbot-fchip.bad{background:#FDECEC;border-color:#F5B5B5;color:#D83939}

.bcbot-hd .menu-btn{background:rgba(255,255,255,.12);border:none;color:#fff;cursor:pointer;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;margin-left:auto}
.bcbot-hd .menu-btn svg{width:16px;height:16px;fill:#fff}
.bcbot-hd .rst{margin-left:8px}
.bcbot-menu{padding:6px 16px 14px;background:var(--screen-bg-alt,#FAFCFF)}
.bcbot-menu .mlab{font-family:var(--f-header,sans-serif);font-weight:700;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--n-400,#9AA3AD);margin:6px 2px 10px}
.bcbot-mgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bcbot-mtile{display:flex;align-items:center;gap:9px;padding:11px 12px;background:#fff;border:1px solid var(--n-150,#E8EBEF);border-radius:11px;cursor:pointer;text-align:left;font-family:var(--f-header,sans-serif);font-weight:600;font-size:13px;color:var(--navy-900,#0E2E56);transition:border-color .16s,transform .16s}
.bcbot-mtile:hover{border-color:#B9CDEA;transform:translateY(-1px)}
.bcbot-mtile .mi{width:30px;height:30px;border-radius:8px;flex:none;display:grid;place-items:center;background:#EAF1FB}
.bcbot-mtile .mi svg{width:16px;height:16px;fill:#1F58AE}
.bcbot-help{margin:12px 2px 2px;padding:11px 12px;background:#fff;border:1px solid var(--n-150,#E8EBEF);border-radius:11px;font-size:12.5px;color:var(--n-600,#5A6068);line-height:1.5}
.bcbot-help a{color:#1F58AE;font-weight:600;text-decoration:none}
.bcbot-sales{padding:16px 16px 18px;background:var(--screen-bg-alt,#FAFCFF)}
.bcbot-sales .sh{display:flex;align-items:center;gap:9px;margin:2px 2px 14px}
.bcbot-sales .sh b{font-family:var(--f-header,sans-serif);font-weight:700;font-size:15px;color:var(--navy-900,#0E2E56)}
.bcbot-sback{margin-left:auto;background:none;border:none;cursor:pointer;color:#1F58AE;font-family:var(--f-header,sans-serif);font-weight:600;font-size:12.5px}
.bcbot-sopt{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;background:#fff;border:1px solid var(--n-150,#E8EBEF);border-radius:11px;cursor:pointer;text-align:left;margin-bottom:9px;text-decoration:none;transition:border-color .16s,transform .16s}
.bcbot-sopt:hover{border-color:#B9CDEA;transform:translateY(-1px)}
.bcbot-sopt .si{width:36px;height:36px;border-radius:9px;flex:none;display:grid;place-items:center}
.bcbot-sopt .si svg{width:18px;height:18px;fill:#fff}
.bcbot-sopt .st{min-width:0}
.bcbot-sopt .st b{display:block;font-family:var(--f-header,sans-serif);font-weight:600;font-size:14px;color:var(--navy-900,#0E2E56);line-height:1.3}
.bcbot-sopt .st span{font-size:12px;color:var(--n-500,#9AA3AD)}
.si-call{background:linear-gradient(180deg,#2D6BC8,#1F58AE)}
.si-wa{background:#25D366}
.si-cb{background:linear-gradient(180deg,#ED932B,#D97A1A)}
.bcbot-cbform{margin-top:6px;padding:14px;background:#fff;border:1px solid var(--n-150,#E8EBEF);border-radius:11px}
.bcbot-cbform input{width:100%;height:42px;border:1px solid var(--n-200,#D5D9DE);border-radius:9px;padding:0 13px;font-family:inherit;font-size:14px;margin-bottom:9px;outline:none;box-sizing:border-box}
.bcbot-cbform input:focus{border-color:#2D6BC8}
.bcbot-cbform input.bad{border-color:#D83939}
.bcbot-cbform button{width:100%;height:44px;border:none;border-radius:9px;background:linear-gradient(180deg,#2D6BC8,#1F58AE);color:#fff;font-family:var(--f-header,sans-serif);font-weight:700;font-size:14px;cursor:pointer}
.bcbot-cbdone{text-align:center;padding:8px 0;color:#399C36;font-family:var(--f-header,sans-serif);font-weight:600;font-size:14px}

.bcbot-intro{padding:26px 20px;text-align:center}
.bcbot-intro .ii{width:54px;height:54px;border-radius:50%;background:linear-gradient(180deg,#2D6BC8,#1F58AE);display:grid;place-items:center;margin:0 auto 14px}
.bcbot-intro .ii svg{width:25px;height:25px;fill:#fff}
.bcbot-intro h4{font-family:var(--f-header,sans-serif);font-weight:700;font-size:18px;color:var(--navy-900,#0E2E56);margin:0 0 7px}
.bcbot-intro p{font-size:13px;color:var(--n-600,#5A6068);line-height:1.5;margin:0 0 16px}
.bcbot-intro input{width:100%;height:44px;border:1px solid var(--n-200,#D5D9DE);border-radius:10px;padding:0 14px;font-family:inherit;font-size:14px;margin-bottom:10px;outline:none;box-sizing:border-box;text-align:center}
.bcbot-intro input:focus{border-color:#2D6BC8}
.bcbot-intro input.bad{border-color:#D83939}
.bcbot-intro .igo{width:100%;height:46px;border:none;border-radius:10px;background:linear-gradient(180deg,#2D6BC8,#1F58AE);color:#fff;font-family:var(--f-header,sans-serif);font-weight:700;font-size:14.5px;cursor:pointer;box-shadow:0 6px 18px rgba(31,88,174,.28)}
.bcbot-intro .iskip{width:100%;height:38px;border:none;background:none;color:var(--n-400,#9AA3AD);font-family:var(--f-header,sans-serif);font-weight:600;font-size:13px;cursor:pointer;margin-top:5px}


.bcbot-send{width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;flex:none;
  background:linear-gradient(180deg,#2D6BC8,#1F58AE);display:grid;place-items:center}
.bcbot-send svg{width:18px;height:18px;fill:#fff}
@media(prefers-reduced-motion:reduce){.bcbot-panel,.bcbot-fab{transition:none}}

.bcbot-lead{background:#fff;border:1px solid #CFE0F6;border-radius:14px;padding:14px;margin:2px 0 10px 37px;max-width:82%}
.bcbot-lead p{font-size:13px;color:var(--n-600,#5A6068);margin:0 0 10px;line-height:1.45}
.bcbot-lead input{width:100%;height:40px;border:1px solid var(--n-200,#D5D9DE);border-radius:8px;padding:0 12px;
  font-family:inherit;font-size:13.5px;margin-bottom:8px;outline:none;transition:border-color .16s}
.bcbot-lead input:focus{border-color:#2D6BC8}
.bcbot-lead input.bad{border-color:#D83939}
.bcbot-lead .row{display:flex;gap:8px}
.bcbot-lead .row button{flex:1;height:40px;border-radius:8px;border:none;cursor:pointer;
  font-family:var(--f-header,sans-serif);font-weight:700;font-size:13.5px}
.bcbot-lead .go{background:linear-gradient(180deg,#2D6BC8,#1F58AE);color:#fff}
.bcbot-lead .skip{background:#fff;border:1px solid var(--n-200,#D5D9DE);color:var(--n-600,#5A6068)}
.bcbot-lead.done{border-color:#399C36;text-align:center}
.bcbot-lead.done p{color:#399C36;font-weight:600;margin:0}
.bcbot-wa{display:inline-flex;align-items:center;gap:8px;margin-top:9px;padding:9px 15px;border-radius:9999px;
  background:#25D366;color:#fff!important;font-family:var(--f-header,sans-serif);font-weight:700;font-size:13px;
  text-decoration:none}
.bcbot-wa svg{width:16px;height:16px;fill:#fff}

/* interaction polish - soft elevation, lift on hover, press on active */
@media(prefers-reduced-motion:no-preference){
  .btn,.btn-p,.btn-s,.nav-cta,.nav-trial,.f-submit,.hstore,.bcpop-cta{
    transition:transform .18s cubic-bezier(.2,.7,.3,1),box-shadow .18s cubic-bezier(.2,.7,.3,1),
               background .18s ease,border-color .18s ease}
  .btn:hover,.btn-p:hover,.nav-cta:hover,.f-submit:hover,.bcpop-cta:hover{
    transform:translateY(-2px);box-shadow:0 12px 28px -12px rgba(16,40,80,.45)}
  .btn-s:hover,.nav-trial:hover,.hstore:hover{
    transform:translateY(-2px);box-shadow:0 10px 24px -14px rgba(16,40,80,.40)}
  .btn:active,.btn-p:active,.btn-s:active,.nav-cta:active,.nav-trial:active,
  .f-submit:active,.hstore:active,.bcpop-cta:active{
    transform:translateY(0);box-shadow:0 4px 12px -8px rgba(16,40,80,.40)}

  .mod-card,.cs-card,.bcard,.bp-rcard{
    transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s cubic-bezier(.2,.7,.3,1),
               border-color .22s ease}
  .mod-card:hover,.cs-card:hover{
    transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(16,40,80,.34);border-color:#CBDCF3}
  .mod-card:hover .mod-ic{transform:scale(1.06)}
  .mod-ic{transition:transform .22s cubic-bezier(.2,.7,.3,1)}

  /* header gains a soft shadow once the page is scrolled */
  .nav{transition:box-shadow .25s ease,background .25s ease}
  .nav.scrolled{box-shadow:0 1px 0 rgba(16,40,80,.06),0 8px 30px -16px rgba(16,40,80,.22)}
}
/* how it works - connected steps */
.how-grid{position:relative;gap:20px}
.how-grid::before{content:"";position:absolute;left:12%;right:12%;top:56px;height:2px;
  background:linear-gradient(90deg,var(--n-150),var(--brand-600) 22%,var(--brand-600) 78%,var(--n-150));
  opacity:.55;z-index:0}
.how-step{position:relative;z-index:1;background:#fff;border:1px solid var(--n-150);
  border-radius:20px;padding:34px 26px 28px;box-shadow:0 6px 22px rgba(17,57,103,.06);
  display:flex;flex-direction:column;align-items:flex-start;overflow:hidden}
.how-step::after{content:attr(data-step);position:absolute;right:14px;top:2px;
  font-family:var(--f-header);font-weight:700;font-size:88px;line-height:1;
  color:var(--brand-600);opacity:.05;pointer-events:none}
.how-num{position:relative;width:46px;height:46px;margin-bottom:18px;
  box-shadow:0 8px 20px -8px rgba(31,88,174,.65);outline:6px solid var(--screen-bg)}
.how-step h3{font-family:var(--f-header);font-weight:700;font-size:18.5px;color:var(--navy-900);margin:0 0 9px}
.how-step p{margin:0;color:var(--n-600);line-height:1.62}
@media(prefers-reduced-motion:no-preference){
  .how-step{transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s cubic-bezier(.2,.7,.3,1),border-color .22s ease}
  .how-step:hover{transform:translateY(-5px);box-shadow:0 22px 46px -20px rgba(17,57,103,.34);border-color:#CBDCF3}
  .how-num{transition:transform .22s cubic-bezier(.2,.7,.3,1)}
  .how-step:hover .how-num{transform:scale(1.07)}
}
@media(max-width:900px){.how-grid::before{display:none}}
/* footer address is the directions link */
a.ctx{display:block;text-decoration:none;transition:color .18s ease}
a.ctx:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
/* heading rhythm - looser leading so multi-line headings breathe */
.center-head h2,.fps-head h2,.bp-rhead h2,section h2{line-height:1.28}
.center-head h2{margin-bottom:14px}
.center-head p,.fps-head p{line-height:1.65}
/* extra hero chips */
.hshot .hs-chip2{right:auto;left:34px;top:auto;bottom:-2px}
.hshot .hs-chip3{top:auto;right:-6px;bottom:-2px}
@media(prefers-reduced-motion:no-preference){
  .hshot .hs-chip2{animation:hsPop .6s .7s both, hsFl 6.8s 1.5s ease-in-out infinite}
  .hshot .hs-chip3{animation:hsPop .6s .85s both, hsFl 7.6s 1.7s ease-in-out infinite reverse}
}
@media(max-width:560px){
  .hshot .hs-chip2{left:6px;bottom:-2px;font-size:11px;padding:7px 11px}
  .hshot .hs-chip3{bottom:8px;font-size:11px;padding:7px 11px}
}

/* capability strip - cards */
.capstrip{background:var(--screen-bg-alt);padding:54px 0}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:960px;margin:0 auto}
.capstrip .cap{background:#fff;border:1px solid var(--n-150);border-radius:18px;padding:26px 24px;
  text-align:center;box-shadow:0 6px 22px rgba(17,57,103,.06)}
.capstrip .cap-ic{width:46px;height:46px;margin:0 auto 14px;border-radius:14px;display:grid;place-items:center;
  background:var(--info-bg)}
.capstrip .cap-ic svg{width:22px;height:22px;fill:var(--brand-700)}
.capstrip .cap b{display:block;font-family:var(--f-header);font-weight:700;font-size:19px;
  letter-spacing:-.01em;color:var(--navy-900);line-height:1.3}
.capstrip .cap span{display:block;margin-top:6px;font-size:13.5px;color:var(--n-500)}
@media(prefers-reduced-motion:no-preference){
  .capstrip .cap{transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s cubic-bezier(.2,.7,.3,1)}
  .capstrip .cap:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(17,57,103,.30)}
}
@media(max-width:780px){.cap-grid{grid-template-columns:1fr}}
/* automation cards - icon beside the title, one colour each */
.autom-hd{display:flex;align-items:flex-start;gap:13px;margin-bottom:10px}
.autom-hd h3{margin:0!important;line-height:1.32;padding-top:10px}
.autom-ic{flex:none;width:42px;height:42px;border-radius:13px;display:grid;place-items:center}
.autom-ic.c1{background:#E7F7F0}.autom-ic.c1 svg{fill:#0E9F6E}
.autom-ic.c2{background:#EFF5FE}.autom-ic.c2 svg{fill:#2D6BC8}
.autom-ic.c3{background:#FDF3E3}.autom-ic.c3 svg{fill:#D98515}
.autom-ic.c4{background:#F1EDFC}.autom-ic.c4 svg{fill:#7C5CD6}
.autom-ic.c5{background:#FCECEC}.autom-ic.c5 svg{fill:#D64545}
.autom-ic.c6{background:#EAEEFC}.autom-ic.c6 svg{fill:#3B5BDB}
.autom-ic svg{width:23px;height:23px}
@media(prefers-reduced-motion:no-preference){
  .autom-ic{transition:transform .22s cubic-bezier(.2,.7,.3,1)}
  .autom-card:hover .autom-ic{transform:scale(1.08)}
}
@media(max-width:520px){.autom-hd{gap:11px}.autom-ic{width:38px;height:38px;border-radius:11px}}
/* capability icons - distinct colour each */
.capstrip .cap-ic.k1{background:#E7F7F0}.capstrip .cap-ic.k1 svg{fill:#0E9F6E}
.capstrip .cap-ic.k2{background:#EFF5FE}.capstrip .cap-ic.k2 svg{fill:#2D6BC8}
.capstrip .cap-ic.k3{background:#F1EDFC}.capstrip .cap-ic.k3 svg{fill:#7C5CD6}
.capstrip .cap-ic svg{width:25px;height:25px}
/* touch targets - footer links on small screens */
@media(max-width:760px){
  .foot-col ul li a{display:inline-block;padding:6px 0;line-height:1.4}
  .foot-lower a,.foot-band a{padding:4px 0;display:inline-block}
}
/* section rhythm - trim the gaps between stacked bands */
.mods-more{margin-top:28px}
.section{padding-top:66px;padding-bottom:66px}
.lstrip+.capstrip,.mods+.autom,.autom+.how,.how+.cases{padding-top:58px}
.capstrip{padding:46px 0}
/* capability tiles - give the glyph a real box so it centres exactly */
.capstrip .cap-ic{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;
  margin:0 auto 14px;line-height:0;flex:none}
.capstrip .cap-ic svg{width:28px;height:28px;display:block}
.capstrip .cap{display:flex;flex-direction:column;align-items:center;text-align:center}
.capstrip .cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.capstrip .cap{height:100%}

/* Keeps the spacing this page shipped with. An inline <style> element used to
   sit between .section.mods and .section.autom, so the `.mods + .autom` rule
   above never matched and .section's 66px applied. Moving the CSS out of the
   markup made them adjacent. Delete this rule to adopt the 58px intended above. */
.mods + .autom{padding-top:66px}
