*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ac:#0ea5e9;--ac-d:#0284c7;--ac-bg:#e0f2fe;--ac-bg-l:#f0f9ff;--ac-border:#bae6fd;
  --ink:#16151c;--mut:#5b6070;--line:#e9e7e1;--bg:#f4f3f0;
  --rad:18px;--rad-md:12px;--rad-sm:8px;--font:'Inter',system-ui,sans-serif;
}
html{font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}

/* ── PAGE ── */
.page{background:var(--bg);width:100%;margin:0;}


/* ── HEADER ── */
.hd{display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #eae7df;padding:15px max(24px,calc((100% - 1100px)/2));position:sticky;top:0;z-index:100}
.hd-l{display:flex;align-items:center;gap:10px}
.hd-logo{width:30px;height:30px;border-radius:9px;background:linear-gradient(140deg,#1a1a17,#3a3832);position:relative;flex:0 0 auto;box-shadow:0 4px 12px -3px rgba(26,26,23,.4)}
.hd-logo::before{content:"";position:absolute;left:50%;top:8px;transform:translateX(-50%);width:15px;height:3px;background:#fff;border-radius:2px;box-shadow:0 5px 0 rgba(255,255,255,.9),0 10px 0 #fff}
.hd-name{font-weight:700;font-size:18px;color:#16151c;line-height:1}.hd-name span{color:#16151c}
.hd-r{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:500}
.hd-r .nl{color:#4a4843;padding:8px 12px;border-radius:8px;transition:background .15s}.hd-r .nl:hover{background:var(--bg)}
.hd-get{background:#16151c;color:#fff;font-weight:600;padding:9px 18px;border-radius:99px;font-size:14px;transition:background .15s}.hd-get:hover{background:#000}
.mega-w{position:relative}
.mega-t{display:flex;align-items:center;gap:5px;cursor:default;color:#4a4843;padding:8px 12px;border-radius:8px;transition:background .15s}.mega-w:hover .mega-t{background:var(--bg)}.mega-t .cv{font-size:10px;color:#a7a297}
.mega{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(6px);width:430px;background:#fff;border:1px solid #eae7df;border-radius:16px;padding:10px;box-shadow:0 30px 60px -28px rgba(26,26,23,.4);opacity:0;visibility:hidden;transition:.2s;z-index:40;display:grid;grid-template-columns:1fr 1fr;gap:4px}
.mega-w:hover .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.mega::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.mi{display:flex;gap:10px;padding:10px;border-radius:11px;transition:background .15s}.mi:hover{background:#f6f5f1}
.mi .mic{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex:0 0 auto;color:#fff}
.mi b{font-size:13.5px;font-weight:600;color:#1a1a17;display:block;line-height:1.3}.mi s{text-decoration:none;font-size:11.5px;color:#9b968b}

/* ── WRAP ── */
.wrap{padding:18px;display:flex;flex-direction:column;gap:14px}

/* ── CARDS ── */
.card{background:#fff;border:0.5px solid var(--line);border-radius:var(--rad);overflow:hidden}
.card-p{padding:22px}

/* ── TYPE ── */
.eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ac);margin-bottom:10px;display:block}
.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;background:var(--ac-bg);color:#0369a1;width:fit-content;line-height:1.4}
h1.pg-title{font-size:28px;font-weight:700;line-height:1.13;letter-spacing:-.02em;color:var(--ink)}
h2.sec-title{font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--ink);margin-bottom:8px}
.lede{font-size:15px;color:#4a4843;line-height:1.65}
.sub{font-size:13.5px;color:var(--mut);line-height:1.6}
.pull-quote{font-size:15px;line-height:1.65;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:4px 0}
.pull-quote span{color:var(--ac);font-weight:500}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:99px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;line-height:1;transition:background .15s}
.btn:hover{background:var(--bg)}
.btn-p{background:var(--ac);color:#fff;border-color:transparent}.btn-p:hover{background:var(--ac-d)}
.btn-ghost-w{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);font-size:13px;font-weight:600;padding:9px 18px;border-radius:99px;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;line-height:1;transition:background .15s}.btn-ghost-w:hover{background:rgba(255,255,255,.1)}

/* ── FEATURE LIST ── */
.fl{list-style:none;display:flex;flex-direction:column;gap:7px}
.fl li{font-size:13px;color:var(--mut);display:flex;align-items:flex-start;gap:8px;line-height:1.5}
.fl li i{color:#16a34a;font-size:15px;margin-top:1px;flex-shrink:0}
.fl li em{color:var(--ink);font-style:normal;font-weight:600}

/* ── SURFACE ── */
.surface{background:var(--bg);border-radius:var(--rad-md);padding:14px;display:flex;flex-direction:column;gap:6px}
.surface-ac{background:var(--ac-bg-l);border:1px solid var(--ac-border);border-radius:var(--rad-md);padding:13px}

/* ── TABS ── */
.tabs-bar{display:flex;gap:2px;border-bottom:1px solid var(--line);padding:0 4px;overflow-x:auto;background:#fff}
.tab{padding:11px 14px;font-size:12.5px;font-weight:600;cursor:pointer;color:#9b968b;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:color .15s}
.tab.on{color:var(--ac);border-bottom-color:var(--ac)}
.tab:hover:not(.on){color:var(--ink)}
.pane{display:none;padding:18px}.pane.on{display:block}
.tab-invite{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#9b968b;padding:18px 18px 0;font-weight:500}
.tab-invite i{font-size:13px;color:var(--ac)}

/* ── ADMIN MOCK ── */
.admin{display:flex;border:1px solid var(--line);border-radius:var(--rad-md);overflow:hidden;min-height:270px;background:#fff}
.a-sb{width:148px;flex-shrink:0;background:#0f172a;padding:8px 0;display:flex;flex-direction:column}
.a-sb-top{padding:8px 10px 8px;border-bottom:1px solid #1e293b;margin-bottom:5px}
.a-sb-logo{color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;gap:7px}
.a-mark{width:22px;height:22px;border-radius:5px;background:#38bdf8;display:flex;align-items:center;justify-content:center;color:#0c4a6e;font-size:9px;font-weight:800}
.a-sb-i{display:flex;align-items:center;gap:7px;padding:6px 10px;font-size:11px;color:#94a3b8;cursor:pointer;transition:background .15s}
.a-sb-i.on{color:#0c4a6e;background:#38bdf8}
.a-sb-i:hover:not(.on){color:#e2e8f0;background:#1e293b}
.a-main{flex:1;padding:13px 15px;min-width:0;overflow:auto}
.a-title{font-size:13px;font-weight:600;margin-bottom:10px;color:#1e293b}
.a-stat{background:#f8fafc;border:0.5px solid #e2e8f0;border-radius:7px;padding:8px 10px;text-align:center}
.a-stat-n{font-size:17px;font-weight:700;color:#0ea5e9}
.a-stat-l{font-size:9.5px;color:#64748b;margin-top:1px}
.a-card{background:#f8fafc;border-radius:7px;padding:10px 12px;margin-bottom:8px}
.a-tbl{width:100%;border-collapse:collapse;font-size:11px}
.a-tbl th{text-align:left;padding:5px 6px;font-size:9.5px;font-weight:600;color:#94a3b8;border-bottom:0.5px solid #e2e8f0;background:#f8fafc;text-transform:uppercase;letter-spacing:.04em}
.a-tbl td{padding:7px 6px;border-bottom:0.5px solid #f1f5f9;color:#334155;vertical-align:middle}
.a-tbl tr:last-child td{border-bottom:none}
.a-bk{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:6px;font-size:10px;font-weight:500;border:0.5px solid #e2e8f0;cursor:pointer;background:#fff;color:#334155;font-family:inherit}
.a-bk:hover{background:#f1f5f9}
.a-bkp{background:#38bdf8;color:#0c4a6e;border-color:#38bdf8}.a-bkp:hover{background:#0ea5e9}
.a-inp{width:100%;padding:5px 8px;font-size:11px;border:0.5px solid #e2e8f0;border-radius:5px;background:#fff;color:#1e293b;font-family:inherit}
.a-sel{width:100%;padding:5px 8px;font-size:11px;border:0.5px solid #e2e8f0;border-radius:5px;background:#fff;color:#1e293b;font-family:inherit}
.a-lbl{font-size:9.5px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px;display:block}
.a-fr{margin-bottom:8px}
.step-card{background:#fff;border:0.5px solid #e2e8f0;border-radius:6px;padding:7px 10px;display:flex;align-items:center;gap:8px;margin-bottom:5px;cursor:pointer}
.step-card.sel{border-color:#38bdf8;background:#f0f9ff}
.step-num{width:20px;height:20px;border-radius:50%;background:#e0f2fe;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#0369a1;flex-shrink:0}
.step-badge{font-size:9px;padding:1px 5px;border-radius:4px;background:#f1f5f9;color:#64748b;flex-shrink:0}

/* ── CHAT PREVIEW ── */
.chat-bg{background:#f1f5f9;border-radius:var(--rad-md);padding:12px;display:flex;flex-direction:column;gap:7px}
.chat-header{background:#fff;border-radius:8px;padding:8px 11px;display:flex;align-items:center;gap:8px;border:0.5px solid #e2e8f0;margin-bottom:4px}
.chat-dot{width:7px;height:7px;border-radius:50%;background:#38bdf8;flex-shrink:0}
.chat-name{font-size:11.5px;font-weight:600;color:#1e293b}
.chat-progress{height:3px;background:#e2e8f0;border-radius:99px;overflow:hidden;margin-bottom:6px}
.chat-progress-f{height:3px;background:#38bdf8;border-radius:99px}
.ai-b{background:#fff;border:0.5px solid #e2e8f0;border-radius:3px 11px 11px 11px;padding:9px 12px;font-size:11.5px;color:#1e293b;line-height:1.55;max-width:90%}
.usr-b{background:#38bdf8;border-radius:11px 3px 11px 11px;padding:9px 12px;font-size:11.5px;color:#0c4a6e;font-weight:600;align-self:flex-end;max-width:85%}
.ch-btn{border:1.5px solid #38bdf8;border-radius:99px;padding:6px 13px;font-size:11.5px;color:#0369a1;cursor:pointer;display:inline-block;margin:2px;background:#fff}
.ch-btn.sel{background:#38bdf8;color:#0c4a6e;font-weight:600}
.ch-sub{font-size:9.5px;color:#94a3b8;margin-top:2px}

/* ── STEP TYPE PILLS ── */
.sp{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:0.5px solid var(--line);border-radius:99px;font-size:11.5px;margin:2px;color:var(--ink);background:#fff}
.sp i{font-size:13px;color:var(--ac)}
.sp.adv{border-color:#bae6fd;color:#0369a1;background:var(--ac-bg-l)}
.sp.adv i{color:var(--ac-d)}

/* ── INTEGRATION ITEMS ── */
.intg{display:flex;align-items:flex-start;gap:11px;padding:11px 0;border-bottom:0.5px solid var(--line)}
.intg:last-child{border-bottom:none}
.intg-ic{width:32px;height:32px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;color:#fff}
.intg-name{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:2px}
.intg-desc{font-size:12px;color:var(--mut);line-height:1.5}

/* ── FEATURES GRID ── */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.feat-cell{background:var(--bg);border-radius:var(--rad-md);padding:15px;display:flex;flex-direction:column;gap:6px}
.feat-ic{font-size:20px;color:var(--ac)}
.feat-name{font-size:13px;font-weight:600;color:var(--ink)}
.feat-desc{font-size:12px;color:var(--mut);line-height:1.55}

/* ── SHIFT ── */
.shift-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* ── USE CASE GRID ── */
.uc-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}

/* ── FAQ ── */
.faq-item{border-bottom:0.5px solid var(--line);padding:13px 0}
.faq-item:last-child{border-bottom:none;padding-bottom:0}
.faq-q{font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;line-height:1.4;user-select:none}
.faq-q i{font-size:14px;color:var(--ac);flex-shrink:0;transition:transform .2s}
.faq-a{font-size:13px;color:var(--mut);line-height:1.65;margin-top:9px;display:none}
.faq-a code{font-size:11.5px;background:var(--bg);padding:1px 5px;border-radius:4px;color:var(--ac);font-family:ui-monospace,monospace}

/* ── HERO CARD ── */
.hcard{background:#07111e;border-radius:20px;overflow:hidden;display:flex;align-items:stretch;position:relative;background-image:radial-gradient(65% 130% at 92% 5%,#0c2a40 0%,transparent 55%)}
.hcard .tx{flex:1;padding:38px 36px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.hcard .eye{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7dd3fc}
.hcard h1{font-size:30px;font-weight:800;line-height:1.08;color:#fff;letter-spacing:-.02em}
.hcard h1 em{font-style:normal;color:#7dd3fc}
.hcard .lede-hero{font-size:14px;color:#94a3b8;line-height:1.65;max-width:330px}
.hcard .hbtns{display:flex;gap:10px;flex-wrap:wrap}
.hcard .hero-r{flex:1;align-self:stretch;margin:22px 22px 22px 0;min-width:240px}

/* hero chat */
.hero-chat{height:300px;background:#f4f4f8;border-radius:14px;box-shadow:0 24px 50px -26px rgba(0,0,0,.5);overflow:hidden;position:relative}
.hero-chat-body{height:100%;overflow-y:auto;padding:13px;display:flex;flex-direction:column;gap:7px;scroll-behavior:smooth}
.hero-chat-body::-webkit-scrollbar{width:0}
/* message types */
/* agent row = avatar + bubble side by side */
.hc-ai-row{display:flex;align-items:flex-end;gap:7px;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}
.hc-av{width:26px;height:26px;border-radius:50%;background:linear-gradient(140deg,#38bdf8,#0ea5e9);display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}
.hc-ai{background:#fff;border:0.5px solid #e8e8ee;border-radius:3px 11px 11px 11px;padding:8px 11px;font-size:11px;color:#1e293b;line-height:1.55;max-width:82%}
.hc-usr{background:#38bdf8;border-radius:11px 3px 11px 11px;padding:8px 11px;font-size:11px;color:#0c4a6e;font-weight:600;align-self:flex-end;margin-left:auto;max-width:80%;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}
.hc-choices{display:flex;flex-wrap:wrap;gap:5px;padding-left:33px;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}
.hc-img-choices{display:flex;gap:6px;flex-wrap:wrap;padding-left:33px;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}
.hc-btn{border:1.5px solid #38bdf8;border-radius:99px;padding:5px 12px;font-size:10.5px;color:#0369a1;background:#fff;white-space:nowrap}
.hc-img-card{border:1.5px solid #e2e8f0;border-radius:8px;overflow:hidden;cursor:pointer;text-align:center;padding:7px 8px;background:#fff;min-width:58px}
.hc-img-card .ic-label{font-size:9.5px;font-weight:600;color:#0369a1;margin-top:4px}
/* typing indicator row */
.hc-typ-row{display:flex;align-items:flex-end;gap:7px;opacity:0;transition:opacity .3s}
.hc-typ{display:flex;gap:3px;align-items:center;padding:8px 11px;background:#fff;border:0.5px solid #e8e8ee;border-radius:3px 11px 11px 11px;width:fit-content}
.hc-typ span{width:5px;height:5px;border-radius:50%;background:#bae6fd;animation:hctp 1s infinite}
.hc-typ span:nth-child(2){animation-delay:.15s}.hc-typ span:nth-child(3){animation-delay:.3s}
@keyframes hctp{0%,60%,100%{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}
.hc-ai-row.show,.hc-usr.show,.hc-choices.show,.hc-img-choices.show{opacity:1;transform:translateY(0)}
.hc-typ-row.show{opacity:1}

/* ── CTA DARK ── */
.cta-dark{background:#07111e;border-radius:20px;padding:42px 36px;background-image:radial-gradient(80% 120% at 50% -10%,#0c2a40 0%,transparent 55%)}

/* ── FOOTER ── */
.ft{padding:20px 26px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:12.5px;color:#8a8579;border-top:1px solid #e6e4dd}
.ft a{color:var(--ac);font-weight:500}

/* ── RESPONSIVE ── */
@media(max-width:700px){
  .hcard{flex-direction:column}.hcard .hero-r{margin:0 20px 20px;min-width:auto}
  .feat-grid{grid-template-columns:1fr 1fr}
  .shift-grid,.uc-grid{grid-template-columns:1fr}
  .mega{width:300px;grid-template-columns:1fr}
}
@media(max-width:480px){.feat-grid{grid-template-columns:1fr}.hd-r .nl:not(:last-of-type){display:none}}
/* touch: tap-to-open mega menu (added by theme) */
.mega-w.open .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}

/* --- site layout (full-width page, centered content @ 1100px) --- */
.wrap{max-width:1100px;margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box}
.fz-head,.fz-sub,.fz-pad{max-width:1100px;margin-left:auto;margin-right:auto}
.ft{padding-left:max(24px,calc((100% - 1100px)/2));padding-right:max(24px,calc((100% - 1100px)/2))}

/* ===== responsive header / mega-menu (real-device safe) ===== */
.hd-get{white-space:nowrap}
.hd-name{white-space:nowrap}
.mega{max-width:calc(100vw - 20px);box-sizing:border-box;top:calc(100% + 8px)}
@media(max-width:760px){
  /* header stays on ONE row at all widths */
  .hd{flex-wrap:nowrap;gap:6px}
  .hd-r{gap:2px;flex-wrap:nowrap}
  .hd-r .nl{padding:8px 8px}
  /* Anchor the dropdown to the HEADER bar (its sticky positioned ancestor),
     not to the small Plugins trigger — so it spans correctly and tracks the
     header at every scroll position. */
  .mega-w{position:static}
  .mega{position:absolute;top:100%;left:auto;right:10px;
        transform:translateY(6px);width:min(340px,calc(100vw - 20px));
        grid-template-columns:1fr;margin-top:2px}
  .mega-w:hover .mega,.mega-w.open .mega{transform:translateY(0)}
  /* re-create the hover bridge for the new offset */
  .mega::before{top:-12px;height:12px}
}
@media(max-width:520px){
  .hd{padding-left:14px !important;padding-right:14px !important;gap:4px}
  .hd-logo{width:26px;height:26px}
  .hd-name{font-size:16px}
  .hd-r .nl{display:none}
  .mega-t{padding:7px 9px}
  .hd-get{padding:8px 13px;font-size:13px}
  /* full-width dropdown under the bar, anchored to the header */
  .mega{left:10px;right:10px;width:auto;max-width:none;transform:translateY(6px)}
  .mega-w:hover .mega,.mega-w.open .mega{transform:translateY(0)}
}

/* ===== mobile: plugin demo widgets (≤640px) ===== */
@media(max-width:640px){
  /* hero CTA buttons go full-width on mobile only */
  .hbtns{flex-direction:column;align-items:stretch;width:100%}
  .hbtns .btn,.hbtns .btn-p,.hbtns .dest-btn{width:100%;justify-content:center;box-sizing:border-box}
  /* every demo grid collapses to a single column */
  /* force every multi-column grid inside cards to a single column on mobile */
  .feat-grid,.shift-grid,.uc-grid,.st-grid,.dest-grid,.panel-split,.adv-grid,.comp-grid,.int-grid,.build-grid,.uc2-grid,.two-col,[class*="-grid"]{grid-template-columns:1fr !important}
  .feat-grid > *,.shift-grid > *,[class*="-grid"] > *{min-width:0}
  .feat-grid,.shift-grid,.uc-grid{grid-template-columns:1fr !important}
  /* prevent any demo block from forcing horizontal scroll */
  .wrap, .card{max-width:100%;overflow-x:hidden}
  /* admin-panel demo: stack the sidebar over the table, allow inner scroll */
  .admin,.panel-split{flex-direction:column;min-height:0}
  .admin > *,.panel-split > *{width:100% !important;max-width:100%}
  .admin .adm-nav,.admin nav{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--line)}
  .adm-main,.admin-main{overflow-x:auto}
}

/* ===== mobile: NEVER two equal columns inside content (overrides inline styles) ===== */
@media(max-width:640px){
  /* symmetric card grids → single column. Matches inline 1fr 1fr / repeat(n) / Npx Npx */
  .wrap [style*="1fr 1fr"],
  .wrap [style*="repeat(2"], .wrap [style*="repeat(3"], .wrap [style*="repeat(4"],
  .wrap [class*="-grid"],
  .wrap .feat-grid, .wrap .shift-grid, .wrap .uc-grid, .wrap .st-grid,
  .wrap .dest-grid, .wrap .panel-split{
    grid-template-columns:1fr !important;
  }
  /* asymmetric icon/sidebar layouts (e.g. 168px 1fr) → stack icon over content */
  .wrap [style*="px 1fr"]{grid-template-columns:1fr !important}
  .wrap [class*="-grid"] > *,
  .wrap [style*="grid-template-columns"] > *{min-width:0 !important;max-width:100% !important}
}
