@import"https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap";:root{--primary-color: #000000;--secondary-color: #ffffff;--accent-gray: #333333;--text-dark: #111111;--text-light: #666666;--bg-color: #ffffff;--bg-light-gray: #f2f2f2;--font-main: "Roboto", sans-serif;--nav-height: 80px}html,body{overflow-x:hidden;width:100%;position:relative}body{font-family:var(--font-main);margin:0;padding-top:var(--nav-height);background-color:var(--bg-color);color:var(--text-dark);line-height:1.6}header{background:var(--primary-color);height:var(--nav-height);padding:0 2rem;display:flex;justify-content:space-between;align-items:center;position:fixed;top:0;width:100%;box-sizing:border-box;z-index:1000;border-bottom:1px solid #333}.menu-toggle{display:none;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;z-index:1002;padding:0;align-items:center;justify-content:center;height:100%;margin-right:1.5rem}header img{height:100%;width:auto;filter:brightness(0) invert(1);display:block}nav a{text-decoration:none;color:var(--secondary-color);margin-left:2rem;font-weight:500;text-transform:uppercase;font-size:1.1rem;letter-spacing:1px;transition:opacity .3s}nav a:hover{opacity:.7}.btn{display:inline-block;background-color:var(--secondary-color);color:var(--primary-color);padding:1rem 2rem;text-decoration:none;font-weight:700;text-transform:uppercase;border-radius:0;transition:all .3s ease;border:1px solid transparent;cursor:pointer;letter-spacing:1px}.btn:hover{background-color:var(--primary-color);color:var(--secondary-color);border-color:var(--secondary-color)}.container{max-width:1200px;margin:0 auto;padding:0px 2rem 2rem}.container h2{font-size:2.5rem;color:var(--primary-color);margin-top:2rem;margin-bottom:.5rem;text-align:left;text-wrap:balance}.hero{background-color:#1a1a1a;background-size:cover;background-position:center;color:#fff;min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 1rem;position:relative;transition:background-image 1s ease-in-out}.hero:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1}.hero .container{position:relative;z-index:2}.hero h1{font-size:3.5rem;font-weight:700;margin-bottom:1rem;line-height:1.1;text-wrap:balance}.hero p{font-size:1.2rem;opacity:.9;max-width:700px;margin:0 auto 2rem;text-wrap:balance}.stats{background-color:#fff;color:var(--primary-color);padding:3rem 0 1.5rem;text-align:center;border-bottom:1px solid #eee}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1000px;margin:0 auto}.stat-item h3{font-size:3rem;margin:0;color:var(--primary-color)}.stat-item p{font-size:.9rem;text-transform:uppercase;font-weight:500;letter-spacing:1px;color:var(--text-light)}.services{background-color:var(--bg-light-gray);padding:1rem 2rem 5rem}.services h2{text-align:center;font-size:2.5rem;color:var(--primary-color);margin-bottom:2rem;text-wrap:balance}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.service-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px #0000001a;transition:transform .3s ease;height:100%;display:flex;flex-direction:column}.service-card:hover{transform:translateY(-10px)}.service-card img{width:100%;height:250px;object-fit:cover}.service-content{padding:2rem;text-align:center;flex-grow:1}.service-content h3{font-size:1.5rem;color:var(--primary-color);margin:0 0 1rem;font-weight:700}.service-content p{font-size:1rem;color:#555;line-height:1.6;text-wrap:balance}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:3rem;margin-top:5rem}.project-wrapper{perspective:1000px;cursor:pointer;margin-bottom:2rem}.project-stack{position:relative;width:100%;height:300px;transform-style:preserve-3d}.stack-card{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;transition:all .5s ease-out;border-radius:4px;box-shadow:0 5px 15px #0003;background-color:#333}.project-info{margin-top:2rem;background:#fff;padding:1rem}.project-info h3{color:var(--primary-color);font-size:1.5rem;margin:0 0 .5rem;text-transform:uppercase}.project-info p{margin:.3rem 0;font-size:.95rem;color:var(--text-light)}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;margin-top:2rem;align-items:start}@media(max-width:768px){.hero h1{font-size:2.5rem}.gallery-grid{grid-template-columns:1fr;gap:2rem}.contact-grid{grid-template-columns:1fr}header{padding:0 1rem}nav a{margin-left:0;font-size:.9rem;margin-bottom:0;opacity:0;transform:translate(20px);transition:all .4s ease}.nav-active nav a{opacity:1;transform:translate(0)}nav{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--primary-color);flex-direction:row;justify-content:space-evenly;padding-right:4.5rem;box-sizing:border-box;align-items:center;display:flex;transform:translate(100%);transition:transform .4s ease-in-out;z-index:1001}.nav-active nav{transform:translate(0)}.menu-toggle{display:flex}.hero{min-height:50vh}}.nav-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#0000004d;color:#fff;border:none;font-size:2rem;padding:1rem .5rem;cursor:pointer;z-index:100;transition:background .3s;-webkit-user-select:none;user-select:none}.nav-arrow:hover{background:#000000b3}.nav-arrow.prev{left:0;border-radius:0 5px 5px 0}.nav-arrow.next{right:0;border-radius:5px 0 0 5px}.contact-info-container{display:flex;flex-direction:column;gap:3rem}.section-title{color:#7a8ba0;font-size:1.5rem;font-weight:700;margin-bottom:1rem;margin-top:0!important}.address-details,.people-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.bold-text{font-weight:700;color:var(--primary-color);margin:.2rem 0}.italic-text{font-style:italic;margin-bottom:.5rem}.person-name{font-weight:700;color:var(--primary-color);margin-bottom:.2rem}.address-block p,.contact-block p,.person-card p{margin:.1rem 0;line-height:1.4}.mobile-map-link{display:none;text-align:center;margin-top:1rem;width:100%;box-sizing:border-box}.map-container iframe{width:100%;height:100%;margin-top:1rem;min-height:550px}@media(max-width:768px){.address-details,.people-details{grid-template-columns:1fr;gap:1.5rem}.map-container iframe{display:none}.mobile-map-link{display:inline-block}.contact-grid{gap:2rem}}
