*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:#333;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}@media (max-width: 768px){.container{padding:0 15px}}.navbar{position:fixed;top:0;width:100%;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 10px #0000001a;z-index:1000;transition:all .3s ease}.nav-container{max-width:1200px;margin:0 auto;padding:1rem 20px;display:flex;justify-content:space-between;align-items:center;position:relative}.logo{font-size:1.5rem;font-weight:700;color:#2c3e50}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem;z-index:1001;min-width:44px;min-height:44px;touch-action:manipulation}.hamburger{display:flex;flex-direction:column;gap:5px;width:25px;height:20px}.hamburger span{display:block;width:100%;height:3px;background:#2c3e50;border-radius:3px;transition:all .3s ease}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.nav-links{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-links li{margin:0;padding:0}.nav-link{text-decoration:none;color:#333;font-weight:500;transition:color .3s ease;cursor:pointer;padding:.5rem 1rem;border-radius:5px;transition:all .3s ease}.nav-link:hover,.nav-link.active{color:#3498db;background:#3498db1a}.hero{min-height:100vh;height:auto;background:linear-gradient(135deg,#2c3e50,#3498db);background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;margin-top:70px;padding:2rem 1rem;position:relative}.hero-content h1{font-size:3.5rem;margin-bottom:1rem;animation:fadeInUp 1s ease}.hero-subtitle{font-size:1.5rem;opacity:.9;animation:fadeInUp 1s ease .2s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.services{padding:60px 0;background:#f8f9fa}.services h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#2c3e50}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}.service-card{background:#fff;padding:2rem;border-radius:10px;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease,box-shadow .3s ease;text-align:center}.service-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000026}.service-image-wrapper{width:100%;height:200px;margin-bottom:1.5rem;border-radius:10px;overflow:hidden;background:#f0f0f0}.service-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.service-card:hover .service-image{transform:scale(1.05)}.service-card h3{font-size:1.5rem;margin-bottom:1rem;color:#2c3e50}.service-card p{color:#666;line-height:1.8}.contact{padding:60px 0;background:#fff}.contact h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#2c3e50}.contact-content{max-width:800px;margin:0 auto}.contact-info{display:grid;gap:2rem}.contact-item{text-align:center;padding:1.5rem;background:#f8f9fa;border-radius:10px;transition:transform .3s ease}.contact-item:hover{transform:translateY(-3px)}.contact-item h3{font-size:1.5rem;margin-bottom:.5rem;color:#2c3e50}.contact-item p{color:#666;margin-bottom:.5rem}.contact-link{display:inline-flex;color:#3498db;text-decoration:none;font-weight:600;font-size:1.1rem;transition:color .3s ease;padding:.5rem;min-height:44px;align-items:center;touch-action:manipulation}.contact-link:hover{color:#2980b9;text-decoration:underline}.gallery{padding:60px 0;background:#fff}.gallery h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#2c3e50}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.gallery-item{position:relative;overflow:hidden;border-radius:10px;box-shadow:0 5px 15px #0000001a;aspect-ratio:4 / 3;background:#f0f0f0;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.gallery-item:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000026}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.gallery-item:hover img{transform:scale(1.05)}.footer{background:#2c3e50;color:#fff;text-align:center;padding:2rem 0}@media (max-width: 768px){.menu-toggle{display:block}.nav-links{position:fixed;top:70px;left:0;width:100%;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;padding:1rem 0;box-shadow:0 5px 15px #0000001a;transform:translate(-100%);transition:transform .3s ease;gap:0;list-style:none}.nav-links.active{transform:translate(0)}.nav-link{display:block;padding:1rem 2rem;width:100%;text-align:left;font-size:1rem;border-radius:0;border-bottom:1px solid rgba(0,0,0,.05);min-height:44px;display:flex;align-items:center;touch-action:manipulation}.nav-link:hover,.nav-link.active{background:#3498db1a}.hero{margin-top:70px;padding:3rem 1rem;min-height:calc(100vh - 70px)}.hero-content h1{font-size:2.5rem;line-height:1.2;margin-bottom:1rem}.hero-subtitle{font-size:1.2rem;padding:0 1rem}.services{padding:40px 0}.services h2{font-size:2rem;margin-bottom:2rem;padding:0 1rem}.services-grid{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem}.service-card{padding:1.5rem}.service-image-wrapper{height:180px;margin-bottom:1rem}.service-card h3{font-size:1.3rem}.service-card p{font-size:.95rem;line-height:1.6}.contact{padding:40px 0}.contact h2{font-size:2rem;margin-bottom:2rem;padding:0 1rem}.contact-item{padding:1.5rem 1rem}.contact-item h3{font-size:1.3rem}.contact-item p{font-size:.95rem}.gallery{padding:40px 0}.gallery h2{font-size:2rem;margin-bottom:2rem;padding:0 1rem}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.logo{font-size:1.2rem}.nav-container{padding:1rem 15px}}@media (max-width: 480px){.hero-content h1{font-size:2rem}.hero-subtitle,.logo{font-size:1rem}.services h2,.contact h2{font-size:1.75rem}.service-card{padding:1.25rem}.service-icon{font-size:2.5rem}.contact-item{padding:1.25rem .75rem}.contact-link{font-size:1rem}.gallery h2{font-size:1.75rem}.gallery-grid{grid-template-columns:1fr;gap:1rem}.footer{padding:1.5rem 0;font-size:.9rem}}@media (max-width: 360px){.hero-content h1{font-size:1.75rem}.hero-subtitle{font-size:.9rem}.services h2,.contact h2{font-size:1.5rem}}
