@import url("/css/gambarino.css");@import url("/css/satoshi.css");@import url("https://fonts.googleapis.com/css2?family=BIZ+UDGothic:wght@400;700&family=Shippori+Mincho+B1:wght@400;500;600;700;800&family=Tangerine:wght@400;700&display=swap");@font-face{font-family:Nanopix;src:url(/nanopix.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}:root{--font-logo:"Tangerine",cursive;--font-heading:"Gambarino-Regular",serif;--font-body:"Satoshi-Regular",sans-serif;--color-background:#fafafa;--color-text:#000;--color-primary:#4d94ff --color-secondary:#ffa726;--border-radius:6px;--shadow-elevation:0 2px 10px rgba(0,0,0,.1);--glassmorphism:hsla(0,0%,100%,.5);--glassmorphism-border:hsla(0,0%,100%,.25);--glassmorphism-blur:blur(12px)}html{scroll-behavior:smooth}body,html{font-family:var(--font-body);background-color:var(--color-background);color:var(--color-text)}body{margin:0;padding:0;line-height:1.6;overflow-x:hidden}.app-container{overflow:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600}button,input,select,textarea{font-family:var(--font-body)}.chat-input,.react-modal,.tab-container,.toolbar,button,nav{font-family:var(--font-heading)}*,:after,:before{box-sizing:border-box}.logo-text{font-family:var(--font-logo);font-size:2.2em;letter-spacing:.01em;font-weight:700}.logo-text.smaller{font-size:1.8em}.glassmorphic{background-color:var(--glassmorphism);-webkit-backdrop-filter:var(--glassmorphism-blur);backdrop-filter:var(--glassmorphism-blur);border:1px solid var(--glassmorphism-border)}.btn,.glassmorphic{border-radius:var(--border-radius)}.btn{padding:6px 12px;cursor:pointer;font-family:var(--font-heading);transition:all .2s ease}.btn-primary{background-color:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}.btn-secondary{background-color:var(--color-secondary);color:#fff;border:1px solid var(--color-secondary)}.btn-vista{background:linear-gradient(180deg,#fff 0,#f0f0f0 50%,#e8e8e8);color:#333;border:1px solid #d8d8d8;padding:6px 16px;border-radius:var(--border-radius);font-family:var(--font-heading);cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.05),inset 0 1px 0 #fff;text-shadow:0 1px 0 #fff;transition:all .2s ease}.btn-vista:hover{background:linear-gradient(180deg,#f8f8f8 0,#e8e8e8 50%,#e0e0e0)}.btn-vista:active{background:linear-gradient(180deg,#e8e8e8 0,#f0f0f0);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.react-flow__pane{background-color:var(--color-background)}.dropdown-option{padding:12px 20px!important;cursor:pointer;text-align:center;transition:background-color .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;z-index:10000;outline:none}.dropdown-option:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:-1}.dropdown-option:hover{background:linear-gradient(180deg,#f0f0f0,#e0e0e0)!important}.dropdown-option:active{background:linear-gradient(180deg,#e0e0e0,#d0d0d0)!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.react-flow__controls{box-shadow:var(--shadow-elevation);border-radius:var(--border-radius);background-color:var(--glassmorphism);-webkit-backdrop-filter:var(--glassmorphism-blur);backdrop-filter:var(--glassmorphism-blur);border:1px solid var(--glassmorphism-border)}.react-flow__controls-button{width:40px;height:40px;font-size:18px;padding:5px;border-bottom:1px solid var(--glassmorphism-border)!important;background:linear-gradient(180deg,#fff 0,#f0f0f0)}.react-flow__controls-button:hover{background:linear-gradient(180deg,#f8f8f8 0,#e8e8e8)}.react-flow__controls-button svg{max-width:18px;max-height:18px}.image-node{border:none;transition:transform .2s ease}.image-node:hover{transform:scale(1.02)}.image-node.selected{outline:4px solid rgba(74,144,226,.25);transform:scale(1.005);z-index:5}.node-top-bar{height:24px;display:flex;align-items:center;justify-content:space-between;background:hsla(0,0%,100%,.267);padding:0 10px}.file-loader-node .node-top-bar{color:#000;border-top-left-radius:6px;border-top-right-radius:6px}.generate-3d-node .active-element{outline:2px solid var(--color-primary);transform:scale(1.01);transition:all .2s ease}.chat-input-container{position:relative;border-top:1px solid hsla(0,0%,86%,.8);z-index:10;background:var(--color-background);padding:12px}.chat-tab{padding:8px 16px;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s ease}.chat-tab.active{border-bottom:2px solid var(--color-primary);font-weight:500}.chat-tab:hover:not(.active){background-color:rgba(0,0,0,.03);border-bottom:2px solid rgba(0,0,0,.1)}.ReactModal__Overlay{opacity:0;transition:opacity .2s ease-in-out;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ReactModal__Overlay--after-open{opacity:1}.ReactModal__Overlay--before-close{opacity:0}.ReactModal__Content{transform:translateY(-10px);transition:transform .2s ease-in-out;background:linear-gradient(180deg,#fff 0,#f5f5f5)!important;padding:20px!important}.react-hot-toast{font-family:var(--font-body);color:var(--color-text);background:var(--color-background);border-radius:var(--border-radius);border:1px solid rgba(0,0,0,.1);padding:.5rem 1rem;box-shadow:var(--shadow-elevation)}.react-hot-toast h1,.react-hot-toast h2,.react-hot-toast h3,.react-hot-toast h4,.react-hot-toast h5,.react-hot-toast h6{font-family:var(--font-heading);margin-top:0;margin-bottom:.5rem}.react-contexify{font-family:var(--font-body);background-color:hsla(0,0%,100%,.9)!important;-webkit-backdrop-filter:var(--glassmorphism-blur);backdrop-filter:var(--glassmorphism-blur);border:1px solid hsla(0,0%,90%,.95);box-shadow:0 2px 10px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.08)!important;border-radius:var(--border-radius)!important;padding:6px 0!important;min-width:150px;transition:opacity .2s ease!important;opacity:.98!important}.react-contexify__item__content{font-family:var(--font-heading)!important;padding:7px 12px!important}.react-contexify__separator{margin:5px 0!important;background-color:hsla(0,0%,86%,.8)!important}.landing-container{display:flex;flex-direction:column;min-height:100vh;background-color:#fff}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:8px 40px;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid transparent;position:-webkit-sticky;position:sticky;top:0;z-index:100;transition:background-color .3s ease,border-bottom-color .3s ease,-webkit-backdrop-filter .3s ease;transition:background-color .3s ease,backdrop-filter .3s ease,border-bottom-color .3s ease;transition:background-color .3s ease,backdrop-filter .3s ease,border-bottom-color .3s ease,-webkit-backdrop-filter .3s ease}.landing-nav.scrolled{background:hsla(0,0%,100%,.65);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);-webkit-mask-image:linear-gradient(180deg,#000 50%,transparent);mask-image:linear-gradient(180deg,#000 50%,transparent)}.landing-nav .logo-container{display:flex;align-items:center;gap:8px}.landing-nav .logo{font-size:1.2rem}.nav-links{display:flex;align-items:center;gap:24px}.nav-links a{color:#333;text-decoration:none;font-family:var(--font-heading);font-size:.9rem;transition:color .2s ease}.nav-links a:hover{color:var(--color-primary)}.btn-sign-in{background:linear-gradient(180deg,#fff 0,#f0f0f0 50%,#e8e8e8);color:#333;border:1px solid #d8d8d8;padding:6px 15px;border-radius:var(--border-radius);font-family:var(--font-heading);cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.05),inset 0 1px 0 #fff;text-shadow:0 1px 0 #fff;transition:all .2s ease}.btn-sign-in:hover{background:linear-gradient(180deg,#f8f8f8 0,#e8e8e8 50%,#e0e0e0)}.btn-sign-in:active{background:linear-gradient(180deg,#e8e8e8 0,#f0f0f0);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.hero-section{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:16px 32px 0;position:relative;background-color:#fff;overflow:hidden;height:auto;z-index:0}.hero-section:before{background-image:url(/landing/bg-image.webp);background-size:cover;background-position:50%;background-repeat:no-repeat;transform:scaleY(-1);-webkit-mask-image:linear-gradient(180deg,#000 0,transparent);mask-image:linear-gradient(180deg,#000 0,transparent);z-index:1;scale:1.2;opacity:.85}.hero-section:after,.hero-section:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%}.hero-section:after{background:linear-gradient(180deg,#fff 0,hsla(0,0%,97%,.8));z-index:0}.hero-content{max-width:800px;z-index:2;display:flex;flex-direction:column;align-items:center;position:relative}.hero-content h1{font-size:2.4rem;margin-bottom:16px;margin-top:48px;font-weight:700;color:#333;text-shadow:0 1px 1px hsla(0,0%,100%,.7);text-align:center;line-height:1.2}.hero-subheading{font-family:var(--font-body);margin-bottom:24px;font-weight:400}.hero-content p,.hero-subheading{font-size:1.2rem;color:#555;margin-top:0;max-width:600px;text-align:center}.hero-content p{margin-bottom:16px}.btn-vista-blue{background:linear-gradient(180deg,#7ab5ff 0,#4d94ff 50%,#2d85ff);color:#fff;padding:10px 24px;border-radius:var(--border-radius);font-family:var(--font-heading);font-size:1.1rem;font-weight:600;border:1px solid #2e6ed1;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.3);text-shadow:0 -1px 0 rgba(0,0,0,.25);transition:all .2s ease;margin-bottom:15px}.btn-vista-blue:hover{background:linear-gradient(180deg,#6aa8f7 0,#3d88fa 50%,#1d78f5);transform:translateY(-1px);box-shadow:0 4px 6px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.3)}.btn-vista-blue:active{transform:translateY(1px);background:linear-gradient(180deg,#4d88d8 0,#2d6ed1 50%,#1d64c8);box-shadow:0 1px 2px rgba(0,0,0,.2),inset 0 1px 2px rgba(0,0,0,.1)}.btn-vista-lightblue{color:#333;padding:10px 24px;border-radius:var(--border-radius);font-family:var(--font-heading);font-size:1.1rem;font-weight:600;border:1px solid #a9c0d9;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.9);text-shadow:0 1px 0 hsla(0,0%,100%,.5);transition:all .2s ease;margin-bottom:15px}.btn-vista-lightblue,.btn-vista-lightblue:hover{background:linear-gradient(180deg,#e3f2fd,#bbdefb,#e3f2fd)}.btn-vista-lightblue:hover{transform:translateY(-1px);box-shadow:0 3px 5px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.9)}.btn-vista-lightblue:active{transform:translateY(1px);background:linear-gradient(180deg,#e3f2fd,#bbdefb,#e3f2fd);box-shadow:0 1px 3px rgba(0,0,0,.08),inset 0 1px 2px rgba(0,0,0,.08)}.hero-image-container{margin-top:0;overflow:hidden;z-index:1;width:100%;max-width:900px;-webkit-mask-image:linear-gradient(180deg,#000 50%,transparent);mask-image:linear-gradient(180deg,#000 50%,transparent)}.hero-image-container img{display:block;width:100%;height:auto}.landing-footer{background:hsla(0,0%,97%,.8);border-top:1px solid rgba(0,0,0,.1);padding:24px 40px;margin-top:auto}.footer-content{display:flex;flex-direction:column;align-items:center;gap:20px}.footer-content.horizontal{flex-direction:row;justify-content:space-between;align-items:center;gap:0;position:relative}.footer-logo{margin-bottom:10px}.footer-content.horizontal .footer-logo{margin-bottom:0}.footer-links{display:flex;gap:30px}.footer-content.horizontal .footer-links{margin-left:auto}.footer-links a{color:#555;text-decoration:none;font-family:var(--font-heading);font-size:.9rem;transition:color .2s ease}.footer-links a:hover{color:var(--color-secondary)}.copyright{font-size:.85rem;color:#888;margin-top:10px}.footer-content.horizontal .copyright{position:absolute;left:50%;transform:translateX(-50%);margin-top:0}.fade-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#fff;z-index:1000;animation:fadeIn .8s forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (min-width:768px){.hero-section{padding:20px 40px 0}.hero-content h1{font-size:3.2rem}}@media (max-width:767px){.landing-nav{padding:8px 20px}.hero-section{padding:16px 20px 0}.hero-content h1{font-size:2rem}.hero-content p{font-size:1rem}.nav-links{gap:12px}.footer-content.horizontal{flex-direction:column;align-items:center;gap:15px}.footer-content.horizontal .footer-logo{margin-bottom:5px}.footer-content.horizontal .copyright{position:static;transform:none;margin-top:10px}.footer-content.horizontal .footer-links{margin-left:0}}.features-section{padding:60px 24px;background:linear-gradient(180deg,hsla(0,0%,94%,.5),hsla(0,0%,97%,.5));position:relative;overflow:hidden}.features-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url(/landing/pattern-bg.png) repeat;opacity:.03;pointer-events:none}.features-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.features-content h2{font-family:var(--font-heading);font-size:2.2rem;font-weight:600;color:#333;text-align:center;margin-bottom:40px;text-shadow:0 1px 0 hsla(0,0%,100%,.8)}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;width:100%;max-width:1150px;margin:0 auto;grid-template-areas:"card1 card2 card3" "card4 card5 card6"}.features-grid>div:first-child{grid-area:card1}.features-grid>div:nth-child(2){grid-area:card2}.features-grid>div:nth-child(3){grid-area:card3}.features-grid>div:nth-child(4){grid-area:card4}.features-grid>div:nth-child(5){grid-area:card5}.features-grid>div:nth-child(6){grid-area:card6}@media (max-width:1024px){.features-grid{grid-template-columns:repeat(2,1fr);grid-template-areas:"card1 card2" "card3 card4" "card5 card6"}}@media (max-width:640px){.features-grid{grid-template-columns:1fr;grid-template-areas:"card1" "card2" "card3" "card4" "card5" "card6"}.features-section{padding:40px 16px}.features-content h2{font-size:1.8rem;margin-bottom:24px}}.feature-card{background:linear-gradient(180deg,hsla(0,0%,100%,.95) 0,hsla(0,0%,97%,.9) 50%,hsla(0,0%,94%,.85));border:1px solid hsla(0,0%,85%,.8);border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.08),inset 0 1px 0 #fff;overflow:hidden;transition:all .2s ease;cursor:pointer;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,hsla(0,0%,100%,.4),hsla(0,0%,100%,0));pointer-events:none;border-top-left-radius:8px;border-top-right-radius:8px}.feature-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,.1),0 2px 4px rgba(0,0,0,.08),inset 0 1px 0 #fff;border-color:hsla(0,0%,78%,.9)}.feature-image-container{position:relative;width:100%;padding-top:66.67%;overflow:hidden;background:linear-gradient(180deg,#f8f8f8,#efefef);border-bottom:1px solid #e0e0e0}.feature-image-container img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.feature-card:hover .feature-image-container img{transform:scale(1.05)}.feature-badge{position:absolute;top:10px;right:10px;background:linear-gradient(180deg,#e3f2fd,#bbdefb,#e3f2fd);color:#333;padding:3px 8px;border-radius:12px;font-size:12px;font-weight:700;box-shadow:0 1px 2px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.9);border:1px solid #a9c0d9;text-shadow:0 1px 0 hsla(0,0%,100%,.5);z-index:3}.feature-details{padding:16px;flex:1 1;display:flex;flex-direction:column;justify-content:space-between}.feature-details h3{font-family:var(--font-heading);margin:0 0 8px;font-size:1.1rem;font-weight:600;color:#333;text-shadow:0 1px 0 hsla(0,0%,100%,.8)}.feature-details p{margin:0;font-size:.9rem;color:#555;line-height:1.4;flex-grow:1}.feature-hover-button{display:flex;align-items:center;justify-content:center;margin-top:14px;opacity:0;transition:opacity .3s ease,height .3s ease,transform .3s ease;height:0;overflow:hidden;transform:translateY(-5px)}.feature-hover-button span{background:linear-gradient(180deg,#e3f2fd,#bbdefb,#e3f2fd);color:#333;padding:6px 14px;border-radius:5px;font-family:var(--font-heading);font-size:.9rem;font-weight:600;border:1px solid #a9c0d9;box-shadow:0 1px 3px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.9);text-shadow:0 1px 0 hsla(0,0%,100%,.5);transition:all .3s ease;position:relative;overflow:hidden;width:100%;text-align:center;letter-spacing:.2px}.feature-hover-button span:before{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,hsla(0,0%,100%,.3),hsla(0,0%,100%,0));pointer-events:none;border-bottom:1px solid hsla(0,0%,100%,.1)}.feature-card:hover .feature-hover-button{opacity:1;height:36px;transform:translateY(0)}.feature-card:hover .feature-hover-button span{transform:translateY(0)}.feature-card:hover .feature-hover-button span:before{opacity:1}.feature-card:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.06),inset 0 1px 0 #fff}.feature-card:active .feature-hover-button span{background:linear-gradient(180deg,#e3f2fd,#bbdefb,#e3f2fd);box-shadow:0 1px 3px rgba(0,0,0,.08),inset 0 1px 2px rgba(0,0,0,.08);transform:translateY(1px)}@keyframes fadeToBackgroundOverlay{0%{opacity:0}to{opacity:1}}@keyframes landingPageFadeIn{0%{opacity:0}to{opacity:1}}.landing-page-entry-animation{animation:landingPageFadeIn .5s ease-in-out forwards}