/* SkyworkBI design system. Hex-inspired: grainy off-white, framed grid, extended headings, mono labels.
   Everything is scoped under .swb so it can't clash with the WordPress theme. */
@import url("https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@112,600;112,700;112,800&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap");

.swb{
  --bg:#F5F3EE;--bg2:#EFECE5;--paper:#FFFFFF;--ink:#15141C;--ink2:#3A3946;--muted:#6B6A78;--line:#DDD9CF;--line2:#CBC6BA;
  --violet:#6550D1;--violet2:#8A7BE0;--blue:#6F8EDB;--lav:#B7ABEE;--blush:#FBE9E5;--blush2:#F6D6CF;--mint:#2BB89A;
  --panel:#16151F;--panel2:#1F1E2B;--pline:#2E2C3D;--ptext:#E7E5F0;
  --r:12px;--maxw:1240px;
  --fh:"Archivo",ui-sans-serif,system-ui,sans-serif;--fb:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--fm:"JetBrains Mono",ui-monospace,Consolas,monospace;
  background:var(--bg);color:var(--ink);font:400 17px/1.6 var(--fb);-webkit-font-smoothing:antialiased;position:relative;overflow-x:clip}
.swb::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .09 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.swb>*{position:relative;z-index:1}
.swb *,.swb *::before,.swb *::after{box-sizing:border-box}
.swb a{color:inherit;text-decoration:none}
.swb img,.swb svg{display:block;max-width:100%}
.swb p{margin:0}
.swb ul{margin:0;padding:0;list-style:none}
.swb h1,.swb h2,.swb h3,.swb h4{font-family:var(--fh);font-stretch:112%;color:var(--ink);margin:0;letter-spacing:-.025em;line-height:1.04}
.swb h1{font-size:clamp(38px,5vw,68px);font-weight:800}
.swb h2{font-size:clamp(30px,4vw,50px);font-weight:700}
.swb h3{font-size:clamp(20px,1.8vw,24px);font-weight:700;line-height:1.15}
.swb h4{font-size:17px;font-weight:700;line-height:1.25;letter-spacing:-.01em}
.swb :focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:6px}
.swb .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* framed grid: vertical rails + corner ticks like Hex */
.swb-frame{max-width:var(--maxw);margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line);position:relative}
.swb-sec{border-top:1px solid var(--line);padding:104px 56px;position:relative}
.swb-sec::before,.swb-sec::after{content:"";position:absolute;top:-5px;width:9px;height:9px;border:1px solid var(--line2);background:var(--bg)}
.swb-sec::before{left:-5px}.swb-sec::after{right:-5px}
.swb-sec--tight{padding-top:64px;padding-bottom:64px}
.swb-sec--dark{background:var(--panel);color:var(--ptext);border-top-color:var(--pline)}
.swb-sec--dark h2,.swb-sec--dark h3,.swb-sec--dark h4{color:#fff}
.swb-sec--dark .swb-label{color:var(--lav)}
.swb-sec--dark .swb-lead{color:#B9B7C8}
.swb-label{display:inline-flex;align-items:center;gap:10px;font:500 13px/1 var(--fm);letter-spacing:.08em;text-transform:uppercase;color:var(--violet);margin-bottom:20px}
.swb-label::before{content:"";width:18px;height:1px;background:currentColor}
.swb-lead{font-size:clamp(17px,1.5vw,20px);color:var(--ink2);max-width:60ch;margin-top:22px}
.swb-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.swb-head .swb-lead{max-width:46ch;margin-top:0}
.swb-center{text-align:center}.swb-center .swb-lead{margin-left:auto;margin-right:auto}

/* buttons: ink primary, blush bracketed secondary (Hex corner handles) */
.swb-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.swb-center .swb-btns{justify-content:center}
.swb-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;font:500 16px/1 var(--fm);letter-spacing:.01em;border:1px solid var(--ink);border-radius:2px;transition:background .15s,transform .15s;cursor:pointer}
.swb-btn:hover{transform:translateY(-1px)}
.swb-btn--ink{background:var(--ink);color:#fff!important}
.swb-btn--ink:hover{background:#2A2836}
.swb-btn--blush{background:var(--blush);color:var(--ink)!important;outline:1px solid var(--ink);outline-offset:3px}
.swb-btn--blush:hover{background:var(--blush2)}
.swb-btn--blush::before,.swb-btn--blush::after{content:"";position:absolute;width:9px;height:9px;border:1px solid var(--ink);border-radius:50%;background:var(--bg)}
.swb-btn--blush::before{top:-8px;left:-8px}.swb-btn--blush::after{bottom:-8px;right:-8px}
.swb-btn--ghost{background:transparent;color:var(--ink)!important;border-color:var(--line2)}
.swb-btn--ghost:hover{border-color:var(--ink)}
.swb-sec--dark .swb-btn--ghost{color:#fff!important;border-color:var(--pline)}
.swb-link{font:500 15px/1 var(--fm);color:var(--violet);display:inline-flex;gap:8px;align-items:center;margin-top:18px}
.swb-link::after{content:"\2192";transition:transform .15s}
.swb-link:hover::after{transform:translateX(4px)}
.swb-micro{font:400 13px/1.5 var(--fm);color:var(--muted);margin-top:16px}

/* neutralise the WordPress theme / Elementor kit button styles inside .swb */
.swb button,.swb button:hover,.swb button:focus{background:none;border:0;border-radius:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:none;text-decoration:none;padding:0;margin:0;width:auto;min-height:0;box-shadow:none;line-height:inherit}

/* header */
.swb-header{position:sticky;top:0;z-index:50;background:rgba(245,243,238,.86);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.swb-header .swb-frame{display:flex;align-items:center;gap:28px;padding:16px 32px;border-color:transparent}
.swb-logo{font:800 21px/1 var(--fh);font-stretch:112%;letter-spacing:-.03em;display:flex;align-items:center;gap:10px}
.swb-logo i{width:22px;height:22px;border-radius:6px;background:conic-gradient(from 210deg,var(--violet),var(--blue),var(--lav),var(--violet));display:block}
.swb-nav{display:flex;gap:4px;margin-left:auto;align-items:center}
.swb-nav>li{position:relative}
.swb-nav>li>a,.swb .swb-nav>li>button{display:flex;align-items:center;gap:6px;padding:10px 14px;font:500 15px/1 var(--fb);color:var(--ink2);background:none;border:0;cursor:pointer;border-radius:8px}
.swb-nav>li>a:hover,.swb .swb-nav>li>button:hover,.swb-nav>li>a[aria-current]{color:var(--ink);background:var(--bg2)}
.swb .swb-nav>li>button::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.swb-mega{position:absolute;top:calc(100% + 10px);left:-12px;width:min(560px,90vw);background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px -24px rgba(21,20,28,.28);padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:4px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:.15s}
.swb-nav>li:hover .swb-mega,.swb-nav>li:focus-within .swb-mega,.swb-nav>li.is-open .swb-mega{opacity:1;visibility:visible;transform:none}
.swb-mega a{display:block;padding:12px 14px;border-radius:10px}
.swb-mega a:hover{background:var(--bg)}
.swb-mega b{display:block;font:600 15px/1.3 var(--fb);color:var(--ink)}
.swb-mega span{display:block;font-size:13.5px;line-height:1.45;color:var(--muted);margin-top:4px}
.swb-header .swb-btn{padding:12px 18px;font-size:14px}
.swb button.swb-burger{display:none;margin-left:auto;background:none;border:1px solid var(--line2);border-radius:8px;width:42px;height:42px;cursor:pointer}
.swb-burger span{display:block;width:18px;height:1.5px;background:var(--ink);margin:4px auto}

/* hero */
.swb-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:start;padding-top:88px;padding-bottom:96px}
.swb-hero--solo{grid-template-columns:1fr}
.swb-hero .swb-lead{max-width:50ch}
.swb-bubbles{display:flex;margin-bottom:28px}
.swb-bubbles span{width:46px;height:46px;border-radius:50%;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;margin-left:-8px;box-shadow:0 6px 16px -8px rgba(21,20,28,.25);font:700 12px/1 var(--fm);color:var(--ink2)}
.swb-bubbles span:first-child{margin-left:0}
.swb-bubbles svg{width:22px;height:22px}

/* agent window mock (Hex-style tabs) */
.swb-win{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 40px 80px -40px rgba(21,20,28,.35);overflow:hidden;font-size:15px}
.swb-win-cap{font:500 13px/1 var(--fm);letter-spacing:.1em;color:var(--ink2);padding:0 0 10px 4px}
.swb-win-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--bg)}
.swb-win-bar b{font:800 14px/1 var(--fh);font-stretch:112%;margin-right:8px}
.swb-win-bar em{font-style:normal;color:var(--muted);font-size:14px;margin-right:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.swb button.swb-tab{border:0;background:none;padding:8px 12px;border-radius:8px;font:500 14px/1 var(--fb);color:var(--muted);cursor:pointer;display:flex;align-items:center;gap:6px}
.swb button.swb-tab[aria-selected=true]{background:#ECE9FB;color:var(--violet)}
.swb-win-body{padding:22px 22px 24px;min-height:440px}
.swb-pane[hidden]{display:none}
.swb-msg-user{margin-left:auto;max-width:82%;background:var(--bg);border:1px solid var(--line);border-radius:14px 14px 4px 14px;padding:12px 14px;width:fit-content}
.swb-think{margin:16px 0;padding:10px 14px;background:var(--bg);border-radius:8px;color:var(--muted);font-size:14px;display:flex;gap:8px;align-items:center}
.swb-think::before{content:"\203A";font-size:18px;line-height:0}
.swb-msg-agent p+p{margin-top:10px}
.swb-chart{margin-top:16px;border:1px solid var(--line);border-radius:10px;padding:14px 16px}
.swb-chart-h{display:flex;justify-content:space-between;color:var(--muted);font-size:13.5px;margin-bottom:12px}
.swb-row{display:grid;grid-template-columns:minmax(120px,38%) 1fr;gap:12px;align-items:center;font-size:13.5px;margin-top:9px}
.swb-row span:first-child{text-align:right;color:var(--ink2)}
.swb-stack{display:flex;height:22px}
.swb-stack i{display:block;height:100%;transform-origin:left;animation:swb-grow .9s cubic-bezier(.2,.8,.2,1) both}
.swb-stack i:nth-child(1){background:var(--violet)}.swb-stack i:nth-child(2){background:var(--blue)}.swb-stack i:nth-child(3){background:var(--lav)}
.swb-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:12.5px;color:var(--muted)}
.swb-legend span::before{content:"";display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:6px;background:var(--c)}
.swb-evid li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.swb-evid li:last-child{border-bottom:0}
.swb-evid code{font:500 12px/1 var(--fm);background:#ECE9FB;color:var(--violet);padding:6px 8px;border-radius:6px;height:fit-content;white-space:nowrap}
.swb-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.swb-kpi{border:1px solid var(--line);border-radius:10px;padding:12px}
.swb-kpi small{display:block;font:500 11px/1.3 var(--fm);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.swb-kpi b{display:block;font:800 26px/1.1 var(--fh);font-stretch:112%;margin-top:6px}
.swb-kpi em{font-style:normal;font-size:12.5px;color:var(--mint)}
.swb-spark{margin-top:12px;border:1px solid var(--line);border-radius:10px;padding:12px}
.swb-tag{display:inline-block;font:500 11px/1 var(--fm);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:6px 8px}
.swb-type{display:inline;border-right:2px solid var(--violet);animation:swb-caret 1s steps(1) infinite}

/* side mock cards (Slack / Teams thread) */
.swb-thread{background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:14.5px}
.swb-thread-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--bg);font:500 13px/1 var(--fm);color:var(--muted)}
.swb-thread-bar i{width:9px;height:9px;border-radius:50%;background:var(--line2)}
.swb-thread-bar b{margin-left:auto;font-weight:500}
.swb-post{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:14px}
.swb-av{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;font:700 13px/1 var(--fm);color:#fff;background:var(--c,var(--violet))}
.swb-post b{font-weight:600}.swb-post small{color:var(--muted);margin-left:6px}
.swb-post .swb-mention{background:#ECE9FB;color:var(--violet);padding:1px 4px;border-radius:4px}
.swb-post .swb-btn{padding:8px 12px;font-size:13px;margin-top:10px}

/* quote */
.swb-quote{display:grid;grid-template-columns:40px 1fr;gap:18px;max-width:780px}
.swb-quote::before{content:"\201D";font:800 64px/.8 var(--fh);color:var(--line2)}
.swb-quote blockquote{margin:0;font:500 clamp(20px,2.2vw,27px)/1.42 var(--fb);color:var(--ink);letter-spacing:-.01em}
.swb-quote cite{grid-column:2;display:block;margin-top:16px;font:400 14px/1.5 var(--fm);font-style:normal;color:var(--muted)}

/* cards and grids */
.swb-grid{display:grid;gap:18px;margin-top:56px}
.swb-g2{grid-template-columns:repeat(2,1fr)}.swb-g3{grid-template-columns:repeat(3,1fr)}.swb-g4{grid-template-columns:repeat(4,1fr)}
.swb-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;transition:border-color .15s,transform .15s,box-shadow .15s}
a.swb-card:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:0 18px 40px -26px rgba(21,20,28,.4)}
.swb-card p{color:var(--ink2);margin-top:12px;font-size:16px}
.swb-card .swb-link{margin-top:auto;padding-top:20px}
.swb-sec--dark .swb-card{background:var(--panel2);border-color:var(--pline)}
.swb-sec--dark .swb-card p{color:#B9B7C8}
.swb-ico{width:44px;height:44px;border-radius:11px;background:#ECE9FB;display:grid;place-items:center;margin-bottom:22px}
.swb-ico svg{width:22px;height:22px;fill:none;stroke:var(--violet);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.swb-num{font:500 13px/1 var(--fm);color:var(--violet);margin-bottom:18px}
.swb-bullets{margin-top:16px}
.swb-bullets li{position:relative;padding-left:22px;margin-top:10px;color:var(--ink2);font-size:15.5px}
.swb-bullets li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:1.5px;background:var(--violet)}

/* before / after comparison */
.swb-vs{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:56px;background:var(--paper)}
.swb-vs>div{padding:32px}
.swb-vs>div+div{border-left:1px solid var(--line);background:#F8F7FE}
.swb-vs h4{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.swb-vs li{padding:14px 0;border-bottom:1px dashed var(--line);color:var(--ink2);font-size:15.5px}
.swb-vs li:last-child{border-bottom:0}
.swb-vs .swb-tag{color:var(--violet);border-color:#D9D3F7}

/* industry switcher: tabs on top + vertical icon rail (Glean pattern) */
.swb-ind{margin-top:48px}
.swb-ind-tabs{display:flex;border-bottom:1px solid var(--line2);overflow-x:auto;scrollbar-width:none}
.swb-ind-tabs::-webkit-scrollbar{display:none}
.swb .swb-ind-tabs button{flex:1 0 auto;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;padding:16px 18px;font:500 15px/1 var(--fm);color:var(--muted);cursor:pointer;white-space:nowrap}
.swb .swb-ind-tabs button[aria-selected=true]{color:var(--violet);border-bottom-color:var(--violet)}
.swb-ind-body{display:grid;grid-template-columns:72px 1fr 1fr;gap:20px;margin-top:28px}
.swb-rail{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid var(--ink);border-radius:12px;background:var(--paper);height:fit-content}
.swb .swb-rail button{width:50px;height:46px;border-radius:9px;border:0;background:var(--bg2);display:grid;place-items:center;cursor:pointer;transition:background .15s}
.swb .swb-rail button svg{width:20px;height:20px;fill:none;stroke:var(--ink2);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.swb .swb-rail button[aria-selected=true]{background:var(--ink)}
.swb .swb-rail button[aria-selected=true] svg{stroke:#fff}
.swb-ind-copy{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:36px;display:flex;flex-direction:column}
.swb-ind-copy h3{font-size:clamp(24px,2.4vw,32px);line-height:1.1}
.swb-ind-copy p{color:var(--ink2);margin-top:16px}
.swb-ind-copy .swb-bullets{margin-top:20px}
.swb-ind-copy .swb-link{margin-top:auto;padding-top:24px}
.swb-ind-art{border-radius:14px;border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;justify-content:center;gap:16px;min-height:380px;background:
  radial-gradient(120% 90% at 85% 10%,rgba(101,80,209,.35),transparent 55%),radial-gradient(90% 80% at 10% 100%,rgba(111,142,219,.35),transparent 60%),repeating-linear-gradient(100deg,#EFE8F8 0 14px,#F6F1EC 14px 30px)}
.swb-prompt{background:rgba(255,255,255,.92);backdrop-filter:blur(6px);border:1px solid #fff;border-radius:16px;padding:16px 18px;box-shadow:0 16px 40px -20px rgba(21,20,28,.35);font-size:15px}
.swb-prompt-foot{display:flex;justify-content:space-between;align-items:center;margin-top:14px;color:var(--muted)}
.swb-prompt-foot i{width:30px;height:30px;border-radius:50%;background:var(--ink);display:grid;place-items:center}
.swb-prompt-foot i::before{content:"";width:9px;height:9px;border-top:2px solid #fff;border-right:2px solid #fff;transform:rotate(-45deg) translate(-1px,1px)}
.swb-result{background:var(--paper);border-radius:14px;padding:18px 20px;box-shadow:0 16px 40px -24px rgba(21,20,28,.35)}
.swb-result small{display:block;font:500 11px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:12px}
.swb-result b{display:block;font-weight:600;font-size:16px;line-height:1.35}
.swb-result ul{margin-top:10px}
.swb-result li{font-size:14px;color:var(--ink2);padding:5px 0 5px 18px;position:relative}
.swb-result li::before{content:"";position:absolute;left:0;top:13px;width:8px;height:8px;border-radius:2px;background:var(--c,var(--violet))}
.swb-ind-panel{display:contents}
.swb-ind-panel[hidden]{display:none}
.swb-ind-panel.swb-fade>*{animation:swb-in .35s ease both}
.swb-fade{animation:swb-in .35s ease both}

/* platform chips + logos as text */
.swb-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.swb-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line);background:var(--paper);border-radius:999px;font:500 14px/1 var(--fb);color:var(--ink)}
.swb-chip i{width:8px;height:8px;border-radius:50%;background:var(--c,var(--violet))}
.swb-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);margin-top:28px}
.swb-marquee>div{display:flex;gap:56px;width:max-content;animation:swb-scroll 38s linear infinite}
.swb-marquee span{font:700 22px/1 var(--fh);font-stretch:112%;color:var(--ink2);opacity:.7;white-space:nowrap}

/* steps timeline */
.swb-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:56px;border-top:1px solid var(--line2)}
.swb-step{padding:28px 24px 0 0;position:relative}
.swb-step::before{content:"";position:absolute;top:-6px;left:0;width:11px;height:11px;border-radius:50%;background:var(--violet);box-shadow:0 0 0 4px var(--bg)}
.swb-step small{display:block;font:500 13px/1 var(--fm);color:var(--violet);margin-bottom:14px}
.swb-step p{color:var(--ink2);margin-top:10px;font-size:15.5px}

.swb [id],.swb-ind{scroll-margin-top:96px}
/* grid children may shrink below their content width (stops mobile overflow) */
.swb-hero>*,.swb-split>*,.swb-grid>*,.swb-ind-body>*{min-width:0}
.swb-post>div{min-width:0;overflow-wrap:anywhere}

/* split rows */
.swb-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.swb-split+.swb-split{margin-top:96px}
.swb-split--rev>:first-child{order:2}

/* tables */
.swb-table{width:100%;border-collapse:collapse;margin-top:48px;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:15px}
.swb-table th,.swb-table td{text-align:left;padding:16px 20px;border-bottom:1px solid var(--line);vertical-align:top}
.swb-table th{font:500 12.5px/1.3 var(--fm);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--bg)}
.swb-table td:first-child{font-weight:600}
.swb-table tr:last-child td{border-bottom:0}
.swb-tablewrap{overflow-x:auto}

/* faq */
.swb-faq{margin-top:40px;border-top:1px solid var(--line2)}
.swb-faq details{border-bottom:1px solid var(--line2);padding:22px 0}
.swb-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font:600 18px/1.35 var(--fb)}
.swb-faq summary::-webkit-details-marker{display:none}
.swb-faq summary::after{content:"+";font:400 24px/1 var(--fm);color:var(--violet);transition:transform .2s}
.swb-faq details[open] summary::after{transform:rotate(45deg)}
.swb-faq p{color:var(--ink2);margin-top:12px;max-width:70ch}

/* cta band */
.swb-cta{border-radius:18px;padding:72px 48px;text-align:center;background:var(--panel);color:#fff;position:relative;overflow:hidden}
.swb-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 20% 0%,rgba(101,80,209,.45),transparent 60%),radial-gradient(50% 70% at 90% 100%,rgba(111,142,219,.35),transparent 60%)}
.swb-cta>*{position:relative}
.swb-cta h2{color:#fff;max-width:20ch;margin:0 auto}
.swb-cta .swb-lead{color:#C9C7D6;margin-left:auto;margin-right:auto}
.swb-cta .swb-btns{justify-content:center}
.swb-cta .swb-btn--ghost{color:#fff!important;border-color:#4A4760}
.swb-cta .swb-micro{color:#9A98AC}

/* footer */
.swb-footer{border-top:1px solid var(--line)}
.swb-footer .swb-frame{padding:64px 56px 40px}
.swb-fgrid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px}
.swb-fgrid h4{font:500 12.5px/1 var(--fm);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:16px}
.swb-fgrid li{margin-top:10px;font-size:15px}
.swb-fgrid li a:hover{color:var(--violet)}
.swb-fgrid p{color:var(--ink2);font-size:15px;margin-top:14px;max-width:32ch}
.swb-fbot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line);font:400 13px/1.5 var(--fm);color:var(--muted)}


/* hero title that follows the selected tab; height reserved so the page does not jump */
.swb .swb-h1-swap{min-height:2.1em}
.swb .swb-swap{display:block;color:var(--violet)}
.swb .swb-swap.swb-fade{animation:swb-in .45s ease both}

/* tab autoplay: progress line under the active tab + pause/play button */
.swb [role=tab]{position:relative}
.swb [role=tab].is-timing::after{content:"";position:absolute;left:10px;right:10px;bottom:3px;height:2px;border-radius:2px;background:currentColor;opacity:.55;transform-origin:left;animation:swb-grow var(--dur,2000ms) linear both}
.swb .swb-ind-tabs [role=tab].is-timing::after{bottom:0;left:0;right:0;opacity:1}
.swb button.swb-play{flex:0 0 auto;width:30px;height:30px;margin-left:6px;border:1px solid var(--line2);border-radius:50%;display:grid;place-items:center;font:600 10px/1 var(--fm);letter-spacing:-1px;color:var(--ink2);cursor:pointer;background:var(--paper)}
.swb button.swb-play:hover{border-color:var(--ink);color:var(--ink);background:var(--paper)}
.swb .swb-ind-tabs button.swb-play{align-self:center;margin:0 4px 0 8px;padding:0;border-bottom:1px solid var(--line2)}


/* platform architecture diagram */
.swb-arch{display:flex;flex-direction:column;gap:12px}
.swb-arch-row{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 18px;position:relative}
.swb-arch-row>small{display:block;font:500 11px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.swb-arch-row>div{display:flex;flex-wrap:wrap;gap:8px}
.swb-arch-row .swb-chip{font-size:13px;padding:7px 11px}
.swb-arch-row+.swb-arch-row::before{content:"";position:absolute;top:-13px;left:50%;width:1px;height:12px;background:var(--line2)}
.swb-arch-plat{background:var(--panel);border-color:var(--pline);color:var(--ptext)}
.swb-arch-plat>small{color:var(--lav)}
.swb-arch-plat{display:grid;gap:8px}
.swb-arch-layer{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 12px;border:1px solid var(--pline);border-radius:10px;background:var(--panel2)}
.swb-arch-layer b{font:500 12px/1 var(--fm);color:#fff;margin-right:6px;min-width:140px}
.swb-arch-layer span{font-size:13px;padding:5px 9px;border-radius:6px;background:#2B2940;color:#E7E5F0}
.swb-arch-agent{border-color:#4B3FA0}
.swb-arch-agent span{background:var(--violet);color:#fff}
.swb-steps--5{grid-template-columns:repeat(5,1fr)}
@media (max-width:1080px){.swb-steps--5{grid-template-columns:repeat(2,1fr)}}
@media (max-width:720px){.swb-steps--5{grid-template-columns:1fr}.swb-arch-layer b{min-width:0;width:100%}}

/* contact form (Contact Form 7 inside .swb) */
.swb .swb-f{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.swb .swb-f label{display:block;font:500 14px/1.4 var(--fb);color:var(--ink2)}
.swb .swb-f-wide{grid-column:1/-1}
.swb .swb-f br{display:none}
.swb .swb-f>p{display:contents}
.swb .swb-f input[type=text],.swb .swb-f input[type=email],.swb .swb-f select,.swb .swb-f textarea{width:100%;margin-top:6px;padding:12px 14px;font:400 15px/1.4 var(--fb);color:var(--ink);background:var(--bg);border:1px solid var(--line2);border-radius:8px;box-shadow:none}
.swb .swb-f textarea{min-height:120px;resize:vertical}
.swb .swb-f input:focus,.swb .swb-f select:focus,.swb .swb-f textarea:focus{outline:2px solid var(--violet);outline-offset:1px;border-color:var(--violet)}
.swb .swb-f .wpcf7-quiz{width:90px!important;display:inline-block;margin-left:8px}
.swb .swb-f .wpcf7-quiz-label{font-weight:600;color:var(--ink)}
.swb .swb-f p{margin:0}
.swb .swb-f input[type=submit]{width:auto;padding:15px 24px;font:500 16px/1 var(--fm);color:#fff;background:var(--ink);border:1px solid var(--ink);border-radius:2px;cursor:pointer}
.swb .swb-f input[type=submit]:hover{background:#2A2836}
.swb .wpcf7-not-valid-tip{font-size:13px;color:#B4321B;margin-top:4px}
.swb .wpcf7-response-output{margin:16px 0 0!important;padding:12px 14px!important;border-radius:8px;font-size:14px}
.swb .wpcf7-spinner{vertical-align:middle}
@media (max-width:720px){.swb .swb-f{grid-template-columns:1fr}}

/* motion */
@keyframes swb-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes swb-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes swb-scroll{to{transform:translateX(-50%)}}
@keyframes swb-caret{50%{border-color:transparent}}
.swb-reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.swb-reveal.is-in{opacity:1;transform:none}

/* responsive */
@media (max-width:1080px){
  .swb-hero,.swb-split{grid-template-columns:1fr;gap:48px}
  .swb-split--rev>:first-child{order:0}
  .swb-g4{grid-template-columns:repeat(2,1fr)}
  .swb-ind-body{grid-template-columns:64px 1fr}
  .swb-ind-art{grid-column:1/-1}
  .swb-steps{grid-template-columns:repeat(2,1fr);row-gap:40px}
  .swb-fgrid{grid-template-columns:repeat(3,1fr)}
  .swb-fgrid>div:first-child{grid-column:1/-1}
}
@media (max-width:900px){
  .swb button.swb-burger{display:block}
  .swb-header .swb-frame{flex-wrap:wrap;padding:12px 16px}
  .swb-header .swb-frame>.swb-btn{display:none}
  .swb-nav{display:none;width:100%;flex-direction:column;align-items:stretch;margin:8px 0 4px}
  .swb-header.is-open .swb-nav{display:flex}
  .swb-mega{position:static;width:auto;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 0 12px;display:none;grid-template-columns:1fr}
  .swb-nav>li.is-open .swb-mega{display:grid}
  .swb-nav .swb-btn{margin-top:8px}
}
@media (max-width:720px){
  .swb{font-size:16px}
  .swb-frame{border-left:0;border-right:0}
  .swb-sec{padding:72px 16px}
  .swb-sec::before,.swb-sec::after{display:none}
  .swb-hero{padding-top:48px;padding-bottom:64px}
  .swb-g2,.swb-g3,.swb-g4,.swb-vs,.swb-steps{grid-template-columns:1fr}
  .swb-vs>div+div{border-left:0;border-top:1px solid var(--line)}
  .swb-ind-body{grid-template-columns:1fr}
  .swb-rail{flex-direction:row;overflow-x:auto;width:100%}
  .swb .swb-rail button{flex:0 0 50px}
  .swb-ind-copy{padding:24px}
  .swb-win-body{padding:16px;min-height:0}
  .swb-win-bar em,.swb-win-bar b{display:none}
  .swb-win-bar{overflow-x:auto}
  .swb-row{grid-template-columns:1fr;gap:4px}
  .swb-row span:first-child{text-align:left}
  .swb-kpis{grid-template-columns:1fr 1fr}
  .swb-btn{width:100%}
  .swb-cta{padding:56px 20px}
  .swb-footer .swb-frame{padding:48px 16px 32px}
  .swb-fgrid{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){
  .swb *,.swb *::before,.swb *::after{animation:none!important;transition:none!important}
  .swb-reveal{opacity:1;transform:none}
}

/* the workspace label is truncated next to tabs; tabs carry the meaning */
.swb-win[data-tabs] .swb-win-bar em{display:none}
