/* Shared icons and mockup animations. Small-screen layout is only in mobile.css. */
*,*::before,*::after{transition:none!important}
html{scroll-behavior:auto}
.ui-icon{display:block;width:22px;height:22px;flex:0 0 auto}
.platform{width:62px;height:62px;display:grid;place-items:center;margin-bottom:23px;border:1px solid #dce6ef;border-radius:18px;background:#edf4fb;color:#315f89}
.platform .ui-icon{width:31px;height:31px}
.platform-mobile{background:#efedf8;border-color:#e1dcec;color:#71608f}
.platform-web{background:#eaf3ef;border-color:#d8e7df;color:#467664}
.hero .cta{align-items:center}
.hero .download-cta{display:inline-flex;align-items:center;gap:12px;padding:8px 15px 8px 8px;min-height:58px;border-radius:18px;background:linear-gradient(130deg,#355f83,#224768);border-color:#426e93;box-shadow:0 8px 22px #31567325;font-size:16px;line-height:1.35}
.cta-logo{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:12px;background:#f9fcff;box-shadow:inset 0 0 0 1px #ffffff60}
.cta-logo img{display:block;width:32px;height:32px;object-fit:contain}
.cta-action{display:grid;place-items:center;border-left:1px solid #ffffff30;padding-left:12px;margin-left:2px}
.cta-action .ui-icon{width:20px;height:20px}
.hero .browser-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;border-radius:18px;padding:12px 18px}
.browser-cta .ui-icon{width:18px;height:18px}
.browser-cta .icon-arrow{width:16px;margin-left:3px}
.nova-identity{display:flex;align-items:center;gap:16px;margin:0 0 20px}
.nova-art{width:108px;height:108px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#ffffff12,transparent 72%)}
.nova .nova-logo{display:block;width:108px;height:108px;overflow:visible}
.nova-identity .eyebrow{margin:0 0 8px;font-size:9px;letter-spacing:2px}
.nova-name{font:500 32px/1.05 Arial,sans-serif;letter-spacing:-1px;color:#f6f8fc}
.nova-brand-copy{min-width:0}
.nova{padding-top:45px}
.nova-scene{align-self:end}
/* Independent transform components preserve the original phone tilts. */
.phone{--drift:-9px;animation:mockup-float 7.4s ease-in-out infinite;animation-play-state:paused;transform-origin:50% 65%}
.phone img{display:block;width:100%;height:auto}
.hero-phone{--drift:-10px;animation-duration:8s;animation-delay:-1.4s}
.screen-panel.answer .phone{animation-delay:-3.3s;animation-duration:8.4s}
.nova-scene .phone{animation-delay:-2.1s;animation-duration:9s}
.tool-display .phone{animation-delay:-4.5s}
.workspace-grid article:nth-child(2) .phone{animation-delay:-3.7s;animation-duration:8.8s}
@keyframes mockup-float{0%,100%{translate:0 0;rotate:-.35deg}50%{translate:0 var(--drift);rotate:.35deg}}
html[data-motion=off] .phone{animation:none}
.motion-toggle{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:48px;margin-top:20px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--pale);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.motion-status{font-size:13px;color:var(--muted);white-space:nowrap}
.motion-toggle:disabled{cursor:default}
html[data-theme=dark] .platform{background:#2b465e;border-color:#42617b;color:#c2def3}
html[data-theme=dark] .platform-mobile{background:#463e59;border-color:#655a7a;color:#dbcaef}
html[data-theme=dark] .platform-web{background:#2c4b45;border-color:#466b61;color:#bce1d0}
html[data-theme=dark] .hero .download-cta{background:linear-gradient(130deg,#c6e0f2,#a7c9e3);color:#163b59;border-color:#d4e7f5}
html[data-theme=dark] .cta-action{border-color:#21476930}
@media(max-width:960px){.nova-identity{gap:12px}.nova-art,.nova .nova-logo{width:96px;height:96px}.nova-name{font-size:29px}}
@media(prefers-reduced-motion:reduce){.phone{animation:none!important}}

/* Shared cloud palette, preserved desktop composition. */
body{--bg:#f5f8fd;--surface:#fff;--ink:#182f4d;--muted:#5c7189;--line:#dbe4ef;--pale:#edf3fa;--blue:#4a73a2;background:var(--bg)}
.brand .brand-mark{filter:invert(1);object-fit:contain}
.cta-logo .brand-mark{filter:invert(1);object-fit:contain;width:28px;height:31px}
.hero{background:linear-gradient(180deg,#fcfdff 0%,#ecf4fc 58%,#dfecfa 100%)}
.hero .eyebrow{font-size:10px;line-height:1.7;letter-spacing:1.15px;text-transform:none;color:#526e8e;max-width:740px;margin-inline:auto}
.hero h1 em,.section-head h2 em,.download-heading h2 em{color:#557cab}
.hero .intro{color:#5a7391}
.hero .download-cta{background:linear-gradient(135deg,#416c9a,#284c79);border-color:#426991;box-shadow:0 10px 25px #254f7822}
.cloudscape{background:radial-gradient(ellipse at 50% 83%,#ffffffaa,transparent 64%)}
.cloudscape:before,.cloudscape:after{content:'';position:absolute;pointer-events:none;width:750px;height:330px;opacity:.78;filter:blur(7px);background:radial-gradient(ellipse at 20% 72%,#fff 0 18%,transparent 37%),radial-gradient(ellipse at 44% 53%,#fff 0 22%,transparent 42%),radial-gradient(ellipse at 70% 68%,#fff 0 23%,transparent 42%),radial-gradient(ellipse at 91% 78%,#fff 0 16%,transparent 33%)}
.cloudscape:before{left:-255px;top:48%;transform:rotate(-8deg)}
.cloudscape:after{right:-280px;top:35%;transform:rotate(8deg);opacity:.64}
.mist-left,.mist-right{opacity:.35}
.screen-panel{background:#e1ebf7;border-color:#d3e0ef}
.screen-panel.answer{background:#eae6f7;border-color:#ddd7ee}
.screen-panel h3{color:#304e73}
.phone{border-color:#2a3b55;background:#2a3b55}
.nova{background:#253e5c;border-color:#405b7a}
.nova-scene .phone{border-color:#92a6bd}
.nova-note{background:#f3f5ff;color:#2d4162}
.nova-note small{color:#7383a5}
.tabs .active{background:#e1ecfa;color:#29496c}
.tool-display{background:#e9e6f8;border-color:#d9d4ed}
.tool.active{background:#e3ecf9;color:#355d8c}
.workspace-grid article{background:#e1edf5;border-color:#d0e0ec;color:#293e59}
.workspace-grid article:nth-child(2){background:#eae5f5;border-color:#dbd3e9}
.workspace-grid p{color:#5b7089}.workspace-grid small{color:#637993}
.downloads{background:radial-gradient(ellipse at 18% 22%,#fff8,transparent 45%),linear-gradient(145deg,#edf4fc,#e4eaf9)}
.platform{color:#456c97;background:#edf3fb;border-color:#dbe5f0}
.primary{background:#325b89;border-color:#325b89}
.mobile-carousel-controls{display:none}
html[data-theme=dark] body{--bg:#101b2c;--surface:#1b2c43;--ink:#eef4fd;--muted:#b5c5d9;--line:#364c68;--pale:#233950;--blue:#b2cce9}
html[data-theme=dark] .brand .brand-mark{filter:none}
html[data-theme=dark] .cta-logo .brand-mark{filter:invert(1)}
html[data-theme=dark] .hero{background:linear-gradient(180deg,#1b2c43,#253f5d 62%,#2e4a6c)}
html[data-theme=dark] .hero .eyebrow,html[data-theme=dark] .hero .intro{color:#c1d1e7}
html[data-theme=dark] .cloudscape:before,html[data-theme=dark] .cloudscape:after{opacity:.045}
html[data-theme=dark] .hero .download-cta{background:linear-gradient(135deg,#d2e6f7,#adcee9);color:#163758;border-color:#cee5f7}
html[data-theme=dark] .hero h1 em,html[data-theme=dark] .section-head h2 em,html[data-theme=dark] .download-heading h2 em{color:#b6d1f0}
html[data-theme=dark] .screen-panel{background:#2b4564;border-color:#425e80}
html[data-theme=dark] .screen-panel.answer{background:#453d65;border-color:#605580}
html[data-theme=dark] .screen-panel h3{color:#d8e8fb}
html[data-theme=dark] .tool-display{background:#3c3559;border-color:#5a4f78;color:#f2edff}
html[data-theme=dark] .workspace-grid article{background:#2b455a;border-color:#446278;color:#eaf1fc}
html[data-theme=dark] .workspace-grid article:nth-child(2){background:#453a60;border-color:#615379}
html[data-theme=dark] .workspace-grid p,html[data-theme=dark] .workspace-grid small{color:#ccd8e8}
html[data-theme=dark] .downloads{background:linear-gradient(145deg,#1c3049,#252f4b)}
html[data-theme=dark] .primary{background:#b5d1ed;border-color:#b5d1ed;color:#1c3c5a}
html[data-theme=dark] .platform{background:#304b69;color:#c4dff7;border-color:#476588}


/* White badge and black supplied mark in both themes. */
.mobile-only,.mobile-menu-button{display:none}
.brand-logo{display:grid;place-items:center;flex:0 0 auto;width:40px;height:42px;border:1px solid #dfe5ed;border-radius:12px;background:#fff;box-shadow:0 2px 5px #10234406}
.brand .brand-logo .brand-mark,html[data-theme=dark] .brand .brand-logo .brand-mark{display:block;width:24px;height:27px;padding:0;background:transparent;border-radius:0;filter:invert(1);object-fit:contain}
.brand b{display:flex;align-items:center;gap:6px;color:var(--ink);font:700 23px/1 Arial,sans-serif;letter-spacing:-.8px}
.brand b em,.footer-top .brand b em{padding:3px 5px;border:1px solid var(--line);border-radius:5px;color:var(--muted);font:700 10px/1 Arial,sans-serif;letter-spacing:.4px}
.cta-logo{background:#fff}
.cta-logo .brand-mark,html[data-theme=dark] .cta-logo .brand-mark{background:transparent;padding:0;filter:invert(1)}
.download-grid .button{gap:10px}
#androidStatus{font-size:14px;line-height:1.6;color:var(--muted);margin:10px 0 20px}
#downloadAndroid .ui-icon,#downloadWindows .ui-icon{width:19px;height:19px}
#downloadAndroid.disabled,#downloadWindows.disabled{opacity:1;background:#e6ecf4;border-color:#d5dfeb;color:#63758b}
html[data-theme=dark] #downloadAndroid.disabled,html[data-theme=dark] #downloadWindows.disabled{background:#33485f;border-color:#48617c;color:#d3dfec}
