@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap");*,:after,:before{box-sizing:border-box}#bg-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#050510;color:#f0f0f8;overflow-x:hidden}.animate-on-scroll{opacity:0;transform:translateY(40px) scale(.97);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0) scale(1)}.animate-on-scroll.delay-1{transition-delay:.1s}.animate-on-scroll.delay-2{transition-delay:.2s}.animate-on-scroll.delay-3{transition-delay:.3s}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;padding:3rem 1.5rem;background:transparent}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 20% 30%,rgba(0,240,255,.12),transparent),radial-gradient(ellipse 60% 50% at 80% 70%,rgba(176,38,255,.1),transparent);pointer-events:none;z-index:0}.hero-content{max-width:680px;text-align:center;position:relative;z-index:2;backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);background:rgba(12,14,30,.55);padding:3rem 2.5rem;border-radius:1.75rem;border:1px solid rgba(0,240,255,.15);box-shadow:0 0 60px rgba(0,240,255,.06),0 30px 60px rgba(0,0,0,.45),inset 0 1px 0 hsla(0,0%,100%,.06);animation:heroFloat 6s ease-in-out infinite}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.hero h1{font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:800;margin-top:0;margin-bottom:1rem;letter-spacing:-.03em;background:linear-gradient(135deg,#fff,#00f0ff 50%,#b026ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.15}.hero p{font-size:1.1rem;color:rgba(224,224,240,.85);margin-bottom:2rem;line-height:1.6}.btn-primary{background:linear-gradient(135deg,#6c3bff,#00c8ff);border:none;color:#f0f0f8;padding:.8rem 2rem;border-radius:999px;font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;position:relative;overflow:hidden;box-shadow:0 0 20px rgba(108,59,255,.25),0 8px 24px rgba(0,0,0,.35);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.btn-primary:after{content:"";position:absolute;inset:-1px;border-radius:999px;background:linear-gradient(135deg,rgba(108,59,255,.3),rgba(0,200,255,.3));filter:blur(12px);z-index:-1;opacity:0;transition:opacity .3s ease}.btn-primary:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 0 30px rgba(108,59,255,.4),0 12px 32px rgba(0,0,0,.45);filter:brightness(1.1)}.btn-primary:hover:after{opacity:1}.btn-primary:active{transform:translateY(0) scale(.98)}.hero-content .btn-primary+.admin-cta,.hero-content .btn-primary+.btn-primary{margin-left:.75rem}.admin-cta{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1.4}.admin-cta,.btn-primary{vertical-align:middle}.btn-primary.loading{position:relative;display:inline-flex;align-items:center;gap:.5rem;cursor:wait;opacity:.9}.btn-primary.loading:before{content:"";width:.9rem;height:.9rem;border-radius:50%;border:2px solid hsla(0,0%,100%,.35);border-top-color:#fff;animation:spin .75s linear infinite}main{max-width:980px;margin:0 auto;padding:2.5rem 1.5rem 5rem}.section,main{position:relative;z-index:1}.section{margin-bottom:2.5rem;backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);background:rgba(12,14,30,.45);border-radius:1.5rem;padding:2rem 1.75rem 2.2rem;border:1px solid rgba(0,240,255,.1);box-shadow:0 0 40px rgba(0,240,255,.03),0 20px 40px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.04);transition:border-color .3s ease,box-shadow .3s ease}.section:hover{border-color:rgba(0,240,255,.2);box-shadow:0 0 50px rgba(0,240,255,.06),0 24px 48px rgba(0,0,0,.35),inset 0 1px 0 hsla(0,0%,100%,.06)}.top-feature-grid{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;grid-gap:1.25rem;gap:1.25rem;margin-bottom:2.5rem}.top-feature-item{width:100%;margin-bottom:0;min-width:0}.top-feature-grid>.section{margin-bottom:0}@media (min-width:601px){.top-feature-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.section h2{margin-top:0;margin-bottom:.85rem;font-size:1.4rem;font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,#fff,#00e0ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}#contact{text-align:center;background:transparent;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding-top:.5rem;padding-bottom:.5rem}#contact:hover{border-color:transparent;box-shadow:none}#contact-heading,#contact-text{text-align:center}#contact-text{max-width:760px;margin-left:auto;margin-right:auto}.booking-cta-section{text-align:center;background:radial-gradient(circle at 15% 20%,rgba(0,240,255,.08),transparent 55%),radial-gradient(circle at 85% 80%,rgba(176,38,255,.08),transparent 55%),rgba(12,14,30,.5)!important}.btn-book-spotlight{margin-top:.9rem;font-size:1rem;padding:.95rem 2.2rem;box-shadow:0 0 24px rgba(108,59,255,.3),0 14px 28px rgba(0,0,0,.4);animation:pulseGlow 2.5s ease-in-out infinite}@keyframes pulseGlow{0%,to{box-shadow:0 0 20px rgba(108,59,255,.25),0 10px 24px rgba(0,0,0,.35)}50%{box-shadow:0 0 35px rgba(0,200,255,.35),0 14px 32px rgba(0,0,0,.4)}}.section p{margin:.3rem 0;color:rgba(224,224,240,.8);line-height:1.6}.contact-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem;margin-top:1rem}.contact-action{display:inline-flex;align-items:center;justify-content:center;width:4.25rem;height:4.25rem;padding:0;border-radius:1.35rem;text-decoration:none;color:#f0f0f8;border:1px solid rgba(148,163,184,.25);box-shadow:0 18px 28px rgba(2,6,23,.34),0 6px 10px rgba(2,6,23,.18);transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease,filter .25s ease;position:relative;overflow:hidden;isolation:isolate;transform:perspective(400px) translateY(0) rotateX(0deg)}.contact-action:hover{transform:perspective(400px) translateY(-6px) rotateX(8deg) scale(1.05);box-shadow:0 28px 40px rgba(2,6,23,.45),0 12px 20px rgba(2,6,23,.28);filter:brightness(1.08)}.contact-action:active{transform:perspective(400px) translateY(1px) scale(.97);box-shadow:0 10px 16px rgba(2,6,23,.28),0 4px 8px rgba(2,6,23,.18)}.contact-action:before{inset:0;border-radius:inherit;background:radial-gradient(circle at 18% 16%,hsla(0,0%,100%,.8),hsla(0,0%,100%,.08) 20%,transparent 34%),radial-gradient(circle at 84% 18%,hsla(0,0%,100%,.5),transparent 24%),radial-gradient(circle at 50% 92%,hsla(0,0%,100%,.28),transparent 35%),linear-gradient(180deg,hsla(0,0%,100%,.22),transparent 36%,rgba(0,0,0,.08))}.contact-action:after,.contact-action:before{content:"";position:absolute;pointer-events:none;z-index:0}.contact-action:after{left:12%;right:12%;bottom:8%;height:18%;border-radius:999px;background:radial-gradient(circle,hsla(0,0%,100%,.24),hsla(0,0%,100%,0) 70%);filter:blur(7px);opacity:.8}.contact-action-linkedin{background:linear-gradient(135deg,#044f9f 10%,#0a66c2 52%,#55b7ff);border-color:rgba(169,218,255,.65);box-shadow:inset 0 1px 1px hsla(0,0%,100%,.45),inset 0 -8px 18px hsla(0,0%,100%,.14),inset 10px 14px 26px rgba(2,34,84,.4),inset -10px -14px 24px rgba(158,223,255,.12),0 12px 24px rgba(2,38,84,.38)}.contact-action-github{background:linear-gradient(135deg,#2f0b8f 10%,#5f23d8 52%,#a35cff);color:#fff;border-color:rgba(205,180,255,.65);box-shadow:inset 0 1px 1px hsla(0,0%,100%,.45),inset 0 -8px 18px hsla(0,0%,100%,.14),inset 10px 14px 26px rgba(22,4,79,.42),inset -10px -14px 24px rgba(216,180,255,.12),0 12px 24px rgba(41,10,109,.42)}.contact-action-github:after{inset:0;left:auto;right:auto;bottom:auto;height:auto;border-radius:inherit;background:radial-gradient(circle at 28% 32%,rgba(17,4,72,.38),transparent 36%),radial-gradient(circle at 72% 78%,hsla(0,0%,100%,.08),transparent 28%);filter:none;opacity:1}.contact-action-medium{background:linear-gradient(135deg,#000,#1f1f1f);color:#fff;border-color:hsla(0,0%,100%,.3);box-shadow:inset 0 1px 1px hsla(0,0%,100%,.24),inset 0 -8px 18px hsla(0,0%,100%,.06),inset 10px 14px 26px rgba(0,0,0,.5),inset -10px -14px 24px hsla(0,0%,100%,.05),0 12px 24px rgba(0,0,0,.45)}.contact-action-email{background:linear-gradient(135deg,#8b3b06 10%,#c86a09 52%,#f5b335);border-color:rgba(255,222,160,.58);box-shadow:inset 0 1px 1px hsla(0,0%,100%,.4),inset 0 -8px 18px hsla(0,0%,100%,.12),inset 10px 14px 26px rgba(109,45,6,.4),inset -10px -14px 24px rgba(255,231,187,.12),0 12px 24px rgba(111,51,8,.34)}.contact-action-call{background:linear-gradient(135deg,#7c2d12 10%,#c24c16 52%,#ff9552);border-color:rgba(255,196,168,.55);box-shadow:inset 0 1px 1px hsla(0,0%,100%,.38),inset 0 -8px 18px hsla(0,0%,100%,.12),inset 10px 14px 26px rgba(97,31,10,.38),inset -10px -14px 24px rgba(255,210,186,.12),0 12px 24px rgba(99,37,14,.34)}.contact-action-whatsapp{background:linear-gradient(135deg,#0d6d30 10%,#18a94f 52%,#42e37c);border-color:rgba(178,255,203,.58);box-shadow:inset 0 1px 1px hsla(0,0%,100%,.4),inset 0 -8px 18px hsla(0,0%,100%,.12),inset 10px 14px 26px rgba(7,83,35,.38),inset -10px -14px 24px rgba(198,255,216,.12),0 12px 24px rgba(8,91,40,.34)}.contact-icon{width:1.9rem;height:1.9rem;position:relative;z-index:1;transform:translateY(-1px);filter:drop-shadow(0 5px 6px rgba(0,0,0,.16))}.github-icon-disc{fill:#f4f2f8;filter:drop-shadow(0 3px 4px rgba(35,7,102,.18))}.github-icon-mark{fill:#6526de}.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}.video-frame-wrap{margin:1rem auto 0;width:100%;max-width:560px;aspect-ratio:16/9;border-radius:1rem;overflow:hidden;border:1px solid rgba(0,240,255,.15);background:rgba(5,5,16,.6);box-shadow:0 8px 24px rgba(0,0,0,.35)}.video-frame{width:100%;height:100%;border:0}.pill-list{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;padding:0;margin:1rem 0 0}.pill-list li{padding:.4rem .9rem;border-radius:999px;background:rgba(108,59,255,.12);border:1px solid rgba(0,240,255,.18);font-size:.85rem;font-weight:500;color:rgba(224,240,255,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.pill-list li:hover{background:rgba(0,240,255,.12);border-color:rgba(0,240,255,.35);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,240,255,.1)}.card-grid{display:grid;grid-gap:1.25rem;gap:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.card-grid>:last-child:nth-child(odd),.card-grid>:only-child{grid-column:1/-1}@media (max-width:700px){.card-grid{grid-template-columns:1fr}.card-grid>:last-child:nth-child(odd),.card-grid>:only-child{grid-column:auto}}.card{padding:1.25rem 1.25rem 1.4rem;border-radius:1.15rem;background:rgba(12,14,30,.5);border:1px solid rgba(0,240,255,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(0,0,0,.2);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-4px);border-color:rgba(0,240,255,.25);box-shadow:0 0 30px rgba(0,240,255,.06),0 16px 36px rgba(0,0,0,.3)}.card-clickable{display:block;text-decoration:none;color:inherit;cursor:pointer}.card h3{margin:0 0 .55rem;font-size:1.1rem;font-weight:600;color:#f0f0f8}.card p{margin:0;color:rgba(200,200,220,.8)}.modal-backdrop{position:fixed;inset:0;background:rgba(5,5,16,.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:1rem;z-index:50}.modal{max-width:520px;width:100%;background:rgba(12,14,30,.92);backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);border-radius:1.5rem;padding:2rem 1.75rem 1.75rem;position:relative;border:1px solid rgba(0,240,255,.12);box-shadow:0 0 50px rgba(108,59,255,.06),0 30px 60px rgba(0,0,0,.55);animation:modalSlideIn .35s cubic-bezier(.22,1,.36,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modal h2{margin-top:0;background:linear-gradient(135deg,#fff,#00e0ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-close{position:absolute;top:.75rem;right:.85rem;border:none;background:transparent;color:rgba(156,163,175,.7);font-size:1.5rem;cursor:pointer;transition:color .2s ease,transform .2s ease}.modal-close:hover{color:#00f0ff;transform:rotate(90deg)}form{gap:.85rem;margin-top:1rem}form,label{display:flex;flex-direction:column}label{font-size:.9rem;gap:.3rem;color:rgba(224,224,240,.8)}.checkbox-row{gap:.6rem}.checkbox-row,.show-password-toggle{flex-direction:row;align-items:center}.show-password-toggle{display:inline-flex;gap:.5rem}.password-input-wrap{display:flex;align-items:center;gap:.5rem}.password-toggle-btn{border:1px solid rgba(0,240,255,.2);background:rgba(12,14,30,.6);color:#f0f0f8;border-radius:.65rem;padding:.55rem .75rem;cursor:pointer;font-family:inherit;transition:border-color .2s ease}.password-toggle-btn:hover{border-color:rgba(0,240,255,.4)}.file-picker-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.file-pick-btn{padding:.55rem 1rem}.file-name-label{color:rgba(224,224,240,.7);font-size:.9rem;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-clear-btn{border:1px solid hsla(0,91%,71%,.55);color:#fca5a5;background:rgba(127,29,29,.18);border-radius:999px;width:1.8rem;height:1.8rem;cursor:pointer;line-height:1;font-size:1.1rem;transition:background .2s ease}.file-clear-btn:hover{background:rgba(127,29,29,.35)}input[type=datetime-local],input[type=email],input[type=file],input[type=number],input[type=password],input[type=tel],input[type=text],textarea{padding:.65rem .85rem;border-radius:.85rem;border:1px solid rgba(0,240,255,.12);background:rgba(12,14,30,.6);color:#f0f0f8;font-family:inherit;font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease}input[type=datetime-local]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=tel]:focus,input[type=text]:focus,textarea:focus{outline:none;border-color:rgba(0,240,255,.35);box-shadow:0 0 16px rgba(0,240,255,.08)}input[type=file]{cursor:pointer}textarea{resize:vertical;min-height:90px}input::placeholder{color:hsla(220,9%,46%,.6)}.error{color:#fca5a5;font-size:.85rem;min-height:1.2rem}.hint{font-size:.8rem;color:rgba(156,163,175,.7);margin-top:.5rem}.hint-highlight{color:#fde68a;background:rgba(250,204,21,.1);border:1px solid rgba(250,204,21,.25);border-radius:.7rem;padding:.55rem .7rem}.project-editor{border:1px solid rgba(0,240,255,.1);border-radius:.85rem;padding:.9rem;margin-top:.75rem;background:rgba(12,14,30,.4)}.project-editor h3{margin:0 0 .65rem}.project-editor-actions{display:flex;gap:.6rem;flex-wrap:wrap}.project-image-preview{width:100%;max-width:260px;border-radius:.6rem;border:1px solid rgba(0,240,255,.1);margin:.5rem 0}#add-project-btn{margin-top:1rem}@keyframes spin{to{transform:rotate(1turn)}}@keyframes subtle-shake{0%,to{transform:translateX(0)}25%{transform:translateX(-2px)}50%{transform:translateX(2px)}75%{transform:translateX(-1px)}}.chat-window{background:rgba(5,5,16,.8);border-radius:.85rem;border:1px solid rgba(0,240,255,.1);padding:.85rem;height:280px;overflow-y:auto;font-size:.9rem}.calendar-frame{width:100%;height:440px;border:1px solid rgba(0,240,255,.12);border-radius:.85rem;background:rgba(5,5,16,.6)}.chat-form{display:flex;gap:.5rem;margin-top:.75rem}.chat-form input[type=text]{flex:1 1}.message{margin-bottom:.5rem;display:flex;flex-direction:column;gap:.15rem}.message-user .bubble{align-self:flex-end;background:linear-gradient(135deg,#6c3bff,#00c8ff)}.message-bot .bubble{align-self:flex-start;background:rgba(12,14,30,.85);border:1px solid rgba(0,240,255,.15)}.bubble{max-width:85%;padding:.5rem .8rem;border-radius:.85rem;font-size:.88rem}.sender{font-size:.75rem;color:rgba(156,163,175,.6)}.tour-backdrop{position:fixed;inset:0;background:rgba(5,5,16,.75);z-index:80}.tour-card{position:fixed;left:50%;bottom:1rem;transform:translateX(-50%);width:min(92vw,560px);background:rgba(12,14,30,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,240,255,.12);border-radius:1rem;padding:1rem;z-index:90;box-shadow:0 0 40px rgba(108,59,255,.06),0 20px 44px rgba(0,0,0,.6)}.tour-title{font-size:1rem;font-weight:700;margin:0 0 .35rem;background:linear-gradient(135deg,#fff,#00e0ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tour-text{margin:0;color:rgba(209,213,219,.8);font-size:.92rem}.tour-actions{margin-top:.75rem;display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}.tour-btn{border:1px solid rgba(0,240,255,.15);background:rgba(12,14,30,.7);color:#f0f0f8;border-radius:.65rem;padding:.5rem .8rem;cursor:pointer;font-family:inherit;transition:border-color .2s ease,background .2s ease}.tour-btn:hover{border-color:rgba(0,240,255,.35);background:rgba(0,240,255,.06)}.tour-highlight{position:relative;z-index:95;outline:2px solid rgba(0,240,255,.8);border-radius:.8rem;box-shadow:0 0 0 8px rgba(0,240,255,.12),0 0 30px rgba(0,240,255,.08);transition:outline-color .2s ease}@media (max-width:600px){.top-feature-grid{grid-template-columns:1fr}.top-feature-item{width:100%}.hero-content{padding:2rem 1.5rem}.hero h1{font-size:clamp(1.8rem,6vw,2.5rem)}.modal{padding:1.5rem 1.25rem 1.25rem}.calendar-frame{height:380px}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:rgba(5,5,16,.5)}::-webkit-scrollbar-thumb{background:rgba(0,240,255,.15);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:rgba(0,240,255,.3)}#architecture{overflow:visible;background:transparent!important;border:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important;max-width:920px}.arch-viewport{overflow:visible;margin-top:1.2rem;padding:0}.arch-diagram{position:relative;width:840px;height:430px;margin:0 auto}.arch-node{position:absolute;display:flex;align-items:center;justify-content:center;gap:.3rem;padding:.45rem .7rem;border-radius:.55rem;background:rgba(12,14,30,.6);border:1px solid rgba(0,240,255,.15);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.72rem;font-weight:600;color:rgba(224,240,255,.92);white-space:nowrap;opacity:0;transform:scale(.5);z-index:2;box-shadow:0 0 18px rgba(0,240,255,.04),0 4px 14px rgba(0,0,0,.22);transition:border-color .25s ease,box-shadow .25s ease}.arch-node:hover{border-color:rgba(0,240,255,.35);box-shadow:0 0 26px rgba(0,240,255,.08),0 6px 18px rgba(0,0,0,.28)}.arch-node-main{background:rgba(108,59,255,.1);border-color:rgba(108,59,255,.3);font-size:.76rem;padding:.55rem .9rem;box-shadow:0 0 22px rgba(108,59,255,.06),0 6px 18px rgba(0,0,0,.26)}.arch-node-main:hover{border-color:rgba(108,59,255,.5);box-shadow:0 0 30px rgba(108,59,255,.12),0 8px 22px rgba(0,0,0,.3)}.arch-node-db{background:rgba(0,180,120,.06);border-color:rgba(0,200,140,.2);border-radius:.35rem;padding:.55rem .7rem .35rem;overflow:visible}.arch-node-db:after,.arch-node-db:before{content:"";position:absolute;left:-1px;right:-1px;height:10px;border-radius:50%}.arch-node-db:before{top:-5px;background:rgba(0,180,120,.14);border:1px solid rgba(0,200,140,.3)}.arch-node-db:after{bottom:-5px;background:rgba(0,180,120,.08);border:1px solid rgba(0,200,140,.2);border-top:none}.arch-node-db:hover{border-color:rgba(0,200,140,.4)}.arch-label-text{position:absolute;font-size:.58rem;font-weight:500;color:rgba(0,240,255,.45);letter-spacing:.02em;white-space:nowrap;opacity:0;z-index:2}.arch-arrows{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.arch-arrows path{fill:none;stroke:rgba(0,240,255,.22);stroke-width:1.5;stroke-dasharray:600;stroke-dashoffset:600}@keyframes archPopIn{0%{opacity:0;transform:scale(.45) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes archLabelFade{0%{opacity:0}to{opacity:1}}@keyframes archArrowDraw{to{stroke-dashoffset:0}}#architecture.is-visible .arch-tier-0{animation:archPopIn .32s calc(.1s + var(--s, 0) * .08s) cubic-bezier(.34,1.56,.64,1) forwards}#architecture.is-visible .arch-tier-1{animation:archPopIn .32s calc(.35s + var(--s, 0) * .08s) cubic-bezier(.34,1.56,.64,1) forwards}#architecture.is-visible .arch-tier-2{animation:archPopIn .32s calc(.55s + var(--s, 0) * .08s) cubic-bezier(.34,1.56,.64,1) forwards}#architecture.is-visible .arch-label-text{animation:archLabelFade .35s ease .6s forwards}#architecture.is-visible .arch-tier-3{animation:archPopIn .28s calc(.75s + var(--s, 0) * .06s) cubic-bezier(.34,1.56,.64,1) forwards}#architecture.is-visible .arch-tier-4{animation:archPopIn .32s calc(1.05s + var(--s, 0) * .08s) cubic-bezier(.34,1.56,.64,1) forwards}#architecture.is-visible .arch-arrows path{animation:archArrowDraw .55s calc(1.25s + var(--s, 0) * .04s) ease forwards}@media (max-width:920px){.arch-diagram{transform:scale(.7);transform-origin:top left}.arch-viewport{height:calc(430px * .7)}}@media (max-width:600px){.arch-diagram{transform:scale(.45);transform-origin:top left}.arch-viewport{height:calc(430px * .45)}}