:root{--primary-green: #1f5d3a;--primary-dark: #163f28;--secondary-gold: #a67c2d;--gold-light: #c9a052;--accent-green: #1da851;--accent-light: #2bd468;--bg-color: #f4f6f9;--bg-dark: #0d1a10;--text-primary: #0f1a13;--text-secondary: #4b5563;--text-muted: #9ca3af;--white: #ffffff;--font-heading: "Barlow Condensed", sans-serif;--font-body: "Inter", sans-serif;--transition-fast: all .2s cubic-bezier(.4, 0, .2, 1);--transition: all .35s cubic-bezier(.4, 0, .2, 1);--transition-slow: all .6s cubic-bezier(.4, 0, .2, 1);--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 20px rgba(0,0,0,.12);--shadow-lg: 0 20px 60px rgba(0,0,0,.18);--shadow-glow: 0 0 40px rgba(29, 168, 81, .25);--shadow-gold: 0 0 30px rgba(166, 124, 45, .3);--glass-bg: rgba(255, 255, 255, .92);--glass-border: rgba(255, 255, 255, .3);--glass-dark: rgba(0, 0, 0, .4);--radius-sm: 6px;--radius: 12px;--radius-lg: 20px;--radius-xl: 32px}.section,.services-section,.faq,.testimonials,.contact-section,.footer{content-visibility:auto;contain-intrinsic-size:auto 500px}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.25rem}.section{padding:5rem 0}.bg-white{background-color:var(--white)}.bg-dark{background-color:var(--bg-dark)}.hero-stat,.service-card,.testimonial-card,.faq-item,.experience-badge{contain:layout style}.section-label{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-green);background:#1da8511a;padding:.4rem 1rem;border-radius:100px;border:1px solid rgba(29,168,81,.25);margin-bottom:1.25rem}.section-title{font-size:clamp(2rem,5vw,3rem);color:var(--primary-green);margin-bottom:1rem}.section-subtitle{font-family:var(--font-body);font-size:1rem;color:var(--text-secondary);max-width:560px;margin:0 auto}.btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff1a;opacity:0;transition:var(--transition-fast)}.btn:hover:before{opacity:1}.btn-primary{background:linear-gradient(135deg,var(--accent-green),var(--primary-green));color:var(--white);box-shadow:0 4px 15px #1da8514d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #1da85166}.btn-secondary{background:linear-gradient(135deg,var(--secondary-gold),#8a6520);color:var(--white);box-shadow:0 4px 15px #a67c2d4d}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #a67c2d66}.btn-outline{background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.6)}.btn-outline:hover{background:#ffffff1a;border-color:var(--white);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--primary-green);border:2px solid var(--accent-green)}.btn-ghost:hover{background:var(--accent-green);color:var(--white)}.fixed-navbar.scrolled{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:.75rem 0;box-shadow:var(--shadow-md);border-bottom:1px solid var(--glass-border)}.brand-name{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;color:var(--primary-green);text-transform:uppercase;letter-spacing:.5px}.logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none}.drawer-brand{display:flex;align-items:center;gap:.5rem}.footer-brand-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.footer-brand-logo .footer-logo{margin-bottom:0}.nav-links{display:none;align-items:center;gap:2.5rem}.nav-link{font-weight:500;font-size:.9rem;color:var(--text-primary);position:relative;padding-bottom:2px}.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--accent-green);transition:var(--transition)}.nav-link:hover:after{width:100%}.nav-link:hover{color:var(--primary-green)}.nav-right{display:flex;align-items:center;gap:1rem}.nav-phone{display:none;font-weight:600;font-size:.9rem;color:var(--primary-green)}.fixed-navbar:not(.scrolled) .nav-phone{color:#ffffffe6}.nav-burger{transition:var(--transition-fast)}.burger-line{transition:var(--transition);transform-origin:center}.nav-burger.open .burger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-burger.open .burger-line:nth-child(2){opacity:0;transform:scaleX(0)}.nav-burger.open .burger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-drawer{position:fixed;top:.5rem;right:0;bottom:auto;width:min(320px,85vw);height:-webkit-fit-content;height:fit-content;max-height:calc(100dvh - 1rem);background:var(--white);box-shadow:var(--shadow-lg);z-index:2000;display:flex;flex-direction:column;padding:1.25rem 1.25rem 1rem;gap:0;overflow-y:auto}.drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.drawer-logo{height:36px}.drawer-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:.25rem;line-height:1}.drawer-links{display:flex;flex-direction:column;gap:0;flex:0}.drawer-link{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;text-transform:uppercase;color:var(--text-primary);padding:1rem 0;border-bottom:1px solid #f0f0f0;transition:var(--transition-fast)}.drawer-link:hover{color:var(--accent-green);padding-left:.5rem}.drawer-cta{margin-top:.9rem}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero-image-col{order:1;position:relative;display:none}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}.tagline-dot{animation:pulse 2s ease-in-out infinite}.image-carousel{position:relative;width:100%;height:100%;overflow:hidden}.image-carousel-track{display:flex;height:100%;transition:transform .8s cubic-bezier(.22,1,.36,1);will-change:transform}.image-carousel-slide{flex:0 0 100%;height:100%;overflow:hidden}.image-carousel-img{width:100%;height:100%;object-fit:cover;display:block}.image-carousel-dots{position:absolute;left:50%;bottom:.9rem;transform:translate(-50%);display:inline-flex;gap:.35rem;padding:.35rem .6rem;border-radius:999px;background:#0c140f59;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:3}.image-carousel-dot{width:7px;height:7px;border-radius:50%;background:#ffffff73;transition:var(--transition-fast)}.image-carousel-dot.is-active{width:20px;border-radius:99px;background:var(--accent-light)}.hero-img-frame{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/3;max-height:340px}.hero-img-frame img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 8s ease}.hero-img-frame:hover img{transform:scale(1.05)}.hero-img-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);border:2px solid rgba(29,168,81,.4);z-index:2;pointer-events:none}.hero-stat{position:absolute;background:var(--white);border-radius:var(--radius);padding:.75rem 1.25rem;display:flex;align-items:center;gap:.75rem;box-shadow:var(--shadow-lg);z-index:3}.hero-stat-num{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;color:var(--primary-green);line-height:1}.hero-stat-label{font-size:.72rem;color:var(--text-secondary);line-height:1.3;max-width:70px}.stat-top{top:-18px;right:-12px;animation:floatY 4s ease-in-out infinite}.stat-bottom{bottom:-18px;left:-12px;animation:floatY 4s ease-in-out infinite 2s}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.services-section{background:var(--bg-color);padding:5rem 0}.section-header{text-align:center;margin-bottom:3.5rem}.service-grid{display:grid;grid-template-columns:repeat(4,80vw);gap:1.25rem;overflow-x:auto;padding:.5rem 1.25rem 1.5rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.service-grid::-webkit-scrollbar{display:none}.service-card{scroll-snap-align:start;background:var(--white);border-radius:var(--radius-lg);padding:2rem 1.75rem;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.06);cursor:pointer;transition:var(--transition);min-width:0}.service-card:before{content:"";position:absolute;top:-40px;right:-40px;width:120px;height:120px;border-radius:50%;background:var(--card-color, var(--accent-green));opacity:.08;transition:var(--transition)}.service-card:hover:before{opacity:.18;transform:scale(1.3)}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--card-color, var(--accent-green))}.service-num{font-family:var(--font-heading);font-size:3rem;font-weight:800;color:var(--card-color, var(--accent-green));opacity:.15;line-height:1;margin-bottom:.75rem;transition:var(--transition)}.service-card:hover .service-num{opacity:.35}.service-card-tag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--card-color, var(--accent-green));margin-bottom:.75rem}.service-card h3{font-size:1.3rem;color:var(--text-primary);margin-bottom:.875rem}.service-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.service-link{font-weight:600;font-size:.9rem;color:var(--card-color, var(--accent-green));display:inline-flex;align-items:center;gap:.4rem;transition:var(--transition-fast)}.service-link:hover{gap:.7rem}.service-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--card-color, var(--accent-green));transform:scaleX(0);transform-origin:left;transition:var(--transition)}.service-card:hover .service-bar{transform:scaleX(1)}.scroll-hint{text-align:center;font-size:.78rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1rem}@media (min-width: 768px){.scroll-hint{display:none}}.about-grid{display:grid;grid-template-columns:1fr;align-items:center;gap:3rem}.about-image{position:relative;border-radius:var(--radius-xl);overflow:visible}.about-img-inner{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4 / 3}.about-img-inner img{width:100%;height:100%;object-fit:cover}.about-accent-block{position:absolute;top:20px;right:-20px;bottom:-20px;left:20px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--accent-green),var(--primary-dark));z-index:-1;opacity:.25}.experience-badge{position:absolute;bottom:-1rem;right:-.75rem;background:linear-gradient(135deg,var(--primary-green),var(--primary-dark));color:var(--white);padding:.9rem 1.1rem;border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;box-shadow:var(--shadow-lg);border:2px solid var(--white)}.experience-badge .years{font-family:var(--font-heading);font-size:1.7rem;font-weight:800;line-height:1;color:var(--accent-light)}.experience-badge .text{font-size:.58rem;text-transform:uppercase;letter-spacing:.05em;opacity:.8}@media (max-width: 767px){.experience-badge{bottom:-.65rem;right:-.35rem;padding:.65rem .8rem;border-width:2px}.experience-badge .years{font-size:1.35rem}.experience-badge .text{font-size:.5rem}}.about-text .tag{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--secondary-gold);background:#a67c2d1a;border:1px solid rgba(166,124,45,.3);padding:.35rem 1rem;border-radius:100px;margin-bottom:1.25rem}.about-text h2{font-size:clamp(2rem,4vw,2.75rem);margin-bottom:1.25rem;color:var(--primary-green)}.about-text p{font-size:.97rem;color:var(--text-secondary);margin-bottom:1.25rem;line-height:1.75}.about-list{margin-bottom:2rem;display:flex;flex-direction:column;gap:.6rem}.about-list li{display:flex;align-items:flex-start;gap:.75rem;font-size:.95rem;color:var(--text-primary);padding:.875rem 1rem;background:var(--bg-color);border-radius:var(--radius-sm);border-left:3px solid var(--accent-green);transition:var(--transition-fast)}.about-list li:hover{background:#1da8510d;transform:translate(4px)}.about-list li:before{content:"✓";color:var(--accent-green);font-weight:700;font-size:.9rem;min-width:20px}.contact-section{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-green) 100%);position:relative;overflow:hidden}.contact-section:before{content:"";position:absolute;top:-100px;right:-100px;width:500px;height:500px;border-radius:50%;background:#1da85114;pointer-events:none}.contact-container{display:grid;grid-template-columns:1fr;gap:3rem;position:relative;z-index:1}.contact-info{color:var(--white)}.contact-info h2{font-size:clamp(2rem,5vw,2.75rem);margin-bottom:1rem;color:var(--white)}.contact-info p{color:#ffffffbf;margin-bottom:2rem;font-size:1rem;line-height:1.7}.contact-methods{display:flex;flex-direction:column;gap:1rem}.contact-method{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius);transition:var(--transition-fast);cursor:pointer}.contact-method:hover{background:#ffffff2e;border-color:#ffffff4d;transform:translate(4px)}.cm-icon{width:42px;height:42px;border-radius:var(--radius-sm);background:#ffffff26;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.contact-method .label{font-size:.75rem;opacity:.7;display:block}.contact-method .val{font-weight:600;font-size:1rem;color:var(--white)}.contact-form{background:var(--white);color:var(--text-primary);padding:2.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.contact-form h3{font-size:1.6rem;margin-bottom:.5rem;color:var(--primary-green)}.contact-form .form-subtitle{font-size:.875rem;color:var(--text-secondary);margin-bottom:2rem}.form-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}input,select,textarea{width:100%;padding:.875rem 1rem;border:1.5px solid #e5e7eb;border-radius:var(--radius-sm);font-family:inherit;font-size:.95rem;transition:var(--transition-fast);background:#fafafa;color:var(--text-primary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-green);background:var(--white);box-shadow:0 0 0 3px #1da8511f}textarea{resize:vertical;min-height:100px}.checkbox{display:flex;align-items:flex-start;gap:.75rem;font-size:.85rem;color:var(--text-secondary);cursor:pointer;margin:1rem 0 1.5rem}.checkbox input{width:auto;min-width:18px;height:18px;margin-top:2px;flex-shrink:0}.testimonials{padding:6rem 0;background:var(--bg-dark);color:var(--white)}.testimonials .section-header{text-align:center;margin-bottom:3rem}.testimonials .section-header h2{font-size:clamp(2rem,5vw,2.8rem);color:var(--white)}.testimonials-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:3rem}.testimonial-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:2rem;position:relative;transition:var(--transition)}.testimonial-card:hover{background:#ffffff0d;border-color:#1da85133;transform:translateY(-4px)}.quote-icon{font-family:Georgia,serif;font-size:4rem;color:var(--accent-green);opacity:.3;line-height:1;margin-bottom:-1rem}.testimonial-quote{font-size:1rem;line-height:1.7;color:#ffffffd9;margin-bottom:1.5rem;font-style:italic}.testimonial-author{display:flex;flex-direction:column;gap:.25rem}.testimonial-author strong{font-weight:600;color:var(--white)}.testimonial-author span{font-size:.85rem;color:var(--accent-green)}.testimonials-rating{text-align:center}.star-rating{display:flex;justify-content:center;gap:.25rem;margin-bottom:.75rem}.star{color:#fbbf24;font-size:1.5rem}.testimonials-rating p{color:#fff9;font-size:.9rem}@media (min-width: 768px){.testimonials-grid{grid-template-columns:repeat(3,1fr)}}.faq{padding:6rem 0;background:var(--bg-color)}.faq .section-header{text-align:center;margin-bottom:3rem}.faq .section-header h2{font-size:clamp(2rem,5vw,2.8rem);color:var(--primary-green)}.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.faq-item{background:var(--white);border-radius:var(--radius);border:1px solid #e5e7eb;overflow:hidden;transition:var(--transition-fast)}.faq-item.open{border-color:var(--accent-green);box-shadow:0 4px 20px #1da8511a}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:none;border:none;cursor:pointer;text-align:left;font-size:1rem;font-weight:600;color:var(--text-primary);transition:var(--transition-fast)}.faq-question:hover{color:var(--primary-green)}.faq-question span:first-child{padding-right:1rem}.faq-toggle{font-size:1.5rem;font-weight:300;color:var(--accent-green);flex-shrink:0;width:24px;text-align:center}.faq-answer{overflow:hidden}.faq-answer p{padding:0 1.5rem 1.25rem;color:var(--text-secondary);line-height:1.6}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000}.modal-content{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;background:var(--white);border-radius:var(--radius);padding:2.5rem;max-width:420px;width:calc(100% - 2rem);max-height:90vh;height:-webkit-fit-content;height:fit-content;overflow-y:auto;text-align:center;z-index:1001;box-shadow:0 25px 60px #0003}@media (max-width: 767px){.modal-content{width:calc(100% - 1.5rem);max-height:84vh;padding:1.5rem 1.25rem}}.modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#0000000d;border:none;border-radius:50%;font-size:1.25rem;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast)}.modal-close:hover{background:#0000001a;color:var(--text-primary)}.modal-icon{font-size:3rem;margin-bottom:1rem}.modal-content h3{font-size:1.5rem;color:var(--primary-green);margin-bottom:.75rem}.modal-content p{color:var(--text-secondary);line-height:1.6}.footer{background:#080f0a;color:var(--white);padding:5rem 0 2rem}.footer-grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.07)}.footer-logo{height:44px;margin-bottom:1.25rem}.footer-brand p{color:#6b7280;font-size:.9rem;max-width:280px;line-height:1.7}.footer-links h4,.footer-contact h4{font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#fff6;margin-bottom:1.25rem}.footer-links ul{display:flex;flex-direction:column;gap:.6rem}.footer-links ul li a{color:#9ca3af;font-size:.9rem;transition:var(--transition-fast)}.footer-links ul li a:hover{color:var(--accent-green);padding-left:4px}.footer-contact p{color:#9ca3af;font-size:.9rem;margin-bottom:.5rem}.footer-contact-link{color:#9ca3af;transition:color .2s}.footer-contact-link:hover{color:#1da851}.footer-bottom{display:flex;flex-direction:column;gap:.75rem;text-align:center;font-size:.82rem;color:#4b5563}.footer-bottom a{color:#6b7280;transition:var(--transition-fast)}.footer-bottom a:hover{color:var(--accent-green)}.grid{display:grid}@media (min-width: 640px){.service-grid{grid-template-columns:repeat(4,60vw)}}@media (min-width: 768px){.nav-phone{display:block}.nav-links{display:flex}.nav-burger{display:none!important}.hero-content{grid-template-columns:1fr 1fr;padding:4rem 1.5rem}.hero-text{order:1}.hero-image-col{order:2;display:block}.hero-img-frame{max-height:480px}.service-grid{display:grid!important;grid-template-columns:repeat(2,1fr);overflow-x:visible;padding:0;scroll-snap-type:none;gap:1.5rem}.about-grid{grid-template-columns:1fr 1fr}.contact-container{grid-template-columns:1fr 1.2fr}.footer-grid{grid-template-columns:2fr 1fr 1fr}.form-grid{grid-template-columns:1fr 1fr}}@media (min-width: 1024px){.service-grid{grid-template-columns:repeat(4,1fr)}.hero-img-frame{max-height:560px}.section{padding:6rem 0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.sticky-cta-container{position:fixed;bottom:0;left:0;right:0;z-index:999;background:#ffffffe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(0,0,0,.05);padding:.75rem 1rem env(safe-area-inset-bottom);box-shadow:0 -4px 20px #00000014}.sticky-cta-content{max-width:600px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.cta-action-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.6rem .25rem;border-radius:var(--radius-sm);color:var(--white);text-decoration:none;font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;gap:.25rem;box-shadow:var(--shadow-sm)}.cta-icon{font-size:1.1rem}@media (min-width: 768px){.sticky-cta-container{display:none}}body{padding-bottom:80px}@media (min-width: 768px){body{padding-bottom:0}}
