html{scroll-behavior:smooth}#portafolio{scroll-margin-top:80px}.home-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;max-width:1200px;margin:0 auto;min-height:calc(100vh - var(--header-height))}.intro-section{width:100%;text-align:left;margin-bottom:3rem;padding-left:2rem}h1,h2,.subtitle{text-align:left}h1{font-size:2.8rem;margin-bottom:.5rem;background:linear-gradient(to right,var(--first-color),#fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-fill-color:transparent}.subtitle{font-size:1.5rem;margin-bottom:3rem;color:var(--white-color);opacity:.9}.row{display:flex;align-items:center;gap:3rem;margin:2rem 0;text-align:left;width:100%}.text-column{flex:1}.text-column h2{font-size:2.2rem;margin-bottom:1.5rem;color:var(--first-color);display:block;min-height:1.3em;opacity:1;transform:translateY(0);transition:opacity .8s ease,transform .8s ease}.text-column p{font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.image-column{flex:1;display:flex;justify-content:center}.image-container{width:100%;max-width:450px;border-radius:12px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.image-container:hover{transform:translateY(-10px);box-shadow:0 15px 40px #0006}.image-container img{width:100%;height:auto;display:block;transition:transform .5s ease}.image-container:hover img{transform:scale(1.05)}.skills-tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.tag{background-color:#4eb1d926;color:var(--first-color);padding:.5rem 1rem;border-radius:50px;font-size:.9rem;font-weight:500;transition:all .2s ease;border:1px solid rgba(78,177,217,.3)}.tag:hover{background-color:#4eb1d94d;transform:translateY(-3px)}.projects-section{width:100%;margin:4rem 0;padding:0 2rem}.projects-section h2{font-size:2.4rem;margin-bottom:1.5rem;color:var(--first-color)}.projects-section p{margin-bottom:2.5rem;font-size:1.1rem;line-height:1.6}.project-list{display:flex;flex-direction:column;gap:3rem;width:100%}.project-item{background:#01102680;border-radius:12px;padding:2rem;box-shadow:0 8px 30px #0000004d;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(78,177,217,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;display:flex;flex-direction:column}.project-item:hover{transform:translateY(-8px);box-shadow:0 12px 40px #4eb1d933;border-color:#4eb1d94d}.project-item h3{color:var(--first-color);font-size:1.6rem;margin-bottom:1rem}.project-item p{font-size:1rem;margin-bottom:1.5rem}.project-gallery{margin-top:1.5rem;width:100%}.project-gallery h4{font-size:1.3rem;color:var(--first-color);margin-bottom:1rem;border-bottom:1px solid rgba(78,177,217,.3);padding-bottom:.5rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-top:1rem;width:100%}.gallery-img{width:100%;height:140px;object-fit:cover;border-radius:8px;transition:all .3s ease;border:2px solid transparent;filter:brightness(.9);cursor:pointer}.gallery-img:hover{transform:scale(1.03);filter:brightness(1.1);border-color:var(--first-color);box-shadow:0 5px 15px #4eb1d966}.modal-overlay{display:none;position:fixed;inset:0;background-color:#000000d9;z-index:1000;justify-content:center;align-items:center;cursor:pointer}.modal-overlay.active{display:flex}.modal-content{max-width:90%;max-height:90vh;position:relative;cursor:default}.modal-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:4px;box-shadow:0 5px 30px #0000004d}.modal-close{position:absolute;top:-30px;right:-30px;background-color:var(--first-color);color:#fff;width:30px;height:30px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;font-weight:700;font-size:20px;transition:background-color .3s ease}.modal-close:hover{background-color:#d32f2f}.project-description{position:relative}.description-full,.description-expanded .description-preview{display:none}.description-expanded .description-full{display:inline}.read-more-btn{background:none;border:none;color:#4a89dc;cursor:pointer;font-weight:700;padding:0;margin-left:5px;font-size:.9rem}.read-more-btn:hover{text-decoration:underline}.description-expanded .read-more-btn{content:"Read less"}@media screen and (max-width: 768px){.home-container{padding:1rem}h1{font-size:2rem}.subtitle{font-size:1.2rem;margin-bottom:2rem}.row{flex-direction:column-reverse;gap:2rem}.text-column{text-align:center}.text-column h2{font-size:1.8rem}.skills-tags{justify-content:center}.image-container{max-width:80%}#title-animation{font-size:2rem}.project-list{flex-direction:column}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-img{height:120px}.projects-section{padding:0 1rem}.modal-close{top:-20px;right:-20px;width:25px;height:25px;font-size:16px}}@media screen and (max-width: 480px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-img{height:100px}}#title-animation{display:block;min-height:1.5em;opacity:1;transform:translateY(0);transition:opacity .8s ease,transform .8s ease}
