:root { --ink:#172036; --muted:#5e687d; --line:#e6e9f2; --surface:#f7f8fc; --white:#fff; --primary:#4338ca; --primary-dark:#30258f; --lavender:#eeedff; --radius:1.35rem; --shadow:0 18px 50px rgba(24,32,62,.09); --font:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:5.5rem; }
body { margin:0; background:var(--white); color:var(--ink); font-family:var(--font); font-size:16px; line-height:1.6; }
body.menu-open { overflow:hidden; }
a { color:inherit; text-decoration:none; } button, input, textarea { font:inherit; } button { cursor:pointer; }
.container { width:min(1120px, calc(100% - 40px)); margin:0 auto; }.section { padding:7rem 0; }.skip-link { position:fixed; left:1rem; top:-5rem; z-index:100; padding:.65rem 1rem; border-radius:.5rem; background:var(--ink); color:#fff; }.skip-link:focus { top:1rem; }
.site-header { position:sticky; top:0; z-index:50; border-bottom:1px solid transparent; background:rgba(255,255,255,.76); backdrop-filter:blur(14px); transition:box-shadow .25s, border-color .25s; }.site-header.is-scrolled { border-color:var(--line); box-shadow:0 5px 18px rgba(23,32,54,.05); }.nav { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; }.brand { display:inline-flex; align-items:center; gap:.65rem; font-weight:760; letter-spacing:-.03em; font-size:1.12rem; }.brand-mark { display:grid; place-items:center; width:31px; height:31px; border-radius:9px; background:linear-gradient(145deg,#6159e7,#31248e); color:#fff; font-family:Georgia,serif; font-size:1.18rem; font-weight:700; }.nav-links { display:flex; align-items:center; gap:1.7rem; font-size:.9rem; font-weight:650; color:#4b5569; }.nav-link { padding:.5rem 0; position:relative; }.nav-link::after { content:""; position:absolute; bottom:.16rem; left:0; width:0; height:2px; border-radius:9px; background:var(--primary); transition:width .22s; }.nav-link:hover,.nav-link.active { color:var(--primary-dark); }.nav-link:hover::after,.nav-link.active::after { width:100%; }.menu-toggle { display:none; padding:.55rem; border:0; border-radius:.55rem; background:transparent; }.menu-toggle span { display:block; width:22px; height:2px; margin:4px; border-radius:2px; background:var(--ink); }.button { display:inline-flex; align-items:center; justify-content:center; gap:.55rem; min-height:48px; padding:.75rem 1.1rem; border:1px solid transparent; border-radius:.7rem; font-weight:700; font-size:.93rem; transition:transform .2s, background .2s, border-color .2s, box-shadow .2s; }.button:hover { transform:translateY(-2px); }.button:focus-visible,.menu-toggle:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid rgba(79,70,229,.35); outline-offset:3px; }.button-primary { color:#fff; background:var(--primary); box-shadow:0 10px 20px rgba(67,56,202,.22); }.button-primary:hover { background:var(--primary-dark); }.button-secondary { border-color:#d9ddea; color:var(--ink); background:#fff; }.button-secondary:hover { border-color:#b9bce0; background:#fbfbff; }.button-small { min-height:39px; padding:.5rem .8rem; font-size:.85rem; }
.hero { overflow:hidden; position:relative; padding:6.5rem 0 7rem; background:linear-gradient(130deg,#fbfbff 10%,#f7f7ff 58%,#eff0ff); }.hero::before { content:""; position:absolute; width:36rem; height:36rem; top:-22rem; left:-13rem; border-radius:50%; background:rgba(183,180,255,.24); filter:blur(5px); }.hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center; position:relative; }.eyebrow { margin:0 0 1rem; color:var(--primary); text-transform:uppercase; letter-spacing:.13em; font-size:.72rem; font-weight:800; }.hero h1,.section-heading h2,.values h2,.contact h2,.policy-hero h1 { margin:0; color:#151c31; font-weight:780; line-height:1.04; letter-spacing:-.055em; }.hero h1 { max-width:650px; font-size:clamp(2.8rem,5vw,4.7rem); }.hero h1 span { color:var(--primary); }.hero-text { max-width:580px; margin:1.55rem 0 2rem; font-size:1.1rem; color:var(--muted); }.hero-actions { display:flex; flex-wrap:wrap; gap:.75rem; }
.hero-art { position:relative; min-height:450px; display:grid; place-items:center; }.phone { position:relative; z-index:2; width:220px; padding:10px; border:7px solid #17203b; border-radius:34px; background:#17203b; box-shadow:18px 28px 55px rgba(49,42,130,.25), inset 0 0 0 1px rgba(255,255,255,.25); transform:rotate(5deg); }.phone-speaker { width:67px; height:6px; margin:0 auto 8px; border-radius:4px; background:#37415f; }.phone-screen { min-height:385px; overflow:hidden; padding:12px; border-radius:22px; background:linear-gradient(150deg,#fbfbff,#e5e7ff); }.app-top { display:flex; align-items:center; gap:8px; }.mini-logo { display:grid; place-items:center; width:21px; height:21px; border-radius:7px; background:var(--primary); color:#fff; font:700 .8rem Georgia,serif; }.top-line { width:55px; height:5px; border-radius:4px; background:#d0d3eb; }.top-dot { width:7px; height:7px; margin-left:auto; border-radius:50%; background:#8f8be7; }.screen-greeting { margin:28px 0 16px; font-size:1.3rem; font-weight:760; letter-spacing:-.06em; }.screen-greeting span { color:var(--primary); }.screen-card { position:relative; overflow:hidden; padding:16px; border-radius:15px; color:#fff; background:linear-gradient(135deg,#5445d5,#30238e); }.screen-card::after { content:""; position:absolute; width:100px; height:100px; right:-43px; bottom:-50px; border:15px solid rgba(255,255,255,.15); border-radius:50%; }.card-label { display:block; opacity:.65; font-size:.52rem; letter-spacing:.13em; font-style:normal; }.screen-card strong { display:block; position:relative; z-index:1; margin-top:7px; font-size:1.1rem; letter-spacing:-.04em; }.screen-card i { display:block; width:38px; height:5px; margin-top:17px; border-radius:4px; background:#a8a3ff; }.screen-row { display:flex; align-items:center; gap:9px; margin-top:13px; padding:10px 6px; font-size:.68rem; font-weight:650; }.screen-row b { width:20px; height:20px; border-radius:7px; background:#d4d6ed; }.screen-row:nth-of-type(4) b { background:#bcb9ff; }.screen-row em { margin-left:auto; color:#8c89ab; font-size:1rem; font-style:normal; }.screen-nav { display:flex; justify-content:space-around; margin-top:30px; }.screen-nav i { width:9px; height:9px; border-radius:50%; background:#cdd0e1; }.screen-nav i.selected { background:var(--primary); box-shadow:0 0 0 4px rgba(67,56,202,.13); }.art-orbit { position:absolute; width:340px; height:340px; border:1px solid rgba(82,73,210,.16); border-radius:50%; }.orbit-one { transform:translate(-18px,13px); }.orbit-two { width:430px; height:430px; transform:translate(32px,-18px); }.floating-chip { position:absolute; z-index:3; display:flex; align-items:center; gap:.45rem; padding:.65rem .8rem; border:1px solid rgba(255,255,255,.82); border-radius:.75rem; background:rgba(255,255,255,.86); box-shadow:0 12px 30px rgba(40,37,105,.12); color:#3d4561; font-size:.72rem; font-weight:750; backdrop-filter:blur(8px); }.floating-chip span { color:var(--primary); }.chip-one { top:20%; right:0; }.chip-two { bottom:18%; left:0; }
.about { background:#fff; }.section-heading { max-width:675px; margin-bottom:3rem; }.section-heading h2,.values h2,.contact h2 { font-size:clamp(2.15rem,4vw,3.15rem); }.section-heading h2 { margin-bottom:1rem; }.section-heading > p:not(.eyebrow),.values-intro > p:not(.eyebrow),.contact-copy > p:not(.eyebrow) { margin:0; color:var(--muted); font-size:1.02rem; }.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }.feature-card { padding:1.75rem; border:1px solid var(--line); border-radius:var(--radius); background:#fff; transition:transform .25s,box-shadow .25s,border-color .25s; }.feature-card:hover { transform:translateY(-5px); border-color:#d8d6ff; box-shadow:var(--shadow); }.feature-icon { display:grid; place-items:center; width:43px; height:43px; margin-bottom:1.35rem; border-radius:12px; background:var(--lavender); color:var(--primary); font-size:1.28rem; }.icon-mobile::after { content:""; width:13px; height:21px; border:2px solid var(--primary); border-radius:4px; }.icon-tools::before,.icon-tools::after { content:""; position:absolute; width:17px; height:6px; border-radius:5px; background:var(--primary); transform:rotate(45deg); }.icon-tools { position:relative; }.icon-tools::after { transform:rotate(-45deg); }.feature-card h3,.app-card h3,.value-card h3 { margin:0 0 .55rem; font-size:1.1rem; letter-spacing:-.03em; }.feature-card p,.app-card p,.value-card p { margin:0; color:var(--muted); font-size:.91rem; }
.apps { background:var(--surface); }.split-heading { max-width:none; display:grid; grid-template-columns:1fr 1fr; align-items:end; gap:2rem; }.split-heading h2 { margin-bottom:0; }.app-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.3rem; }.app-card { min-height:300px; padding:1.8rem; border:1px solid #e3e5ee; border-radius:var(--radius); background:#fff; transition:transform .25s,box-shadow .25s; }.app-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }.app-card-top { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:1.5rem; }.app-icon { display:grid; place-items:center; width:56px; height:56px; border-radius:16px; color:#fff; font-size:1.7rem; font-weight:300; }.app-icon-one { background:linear-gradient(145deg,#6a5cf0,#31248e); }.app-icon-two { background:linear-gradient(145deg,#19a7ae,#146f92); }.status { padding:.34rem .55rem; border-radius:20px; background:#f1f2f7; color:#5e6577; text-transform:uppercase; letter-spacing:.08em; font-size:.61rem; font-weight:800; }.app-card h3 { font-size:1.35rem; }.app-card-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.85rem; margin-top:2.1rem; }.store-button { display:inline-flex; align-items:center; gap:.5rem; padding:.4rem .65rem; border:0; border-radius:.45rem; background:#1d2333; color:#fff; opacity:.54; cursor:not-allowed; text-align:left; line-height:1.05; }.store-button > span:first-child { font-size:1.25rem; }.store-button small { display:block; font-size:.45rem; letter-spacing:.06em; }.store-button > span:last-child { font-size:.75rem; font-weight:650; }.privacy-placeholder { color:#747b8d; font-size:.75rem; }
.values { background:#171d33; color:#fff; }.values h2 { color:#fff; }.values .eyebrow { color:#b9b5ff; }.values-layout { display:grid; grid-template-columns:.75fr 1.25fr; gap:5rem; align-items:start; }.values-intro { position:sticky; top:110px; }.values-intro > p:not(.eyebrow) { color:#c4cad9; }.value-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }.value-card { min-height:180px; padding:1.5rem; border:1px solid rgba(255,255,255,.12); border-radius:1.15rem; background:rgba(255,255,255,.045); }.value-number { display:block; margin-bottom:2.1rem; color:#a6a1ff; font-size:.75rem; font-weight:750; letter-spacing:.09em; }.value-card h3 { font-size:1.08rem; }.value-card p { color:#c6cbda; font-size:.86rem; }
.contact { background:linear-gradient(135deg,#f3f3ff,#fff); }.contact-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:5rem; align-items:start; }.contact-copy h2 { margin-bottom:1rem; }.contact-copy address { display:grid; gap:.25rem; margin-top:2rem; font-style:normal; }.contact-copy address strong { font-size:1.05rem; }.contact-copy address span { color:var(--muted); font-size:.9rem; }.contact-copy address a { width:max-content; margin-top:.5rem; color:var(--primary); font-weight:720; }.contact-form { padding:1.7rem; border:1px solid var(--line); border-radius:var(--radius); background:#fff; box-shadow:var(--shadow); }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }.field { display:grid; gap:.4rem; margin-bottom:1rem; }.field label { color:#30384d; font-size:.8rem; font-weight:750; }.field input,.field textarea { width:100%; padding:.72rem .8rem; border:1px solid #d9ddea; border-radius:.6rem; background:#fff; color:var(--ink); resize:vertical; }.field input:focus,.field textarea:focus { border-color:var(--primary); outline:0; box-shadow:0 0 0 3px rgba(67,56,202,.12); }.form-note,.form-feedback { min-height:1.4rem; margin:.1rem 0 1rem; color:var(--muted); font-size:.76rem; }.form-feedback { margin:.7rem 0 0; color:var(--primary-dark); font-weight:650; }
.site-footer { padding:3.3rem 0 1.2rem; background:#111729; color:#e9ebf2; }.footer-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:2rem; padding-bottom:3rem; }.footer-brand { color:#fff; }.site-footer p { margin:.8rem 0 0; color:#aeb6c7; font-size:.88rem; }.site-footer .legal-line { max-width:330px; color:#929bae; font-size:.72rem; line-height:1.5; }.footer-links { display:grid; grid-template-columns:repeat(2,max-content); align-content:start; gap:.55rem 2.1rem; font-size:.86rem; }.footer-links a:hover,.footer-contact a:hover,.footer-bottom a:hover { color:#bcb8ff; }.footer-contact { display:grid; justify-content:end; align-content:start; gap:.4rem; color:#aeb6c7; font-size:.85rem; text-align:right; }.footer-contact a { color:#fff; }.footer-bottom { display:flex; justify-content:space-between; gap:1rem; padding-top:1.2rem; border-top:1px solid rgba(255,255,255,.12); color:#9ca5b9; font-size:.78rem; }.footer-bottom a { color:#d6d9e5; }.compact-footer { padding-top:1.2rem; }.compact-footer .footer-bottom { border:0; }
.policy-hero { padding:6rem 0 3.5rem; background:linear-gradient(130deg,#fafaff,#eeeefe); }.policy-hero h1 { font-size:clamp(2.7rem,5vw,4.4rem); }.policy-hero p:last-child { margin:1.2rem 0 0; color:var(--muted); }.policy-content { padding:4rem 0 6rem; }.policy-layout { display:grid; grid-template-columns:220px minmax(0,720px); gap:5rem; align-items:start; }.policy-nav { position:sticky; top:105px; display:grid; gap:.15rem; padding-left:.8rem; border-left:1px solid var(--line); }.policy-nav a { padding:.3rem .6rem; color:var(--muted); font-size:.79rem; }.policy-nav a:hover { color:var(--primary); }.policy-copy { max-width:720px; }.policy-lead { margin:0 0 2.8rem; color:#374056; font-size:1.15rem; }.policy-copy section { padding:1.65rem 0; border-top:1px solid var(--line); }.policy-copy h2 { margin:0 0 .65rem; color:#202940; font-size:1.38rem; letter-spacing:-.035em; }.policy-copy p { margin:.55rem 0; color:#596378; }.policy-copy a { color:var(--primary); font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.reveal { opacity:0; transform:translateY(16px); transition:opacity .6s ease,transform .6s ease; }.reveal.is-visible { opacity:1; transform:none; }.reveal:nth-child(2) { transition-delay:.07s; }.reveal:nth-child(3) { transition-delay:.14s; }
@media (max-width:800px) { .section { padding:5.4rem 0; }.hero { padding:4.8rem 0 5.5rem; }.hero-grid,.values-layout,.contact-grid { grid-template-columns:1fr; }.hero-copy { text-align:center; }.hero-copy .hero-text { margin-left:auto; margin-right:auto; }.hero-actions { justify-content:center; }.hero-art { min-height:400px; margin-top:.5rem; }.chip-one { right:2%; }.chip-two { left:2%; }.values-layout,.contact-grid { gap:2.7rem; }.values-intro { position:static; }.split-heading { grid-template-columns:1fr; gap:.9rem; }.split-heading > p { max-width:620px; }.policy-layout { grid-template-columns:1fr; gap:2rem; }.policy-nav { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); padding:0; border:0; }.policy-nav a { padding:.35rem 0; }.footer-grid { grid-template-columns:1fr 1fr; }.footer-grid > :first-child { grid-column:1/-1; }.footer-contact { justify-content:start; text-align:left; }.nav-links { gap:1rem; } }
@media (max-width:600px) { .container { width:min(100% - 32px,1120px); }.nav { min-height:67px; }.menu-toggle { display:block; }.nav-links { position:absolute; top:calc(100% + 1px); right:0; left:0; display:none; padding:1rem 1rem 1.25rem; border-bottom:1px solid var(--line); background:#fff; box-shadow:0 14px 20px rgba(23,32,54,.06); }.nav-links.is-open { display:grid; gap:.25rem; }.nav-link { padding:.72rem .35rem; }.nav-link::after { display:none; }.hero h1 { font-size:clamp(2.55rem,13vw,3.4rem); }.hero-text { font-size:1rem; }.hero-art { min-height:358px; transform:scale(.87); transform-origin:top center; margin-bottom:-38px; }.phone { width:205px; }.art-orbit { width:310px; height:310px; }.orbit-two { width:370px; height:370px; }.feature-grid,.app-grid,.value-grid { grid-template-columns:1fr; }.feature-card,.app-card { padding:1.45rem; }.value-card { min-height:auto; }.value-number { margin-bottom:1.5rem; }.form-row { grid-template-columns:1fr; gap:0; }.contact-form { padding:1.2rem; }.footer-grid { grid-template-columns:1fr; gap:1.7rem; }.footer-grid > :first-child { grid-column:auto; }.footer-links { grid-template-columns:repeat(2,max-content); }.footer-bottom { flex-direction:column; }.policy-hero { padding:4.4rem 0 2.5rem; }.policy-content { padding:3rem 0 4rem; }.policy-nav { grid-template-columns:1fr; }.policy-copy h2 { font-size:1.25rem; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition-duration:.01ms!important; animation-duration:.01ms!important; } }
