:root {
  --blue: #1657f4;
  --blue-dark: #0036c4;
  --blue-light: #e9efff;
  --ink: #111827;
  --muted: #667085;
  --line: #e6eaf2;
  --surface: #f7f9fc;
  --white: #ffffff;
  --green: #1fa36b;
  --shadow: 0 24px 70px rgba(21, 44, 92, 0.12);
  --radius-lg: 32px;
  --radius-md: 22px;
  --radius-sm: 14px;
  --shell: min(1280px, calc(100vw - 64px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
html[lang="ka"] body { font-family: "Noto Sans Georgian", sans-serif; }
button, input, textarea { font: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.shell { width: var(--shell); margin-inline: auto; }
.section { padding: 112px 0; position: relative; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 18px; top: -100px; z-index: 1000; padding: 10px 16px; border-radius: 10px; background: var(--ink); color: white; transition: top .2s; }
.skip-link:focus { top: 18px; }

.scroll-progress { position: fixed; inset: 0 0 auto; height: 3px; z-index: 999; background: transparent; }
.scroll-progress span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #2592f2, var(--blue)); }

.site-header { position: fixed; z-index: 100; inset: 0 0 auto; background: rgba(255,255,255,.92); backdrop-filter: blur(18px); box-shadow: 0 1px 0 rgba(17,24,39,.045); transition: background .25s, box-shadow .25s; }
.site-header.scrolled { background: rgba(255,255,255,.96); box-shadow: 0 8px 30px rgba(34,58,105,.07); }
.nav { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { width: 178px; flex: 0 0 auto; }
.nav-panel, .nav-links, .nav-actions { display: flex; align-items: center; }
.nav-panel { flex: 1; justify-content: flex-end; gap: 48px; }
.nav-links { gap: 30px; }
.nav-links a { color: #394150; font-weight: 500; font-size: .94rem; transition: color .2s; }
.nav-links a:hover { color: var(--blue); }
.nav-actions { gap: 12px; }
.language-switch { display: flex; align-items: center; gap: 5px; border: 0; background: transparent; color: #374151; padding: 10px 8px; cursor: pointer; font-weight: 600; }
.language-switch svg { width: 16px; }
.menu-toggle { display: none; width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 12px; background: white; padding: 10px; }
.menu-toggle > span:not(.sr-only) { display: block; height: 2px; width: 20px; background: var(--ink); margin: 4px 0; border-radius: 9px; transition: transform .2s, opacity .2s; }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 23px; border: 1px solid transparent; border-radius: 14px; font-weight: 600; cursor: pointer; transition: transform .2s, box-shadow .2s, background .2s, border-color .2s; }
.button:hover { transform: translateY(-2px); }
.button svg { width: 20px; }
.button-small { min-height: 44px; padding: 0 18px; background: var(--blue); color: white; border-radius: 12px; box-shadow: 0 8px 24px rgba(22,87,244,.22); }
.button-primary { background: var(--blue); color: white; box-shadow: 0 12px 30px rgba(22,87,244,.25); }
.button-primary:hover { background: #0d4bea; box-shadow: 0 16px 38px rgba(22,87,244,.32); }
.button-ghost { color: #263043; background: rgba(255,255,255,.72); border-color: #dfe5ef; }
.button-ghost:hover { background: white; border-color: #c9d2e2; }
.button-white { background: white; color: var(--blue-dark); box-shadow: 0 15px 40px rgba(0,21,80,.18); }
.play-icon { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; background: var(--blue-light); color: var(--blue); }
.play-icon svg { width: 14px; fill: currentColor; stroke: none; }

.hero { min-height: 900px; display: flex; align-items: center; padding-top: 138px; padding-bottom: 86px; background: radial-gradient(circle at 8% 45%, rgba(255,255,255,.96), transparent 35%), radial-gradient(circle at 88% 23%, rgba(73,151,255,.28), transparent 34%), linear-gradient(120deg, #f8fbff 0%, #ebf5ff 46%, #d8ebff 100%); overflow: hidden; }
.hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(255,255,255,.26), transparent 45%), radial-gradient(circle at 76% 85%, rgba(255,255,255,.62), transparent 26%); }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(2px); opacity: .55; }
.hero-glow-one { width: 340px; height: 340px; background: rgba(22,87,244,.12); top: 70px; right: -130px; }
.hero-glow-two { width: 210px; height: 210px; background: rgba(37,146,242,.12); left: -90px; bottom: 80px; }
.hero-grid { display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 18px; position: relative; z-index: 1; }
.hero-copy { position: relative; z-index: 12; }
.eyebrow, .section-kicker, .dark-kicker, .light-kicker { display: inline-flex; align-items: center; gap: 9px; color: var(--blue); font-size: .73rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.eyebrow { padding: 8px 12px; border: 1px solid rgba(22,87,244,.14); background: rgba(255,255,255,.72); border-radius: 999px; letter-spacing: .07em; }
.eyebrow-dot { width: 8px; height: 8px; background: var(--blue); border-radius: 50%; box-shadow: 0 0 0 5px rgba(22,87,244,.1); }
.hero h1 { margin: 24px 0 22px; font-size: clamp(3.45rem, 5.25vw, 5.25rem); letter-spacing: -.062em; line-height: 1.03; max-width: 760px; color: #081a40; }
.hero h1 span { color: #081a40; }
html[lang="ka"] .hero h1 { font-size: clamp(2.7rem, 5.1vw, 4.35rem); line-height: 1.15; letter-spacing: -.045em; }
.hero-lead { max-width: 590px; color: #5f708f; font-size: 1.12rem; line-height: 1.7; margin: 0 0 31px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-actions button { font:inherit; }
.hero-outcomes { display:flex;flex-wrap:wrap;gap:8px 15px;margin-top:22px; }.hero-outcomes > span { display:flex;align-items:center;gap:6px;color:#33445e;font-size:.7rem; }.hero-outcomes i { width:18px;height:18px;display:grid;place-items:center;color:#168256;background:#e6f7ef;border-radius:50%;font-size:.52rem;font-style:normal;font-weight:800; }.hero-outcomes b { font-weight:600; }
.hero-note { display: flex; align-items: center; gap: 12px; margin-top: 24px; color: #536887; font-size: .81rem; }
.avatar-stack { display: flex; }
.avatar-stack span { width: 29px; height: 29px; display: grid; place-items: center; margin-left: -7px; border: 2px solid white; border-radius: 50%; background: #dce6ff; color: var(--blue-dark); font-size: .59rem; font-weight: 700; }
.avatar-stack span:first-child { margin-left: 0; background: var(--blue); color: white; }

.hero-visual { position: relative; min-height: 650px; display: flex; align-items: center; justify-content: center; isolation: isolate; }
.hero-visual::before { content: ""; position: absolute; z-index: -3; width: 92%; height: 205px; left: 5%; bottom: 24px; border-radius: 34px 34px 18px 18px; background: linear-gradient(145deg,#d9ebff 0%,#8fc5ff 28%,#1767ec 82%); box-shadow: 0 38px 70px rgba(26,94,193,.22), inset 0 2px 0 rgba(255,255,255,.95); transform: perspective(900px) rotateX(57deg) rotateZ(-1deg); }
.hero-visual::after { content: ""; position: absolute; z-index: -4; width: 105%; height: 110px; left: -2%; bottom: -10px; border-radius: 24px; background: linear-gradient(180deg,#d8e5f4,#f3f7fb); box-shadow: 0 20px 40px rgba(39,70,120,.13); transform: perspective(800px) rotateX(60deg); }
.stage-block { position: absolute; z-index: -2; border: 1px solid rgba(255,255,255,.75); background: linear-gradient(145deg,rgba(219,238,255,.93),rgba(68,143,255,.66)); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 25px 45px rgba(45,107,194,.15); }
.stage-block-one { width: 205px; height: 360px; left: 20px; top: 128px; border-radius: 28px; transform: perspective(950px) rotateY(13deg); }
.stage-block-two { width: 112px; height: 350px; right: -24px; top: 245px; border-radius: 24px; }
.hero-render { min-height: 620px; justify-content: flex-start; }
.hero-render::before, .hero-render::after { display: none; }
.hero-render > img { width: min(900px, 135%); max-width: none; height: auto; margin-left: -24%; filter: drop-shadow(0 30px 45px rgba(26,87,176,.18)); transform: translateY(-18px); }
.hero-render .visual-caption { right: 9%; bottom: 22px; }
.app-window { position: relative; z-index: 2; width: min(700px, 100%); min-height: 480px; display: grid; grid-template-columns: 70px 1fr; background: rgba(255,255,255,.92); border: 7px solid rgba(255,255,255,.68); border-radius: 26px; box-shadow: 0 38px 90px rgba(22,73,151,.24), 0 2px 0 white inset; transform: perspective(1400px) rotateY(-6deg) rotateX(2deg) translateY(-36px); overflow: hidden; backdrop-filter: blur(16px); }
.app-sidebar { padding: 24px 12px; background: linear-gradient(180deg,#07255d 0%,#051a42 100%); border-right: 1px solid rgba(255,255,255,.08); display: flex; align-items: center; flex-direction: column; gap: 15px; }
.app-sidebar > img { width: 30px; margin-bottom: 16px; }
.side-item { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 11px; color: #9cb6df; }
.side-item.active { color: white; background: rgba(255,255,255,.14); box-shadow: 0 7px 20px rgba(0,10,35,.18); }
.side-item svg { width: 19px; }
.app-main { padding: 24px 25px; min-width: 0; }
.app-topbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.app-topbar div:first-child { display: flex; flex-direction: column; }
.app-topbar small { color: #939daf; font-size: .59rem; text-transform: uppercase; letter-spacing: .1em; }
.app-topbar strong { font-size: 1.13rem; }
.app-user { width: 34px; height: 34px; display: grid; place-items: center; background: var(--blue); color: white; border-radius: 50%; font-size: .66rem; font-weight: 700; }
.app-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; }
.app-stats > div { padding: 13px; border: 1px solid #e8ecf3; border-radius: 12px; display: grid; grid-template-columns: 1fr auto; align-items: end; background: white; }
.app-stats span { grid-column: 1/-1; color: #828da0; font-size: .57rem; }
.app-stats strong { font-size: 1.22rem; line-height: 1.2; }
.app-stats small { color: #9aa3b3; font-size: .5rem; }
.app-stats .trend { color: var(--green); }
.contract-card { margin-top: 15px; border: 1px solid #e7ebf3; border-radius: 15px; padding: 17px; box-shadow: 0 8px 26px rgba(29,51,92,.05); }
.contract-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.contract-head > div { display: flex; flex-direction: column; }
.contract-head small { color: #9aa3b3; font-size: .49rem; letter-spacing: .09em; }
.contract-head strong { font-size: .87rem; }
.status-pill { padding: 5px 9px; border-radius: 999px; background: #fff6df; color: #9b6a00; font-size: .52rem; font-weight: 600; }
.workflow { display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; align-items: start; margin: 24px 0 20px; }
.workflow-step { display: flex; align-items: center; flex-direction: column; gap: 5px; color: #a0a8b5; }
.workflow-step span { width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid #d7ddea; background: white; border-radius: 50%; font-size: .49rem; }
.workflow-step small { font-size: .47rem; }
.workflow-step.done span { color: white; background: var(--blue); border-color: var(--blue); }
.workflow-step.current span { color: var(--blue); border-color: var(--blue); box-shadow: 0 0 0 4px rgba(22,87,244,.1); }
.workflow i { height: 1px; background: #dce2ec; margin-top: 12px; }
.workflow-step.done + i { background: var(--blue); }
.review-row { display: flex; align-items: center; justify-content: space-between; padding: 10px 0; border-top: 1px solid #edf0f5; }
.reviewer { display: flex; align-items: center; gap: 9px; }
.reviewer > span { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; background: #edf2ff; color: var(--blue); font-size: .49rem; font-weight: 700; }
.reviewer p { display: flex; flex-direction: column; margin: 0; }
.reviewer b { font-size: .62rem; }
.reviewer small { color: #98a1b1; font-size: .48rem; }
.review-check { width: 22px; height: 22px; display: grid; place-items: center; background: #eaf8f1; color: var(--green); border-radius: 50%; }
.review-check svg { width: 13px; }
.review-row button { color: white; background: var(--blue); border: 0; border-radius: 7px; padding: 5px 10px; font-size: .5rem; }
.floating-chip { position: absolute; z-index: 8; display: flex; align-items: center; gap: 10px; min-width: 190px; padding: 12px 14px; border: 1px solid rgba(22,87,244,.12); background: rgba(255,255,255,.9); backdrop-filter: blur(16px); border-radius: 14px; box-shadow: 0 18px 45px rgba(36,59,105,.17), inset 0 1px 0 white; animation: float 5s ease-in-out infinite; }
.floating-chip > span:last-child { display: flex; flex-direction: column; }
.floating-chip b { font-size: .68rem; }
.floating-chip small { color: #9099a8; font-size: .52rem; }
.chip-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; background: var(--blue-light); color: var(--blue); }
.chip-icon.success { background: #e8f8f0; color: var(--green); }
.chip-icon svg { width: 17px; }
.chip-approved { top: 15px; left: 46%; }
.chip-reminder { bottom: 46px; right: 48px; animation-delay: -2s; }
.chip-ai { min-width: 225px; top: 56%; right: -30px; animation-delay: -1s; }
.chip-icon.ai-star { color: var(--blue); background: #edf3ff; }
.document-card { position: absolute; z-index: 7; left: 2%; bottom: 48px; width: 290px; height: 365px; padding: 28px 25px; border: 5px solid rgba(255,255,255,.72); border-radius: 23px; background: rgba(255,255,255,.94); box-shadow: 0 30px 70px rgba(18,65,136,.25), inset 0 1px 0 white; transform: perspective(1000px) rotateY(7deg) rotateZ(1deg); backdrop-filter: blur(14px); }
.document-dots { display: flex; gap: 5px; margin: -9px 0 18px; }
.document-dots i { width: 7px; height: 7px; border-radius: 50%; background: #ff6464; }
.document-dots i:nth-child(2) { background: #ffbf3f; }
.document-dots i:nth-child(3) { background: #34c875; }
.document-card > strong { display: block; margin-bottom: 15px; color: #10244b; font-size: .94rem; }
.document-toolbar { display: flex; align-items: center; gap: 15px; margin: 0 -9px 21px; padding: 8px 10px; border-radius: 8px; background: #f2f6fb; color: #415579; font-size: .57rem; }
.document-card > small { display: block; margin: 14px 0 8px; color: #263b60; font-size: .56rem; font-weight: 700; }
.doc-line { display: block; width: 89%; height: 5px; margin-bottom: 7px; border-radius: 9px; background: #d9e1ec; }
.doc-line.long { width: 100%; }
.doc-line.short { width: 64%; }
.signature { position: absolute; left: 26px; right: 26px; bottom: 20px; padding-top: 9px; border-top: 1px solid #cad5e4; color: #3c67b9; font-family: cursive; font-size: .66rem; }
.approval-strip { position: absolute; z-index: 6; right: 1%; bottom: 83px; width: 360px; padding: 17px 19px 13px; border: 4px solid rgba(255,255,255,.7); border-radius: 18px; background: rgba(255,255,255,.9); box-shadow: 0 24px 60px rgba(18,65,136,.2), inset 0 1px 0 white; backdrop-filter: blur(16px); }
.approval-strip > strong { display: block; margin-bottom: 11px; color: #17315e; font-size: .66rem; }
.approval-people { display: flex; align-items: center; justify-content: space-between; }
.approval-people span, .approval-people b { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; color: white; background: #4b8df7; font-size: .48rem; font-weight: 600; }
.approval-people b { background: #18a657; font-size: .78rem; }
.approval-people i { color: #9cb1cf; font-size: .68rem; font-style: normal; }
.approval-labels { display: flex; justify-content: space-between; margin-top: 6px; color: #8090a8; font-size: .44rem; }
.approval-labels small:last-child { color: #138a49; font-weight: 700; }
.visual-caption { position: absolute; bottom: -1px; display: flex; align-items: center; gap: 7px; color: #6d7d93; font-size: .66rem; }
.visual-caption span:first-child { width: 5px; height: 5px; background: #aab2c0; border-radius: 50%; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }

.role-strip { padding: 22px 0; border-block: 1px solid var(--line); background: white; }
.role-strip-inner { display: flex; align-items: center; justify-content: center; gap: 34px; color: #8b94a3; font-size: .82rem; }
.role-strip-inner > span { font-weight: 600; color: #5b6472; }
.role-list { display: flex; align-items: center; gap: 22px; }
.role-list span { color: #283142; font-weight: 600; }
.role-list i { width: 4px; height: 4px; background: #cdd3dd; border-radius: 50%; }

.section-heading { margin-bottom: 52px; }
.section-heading.centered { max-width: 760px; margin-inline: auto; text-align: center; }
.section-heading h2, .teams-copy h2, .control-copy h2, .ai-copy h2, .demo-copy h2 { margin: 12px 0 16px; font-size: clamp(2.25rem,4vw,3.45rem); line-height: 1.12; letter-spacing: -.045em; }
html[lang="ka"] .section-heading h2, html[lang="ka"] .teams-copy h2, html[lang="ka"] .control-copy h2, html[lang="ka"] .ai-copy h2, html[lang="ka"] .demo-copy h2 { letter-spacing: -.035em; line-height: 1.25; }
.section-heading p, .teams-copy > p, .control-copy > p { color: var(--muted); max-width: 660px; margin: 0; }
.section-heading.centered p { margin-inline: auto; }
.section-heading.split { display: grid; grid-template-columns: 1.25fr .75fr; gap: 70px; align-items: end; }
.section-heading.split p { padding-bottom: 8px; }

.problem-section { background: white; }
.problem-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.problem-card { --pain:#e05263; --pain-soft:#fff0f2; position: relative; min-height: 355px; padding: 21px; border: 1px solid #e1e6ef; border-radius: 21px; background: linear-gradient(150deg,#fff 50%,var(--pain-soft)); overflow: hidden; transition: transform .25s, box-shadow .25s, border-color .25s; }
.problem-card:hover { transform: translateY(-6px); border-color: rgba(22,87,244,.24); box-shadow: 0 20px 50px rgba(36,54,93,.09); }
.problem-version { --pain:#7a5bea; --pain-soft:#f3f0ff; }.problem-deadline { --pain:#e28a25; --pain-soft:#fff5e7; }.problem-control { --pain:#415779; --pain-soft:#eff3f8; }
.problem-number { position: absolute; top: 18px; right: 20px; color: color-mix(in srgb,var(--pain) 20%,white); font-weight: 800; font-size: .7rem; }
.icon-box, .feature-icon { width: 46px; height: 46px; display: grid; place-items: center; color: var(--pain,var(--blue)); background: var(--pain-soft,var(--blue-light)); border:1px solid color-mix(in srgb,var(--pain,var(--blue)) 10%,white); border-radius: 13px; }
.icon-box svg, .feature-icon svg { width: 23px; }
.problem-card h3 { margin: 22px 0 7px; font-size: 1rem; }
.problem-card .problem-copy > p { max-width:470px;margin: 0; color: var(--muted); font-size: .69rem; line-height: 1.55; }
.pain-proof { position:absolute;left:13px;right:13px;bottom:13px;min-height:122px;padding:10px;border:1px solid color-mix(in srgb,var(--pain) 14%,white);border-radius:13px;background:rgba(255,255,255,.92);box-shadow:0 10px 24px rgba(35,52,87,.07); }
.thread-head,.thread-head > span,.control-head,.control-head > span { display:flex;align-items:center;justify-content:space-between;gap:10px; }.thread-head > span,.control-head > span { justify-content:flex-start; }.thread-head i,.control-head i { width:34px;height:34px;display:grid;place-items:center;color:white;background:var(--pain);border-radius:10px;font-size:.46rem;font-style:normal;font-weight:800; }.thread-head p,.control-head p { display:flex;flex-direction:column;margin:0;line-height:1.35; }.thread-head b,.control-head b { color:#344158;font-size:.56rem; }.thread-head small,.control-head small { color:#8d98a9;font-size:.43rem; }.thread-head > em { width:29px;height:29px;display:grid;place-items:center;color:var(--pain);background:var(--pain-soft);border-radius:50%;font-size:.52rem;font-style:normal;font-weight:800; }.thread-lines { display:grid;gap:7px;margin:16px 4px 14px 44px; }.thread-lines span { height:6px;background:#edf0f5;border-radius:8px; }.thread-lines span:nth-child(2) { width:83%; }.thread-lines span:nth-child(3) { width:61%; }.proof-footer { display:flex;align-items:center;justify-content:space-between;padding-top:11px;border-top:1px solid #edf0f4; }.proof-footer > span { color:#6c7788;font-size:.5rem; }.proof-footer > span b { color:var(--pain);font-size:.7rem; }.proof-footer > em,.control-head > em { padding:5px 8px;color:var(--pain);background:var(--pain-soft);border-radius:999px;font-size:.43rem;font-style:normal;font-weight:700; }
.version-proof { display:grid;gap:6px;padding-bottom:42px; }.version-proof > div { display:flex;align-items:center;gap:9px;padding:8px 10px;background:#f7f8fb;border:1px solid #edf0f5;border-radius:9px; }.version-proof > div > i { width:29px;height:31px;display:grid;place-items:center;flex:0 0 29px;color:var(--pain);background:var(--pain-soft);border-radius:6px;font-size:.34rem;font-style:normal;font-weight:800; }.version-proof > div > span { min-width:0;display:flex;flex-direction:column;line-height:1.35; }.version-proof > div b { overflow:hidden;color:#465269;font-size:.49rem;white-space:nowrap;text-overflow:ellipsis; }.version-proof > div small { color:#919ba9;font-size:.38rem; }.version-proof > div:nth-child(2) { margin-left:12px; }.version-proof > div:nth-child(3) { margin-left:24px; }.version-proof > em { position:absolute;right:15px;bottom:13px;padding:5px 8px;color:var(--pain);background:var(--pain-soft);border-radius:999px;font-size:.43rem;font-style:normal;font-weight:700; }
.deadline-proof { display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:stretch; }.overdue-date { display:flex;align-items:center;justify-content:center;gap:10px;color:white;background:linear-gradient(145deg,var(--pain),#f0a44e);border-radius:13px; }.overdue-date span { display:flex;flex-direction:column;align-items:center; }.overdue-date b { font-size:2rem;line-height:1; }.overdue-date small { max-width:65px;font-size:.42rem;text-align:center; }.overdue-date i { width:25px;height:25px;display:grid;place-items:center;background:rgba(255,255,255,.2);border-radius:50%;font-size:.6rem;font-style:normal;font-weight:800; }.deadline-details { display:flex;flex-direction:column;justify-content:center; }.deadline-details p { display:flex;flex-direction:column;margin:0;line-height:1.5; }.deadline-details b { color:#3c4759;font-size:.59rem; }.deadline-details small { color:#8f99a7;font-size:.43rem; }.deadline-details > span { align-self:flex-start;margin-top:10px;padding:5px 7px;color:#9b620c;background:#fff1d4;border-radius:999px;font-size:.41rem;font-weight:700; }.deadline-bar { grid-column:1/-1;height:6px;overflow:hidden;background:#f3e4d3;border-radius:8px; }.deadline-bar span { display:block;width:86%;height:100%;background:linear-gradient(90deg,#f5c276,var(--pain)); }
.control-proof { display:grid;gap:12px; }.approval-queue { display:grid;gap:6px; }.approval-queue > span { display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;padding:7px 9px;background:#f5f7fa;border-radius:9px; }.approval-queue i { width:28px;height:28px;display:grid;place-items:center;color:#415779;background:white;border:1px solid #dfe5ed;border-radius:8px;font-size:.36rem;font-style:normal;font-weight:800; }.approval-queue b { color:#49566b;font-size:.46rem; }.approval-queue em { color:#8a95a5;font-size:.42rem;font-style:normal; }
.problem-card .thread-head i,.problem-card .control-head i { width:28px;height:28px;border-radius:8px;font-size:.37rem; }.problem-card .thread-head b,.problem-card .control-head b { font-size:.44rem; }.problem-card .thread-head small,.problem-card .control-head small { font-size:.34rem; }.problem-card .thread-head > em { width:24px;height:24px;font-size:.4rem; }.problem-card .thread-lines { gap:5px;margin:9px 3px 8px 36px; }.problem-card .thread-lines span { height:4px; }.problem-card .proof-footer { padding-top:7px; }.problem-card .proof-footer > span { font-size:.4rem; }.problem-card .proof-footer > em,.problem-card .control-head > em { padding:4px 6px;font-size:.34rem; }
.problem-card .version-proof { gap:5px;padding-bottom:28px; }.problem-card .version-proof > div { gap:6px;padding:5px 6px; }.problem-card .version-proof > div > i { width:24px;height:25px;flex-basis:24px;font-size:.27rem; }.problem-card .version-proof > div b { font-size:.39rem; }.problem-card .version-proof > div small { font-size:.3rem; }.problem-card .version-proof > div:nth-child(2) { margin-left:7px; }.problem-card .version-proof > div:nth-child(3) { display:none; }.problem-card .version-proof > em { right:10px;bottom:8px;padding:4px 6px;font-size:.34rem; }
.problem-card .deadline-proof { grid-template-columns:76px 1fr;gap:8px; }.problem-card .overdue-date { gap:5px;border-radius:9px; }.problem-card .overdue-date b { font-size:1.35rem; }.problem-card .overdue-date small { font-size:.31rem; }.problem-card .overdue-date i { width:19px;height:19px;font-size:.42rem; }.problem-card .deadline-details b { font-size:.45rem; }.problem-card .deadline-details small { font-size:.32rem; }.problem-card .deadline-details > span { margin-top:6px;padding:3px 5px;font-size:.31rem; }.problem-card .deadline-bar { height:4px; }
.problem-card .control-proof { gap:7px; }.problem-card .approval-queue { gap:4px; }.problem-card .approval-queue > span { grid-template-columns:24px 1fr auto;gap:6px;padding:4px 6px; }.problem-card .approval-queue i { width:23px;height:23px;font-size:.29rem; }.problem-card .approval-queue b,.problem-card .approval-queue em { font-size:.34rem; }.problem-card .approval-queue > span:nth-child(3) { display:none; }

.lifecycle-section { background: linear-gradient(180deg,#f5f7fb 0%,#eef3fb 100%); overflow: hidden; }
.lifecycle-flow { position: relative; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 14px; align-items: stretch; }
.lifecycle-flow::before { content: ""; position: absolute; left: 8%; right: 8%; top: 43px; height: 3px; background: linear-gradient(90deg,#1761f5,#7658f6,#efa23f,#16a6cf,#20a66a); opacity: .24; }
.lifecycle-card { --stage:#1761f5; --stage-soft:#eaf1ff; position: relative; min-height: 350px; padding: 21px 18px 17px; background: rgba(255,255,255,.92); border: 1px solid rgba(21,42,84,.09); border-radius: 21px; box-shadow: 0 15px 40px rgba(25,50,96,.06); overflow: hidden; transition: transform .25s, border-color .25s, box-shadow .25s; }
.lifecycle-card::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--stage); }
.lifecycle-card:hover { transform: translateY(-7px); border-color: color-mix(in srgb,var(--stage) 35%,white); box-shadow: 0 22px 50px rgba(25,50,96,.11); }
.stage-collaborate { --stage:#7658f6; --stage-soft:#f0edff; }
.stage-approve { --stage:#e89426; --stage-soft:#fff3df; }
.stage-sign { --stage:#139dc4; --stage-soft:#e4f8fd; }
.stage-track { --stage:#1b9b61; --stage-soft:#e8f8f0; }
.stage-top { display: flex; align-items: center; justify-content: space-between; position: relative; z-index: 1; }
.flow-icon { width: 45px; height: 45px; display: grid; place-items: center; color: var(--stage); border: 1px solid color-mix(in srgb,var(--stage) 14%,white); border-radius: 14px; background: var(--stage-soft); box-shadow: 0 7px 18px color-mix(in srgb,var(--stage) 12%,transparent); }
.flow-icon svg { width: 21px; }
.stage-top small { width: 28px; height: 28px; display: grid; place-items: center; color: var(--stage); background: var(--stage-soft); border-radius: 9px; font-size: .61rem; font-weight: 800; }
.lifecycle-card h3 { margin: 23px 0 7px; font-size: 1.03rem; }
.lifecycle-card > p { min-height: 65px; margin: 0; color: var(--muted); font-size: .72rem; line-height: 1.55; }
.stage-proof { position: absolute; left: 14px; right: 14px; bottom: 16px; min-height: 64px; display: flex; align-items: center; gap: 9px; padding: 10px; border: 1px solid color-mix(in srgb,var(--stage) 13%,white); background: linear-gradient(135deg,#fff,var(--stage-soft)); border-radius: 13px; box-shadow: 0 8px 22px rgba(24,46,89,.06); }
.stage-proof p { flex: 1; display: flex; flex-direction: column; margin: 0; line-height: 1.35; }
.stage-proof p b { font-size: .55rem; }
.stage-proof p small { color: #8a95a8; font-size: .47rem; }
.proof-file { width: 33px; height: 39px; display: grid; place-items: center; color: var(--stage); background: white; border: 1px solid color-mix(in srgb,var(--stage) 18%,white); border-radius: 7px; font-size: .44rem; font-weight: 800; }
.stage-proof > i { width: 19px; height: 19px; display: grid; place-items: center; color: white; background: var(--stage); border-radius: 50%; font-size: .53rem; font-style: normal; }
.mini-avatars { display: flex; padding-left: 8px; }
.mini-avatars i { width: 28px; height: 28px; display: grid; place-items: center; margin-left: -8px; color: white; border: 2px solid white; border-radius: 50%; background: var(--stage); font-size: .39rem; font-style: normal; font-weight: 700; }
.mini-avatars i:nth-child(2) { background:#9a82f8; }.mini-avatars i:nth-child(3) { background:#c8bdfc;color:#5b3ee0; }
.approval-proof { display: grid; gap: 5px; }
.approval-proof span { display: flex; align-items: center; justify-content: space-between; font-size: .52rem; font-weight: 600; }
.approval-proof b { width: 18px; height: 18px; display: grid; place-items: center; color: white; background: #2bb97b; border-radius: 50%; font-size: .45rem; }
.approval-proof b.pending { width:auto; padding:0 6px; color:#a36b08; background:#fff0ce; border-radius:999px; }
.signature-proof { min-height:86px;padding:8px; }
.signature-pair { min-width:0;flex:1;display:grid;gap:3px; }.signature-pair > span { display:flex;align-items:flex-end;gap:5px;padding-bottom:3px;border-bottom:1px solid rgba(19,157,196,.2); }.signature-pair i { width:78px;color:#124b68;font-family:"Segoe Script","Brush Script MT",cursive;font-size:.52rem;font-style:italic;line-height:1;transform:skew(-8deg) rotate(-2deg);white-space:nowrap; }.signature-pair span:nth-child(2) i { transform:skew(-13deg) rotate(2deg);font-size:.46rem; }.signature-pair small { overflow:hidden;color:#7790a0;font-size:.32rem;white-space:nowrap;text-overflow:ellipsis; }.sign-complete { align-self:flex-start;padding:4px 6px;color:#087795;background:#d9f3fa;border-radius:999px;font-size:.38rem; }
.renewal-proof > span { width: 39px; display: flex; flex-direction: column; align-items: center; padding: 5px; color: white; background: var(--stage); border-radius: 9px; font-size: .4rem; font-weight: 700; }
.renewal-proof > span b { font-size: .86rem; line-height: 1.1; }
.track-proof { min-height:86px;display:grid;gap:6px;padding:8px; }.track-primary { display:flex;align-items:center;gap:8px; }.track-primary > span { width:37px;display:flex;flex-direction:column;align-items:center;padding:4px;color:white;background:var(--stage);border-radius:8px;font-size:.36rem;font-weight:700; }.track-primary > span b { font-size:.78rem;line-height:1.1; }.track-primary p { flex:1;display:flex;flex-direction:column;margin:0;line-height:1.3; }.track-primary p b { font-size:.5rem; }.track-primary p small { color:#779486;font-size:.4rem; }.track-extra { display:flex;align-items:center;justify-content:space-between;padding-top:5px;border-top:1px solid rgba(27,155,97,.15); }.track-extra span { color:#466458;font-size:.39rem; }.track-extra span b { color:var(--stage);font-size:.52rem; }.track-extra i { font-style:normal; }.track-extra em { padding:3px 5px;color:#9b650e;background:#fff0cf;border-radius:999px;font-size:.34rem;font-style:normal; }

.features-section { background: white; }
.bento-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.bento-card { min-height: 330px; position: relative; padding: 27px; border: 1px solid var(--line); border-radius: 24px; background: #fbfcfe; overflow: hidden; transition: transform .25s, box-shadow .25s; }
.bento-card:hover { transform: translateY(-4px); box-shadow: 0 20px 55px rgba(38,60,103,.09); }
.bento-wide { grid-column: span 2; }
.bento-copy { position: relative; z-index: 2; max-width: 360px; }
.bento-copy h3 { margin: 20px 0 8px; font-size: 1.12rem; }
.bento-copy p { margin: 0; color: var(--muted); font-size: .82rem; }
.mini-repository { position: absolute; right: 24px; bottom: 24px; width: 45%; padding: 14px; border: 1px solid #e1e6ef; border-radius: 14px; background: white; box-shadow: 0 15px 35px rgba(31,52,93,.08); }
.mini-search { height: 30px; display: flex; align-items: center; gap: 7px; padding: 0 10px; color: #a0a8b6; background: #f5f7fa; border-radius: 7px; font-size: .56rem; }
.mini-file { display: flex; align-items: center; gap: 8px; padding: 11px 0; border-bottom: 1px solid #edf0f4; }
.mini-file:last-child { border: 0; }
.file-type { width: 27px; height: 30px; display: grid; place-items: center; color: #e45b5b; background: #fff0f0; border-radius: 5px; font-size: .42rem; font-weight: 700; }
.file-type.blue { color: var(--blue); background: var(--blue-light); }
.mini-file p { flex: 1; display: flex; flex-direction: column; margin: 0; line-height: 1.35; }
.mini-file b { font-size: .5rem; }
.mini-file small { color: #a0a8b5; font-size: .43rem; }
.file-status { padding: 3px 6px; color: var(--green); background: #eaf8f1; border-radius: 999px; font-size: .42rem; font-style: normal; }
.file-status.review { color: #9b6a00; background: #fff5db; }
.ai-card { background: linear-gradient(150deg,#0f47d2,#1657f4 55%,#2592f2); color: white; }
.ai-card .feature-icon { color: white; background: rgba(255,255,255,.14); }
.ai-card .bento-copy p { color: rgba(255,255,255,.72); }
.ai-spark { position: absolute; right: -25px; bottom: -25px; width: 180px; height: 180px; }
.ai-spark span { position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; }
.ai-spark span:nth-child(2) { inset: 28px; }
.ai-spark span:nth-child(3) { inset: 57px; background: rgba(255,255,255,.1); box-shadow: 0 0 60px rgba(255,255,255,.2); }
.permission-list { position: absolute; left: 25px; right: 25px; bottom: 25px; display: grid; gap: 8px; }
.permission-list span { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 8px; padding: 10px; border: 1px solid #e5e9f0; background: white; border-radius: 10px; font-size: .55rem; }
.permission-list i { width: 25px; height: 25px; display: grid; place-items: center; background: var(--blue-light); color: var(--blue); border-radius: 7px; font-size: .46rem; font-style: normal; font-weight: 700; }
.permission-list b { color: var(--blue); font-size: .47rem; }
.template-stack { position: absolute; right: -5px; bottom: -15px; width: 175px; height: 160px; }
.template-stack span { position: absolute; width: 115px; height: 145px; padding: 25px 16px; border: 1px solid #dfe4ec; background: white; border-radius: 9px; box-shadow: 0 10px 25px rgba(31,49,84,.08); }
.template-stack span:nth-child(1) { left: 0; top: 20px; transform: rotate(-11deg); }
.template-stack span:nth-child(2) { right: 0; top: 13px; transform: rotate(8deg); }
.template-stack span:nth-child(3) { left: 31px; top: 0; }
.template-stack i { display: block; height: 5px; background: #e4e8ef; margin-bottom: 10px; border-radius: 9px; }
.template-stack i:first-child { width: 40%; background: #9eb8fb; }
.analytics-card { background: linear-gradient(135deg,#f8faff,#eef3ff); }
.mini-chart { position: absolute; right: 28px; bottom: 24px; width: 50%; height: 170px; }
.mini-chart svg { width: 100%; height: 140px; overflow: visible; }
.mini-chart .area { fill: url(#chartFill); stroke: none; }
.mini-chart .line { fill: none; stroke: var(--blue); stroke-width: 3; }
.mini-chart circle { fill: white; stroke: var(--blue); stroke-width: 3; }
.chart-labels { display: flex; justify-content: space-between; color: #a4adbb; font-size: .44rem; }
.date-card { position: absolute; left: 25px; right: 25px; bottom: 25px; display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 10px; padding: 13px; background: white; border: 1px solid #e5e9f0; border-radius: 12px; }
.date-card b { font-size: 1.4rem; color: var(--blue); line-height: 1; }
.date-card > span { color: #8993a3; font-size: .55rem; }
.date-card p { display: flex; flex-direction: column; padding-left: 10px; margin: 0; border-left: 1px solid #e7ebf2; font-size: .58rem; font-weight: 600; }
.date-card small { color: #98a1af; font-size: .48rem; font-weight: 400; }
.audit-dots { position: absolute; left: 35px; right: 35px; bottom: 70px; display: flex; align-items: center; }
.audit-dots span { width: 13px; height: 13px; background: white; border: 3px solid var(--blue); border-radius: 50%; box-shadow: 0 0 0 5px #dfe8ff; }
.audit-dots i { height: 2px; flex: 1; background: #cfd9f2; }

/* Product stories — real contract-work moments, not generic feature tiles */
.legacy-features { display: none; }
.product-stories { display: grid; gap: 26px; }
.product-story { min-height: 570px; display: grid; grid-template-columns: .72fr 1.28fr; gap: 54px; align-items: center; padding: 52px; border: 1px solid #dfe6f1; border-radius: 30px; background: linear-gradient(135deg,#fbfcff,#f3f7ff); box-shadow: 0 20px 55px rgba(31,56,103,.07); overflow: hidden; }
.product-story:nth-child(2) { background: linear-gradient(135deg,#f8f6ff,#f4f7ff); }
.product-story:nth-child(3) { background: linear-gradient(135deg,#f7fbff,#edf7fb); }
.story-reverse { grid-template-columns: 1.25fr .75fr; }
.story-reverse .story-copy { order: 2; }
.story-index { display: inline-flex; margin-bottom: 18px; color: var(--blue); font-size: .66rem; font-weight: 800; letter-spacing: .12em; }
.story-copy h3 { margin: 0 0 13px; font-size: clamp(1.7rem,3vw,2.35rem); line-height: 1.15; letter-spacing: -.04em; }
.story-copy > p { margin: 0; color: var(--muted); font-size: .85rem; line-height: 1.7; }
.story-copy ul { display: grid; gap: 11px; padding: 0; margin: 26px 0 0; list-style: none; }
.story-copy li { position: relative; padding-left: 27px; color: #29364d; font-size: .75rem; line-height: 1.55; }
.story-copy li::before { content: "✓"; position: absolute; left: 0; top: 1px; width: 18px; height: 18px; display: grid; place-items: center; color: var(--blue); background: #e7efff; border-radius: 50%; font-size: .6rem; font-weight: 800; }
.product-ui { min-width: 0; position: relative; padding: 20px; border: 1px solid #d9e2f2; border-radius: 22px; background: rgba(255,255,255,.94); box-shadow: 0 24px 55px rgba(27,51,99,.13); }
.ui-toolbar { display: flex; align-items: center; gap: 10px; }
.ui-search { height: 40px; flex: 1; display: flex; align-items: center; gap: 8px; padding: 0 12px; color: #9aa5b5; background: #f4f6fa; border-radius: 9px; font-size: .57rem; }
.ui-search svg { width: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.ui-toolbar button { height: 40px; padding: 0 14px; border: 0; border-radius: 9px; color: white; background: var(--blue); font: inherit; font-size: .57rem; font-weight: 600; box-shadow: 0 8px 18px rgba(22,87,244,.22); }
.repo-filters { display: flex; gap: 18px; padding: 18px 2px 9px; color: #8c96a7; border-bottom: 1px solid #e7ebf1; font-size: .5rem; white-space: nowrap; }
.repo-filters span { padding-bottom: 8px; }
.repo-filters .active { color: var(--blue); border-bottom: 2px solid var(--blue); font-weight: 700; }
.repo-row { min-width: 520px; display: grid; grid-template-columns: 2.2fr 1fr .8fr .95fr; gap: 10px; align-items: center; min-height: 57px; padding: 0 5px; border-bottom: 1px solid #eef1f5; color: #667187; font-size: .49rem; }
.repo-table { overflow-x: auto; }
.repo-row > span:first-child { display: flex; align-items: center; gap: 8px; color: #263249; }
.repo-head { min-height: 34px; color: #9aa3b2; font-size: .44rem; font-weight: 600; }
.repo-head > span:first-child { color: #9aa3b2; }
.doc-badge { width: 28px; height: 31px; display: grid; place-items: center; flex: 0 0 28px; color: #df4b58; background: #fff0f1; border-radius: 6px; font-size: .39rem; font-style: normal; font-weight: 800; }
.doc-badge.blue { color:#1460dd;background:#e9f1ff; }.doc-badge.violet { color:#6e4bdd;background:#f1edff; }
.repo-row em { display: inline-flex; padding: 4px 7px; border-radius: 999px; font-style: normal; font-weight: 600; }
.status-active { color:#158052;background:#e6f7ef; }.status-review { color:#a26b06;background:#fff2d6; }.status-draft { color:#51617b;background:#edf1f7; }
.repo-row.selected { margin-top:3px;background:#f7faff;border-radius:8px;box-shadow:inset 3px 0 0 var(--blue); }
.linked-contracts { position:relative;margin-top:13px;padding:10px;border:1px solid #dce5f4;border-radius:14px;background:linear-gradient(145deg,#f8fbff,#eff5ff);box-shadow:inset 3px 0 0 var(--blue); }
.linked-contracts::before { content:"";position:absolute;left:31px;top:-14px;width:2px;height:14px;background:#9db9f8; }
.linked-select { width:100%;display:flex;align-items:center;justify-content:space-between;padding:9px 11px;border:1px solid #d7e1f0;border-radius:10px;color:#243552;background:white;font:inherit;text-align:left;box-shadow:0 5px 14px rgba(28,54,102,.05); }
.linked-select span { display:flex;flex-direction:column; }.linked-select small { color:var(--blue);font-size:.36rem;font-weight:800;letter-spacing:.1em; }.linked-select b { margin-top:2px;font-size:.55rem; }.linked-select em { width:25px;height:25px;display:grid;place-items:center;color:var(--blue);background:#eaf1ff;border-radius:7px;font-size:.75rem;font-style:normal; }
.linked-record-list { display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:8px; }.linked-record { min-width:0;display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center;padding:8px;background:white;border:1px solid #e1e7f0;border-radius:9px; }.linked-record > i,.eco-item > i { width:27px;height:27px;display:grid;place-items:center;border-radius:7px;font-size:.4rem;font-style:normal;font-weight:800; }.eco-blue { color:#1761f5;background:#e7efff; }.eco-violet { color:#7554e6;background:#f0ecff; }.eco-cyan { color:#0c91b7;background:#e2f7fc; }.eco-amber { color:#b06c0a;background:#fff1d8; }.linked-record p { min-width:0;display:flex;flex-direction:column;margin:0;line-height:1.2; }.linked-record small { color:#8b96a7;font-size:.33rem; }.linked-record b { overflow:hidden;color:#35445c;font-size:.43rem;white-space:nowrap;text-overflow:ellipsis; }.linked-record > em { padding:3px 5px;border-radius:999px;font-size:.32rem;font-style:normal;font-weight:700;white-space:nowrap; }.link-signed,.link-active,.link-verified { color:#178158;background:#e7f7ef; }.link-due { color:#a66a06;background:#fff1d5; }

.workflow-ui { padding: 0; overflow: hidden; }
.workflow-titlebar { min-height: 59px; display: flex; align-items: center; justify-content: space-between; padding: 0 19px; border-bottom: 1px solid #e6eaf1; background: white; }
.workflow-titlebar span { display:flex;align-items:center;gap:9px;font-size:.62rem; }.workflow-titlebar span i { width:9px;height:9px;border-radius:50%;background:#1eb475;box-shadow:0 0 0 4px #e0f6ed; }
.workflow-titlebar em { padding:5px 8px;color:#158052;background:#e6f7ef;border-radius:999px;font-size:.48rem;font-style:normal;font-weight:700; }
.workflow-canvas { min-height: 525px; display: flex; flex-direction: column; align-items: center; padding: 22px; background-color:#f7f9fd; background-image:radial-gradient(#dce4f2 1px,transparent 1px); background-size:18px 18px; }
.workflow-node { width: 210px; display: flex; flex-direction: column; padding: 12px 14px; border: 1px solid #dbe2ee; border-radius: 11px; background: white; box-shadow: 0 8px 20px rgba(34,53,90,.07); }
.workflow-node small,.policy-condition small,.policy-route > small { color:#9aa4b4;font-size:.4rem;font-weight:800;letter-spacing:.09em; }.workflow-node b { margin-top:3px;font-size:.57rem; }
.workflow-node.start { border-left:3px solid var(--blue); }.workflow-node.condition { width:250px;border-left:3px solid #7658f6; }
.workflow-node.condition > span { display:flex;justify-content:space-between;margin-top:9px; }.workflow-node.condition i { padding:3px 8px;color:#65527e;background:#f1edff;border-radius:999px;font-size:.42rem;font-style:normal; }
.workflow-line { width:2px;height:18px;background:#c8d3e6; }
.workflow-branches { width:68%;height:22px;border-top:2px solid #c8d3e6;border-left:2px solid #c8d3e6;border-right:2px solid #c8d3e6; }
.workflow-approvals { width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:9px; }
.workflow-approvals > div { min-width:0;display:flex;align-items:center;gap:7px;padding:9px;border:1px solid #dee5ef;border-radius:10px;background:white;box-shadow:0 7px 15px rgba(34,53,90,.05); }
.workflow-approvals > div > i { width:27px;height:27px;display:grid;place-items:center;flex:0 0 27px;color:var(--blue);background:#e9f0ff;border-radius:8px;font-size:.4rem;font-style:normal;font-weight:700; }
.workflow-approvals p { min-width:0;flex:1;display:flex;flex-direction:column;margin:0; }.workflow-approvals p b { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.45rem; }.workflow-approvals p small { color:#98a2b2;font-size:.38rem; }.workflow-approvals em { width:16px;height:16px;display:grid;place-items:center;color:#1b9b61;background:#e6f7ef;border-radius:50%;font-size:.4rem;font-style:normal; }
.signature-connector { height:16px;background:#89b5a4; }
.workflow-signing { width:88%;padding:12px;border:1px solid #cfe7dc;border-radius:13px;background:linear-gradient(145deg,#fff,#f1fbf7);box-shadow:0 10px 25px rgba(29,94,68,.08); }
.signing-head { display:flex;align-items:center;justify-content:space-between;padding-bottom:9px;border-bottom:1px solid #e2eee9; }.signing-head > span { display:flex;flex-direction:column; }.signing-head small { color:#1a8a5b;font-size:.35rem;font-weight:800;letter-spacing:.09em; }.signing-head b { font-size:.49rem; }.signing-head > em { padding:4px 7px;color:#168256;background:#e3f6ed;border-radius:999px;font-size:.37rem;font-style:normal;font-weight:700; }
.signer-cards { display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:8px; }.signer-cards > span { min-width:0;display:flex;align-items:center;gap:6px;padding:7px;background:white;border:1px solid #e2ebe7;border-radius:8px; }.signer-cards > span > i { width:25px;height:25px;display:grid;place-items:center;flex:0 0 25px;color:#168256;background:#e5f7ef;border-radius:7px;font-size:.34rem;font-style:normal;font-weight:800; }.signer-cards p { min-width:0;flex:1;display:flex;flex-direction:column;margin:0; }.signer-cards b { overflow:hidden;font-size:.39rem;white-space:nowrap;text-overflow:ellipsis; }.signer-cards small { color:#8b9892;font-size:.33rem; }.signer-cards > span > em { width:16px;height:16px;display:grid;place-items:center;color:white;background:#20a86d;border-radius:50%;font-size:.35rem;font-style:normal; }
.executed-state { display:flex;align-items:center;gap:8px;margin-top:8px;padding:7px 9px;color:white;background:linear-gradient(110deg,#168457,#22aa71);border-radius:9px; }.executed-state > span { width:24px;height:24px;display:grid;place-items:center;background:rgba(255,255,255,.18);border-radius:50%;font-size:.55rem;font-weight:800; }.executed-state p { display:flex;flex-direction:column;margin:0; }.executed-state b { font-size:.44rem; }.executed-state small { color:rgba(255,255,255,.73);font-size:.34rem; }

.intelligence-ui { min-height: 485px; display: grid; grid-template-columns: 1.08fr .92fr; gap: 12px; background: linear-gradient(145deg,#f8fafe,#eef4fb); }
.contract-paper { padding: 19px; border: 1px solid #e0e5ed; border-radius: 14px; background: white; box-shadow: 0 10px 25px rgba(28,50,89,.06); }
.paper-head { display:flex;align-items:center;justify-content:space-between;padding-bottom:13px;border-bottom:1px solid #e9edf2; }.paper-head > span { display:flex;align-items:center;gap:8px; }.paper-head span > i { width:27px;height:31px;background:linear-gradient(#e9f1ff,#f5f8ff);border-radius:5px; }.paper-head p { display:flex;flex-direction:column;margin:0; }.paper-head b { font-size:.52rem; }.paper-head small { color:#9ba5b4;font-size:.42rem; }.paper-head em { color:var(--blue);font-size:.48rem;font-style:normal;font-weight:700; }
.contract-paper h4 { margin:20px 0 11px;font-size:.65rem; }.contract-paper > p { color:#667187;font-family:Georgia,serif;font-size:.56rem;line-height:1.8; }.contract-paper mark { padding:2px;color:#8b5300;background:#ffe9b7;border-radius:3px; }
.risk-clause { display:flex;gap:8px;margin-top:25px;padding:10px;border:1px solid #f2cf8c;background:#fff8e9;border-radius:9px; }.risk-clause > span { width:19px;height:19px;display:grid;place-items:center;flex:0 0 19px;color:white;background:#e99a22;border-radius:50%;font-size:.5rem;font-weight:800; }.risk-clause p { display:flex;flex-direction:column;margin:0; }.risk-clause b { color:#7f5511;font-size:.47rem; }.risk-clause small { color:#a37c3d;font-size:.4rem; }
.extracted-clause { display:flex;gap:8px;margin-top:9px;padding:9px;border:1px solid #cfe2f8;background:#f0f7ff;border-radius:9px; }.extracted-clause > span { width:19px;height:19px;display:grid;place-items:center;flex:0 0 19px;color:white;background:#3988df;border-radius:6px;font-size:.48rem;font-weight:800; }.extracted-clause p { display:flex;flex-direction:column;margin:0; }.extracted-clause b { color:#275f9e;font-size:.45rem; }.extracted-clause small { color:#6986a7;font-size:.37rem;line-height:1.35; }
.ai-review-card { align-self:center;padding:17px;border:1px solid #cbdafb;border-radius:14px;background:white;box-shadow:0 15px 35px rgba(22,87,244,.12); }
.ai-review-head { display:flex;align-items:center;gap:7px; }.ai-review-head svg { width:18px;color:var(--blue); }.ai-review-head b { flex:1;font-size:.56rem; }.ai-review-head i { padding:4px 6px;color:#7658f6;background:#f0edff;border-radius:999px;font-size:.38rem;font-style:normal; }
.ai-insight-stats { display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:14px 0 9px; }.ai-insight-stats span { display:flex;flex-direction:column;padding:8px;background:#f4f7fc;border-radius:8px; }.ai-insight-stats b { color:#162b50;font-size:.78rem;line-height:1; }.ai-insight-stats small { margin-top:3px;color:#8894a6;font-size:.34rem; }
.ai-finding { display:flex;gap:7px;padding:9px;border:1px solid #f0cf8f;background:#fff8e9;border-radius:9px; }.ai-finding > span { width:19px;height:19px;display:grid;place-items:center;flex:0 0 19px;color:white;background:#e99a22;border-radius:50%;font-size:.45rem;font-weight:800; }.ai-finding p { display:flex;flex-direction:column;margin:0; }.ai-finding b { color:#79500f;font-size:.43rem; }.ai-finding small { margin-top:2px;color:#8d7142;font-size:.36rem;line-height:1.35; }
.contract-brief { display:grid;gap:1px;margin-top:8px;overflow:hidden;border:1px solid #e1e7f0;border-radius:9px;background:#e8edf4; }.contract-brief > div { display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;background:#fff; }.contract-brief span { color:#778396;font-size:.36rem; }.contract-brief b { color:#34435a;font-size:.38rem; }.contract-brief .brief-risk { color:#d25b58; }
.ai-review-card button { width:100%;height:31px;margin-top:10px;border:0;border-radius:8px;color:white;background:var(--blue);font:inherit;font-size:.48rem;font-weight:600; }
.feature-mini-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:2px; }
.feature-mini-grid article { position:relative;min-height:320px;padding:25px;border:1px solid #e1e7f0;border-radius:20px;background:linear-gradient(155deg,#fff,#f9fbff);overflow:hidden;transition:.25s; }.feature-mini-grid article:hover { transform:translateY(-4px);border-color:#cad8f7;box-shadow:0 16px 35px rgba(29,52,95,.08); }
.feature-mini-grid article > span { width:42px;height:42px;display:grid;place-items:center;color:var(--blue);background:#eaf1ff;border-radius:12px; }.feature-mini-grid svg { width:20px; }.feature-mini-grid h3 { margin:30px 0 8px;font-size:.92rem; }.feature-mini-grid p { margin:0;color:var(--muted);font-size:.72rem;line-height:1.6; }
.mini-product { position:absolute;left:18px;right:18px;bottom:18px;min-height:78px;padding:10px;border:1px solid #dfe6f1;border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 10px 24px rgba(29,52,95,.07); }
.template-product { height:82px; }.template-product > i { position:absolute;width:70%;height:54px;left:15%;top:11px;border:1px solid #dfe6ef;border-radius:7px;background:#f8faff;transform:rotate(-4deg); }.template-product > i:nth-child(2) { transform:rotate(4deg); }.template-product > i:nth-child(3) { display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;transform:none;background:white;padding:8px;font-style:normal; }.template-product i b { width:32px;height:36px;display:grid;place-items:center;color:var(--blue);background:#eaf1ff;border-radius:7px;font-size:.4rem; }.template-product i small { color:#56647a;font-size:.4rem; }.template-product i em { width:18px;height:18px;display:grid;place-items:center;color:white;background:#20aa6c;border-radius:50%;font-size:.4rem;font-style:normal; }
.access-product { display:grid;gap:5px; }.access-product span { display:grid;grid-template-columns:28px 1fr auto;gap:7px;align-items:center;padding:5px;background:#f7f9fc;border-radius:7px; }.access-product i,.esign-product i { width:27px;height:27px;display:grid;place-items:center;color:var(--blue);background:#eaf1ff;border-radius:7px;font-size:.35rem;font-style:normal;font-weight:800; }.access-product b,.esign-product b { font-size:.4rem; }.access-product em { padding:3px 5px;color:#188055;background:#e7f7ef;border-radius:999px;font-size:.31rem;font-style:normal; }
.esign-product { display:grid;grid-template-columns:1fr 1fr;gap:5px; }.esign-product > span { display:grid;grid-template-columns:27px 1fr auto;gap:5px;align-items:center;padding:5px;background:#f7f9fc;border-radius:7px; }.esign-product > span > em { color:#18a168;font-size:.5rem;font-style:normal;font-weight:800; }.esign-product > small { grid-column:1/-1;padding-top:5px;color:#168256;border-top:1px solid #e4ebe8;font-size:.38rem;font-weight:700;text-align:center; }
.analytics-product { display:grid;grid-template-columns:1.25fr .75fr;gap:10px;align-items:end; }.analytics-product > div { height:58px;display:flex;align-items:flex-end;gap:5px;padding:5px 3px 0;border-bottom:1px solid #dce4ef; }.analytics-product > div span { flex:1;background:linear-gradient(#4a83f7,#1657f4);border-radius:4px 4px 0 0; }.analytics-product > p { display:flex;flex-direction:column;margin:0!important;line-height:1.25!important; }.analytics-product > p b { color:#1c3154;font-size:.85rem; }.analytics-product > p small { color:#8c97a8;font-size:.31rem; }.analytics-product > p em { margin-top:4px;color:#168256;font-size:.38rem;font-style:normal;font-weight:700; }
.reminder-product { display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center; }.reminder-product > span { width:42px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:white;background:#e58b25;border-radius:9px;font-size:.36rem;font-weight:700; }.reminder-product > span b { font-size:.9rem;line-height:1; }.reminder-product p { display:flex;flex-direction:column;margin:0!important;line-height:1.35!important; }.reminder-product p b { color:#3d4a5f;font-size:.43rem; }.reminder-product p small { color:#929dac;font-size:.35rem; }.reminder-product > em { padding:4px 6px;color:#9f640d;background:#fff1d6;border-radius:999px;font-size:.32rem;font-style:normal;font-weight:700; }
.audit-product { display:grid;gap:5px; }.audit-product > span { display:flex;align-items:center;gap:7px;padding:5px;background:#f7f9fc;border-radius:7px; }.audit-product > span > i { width:23px;height:23px;display:grid;place-items:center;color:#168256;background:#e5f7ef;border-radius:50%;font-size:.35rem;font-style:normal; }.audit-product p { display:flex;flex-direction:column;margin:0!important;line-height:1.25!important; }.audit-product b { color:#46536a;font-size:.39rem; }.audit-product small { color:#929dac;font-size:.32rem; }

.outcome-block { margin-top:4px;padding:34px;border:1px solid #dfe6f1;border-radius:25px;background:linear-gradient(145deg,#f9fbff,#f3f7ff); }
.outcome-heading { display:grid;grid-template-columns:1fr 1fr;gap:4px 50px;align-items:end;margin-bottom:23px; }.outcome-heading .section-kicker { grid-column:1/-1; }.outcome-heading h3 { margin:5px 0 0;font-size:clamp(1.65rem,2.7vw,2.35rem);line-height:1.15;letter-spacing:-.04em; }.outcome-heading > p { margin:0;color:var(--muted);font-size:.78rem;line-height:1.65; }
.outcome-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }.outcome-card { --outcome:#1761f5;--outcome-soft:#eaf1ff;display:grid;grid-template-columns:auto 1fr;gap:13px;min-height:205px;padding:20px;border:1px solid #dfe5ef;border-radius:17px;background:white;box-shadow:0 10px 28px rgba(29,52,95,.05); }.outcome-accountability { --outcome:#7358e8;--outcome-soft:#f0edff; }.outcome-ahead { --outcome:#159162;--outcome-soft:#e7f7ef; }.outcome-icon { width:42px;height:42px;display:grid;place-items:center;color:var(--outcome);background:var(--outcome-soft);border-radius:12px; }.outcome-icon svg { width:20px; }.outcome-card h4 { margin:4px 0 7px;font-size:.92rem;line-height:1.3; }.outcome-card p { margin:0;color:var(--muted);font-size:.67rem;line-height:1.55; }.outcome-tags { display:flex;flex-wrap:wrap;gap:5px;margin-top:16px; }.outcome-tags span { padding:5px 7px;color:var(--outcome);background:var(--outcome-soft);border-radius:999px;font-size:.37rem;font-weight:700; }

.teams-section { background: var(--surface); }
.teams-grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 80px; align-items: center; }
.team-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 30px; }
.team-tab { min-height: 40px; padding: 0 14px; border: 1px solid #dfe4ed; border-radius: 10px; background: white; color: #687282; font-size: .76rem; cursor: pointer; transition: .2s; }
.team-tab:hover, .team-tab.active { color: white; background: var(--blue); border-color: var(--blue); box-shadow: 0 8px 20px rgba(22,87,244,.18); }
.role-panel { min-height: 420px; padding: 44px; border: 1px solid rgba(22,87,244,.12); border-radius: 28px; background: white; box-shadow: 0 25px 65px rgba(34,55,97,.1); position: relative; overflow: hidden; }
.role-panel { transition: opacity .18s ease, transform .18s ease; }
.role-panel.switching { opacity: .45; transform: translateY(4px); }
.role-panel::after { content: ""; position: absolute; width: 240px; height: 240px; right: -100px; top: -100px; border-radius: 50%; background: rgba(22,87,244,.06); }
.role-panel-top { display: flex; align-items: center; justify-content: space-between; }
.role-panel-icon { width: 60px; height: 60px; display: grid; place-items: center; border-radius: 18px; background: var(--blue-light); color: var(--blue); }
.role-panel-icon svg { width: 30px; }
.role-badge { padding: 6px 10px; border-radius: 999px; color: var(--blue); background: var(--blue-light); font-size: .65rem; font-weight: 700; letter-spacing: .06em; }
.role-panel h3 { margin: 30px 0 12px; max-width: 480px; font-size: 1.8rem; line-height: 1.25; letter-spacing: -.03em; }
.role-panel > p { color: var(--muted); margin: 0; }
.role-panel ul { display: grid; gap: 12px; list-style: none; padding: 0; margin: 25px 0 0; }
.role-panel li { position: relative; padding-left: 28px; font-size: .86rem; }
.role-panel li::before { content: "✓"; position: absolute; left: 0; top: 1px; width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; background: #e7f8ef; color: var(--green); font-size: .67rem; font-weight: 700; }

.ai-section { background: #071c4f; color: white; overflow: hidden; }
.ai-section::before { content: ""; position: absolute; width: 650px; height: 650px; top: -200px; right: -100px; border-radius: 50%; background: radial-gradient(circle,rgba(37,146,242,.22),transparent 65%); }
.ai-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 85px; align-items: center; position: relative; z-index: 1; }
.dark-kicker { color: #8fafff; }
.dark-kicker svg { width: 18px; }
.ai-copy h2 { font-size: clamp(2.5rem,4.5vw,4rem); }
.ai-copy > p { color: #aab8d6; max-width: 540px; }
.check-list { display: grid; gap: 12px; list-style: none; padding: 0; margin: 28px 0 0; }
.check-list li { position: relative; padding-left: 30px; color: #dbe4f8; font-size: .9rem; }
.check-list li::before { content: "✓"; position: absolute; left: 0; width: 19px; height: 19px; display: grid; place-items: center; border-radius: 50%; background: rgba(116,159,255,.15); color: #8fb0ff; font-size: .68rem; }
.ai-demo { padding: 23px; border: 1px solid rgba(255,255,255,.12); border-radius: 25px; background: rgba(255,255,255,.075); backdrop-filter: blur(12px); box-shadow: 0 30px 80px rgba(0,7,31,.35); }
.ai-demo-head { display: flex; align-items: center; gap: 11px; padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.1); }
.ai-logo { width: 38px; height: 38px; display: grid; place-items: center; padding: 9px; border-radius: 11px; background: white; }
.ai-demo-head p { flex: 1; display: flex; flex-direction: column; margin: 0; }
.ai-demo-head b { font-size: .83rem; }
.ai-demo-head small { color: #8da2cd; font-size: .59rem; }
.online-dot { width: 8px; height: 8px; border-radius: 50%; background: #48d99b; box-shadow: 0 0 0 5px rgba(72,217,155,.1); }
.message { width: fit-content; max-width: 90%; margin-top: 19px; padding: 14px 16px; border-radius: 15px; font-size: .77rem; }
.user-message { margin-left: auto; background: var(--blue); border-bottom-right-radius: 4px; }
.ai-message { display: flex; gap: 10px; background: rgba(255,255,255,.1); border-bottom-left-radius: 4px; color: #e8edf8; }
.tiny-logo { flex: 0 0 26px; height: 26px; display: grid; place-items: center; padding: 6px; border-radius: 8px; background: white; }
.ai-message p { margin: 0; }
.answer-meta { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-top: 12px; margin-top: 12px; border-top: 1px solid rgba(255,255,255,.09); color: #8fa4cd; font-size: .58rem; }
.answer-meta button { border: 0; background: transparent; color: #9bb8ff; font-size: .58rem; cursor: default; }
.ai-input { display: flex; align-items: center; gap: 10px; margin-top: 22px; padding: 8px 8px 8px 15px; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; color: #8397c0; font-size: .66rem; }
.ai-input span { flex: 1; }
.ai-input button { width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 9px; background: var(--blue); color: white; }
.ai-input svg { width: 17px; }

.control-section { background: white; }
.control-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: center; }
.control-visual { position: relative; min-height: 500px; display: grid; place-items: center; }
.control-orbit { position: absolute; border: 1px dashed #c7d5f7; border-radius: 50%; animation: spin 26s linear infinite; }
.orbit-one { width: 390px; height: 390px; }
.orbit-two { width: 270px; height: 270px; animation-direction: reverse; animation-duration: 19s; }
.control-core { width: 120px; height: 120px; display: grid; place-items: center; padding: 31px; background: white; border: 1px solid #dce5fb; border-radius: 31px; box-shadow: 0 25px 60px rgba(22,87,244,.17); z-index: 2; }
.control-node { position: absolute; width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid #dce5f8; border-radius: 17px; background: white; color: var(--blue); box-shadow: 0 14px 35px rgba(30,55,105,.12); }
.control-node svg { width: 25px; }
.node-one { top: 42px; left: 50%; transform: translateX(-50%); }
.node-two { right: 24px; top: 48%; transform: translateY(-50%); }
.node-three { bottom: 42px; left: 50%; transform: translateX(-50%); }
.node-four { left: 24px; top: 48%; transform: translateY(-50%); }
@keyframes spin { to { transform: rotate(360deg); } }
.control-points { display: grid; gap: 18px; margin-top: 34px; }
.control-points > div { display: flex; gap: 14px; }
.control-points > div > span { flex: 0 0 43px; height: 43px; display: grid; place-items: center; border-radius: 13px; background: var(--blue-light); color: var(--blue); }
.control-points svg { width: 20px; }
.control-points p { display: flex; flex-direction: column; margin: 0; }
.control-points b { font-size: .91rem; }
.control-points small { color: var(--muted); font-size: .77rem; }

/* Control center product visual */
.control-grid { grid-template-columns: 1.08fr .92fr; gap: 72px; }
.control-visual { min-width: 0; min-height: auto; }
.control-console { width:100%;padding:18px;border:1px solid #d9e3f2;border-radius:24px;background:linear-gradient(145deg,#f7faff,#eef4fd);box-shadow:0 28px 65px rgba(27,53,102,.15); }
.console-head { display:flex;align-items:center;justify-content:space-between;padding:2px 3px 16px; }.console-head > span { display:flex;align-items:center;gap:9px; }.console-head img { width:30px;height:30px;padding:6px;background:white;border-radius:9px;box-shadow:0 5px 13px rgba(29,55,102,.1); }.console-head p { display:flex;flex-direction:column;margin:0; }.console-head b { font-size:.63rem; }.console-head small { color:#8c98aa;font-size:.43rem; }.console-head > em { display:flex;align-items:center;gap:6px;padding:5px 8px;color:#148052;background:#e5f7ee;border-radius:999px;font-size:.45rem;font-style:normal;font-weight:700; }.console-head > em i { width:6px;height:6px;border-radius:50%;background:#1fb978;box-shadow:0 0 0 3px rgba(31,185,120,.12); }
.console-kpis { display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:9px; }.console-kpis > span { min-width:0;display:grid;grid-template-columns:1fr auto;gap:3px 5px;padding:9px 10px;border:1px solid #dfe6f1;border-radius:10px;background:white;box-shadow:0 5px 14px rgba(29,53,96,.04); }.console-kpis small { grid-column:1/-1;overflow:hidden;color:#8895a7;font-size:.34rem;white-space:nowrap;text-overflow:ellipsis; }.console-kpis b { color:#1c3154;font-size:.72rem;line-height:1; }.console-kpis em { align-self:end;color:#168256;font-size:.31rem;font-style:normal;font-weight:700;white-space:nowrap; }.console-kpis .kpi-warn { color:#b16f0c; }.console-kpis em i { font-style:normal; }.console-kpis .kpi-neutral { color:#66758b; }
.console-tabs { display:flex;gap:5px;padding:4px;background:#e9eef7;border-radius:10px; }.console-tabs span { flex:1;padding:7px 5px;text-align:center;color:#7d899b;border-radius:7px;font-size:.47rem;font-weight:600; }.console-tabs .active { color:#193258;background:white;box-shadow:0 3px 8px rgba(40,58,90,.08); }
.policy-card { margin-top:12px;padding:14px;border:1px solid #dae2ef;border-radius:14px;background:white;box-shadow:0 9px 24px rgba(27,50,89,.06); }
.policy-title { display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid #edf0f4; }.policy-title > span { width:32px;height:32px;display:grid;place-items:center;color:var(--blue);background:#eaf1ff;border-radius:9px; }.policy-title svg { width:16px; }.policy-title p { flex:1;display:flex;flex-direction:column;margin:0; }.policy-title b { font-size:.54rem; }.policy-title small { color:#929dab;font-size:.41rem; }.policy-title > em { padding:4px 7px;color:#148052;background:#e5f7ee;border-radius:999px;font-size:.38rem;font-style:normal;font-weight:800; }
.policy-condition { display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-top:12px;padding:10px;background:#f6f8fc;border-radius:9px; }.policy-condition span { color:#667187;font-size:.46rem; }.policy-condition b { color:#193258;font-size:.5rem; }
.policy-route { margin-top:13px; }.policy-route > div { display:flex;align-items:center;margin-top:8px; }.policy-route > div > span:not(.route-line) { width:70px;display:flex;flex-direction:column;align-items:center;gap:4px; }.policy-route span > i { width:28px;height:28px;display:grid;place-items:center;color:var(--blue);background:#eaf1ff;border-radius:8px;font-size:.39rem;font-style:normal;font-weight:700; }.policy-route span > b { font-size:.43rem; }.policy-route span > em { width:15px;height:15px;display:grid;place-items:center;margin-top:-10px;margin-left:22px;color:white;background:#20aa6c;border:2px solid white;border-radius:50%;font-size:.35rem;font-style:normal; }.route-line { height:2px;flex:1;margin-top:-16px;background:linear-gradient(90deg,#a8c0f6,#7aa0f8); }
.console-bottom { display:grid;grid-template-columns:1.15fr .85fr;gap:10px;margin-top:10px; }.access-preview,.audit-preview { padding:12px;border:1px solid #dce4ef;border-radius:12px;background:white; }.access-preview > span { display:flex;flex-direction:column;margin-bottom:8px; }.access-preview > span b,.audit-preview > b { font-size:.48rem; }.access-preview > span small { color:#9ba4b2;font-size:.38rem; }.access-preview > div { display:flex;align-items:center;gap:7px;padding:7px 0;border-top:1px solid #edf0f4; }.access-preview > div > i { width:25px;height:25px;display:grid;place-items:center;color:#244c9c;background:#eaf1ff;border-radius:7px;font-size:.37rem;font-style:normal;font-weight:700; }.access-preview p { flex:1;display:flex;flex-direction:column;margin:0; }.access-preview p b { font-size:.42rem; }.access-preview p small { color:#9ba4b2;font-size:.35rem; }.access-preview div > em { padding:3px 5px;color:#187c53;background:#e7f7f0;border-radius:999px;font-size:.34rem;font-style:normal; }
.audit-preview { display:flex;flex-direction:column;gap:7px; }.audit-preview > b { margin-bottom:2px; }.audit-preview > span { display:flex;align-items:center;gap:7px;padding:7px;background:#f7f9fc;border-radius:8px; }.audit-preview > span > i { width:19px;height:19px;display:grid;place-items:center;color:#188457;background:#e5f7ef;border-radius:50%;font-size:.38rem;font-style:normal; }.audit-preview p { display:flex;flex-direction:column;margin:0; }.audit-preview p b { font-size:.39rem; }.audit-preview p small { color:#9ba4b2;font-size:.32rem; }

.how-section { background: var(--surface); }
.how-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.how-card { position: relative; min-height: 300px; padding: 32px; border: 1px solid #e2e7ef; border-radius: 24px; background: white; }
.how-card > span { position: absolute; top: 25px; right: 27px; color: #d8dee8; font-size: 1.7rem; font-weight: 700; }
.how-icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 18px; background: var(--blue-light); color: var(--blue); }
.how-icon svg { width: 27px; }
.how-card h3 { margin: 58px 0 10px; font-size: 1.17rem; }
.how-card p { margin: 0; color: var(--muted); font-size: .85rem; }

.team-section { background: white; }
.founders-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.founder-card { border: 1px solid var(--line); border-radius: 22px; overflow: hidden; background: white; transition: transform .25s, box-shadow .25s; }
.founder-card:hover { transform: translateY(-6px); box-shadow: 0 22px 50px rgba(35,53,90,.1); }
.founder-photo { aspect-ratio: 1 / 1.06; overflow: hidden; background: #f4f6fa; }
.founder-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform .4s; }
.founder-card:hover img { transform: scale(1.025); }
.founder-info { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 19px 18px; }
.founder-info h3 { margin: 0 0 2px; font-family: "Noto Sans Georgian", sans-serif; font-size: .88rem; }
html[lang="en"] .founder-info h3 { font-family: "Poppins", sans-serif; }
.founder-info p { margin: 0; color: var(--blue); font-size: .67rem; font-weight: 600; }
.founder-info a { width: 33px; height: 33px; display: grid; place-items: center; border-radius: 9px; color: #566175; background: #f3f5f8; transition: .2s; }
.founder-info a:hover { color: white; background: #0a66c2; }
.founder-info svg { width: 17px; }

.demo-section { padding: 80px 0; background: white; }
.demo-shell { display: grid; grid-template-columns: .9fr 1.1fr; gap: 68px; padding: 62px; border-radius: 34px; color: white; background: linear-gradient(135deg,#0737aa,#1657f4 55%,#258be8); box-shadow: 0 35px 80px rgba(16,61,177,.22); overflow: hidden; }
.demo-shell::before { content: ""; position: absolute; width: 370px; height: 370px; top: -180px; right: 26%; border: 1px solid rgba(255,255,255,.11); border-radius: 50%; }
.demo-copy, .demo-form { position: relative; z-index: 1; }
.light-kicker { color: #bdd0ff; }
.demo-copy h2 { font-size: clamp(2.2rem,4vw,3.2rem); }
.demo-copy > p { color: #d6e1ff; margin: 0 0 27px; }
.direct-contact { display: grid; margin-top: 30px; gap: 3px; color: #dbe5ff; font-size: .78rem; }
.direct-contact > span { color: #aebfe8; margin-bottom: 4px; font-size: .68rem; }
.direct-contact a:hover { color: white; }
.demo-form { padding: 29px; border-radius: 22px; background: white; color: var(--ink); box-shadow: 0 25px 55px rgba(0,29,113,.18); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.demo-form label { display: grid; gap: 6px; margin-bottom: 13px; font-size: .7rem; font-weight: 600; }
.demo-form input, .demo-form textarea { width: 100%; border: 1px solid #dfe4ec; border-radius: 10px; background: #fafbfc; color: var(--ink); padding: 11px 12px; outline: 0; font-size: .75rem; transition: border .2s, box-shadow .2s; }
.demo-form input { min-height: 43px; }
.demo-form textarea { resize: vertical; }
.demo-form input:focus, .demo-form textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(22,87,244,.1); background: white; }
.consent { display: flex !important; grid-template-columns: auto 1fr; align-items: center; gap: 8px !important; color: #778090; font-weight: 400 !important; }
.consent input { width: 16px; height: 16px; min-height: 0; accent-color: var(--blue); }
.form-submit { width: 100%; border: 0; margin-top: 4px; }
.form-note { margin:-2px 0 14px;color:#7d8796;font-size:.64rem;line-height:1.5; }

body.tour-open { overflow:hidden; }
.product-tour { position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:20px;visibility:hidden;opacity:0;transition:opacity .22s,visibility .22s; }.product-tour.open { visibility:visible;opacity:1; }.tour-backdrop { position:absolute;inset:0;border:0;background:rgba(5,17,44,.68);backdrop-filter:blur(8px);cursor:pointer; }.tour-dialog { position:relative;width:min(1080px,100%);max-height:calc(100vh - 40px);overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:27px;background:white;box-shadow:0 35px 100px rgba(2,15,47,.35);transform:translateY(16px) scale(.98);transition:transform .24s; }.product-tour.open .tour-dialog { transform:none; }
.tour-header { min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid #e5eaf2; }.tour-header > span { display:flex;align-items:center;gap:10px; }.tour-header img { width:37px;height:37px;padding:8px;background:#edf3ff;border-radius:11px; }.tour-header p { display:flex;flex-direction:column;margin:0; }.tour-header small { color:var(--blue);font-size:.49rem;font-weight:800;letter-spacing:.1em; }.tour-header b { font-size:.86rem; }.tour-close { width:38px;height:38px;border:0;border-radius:11px;color:#667288;background:#f1f4f8;font:inherit;font-size:1.35rem;cursor:pointer; }
.tour-body { display:grid;grid-template-columns:165px 1fr;min-height:510px; }.tour-steps { display:grid;align-content:start;gap:5px;padding:20px 13px;border-right:1px solid #e5eaf2;background:#f7f9fc; }.tour-steps button { display:flex;align-items:center;gap:9px;min-height:47px;padding:0 10px;border:0;border-radius:10px;color:#718097;background:transparent;font:inherit;font-size:.66rem;text-align:left;cursor:pointer; }.tour-steps button i { width:27px;height:27px;display:grid;place-items:center;background:#e9edf4;border-radius:8px;font-size:.43rem;font-style:normal;font-weight:800; }.tour-steps button.active { color:#17418f;background:white;box-shadow:0 6px 16px rgba(31,56,104,.08);font-weight:700; }.tour-steps button.active i { color:white;background:var(--blue); }
.tour-slides { min-width:0;position:relative;padding:30px;overflow:hidden; }.tour-slide { display:none;grid-template-columns:.73fr 1.27fr;gap:30px;align-items:center;min-height:450px; }.tour-slide.active { display:grid;animation:tourIn .28s ease both; }@keyframes tourIn { from{opacity:0;transform:translateX(12px)} to{opacity:1;transform:none} }.tour-copy > span { color:var(--blue);font-size:.56rem;font-weight:700;letter-spacing:.09em; }.tour-copy h3 { margin:14px 0 10px;font-size:clamp(1.6rem,2.7vw,2.35rem);line-height:1.13;letter-spacing:-.045em; }.tour-copy > p { margin:0;color:var(--muted);font-size:.76rem;line-height:1.65; }.tour-copy .button { margin-top:23px;font-size:.68rem; }
.tour-screen { min-height:330px;padding:20px;border:1px solid #d7e2f3;border-radius:20px;background:linear-gradient(145deg,#f8fbff,#edf4ff);box-shadow:0 22px 55px rgba(27,53,103,.14); }.tour-search { height:40px;display:flex;align-items:center;gap:7px;padding:0 12px;color:#919cad;background:white;border-radius:9px;font-size:.53rem; }.tour-file { display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;margin-top:12px;padding:12px;background:white;border:1px solid #dfe5ef;border-radius:10px; }.tour-file.selected { box-shadow:inset 3px 0 0 var(--blue); }.tour-file > i { width:31px;height:34px;display:grid;place-items:center;color:#dd4f59;background:#fff0f1;border-radius:6px;font-size:.36rem;font-style:normal;font-weight:800; }.tour-file p { display:flex;flex-direction:column;margin:0; }.tour-file b { font-size:.5rem; }.tour-file small,.tour-file > em { color:#8c98aa;font-size:.39rem;font-style:normal; }.tour-linked { display:grid;gap:6px;margin-top:12px;padding:12px;background:white;border:1px solid #dfe5ef;border-radius:10px; }.tour-linked > small { color:var(--blue);font-size:.37rem;font-weight:800;letter-spacing:.08em; }.tour-linked > span { display:flex;align-items:center;justify-content:space-between;padding:8px;background:#f6f8fc;border-radius:7px;font-size:.43rem; }.tour-linked em { padding:3px 6px;color:#158052;background:#e6f7ef;border-radius:999px;font-size:.34rem;font-style:normal; }
.tour-clause { padding:18px;border:1px solid #e0e5ed;border-radius:12px;background:white; }.tour-clause small { color:#56647a;font-size:.44rem;font-weight:800; }.tour-clause p { color:#697489;font-family:Georgia,serif;font-size:.58rem;line-height:1.8; }.tour-clause mark { color:#925b06;background:#ffe9b7; }.tour-risk { display:flex;gap:8px;margin-top:11px;padding:11px;border:1px solid #f0cd88;border-radius:10px;background:#fff8e9; }.tour-risk i { width:23px;height:23px;display:grid;place-items:center;flex:0 0 23px;color:white;background:#e89426;border-radius:50%;font-size:.47rem;font-style:normal;font-weight:800; }.tour-risk p { display:flex;flex-direction:column;margin:0; }.tour-risk b { color:#7b510c;font-size:.48rem; }.tour-risk small { color:#9a783d;font-size:.39rem; }.tour-term-grid,.tour-kpis { display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px; }.tour-term-grid span,.tour-kpis span { display:flex;flex-direction:column;padding:10px;background:white;border:1px solid #e0e6ef;border-radius:9px; }.tour-term-grid small,.tour-kpis small { color:#8c98aa;font-size:.38rem; }.tour-term-grid b { font-size:.49rem; }
.tour-approval { display:flex;flex-direction:column;justify-content:center; }.tour-request { display:flex;flex-direction:column;align-self:center;width:62%;padding:14px 16px;border:1px solid #dbe2ee;border-left:3px solid var(--blue);border-radius:11px;background:white; }.tour-request small { color:#99a4b4;font-size:.38rem;font-weight:800; }.tour-request b { margin-top:3px;font-size:.53rem; }.tour-route { display:flex;align-items:center;justify-content:center;margin-top:35px; }.tour-route > span:not(:empty) { width:80px;display:flex;flex-direction:column;align-items:center;gap:5px; }.tour-route > span:empty { height:2px;flex:1;background:#9db9f5; }.tour-route i { width:38px;height:38px;display:grid;place-items:center;color:var(--blue);background:white;border:1px solid #d9e3f2;border-radius:10px;font-size:.42rem;font-style:normal;font-weight:800; }.tour-route b { font-size:.4rem; }.tour-route em { width:17px;height:17px;display:grid;place-items:center;margin:-15px 0 0 25px;color:white;background:#1da96d;border:2px solid white;border-radius:50%;font-size:.34rem;font-style:normal; }.tour-approved { align-self:center;margin-top:30px;padding:10px 15px;color:#168256;background:#e5f7ef;border-radius:999px;font-size:.52rem;font-weight:700; }
.tour-sign { display:grid;grid-template-columns:.8fr 1.2fr;gap:12px; }.tour-doc { padding:20px;border:1px solid #dfe5ee;border-radius:12px;background:white; }.tour-doc small { color:#56647a;font-size:.42rem;font-weight:800; }.tour-doc span { display:block;height:5px;margin-top:14px;background:#e8ebf1;border-radius:5px; }.tour-doc span:nth-of-type(2) { width:78%; }.tour-doc span:nth-of-type(3) { width:55%; }.tour-signers { align-self:center;display:grid;gap:7px; }.tour-signers > span { display:flex;align-items:center;gap:8px;padding:9px;background:white;border:1px solid #dfe6ef;border-radius:9px; }.tour-signers i { width:30px;height:30px;display:grid;place-items:center;color:#168256;background:#e5f7ef;border-radius:8px;font-size:.35rem;font-style:normal;font-weight:800; }.tour-signers p { flex:1;display:flex;flex-direction:column;margin:0; }.tour-signers b { font-size:.43rem; }.tour-signers small { color:#8d98a8;font-size:.35rem; }.tour-signers em { color:#16945f;font-style:normal;font-weight:800; }.tour-signers strong { padding:10px;color:white;background:#1c9f68;border-radius:9px;font-size:.48rem;text-align:center; }
.tour-kpis { grid-template-columns:repeat(3,1fr);margin-top:0; }.tour-kpis b { color:#1b3154;font-size:.9rem; }.tour-reminder { display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-top:12px;padding:12px;background:white;border:1px solid #dfe6ef;border-radius:11px; }.tour-reminder > i { width:45px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:white;background:#e89426;border-radius:9px;font-size:.34rem;font-style:normal;font-weight:700; }.tour-reminder i b { font-size:.9rem;line-height:1; }.tour-reminder p { display:flex;flex-direction:column;margin:0; }.tour-reminder p b { font-size:.45rem; }.tour-reminder p small { color:#8d98a8;font-size:.36rem; }.tour-reminder > em { padding:4px 7px;color:#168256;background:#e6f7ef;border-radius:999px;font-size:.34rem;font-style:normal; }.tour-chart { height:105px;display:flex;align-items:flex-end;gap:8px;margin-top:12px;padding:12px 9px 0;border-bottom:1px solid #cfd9e7; }.tour-chart span { flex:1;background:linear-gradient(#4a83f7,#1657f4);border-radius:5px 5px 0 0; }
.tour-footer { min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-top:1px solid #e5eaf2; }.tour-footer button { display:flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:0;border-radius:9px;color:#526178;background:#f0f3f8;font:inherit;font-size:.62rem;cursor:pointer; }.tour-footer button:last-child { color:white;background:var(--blue); }.tour-footer button:disabled { opacity:.36;cursor:not-allowed; }.tour-footer > span { color:#8894a6;font-size:.58rem; }.tour-footer > span b { color:var(--blue); }

.toast {
  position: fixed;
  z-index: 400;
  top: 24px;
  left: 50%;
  display: flex;
  align-items: center;
  gap: 12px;
  width: min(440px, calc(100vw - 32px));
  padding: 14px 14px 14px 16px;
  border: 1px solid #cfe9da;
  border-radius: 14px;
  background: #f3fbf7;
  color: #134f36;
  box-shadow: 0 18px 40px rgba(15, 40, 70, .14);
  transform: translate(-50%, -12px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .28s ease, transform .28s ease;
}
.toast.show {
  opacity: 1;
  transform: translate(-50%, 0);
  pointer-events: auto;
}
.toast-icon {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: white;
  background: #1c9f68;
  font-size: .72rem;
  font-weight: 700;
}
.toast p {
  flex: 1;
  margin: 0;
  font-size: .78rem;
  font-weight: 600;
  line-height: 1.45;
}
.toast-close {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #4f7a63;
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
}
.toast-close:hover { background: rgba(28, 159, 104, .1); }

.whatsapp-fab { position: fixed; z-index: 90; right: 25px; bottom: 25px; width: 57px; height: 57px; display: grid; place-items: center; color: white; background: #25d366; border: 4px solid white; border-radius: 50%; box-shadow: 0 12px 30px rgba(24,127,74,.28); transition: transform .2s; }
.whatsapp-fab:hover { transform: translateY(-4px) scale(1.03); }
.whatsapp-fab svg { width: 30px; fill: currentColor; stroke: none; }

.site-footer { padding: 66px 0 25px; background: #07142f; color: white; }
.footer-grid { display: grid; grid-template-columns: 1fr 1.25fr; gap: 80px; padding-bottom: 48px; }
.footer-brand img { width: 185px; filter: brightness(0) invert(1); }
.footer-brand p { max-width: 350px; color: #8f9dbb; font-size: .82rem; margin-top: 20px; }
.footer-links { display: grid; grid-template-columns: repeat(3,1fr); gap: 35px; }
.footer-links > div { display: flex; flex-direction: column; gap: 9px; }
.footer-links h3 { margin: 0 0 6px; color: white; font-size: .76rem; }
.footer-links a { color: #8f9dbb; font-size: .75rem; transition: color .2s; }
.footer-links a:hover { color: white; }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.1); color: #7e8ca9; font-size: .68rem; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1050px) {
  .hero-grid { grid-template-columns: 1fr; }
  .hero { padding-top: 150px; }
  .hero-copy { max-width: 760px; text-align: center; margin-inline: auto; }
  .hero-lead { margin-inline: auto; }
  .hero-actions, .hero-note { justify-content: center; }
  .hero-outcomes { justify-content:center; }
  .hero-visual { width: min(760px,100%); margin: 25px auto 0; }
  .hero-render { min-height: 520px; }
  .hero-render > img { width: 112%; margin-left: -6%; }
  .problem-grid { grid-template-columns: repeat(2,1fr); }
  .problem-card { min-height:365px; }
  .lifecycle-flow { grid-template-columns: repeat(5,1fr); gap: 10px; }
  .lifecycle-card { min-width: 175px; }
  .bento-grid { grid-template-columns: repeat(2,1fr); }
  .bento-wide { grid-column: span 2; }
  .product-story { gap: 32px; padding: 38px; }
  .story-copy li { font-size: .7rem; }
  .control-grid { grid-template-columns: 1fr 1fr; }
  .teams-grid, .ai-layout, .control-grid, .demo-shell { gap: 50px; }
  .founders-grid { grid-template-columns: repeat(2,1fr); }
  .tour-body { grid-template-columns:145px 1fr; }
  .tour-slides { padding:24px; }
  .tour-slide { gap:22px; }
}

@media (max-width: 820px) {
  :root { --shell: min(100% - 32px, 680px); }
  .section { padding: 82px 0; }
  .menu-toggle { display: block; z-index: 3; }
  .nav-panel { position: fixed; inset: 0 0 auto; padding: 96px 24px 28px; display: grid; gap: 26px; background: white; box-shadow: 0 18px 40px rgba(26,43,77,.1); transform: translateY(-110%); transition: transform .3s ease; }
  .nav-panel.open { transform: translateY(0); }
  .nav-links { display: grid; gap: 5px; }
  .nav-links a { padding: 10px; font-size: 1rem; }
  .nav-actions { padding: 0 10px; justify-content: space-between; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .section-heading.split { grid-template-columns: 1fr; gap: 10px; }
  .lifecycle-flow { grid-template-columns: repeat(2,1fr); }
  .lifecycle-flow::before { display: none; }
  .lifecycle-card { min-width: 0; }
  .product-story,.story-reverse { grid-template-columns: 1fr; min-height: auto; }
  .story-reverse .story-copy { order: 0; }
  .product-ui { width: 100%; }
  .feature-mini-grid { grid-template-columns: repeat(2,1fr); }
  .problem-card { min-height:355px; }
  .outcome-heading { grid-template-columns:1fr;gap:10px; }
  .outcome-heading .section-kicker { grid-column:auto; }
  .outcome-grid { grid-template-columns:1fr; }
  .outcome-card { min-height:0; }
  .teams-grid, .ai-layout, .control-grid, .demo-shell { grid-template-columns: 1fr; }
  .control-visual { order: 2; }
  .how-grid { grid-template-columns: 1fr; }
  .role-strip-inner { flex-direction: column; gap: 12px; }
  .role-list { flex-wrap: wrap; justify-content: center; gap: 12px; }
  .demo-shell { padding: 44px 30px; }
  .footer-grid { grid-template-columns: 1fr; gap: 36px; }
  .tour-dialog { overflow-y:auto; }
  .tour-body { grid-template-columns:1fr;min-height:0; }
  .tour-steps { position:sticky;top:0;z-index:2;grid-template-columns:repeat(5,1fr);padding:9px;border-right:0;border-bottom:1px solid #e5eaf2; }
  .tour-steps button { justify-content:center;min-width:0;padding:0 6px; }
  .tour-slides { padding:26px;overflow:visible; }
  .tour-slide { grid-template-columns:1fr;min-height:0; }
  .tour-copy { max-width:580px; }
}

@media (max-width: 580px) {
  :root { --shell: calc(100vw - 28px); }
  .nav { min-height: 72px; }
  .brand { width: 155px; }
  .hero { min-height: auto; padding-top: 122px; padding-bottom: 72px; }
  .hero h1 { font-size: clamp(2.65rem,14vw,4rem); }
  html[lang="ka"] .hero h1 { font-size: clamp(2.25rem,11vw,3.3rem); }
  .hero-lead { font-size: .98rem; }
  .hero-actions { flex-direction: column; }
  .hero-actions .button { width: 100%; }
  .hero-outcomes { justify-content:flex-start;gap:8px; }
  .hero-outcomes > span { width:100%; }
  .hero-note { align-items: flex-start; text-align: left; }
  .hero-visual { min-height: 495px; margin-top: 18px; }
  .hero-render { min-height: 310px; margin-top: 8px; }
  .hero-render > img { width: 116%; margin-left: -8%; transform: none; }
  .hero-render::before, .hero-render::after { display: none; }
  .hero-visual::before { width: 104%; left: -2%; bottom: 24px; height: 135px; }
  .hero-visual::after { width: 112%; left: -6%; bottom: 5px; height: 80px; }
  .stage-block-one { width: 100px; height: 235px; left: -8px; top: 125px; }
  .stage-block-two { width: 75px; height: 230px; right: -13px; top: 190px; }
  .app-window { min-height: 370px; grid-template-columns: 48px 1fr; transform: none; border-radius: 20px; }
  .app-sidebar { padding: 18px 7px; }
  .app-sidebar > img { width: 25px; }
  .side-item { width: 34px; height: 34px; }
  .app-main { padding: 18px 12px; }
  .app-stats { gap: 5px; }
  .app-stats > div { padding: 8px 6px; }
  .app-stats strong { font-size: 1rem; }
  .contract-card { padding: 12px; }
  .workflow { margin: 18px 0 15px; }
  .chip-approved, .chip-ai { display: none; }
  .chip-reminder { bottom: 1px; right: -4px; }
  .floating-chip { min-width: 165px; padding: 9px 10px; }
  .document-card { left: -4px; bottom: 47px; width: 174px; height: 250px; padding: 17px 15px; border-width: 3px; border-radius: 16px; }
  .document-dots { margin: -5px 0 10px; }
  .document-card > strong { margin-bottom: 9px; font-size: .68rem; }
  .document-toolbar { gap: 8px; margin: 0 -4px 11px; padding: 5px; }
  .document-card > small { margin: 8px 0 4px; font-size: .44rem; }
  .doc-line { height: 3px; margin-bottom: 4px; }
  .signature { left: 16px; right: 16px; bottom: 10px; }
  .approval-strip { right: -5px; bottom: 70px; width: 230px; padding: 11px 12px 8px; border-width: 3px; }
  .approval-strip > strong { margin-bottom: 6px; }
  .approval-people span, .approval-people b { width: 23px; height: 23px; font-size: .4rem; }
  .approval-labels { font-size: .36rem; }
  .visual-caption { display: none; }
  .problem-grid, .bento-grid, .founders-grid { grid-template-columns: 1fr; }
  .problem-card { min-height: 355px; padding:20px; }
  .problem-card .problem-copy > p { font-size:.72rem; }
  .pain-proof { left:14px;right:14px;bottom:14px; }
  .deadline-proof { grid-template-columns:100px 1fr; }
  .lifecycle-flow { grid-template-columns: 1fr; }
  .lifecycle-card { min-height: 350px; }
  .bento-wide { grid-column: auto; }
  .bento-card { min-height: 350px; }
  .repository-card, .analytics-card { min-height: 475px; }
  .mini-repository, .mini-chart { width: auto; left: 24px; right: 24px; }
  .mini-chart { bottom: 5px; }
  .teams-grid { gap: 35px; }
  .role-panel { min-height: 470px; padding: 30px 24px; }
  .role-panel h3 { font-size: 1.45rem; }
  .ai-demo { padding: 15px; }
  .message { max-width: 95%; }
  .product-story { gap: 28px; padding: 27px 18px; border-radius: 23px; }
  .story-copy h3 { font-size: 1.65rem; }
  .product-ui { padding: 13px; border-radius: 17px; }
  .ui-toolbar button span { display: none; }
  .repo-filters { gap: 12px; overflow-x: auto; }
  .linked-record-list { grid-template-columns:1fr; }
  .workflow-ui { padding: 0; }
  .workflow-canvas { padding: 20px 10px; }
  .workflow-approvals { gap: 5px; }
  .workflow-approvals > div { padding: 7px 5px; }
  .workflow-approvals p { display: none; }
  .workflow-approvals > div > i { margin:auto; }
  .workflow-signing { width:100%;padding:9px; }
  .signer-cards { grid-template-columns:1fr; }
  .intelligence-ui { grid-template-columns: 1fr; }
  .ai-review-card { margin-top: -25px; }
  .feature-mini-grid { grid-template-columns: 1fr; }
  .feature-mini-grid article { min-height: 310px; }
  .outcome-block { padding:22px 15px;border-radius:21px; }
  .outcome-heading { margin-bottom:18px; }
  .outcome-card { padding:17px; }
  .control-visual { min-height: auto; transform: none; margin: 0; }
  .control-console { padding: 11px; border-radius: 19px; }
  .console-kpis { grid-template-columns:repeat(2,1fr); }
  .console-bottom { grid-template-columns: 1fr; }
  .policy-condition { grid-template-columns: 1fr; }
  .console-tabs span { font-size: .4rem; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .demo-shell { padding: 38px 20px; border-radius: 25px; }
  .footer-links { grid-template-columns: 1fr 1fr; row-gap: 32px; }
  .footer-bottom { align-items: flex-start; flex-direction: column; gap: 8px; }
  .whatsapp-fab { right: 16px; bottom: 16px; }
  .product-tour { padding:0; }
  .tour-dialog { width:100%;max-height:100vh;min-height:100vh;border:0;border-radius:0; }
  .tour-header { min-height:67px;padding:0 15px; }
  .tour-header img { width:34px;height:34px; }
  .tour-header b { font-size:.72rem; }
  .tour-steps { padding:7px 6px; }
  .tour-steps button { min-height:42px;padding:0; }
  .tour-steps button span { display:none; }
  .tour-steps button i { width:29px;height:29px; }
  .tour-slides { padding:20px 15px; }
  .tour-slide { gap:18px; }
  .tour-copy h3 { margin-top:9px;font-size:1.55rem; }
  .tour-screen { min-height:280px;padding:14px; }
  .tour-request { width:85%; }
  .tour-route > span:not(:empty) { width:58px; }
  .tour-sign { grid-template-columns:1fr 1.25fr; }
  .tour-kpis b { font-size:.7rem; }
  .tour-footer { position:sticky;bottom:0;z-index:3;min-height:58px;padding:0 14px;background:white; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}
