@import"https://fonts.googleapis.com/css2?family=Inconsolata:wght@400;700&family=Fira+Sans:wght@300;400;500;700&display=swap";*{box-sizing:border-box}:root{--color-primary-dark: #1a1a2e;--color-text-light: #e0e0e0;--color-accent-pumpkin: #ff6f00;--color-secondary-purple: #a850a8;--color-card-bg: #33222e;--color-link-hover: #ff3333;--color-success-green: #61ff33;font-family:Fira Sans,sans-serif;--font-heading: "Inconsolata", monospace;line-height:1.5;font-weight:400;color-scheme:dark;color:var(--color-text-light);background-color:var(--color-primary-dark);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:var(--color-secondary-purple);text-decoration:inherit;transition:color .3s ease}a:hover{color:var(--color-link-hover)}body{margin:0;padding:0;display:block;min-width:320px;min-height:100vh;overflow-x:hidden;width:100%}h1,h2{font-size:3.2em;font-family:var(--font-heading);line-height:1.1;color:var(--color-accent-pumpkin);max-width:100%;word-wrap:break-word}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--color-accent-pumpkin)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--color-primary-dark);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2000;opacity:1;transition:opacity .5s ease-out}.loading-overlay.fade-out{opacity:0;pointer-events:none}.spinner{width:100px;height:100px;margin-bottom:1rem}.loading-text{font-family:var(--font-heading);color:var(--color-text-light);font-size:1.2rem;letter-spacing:2px}.App{display:flex;flex-direction:column;min-height:100vh;max-width:1400px;margin:0 auto;padding:0 1rem;text-align:center;width:100%}.app-container{max-width:1400px;margin:0 auto;padding:0 1rem;width:100%}.header{background-color:var(--color-card-bg);color:var(--color-text-light);padding:1rem 0;position:fixed;top:0;left:0;right:0;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 2px 10px #00000080}.navbar{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 1.5rem}.logo{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-accent-pumpkin);display:inline-flex;align-items:center;transition:color .5s;text-decoration:none}.nav-links li{margin:0}.nav-links a{color:var(--color-text-light);text-decoration:none;transition:color .3s;text-transform:uppercase;font-size:.85rem;letter-spacing:1px}.menu-toggle div{width:100%;height:3px;background:var(--color-accent-pumpkin);border-radius:10px;transition:all .3s linear}.hero-section{text-align:center;padding:8rem 1rem;display:flex;justify-content:center;align-items:center;min-height:100vh;flex-direction:column;width:100%}.hero-content{width:100%;max-width:800px}.cta-button{background-color:var(--color-accent-pumpkin);color:var(--color-primary-dark);padding:.8rem 2rem;border-radius:5px;font-weight:700;text-decoration:none;transition:all .3s ease;display:inline-block}main section{padding:6rem 1rem;text-align:center;border-bottom:1px solid var(--color-card-bg);width:100%;max-width:100%;margin:0 auto;overflow:hidden}h2{font-size:2.5rem;margin-bottom:3rem;color:var(--color-accent-pumpkin);border-bottom:3px solid var(--color-secondary-purple);display:inline-block;padding-bottom:.5rem;text-shadow:0 0 5px rgba(168,80,168,.5);max-width:90%}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1200px;margin:0 auto;width:100%;justify-items:center}.portfolio-item{background-color:var(--color-card-bg);border:1px solid var(--color-secondary-purple);padding:1.5rem;border-radius:8px;transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:350px}.portfolio-item img{width:100%;height:200px;object-fit:cover;border-radius:5px;margin-bottom:1.5rem;border:2px solid var(--color-accent-pumpkin)}.skills-list{text-align:center;margin:0 auto;padding:0;max-width:800px;width:100%}.skills-list ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;width:100%}.skill-item{background-color:var(--color-card-bg);padding:.75rem 1.5rem;border-left:5px solid var(--color-success-green);border-radius:4px;font-size:1.1rem;transition:all .2s;cursor:default}.skill-item:hover{background-color:#453846;transform:scale(1.05)}.contact-form{max-width:600px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem;text-align:left}.contact-form input,.contact-form textarea{width:100%;padding:1rem;background-color:var(--color-card-bg);border:2px solid var(--color-card-bg);color:var(--color-text-light);border-radius:8px}.footer{padding:3rem 1rem;background-color:#0d0d1a;width:100%}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1.5rem;width:100%}.cursor-dot{position:absolute;width:6px;height:6px;background-color:var(--color-success-green);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);box-shadow:0 0 5px var(--color-accent-pumpkin);z-index:9999}@media (max-width: 1024px){.navbar{padding:.5rem 1rem}.menu-toggle{display:flex}.nav-links{display:none;flex-direction:column;width:100%;background-color:var(--color-card-bg);position:absolute;top:100%;left:0;padding:2rem 0;box-shadow:0 4px 8px #00000080}.nav-links.is-open{display:flex}.hero-content h2{font-size:2.2rem}}@media (max-width: 600px){main section{padding:4rem 1rem}h2{font-size:1.8rem}.portfolio-grid{grid-template-columns:1fr;padding:0 .5rem}.portfolio-item{max-width:100%}.hero-content h2{font-size:1.8rem}.hero-content p{font-size:1.1rem}}@media (max-width: 360px){.portfolio-grid{gap:1.5rem}.skill-item{font-size:.9rem;padding:.5rem 1rem}}.App{display:flex;flex-direction:column;min-height:100vh;max-width:1400px;margin:0 auto;padding:0 1rem;text-align:center}.app-container{max-width:1400px;margin:0 auto;padding:0 1rem}.header{background-color:var(--color-card-bg);color:var(--color-text-light);padding:1rem 2rem;position:fixed;top:0;left:0;right:0;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 2px 10px #00000080}.navbar{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;padding:1rem}.logo{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-accent-pumpkin);display:inline-flex;align-items:center;transition:color .5s}.mr-3{margin-right:.5rem}.nav-links{list-style:none;display:flex;gap:1.5rem;margin:0;padding:0}.nav-links li{margin-left:1.5rem}.nav-links a{color:var(--color-text-light);text-decoration:none;transition:color .3s;text-transform:uppercase;font-size:.9rem;letter-spacing:1px}.nav-links a:hover{color:var(--color-accent-pumpkin)}.menu-toggle{display:none;flex-direction:column;justify-content:space-around;width:30px;height:25px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.menu-toggle div{width:100%;height:3px;background:var(--color-accent-pumpkin);border-radius:10px;transition:all .3s linear;transform-origin:1px}.menu-toggle.is-open div:nth-child(1){transform:rotate(45deg)}.menu-toggle.is-open div:nth-child(2){opacity:0;transform:translate(20px)}.menu-toggle.is-open div:nth-child(3){transform:rotate(-45deg)}.hero-section{text-align:center;padding:8rem 1rem;display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 80px);flex-direction:column}.hero-content h2{font-size:3rem;border:none;padding:0;margin-bottom:1rem;color:var(--color-accent-pumpkin)}.hero-content p{font-size:1.5rem;max-width:700px;margin:0 auto 2rem;color:var(--color-text-light)}.cta-button{background-color:var(--color-accent-pumpkin);color:var(--color-primary-dark)}.cta-button:hover{background-color:#ff8c33;transform:translateY(-2px);box-shadow:0 4px 10px #ff6f0066,0 0 15px var(--color-success-green)}main section{padding:4rem 2rem;text-align:center;border-bottom:1px solid var(--color-card-bg)}main section:nth-child(odd),main section:nth-child(2n){background-color:var(--color-primary-dark)}h2{font-size:2.5rem;margin-bottom:2rem;color:var(--color-accent-pumpkin);border-bottom:3px solid var(--color-secondary-purple);display:inline-block;padding-bottom:.5rem;text-shadow:0 0 5px rgba(168,80,168,.5)}.portfolio-grid{display:flex;flex-wrap:wrap;justify-content:space-evenly;gap:2rem;max-width:1200px;margin:0 auto}.portfolio-item{min-width:280px;flex-basis:27%;flex-grow:0;background-color:var(--color-card-bg);border:1px solid var(--color-secondary-purple);padding:1.5rem;border-radius:8px;transition:transform .3s,box-shadow .3s}.portfolio-item:hover{transform:translateY(-8px);box-shadow:0 12px 25px #a850a899,0 0 15px #a850a84d}.portfolio-item h3{color:var(--color-text-light);margin-bottom:.5rem}.portfolio-item img{max-width:100%;height:200px;object-fit:cover;object-position:center;border-radius:5px;margin-bottom:1rem;border:2px solid var(--color-accent-pumpkin)}.skills-list{text-align:center;margin:0 auto;padding:0;max-width:700px}.skills-list ul{list-style:none;padding:0;display:inline-block;text-align:left}.skills-list li{background-color:var(--color-card-bg);margin:.5rem 0;padding:.5rem 1rem;border-left:5px solid var(--color-success-green);border-radius:4px;font-size:1.1rem;transition:background-color .2s}.skills-list li:hover{background-color:#453846}.socials-section,.contact-section{text-align:center}.socials-list{margin-top:2rem}.social-item{font-size:1.25rem;margin:.5rem 0}.contact-form{max-width:600px;width:auto;margin:0 auto;display:grid;grid-template-columns:1fr;gap:1.5rem;text-align:left}.contact-form label{font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:1px;font-size:.9rem;display:block;margin-bottom:.5rem}.contact-form input,.contact-form textarea{width:auto;padding:1rem;background-color:var(--color-card-bg);border:2px solid var(--color-card-bg);color:var(--color-text-light);border-radius:8px;transition:border-color .3s,box-shadow .3s;font-size:1rem;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--color-accent-pumpkin);box-shadow:0 0 10px #ff6f0066}.input-error{border-color:#f35!important;box-shadow:0 0 8px #f359!important}.error-text{color:#f35;font-size:.8rem;display:block;padding:.25rem .5rem 0;line-height:1.2;min-height:1.2rem}.submit-button{background-color:var(--color-accent-pumpkin);color:var(--color-primary-dark);transition:all .5s}.submit-button:hover{background-color:#ff8c33}.submit-button:disabled{background-color:var(--color-text-faded);cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.status-message{padding:1rem;margin-top:1rem;border-radius:8px;font-weight:600;text-align:center}.status-message.success{background-color:#61ff3333;color:var(--color-success-green);border:1px solid var(--color-success-green)}.status-message.error{background-color:#f353;color:#f35;border:1px solid #ff3355}.footer{padding:1.5rem 1rem;margin-top:4rem}.footer-content{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem}.footer-content p{font-size:.9rem;color:var(--color-text-secondary);margin:0}.footer-socials{display:flex;gap:1.5rem}.footer-social-item{color:var(--color-text-secondary);transition:color .3s}.footer-social-item:hover{color:var(--color-success-green)}.back-to-top{color:var(--color-success-green);font-family:var(--font-heading);font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.back-to-top:hover{color:#79ff57}.cursor-dot{position:absolute;width:6px;height:6px;background-color:var(--color-success-green);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);transition:width .1s,height .1s;box-shadow:0 0 5px var(--color-accent-pumpkin);z-index:9999}@media (max-width: 1024px){.navbar{flex-wrap:wrap;padding:.5rem 1rem}.menu-toggle{display:flex}.nav-links{display:none;flex-direction:column;width:100%;text-align:center;background-color:var(--color-card-bg);position:absolute;top:65px;left:0;padding:1rem 0;box-shadow:0 4px 8px #00000080;max-height:calc(100vh - 65px);overflow-y:auto}.nav-links.is-open{display:flex}.nav-links li{margin:.5rem 0}.nav-links a{display:block;padding:.5rem 0}.hero-content h2{font-size:2rem}h2{font-size:1.8rem}}
