:root{--bg-primary:#fff;--bg-secondary:#f8fafc;--text-primary:#0f172a;--text-secondary:#334155;--text-tertiary:#64748b;--accent-primary:#2563eb}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;overflow-x:hidden}.app-container{flex-direction:column;min-height:100vh;display:flex}.scroll-indicator{letter-spacing:.25em;text-transform:uppercase;z-index:100;pointer-events:none;flex-direction:column;align-items:center;font-size:.75rem;font-weight:700;transition:color .5s;display:flex;position:absolute;bottom:25px;left:50%;transform:translate(-50%)}.scroll-indicator.dark-mode{color:#64748b}.scroll-indicator.light-mode{color:#cbd5e1}.scroll-arrow{border-bottom:2px solid;border-right:2px solid;width:12px;height:12px;margin-top:8px;animation:2s cubic-bezier(.4,0,.2,1) infinite bounce;transform:rotate(45deg)}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)rotate(45deg)}40%{transform:translateY(-8px)rotate(45deg)}60%{transform:translateY(-4px)rotate(45deg)}}.ambient-background{z-index:-1;background-color:#0b1121;width:100vw;height:100vh;position:absolute;top:0;left:0;overflow:hidden}.ambient-blob{filter:blur(120px);opacity:.6;border-radius:50%;animation:20s ease-in-out infinite alternate float-blob;position:absolute}.ambient-blob.primary{background:#3b82f666;width:60vw;max-width:800px;height:60vw;max-height:800px;animation-delay:0s;top:-20%;left:-10%}.ambient-blob.secondary{background:#8b5cf64d;width:50vw;max-width:600px;height:50vw;max-height:600px;animation-delay:-5s;bottom:-10%;right:-10%}.ambient-blob.tertiary{background:#10b98133;width:40vw;max-width:500px;height:40vw;max-height:500px;animation-delay:-10s;top:40%;left:50%;transform:translate(-50%,-50%)}@keyframes float-blob{0%{transform:translate(0)scale(1)}50%{transform:translate(5%,10%)scale(1.1)}to{transform:translate(-5%,-5%)scale(.95)}}.hero-section{color:#fff;background:0 0;justify-content:center;align-items:center;width:100%;height:100vh;font-family:Fira Code,Courier New,Courier,monospace;display:flex;position:relative;overflow:hidden}.terminal-window{-webkit-backdrop-filter:blur(16px);opacity:0;z-index:10;background:#0f172ab3;border:1px solid #ffffff1a;border-radius:12px;width:100%;max-width:900px;overflow:hidden;transform:translateY(20px);box-shadow:0 25px 50px -12px #0009,0 0 40px #3b82f626}.terminal-header{background:#0006;border-bottom:1px solid #ffffff0d;align-items:center;padding:.8rem 1rem;display:flex;position:relative}.terminal-dots{gap:.5rem;display:flex}.dot{border-radius:50%;width:12px;height:12px}.dot.red{background-color:#ef4444}.dot.yellow{background-color:#f59e0b}.dot.green{background-color:#10b981}.terminal-title{color:#94a3b8;letter-spacing:.05em;font-size:.85rem;font-weight:500;position:absolute;left:50%;transform:translate(-50%)}.terminal-body{flex-direction:column;gap:1.5rem;padding:2rem 2.5rem 3rem;display:flex}.terminal-prompt-line{flex-wrap:wrap;align-items:center;font-size:1.1rem;line-height:1.5;display:flex}.prompt-user{color:#10b981;font-weight:600}.prompt-colon{color:#e2e8f0;margin:0 .1rem}.prompt-dir{color:#3b82f6;font-weight:600}.prompt-symbol{color:#e2e8f0;margin:0 .5rem}.prompt-command{color:#f8fafc;font-weight:500}.terminal-output{flex-direction:column;gap:1rem;display:flex}.hero-title{color:#fff;letter-spacing:-.02em;opacity:0;margin:1.5rem 0 .5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.2;transform:translateY(10px)}.title-highlight{color:#3b82f6;text-shadow:0 0 20px #3b82f666}.terminal-log{color:#cbd5e1;opacity:0;font-size:1.05rem;line-height:1.5;transform:translateY(10px)}.log-info{color:#3b82f6;margin-right:.5rem;font-weight:600}.log-success{color:#10b981;margin-right:.5rem;font-weight:600}.log-highlight{color:#94a3b8;border-left:2px solid #3b82f6;margin-top:.5rem;padding-left:1rem}.active-prompt{opacity:0;margin-top:1rem}.cursor-blink{background-color:#e2e8f0;width:10px;height:1.2rem;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.terminal-buttons{opacity:0;gap:1.5rem;margin-top:2rem;display:flex;transform:translateY(10px)}.hero-btn{text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border-radius:4px;padding:.8rem 1.8rem;font-family:Fira Code,Courier New,Courier,monospace;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s}.neon-blue{color:#3b82f6;border:1px solid #3b82f6;box-shadow:inset 0 0 #3b82f64d,0 0 10px #3b82f61a}.neon-blue:hover{text-shadow:0 0 5px #3b82f6cc;background:#3b82f61a;box-shadow:inset 0 0 15px #3b82f64d,0 0 20px #3b82f666}.neon-green{color:#10b981;border:1px solid #10b981;box-shadow:inset 0 0 #10b9814d,0 0 10px #10b9811a}.neon-green:hover{text-shadow:0 0 5px #10b981cc;background:#10b9811a;box-shadow:inset 0 0 15px #10b9814d,0 0 20px #10b98166}@media (width<=768px){.terminal-window{border-radius:8px}.terminal-body{padding:1.5rem}.hero-title{font-size:clamp(1.8rem,6vw,2.5rem)}.terminal-prompt-line,.terminal-log{font-size:.95rem}.terminal-buttons{flex-direction:column;gap:1rem}.hero-btn{text-align:center}}.career-section{color:#fff;box-sizing:border-box;background:0 0;flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:0 5%;display:flex}.resume-container{flex-direction:column;width:100%;max-width:1200px;height:85vh;display:flex}.resume-header{align-items:baseline;gap:1.5rem;margin-bottom:3rem;display:flex}.resume-name{color:#fff;letter-spacing:-.02em;margin:0;font-size:clamp(2rem,4vw,3rem);font-weight:800}.resume-role{letter-spacing:.15em;color:#3b82f6;text-transform:uppercase;font-size:1rem;font-weight:600}.resume-grid{flex-grow:1;grid-template-columns:1fr 1.2fr 1.2fr;gap:2rem;padding-bottom:2rem;display:grid;overflow-y:auto}.resume-grid::-webkit-scrollbar{width:4px}.resume-grid::-webkit-scrollbar-track{background:0 0}.resume-grid::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:10px}.resume-column{flex-direction:column;gap:2.5rem;padding-right:2rem;display:flex}.resume-column.has-border{border-left:1px solid #ffffff26;padding-left:2rem;padding-right:0}.resume-profile-img{aspect-ratio:1;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;width:100%;transition:all .3s;position:relative;overflow:hidden}.resume-profile-img.hidden{cursor:pointer;justify-content:center;align-items:center;display:flex}.resume-profile-img.hidden:hover{background:#ffffff1a;border-color:#3b82f680}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.img-placeholder{color:#94a3b8;letter-spacing:.05em;text-transform:uppercase;font-size:.9rem;font-weight:500;animation:2s ease-in-out infinite bounce-subtle}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.resume-profile-img img{object-fit:contain;width:100%;height:100%;display:block}.resume-profile-img.revealed img{animation:.6s cubic-bezier(.2,.8,.2,1) forwards fadeInScale}.resume-block{flex-direction:column;display:flex}.resume-block-title{letter-spacing:.2em;color:#fff;border-bottom:1px solid #ffffff26;margin:0 0 1.2rem;padding-bottom:.8rem;font-size:1.1rem;font-weight:700}.resume-list{flex-direction:column;gap:.8rem;margin:0;padding:0;list-style:none;display:flex}.resume-list:not(.no-bullet) li{padding-left:1rem;position:relative}.resume-list:not(.no-bullet) li:before{content:"";background:#3b82f6;border-radius:50%;width:4px;height:4px;position:absolute;top:8px;left:0}.resume-list li{color:#cbd5e1;align-items:flex-start;gap:.5rem;font-size:.9rem;line-height:1.6;display:flex}.resume-list .list-year{white-space:nowrap;color:#94a3b8;min-width:70px;font-weight:500}.resume-list .list-text{color:#e2e8f0}.resume-list .list-label{color:#94a3b8;min-width:60px;display:inline-block}.resume-list .list-label.bold{color:#e2e8f0;min-width:85px;font-weight:600}.resume-list .list-label-project{color:#94a3b8;min-width:30px;display:inline-block}.resume-list .list-label-project.bold{color:#e2e8f0;min-width:65px;font-weight:600}@media (width<=992px){.resume-container{height:90vh;margin-top:5vh}.resume-grid{-ms-overflow-style:none;scrollbar-width:none;grid-template-columns:1fr;gap:3rem;padding-bottom:80px;overflow-y:auto}.resume-grid::-webkit-scrollbar{display:none}.resume-column{padding-right:0}.resume-column.has-border{border-top:1px solid #ffffff26;border-left:none;padding-top:3rem;padding-left:0}.resume-header{flex-direction:column;gap:.5rem;margin-bottom:2rem}}.resume-link{color:inherit;text-underline-offset:4px;-webkit-text-decoration:underline #ffffff4d;text-decoration:underline #ffffff4d;transition:all .2s}.resume-link:hover{color:#3b82f6;text-decoration-color:#3b82f6}.skills-section{color:#fff;box-sizing:border-box;background:0 0;flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:0 5%;display:flex}.skills-header{text-align:center;margin-bottom:3rem}.skills-header .section-title{color:#fff;margin-bottom:.5rem;font-size:clamp(2.5rem,4vw,3.5rem);font-weight:800}.skills-header .section-subtitle{color:#94a3b8;font-size:1.1rem}.architecture-container{background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:30px 30px;border:1px solid #ffffff1a;border-radius:12px;grid-template-rows:auto auto;grid-template-columns:1fr 1fr 1.5fr 1fr;gap:2rem;width:100%;max-width:1200px;height:auto;padding:2.5rem;display:grid;position:relative;box-shadow:inset 0 0 40px #00000080}.arch-group{background:#ffffff04;border:2px dashed #fff3;border-radius:8px;flex-direction:column;padding:3.5rem 1.5rem 1.5rem;transition:all .3s;display:flex;position:relative}.arch-group:hover{background:#ffffff0a}.aws-group-header{align-items:center;gap:.6rem;display:flex;position:absolute;top:12px;left:12px}.aws-group-header.mt-inner{margin-top:1.5rem;margin-bottom:1rem;position:relative}.aws-icon-box{color:#fff;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.aws-group-title{font-size:.95rem;font-weight:700}.client-group{border-color:#8b5cf6;grid-area:1/1/3/2}.client-group .aws-icon-box{background-color:#8b5cf6}.client-group .aws-group-title{color:#8b5cf6}.edge-group{border-color:#f97316;grid-area:1/2/3/3}.edge-group .aws-icon-box{background-color:#f97316}.edge-group .aws-group-title{color:#f97316}.app-group{border-color:#22c55e;grid-area:1/3/3/4}.app-group .aws-icon-box{background-color:#22c55e}.app-group .aws-group-title{color:#22c55e}.db-group{border-color:#3b82f6;grid-area:1/4/2/5}.db-group .aws-icon-box{background-color:#3b82f6}.db-group .aws-group-title{color:#3b82f6}.cicd-group{border-color:#ec4899;grid-area:2/4/3/5}.cicd-group .aws-icon-box{background-color:#ec4899}.cicd-group .aws-group-title{color:#ec4899}.mt-4{margin-top:1.5rem}.arch-nodes{flex-wrap:wrap;gap:.8rem;display:flex}.node{-webkit-backdrop-filter:blur(10px);color:#e2e8f0;text-align:center;cursor:default;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;justify-content:center;align-items:center;padding:.6rem 1.2rem;font-size:.85rem;font-weight:600;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex}.node:hover{z-index:10;background:#fff3;transform:translateY(-3px)scale(1.05);box-shadow:0 10px 20px #0000004d}.node.primary{color:#93c5fd;background:#3b82f633;border-color:#3b82f680}.node.highlight{color:#6ee7b7;background:#10b98126;border-color:#10b98166}.node.db{color:#fcd34d;background:#f59e0b26;border-color:#f59e0b66}.node.cache{color:#fca5a5;background:#ef444426;border-color:#ef444466}.node.tools{color:#d8b4fe;background:#a855f726;border-color:#a855f766}@media (width<=992px){.architecture-container{-ms-overflow-style:none;scrollbar-width:none;grid-template-rows:auto;grid-template-columns:1fr;gap:1.5rem;height:75vh;padding:1.5rem 1.5rem 100px;overflow-y:auto}.architecture-container::-webkit-scrollbar{display:none}.client-group,.edge-group,.app-group,.db-group,.cicd-group{grid-area:auto/1/auto/-1}}.project-card{-webkit-backdrop-filter:blur(10px);cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;height:100%;min-height:200px;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden;box-shadow:0 4px 30px #0000001a}.project-card:hover{border:1px solid #fff3;transform:translateY(-5px);box-shadow:0 15px 40px #0000004d}.project-image{background:#ffffff0d;width:100%;height:200px;position:relative;overflow:hidden}.image-content{object-fit:cover;width:100%;height:100%;transition:transform .5s}.project-card:hover .image-content{transform:scale(1.05)}.image-placeholder{background:linear-gradient(135deg,#ffffff0d 0%,#fff0 100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.placeholder-text{color:#ffffff4d;font-size:1.2rem;font-weight:500}.project-content{flex-direction:column;flex-grow:1;gap:.8rem;padding:1.5rem;display:flex}.card-link-btn{color:#f8fafc;background:#ffffff1a;border:1px solid #ffffff26;border-radius:6px;align-items:center;gap:.3rem;padding:.3rem .8rem;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.card-link-btn:hover{background:#fff3;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.project-hashtags{flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:1rem;display:flex}.hashtag{color:#60a5fa;letter-spacing:.02em;background:#3b82f61a;border-radius:12px;padding:.2rem .6rem;font-size:.75rem;font-weight:500}.hashtag-more{color:#94a3b8;background:#ffffff0d;border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:500}.project-title{color:#fff;margin:0;font-size:1.4rem;font-weight:700}.project-role{color:#3b82f6;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.85rem;font-weight:600}.project-summary{color:#cbd5e1;margin:0;font-size:.95rem;line-height:1.6}.modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:9999;opacity:0;box-sizing:border-box;background:#0006;justify-content:center;align-items:center;width:100vw;height:100vh;padding:2rem;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-backdrop.visible{opacity:1}.modal-content{-webkit-backdrop-filter:blur(24px);opacity:0;background:#0f172abf;border:1px solid #ffffff1a;border-radius:24px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow-y:auto;transform:scale(.95)translateY(20px);box-shadow:0 25px 50px -12px #00000080}.modal-content.visible{opacity:1;transform:scale(1)translateY(0)}.modal-close{color:#94a3b8;cursor:pointer;z-index:10;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;position:absolute;top:1.5rem;right:1.5rem}.modal-close:hover{color:#fff;background:#ffffff1a;transform:rotate(90deg)}.modal-header{border-bottom:1px solid #ffffff0d;align-items:flex-start;gap:2rem;padding:3rem 3rem 2rem;display:flex}.modal-image-wrapper{background:#ffffff05;border:1px solid #ffffff0d;border-radius:16px;flex-shrink:0;width:35%;overflow:hidden}.modal-image{object-fit:cover;aspect-ratio:16/10;width:100%;height:auto;display:block}.modal-title-area{flex-grow:1}.modal-title{color:#fff;margin:0 0 .5rem;font-size:2rem;font-weight:800;line-height:1.2}.modal-role{color:#3b82f6;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1.5rem;font-size:1rem;font-weight:600}.modal-summary{color:#e2e8f0;margin:0 0 1rem;font-size:1.1rem;line-height:1.6}.modal-hashtags{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.modal-hashtag{color:#93c5fd;letter-spacing:.02em;background:#3b82f614;border:1px solid #3b82f633;border-radius:12px;padding:.25rem .6rem;font-size:.8rem;font-weight:500}.modal-link-btn{color:#f8fafc;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;align-items:center;gap:.4rem;padding:.4rem 1rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.modal-link-btn:hover{background:#ffffff40;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.modal-tech-stack{flex-wrap:wrap;gap:.6rem;display:flex}.tech-badge{color:#f8fafc;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;padding:.35rem .7rem;font-size:.85rem;font-weight:500;box-shadow:inset 0 1px #ffffff0d}.modal-body{flex-direction:column;gap:2rem;padding:2rem 3rem 3rem;display:flex}.modal-section-title{color:#fff;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.2rem;font-weight:700;display:flex}.modal-section-title:before{content:"";background:#3b82f6;border-radius:2px;width:4px;height:1.2rem;display:block}.modal-text{color:#cbd5e1;margin:0;font-size:1rem;line-height:1.7}.modal-list{color:#cbd5e1;margin:0;padding-left:1.5rem}.modal-list-item{margin-bottom:.5rem;font-size:1rem;line-height:1.7}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#ffffff05;border-radius:0 24px 24px 0}.modal-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background:#fff3}@media (width<=768px){.modal-backdrop{padding:1rem}.modal-header{flex-direction:column;padding:2rem 1.5rem}.modal-image-wrapper{width:100%}.modal-body{padding:1.5rem}.modal-title{font-size:1.5rem}}.project-dashboard{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a112866;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;align-self:center;gap:2rem;width:100%;max-width:1200px;margin-bottom:4rem;padding:2.5rem;display:flex;box-shadow:0 10px 30px #0000004d,inset 0 1px #ffffff1a}.dashboard-header{text-align:center}.dashboard-title{color:#fff;margin-bottom:.5rem;font-size:2rem;font-weight:800}.dashboard-subtitle{color:#8892b0;font-size:1.1rem}.dashboard-content{flex-direction:column;gap:3rem;display:flex}.chart-container{background:#0003;border:1px solid #ffffff0d;border-radius:15px;width:100%;padding:1rem}.custom-tooltip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a1128e6;border:1px solid #ffffff1a;border-radius:8px;padding:1rem;box-shadow:0 4px 15px #0000004d}.tooltip-label{color:#e2e8f0;border-bottom:1px solid #ffffff1a;margin-bottom:8px;padding-bottom:4px;font-weight:700}.keywords-container{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.keywords-title{color:#e2e8f0;font-size:1.5rem;font-weight:700}.keywords-grid{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.keyword-badge{color:#e2e8f0;cursor:default;background:linear-gradient(135deg,#3b82f61a 0%,#8b5cf61a 100%);border:1px solid #8b5cf64d;border-radius:30px;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:1.05rem;font-weight:600;transition:all .3s;display:flex}.keyword-badge:hover{background:linear-gradient(135deg,#3b82f633 0%,#8b5cf633 100%);border-color:#8b5cf699;transform:translateY(-3px);box-shadow:0 5px 15px #8b5cf64d}.keyword-dot{background:#8b5cf6;border-radius:50%;width:8px;height:8px;box-shadow:0 0 10px #8b5cf6}@media (width>=1024px){.dashboard-content{flex-direction:row;align-items:center}.chart-container{flex:2}.keywords-container{flex:1;align-items:flex-start}.keywords-grid{justify-content:flex-start}}.projects-section{color:#fff;box-sizing:border-box;background:0 0;flex-direction:column;justify-content:flex-start;align-items:center;height:100vh;padding:3.5% 5% 5%;display:flex;position:relative;overflow-y:auto}.projects-section::-webkit-scrollbar{width:8px}.projects-section::-webkit-scrollbar-track{background:#ffffff05}.projects-section::-webkit-scrollbar-thumb{background:#3b82f666;border-radius:10px}.projects-section::-webkit-scrollbar-thumb:hover{background:#3b82f6b3}.projects-container{z-index:1;flex-direction:column;width:100%;max-width:1200px;display:flex}.section-title{color:#fff;align-self:flex-start;margin-bottom:2rem;font-size:clamp(2.5rem,4vw,3.5rem);font-weight:800}.projects-categories{flex-direction:column;gap:3.5rem;width:100%;padding-bottom:3rem;display:flex}.project-category{flex-direction:column;gap:1.5rem;display:flex}.category-title{color:#93c5fd;border-bottom:1px solid #ffffff1a;margin:0;padding-bottom:.8rem;font-size:1.6rem;font-weight:700}.project-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;display:grid}@media (width<=992px){.project-grid{grid-template-columns:1fr}}@media (width<=768px){.projects-section{padding-top:10vh}.section-title{align-self:center}}.load-more-btn{color:#e2e8f0;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #ffffff1a;border-radius:30px;align-self:center;align-items:center;gap:.5rem;margin-top:1.5rem;padding:.8rem 2.5rem;font-size:1.05rem;font-weight:600;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:0 4px 15px #0003}.load-more-btn:hover{color:#60a5fa;background:#3b82f626;border-color:#3b82f680;transform:translateY(-3px);box-shadow:0 8px 25px #3b82f64d}.chevron-icon{width:1.2rem;height:1.2rem;transition:transform .4s;transform:rotate(180deg)}.load-more-btn.expanded .chevron-icon{transform:rotate(0)}.footer-container{color:#94a3b8;box-sizing:border-box;background:radial-gradient(circle,#0a1128 0%,#03050a 100%);border-top:1px solid #ffffff0d;flex-direction:column;justify-content:space-between;align-items:center;width:100%;height:350px;padding:3rem 5% 2rem;display:flex;position:relative;overflow:hidden}.footer-content{flex-flow:wrap;justify-content:space-between;align-items:center;gap:2rem;width:100%;max-width:1200px;margin-top:2rem;display:flex}.footer-left{text-align:left}.footer-logo{color:#fff;letter-spacing:-.02em;margin:0 0 .5rem;font-size:2rem;font-weight:800}.footer-desc{color:#cbd5e1;margin:0;font-size:1rem}.footer-links{gap:2rem;display:flex}.footer-link{color:#cbd5e1;text-transform:uppercase;letter-spacing:.05em;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;position:relative}.footer-link:after{content:"";background-color:#3b82f6;width:0;height:2px;transition:width .3s;position:absolute;bottom:-4px;left:0}.footer-link:hover{color:#3b82f6}.footer-link:hover:after{width:100%}.footer-bottom{color:#64748b;border-top:1px solid #ffffff0d;justify-content:center;width:100%;padding-top:1.5rem;font-size:.85rem;display:flex}@media (width<=768px){.footer-content{flex-direction:column;align-items:flex-start}}.gnb{z-index:1000;display:flex;position:absolute}.gnb-side{-webkit-backdrop-filter:blur(30px);border-radius:35px;flex-direction:column;justify-content:center;align-items:center;width:70px;padding:20px 0;transition:all .5s;top:50%;left:20px;transform:translateY(-50%)}.gnb-side.on-light-bg{background:#00000008;border:1px solid #00000014;box-shadow:0 20px 40px #0000000d,inset 0 1px #ffffff80}.gnb-side.on-dark-bg{background:#ffffff14;border:1px solid #ffffff26;box-shadow:0 20px 40px #0000004d,inset 0 1px #fff3}.gnb-side .gnb-menu{flex-direction:column;gap:1.2rem;margin:0;padding:0;list-style:none;display:flex}.gnb-side .gnb-item{cursor:pointer;border-radius:16px;justify-content:center;align-items:center;width:50px;height:50px;transition:all .2s cubic-bezier(.25,.8,.25,1);display:flex;position:relative}.gnb-side.on-light-bg .gnb-item{color:#0006}.gnb-side.on-light-bg .gnb-item:hover{color:#000;z-index:10;background:#0000000d;transform:scale(1.25)}.gnb-side.on-light-bg .gnb-item.active{color:#3b82f6;background:#00000014;box-shadow:0 4px 15px #0000001a}.gnb-side.on-dark-bg .gnb-item{color:#fff9}.gnb-side.on-dark-bg .gnb-item:hover{color:#fff;z-index:10;background:#ffffff26;transform:scale(1.25)}.gnb-side.on-dark-bg .gnb-item.active{color:#3b82f6;background:#fff3;box-shadow:0 4px 15px #0003}.gnb-tooltip{-webkit-backdrop-filter:blur(10px);color:#fff;letter-spacing:.05em;white-space:nowrap;opacity:0;pointer-events:none;background:#000000b3;border:1px solid #ffffff1a;border-radius:8px;margin-left:15px;padding:.5rem 1rem;font-size:.75rem;font-weight:600;transition:all .2s cubic-bezier(.25,.8,.25,1);position:absolute;left:100%;transform:translate(-10px)}.gnb-side .gnb-item:hover .gnb-tooltip{opacity:1;transform:translate(0)}@media (width<=992px){.gnb-side{z-index:2000;border-radius:40px;flex-direction:row;width:max-content;height:auto;padding:0 15px;top:auto;bottom:20px;left:50%;transform:translate(-50%)}.gnb-side .gnb-menu{flex-direction:row;gap:.5rem}.gnb-side .gnb-item{width:45px;height:45px}.gnb-tooltip{display:none!important}}.ai-chatbot-container{z-index:1000;pointer-events:none;flex-direction:column;align-items:flex-end;display:flex;position:fixed;bottom:30px;right:30px}.ai-chatbot-container>*{pointer-events:auto}.floating-btn{color:#fff;cursor:pointer;z-index:1001;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s;display:flex;box-shadow:0 4px 20px #8b5cf666}.floating-btn:hover{transform:scale(1.1);box-shadow:0 6px 25px #8b5cf699}.floating-btn:active{transform:scale(.95)}.chat-window{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;transform-origin:100% 100%;pointer-events:none;background:#0f172ad9;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;width:350px;height:700px;transition:all .4s cubic-bezier(.165,.84,.44,1);display:flex;position:absolute;bottom:80px;right:0;overflow:hidden;transform:translateY(20px)scale(.95);box-shadow:0 10px 40px #0006}.chat-window.active{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.chat-header{background:#ffffff0d;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.header-info{align-items:center;gap:12px;display:flex}.bot-icon{color:#8b5cf6;background:#8b5cf626;border-radius:50%;width:36px;height:36px;padding:6px}.header-info h3{color:#f8fafc;margin:0 0 2px;font-size:.85rem;font-weight:600}.status-dot{background-color:#10b981;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block;box-shadow:0 0 5px #10b981}.status-text{color:#94a3b8;font-size:.75rem}.close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .2s;display:flex}.close-btn:hover{color:#f8fafc}.chat-messages{overscroll-behavior:contain;flex-direction:column;flex:1;gap:15px;min-height:0;padding:20px;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.message-wrapper{width:100%;display:flex}.message-wrapper.user{justify-content:flex-end}.message-wrapper.ai{justify-content:flex-start}.message-bubble{word-wrap:break-word;border-radius:18px;max-width:80%;padding:10px 14px;font-size:.85rem;line-height:1.4}.message-bubble p{margin:0}.message-bubble p+p{margin-top:.8em}.message-bubble strong{color:inherit;font-weight:700}.message-bubble ul,.message-bubble ol{margin:8px 0;padding-left:20px}.message-bubble li{margin-bottom:4px}.suggested-questions{border-top:1px solid #ffffff1a;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.suggested-btn{color:#60a5fa;text-align:left;cursor:pointer;background:#3b82f626;border:1px solid #3b82f64d;border-radius:12px;padding:8px 12px;font-size:.8rem;transition:all .2s}.suggested-btn:hover:not(:disabled){background:#3b82f640;border-color:#3b82f680;transform:translate(4px)}.suggested-btn:disabled{opacity:.5;cursor:not-allowed}.message-bubble.user{color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border-bottom-right-radius:4px}.message-bubble.ai{color:#e2e8f0;background:#ffffff14;border:1px solid #ffffff0d;border-bottom-left-radius:4px}.loading-bubble{align-items:center;gap:4px;padding:14px 18px;display:flex}.dot{background-color:#94a3b8;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both typing}.dot:first-child{animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-input-area{background:#ffffff08;border-top:1px solid #ffffff1a;gap:10px;padding:15px;display:flex}.chat-input{color:#f8fafc;background:#0003;border:1px solid #ffffff1a;border-radius:20px;outline:none;flex:1;padding:8px 12px;font-size:.85rem;transition:border-color .3s}.chat-input:focus{border-color:#3b82f6}.chat-input::placeholder{color:#64748b}.send-btn{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background-color .2s,transform .2s;display:flex}.send-btn:hover:not(:disabled){background:#2563eb;transform:scale(1.05)}.send-btn:disabled{color:#ffffff4d;cursor:not-allowed;background:#ffffff1a}@media (width<=480px){.ai-chatbot-container{bottom:20px;right:20px}.chat-window{width:calc(100vw - 40px);height:450px;bottom:70px}}
