:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;background-color:#fff;color:#000;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;place-items:center;min-width:320px}.nav{position:fixed;top:0;left:0;right:0;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px #0000001a;z-index:1000;transition:all .3s ease}.unstyled-button{border:none;background:none;cursor:pointer}.nav.scrolled{background:#fffffff2;box-shadow:0 4px 20px #00000014}.nav-content{max-width:1400px;margin:0 auto;padding:1.2rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{display:flex;align-items:center;text-decoration:none;color:#1a1a1a;transition:opacity .3s ease}.nav-logo:hover{opacity:.8}.nav-logo-img{height:45px;width:auto;margin-right:1rem}.nav-links{display:flex;gap:3rem;align-items:center}.nav-links a{text-decoration:none;color:#4a4a4a;font-weight:500;font-size:1.05rem;letter-spacing:.3px;transition:all .3s ease;padding:.5rem 0;position:relative}.nav-links a:hover{color:#1a1a1a}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#1a1a1a,#4a4a4a);transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1);transform-origin:left}.nav-links a.active{color:#1a1a1a;font-weight:600}.nav-link{color:#2c2c2c;text-decoration:none;font-weight:500;padding:.5rem 1rem;transition:all .3s ease;background:none;border:none;cursor:pointer;font-size:1rem;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:2px;background-color:#2c2c2c;transition:width .3s ease}.nav-link:hover:after,.nav-link.active:after{width:calc(100% - 2rem)}.nav-link:hover{color:#2c2c2c}.nav-link.active{font-weight:600}.nav.scrolled .nav-link,.nav.scrolled .nav-link:hover{color:#2c2c2c}.mobile-menu-btn{display:none;background:none;border:none;padding:.5rem;cursor:pointer;position:relative;width:40px;height:40px;z-index:1001}.mobile-menu-btn span{display:block;width:24px;height:2px;background-color:#1a1a1a;margin:5px auto;transition:all .3s ease;position:absolute;left:50%;transform:translate(-50%)}.mobile-menu-btn span:nth-child(1){top:12px}.mobile-menu-btn span:nth-child(2){top:19px}.mobile-menu-btn span:nth-child(3){top:26px}.mobile-menu-btn.active span:nth-child(1){transform:translate(-50%) rotate(45deg);top:19px}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:translate(-50%) rotate(-45deg);top:19px}@media (max-width: 768px){.nav-content{padding:1rem}.nav-logo-img{height:35px}.nav-links{gap:2rem}.mobile-menu-btn{display:block}.nav-links{position:fixed;top:0;right:-100%;height:100vh;width:250px;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;gap:2rem;padding:5rem 2rem;transition:right .3s ease;box-shadow:-5px 0 20px #0000001a}.nav-links.active{right:0}}.footer{background:#2c2c2c;color:#fff;padding:4rem 2rem;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)}.footer-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr;gap:4rem;position:relative;z-index:1}.footer-info{display:flex;flex-direction:column;gap:1.5rem;font-size:1.1rem;line-height:1.6;align-items:flex-start;justify-content:center;text-align:left}.footer-logo{width:120px;height:auto;filter:brightness(1.1);transition:filter .3s ease}.footer-logo:hover{filter:brightness(1.2)}.footer-contact{display:flex;flex-direction:column;gap:1.5rem;text-align:left}.footer-contact h3{font-size:1.5rem;margin:0;color:#fff}.contact-links{display:flex;flex-direction:column;gap:1rem}.contact-link{display:flex;align-items:center;gap:.75rem;color:#fff;text-decoration:none;transition:color .3s ease;font-size:1.1rem}.contact-link:hover{color:#ccc}.location{display:flex;align-items:center;gap:.75rem;margin:0;font-size:1.1rem}.copyright{color:#fff9;font-size:.9rem;margin-top:auto}@media (max-width: 768px){.footer{padding:3rem 1.5rem}.footer-content{grid-template-columns:1fr;gap:2rem}.footer-info,.footer-contact{text-align:center;align-items:center}.contact-links{align-items:center}}.entrance-logo{position:absolute;top:30%}.main-content{padding:3rem;margin-top:40px}@media (max-width: 768px){.main-content{padding:1rem}}.content{display:flex;flex-direction:column;height:100%;width:100%}.hero-image-main{position:absolute;height:500px;width:100%;background-image:url(/assets/timber-widfxNZ0.jpeg);background-size:cover;background-position:center;opacity:.5}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:1rem 0}.service-card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:2rem;height:100%}.showcase-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0}.showcase-item img{width:100%;height:250px;object-fit:cover;border-radius:8px}.reviews-container{max-width:100%;margin:2rem auto}.review-card{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 2px 10px #0000000d;max-width:600px;margin:1rem auto}@media (max-width: 768px){.services-grid,.showcase-grid{grid-template-columns:1fr;gap:1.5rem}.showcase-item img{height:200px}.review-card{padding:1rem;margin:.75rem auto}.main-content{margin-top:80px}}#root{margin:0 auto;text-align:center;width:100vw}.container{text-align:center;display:flex;height:100vh;width:100%;justify-content:center;align-items:center}.divider{width:20%;height:2px;background:#2c2c2c;border-radius:20px;margin:2rem auto}.logo{width:300px;filter:drop-shadow(0 0 20px rgba(0,0,0,.1))}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.fade-in{animation:fade-in .8s cubic-bezier(.4,0,.2,1) forwards}.home-content{display:flex;flex-direction:column;gap:4rem;padding:2rem;max-width:1400px;margin:0 auto}.hero{position:relative;min-height:70vh;display:block;text-align:center;color:#2c2c2c;overflow:hidden;background:linear-gradient(#ffffffeb,#ffffffeb);padding:2rem;border-radius:20px}.hero h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin-bottom:1.5rem;line-height:1.2;letter-spacing:-.02em;opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease forwards}.hero .tagline{font-size:clamp(1.2rem,2vw,1.8rem);font-weight:400;color:#666;margin-bottom:2.5rem;opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease forwards .2s}.hero-overlay{position:relative;z-index:2;padding:3rem;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:800px;background:#ffffffb3;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.2)}.scroll-indicator{position:absolute;bottom:0rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;animation:fadeIn .8s ease forwards 1s}.scroll-indicator p{font-size:.9rem;color:#666;text-transform:uppercase;letter-spacing:.1em;margin:0}.scroll-indicator svg{width:24px;height:24px;stroke:#666;animation:bounce 2s infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.services-section{padding:2rem;background:#f8f8f8;border-radius:20px}.section-title{text-align:center;font-size:2rem;letter-spacing:1px;font-weight:600;margin-bottom:3rem;color:#2c2c2c;position:relative;padding-bottom:1rem}.section-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:3px;background:#2c2c2c}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1400px;margin:0 auto;padding:0 2rem}.service-item{background:#fff;padding:0;border-radius:15px;box-shadow:0 4px 20px #0000000d;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;display:flex;flex-direction:column;text-align:center}.service-item:before{content:"";position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(to bottom,#0003,#0000);z-index:1;opacity:0;transition:opacity .3s ease}.service-item:hover:before{opacity:1}.service-image{width:100%;height:200px;object-fit:cover;margin-bottom:0;opacity:.8;transition:all .3s ease;transform:scale(1)}.service-item:hover .service-image{opacity:1;transform:scale(1.05)}.service-item h3{font-size:1.5rem;color:#2c2c2c;margin:1.5rem 1rem .5rem;font-weight:600;position:relative}.service-item p{color:#666;margin:0 1rem 1.5rem;line-height:1.6;font-size:1rem;position:relative}.service-item:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026}.services-cta{text-align:center;padding:3rem;background:#fff;border-radius:15px;box-shadow:0 4px 20px #0000000d;margin:2rem}.services-cta h3{font-size:2rem;color:#2c2c2c;margin-bottom:1rem;font-weight:600}.services-cta p{color:#666;font-size:1.1rem;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.cta-button{font-size:1.1rem;padding:1rem 2.5rem;background:#2c2c2c;color:#fff;border:none;border-radius:30px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;position:relative;overflow:hidden}.cta-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #0000001a;background:#404040}.contact-banner{background:#f8f8f8;padding:4rem 2rem;border-radius:20px;text-align:center}.contact-info h2{font-size:2.5rem;color:#2c2c2c;margin-bottom:2rem}.contact-methods{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.contact-method{display:flex;align-items:center;gap:.5rem;color:#2c2c2c;text-decoration:none;font-size:1.2rem;padding:1rem 2rem;background:#ffffff1a;border-radius:50px;transition:background .3s ease,transform .3s ease}.contact-method:hover{background:#fff3;transform:translateY(-2px)}.contact-method svg{width:24px;height:24px}.showcase-section{padding:4rem 2rem;background:#fff}.showcase-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1400px;margin:2rem auto}.showcase-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:1400px;margin:2rem auto}.showcase-item{position:relative;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px #0000001a;aspect-ratio:1}.showcase-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.showcase-item:hover img{transform:scale(1.05)}.showcase-label{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:#000000b3;color:#fff;text-align:center;font-weight:500}.showcase-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.showcase-item:hover .showcase-overlay{opacity:1}.overlay-text{color:#fff;text-align:center;font-size:1.2rem;line-height:1.6;padding:1rem}.about-section{padding:6rem 2rem;background:#f8f8f8;border-radius:20px}.about-container{display:grid;grid-template-columns:400px 1fr;gap:4rem;max-width:1200px;margin:0 auto;align-items:center}.about-image-container{position:relative}.about-image{width:100%;height:auto;border-radius:20px;box-shadow:0 20px 40px #0000001a}.about-content{padding-right:2rem}.about-title{font-size:2rem;font-weight:600;color:#2c2c2c;margin-bottom:1.5rem}.about-text{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.about-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}.highlight-item{text-align:center;display:flex;flex-direction:column;align-items:center}.highlight-number{display:inline-block;position:relative;font-size:2.5rem;font-weight:700;color:#2c2c2c;opacity:0;transform:translateY(20px)}.highlight-number.animate{animation:countUp 2s ease forwards}@keyframes countUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.highlight-label{color:#666;font-size:1rem}.contact-section{padding:2rem;background:#fff}.contact-container{max-width:1200px;margin:0 auto;text-align:center}.contact-title{font-size:2rem;font-weight:600;color:#2c2c2c;margin-bottom:1rem}.contact-text{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.contact-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:3rem}.contact-method{display:flex;align-items:center;padding:1.5rem;background:#f8f8f8;border-radius:15px;transition:all .3s ease;text-decoration:none;color:inherit}a.contact-method:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0000001a;background:#fff}.method-icon{width:48px;height:48px;margin-right:1rem;color:#2c2c2c;flex-shrink:0}.method-icon svg{width:100%;height:100%}.method-details{text-align:left}.method-label{display:block;font-size:.9rem;color:#666;margin-bottom:.25rem}.method-value{display:block;font-weight:600;color:#2c2c2c}.contact-cta{margin-top:2rem}.reviews-section{padding:2rem;background:#f8f8f8;border-radius:20px}.reviews-container{max-width:1200px;margin:0 auto;text-align:center}.reviews-grid{display:flex;gap:2rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:-1rem;padding:1rem}.reviews-grid::-webkit-scrollbar{display:none}.review-card{flex:0 0 350px;background:#fff;padding:2rem;border-radius:15px;box-shadow:0 4px 20px #0000000d;scroll-snap-align:center;display:flex;flex-direction:column;gap:1rem;text-align:left}.review-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.reviewer-avatar{width:50px;height:50px;border-radius:25px;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#666}.reviewer-info{flex:1}.reviewer-name{font-weight:600;color:#2c2c2c;margin-bottom:.25rem}.review-date{font-size:.9rem;color:#666}.review-rating{display:flex;gap:.25rem;color:#fbbc04;font-size:1.25rem}.review-content{color:#444;line-height:1.6;font-size:1rem}.review-actions{margin-top:2rem;text-align:center}.google-review-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff;border:2px solid #2c2c2c;border-radius:30px;color:#2c2c2c;font-weight:600;text-decoration:none;transition:all .3s ease}.google-review-button:hover{background:#2c2c2c;color:#fff}.google-review-button svg{width:20px;height:20px}.fade-in-section{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;margin:1rem auto}.fade-in-section.is-visible{opacity:1;transform:translateY(0)}@media (max-width: 1024px){.about-container{grid-template-columns:300px 1fr;gap:3rem}}@media (max-width: 768px){.home-content{display:block;padding:0rem}.hero{padding:1rem;min-height:40rem}.hero h1{font-size:2rem}.tagline{font-size:1.2rem}.services-section{padding:3rem 1rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:0 1rem}.service-icon{width:40px;height:40px}.contact-info h2{font-size:2rem}.contact-method{justify-content:center}.showcase-grid{grid-template-columns:1fr;gap:1.5rem}.showcase-section{padding:3rem 1rem}.about-section{padding:4rem 1rem}.about-container{grid-template-columns:1fr;gap:2rem;text-align:center}.about-content{padding-right:0}.about-image-container{max-width:300px;margin:0 auto}.about-highlights{gap:1rem}.highlight-number{font-size:2rem}.contact-section{padding:4rem 1rem}.contact-methods{grid-template-columns:1fr;gap:1rem}.contact-method{padding:1rem}.method-icon{width:36px;height:36px}.reviews-section{padding:4rem 1rem}.review-card{flex:0 0 300px}.showcase-grid-3,.showcase-grid-2{grid-template-columns:repeat(1,1fr);gap:1rem;margin:3rem auto}.scroll-indicator{bottom:4rem}.hero-overlay{display:block}.section-title{font-size:1.5rem}.services-cta{padding:2rem 1rem;margin:2rem 1rem 1rem}.services-cta h3{font-size:1.5rem}.services-cta p{font-size:1rem}.cta-button{font-size:1rem;padding:.8rem 2rem}}
