:root{--primary-green:#37a750;--primary-green-dark:#2a823e;--primary-blue:#1b3b82;--secondary-blue:#8ab3d9;--bg-color:#f8fafc;--text-primary:#0f172a;--text-secondary:#475569;--white:#fff;--border-color:#e2e8f0;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--container-padding:2rem;--max-width:1200px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-blue:0 10px 25px -5px #1b3b8233;--shadow-green:0 10px 25px -5px #37a75033;--radius-md:.5rem;--radius-lg:1rem;--radius-full:9999px;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--primary-blue);font-weight:700;line-height:1.2}h1{letter-spacing:-.02em;font-size:clamp(2.5rem,5vw,4rem)}h2{letter-spacing:-.01em;font-size:clamp(2rem,4vw,3rem)}h3{font-size:1.5rem}a{color:inherit;text-decoration:none}ul{list-style:none}button{cursor:pointer;font-family:var(--font-body);background:0 0;border:none}.container{max-width:var(--max-width);padding:0 var(--container-padding);margin:0 auto}.section{padding:5rem 0}.text-center{text-align:center}.text-green{color:var(--primary-green)}.text-blue{color:var(--primary-blue)}.btn{border-radius:var(--radius-full);transition:var(--transition);font-weight:600;font-family:var(--font-heading);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:inline-flex}.btn-primary{background-color:var(--primary-green);color:var(--white);box-shadow:var(--shadow-green)}.btn-primary:hover{background-color:var(--primary-green-dark);transform:translateY(-2px);box-shadow:0 15px 30px -5px #37a7504d}.btn-secondary{background-color:var(--white);color:var(--primary-blue);border:2px solid var(--border-color)}.btn-secondary:hover{border-color:var(--primary-blue);background-color:#1b3b820d}.btn-outline{color:var(--white);border:2px solid var(--white);background-color:#0000}.btn-outline:hover{background-color:var(--white);color:var(--primary-blue)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeUp}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.app-bg{z-index:-10;background-color:var(--white);width:100vw;height:100vh;position:fixed;top:0;left:0;overflow:hidden}.app-blob{filter:blur(80px);opacity:.4;border-radius:50%;animation:10s ease-in-out infinite alternate float;position:absolute}.blob-1{background-color:var(--secondary-blue);width:40vw;height:40vw;animation-delay:-2s;top:-10%;right:-5%}.blob-2{background-color:#37a7504d;width:50vw;height:50vw;bottom:-10%;left:-10%}@keyframes float{0%{transform:translate(0)scale(1)}to{transform:translate(30px,50px)scale(1.1)}}.site-header{z-index:50;width:100%;position:sticky;top:0}.top-bar{background-color:var(--primary-blue);color:var(--white);padding:.5rem 0;font-size:.75rem;display:block}.top-bar-inner{flex-wrap:wrap;justify-content:center;gap:.5rem 1rem;display:flex}@media (width>=768px){.top-bar{font-size:.875rem}.top-bar-inner{justify-content:flex-start;gap:2rem}}.top-bar-item{align-items:center;gap:.5rem;display:flex}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:var(--transition);background-color:#fffffff2;border-bottom:1px solid #0000}.navbar.scrolled{border-bottom-color:var(--border-color);box-shadow:var(--shadow-sm)}.navbar-inner{justify-content:space-between;align-items:center;height:5rem;display:flex}.logo a{align-items:center;display:flex}.logo-container{align-items:center;gap:.5rem;display:flex}.logo-img-mark{object-fit:contain;width:auto;height:64px}.logo-img-text{object-fit:contain;width:auto;height:36px}.desktop-nav{align-items:center;gap:2rem;display:none}@media (width>=768px){.desktop-nav{display:flex}}.nav-links{gap:2rem;display:flex}.nav-links a{color:var(--text-secondary);transition:var(--transition);font-weight:500;position:relative}.nav-links a:hover{color:var(--primary-blue)}.nav-links a:after{content:"";background-color:var(--primary-green);width:0;height:2px;transition:var(--transition);position:absolute;bottom:-4px;left:0}.nav-links a:hover:after{width:100%}.mobile-menu-btn{color:var(--primary-blue);display:block}@media (width>=768px){.mobile-menu-btn{display:none}}.mobile-nav{background-color:var(--white);border-bottom:1px solid var(--border-color);width:100%;box-shadow:var(--shadow-md);padding:1rem 0;animation:.3s ease-out forwards slideDown;position:absolute;top:100%;left:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mobile-nav-links{flex-direction:column;display:flex}.mobile-nav-links a{padding:1rem var(--container-padding);color:var(--text-primary);border-bottom:1px solid var(--border-color);font-weight:500;display:block}.mobile-nav-links a:hover{background-color:var(--bg-color);color:var(--primary-blue)}.mobile-btn{margin:1rem var(--container-padding);width:calc(100% - var(--container-padding) * 2)}.status-dot{border-radius:50%;width:12px;height:12px;margin-right:.25rem}.status-dot.open{background-color:#22c55e;animation:2s infinite pulse-green;box-shadow:0 0 #22c55eb3}.status-dot.closed{background-color:#ef4444}@keyframes pulse-green{0%{transform:scale(.95);box-shadow:0 0 #22c55eb3}70%{transform:scale(1);box-shadow:0 0 0 6px #22c55e00}to{transform:scale(.95);box-shadow:0 0 #22c55e00}}.hero{align-items:center;min-height:calc(100vh - 5rem);padding:4rem 0;display:flex;position:relative;overflow:hidden}.hero-slideshow{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.hero-slide{opacity:0;background-position:50%;background-size:cover;width:100%;height:100%;transition:opacity 1.5s ease-in-out;position:absolute;top:0;left:0}.hero-slide.active{opacity:1}.hero-slideshow-overlay{z-index:2;background:linear-gradient(90deg,#fff 0%,#ffffffd9 40%,#fff3 100%);width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{grid-template-columns:1fr;align-items:flex-start;gap:4rem;display:grid}@media (width>=992px){.hero-content{grid-template-columns:1.2fr .8fr}}.badge{color:var(--primary-green-dark);border-radius:var(--radius-full);background-color:#37a7501a;border:1px solid #37a75033;align-items:center;gap:.5rem;margin-bottom:2rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.hero-title{margin-bottom:1.5rem}.hero-subtitle{color:var(--text-secondary);max-width:500px;margin-bottom:2.5rem;font-size:1.125rem}.hero-cta{flex-wrap:wrap;gap:1rem;display:flex}.glass-card{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background:#ffffffb3;border:1px solid #ffffff80;transition:transform .5s;overflow:hidden;transform:perspective(1000px)rotateY(-5deg)rotateX(5deg)}.glass-card:hover{transform:perspective(1000px)rotateY(0)rotateX(0)}.card-header{background:#ffffff80;border-bottom:1px solid #ffffff80;gap:.5rem;padding:1rem;display:flex}.dot{border-radius:50%;width:12px;height:12px}.dot.red{background-color:#ff5f56}.dot.yellow{background-color:#ffbd2e}.dot.green{background-color:#27c93f}.card-body{flex-direction:column;gap:1.5rem;padding:2rem;display:flex}.feature-item{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);align-items:center;gap:1rem;padding:1rem;display:flex}.feature-item:hover{box-shadow:var(--shadow-md);transform:translate(10px)}.feature-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.bg-green{background-color:var(--primary-green)}.bg-blue{background-color:var(--primary-blue)}.bg-light-blue{background-color:var(--secondary-blue)}.feature-text h4{color:var(--text-primary);margin-bottom:.25rem;font-size:1rem}.feature-text p{color:var(--text-secondary);font-size:.875rem}.services-section{background-color:#0000}.section-header{margin-bottom:4rem}.section-title{margin-bottom:1rem}.section-subtitle{color:var(--text-secondary);max-width:600px;margin:0 auto 1.5rem;font-size:1.125rem}.title-underline{background-color:var(--primary-green);border-radius:var(--radius-full);width:60px;height:4px;margin:0 auto}.services-grid{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=768px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.services-grid{grid-template-columns:repeat(4,1fr)}}.service-card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center;transition:var(--transition);z-index:1;padding:2.5rem 2rem;position:relative;overflow:hidden}.service-card:before{content:"";z-index:-1;opacity:0;width:100%;height:100%;transition:var(--transition);background:linear-gradient(135deg,#fff0 0%,#ffffff80 100%);position:absolute;top:0;left:0}.service-card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-10px)}.service-card:hover:before{opacity:1}.service-icon-wrapper{width:80px;height:80px;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex}.service-card:hover .service-icon-wrapper{transform:scale(1.1)rotate(5deg)}.color-blue{color:var(--primary-blue);background-color:#1b3b821a}.color-green{color:var(--primary-green);background-color:#37a7501a}.color-light-blue{color:var(--primary-blue);background-color:#8ab3d933}.service-title{color:var(--text-primary);margin-bottom:1rem}.service-desc{color:var(--text-secondary);font-size:.9375rem}.about-section{background-color:#0000}.about-grid{grid-template-columns:1fr;align-items:center;gap:4rem;display:grid}@media (width>=992px){.about-grid{grid-template-columns:1fr 1fr}}.about-image-wrapper{padding:2rem;position:relative}.about-image-wrapper:before{content:"";border-radius:var(--radius-lg);z-index:0;background-color:#8ab3d933;width:100%;height:100%;position:absolute;top:0;left:0;transform:rotate(-3deg)}.about-image-inner{z-index:1;background-color:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);aspect-ratio:1;position:relative;overflow:hidden}.image-placeholder{background:linear-gradient(135deg, var(--primary-blue) 0%, var(--secondary-blue) 100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.decorative-element{background:radial-gradient(circle,#ffffff1a 0%,#fff0 70%);width:150%;height:150%;position:absolute;top:-25%;left:-25%}.badge-overlay{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);text-align:center;z-index:2;transition:var(--transition);padding:1.5rem;transform:rotate(5deg)}.about-image-wrapper:hover .badge-overlay{transform:rotate(0)scale(1.05)}.badge-overlay .years{font-family:var(--font-heading);color:var(--primary-green);font-size:3rem;font-weight:800;line-height:1;display:block}.badge-overlay .text{color:var(--primary-blue);font-size:1rem;font-weight:600}.title-underline-left{background-color:var(--primary-green);border-radius:var(--radius-full);width:60px;height:4px;margin-bottom:2rem}.about-subtitle{color:var(--primary-blue);margin-bottom:1.5rem}.about-text{color:var(--text-secondary);margin-bottom:2rem;font-size:1.125rem}.about-list{flex-direction:column;gap:1rem;display:flex}.about-list li{color:var(--text-primary);align-items:center;gap:1rem;font-weight:500;display:flex}.reviews-section{background-color:#0000;overflow:hidden}.reviews-header{text-align:center;margin-bottom:4rem}.title-underline-center{background-color:var(--primary-green);border-radius:var(--radius-full);width:60px;height:4px;margin:0 auto 2rem}.reviews-grid{flex-direction:column;align-items:center;gap:3rem;max-width:800px;margin:0 auto;display:flex}.review-badge-container{justify-content:center;display:flex}.review-card{background:var(--bg-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color);padding:2rem;position:relative}.review-header{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.review-avatar{object-fit:cover;border:2px solid var(--white);width:64px;height:64px;box-shadow:var(--shadow-sm);border-radius:50%}.review-meta h4{color:var(--text-primary);margin:0;font-size:1.125rem}.review-subtitle{color:var(--text-secondary);margin:0;font-size:.875rem}.review-text{color:var(--text-secondary);font-size:1.125rem;font-style:italic;line-height:1.6}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:.8s cubic-bezier(.16,1,.3,1) forwards slideInLeft}.contact-section{background-color:#0000;position:relative;overflow:hidden}.contact-grid{z-index:1;grid-template-columns:1fr;gap:4rem;display:grid;position:relative}@media (width>=992px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-info{flex-direction:column;gap:2rem;display:flex}.info-card{background-color:var(--bg-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid var(--border-color);align-items:flex-start;gap:1.5rem;padding:2rem;display:flex}.info-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary-blue);transform:translateY(-5px)}.info-icon{background-color:var(--primary-blue);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.info-content h3{color:var(--text-primary);margin-bottom:.5rem;font-size:1.25rem}.info-content p{color:var(--text-secondary);line-height:1.8}.contact-form-container{height:100%}.form-wrapper{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);height:100%;padding:3rem}.form-wrapper h3{color:var(--primary-blue);margin-bottom:2rem;font-size:1.5rem}.contact-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-primary);font-size:.9375rem;font-weight:500}.form-group input,.form-group textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-body);transition:var(--transition);background-color:var(--bg-color);padding:1rem;font-size:1rem}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-green);background-color:var(--white);outline:none;box-shadow:0 0 0 3px #37a7501a}.form-btn{width:100%;margin-top:1rem}.footer{background-color:var(--primary-blue);color:var(--white);padding:5rem 0 2rem}.footer-grid{grid-template-columns:1fr;gap:3rem;margin-bottom:4rem;display:grid}@media (width>=768px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr}}.footer-logo{border-radius:var(--radius-md);background-color:#fff;margin-bottom:1.5rem;padding:.5rem;display:inline-block}.footer-logo .logo-img{width:auto;height:80px;display:block}.footer-desc{color:#fffc;max-width:300px;margin-bottom:2rem;line-height:1.8}.social-links{gap:1rem;display:flex}.social-link{width:40px;height:40px;transition:var(--transition);background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-link:hover{background-color:var(--primary-green);transform:translateY(-3px)}.footer-heading{color:var(--white);margin-bottom:1.5rem;font-size:1.25rem;display:inline-block;position:relative}.footer-heading:after{content:"";background-color:var(--primary-green);width:30px;height:2px;position:absolute;bottom:-8px;left:0}.footer-links ul,.footer-services ul,.footer-contact ul{flex-direction:column;gap:1rem;display:flex}.footer-links a{color:#fffc;transition:var(--transition)}.footer-links a:hover{color:var(--primary-green);padding-left:5px}.footer-services li{color:#fffc}.footer-contact li{color:#fffc;align-items:flex-start;gap:1rem;display:flex}.footer-contact li svg{color:var(--primary-green);flex-shrink:0;margin-top:4px}.footer-bottom{text-align:center;color:#fff9;border-top:1px solid #ffffff1a;padding-top:2rem;font-size:.875rem}.app{flex-direction:column;min-height:100vh;display:flex}main{flex:1}
