/* CSS generato il 05/10/2025 12:09:29 */
body { margin: 0; padding: 20px; font-family: 'Roboto', Arial, sans-serif; background: linear-gradient(135deg, #1a1a1a 0%, #2c2c2c 100%); text-align: center; }
header { position: relative; background-color: #111; color: white; padding: 30px; background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url('header-bg.jpg'); background-size: cover; background-position: center; display: flex; justify-content: space-between; align-items: flex-start; border-bottom-left-radius: 15px; border-bottom-right-radius: 15px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); }
.header-left { display: flex; flex-direction: column; align-items: flex-start; }
h1 { margin: 0; font-size: 2.8em; font-weight: 700; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); transition: opacity 0.3s ease; }
h1:hover { opacity: 0.9; }
.header-info { margin: 0; font-size: 1.2em; color: #e0e0e0; font-family: 'Roboto', sans-serif; font-weight: 400; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); transition: opacity 0.3s ease; }
.header-info:hover { opacity: 0.9; }
.gallery-count { margin: 5px 0 0 0; font-size: 1.1em; color: #66b3ff; font-family: 'Roboto', sans-serif; font-weight: 400; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6); background: rgba(0, 123, 255, 0.2); padding: 5px 10px; border-radius: 8px; transition: opacity 0.3s ease; }
.gallery-count:hover { opacity: 0.9; }
.gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); column-gap: 10px; row-gap: 15px; padding: 20px 0; max-width: 1200px; margin: 0 auto; }
.gallery-item { width: 230px; background: linear-gradient(145deg, #333 0%, #444 100%); border-radius: 15px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); overflow: hidden; transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; padding: 5px; box-sizing: border-box; border: 1px solid #555; position: relative; animation: slideIn 0.5s ease-in-out; }
.gallery-item:hover { transform: translateY(-5px); box-shadow: 0 8px 16px rgba(0, 123, 255, 0.3); border-color: #007bff; }
.gallery-item img { width: 210px; height: 150px; object-fit: cover; object-position: center; display: block; margin: 5px auto 0 auto; border-radius: 10px; transition: transform 0.3s ease; }
.gallery-item img:hover { transform: scale(1.02); }
.gallery-item p { margin: 10px 0; font-size: 1.1em; color: #e0e0e0; font-family: 'Roboto', sans-serif; font-weight: 500; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4); }
.gallery-item a { text-decoration: none; color: inherit; }
footer { background-color: #111; color: white; padding: 20px; border-top-left-radius: 15px; border-top-right-radius: 15px; box-shadow: 0 -4px 8px rgba(0, 0, 0, 0.3); display: flex; flex-direction: column; align-items: center; }
.footer-info { margin: 5px 0 0 0; font-size: 1.2em; color: #e0e0e0; font-family: 'Roboto', sans-serif; font-weight: 400; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); transition: opacity 0.3s ease; }
.footer-info:hover { opacity: 0.9; }
.footer-copyright { margin: 5px 0 0 0; font-size: 1.2em; color: #e0e0e0; font-family: 'Roboto', sans-serif; font-weight: 400; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6); transition: opacity 0.3s ease; }
.footer-copyright:hover { opacity: 0.9; }
@keyframes slideIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
