/* Lumo scene, measured against the 1815 x 867 reference. */
@font-face {font-family:"Nunito";font-style:normal;font-weight:900;font-display:swap;src:url("/static/lumo/fonts/nunito-900.woff2") format("woff2")}
@font-face {font-family:"Nunito Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/static/lumo/fonts/nunito-sans-400.woff2") format("woff2")}
@font-face {font-family:"Nunito Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/static/lumo/fonts/nunito-sans-500.woff2") format("woff2")}
@font-face {font-family:"Nunito Sans";font-style:normal;font-weight:600;font-display:swap;src:url("/static/lumo/fonts/nunito-sans-600.woff2") format("woff2")}
@font-face {font-family:"Nunito Sans";font-style:normal;font-weight:700;font-display:swap;src:url("/static/lumo/fonts/nunito-sans-700.woff2") format("woff2")}
:root {color-scheme:light;--ink:#101c3c;--purple:#6b33ff;--purple-dark:#5821e8;--muted:#727b99;--line:rgba(112,73,220,.13);font-family:"Nunito Sans","Segoe UI",Arial,sans-serif;font-synthesis:none}
* {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0;background:#f7faff;color:var(--ink)}
a {color:inherit;text-decoration:none}
button,input {font:inherit}
button {cursor:pointer;color:inherit}
button,a {-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible {outline:3px solid #6742e5;outline-offset:5px}
::selection {background:#ded0ff}
.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;z-index:100;top:12px;left:16px;padding:12px 20px;background:white;border-radius:12px;transform:translateY(-160%)}
.skip-link:focus {transform:none}
.lumo-page {--s:clamp(.55px,.0550964vw,1.4px);position:relative;isolation:isolate;min-height:max(640px,100svh);overflow:clip;background:radial-gradient(ellipse 45% 43% at 2% 0%,#f4e6fc 0%,transparent 85%),radial-gradient(ellipse 45% 45% at 100% 5%,#e5f3ff 0%,transparent 85%),radial-gradient(ellipse 47% 70% at 89% 55%,#ddd7ff 0%,transparent 80%),#fcfcff}
.scene-waves {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}
.scene-waves-front {z-index:3}
.site-header {position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:calc(30 * var(--s));width:88.3%;margin:0 auto;padding:calc(20 * var(--s)) 0}
.brand {display:flex;align-items:center;gap:calc(8 * var(--s));font-family:"Nunito","Segoe UI",sans-serif;font-size:calc(43 * var(--s));font-weight:900;letter-spacing:calc(-1.8 * var(--s));color:#080f22;flex-shrink:0}
.brand-mark {width:calc(54 * var(--s));height:calc(54 * var(--s));object-fit:contain}
.main-navigation {display:flex;align-items:center;gap:calc(44 * var(--s));margin-left:auto;margin-right:auto;font-size:max(12px,calc(15 * var(--s)));font-weight:500;white-space:nowrap}
.nav-help {border:0;background:none;padding:0;font:inherit}
.main-navigation a:hover,.nav-help:hover {color:var(--purple)}
.header-actions {display:flex;align-items:center;gap:calc(24 * var(--s))}
.login-link {display:grid;place-items:center;width:calc(116 * var(--s));height:calc(60 * var(--s));border:2px solid #d9d9ff;border-radius:calc(18 * var(--s));color:#7744ff;font-size:calc(17 * var(--s));font-weight:600;white-space:nowrap}
.login-link span {display:none}
.button {display:inline-flex;align-items:center;justify-content:center;gap:calc(14 * var(--s,1px));border:0;border-radius:calc(18 * var(--s,1px));padding:16px 24px;min-height:52px;font-size:16px;font-weight:600;line-height:1.2;white-space:nowrap;transition:transform .18s,box-shadow .18s}
.button:hover {transform:translateY(-2px)}
.button-primary {color:white;background:linear-gradient(110deg,#7535ff,#612cff);box-shadow:0 9px 22px rgba(90,45,229,.13)}
.button-primary:hover {box-shadow:0 12px 27px rgba(90,45,229,.23)}
.button-small {width:calc(216 * var(--s));height:calc(60 * var(--s));min-height:0;padding:0;font-size:calc(17 * var(--s));border-radius:calc(17 * var(--s))}
.windows-icon {width:calc(24 * var(--s,1px));height:calc(24 * var(--s,1px));display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;transform:perspective(55px) rotateY(-9deg);flex-shrink:0}
.windows-icon i {background:currentColor}
.menu-toggle {display:none}
#main {position:absolute;inset:0;pointer-events:none}
.hero {position:absolute;inset:0}
.hero-copy {position:absolute;left:6.2%;top:26%;z-index:4;pointer-events:auto}
.hero-wordmark {display:flex;align-items:center;gap:calc(12 * var(--s));margin-left:calc(-18 * var(--s))}
.hero-mark {width:calc(169 * var(--s));height:calc(169 * var(--s));object-fit:contain;transform:scale(1.13)}
.hero h1 {font-family:"Nunito","Segoe UI",sans-serif;color:#020a16;font-size:calc(180 * var(--s));font-weight:900;letter-spacing:calc(-9 * var(--s));line-height:1;margin:0}
.hero-tagline,.download-note {display:none}
.hero-actions {display:flex;align-items:center;gap:calc(39 * var(--s));margin-top:calc(46 * var(--s))}
.button-download {position:relative;justify-content:flex-start;width:calc(369 * var(--s));height:calc(83 * var(--s));min-height:0;padding:0 calc(82 * var(--s)) 0 calc(43 * var(--s));font-size:calc(25 * var(--s));gap:calc(18 * var(--s));border-radius:calc(19 * var(--s))}
.button-download .windows-icon {width:calc(30 * var(--s));height:calc(30 * var(--s))}
.button-arrow {position:absolute;right:calc(28 * var(--s));top:50%;transform:translateY(-50%);display:grid;place-items:center;width:calc(46 * var(--s));height:calc(46 * var(--s));border-radius:50%;background:#fff;color:#7436ff;line-height:0;flex-shrink:0}
.button-arrow svg {display:block;width:52%;height:52%}
.hero-demo {background:none;box-shadow:none;color:#7437ff;padding:0;min-height:0;font-size:calc(24 * var(--s));gap:calc(16 * var(--s))}
.play-icon {display:grid;place-items:center;width:calc(54 * var(--s));height:calc(54 * var(--s));background:rgba(219,207,255,.69);border-radius:50%;line-height:0;flex-shrink:0}
.play-icon svg {display:block;width:100%;height:100%}
.hero-visual {position:static}
.art-glow {display:none}
.chameleon-art {position:absolute;left:43%;top:2.9%;width:40.2%;height:auto;z-index:2;pointer-events:none;filter:drop-shadow(0 14px 22px rgba(63,65,155,.06))}
.example-card {position:absolute;left:73.6%;top:39%;width:21.6%;z-index:5;padding:calc(26 * var(--s)) calc(28 * var(--s)) calc(32 * var(--s));background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.8);border-radius:calc(29 * var(--s));transform:rotate(5deg);box-shadow:0 18px 40px rgba(93,77,178,.07);pointer-events:auto}
.example-card-top {display:flex;align-items:center;gap:12px}
.objection-label {display:inline-flex;align-items:center;gap:calc(16 * var(--s,1px));font-size:calc(17 * var(--s,1px));font-weight:600;color:#8146ff}
.objection-label>span {display:grid;place-items:center;width:calc(39 * var(--s,1px));height:calc(39 * var(--s,1px));border-radius:50%;background:#d9c5ff;color:#8141ff;font-size:calc(33 * var(--s,1px));flex-shrink:0}
.example-label {display:none}
.example-quote {font-size:calc(23 * var(--s));font-weight:700;line-height:1.4;color:#142650;margin:calc(18 * var(--s)) 0 calc(21 * var(--s)) calc(54 * var(--s))}
.example-answer {display:flex;gap:calc(19 * var(--s));align-items:flex-start}
.answer-dot {width:calc(39 * var(--s));height:calc(48 * var(--s));border-radius:calc(10 * var(--s));background:linear-gradient(150deg,#ddd5ff,#efeaff);flex-shrink:0;position:relative}
.answer-dot::before {content:"";position:absolute;inset:20% 25%;border-radius:4px;background:linear-gradient(145deg,#b395ff,#8850f6);box-shadow:3px 4px 0 #c6adff}
.answer-dot::after {content:"";position:absolute;left:37%;right:29%;top:38%;height:2px;background:#e4d4ff;box-shadow:0 6px #e4d4ff,0 12px #e4d4ff}
.example-answer p {font-size:calc(19 * var(--s));line-height:1.35;font-weight:400;color:#284573;margin:0}
.floating-sparkle {position:absolute;z-index:6;color:#ffc924;pointer-events:none}
.sparkle-one {left:68.6%;top:12%;font-size:calc(43 * var(--s));transform:rotate(12deg)}
.sparkle-two {left:80%;top:32%;font-size:calc(37 * var(--s));transform:rotate(15deg)}
.tools {position:absolute;z-index:11;inset:77.3% auto auto 29%;width:42.56%;display:grid;grid-template-columns:repeat(4,1fr);gap:0;pointer-events:auto}
.tool {display:flex;align-items:center;flex-direction:column;text-align:center;transition:transform .18s}
.tool:nth-of-type(n+3) {margin-top:calc(16 * var(--s))}
.tool:hover {transform:translateY(-4px)}
.tool-art {width:calc(92 * var(--s));height:calc(92 * var(--s));display:grid;place-items:center;border:0;border-radius:calc(25 * var(--s));margin-bottom:calc(12 * var(--s));position:relative;backdrop-filter:blur(8px)}
.tool-art img {width:calc(72 * var(--s));height:calc(72 * var(--s));object-fit:contain;filter:drop-shadow(0 5px 6px rgba(79,49,143,.12));transition:transform .18s}
.tool:hover .tool-art img {transform:translateY(-2px)}
.tool-art-call {background:linear-gradient(145deg,rgba(226,181,255,.5),rgba(234,202,255,.47))}
.tool-art-analytics {background:linear-gradient(145deg,rgba(255,231,168,.52),rgba(255,242,207,.55))}
.tool-art-team {background:linear-gradient(145deg,rgba(171,218,255,.58),rgba(179,237,255,.54))}
.tool-art-learning {background:linear-gradient(145deg,rgba(144,227,196,.52),rgba(180,249,223,.57))}
.tool-title {font-size:max(13px,calc(17 * var(--s)));font-weight:500;line-height:1.5;color:#6941ff;white-space:nowrap}
.tool-art-team+.tool-title {color:#3f63c8}
.tool-art-learning+.tool-title {color:#007950}
.site-footer {display:none}
.lumo-dialog{color:var(--ink);border:1px solid rgba(255,255,255,.9);border-radius:26px;padding:27px;max-width:590px;width:calc(100% - 32px);box-shadow:0 25px 100px rgba(46,25,79,.2);background:linear-gradient(140deg,#fff,#fbf8ff);max-height:calc(100dvh - 40px);overflow:auto}.lumo-dialog::backdrop{background:rgba(47,29,73,.32);backdrop-filter:blur(8px)}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.dialog-eyebrow{display:block;font-size:11px;letter-spacing:.04em;font-weight:600;color:#a28abe;margin-bottom:7px}.dialog-header h2{font-size:23px;line-height:1.3;font-weight:700;letter-spacing:-.5px;margin:0}.dialog-close{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border:0;border-radius:10px;background:#f3edf9;color:#a28ab9;font-size:24px}.dialog-close:hover{background:#ebe1f5}.dialog-description{color:#94829f;font-size:12px;line-height:1.65;margin:17px 0 22px}.demo-conversation{display:flex;flex-direction:column;gap:13px;min-height:300px}.demo-client{align-self:flex-end;max-width:85%;background:#f1e9fc;border:1px solid #e8ddf6;border-radius:17px 17px 4px 17px;padding:13px 16px}.demo-client span{font-size:10px;font-weight:700;color:#af91c8}.demo-client p,.demo-response p{font-size:14px;line-height:1.65;margin:6px 0 0}.demo-thinking{display:flex;align-items:center;gap:9px;font-size:11px;color:#a28cbb;margin:1px 4px}.thinking-dots{display:flex;gap:3px}.thinking-dots i{width:4px;height:4px;border-radius:50%;background:#b897dd;animation:dot-pulse 1s infinite}.thinking-dots i:nth-child(2){animation-delay:.13s}.thinking-dots i:nth-child(3){animation-delay:.26s}.demo-response{background:white;border:1px solid #e9dff6;border-radius:18px;padding:17px;box-shadow:0 7px 20px rgba(129,85,176,.05)}.demo-response>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.demo-response p{color:#786086}.demo-response small{display:block;font-size:11px;line-height:1.65;color:#ab92b7;margin-top:11px;padding-top:10px;border-top:1px solid #f2ecf7}.demo-step{opacity:0;transform:translateY(7px);transition:opacity .32s,transform .32s}.demo-step.is-visible{opacity:1;transform:none}.demo-thinking.is-done{display:none}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;flex-wrap:wrap}.dialog-actions .button{font-size:12px;padding:12px 16px;min-height:44px;border-radius:12px}.help-steps{list-style:none;counter-reset:steps;display:grid;gap:18px;margin:24px 0;padding:0}.help-steps li{counter-increment:steps;position:relative;padding-left:40px}.help-steps li::before{content:counter(steps);position:absolute;left:0;top:0;display:grid;place-items:center;width:26px;height:26px;background:#efe4fb;color:#a076cc;border-radius:9px;font-size:12px;font-weight:700}.help-steps strong{font-size:14px}.help-steps p{font-size:13px;line-height:1.7;color:#96819e;margin:5px 0 0}

.lumo-dialog {--s:1px}
.dialog-description,.demo-response small,.help-steps p {color:#746482}
.dialog-eyebrow,.demo-client span,.demo-thinking {color:#78658d}
.demo-thinking.is-done {display:flex;visibility:hidden}
@keyframes dot-pulse {0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}
/* Wide, tall screens have more air above the illustration, without stretching the PNG. */
@media(min-width:1001px) and (max-aspect-ratio:16/9) {
  .chameleon-art {top:calc(2.9% + (100svh - 47.77vw) * .25)}
}
/* In landscape tablets keep a single scene and keep labels large enough to read. */
@media(min-width:701px) and (max-width:1000px) {
  .lumo-page {min-height:max(630px,100svh)}
  .site-header {width:91%;flex-wrap:wrap;gap:16px;padding:18px 0}
  .brand {font-size:31px}.brand-mark {width:42px;height:42px}
  .header-actions {margin-left:auto;gap:15px}
  .login-link {height:42px;width:75px;font-size:13px;border-radius:13px}
  .button-small {height:42px;width:158px;font-size:13px;border-radius:13px}
  .main-navigation {order:3;width:100%;justify-content:center;gap:30px;font-size:13px;margin:0}
  .hero-copy {left:5%;top:31%}
  .chameleon-art {left:43%;top:20%;width:43%}
  .example-card {left:71%;top:45%;width:25%;padding:16px;border-radius:20px}
  .example-quote {font-size:15px;margin:13px 0 15px 25px}
  .example-answer p {font-size:12px}.example-answer {gap:8px}
  .objection-label {font-size:12px;gap:8px}.objection-label>span {width:25px;height:25px;font-size:22px}
  .answer-dot {width:23px;height:29px}
  .tools {top:79%;left:21%;width:58%}.tool-art {width:68px;height:68px;border-radius:20px}
  .tool-art img {width:47px;height:47px}.tool-title {font-size:13px}
}
/* On phones the same scene flows vertically, with the four tiles above its lower edge. */
@media(max-width:700px), (min-width:701px) and (max-width:1000px) and (max-aspect-ratio:4/3) {
  .lumo-page {--s:1px;min-height:100svh;padding-bottom:35px;overflow:hidden}
  .site-header {width:auto;margin:0 20px;padding:18px 0;gap:12px;flex-wrap:wrap}
  .brand {font-size:29px;letter-spacing:-1.5px;gap:5px}.brand-mark {width:39px;height:39px}
  .header-actions {margin:0;gap:0}.header-actions .button-small {display:none}
  .login-link {width:64px;height:38px;font-size:12px;border-radius:11px}
  .menu-toggle {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:35px;height:35px;margin-left:auto;border:1px solid #ddd8f9;border-radius:10px;background:rgba(255,255,255,.6)}
  .menu-toggle span {width:17px;height:2px;border-radius:2px;background:#7246ca}
  .main-navigation {display:none;order:4;flex-direction:column;width:100%;gap:0;margin:0;padding:6px;background:rgba(255,255,255,.9);border-radius:14px;font-size:14px}
  .main-navigation.is-open {display:flex}.main-navigation a,.nav-help {width:100%;padding:12px;text-align:left}
  #main {position:relative;inset:auto;pointer-events:auto}
  .hero {position:relative;inset:auto;padding:18px 20px 0}
  .hero-copy {position:relative;left:auto;top:auto;text-align:center}
  .hero-wordmark {justify-content:center;gap:12px;margin:0}
  .hero-mark {width:82px;height:82px}.hero h1 {font-size:106px;letter-spacing:-8px}
  .hero-actions {justify-content:center;gap:20px;margin-top:30px}
  .button-download {width:211px;height:53px;padding:0 52px 0 18px;font-size:15px;border-radius:14px;gap:10px}
  .button-download .windows-icon {width:19px;height:19px}
  .button-arrow {width:29px;height:29px;right:14px}
  .hero-demo {font-size:15px;gap:8px}.play-icon {width:34px;height:34px}
  .hero-visual {position:relative;height:clamp(310px,93vw,460px);margin:24px -12px 0}
  .chameleon-art {top:0;left:0;width:92%;height:auto}
  .example-card {left:50%;top:42%;width:49%;padding:14px;border-radius:19px}
  .example-card .objection-label {font-size:11px;gap:7px}.objection-label>span {width:23px;height:23px;font-size:20px}
  .example-quote {font-size:14px;line-height:1.4;margin:12px 0 13px 20px}
  .example-answer {gap:8px}.example-answer p {font-size:12px;line-height:1.35}
  .answer-dot {width:22px;height:28px;border-radius:6px}
  .answer-dot::after {height:1px;box-shadow:0 4px #e4d4ff,0 8px #e4d4ff}
  .sparkle-one {left:70%;top:3%;font-size:25px}.sparkle-two {left:91%;top:35%;font-size:22px}
  .tools {position:relative;inset:auto;width:100%;padding:0 17px;margin:0 auto;gap:7px}
  .tool:nth-of-type(n+3) {margin-top:8px}
  .tool-art {width:64px;height:64px;border-radius:19px;margin-bottom:10px}.tool-art img {width:45px;height:45px}
  .tool-title {font-size:12px}
  .scene-waves {height:100%;width:190%;left:-52%}
  .lumo-dialog {padding:22px 19px;border-radius:22px}
  .dialog-header h2 {font-size:21px}.dialog-actions {justify-content:stretch;gap:9px}
  .dialog-actions .button {flex-grow:1;font-size:11px;padding:12px 13px}
}
@media(max-width:360px) {
  .site-header {margin:0 16px}.hero {padding-right:16px;padding-left:16px}
  .hero h1 {font-size:86px}.hero-mark {width:64px;height:64px}.hero-wordmark {gap:8px}
  .hero-actions {gap:10px}.button-download {width:190px;font-size:14px}.hero-demo {font-size:14px}
  .hero-demo .play-icon {width:30px;height:30px}
  .tools {padding:0 12px;gap:4px}.tool-art {width:58px;height:58px}.tool-title {font-size:11px}
  .example-card {padding:11px}.example-answer p {font-size:11px}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}*,*::before,*::after {animation:none!important;transition:none!important}.demo-step {transform:none}
}

.tool-art-call img {width:calc(62 * var(--s));height:calc(62 * var(--s))}
@media(max-width:1000px) {.tool-art-call img {width:47px;height:47px}}
@media(max-width:700px), (min-width:701px) and (max-width:1000px) and (max-aspect-ratio:4/3) {.tool-art-call img {width:45px;height:45px}}

@media(min-width:701px) and (max-width:1000px) and (max-aspect-ratio:4/3) {
  #main {max-width:600px;margin:0 auto}
  .site-header {margin-right:28px;margin-left:28px}
  .hero-visual {height:min(93vw,560px)}
  .tool-art {width:76px;height:76px;border-radius:22px}.tool-art img {width:54px;height:54px}
  .tool-art-call img {width:54px;height:54px}.tool-title {font-size:14px}
}

@media(max-width:360px) {.hero-visual {min-height:355px}.example-card {left:48%}.example-answer {display:block}.example-answer .answer-dot {display:none}}
