*{box-sizing:border-box;margin:0;padding:0}:after,:before{box-sizing:inherit}html{scroll-behavior:smooth}body{background-color:#f5f1e6;color:#1a1a1a;font-family:Montserrat,sans-serif;line-height:1.6;overflow-x:hidden}a,body{transition:all .3s ease-in-out}a{color:#5e4b3a;text-decoration:none}a:hover{color:#c0a080}.container{margin:0 auto;max-width:1200px;padding:0 20px;width:90%}.section{align-items:center;display:flex;min-height:100vh;padding:80px 0}#home{padding-top:0}.section-title{color:#3a3238;font-size:2.5rem;margin-bottom:40px;position:relative;text-align:center}.section-title:after{background:#5e4b3a;content:"";display:block;height:4px;margin:15px auto;width:80px}.btn{background:#5e4b3a;border:none;border-radius:5px;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:12px 30px;transition:all .3s ease-in-out}.btn:hover{background:#3e3227;transform:translateY(-3px)}.btn-outline{background:#0000;border:2px solid #5e4b3a;color:#5e4b3a}.btn-outline:hover{background:#5e4b3a;color:#fff}.header{align-items:center;background:#ffffffe6;box-shadow:0 2px 10px #0000001a;display:flex;height:70px;left:0;position:fixed;top:0;transition:all .3s ease-in-out;width:100%;z-index:1000}.header.scrolled{background:#fffffffa;box-shadow:0 5px 20px #0000001a;height:60px}.header .container{align-items:center;display:flex;justify-content:space-between;padding:0 20px;width:100%}.header .container.header-container{height:100%;position:relative}.header .logo-container{align-items:center;display:flex;height:100%}.header .logo{height:50px;transition:all .3s ease-in-out;width:auto}.scrolled .header{height:35px}@media(max-width:768px){.header .nav{background:#fff;height:calc(100vh - 60px);left:-100%;overflow-y:auto;padding:20px 0;position:fixed;top:60px;transform:translateX(-100%);transition:all .3s ease-in-out ease .3s;width:100%}}.header .nav.active{box-shadow:0 10px 30px #0000001a;transform:translateX(0)}.header .nav-list{display:flex;list-style:none}@media(max-width:768px){.header .nav{align-items:center;flex-direction:column;height:100%}}.header .nav-item{margin-left:30px}@media(max-width:768px){.header .nav{margin:15px 0}}.header .nav-link{color:#1a1a1a;font-size:1.1rem;font-weight:600;position:relative}.header .nav:after{background:#5e4b3a;bottom:-5px;content:"";height:2px;left:0;position:absolute;transition:all .3s ease-in-out;width:0}.header .nav:hover:after{width:100%}@media(max-width:768px){.header .nav{font-size:1.3rem;padding:10px 0}.header.menu-open{background:#fff;box-shadow:0 2px 10px #0000001a}}.hamburger{background:none;border:none;color:#1a1a1a;cursor:pointer;display:none;padding:10px;z-index:1001}@media(max-width:768px){.hamburger{display:block}}.hero{align-items:center;background:linear-gradient(#1e1e1ee6),url(/static/media/bg.dad15f32259ed277c50b.jpg) no-repeat 50%;background-size:cover;color:#fff;display:flex;height:100vh;justify-content:center;overflow:hidden;padding-top:80px;position:relative;text-align:center}.hero:before{background:#0006;content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.hero .container{max-width:1200px;padding:0 20px;position:relative;width:100%;z-index:2}.hero-content{animation:fadeInUp 1s ease-out;margin:0 auto;max-width:800px}.hero-title{font-family:Playfair Display,serif;font-size:4rem;font-weight:700;letter-spacing:2px;margin-bottom:1.5rem;text-shadow:0 2px 10px #0000004d}@media(max-width:768px){.hero-title{font-size:2.5rem}}.hero-subtitle{font-family:Montserrat,sans-serif;font-size:2rem;font-weight:300;letter-spacing:1px;margin-bottom:2.5rem;min-height:3rem;text-shadow:0 2px 5px #0003}@media(max-width:768px){.hero-subtitle{font-size:1.5rem}}.hero-buttons{display:flex;gap:20px;justify-content:center;margin-top:3rem}@media(max-width:576px){.hero-buttons{align-items:center;flex-direction:column;gap:10px}}.hero-buttons .btn{border-radius:30px;font-size:1.1rem;font-weight:600;letter-spacing:1px;padding:12px 35px;transition:all .3s ease}.hero-buttons .btn-outline{background:#0000;border:2px solid #c0a080;color:#fff}.hero-buttons .btn-outline:hover{background:#c0a08033;transform:translateY(-3px)}.hero-buttons .btn:not(.btn-outline){background:#c0a080;border:2px solid #c0a080;color:#1a1a1a}.hero-buttons .btn:not(.btn-outline):hover{background:#b8936f;box-shadow:0 5px 15px #c0a08066;transform:translateY(-3px)}.hero .scroll-down{animation:bounce 2s infinite;bottom:30px;color:#c0a080;cursor:pointer;font-size:2rem;left:50%;position:absolute;transform:translateX(-50%);transition:opacity .3s ease;z-index:10}.hero .scroll-down:hover{opacity:.8}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.typewriter{display:inline-block}.typewriter:after{animation:blink 1s infinite;content:"|";opacity:1}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media(max-width:992px){.hero-title{font-size:3rem}.hero-subtitle{font-size:1.8rem}}@media(max-width:768px){.hero{padding-top:70px}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.5rem}}.about{background:#fff}.about-content{align-items:center;display:flex;gap:50px}@media(max-width:768px){.about-content{flex-direction:column}}.about-image{border-radius:10px;flex:1 1;max-width:400px;overflow:hidden}.about-image img{display:block;height:auto;width:100%}.about-text{flex:2 1}.about-text h3{color:#3a3238;font-size:1.8rem;margin-bottom:20px}.about-text p{margin-bottom:15px}.about-info{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-top:30px}@media(max-width:576px){.about-info{grid-template-columns:1fr}}.about-info-item{align-items:center;display:flex}.about-info-item i{color:#5e4b3a;font-size:1.2rem;margin-right:10px}.about-info-item span{font-weight:600;margin-right:5px}.skills{background:#f9f9f9}.skills-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:40px}.skills-category{background:#fff;border-radius:10px;box-shadow:0 5px 15px #0000001a;padding:30px;transition:all .3s ease-in-out}.skills-category:hover{transform:translateY(-10px)}.skills-category-title{align-items:center;color:#3a3238;display:flex;font-size:1.5rem;justify-content:center;margin-bottom:20px;text-align:center}.skills-category-title i{color:#5e4b3a;margin-right:10px}.skills-category-list{list-style:none}.skills-category-item{align-items:center;display:flex;margin-bottom:15px}.skills-category-item i{color:#5e4b3a;margin-right:10px}.projects-filter{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:40px}.projects-filter-btn{background:#0000;border:1px solid #5e4b3a;border-radius:30px;color:#5e4b3a;cursor:pointer;margin:5px;padding:8px 20px;transition:all .3s ease-in-out}.projects-filter-btn.active,.projects-filter-btn:hover{background:#5e4b3a;color:#fff}.projects-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}@media(max-width:768px){.projects-grid{grid-template-columns:1fr}}.projects-item{background:#fff;border-radius:10px;box-shadow:0 5px 15px #0000001a;overflow:hidden;transition:all .3s ease-in-out}.projects-item:hover{transform:translateY(-10px)}.projects-item-image{height:200px;overflow:hidden}.projects-item-image img{height:100%;object-fit:cover;transition:all .3s ease-in-out;width:100%}.projects-item-image:hover img{transform:scale(1.1)}.projects-item-content{padding:20px}.projects-item-content h3{color:#3a3238;font-size:1.5rem;margin-bottom:10px}.projects-item-content p{margin-bottom:15px}.projects-item-content-tech{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.projects-item-content-tech span{background:#f1f1f1;border-radius:5px;font-size:.8rem;padding:5px 10px}.projects-item-content-links{display:flex;gap:15px}.projects-item-content-links a{align-items:center;display:flex;font-size:.9rem}.projects-item-content-links a i{margin-right:5px}.contact{background:#f9f9f9;padding:100px 0}.contact-container{grid-gap:50px;display:grid;gap:50px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:40px}.contact-info h3{color:#333;font-size:1.8rem;margin-bottom:20px}.contact-info p{line-height:1.7;margin-bottom:30px}.contact-info-item{align-items:center;display:flex;margin-bottom:25px}.contact-info-item i{align-items:center;background:#c0a080;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.2rem;height:50px;justify-content:center;margin-right:20px;width:50px}.contact-info-item h4{color:#333;font-size:1.2rem;margin-bottom:5px}.contact-info-item p{color:#666;margin:0}.contact-form .form-group{margin-bottom:20px;position:relative}.contact-form .form-group input:invalid,.contact-form .form-group textarea:invalid{border-color:#f44}.contact-form .form-group input:valid,.contact-form .form-group textarea:valid{border-color:#00c851}.contact-form .form-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.contact-form .form-group input,.contact-form .form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;padding:12px 15px;transition:all .3s ease;width:100%}.contact-form .form-group input:focus,.contact-form .form-group textarea:focus{border-color:#c0a080;box-shadow:0 0 0 3px #c0a0801a;outline:none}.contact-form .form-group textarea{min-height:150px;resize:vertical}.contact-form .error-message{animation:fadeIn .3s ease-out;color:#f44;display:block;font-size:.85rem;margin-top:5px}.contact-form input:focus:invalid,.contact-form textarea:focus:invalid{box-shadow:0 0 0 3px #ff44441a}.contact-form input:focus:valid,.contact-form textarea:focus:valid{box-shadow:0 0 0 3px #00c8511a}.contact-form .btn{background:#c0a080;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px;position:relative;transition:all .3s ease;width:100%}.contact-form .btn:disabled{cursor:not-allowed;opacity:.7}.contact-form .btn:hover{background:#af865e}.contact-form .spinner{animation:spin 1s linear infinite;margin-right:8px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.notification-overlay{align-items:center;animation:fadeIn .3s ease-out;background:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.notification-overlay.success .notification-icon{background:#4caf50}.notification-overlay.error .notification-icon{background:#f44336}.notification-box{animation:slideUp .4s ease-out;background:#fff;border-radius:10px;box-shadow:0 10px 30px #0003;max-width:500px;padding:40px;text-align:center;width:90%}.notification-box h3{color:#333;font-size:1.8rem;margin:20px 0 10px}.notification-box p{color:#666;font-size:1.1rem;margin-bottom:25px}.notification-icon{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:2.5rem;height:80px;justify-content:center;margin:0 auto;width:80px}.notification-close-btn{background:#c0a080;border:none;border-radius:30px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:15px;padding:12px 30px;transition:all .3s ease}.notification-close-btn:hover{background:#af865e;transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.footer{background:#3a3238;color:#fff;padding:50px 0 20px;text-align:center}.footer-logo{height:60px;margin-bottom:20px}.footer-social{margin:20px 0}.footer-social,.footer-social a{display:flex;justify-content:center}.footer-social a{align-items:center;background:#ffffff1a;border-radius:50%;color:#fff;height:40px;margin:0 10px;transition:all .3s ease-in-out;width:40px}.footer-social a:hover{background:#5e4b3a;transform:translateY(-5px)}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;margin:20px 0}.footer-links a{color:#fff;margin:0 15px;transition:all .3s ease-in-out}.footer-links a:hover{color:#5e4b3a}.footer-copyright{border-top:1px solid #ffffff1a;color:#ffffffb3;font-size:.9rem;margin-top:30px;padding-top:20px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0) translateX(-50%)}40%{transform:translateY(-20px) translateX(-50%)}60%{transform:translateY(-10px) translateX(-50%)}}@media(max-width:992px){.section{padding:60px 0}.section-title{font-size:2rem}.hero-title{font-size:2.8rem}.hero-subtitle{align-items:center;color:#fff;display:flex;justify-content:center;min-height:60px}}@media(max-width:768px){.header .nav{background:#fff;height:calc(100vh - 70px);left:-100%;padding:40px 0;position:fixed;top:55px;transition:all .3s ease-in-out;width:100%}.header .nav.active{left:0}.header .nav-list{align-items:center;flex-direction:column}.header .nav-item{margin:15px 0}.header .hamburger{display:block}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.3rem}.about-content{flex-direction:column}.about-image{margin-bottom:30px}}@media(max-width:576px){.section{padding:50px 0}.section-title{font-size:1.8rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.1rem}.hero-buttons .btn{display:block;margin:10px auto;width:80%}}