:root{--ink:#0b1220;--slate:#526174;--line:#e3e9f0;--mist:#f6f9fc;--blue:#2563eb;--blue2:#1d4ed8;--green:#22c55e;--paper:#fff;--navy:#0f172a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:inherit}.wrap{max-width:1180px;margin:auto;padding:0 24px}.topbar{background:#07111f;color:#dbeafe;font-size:.84rem}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:34px}.topbar a{text-decoration:none}.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navin{height:74px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:10px;font-size:1.18rem;font-weight:850;text-decoration:none;letter-spacing:-.03em;white-space:nowrap}.brandmark{width:29px;height:29px;border-radius:9px;background:linear-gradient(145deg,var(--blue),#60a5fa);display:grid;place-items:center;color:#fff;font-weight:900}.brand b{color:var(--blue)}.navlinks{display:flex;align-items:center;gap:5px}.navitem{position:relative}.navbtn,.navlink{border:0;background:none;font:inherit;padding:11px 10px;color:#334155;font-weight:650;font-size:.92rem;text-decoration:none;cursor:pointer}.navbtn:after{content:"⌄";font-size:.8rem;margin-left:6px}.mega{display:none;position:absolute;top:48px;left:-130px;width:760px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 22px 50px rgba(15,23,42,.13);padding:22px}.navitem:hover .mega,.navitem:focus-within .mega{display:grid}.mega.two{grid-template-columns:1fr 1fr;gap:18px}.mega.three{grid-template-columns:repeat(3,1fr);gap:16px}.megacol h4{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;margin:0 0 9px}.megacol a{display:block;text-decoration:none;padding:9px 10px;border-radius:9px}.megacol a:hover{background:var(--mist)}.megacol strong{display:block;font-size:.91rem}.megacol span{display:block;font-size:.78rem;color:#64748b;margin-top:2px}.navcta{margin-left:auto;display:flex;gap:10px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:9px;padding:11px 18px;font-weight:750;font-size:.92rem;border:1px solid transparent}.btn.primary{background:var(--blue);color:white}.btn.primary:hover{background:var(--blue2)}.btn.outline{border-color:#cfd8e3;background:#fff}.btn.dark{background:#0f172a;color:#fff}.hero{padding:86px 0 68px;background:radial-gradient(circle at 80% 10%,#e9f3ff,transparent 34%),#fff}.hero.grid{display:block}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534;border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:800}.dot{width:8px;height:8px;border-radius:999px;background:var(--green);box-shadow:0 0 0 5px rgba(34,197,94,.12)}h1,h2,h3{letter-spacing:-.035em;line-height:1.05;margin:0}h1{font-size:clamp(2.7rem,5.6vw,4.9rem);max-width:12ch}h2{font-size:clamp(2rem,3.8vw,3.1rem)}h3{font-size:1.2rem}.lede{font-size:1.14rem;color:#4b5d72;max-width:58ch;margin:22px 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.micro{color:#8795a7;font-size:.84rem;margin-top:14px}.product-demo{background:#0b1220;border-radius:20px;box-shadow:0 28px 60px rgba(15,23,42,.2);padding:18px;color:#fff;position:relative;overflow:hidden}.demo-head{display:flex;align-items:center;gap:10px;padding:4px 4px 16px;border-bottom:1px solid rgba(255,255,255,.1);font-size:.9rem}.demo-head span:last-child{margin-left:auto;color:#94a3b8}.conversation{display:flex;flex-direction:column;gap:11px;padding:18px 0 8px}.msg{padding:11px 13px;border-radius:14px;max-width:84%;font-size:.9rem}.them{background:#1e293b;color:#e2e8f0}.us{background:#2563eb;align-self:flex-end}.system{align-self:center;border:1px solid rgba(34,197,94,.35);background:rgba(34,197,94,.1);color:#86efac;font-size:.78rem;padding:7px 12px}.trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--mist)}.trustgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:28px 0}.trust b{display:block;font-size:1.35rem}.trust span{font-size:.84rem;color:#64748b}.section{padding:88px 0}.section.mist{background:var(--mist);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section.dark{background:#0c1424;color:#fff}.sectionhead{max-width:760px;margin-bottom:38px}.sectionhead p{font-size:1.04rem;color:#64748b;margin:15px 0 0}.dark .sectionhead p{color:#9fb0c5}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:24px}.card p{color:#64748b;font-size:.93rem}.card a{font-weight:750;text-decoration:none;color:var(--blue)}.icon{width:42px;height:42px;border-radius:11px;background:#eef5ff;color:var(--blue);display:grid;place-items:center;font-weight:900;margin-bottom:16px}.platform-map{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}.map-main{border-radius:20px;background:#0f172a;color:#fff;padding:34px}.map-main p{color:#aab8cb}.map-stack{display:grid;gap:14px}.map-pill{border:1px solid var(--line);border-radius:15px;background:#fff;padding:18px}.map-pill b{display:block;margin-bottom:3px}.map-pill span{color:#64748b;font-size:.9rem}.photo-strip{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.photo,.photo-card{border-radius:18px;overflow:hidden;min-height:330px;background:#dbeafe;position:relative}.photo img,.photo-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-caption{position:absolute;left:18px;bottom:18px;background:rgba(15,23,42,.86);color:#fff;border-radius:12px;padding:12px 14px;max-width:75%;font-size:.9rem}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.industry{min-height:220px;border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff;text-decoration:none}.industry:hover{box-shadow:0 14px 34px rgba(15,23,42,.08);transform:translateY(-2px)}.industry small{color:#2563eb;font-weight:800}.industry p{color:#64748b}.bandcta{border-radius:22px;padding:48px;background:linear-gradient(135deg,#0f172a,#172554);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.bandcta p{color:#cbd5e1;margin:10px 0 0;max-width:60ch}.pagehero{padding:74px 0 56px;background:linear-gradient(180deg,#f7fbff,#fff)}.pagehero h1{max-width:16ch;font-size:clamp(2.5rem,5vw,4.3rem)}.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.feature-list{display:grid;gap:14px;margin-top:24px}.feature{display:flex;gap:12px}.check{width:24px;height:24px;border-radius:50%;background:#dcfce7;color:#15803d;display:grid;place-items:center;flex:none;font-weight:900}.quote{border:1px solid var(--line);border-radius:18px;padding:28px;background:#fff}.pricegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price{border:1px solid var(--line);border-radius:18px;padding:28px}.price.featured{border-color:#2563eb;box-shadow:0 16px 40px rgba(37,99,235,.12)}footer{border-top:1px solid var(--line);padding:54px 0 30px}.foot{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:28px}.foot h4{margin:0 0 12px;color:#94a3b8;text-transform:uppercase;font-size:.75rem;letter-spacing:.08em}.foot a{display:block;text-decoration:none;color:#566579;padding:4px 0;font-size:.9rem}.copyright{border-top:1px solid var(--line);margin-top:36px;padding-top:20px;color:#94a3b8;font-size:.82rem}.mobile-toggle{display:none}.crumb{font-size:.84rem;color:#64748b;margin-bottom:18px}.source-note{font-size:.72rem;color:#94a3b8;margin-top:8px}@media(max-width:960px){.navlinks{display:none}.mobile-toggle{display:block;margin-left:auto}.navcta{display:none}.hero-grid,.split,.platform-map,.photo-strip{grid-template-columns:1fr}.grid3,.industry-grid,.pricegrid{grid-template-columns:1fr 1fr}.grid4{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}.trustgrid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.grid3,.grid4,.industry-grid,.pricegrid,.foot{grid-template-columns:1fr}.hero{padding-top:58px}.section{padding:68px 0}.bandcta{align-items:flex-start;flex-direction:column}.topbar{display:none}h1{font-size:2.75rem}}

/* 2026-08-26 visual refresh */
.brand-logo{display:block;width:168px;height:auto;max-height:44px;object-fit:contain}.brandmark,.brand>b{display:none}.navin{gap:34px}.navlinks{gap:16px}.navbtn,.navlink{display:inline-flex;align-items:center;gap:7px;padding:11px 4px}.navbtn:after{content:"";width:6px;height:6px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:rotate(45deg) translateY(-2px);margin:0 0 3px 1px;opacity:.72}.hero.photo-hero{position:relative;background:linear-gradient(90deg,rgba(7,17,31,.91) 0%,rgba(7,17,31,.77) 42%,rgba(7,17,31,.30) 72%,rgba(7,17,31,.18) 100%),url('https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&q=84&w=2200') center 43%/cover no-repeat;color:#fff;min-height:650px;display:flex;align-items:center}.hero.photo-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(7,17,31,.12));pointer-events:none}.hero.photo-hero .wrap{position:relative;z-index:1}.hero.photo-hero .lede{color:#e2e8f0}.hero.photo-hero .micro{color:#cbd5e1}.hero.photo-hero .btn.outline{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(8px)}.hero.photo-hero h1{max-width:10.5ch;text-shadow:0 2px 18px rgba(0,0,0,.18)}.hero.photo-hero .product-demo{background:rgba(11,18,32,.90);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.16)}
.icon{width:48px;height:48px;border-radius:14px}.icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.card:nth-child(2) .icon{background:#eefcf3;color:#16a34a}.card:nth-child(3) .icon{background:#f5f0ff;color:#7c3aed}.card:nth-child(4) .icon{background:#fff6e8;color:#ea580c}.card:nth-child(5) .icon{background:#ecfeff;color:#0891b2}.card:nth-child(6) .icon{background:#fff1f2;color:#e11d48}
.business-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.business-photo{position:relative;height:240px;border-radius:18px;overflow:hidden;background:#dbeafe}.business-photo img{width:100%;height:240px;object-fit:cover;display:block}.business-photo:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(7,17,31,.82))}.business-photo .photo-caption{z-index:2;background:none;max-width:88%;padding:0}.business-photo .photo-caption b{display:block;font-size:1.1rem;margin-bottom:4px}
.pagehero.photo-pagehero{position:relative;color:#fff;background-size:cover;background-position:center;min-height:390px;display:flex;align-items:center}.pagehero.photo-pagehero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,17,31,.91),rgba(7,17,31,.68) 54%,rgba(7,17,31,.26))}.pagehero.photo-pagehero .wrap{position:relative;z-index:1}.pagehero.photo-pagehero .lede,.pagehero.photo-pagehero .crumb{color:#e2e8f0}.pagehero.photo-pagehero .btn.outline{color:#fff;border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.08)}
.contact-hero{padding:72px 0;position:relative;background:linear-gradient(90deg,rgba(247,251,255,.97),rgba(247,251,255,.92) 52%,rgba(247,251,255,.58)),url('https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&q=82&w=2000') center/cover no-repeat}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}.contact-layout h1{font-size:clamp(2.5rem,5vw,4.3rem);max-width:12ch}.contact-details{margin-top:26px;display:grid;gap:14px;color:#475569}.contact-detail{display:flex;gap:11px;align-items:flex-start}.contact-detail svg{width:20px;height:20px;stroke:#2563eb;fill:none;stroke-width:2;flex:none;margin-top:3px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .full{grid-column:1/-1}.form-field{width:100%;padding:13px 14px;border:1px solid #cbd5e1;border-radius:9px;font:inherit;background:#fff}.contact-card{box-shadow:0 18px 45px rgba(15,23,42,.08)}
@media(max-width:960px){.brand-logo{width:148px}.hero.photo-hero{min-height:auto}.business-photo-grid,.contact-layout{grid-template-columns:1fr}.pagehero.photo-pagehero{min-height:340px}}@media(max-width:650px){.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}


/* V4: compact customer journey + unique industry photography */
.hero.photo-hero .wrap{width:100%}
.hero-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 24px;background:rgba(15,23,42,.64);border:1px solid rgba(255,255,255,.18);border-radius:14px;backdrop-filter:blur(10px);overflow:hidden;max-width:100%}
.hero-flow>div{padding:11px 14px;border-right:1px solid rgba(255,255,255,.16)}
.hero-flow>div:last-child{border-right:0}
.hero-flow b{display:block;color:#fff;font-size:.82rem;margin-bottom:2px;letter-spacing:-.01em}
.hero-flow span{display:block;color:#dbe5f2;font-size:.7rem;line-height:1.35}
.photo-industry-grid{align-items:stretch}
.industry.photo-industry{position:relative;min-height:255px;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;background-position:center;background-size:cover;color:#fff;overflow:hidden;border:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.industry.photo-industry:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,17,31,.06) 20%,rgba(7,17,31,.90) 100%)}
.industry.photo-industry>*{position:relative;z-index:1}
.industry.photo-industry small{color:#bfdbfe}
.industry.photo-industry h3{margin-top:6px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.industry.photo-industry p{color:#e2e8f0;margin-bottom:0}
.industry.photo-industry:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(15,23,42,.18)}
@media(max-width:960px){.hero-flow{grid-template-columns:1fr 1fr}.hero-flow>div:nth-child(2){border-right:0}.hero-flow>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16)}}
@media(max-width:650px){.hero-flow{grid-template-columns:1fr 1fr;margin-bottom:20px}.hero-flow>div{padding:9px 10px}.hero-flow b{font-size:.76rem}.hero-flow span{font-size:.64rem}.industry.photo-industry{min-height:230px}}

/* V6 resources */
.resource-card{display:block;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease}.resource-card:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(15,23,42,.09)}.resource-card small{color:#2563eb;font-weight:800;letter-spacing:.06em}.resource-card h3{margin:10px 0 8px}.resource-card span{display:inline-block;margin-top:10px;color:#2563eb;font-weight:750;font-size:.9rem}

.bandcta .btn{white-space:nowrap;flex:none}


/* Legal pages */
.legal-wrap{max-width:900px;margin:0 auto;padding:72px 24px 96px}.legal-head{padding-bottom:30px;margin-bottom:36px;border-bottom:1px solid var(--line,#e2e8f0)}.legal-head h1{margin-bottom:12px}.legal-meta{color:#64748b;line-height:1.7}.legal-content h2{font-size:1.45rem;margin:42px 0 14px}.legal-content h3{font-size:1.08rem;margin:26px 0 10px}.legal-content p{color:#475569;margin:0 0 14px}.legal-content ul{color:#475569;margin:8px 0 18px;padding-left:24px}.legal-content li{margin:6px 0}.legal-content a{color:#2563eb}.legal-content strong{color:#0f172a}

.legal-contact{line-height:1.55;margin-top:14px}.legal-contact a{color:inherit}

/* Buttons and links look the same here, so they behave the same. */
.btn,button.btn,a.btn{cursor:pointer}
.btn[disabled],button.btn[disabled]{cursor:default;opacity:.6}

/* The burger becomes a cross when the menu is open - the same three lines,
   rotated and folded, so the button explains its own state. */
.mobile-toggle { padding: 9px 12px; }
.mobile-toggle svg path { transition: transform .22s ease, opacity .18s ease; transform-origin: center; }
.nav.menu-open .mobile-toggle .bar-top { transform: translateY(6px) rotate(45deg); }
.nav.menu-open .mobile-toggle .bar-mid { opacity: 0; }
.nav.menu-open .mobile-toggle .bar-bot { transform: translateY(-6px) rotate(-45deg); }

@media (prefers-reduced-motion: reduce) {
  .mobile-toggle svg path { transition: none; }
}

/* Mobile menu.
   The panel is positioned against .nav rather than the viewport: .nav carries
   backdrop-filter, and that makes it the containing block for any fixed child,
   so position:fixed here would anchor to the header and take the layout with
   it. Absolute against the sticky header does the same job correctly. */
@media (max-width: 960px) {
  .nav { position: sticky; }

  .nav.menu-open .navlinks {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: calc(100vh - 74px);
    overflow-y: auto;
    background: #fff;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    box-shadow: 0 18px 40px rgba(15, 23, 42, .12);
    padding: 8px 24px 24px;
  }

  .nav.menu-open .navitem { border-bottom: 1px solid var(--line); }

  .nav.menu-open .navbtn,
  .nav.menu-open .navlink {
    display: block;
    width: 100%;
    text-align: left;
    padding: 15px 0;
    font-size: 1rem;
    font-weight: 700;
  }

  .nav.menu-open .navbtn:after { float: right; transition: transform .2s; }
  .nav.menu-open .navitem.item-open .navbtn:after { transform: rotate(180deg); }

  .nav.menu-open .mega { display: none; }

  .nav.menu-open .navitem.item-open .mega {
    display: block;
    position: static;
    width: auto;
    left: auto;
    top: auto;
    border: 0;
    box-shadow: none;
    padding: 0 0 14px;
  }

  .nav.menu-open .mega.two,
  .nav.menu-open .mega.three { grid-template-columns: 1fr; }

  .nav.menu-open .megacol { margin-bottom: 10px; }
  .nav.menu-open .megacol a { padding: 10px; }

  /* The header's own buttons stay hidden on mobile; the copy inside the panel
     is what appears, at the end of the links where it belongs. */
  .navcta-inpanel { display: none; }

  .nav.menu-open .navcta-inpanel {
    display: flex;
    gap: 10px;
    margin: 18px 0 4px;
  }

  .nav.menu-open .navcta-inpanel .btn { flex: 1; }
}

@media (min-width: 961px) {
  .navcta-inpanel { display: none; }
}

/* The one phrase in the headline that carries the promise. */
.hero-accent { color: var(--green); }

/* The headline breaks its own lines, so the 12ch cap would wrap them again. */
.hero .hero-title { font-size: clamp(2rem, 3.8vw, 4.1rem); max-width: 20ch;
                    line-height: 1.05; letter-spacing: -.03em; margin: 10px 0 0; }
