.portfolio{max-width:1200px;margin:0 auto;padding:2rem;background:rgba(0,0,0,.67);border-radius:30px}.portfolio html{scroll-behavior:smooth}.portfolio h1{font-size:2.5rem;margin-bottom:1rem}.portfolio h2{font-size:2rem;margin-bottom:.75rem}.portfolio h3{font-size:1.5rem;margin-bottom:.5rem}.portfolio p{font-size:1rem;line-height:1.6;margin-bottom:1rem}.portfolio .contact-cta{text-align:center;margin:2rem 0}.portfolio .contact-cta a{color:#2ea831;text-decoration:none}.portfolio .contact-cta a:hover{color:#235025;text-decoration:underline}.portfolio section{margin-bottom:2rem}.portfolio .project-overview{background-color:rgba(19,17,20,.8);padding:1rem;border-radius:8px}.portfolio .key-features ul,.portfolio .technical-details ul{list-style-type:none;padding:0}.portfolio .key-features li,.portfolio .technical-details li{margin-bottom:.5rem;padding-left:1rem;position:relative}.portfolio .key-features li::before,.portfolio .technical-details li::before{content:"•";position:absolute;left:0}.portfolio .screenshots .screenshot-container{display:flex;flex-wrap:wrap;gap:1rem}.portfolio .screenshots .screenshot-container img{width:calc(33.33% - 1rem);border-radius:8px}.portfolio .download-links .download-links-container{display:flex;justify-content:center;gap:1rem}.portfolio .download-links .download-links-container a{display:inline-block;width:150px;height:50px;background-color:#fff;border-radius:8px;align-items:center;justify-content:center;transition:transform .3s}.portfolio .download-links .download-links-container a:hover{transform:translateY(-5px)}.portfolio .download-links .download-links-container a img{width:100%;height:100%;object-fit:contain}.project-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:1.5rem;margin-bottom:2rem}.project-grid .project-item{position:relative;overflow:hidden;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:transform .3s ease}.project-grid .project-item:hover{transform:translateY(-5px)}.project-grid .project-item img{width:100%;height:auto;object-fit:cover}.project-grid .project-item p{position:absolute;bottom:0;left:0;right:0;padding:.5rem;margin:0;background-color:rgba(0,0,0,.7);color:#fff;font-size:.9rem;text-align:center}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);display:flex;justify-content:center;align-items:center;z-index:10000}.modal-content{background-color:#fff;padding:2rem;border-radius:8px;max-width:600px;width:90%;position:relative}.modal-close-button{position:absolute;top:1rem;right:1rem}@media screen and (max-width: 768px){.project-grid{grid-template-columns:repeat(auto-fill, minmax(150px, 1fr))}.skills ul{columns:2}}@media screen and (max-width: 480px){.project-grid{grid-template-columns:1fr}.skills ul{columns:1}}.project-item{position:relative;overflow:hidden;border-radius:8px;transition:transform .3s ease,box-shadow .3s ease}.project-item:hover{transform:translateY(-5px);box-shadow:0 10px 15px rgba(0,0,0,.3)}.project-item img{width:100%;height:auto}.project-item p{position:absolute;bottom:0;width:100%;padding:.5rem;background:rgba(0,0,0,.7);color:#fff;text-align:center;font-size:.9rem;margin:0}.skills .skills-header{cursor:pointer;-webkit-user-select:none;user-select:none;font-size:1.5rem}.skills .skills-header:hover{color:#2ea831}.skills ul{list-style:none;padding:0;margin-top:1rem}.skills ul li{padding-left:1rem;position:relative;margin-bottom:.5rem}.skills ul li::before{content:"•";position:absolute;left:0;color:#2ea831}