:root {
  --ink: #0b1424;
  --ink-soft: #485467;
  --navy: #07101f;
  --navy-2: #0b1830;
  --blue: #2d72f3;
  --blue-deep: #1559d6;
  --sky: #72a7ff;
  --ice: #eef5ff;
  --line: #dce4ef;
  --white: #ffffff;
  --paper: #f8fafc;
  --green: #37d49a;
  --radius: 24px;
  --shadow: 0 25px 70px rgba(16, 39, 79, .14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background:
    radial-gradient(circle at 8% 8%, rgba(91, 145, 255, .19), transparent 24%),
    radial-gradient(circle at 90% 22%, rgba(133, 99, 255, .14), transparent 27%),
    radial-gradient(circle at 72% 72%, rgba(47, 201, 214, .11), transparent 30%),
    radial-gradient(circle, rgba(45, 114, 243, .075) 1.1px, transparent 1.5px),
    linear-gradient(128deg, #eef5ff 0%, #f8f5ff 48%, #edf9ff 100%);
  background-size: auto, auto, auto, 28px 28px, auto;
  background-attachment: fixed;
  font-family: "DM Sans", sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
.container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }

.nav-wrap {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255,255,255,.84);
  border-bottom: 1px solid rgba(220,228,239,.65);
  backdrop-filter: blur(18px);
}
.nav { height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 11px; font-family: "Manrope"; font-weight: 800; font-size: 18px; letter-spacing: -.04em; }
.brand-lockup { width:165px; height:auto; display:block; flex:0 0 auto; }

.brand-logo {
  width: 35px;
  height: 35px;
  object-fit: contain;
  display: block;
  flex: 0 0 auto;
  filter: saturate(1.18) brightness(.96) contrast(1.16)
    drop-shadow(0 0 5px rgba(10,42,103,.3));
}
.center-badge .brand-logo { width: 30px; height: 30px; margin: -2px 0 3px; transform: rotate(-45deg); }
.center-badge .brand-logo,
.brand-footer .brand-logo,
.brand-footer .brand-lockup {
  filter: brightness(0) saturate(100%) invert(73%) sepia(36%) saturate(1210%) hue-rotate(184deg) brightness(105%) contrast(104%)
    drop-shadow(0 0 5px rgba(95,160,255,.35));
}
.brand-mark { position: relative; width: 25px; height: 25px; display: inline-block; }
.brand-mark span { position: absolute; display: block; width: 8px; height: 8px; border-radius: 3px; background: var(--blue); transform: rotate(45deg); }
.brand-mark span:nth-child(1) { top: 0; left: 8px; }
.brand-mark span:nth-child(2) { left: 0; bottom: 0; }
.brand-mark span:nth-child(3) { right: 0; bottom: 0; }
.nav-links { display: flex; gap: 33px; align-items: center; margin-left: auto; }
.nav-links a { font-size: 14px; font-weight: 600; color: #354154; transition: color .2s ease; }
.nav-links a:hover { color: var(--blue); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 16px 23px; background: var(--blue); color: var(--white); border-radius: 11px; font-weight: 700; border: 1px solid var(--blue); box-shadow: 0 12px 30px rgba(45,114,243,.21); transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); box-shadow: 0 16px 36px rgba(45,114,243,.3); background: var(--blue-deep); }
.button-small { padding: 11px 17px; font-size: 14px; }
.menu-toggle { display: none; background: none; border: 0; width: 42px; height: 42px; position: relative; }
.menu-toggle span { width: 22px; height: 2px; background: var(--ink); position: absolute; left: 10px; transition: .25s ease; }
.menu-toggle span:first-child { top: 16px; }
.menu-toggle span:last-child { top: 24px; }

.hero {
  min-height: 720px;
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  align-items: center;
  gap: 48px;
  padding-top: 56px;
  padding-bottom: 74px;
  position: relative;
  isolation: isolate;
}
.hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background:
    radial-gradient(circle at 7% 16%, rgba(91, 145, 255, .21), transparent 25%),
    radial-gradient(circle at 88% 15%, rgba(133, 99, 255, .16), transparent 26%),
    radial-gradient(circle at 70% 88%, rgba(47, 201, 214, .13), transparent 30%),
    radial-gradient(circle at 38% 70%, rgba(255, 255, 255, .92), transparent 29%),
    linear-gradient(128deg, #eef5ff 0%, #f8f5ff 46%, #edf9ff 100%);
}
.hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  pointer-events: none;
  opacity: .72;
  background-image:
    radial-gradient(circle, rgba(45, 114, 243, .22) 1.2px, transparent 1.6px),
    radial-gradient(ellipse at 100% 42%, transparent 52%, rgba(255,255,255,.78) 52.3%, transparent 53.2%),
    radial-gradient(ellipse at -8% 74%, transparent 46%, rgba(103,154,255,.14) 46.3%, transparent 47.2%);
  background-size: 24px 24px, 100% 100%, 100% 100%;
  background-position: 0 0, 0 0, 0 0;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.62), transparent 47%, rgba(0,0,0,.4));
  -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,.62), transparent 47%, rgba(0,0,0,.4));
}
.eyebrow { display: flex; align-items: center; gap: 9px; text-transform: uppercase; color: var(--blue); letter-spacing: .12em; font-size: 12px; font-weight: 800; margin-bottom: 22px; }
.eyebrow > span { width: 22px; height: 2px; background: currentColor; }
h1, h2, h3 { font-family: "Manrope", sans-serif; margin-top: 0; }
h1 { font-size: clamp(48px, 5.15vw, 74px); line-height: 1.01; letter-spacing: -.055em; margin-bottom: 28px; }
h1 em { font-style: normal; color: var(--blue); }
.hero-lead { font-size: 19px; line-height: 1.65; color: var(--ink-soft); max-width: 610px; margin: 0 0 34px; }
.hero-actions { display: flex; align-items: center; gap: 27px; }
.text-link { font-weight: 700; font-size: 15px; }
.text-link span { color: var(--blue); margin-left: 5px; }
.trust-row { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 52px; padding-top: 25px; border-top: 1px solid rgba(122,153,199,.34); max-width: 560px; }
.trust-row div { display: flex; flex-direction: column; gap: 5px; }
.trust-row div + div { padding-left: 23px; border-left: 1px solid rgba(122,153,199,.34); }
.trust-row strong { font-family: "Manrope"; font-size: 16px; }
.trust-row span { font-size: 12px; color: #7a8798; }

.hero-visual { min-height: 610px; position: relative; display: flex; align-items: center; justify-content: center; }
.hero-visual::before { content: ""; position: absolute; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle, rgba(74,137,255,.22), rgba(74,137,255,0) 68%); }
.orb { position: absolute; border-radius: 50%; filter: blur(2px); }
.orb-one { width: 210px; height: 210px; background: linear-gradient(135deg, rgba(104,165,255,.88), rgba(212,197,255,.7)); top: 15px; right: -40px; opacity: .82; box-shadow: inset 24px 20px 46px rgba(255,255,255,.38), 0 30px 80px rgba(75,117,228,.18); }
.orb-two { width: 130px; height: 130px; background: linear-gradient(135deg, rgba(151,224,239,.7), rgba(255,255,255,.84)); left: 5px; bottom: 45px; box-shadow: inset 16px 14px 30px rgba(255,255,255,.5); }
.browser-card { width: 590px; max-width: 100%; background: white; border-radius: 18px; box-shadow: var(--shadow); position: relative; z-index: 2; overflow: hidden; transform: perspective(1300px) rotateY(-4deg) rotateX(2deg); border: 1px solid rgba(210,221,236,.9); }
.browser-bar { height: 45px; background: #f4f7fb; border-bottom: 1px solid #e1e8f2; display: grid; grid-template-columns: 80px 1fr 45px; align-items: center; gap: 10px; padding: 0 15px; }
.browser-dots { display: flex; gap: 5px; }
.browser-dots span { width: 7px; height: 7px; background: #c5ceda; border-radius: 50%; }
.browser-address { justify-self: center; width: min(260px, 100%); background: white; color: #8793a4; border-radius: 6px; font-size: 9px; text-align: center; padding: 6px; }
.browser-menu { color: #8c97a6; font-size: 12px; }
.browser-content { position: relative; height: 475px; background: linear-gradient(118deg, rgba(8,22,17,.95), rgba(8,38,26,.77)), linear-gradient(140deg, #72877b, #c7d5cd); padding: 32px; overflow: hidden; }
.browser-content::before { content: ""; position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(115deg, transparent 35%, rgba(255,255,255,.22) 36%, transparent 37%), linear-gradient(25deg, transparent 65%, rgba(255,255,255,.12) 66%, transparent 67%); background-size: 130px 130px; }
.mock-brand { position: relative; color: white; font-weight: 800; font-size: 9px; letter-spacing: .08em; }
.mock-brand span { color: #9ed4ac; font-weight: 500; }
.mock-copy { position: relative; margin-top: 106px; width: 58%; }
.mock-title-line { width: 100%; height: 17px; margin-top: 11px; background: rgba(255,255,255,.92); border-radius: 2px; }
.mock-title-line.short { width: 78%; margin-top: 6px; }
.mock-button { width: 72px; height: 22px; background: #91cba4; border-radius: 3px; margin-top: 18px; }
.chat-card { position: absolute; z-index: 4; right: 22px; bottom: 20px; width: 286px; background: white; border-radius: 16px; box-shadow: 0 18px 45px rgba(0,0,0,.28); overflow: hidden; }
.chat-head { display: flex; align-items: center; padding: 14px 15px; border-bottom: 1px solid #edf1f6; gap: 10px; }
.bot-icon { width: 34px; height: 34px; border-radius: 10px; background: linear-gradient(145deg, #ffffff, #dceaff); border: 1px solid #c9dcfa; color: var(--blue); display: grid; place-items: center; overflow: hidden; font-family: "Manrope"; font-weight: 800; box-shadow: 0 5px 14px rgba(45,114,243,.14); }
.bot-icon img { width: 72%; height: 72%; object-fit: contain; object-position: center; padding: 0; margin: auto; border-radius: 0; display: block; filter: saturate(1.6) brightness(1.05) contrast(1.08); }
.chat-head div:nth-child(2) { display: flex; flex-direction: column; flex: 1; }
.chat-head strong { font-size: 11px; }
.chat-head span { font-size: 8px; color: #52a882; margin-top: 2px; }
.chat-head button { border: 0; background: transparent; color: #8791a0; font-size: 18px; }
.chat-body { min-height: 220px; padding: 15px 13px; background: #fbfcfe; display: flex; flex-direction: column; gap: 10px; }
.bubble { max-width: 84%; padding: 9px 11px; font-size: 9px; line-height: 1.5; border-radius: 9px; }
.bubble.bot { align-self: flex-start; background: #edf3ff; color: #31405a; border-bottom-left-radius: 3px; }
.bubble.user { align-self: flex-end; background: var(--blue); color: white; border-bottom-right-radius: 3px; }
.bubble.opening-bubble { max-width: 92%; }
.chat-actions { display:flex; align-items:center; gap:5px; width:auto; margin-top:7px; }
.chat-actions button { width:auto; flex:0 0 auto; display:inline-flex; align-items:center; gap:4px; padding:5px 7px; border:1px solid #dbe6f7; border-radius:6px; background:white; color:#2e3e58; font-size:8px; line-height:1.2; font-weight:700; white-space:nowrap; text-align:left; box-shadow:0 2px 5px rgba(28,61,111,.04); }
.chat-actions button span { color:var(--blue); font-size:9px; line-height:1; }
.cursor { color: var(--blue); animation: blink .7s infinite; }
@keyframes blink { 50% { opacity: 0; } }
.chat-input { display: flex; align-items: center; gap: 8px; margin: 10px; padding: 8px 8px 8px 12px; border: 1px solid #e4eaf2; border-radius: 9px; color: #a3adbb; font-size: 9px; }
.chat-input span { flex: 1; }
.chat-input button { width: 27px; height: 27px; border: 0; border-radius: 7px; background: var(--blue); color: white; }
.floating-stat { position: absolute; z-index: 5; background: rgba(255,255,255,.95); box-shadow: 0 16px 42px rgba(22,45,83,.14); border: 1px solid #e0e8f2; border-radius: 12px; display: flex; align-items: center; gap: 10px; padding: 12px 14px; }
.floating-stat strong, .floating-stat small { display: block; }
.floating-stat strong { font-size: 10px; margin-bottom: 3px; }
.floating-stat small { color: #8a95a4; font-size: 8px; }
.stat-one { left: 0; top: 100px; }
.stat-two { right: -10px; bottom: 74px; }
.stat-icon { width: 30px; height: 30px; border-radius: 9px; background: #eaf2ff; color: var(--blue); display: grid; place-items: center; font-weight: 800; }
.pulse-dot { width: 30px; height: 30px; border-radius: 9px; background: #eafbf5; position: relative; }
.pulse-dot::after { content: ""; position: absolute; width: 8px; height: 8px; background: var(--green); border-radius: 50%; inset: 0; margin: auto; box-shadow: 0 0 0 5px rgba(55,212,154,.15); }

.logo-strip { border-top: 1px solid rgba(180,198,222,.72); border-bottom: 1px solid rgba(180,198,222,.72); background: rgba(255,255,255,.16); }
.logo-strip-inner { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 20px; color: #8a95a4; }
.logo-strip-inner > span { color: #657184; font-size: 12px; font-weight: 600; }
.logo-strip-inner div { font-family: "Manrope"; font-size: 11px; letter-spacing: .12em; font-weight: 800; }
.logo-strip-inner i { width: 3px; height: 3px; background: #c7d0dc; border-radius: 50%; }

.section { padding-top: 125px; padding-bottom: 125px; }
.reassurance-section { min-height: 680px; padding-top: 125px; padding-bottom: 125px; border-bottom: 1px solid rgba(180,198,222,.58); display: flex; align-items: center; }
.reassurance-grid { display: grid; grid-template-columns: 1.28fr .72fr; align-items: center; gap: 85px; }
.reassurance-grid h2 { margin: 0; max-width: 760px; color: var(--ink); font-size: clamp(40px, 4.5vw, 62px); line-height: 1.08; letter-spacing: -.048em; }
.reassurance-grid p { margin: 0; color: var(--ink-soft); font-size: 17px; line-height: 1.78; max-width: 490px; }
.section-heading { display: grid; grid-template-columns: 1.3fr .7fr; align-items: end; gap: 70px; margin-bottom: 58px; }
.section-heading h2, .center-heading h2, .dark-copy h2, .fit-copy h2, .contact-copy h2 { font-size: clamp(38px, 4vw, 57px); line-height: 1.08; letter-spacing: -.045em; margin-bottom: 0; }
.section-heading p { margin: 0 0 8px; color: var(--ink-soft); line-height: 1.75; font-size: 16px; }
.services-grid { display: grid; grid-template-columns: 1.16fr .92fr .92fr; gap: 20px; }
.service-card { min-height: 440px; border: 1px solid var(--line); border-radius: var(--radius); padding: 31px; position: relative; display: flex; flex-direction: column; background: white; }
.service-featured { background: linear-gradient(150deg, #eef5ff, #f9fbff 68%); }
.service-number { font-size: 11px; color: #97a4b5; letter-spacing: .12em; font-weight: 700; }
.service-icon { width: 64px; height: 64px; border-radius: 17px; background: white; border: 1px solid #dce6f4; box-shadow: 0 12px 28px rgba(31,72,131,.08); margin: 51px 0 28px; position: relative; }
.icon-chat span { position: absolute; height: 5px; background: #83adf8; border-radius: 5px; left: 16px; }
.icon-chat span:nth-child(1) { width: 31px; top: 18px; }
.icon-chat span:nth-child(2) { width: 23px; top: 29px; }
.icon-chat span:nth-child(3) { width: 16px; top: 40px; }
.icon-lead span { position: absolute; border-radius: 50%; background: #dbe9ff; }
.icon-lead span:nth-child(1) { width: 17px; height: 17px; top: 15px; left: 23px; background: #6f9cef; }
.icon-lead span:nth-child(2) { width: 35px; height: 14px; border-radius: 14px 14px 8px 8px; top: 36px; left: 14px; background: #b9cff6; }
.icon-lead span:nth-child(3) { width: 7px; height: 7px; right: 10px; top: 10px; background: var(--green); box-shadow: 0 0 0 4px #e7faf3; }
.icon-flow span { width: 9px; height: 9px; position: absolute; border-radius: 3px; background: #719cf0; }
.icon-flow span:nth-child(1) { top: 16px; left: 15px; }
.icon-flow span:nth-child(2) { top: 16px; right: 15px; }
.icon-flow span:nth-child(3) { bottom: 15px; left: 15px; }
.icon-flow span:nth-child(4) { bottom: 15px; right: 15px; }
.icon-flow::before, .icon-flow::after { content:""; position:absolute; background:#c9dbfa; }
.icon-flow::before { width: 27px; height: 2px; top: 20px; left: 19px; }
.icon-flow::after { width: 2px; height: 27px; top: 20px; left: 31px; }
.service-card h3 { font-size: 24px; letter-spacing: -.035em; margin-bottom: 16px; }
.service-card p { color: var(--ink-soft); line-height: 1.7; font-size: 15px; margin-top: 0; }
.service-card ul { list-style: none; padding: 0; margin: 17px 0 0; }
.service-card li { color: #354154; font-size: 13px; padding: 8px 0 8px 21px; position: relative; }
.service-card li::before { content: ""; position: absolute; width: 6px; height: 6px; border-radius: 50%; background: var(--blue); left: 1px; top: 14px; }

.dark-section { background: var(--navy); color: white; overflow: hidden; position: relative; }
.dark-section::before { content:""; position:absolute; width:700px; height:700px; border:1px solid rgba(78,127,211,.13); border-radius:50%; right:-340px; top:-230px; box-shadow: 0 0 0 90px rgba(45,114,243,.025), 0 0 0 180px rgba(45,114,243,.02); }
.dark-inner { display: grid; grid-template-columns: .9fr 1.1fr; gap: 110px; padding-top: 125px; padding-bottom: 125px; position: relative; z-index: 1; }
.eyebrow-light { color: #7fabff; }
.dark-copy h2 { max-width: 600px; }
.why-ai-hero { min-height: calc(100vh - 82px); display: flex; align-items: center; }
.why-ai-hero .dark-inner { width: 100%; }
.why-ai-hero .dark-copy h1 { max-width: 650px; color: white; font-size: clamp(45px, 4.7vw, 68px); line-height: 1.04; letter-spacing: -.052em; margin-bottom: 28px; }
.dark-copy > p { color: #aeb9ca; line-height: 1.78; font-size: 16px; }
.outcome-stack { display: grid; gap: 14px; align-content: center; }
.outcome-card { border: 1px solid rgba(143,167,204,.2); background: rgba(255,255,255,.035); border-radius: 18px; padding: 26px 29px; }
.outcome-top { display: flex; justify-content: space-between; color: #6886b7; font-size: 11px; font-weight: 700; }
.outcome-card h3 { font-size: 23px; margin: 19px 0 8px; }
.outcome-card p { margin: 0; color: #9facbf; font-size: 14px; }
.mini-wave { display: flex; align-items: center; gap: 3px; height: 18px; }
.mini-wave i { display:block; width:2px; background:#6e9ef5; border-radius:2px; }
.mini-wave i:nth-child(1) { height:5px; }.mini-wave i:nth-child(2) { height:11px; }.mini-wave i:nth-child(3) { height:16px; }.mini-wave i:nth-child(4) { height:9px; }.mini-wave i:nth-child(5) { height:13px; }
.mini-nodes { position: relative; width: 38px; }
.mini-nodes i { position:absolute; width:6px; height:6px; border:1px solid #78a6f7; border-radius:50%; }
.mini-nodes i:nth-child(1){left:0;top:2px}.mini-nodes i:nth-child(2){left:16px;top:9px}.mini-nodes i:nth-child(3){right:0;top:0}
.mini-nodes::before,.mini-nodes::after{content:"";position:absolute;height:1px;background:#5479b9;transform-origin:left}
.mini-nodes::before{width:18px;left:5px;top:7px;transform:rotate(18deg)}.mini-nodes::after{width:17px;left:21px;top:10px;transform:rotate(-28deg)}
.mini-arrow { font-size: 20px; color:#78a6f7; }

.center-heading { text-align: center; max-width: 750px; margin: 0 auto 70px; }
.center-heading .eyebrow { justify-content: center; }
.center-heading p { color: var(--ink-soft); font-size: 17px; line-height: 1.6; }
.process-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 34px; }
.process-step { padding: 0 15px; }
.step-num { font-family: "Manrope"; color: var(--blue); font-size: 12px; font-weight: 800; }
.step-line { height: 1px; background: var(--line); margin: 20px 0 33px; position: relative; }
.step-line::before { content:""; width:9px; height:9px; border:2px solid var(--blue); background:white; border-radius:50%; position:absolute; left:0; top:-5px; }
.process-step h3 { font-size: 22px; letter-spacing:-.03em; margin-bottom: 13px; }
.process-step p { color: var(--ink-soft); line-height:1.7; font-size:14px; }

.fit-section { padding-bottom: 125px; }
.fit-card { min-height: 580px; border-radius: 30px; overflow: hidden; background: linear-gradient(120deg, #0c1d39, #102957); color: white; display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
.fit-copy { padding: 70px; position: relative; z-index: 2; }
.fit-copy h2 { max-width: 470px; }
.fit-list { margin-top: 36px; display: grid; gap: 18px; }
.fit-list div { display: flex; align-items: flex-start; gap: 13px; }
.fit-list span { width: 22px; height: 22px; display: grid; place-items:center; flex:0 0 auto; border-radius:50%; background:rgba(87,143,244,.24); color:#a8c9ff; font-size:11px; margin-top:2px; }
.fit-list p { margin:0; color:#c2ccda; line-height:1.55; font-size:14px; }
.fit-visual { position:relative; min-height:580px; overflow:hidden; }
.ring { position:absolute; border-radius:50%; border:1px solid rgba(119,164,245,.25); inset:50%; transform:translate(-50%,-50%); }
.ring-one { width:390px; height:390px; box-shadow:0 0 0 62px rgba(104,150,235,.025); }
.ring-two { width:250px; height:250px; }
.center-badge { position:absolute; width:154px; height:154px; border-radius:35px; background:rgba(255,255,255,.08); border:1px solid rgba(179,205,255,.24); backdrop-filter:blur(12px); inset:50%; transform:translate(-50%,-50%) rotate(45deg); display:flex; align-items:center; justify-content:center; flex-direction:column; box-shadow:0 22px 60px rgba(0,0,0,.2); }
.center-badge > * { transform:rotate(-45deg); }
.center-badge .brand-mark { margin: -2px 0 3px; transform:rotate(-45deg) scale(.75); }
.center-badge strong { font-family:"Manrope"; font-size:36px; line-height:1; }
.center-badge small { width:90px; text-align:center; color:#aebed5; font-size:8px; line-height:1.3; margin-top:8px; }
.fit-node { position:absolute; width:73px; height:73px; border-radius:50%; background:#0f2e62; border:1px solid rgba(121,164,240,.35); color:#bcd3fc; display:grid; place-items:center; font-family:"Manrope"; font-size:9px; letter-spacing:.09em; font-weight:800; box-shadow:0 15px 35px rgba(0,0,0,.2); }
.node-a{top:92px;left:115px}.node-b{top:180px;right:62px}.node-c{bottom:85px;right:153px}.node-d{bottom:120px;left:55px}

.contact-section { background: rgba(248,250,252,.22); border-top:1px solid rgba(180,198,222,.72); padding: 120px 0; }
.demo-page .contact-section { min-height: calc(100vh - 82px); display:flex; align-items:center; padding:90px 0 110px; }
.demo-page .contact-copy h1 { font-size:clamp(43px, 4.5vw, 64px); line-height:1.04; letter-spacing:-.05em; margin-bottom:24px; }
.demo-intro { margin-bottom:30px; }
.demo-details { display:grid; gap:13px; margin:30px 0 0; }
.demo-details div { display:flex; align-items:flex-start; gap:11px; color:#465267; font-size:14px; line-height:1.55; }
.demo-details span { width:22px; height:22px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; background:var(--ice); color:var(--blue); font-weight:800; font-size:11px; margin-top:1px; }
.contact-grid { display:grid; grid-template-columns:.86fr 1.14fr; gap:100px; align-items:start; }
.contact-copy { position:sticky; top:130px; }
.contact-copy p { color:var(--ink-soft); line-height:1.75; font-size:16px; max-width:520px; }
.founder-note { display:flex; align-items:center; gap:13px; margin-top:35px; }
.founder-avatar { width:45px; height:45px; border-radius:13px; background:var(--navy); color:white; display:grid; place-items:center; font-family:"Manrope"; font-weight:800; font-size:12px; }
.founder-note div:last-child { display:flex; flex-direction:column; gap:3px; }
.founder-note strong { font-size:13px; }.founder-note span { color:#8a95a4; font-size:11px; }
.contact-form { background:white; border:1px solid var(--line); border-radius:24px; padding:38px; box-shadow:0 20px 55px rgba(18,43,79,.07); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.contact-form label { display:flex; flex-direction:column; gap:8px; color:#334055; font-size:12px; font-weight:700; margin-bottom:18px; }
.contact-form input,.contact-form textarea,.contact-form select { width:100%; border:1px solid #dce4ee; border-radius:10px; background:#fbfcfe; padding:14px 15px; outline:none; color:var(--ink); resize:vertical; transition:border .2s ease,box-shadow .2s ease,background .2s ease; }
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus { border-color:#89aff6; box-shadow:0 0 0 4px rgba(45,114,243,.08); background:white; }
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#aab3c0}.form-button{width:100%;margin-top:3px}.form-button:disabled{opacity:.7;cursor:wait}.form-note{font-size:10px;color:#8c96a5;text-align:center;line-height:1.5;margin:13px 15px 0}.form-note a{color:#52647c;text-decoration:underline;text-underline-offset:2px}.form-note a:hover{color:var(--blue)}.netlify-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.form-success,.form-error{display:none;margin-top:18px;padding:13px 14px;border-radius:9px;font-size:12px;line-height:1.5}.form-success{background:#e9faf4;color:#177655}.form-error{background:#fff0f0;color:#a33939}.form-success.show,.form-error.show{display:block}

footer { background: #060d19; color:white; padding:55px 0; }
.footer-grid { display:grid; grid-template-columns:1.2fr .6fr 1fr; gap:50px; align-items:end; }
.brand-footer { margin-bottom:16px; }
.footer-grid > div:first-child p { color:#8490a3; font-size:12px; max-width:300px; line-height:1.6; }
.footer-links { display:flex; flex-direction:row; align-items:center; justify-content:center; flex-wrap:nowrap; gap:24px; width:100%; font-size:14px; font-weight:600; color:#c4cfdf; }
.footer-links a { white-space:nowrap; padding:10px 0; }
.footer-links a + a { padding-left:24px; border-left:1px solid #344157; }
.footer-links a:hover{color:white}.footer-meta{display:flex;flex-direction:column;align-items:flex-end;gap:7px;color:#667287;font-size:10px}
.privacy-link { color:#7d899b; text-decoration:underline; text-decoration-color:#344157; text-underline-offset:3px; transition:color .2s ease,text-decoration-color .2s ease; }
.privacy-link:hover { color:white; text-decoration-color:#7d899b; }

.privacy-page main { background:rgba(248,250,252,.38); }
.privacy-section { padding:90px 0 120px; }
.privacy-content { max-width:820px; }
.privacy-content h1 { margin:0 0 12px; font-size:clamp(48px, 6vw, 76px); letter-spacing:-.055em; }
.privacy-effective { color:#8190a5; font-size:13px; margin:0 0 48px; }
.privacy-intro { font-size:18px; color:var(--ink-soft); line-height:1.75; padding-bottom:34px; border-bottom:1px solid var(--line); }
.privacy-content h2 { font-size:23px; letter-spacing:-.025em; margin:42px 0 10px; }
.privacy-content p { color:var(--ink-soft); line-height:1.75; margin:0 0 14px; }
.privacy-content a:not(.button) { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }

.about-page main { background:rgba(248,250,252,.38); }
.about-section { min-height:calc(100vh - 82px); padding:100px 0 125px; display:flex; align-items:center; }
.about-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:center; }
.about-photo-block { width:100%; }
.about-photo-placeholder { width:100%; aspect-ratio:4/5; min-height:500px; border:1px solid rgba(153,174,203,.72); border-radius:28px; background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(231,238,248,.62)); box-shadow:0 22px 60px rgba(18,43,79,.07); display:grid; place-items:center; }
.about-logo { display:block; width:82%; max-width:380px; height:auto; object-fit:contain; }
.about-photo-caption { padding:20px 4px 0; display:flex; flex-direction:column; gap:4px; }
.about-photo-caption strong { color:var(--ink); font-family:"Manrope",sans-serif; font-size:18px; letter-spacing:-.02em; }
.about-photo-caption span { color:#718096; font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.about-copy .eyebrow { margin-bottom:24px; }
.about-copy h1 { margin:0 0 30px; font-size:clamp(42px,4.4vw,58px); line-height:1.08; letter-spacing:-.045em; }
.about-copy p { margin:0; color:var(--ink-soft); font-size:18px; line-height:1.9; max-width:650px; }

.pricing-page main { background:rgba(248,250,252,.38); }
.pricing-section { min-height:calc(100vh - 82px); padding:100px 0 125px; }
.pricing-heading { max-width:780px; margin:0 auto 58px; text-align:center; }
.pricing-heading .eyebrow { justify-content:center; }
.pricing-heading h1 { margin-bottom:24px; font-size:clamp(45px,5vw,67px); }
.pricing-heading > p { max-width:690px; margin:0 auto; color:var(--ink-soft); font-size:17px; line-height:1.75; }
.pricing-grid { display:grid; grid-template-columns:1.08fr .96fr .96fr; gap:20px; align-items:stretch; }
.pricing-card { min-height:540px; padding:32px; border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,255,255,.92); box-shadow:0 18px 48px rgba(18,43,79,.065); display:flex; flex-direction:column; }
.pricing-card-primary { border-color:#bcd2f5; background:linear-gradient(150deg,#edf5ff,#ffffff 72%); box-shadow:0 24px 58px rgba(30,77,148,.11); }
.pricing-card-top { min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:34px; }
.pricing-label { color:#77869a; font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.pricing-card h2 { margin:0 0 17px; font-size:25px; letter-spacing:-.035em; }
.price { margin:0 0 24px; display:flex; align-items:baseline; gap:7px; }
.price strong { color:var(--ink); font-family:"Manrope",sans-serif; font-size:48px; line-height:1; letter-spacing:-.055em; }
.price span { color:#728096; font-size:13px; font-weight:600; }
.price-contact strong { font-size:35px; letter-spacing:-.045em; }
.usage-note { margin:-14px 0 18px; color:#7c899b; font-size:11px; line-height:1.5; }
.pricing-description { min-height:103px; margin:0; color:var(--ink-soft); font-size:14px; line-height:1.72; }
.pricing-card ul { list-style:none; padding:21px 0 0; margin:0 0 28px; border-top:1px solid #e5ebf3; }
.pricing-card li { position:relative; padding:7px 0 7px 21px; color:#354154; font-size:13px; line-height:1.45; }
.pricing-card li::before { content:""; position:absolute; left:1px; top:13px; width:6px; height:6px; border-radius:50%; background:var(--blue); }
.pricing-text-link { margin-top:auto; color:var(--blue); font-size:13px; font-weight:700; }
.pricing-text-link span { margin-left:5px; }
.pricing-plus { width:32px; height:32px; border:1px solid #d7e3f4; border-radius:9px; display:grid; place-items:center; color:var(--blue); background:#f4f8ff; font-size:21px; }
.pricing-icon { width:38px; height:34px; position:relative; }
.pricing-icon i { position:absolute; left:0; height:5px; border-radius:5px; background:#74a4f7; }
.pricing-icon i:nth-child(1) { width:36px; top:1px; }
.pricing-icon i:nth-child(2) { width:27px; top:14px; }
.pricing-icon i:nth-child(3) { width:18px; top:27px; }
.pricing-nodes { position:relative; width:38px; height:32px; }
.pricing-nodes::before { content:""; position:absolute; width:25px; height:1px; background:#bdd2f4; top:16px; left:6px; transform:rotate(24deg); }
.pricing-nodes i { position:absolute; width:9px; height:9px; border-radius:3px; background:var(--blue); }
.pricing-nodes i:nth-child(1) { left:0; top:5px; }.pricing-nodes i:nth-child(2) { right:0; top:14px; }.pricing-nodes i:nth-child(3) { left:12px; bottom:0; }
.setup-note { width:fit-content; max-width:100%; margin:28px auto 0; padding:13px 18px; border:1px solid rgba(183,200,224,.7); border-radius:10px; background:rgba(255,255,255,.55); color:#788699; font-size:12px; text-align:center; }
.setup-note span { margin-right:7px; color:#526176; font-weight:700; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .75s ease, transform .75s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: .12s; }.delay-2 { transition-delay: .22s; }

@media (max-width: 1050px) {
  .nav-cta { display:none; }
  .hero { grid-template-columns:1fr; padding-top:75px; }
  .hero-copy { max-width:760px; }
  .hero-visual { min-height:600px; }
  .services-grid { grid-template-columns:1fr 1fr; }.service-featured { grid-column:1/-1; min-height:390px; }
  .dark-inner,.contact-grid { gap:55px; }
  .fit-copy { padding:50px; }
  .pricing-grid { grid-template-columns:1fr 1fr; }.pricing-card-primary { grid-column:1/-1; min-height:470px; }
}
@media (max-width: 820px) {
  .container { width:min(100% - 34px, 1180px); }
  .nav { height:72px; }.nav-cta{display:none}.menu-toggle{display:block;z-index:101}.nav-links{position:fixed;inset:72px 0 0;background:white;display:flex;flex-direction:column;align-items:flex-start;padding:45px 28px;gap:28px;transform:translateX(100%);transition:transform .3s ease}.nav-links.open{transform:translateX(0)}.nav-links a{font-family:"Manrope";font-size:28px;color:var(--ink)}.menu-toggle.active span:first-child{transform:rotate(45deg);top:20px}.menu-toggle.active span:last-child{transform:rotate(-45deg);top:20px}
  .hero { min-height:auto; gap:10px; padding-top:58px; }.hero-visual { min-height:560px; }.browser-card{width:570px;transform:none}.stat-one{left:8px}.stat-two{right:8px}
  .logo-strip-inner{flex-wrap:wrap;justify-content:center;padding:22px 0}.logo-strip-inner>span{width:100%;text-align:center}
  .reassurance-section{min-height:580px;padding-top:100px;padding-bottom:100px}
  .reassurance-grid{grid-template-columns:1fr;gap:28px}.reassurance-grid p{max-width:650px}
  .section{padding-top:90px;padding-bottom:90px}.section-heading{grid-template-columns:1fr;gap:20px}.section-heading p{max-width:600px}.services-grid{grid-template-columns:1fr}.service-featured{grid-column:auto}.service-card{min-height:390px}
  .dark-inner,.contact-grid,.fit-card{grid-template-columns:1fr}.dark-inner{gap:65px;padding-top:90px;padding-bottom:90px}
  .about-section{padding:80px 0 100px}.about-grid{grid-template-columns:1fr;gap:50px}.about-photo-placeholder{max-width:560px;min-height:0}.about-copy{max-width:720px}
  .pricing-section{padding:80px 0 100px}.pricing-grid{grid-template-columns:1fr}.pricing-card-primary{grid-column:auto}.pricing-card{min-height:0}.pricing-description{min-height:0;margin-bottom:24px}
  .why-ai-hero{min-height:auto}
  .process-grid{grid-template-columns:1fr;gap:48px}.center-heading{margin-bottom:60px}
  .fit-section{padding-bottom:90px}.fit-copy{padding:55px 45px 20px}.fit-visual{min-height:520px}.contact-section{padding:90px 0}.contact-copy{position:static}.contact-grid{gap:45px}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-meta{grid-column:1/-1;align-items:flex-start;border-top:1px solid #172031;padding-top:25px}
}
@media (max-width: 560px) {
  h1{font-size:45px}.hero-lead{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.trust-row{grid-template-columns:1fr;gap:16px}.trust-row div+div{padding-left:0;border-left:0}.hero-visual{min-height:530px;margin-top:15px}.browser-card{width:100%}.browser-content{height:430px;padding:22px}.chat-card{width:255px;right:10px}.stat-one{top:52px;left:-5px}.stat-two{bottom:30px;right:-5px}.floating-stat{padding:9px 10px}.floating-stat strong{font-size:9px}
  .section-heading h2,.center-heading h2,.dark-copy h2,.fit-copy h2,.contact-copy h2{font-size:38px}.service-card{padding:27px;min-height:410px}.service-icon{margin-top:40px}
  .reassurance-section{min-height:auto;padding-top:90px;padding-bottom:90px}
  .reassurance-grid h2{font-size:38px}.reassurance-grid p{font-size:16px}
  .dark-inner{gap:50px}.outcome-card{padding:23px}.fit-copy{padding:45px 28px 10px}.fit-visual{min-height:460px}.ring-one{width:310px;height:310px}.ring-two{width:210px;height:210px}.node-a{top:65px;left:35px}.node-b{top:150px;right:20px}.node-c{bottom:58px;right:55px}.node-d{bottom:90px;left:15px}
  .about-section{padding:60px 0 85px}.about-grid{gap:38px}.about-photo-placeholder{border-radius:22px}.about-copy h1{font-size:38px}.about-copy p{font-size:16px;line-height:1.8}
  .pricing-section{padding:65px 0 85px}.pricing-heading{margin-bottom:40px}.pricing-heading h1{font-size:42px}.pricing-card{padding:27px}.price strong{font-size:43px}.setup-note span{display:block;margin:0 0 4px}
  .contact-form{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr}.footer-meta{grid-column:auto}.footer-links{justify-content:flex-start;gap:18px}.footer-links a + a{padding-left:18px}.logo-strip-inner i{display:none}.logo-strip-inner div{width:45%;text-align:center}
}
