:root{--bg:#12233d;--panel:#1a2e4b;--text:#f4f3f7;--muted:#a9aab5;--violet:#bb9aff;--blue:#a8dcf1;--line:#ffffff18}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}header{height:98px;margin:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{font-size:21px;font-weight:800;letter-spacing:2px;display:flex;align-items:center;gap:13px}.brand svg{width:35px;fill:none;stroke:var(--text);stroke-width:2}.brand-dot{font-size:10px;align-self:flex-start;margin:10px 0 0 -8px}nav{display:flex;align-items:center;gap:34px;font-size:13px}nav a:hover,.text-link:hover{color:var(--violet)}.nav-contact{border:1px solid #ffffff35;border-radius:30px;padding:9px 19px}.nav-contact span{margin-left:20px}#menu{display:none}.hero{min-height:730px;position:relative;padding:113px 6% 90px;overflow:hidden}.hero-copy{position:relative;z-index:2;width:65%}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2px;color:var(--muted);margin:0 0 26px}.signal{display:inline-block;width:6px;height:6px;background:var(--blue);border-radius:50%;margin-right:10px;box-shadow:0 0 12px #a8dcf170}h1{font-size:clamp(40px,4.5vw,70px);letter-spacing:-3px;line-height:1.12;font-weight:500;margin:0 0 28px}em{font-style:normal;color:var(--violet)}.intro{font-size:15px;color:var(--muted);max-width:460px;line-height:1.9;margin-bottom:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;background:#ece8f6;color:#1a1721;padding:14px 23px;border-radius:5px;font-size:13px;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:var(--violet)}.text-link{font-size:13px;display:inline-flex;gap:20px;align-items:center}.hero .text-link{margin-left:28px}.hero-bottom{position:absolute;bottom:26px;left:6%;right:6%;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;font-size:9px;letter-spacing:2px;color:var(--muted)}.hero-art{position:absolute;width:600px;height:600px;right:-20px;top:22px;opacity:.9}.halo{position:absolute;inset:0;background:radial-gradient(ellipse,#9670c426,transparent 66%)}.orb{position:absolute;top:100px;left:120px;width:340px;height:340px;border-radius:50%;background:repeating-radial-gradient(ellipse at 30% 25%,transparent 0 5px,#baa2e533 6px 7px,transparent 8px 11px),radial-gradient(circle at 28% 20%,#c8edf02b,#7e62a623 43%,#12233d 72%);box-shadow:inset 12px 9px 32px #bb9aff33,inset -22px -10px 26px #000,0 0 60px #9b79f011;transform:rotate(-30deg);animation:float 10s ease-in-out infinite}.orb-inner{position:absolute;inset:35px;border-radius:50%;background:repeating-linear-gradient(15deg,transparent 0 13px,#d4c3ff13 14px 15px);mask-image:radial-gradient(circle,#000,transparent 68%)}.orbit{position:absolute;left:56px;top:216px;width:477px;height:120px;border:1px solid #c6b4ec55;border-radius:50%;transform:rotate(-34deg);box-shadow:0 -1px 8px #a8dcf126}.orbit-two{transform:rotate(54deg);height:170px;border-color:#a8dcf126}.art-coordinate,.art-caption{position:absolute;color:#a9aab570;font-size:8px;letter-spacing:2px}.art-coordinate{top:66px;right:86px}.art-caption{bottom:84px;left:180px}.section{padding:105px 6%;border-bottom:1px solid var(--line)}h2{font-size:clamp(32px,3.3vw,48px);font-weight:500;line-height:1.18;letter-spacing:-1.6px;margin:0 0 24px}.section-heading>p:last-child{max-width:475px;color:var(--muted);font-size:15px}.software-panel{margin-top:45px;padding:50px;background:linear-gradient(115deg,#213b5a,#1a2e4b);border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}h3{font-size:28px;font-weight:500;line-height:1.25;letter-spacing:-.6px;margin:20px 0}p{color:var(--muted)}.badge{font-size:9px;letter-spacing:1.5px;border:1px solid #bda5f34d;border-radius:30px;padding:7px 12px;color:#d0baff}.software-panel p{font-size:14px}.abstract-app{height:255px;border:1px solid #ffffff25;border-radius:10px;background:#142840cc;position:relative;transform:perspective(900px) rotateY(9deg) rotateX(3deg);box-shadow:0 22px 40px #0003}.app-bar{height:38px;border-bottom:1px solid var(--line);padding-left:15px;display:flex;align-items:center;gap:5px}.app-bar i{width:5px;height:5px;border-radius:50%;background:#686574}.app-lines{padding:28px}.app-lines b{display:block;background:#ffffff0b;width:40%;height:7px;margin-bottom:15px;border-radius:3px}.app-lines b:nth-child(2){width:27%}.app-symbol{position:absolute;right:35px;bottom:20px;font-size:95px;font-weight:800;color:#bda5f3;letter-spacing:-10px;text-shadow:0 0 50px #9566ff33}.app-symbol span{font-size:50px;color:var(--blue);vertical-align:top;letter-spacing:0}.split{display:flex;justify-content:space-between;align-items:end;gap:70px}.split>p{max-width:350px!important}.empty-project{margin-top:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;display:flex;align-items:center;gap:30px}.empty-project .number{font-size:11px;color:var(--muted)}.empty-project h3{font-size:20px;margin:0 0 6px}.empty-project p{margin:0;font-size:13px}.empty-project .badge{margin-left:auto;white-space:nowrap}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.principles span{font-size:11px;color:var(--violet)}.principles h3{font-size:18px;margin:15px 0 10px}.principles p{font-size:13px}.about{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.about p{font-size:14px;max-width:510px}.about .about-lead{font-size:20px;color:#dfdde7}.founder{display:flex;gap:15px;align-items:center;margin-top:30px;font-size:14px}.avatar{display:grid;place-items:center;width:43px;height:43px;background:#bda5f316;border:1px solid #bda5f333;border-radius:50%;color:var(--violet)}small{display:block;color:var(--muted);font-size:11px}.manifesto{border:1px solid var(--line);padding:40px;background:radial-gradient(ellipse at 100% 0,#8b68bb1c,transparent 65%);min-height:380px;display:flex;flex-direction:column;justify-content:space-between}.manifesto span{font-size:9px;letter-spacing:2px;color:var(--muted)}.manifesto p{font-size:39px;letter-spacing:-1.5px;line-height:1.4;color:var(--text)}.contact{text-align:center;background:radial-gradient(ellipse at 50% 100%,#8260af17,transparent 65%)}.contact p{font-size:15px}.contact-note{display:inline-block;margin-top:20px;border:1px solid var(--line);padding:13px 20px;border-radius:5px;font-size:13px}.contact .small{font-size:11px;margin-top:20px}footer{padding:40px 6% 25px;display:flex;align-items:center;gap:35px;flex-wrap:wrap}footer .brand{font-size:17px}footer>span{font-size:11px;color:var(--muted)}footer>div{margin-left:auto;display:flex;gap:25px;font-size:11px}footer button{border:0;background:none;padding:0;color:var(--muted)}footer p{width:100%;font-size:10px;margin-top:8px;display:flex;justify-content:space-between}.preview-label{letter-spacing:1px}dialog{background:var(--panel);color:var(--text);border:1px solid #ffffff35;border-radius:12px;padding:42px;max-width:620px;width:calc(100% - 32px)}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}dialog h2{font-size:30px}dialog p{font-size:14px}.close{position:absolute;top:12px;right:17px;font-size:27px;border:0;background:none}.skip{position:fixed;top:-100px;left:20px;z-index:20;background:white;color:black;padding:10px}.skip:focus{top:10px}:focus-visible{outline:2px solid var(--blue);outline-offset:6px}@keyframes float{50%{transform:translateY(-12px) rotate(-25deg)}}@media(min-width:1600px){header,main,footer{max-width:1500px;margin-left:auto;margin-right:auto}.hero-art{right:30px}}@media(max-width:900px){nav{gap:18px}.hero-copy{width:80%}.hero-art{right:-220px;opacity:.55}h1{font-size:53px}.software-panel{gap:35px;padding:30px}.about{gap:40px}.manifesto{padding:28px}.manifesto p{font-size:32px}.principles{gap:25px}}@media(max-width:640px){header{height:78px;margin:0 6%}.brand{font-size:18px}#menu{display:block;background:none;border:1px solid var(--line);padding:5px 10px;font-size:12px;border-radius:4px}nav{display:none;position:absolute;left:0;right:0;top:77px;background:#1a2e4b;padding:20px;flex-direction:column;align-items:stretch;border:1px solid var(--line)}nav.open{display:flex}.hero{min-height:760px;padding-top:70px}.hero-copy{width:100%}h1{font-size:41px;letter-spacing:-1.7px}.intro{font-size:14px;max-width:310px}.hero-art{top:270px;right:-245px;opacity:.35;pointer-events:none}.hero .text-link{margin:22px 0 0;display:flex;width:max-content}.hero-bottom{font-size:7px;letter-spacing:1px;gap:12px}.section{padding:68px 6%}.software-panel,.about{grid-template-columns:1fr;gap:35px}.abstract-app{height:200px}.software-panel{padding:24px}.split{display:block}.empty-project{align-items:flex-start;gap:15px;flex-wrap:wrap}.empty-project .badge{margin-left:28px}.principles{grid-template-columns:1fr;gap:18px}.principles>div{border-bottom:1px solid var(--line);padding-bottom:12px}.manifesto{min-height:320px}footer{gap:18px}footer>span{width:100%}footer>div{margin:8px 0;width:100%;justify-content:space-between}dialog{padding:35px 25px}.contact h2{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

nav a[aria-current=location]{color:var(--violet)}

.contact-mail{margin-top:24px}

.empty-project>div{flex:1;min-width:0;max-width:760px}.empty-project p{line-height:1.8}.empty-project .badge{align-self:flex-start;margin-top:4px}@media(max-width:900px){.empty-project{flex-wrap:wrap}.empty-project>div{flex-basis:calc(100% - 50px)}.empty-project .badge{margin-left:43px}}

.project-detail{margin-top:16px;color:var(--violet)}.product-hero{background:radial-gradient(ellipse at 90% 30%,#bb9aff16,transparent 60%)}.product-name{font-size:22px;color:var(--violet);margin:30px 0 15px}.product-hero h1{font-size:clamp(38px,5vw,70px);max-width:1000px}.product-intro{font-size:20px;max-width:720px;line-height:1.8}.product-hero .small{font-size:12px;max-width:650px;margin-bottom:30px}.product-features{grid-template-columns:repeat(2,1fr)}.product-features h3{font-size:22px}.product-features p{font-size:15px}@media(max-width:640px){nav.detail-nav{position:static;display:flex;flex-direction:row;background:none;border:none;padding:0;gap:15px;font-size:11px}nav.detail-nav .nav-contact{display:none}.product-features{grid-template-columns:1fr}.product-intro{font-size:17px}.product-name{font-size:20px}}

.product-icon{display:block;width:80px;height:80px;object-fit:contain;border-radius:18px;margin-top:30px;box-shadow:0 15px 35px #0003}.product-icon+.product-name{margin-top:18px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:35px}.gallery-grid figure{margin:0}.gallery-grid img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--line);transition:transform .2s}.gallery-grid a:hover img{transform:translateY(-4px)}.gallery-grid figcaption{font-size:12px;color:var(--muted);margin-top:15px}.product-gallery>p{max-width:760px}.product-gallery .small{font-size:11px}@media(max-width:640px){.gallery-grid{grid-template-columns:1fr;gap:35px;max-width:330px;margin-left:auto;margin-right:auto}}

.viewer-open{overflow:hidden}.image-viewer{padding:66px 20px 20px;max-width:850px;width:calc(100% - 24px);max-height:92dvh;overflow:auto}.image-viewer img{display:block;width:100%;height:auto}.viewer-close{position:sticky;top:0;display:block;margin:-48px 0 18px auto;background:#ece8f6;color:#12233d;border:0;border-radius:5px;padding:10px 16px;z-index:2}.viewer-caption{font-size:13px}.image-viewer::backdrop{background:#071020ed}

.legal-page{max-width:900px;margin:auto}.legal-page h1{font-size:42px;letter-spacing:-1.5px}.legal-page h2{font-size:24px;letter-spacing:-.5px;margin-top:35px}.legal-page p{font-size:15px}.legal-page a{text-decoration:underline;text-underline-offset:4px;color:var(--blue)}.legal-draft{padding:20px;border:1px solid #bb9aff55;border-radius:8px;background:#bb9aff0c}.legal-page .muted{font-size:12px}
