:root{--deep-blue:#0057C2;--sky-blue:#00AEEF;--hover-blue:#379EFF;--light-blue:#E0F0FF;--primary-blue:#007BFF;--solar-orange:#FFA534;--orange-hover:#FF7B00;--white:#FFFFFF;--dark-gray:#2C3E50;--soft-gray:#6C757D;--light-gray:#F8F9FA;--shadow:rgba(0,0,0,0.1);--orange-shadow:rgba(255,165,52,0.3)}body{font-family:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.6;color:var(--dark-gray);padding-top:120px;font-weight:400;font-display:swap}.font-loading{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}.fonts-loaded{font-family:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}@font-face{font-family:'Poppins-fallback';src:local('system-ui'),local('-apple-system'),local('BlinkMacSystemFont');size-adjust:100%;ascent-override:105%;descent-override:35%;line-gap-override:10%}.btn-orange{background:linear-gradient(to right,var(--solar-orange),var(--orange-hover));border:none;color:var(--white);font-weight:600;border-radius:25px;padding:12px 30px;box-shadow:0 4px 15px var(--orange-shadow);transition:all 0.3s ease;position:relative;overflow:hidden;font-family:'Poppins',sans-serif}.btn-orange::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);transition:left 0.5s ease}.btn-orange:hover::before{left:100%}.btn-orange:hover{background:linear-gradient(to right,var(--orange-hover),var(--solar-orange));color:var(--white);transform:translateY(-2px) scale(1.05);box-shadow:0 8px 25px rgba(255,165,52,0.4);filter:brightness(1.1)}.btn-orange:focus{box-shadow:0 0 0 0.2rem rgba(255,165,52,0.25)}.btn-orange.pulse{animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);box-shadow:0 4px 15px var(--orange-shadow)}50%{transform:scale(1.02);box-shadow:0 6px 20px rgba(255,165,52,0.4)}100%{transform:scale(1);box-shadow:0 4px 15px var(--orange-shadow)}}.stats-card{background:white;border-radius:15px;padding:1.5rem;box-shadow:0 4px 6px rgba(0,0,0,0.1);transition:all 0.3s ease;border-left:4px solid var(--primary-blue);height:100%}.stats-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,0.15)}.stats-card h3{font-size:2.5rem;font-weight:700;margin-bottom:0.5rem;color:var(--dark-gray)}.stats-card p{margin:0;color:var(--soft-gray);font-weight:500}.stats-card small{color:var(--soft-gray);font-size:0.85rem}.stats-card.green{border-left-color:#10b981}.stats-card.yellow{border-left-color:#f59e0b}.stats-card.cyan{border-left-color:#06b6d4}.stats-card.blue{border-left-color:#3b82f6}.stats-card.purple{border-left-color:#8b5cf6}.stats-card.orange{border-left-color:#f97316}.stats-card.teal{border-left-color:#14b8a6}.stats-card.indigo{border-left-color:#6366f1}.stats-card.red{border-left-color:#ef4444}.navbar{box-shadow:0 2px 4px var(--shadow)}.navbar.bg-primary{background:#ffffff !important;border-bottom:1px solid #e0e0e0}.text-primary{color:var(--deep-blue) !important}.navbar-brand{font-size:1.5rem}.navbar-logo{height:100px;max-width:400px;object-fit:contain;transition:transform 0.3s ease}@media (max-width:768px){.navbar-logo{height:80px;max-width:300px}body{padding-top:100px}}.scroll-to-top-btn{position:fixed;bottom:80px;right:20px;z-index:999;border-radius:50%;width:50px;height:50px;display:none;opacity:0.8}.scroll-to-top-btn.show{display:block}.loading-overlay.show{display:flex !important}.instant-quote-preview.show{display:block !important}.sticky-cta.hidden{opacity:0;pointer-events:none}.fade-out{opacity:0;transition:opacity 0.3s ease}.progress-fill{width:var(--progress-width,0%);transition:width 0.3s ease}.navbar-logo:hover{transform:scale(1.05)}.navbar-nav .nav-link{font-weight:500;margin:0 0.25rem;color:#333333 !important;font-size:0.9rem}.navbar-nav .nav-link.nav-commercial{background:linear-gradient(135deg,var(--deep-blue),var(--sky-blue));color:#fff !important;border-radius:20px;padding:6px 16px !important;margin:0 0.4rem;font-weight:600;box-shadow:0 2px 8px rgba(0,87,194,0.3);transition:all 0.3s ease}.navbar-nav .nav-link.nav-commercial:hover{background:linear-gradient(135deg,var(--sky-blue),var(--deep-blue));transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,87,194,0.4);color:#fff !important}.navbar-nav .nav-link:hover{color:var(--primary-blue) !important}.navbar-brand{color:#333333 !important}.sticky-cta{position:fixed;bottom:20px;right:20px;z-index:1000;transition:opacity 0.3s ease,transform 0.3s ease}.sticky-cta .btn{box-shadow:0 4px 8px var(--shadow);border-radius:25px;animation:stickyBounce 3s ease-in-out infinite}@keyframes stickyBounce{0%,20%,50%,80%,100%{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.hero-section{background:linear-gradient(135deg,var(--deep-blue) 0%,var(--primary-blue) 100%);color:var(--white);position:relative;overflow:hidden;min-height:85vh;display:flex;align-items:center}.hero-animated-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;overflow:hidden;background:linear-gradient(45deg,var(--deep-blue),var(--primary-blue),var(--solar-orange));background-size:400% 400%;animation:gradientMove 15s ease infinite}@keyframes gradientMove{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.floating-element{position:absolute;font-size:2rem;color:rgba(255,255,255,0.1);animation:float 6s ease-in-out infinite}.floating-element.delay-1{animation-delay:-1.5s}.floating-element.delay-2{animation-delay:-3s}.floating-element.delay-3{animation-delay:-4.5s}.floating-element:nth-child(1){top:20%;left:10%}.floating-element:nth-child(2){top:60%;left:80%}.floating-element:nth-child(3){top:30%;left:70%}.floating-element:nth-child(4){top:70%;left:20%}@keyframes float{0%,100%{transform:translateY(0px) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}.rotating-rays{position:absolute;top:50%;left:50%;width:300px;height:300px;margin:-150px 0 0 -150px;animation:rotate 20s linear infinite}.ray{position:absolute;top:50%;left:50%;width:2px;height:100px;background:linear-gradient(to bottom,rgba(255,165,52,0.2),transparent);transform-origin:0 0}.ray:nth-child(1){transform:rotate(0deg)}.ray:nth-child(2){transform:rotate(90deg)}.ray:nth-child(3){transform:rotate(180deg)}.ray:nth-child(4){transform:rotate(270deg)}@keyframes rotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@media (max-width:768px){.floating-element{font-size:1.5rem;opacity:0.7}.rotating-rays{width:200px;height:200px;margin:-100px 0 0 -100px}}.hero-section::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.3);z-index:2}.hero-section .container{position:relative;z-index:3}.hero-content{max-width:900px;margin:auto;text-align:center;padding:2rem}.hero-title{font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.2;max-width:700px;margin:0 auto 1.5rem;text-shadow:1px 1px 3px rgba(0,0,0,0.2);color:var(--white);font-family:'Poppins',sans-serif}.hero-subtext{font-size:1.1rem;color:#f0f6ff;max-width:600px;margin:0 auto 2rem;line-height:1.5;font-weight:400}.hero-buttons{display:flex;flex-direction:column;gap:1rem;align-items:center;margin-bottom:2.5rem}@media (min-width:576px){.hero-buttons{flex-direction:row;justify-content:center;gap:1.5rem}}.btn-hero{padding:14px 28px;font-size:1rem;font-weight:600;border-radius:30px;transition:all 0.3s ease;min-width:200px;box-shadow:0 4px 15px rgba(0,0,0,0.1)}.btn-hero:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 25px rgba(0,0,0,0.15)}.btn-hero.btn-orange{background:linear-gradient(to right,#FFA534,#FF7B00);border:none;color:white}.btn-hero.btn-orange:hover{background:linear-gradient(to right,#FF7B00,#FFA534);color:white;box-shadow:0 8px 25px rgba(255,165,52,0.3)}.btn-hero.btn-outline-light{background:transparent;border:2px solid rgba(255,255,255,0.3);color:white}.btn-hero.btn-outline-light:hover{background:rgba(255,255,255,0.1);border-color:white;color:white}.hero-benefits{margin-bottom:2rem;display:grid;gap:1rem;max-width:700px;margin-left:auto;margin-right:auto}@media (min-width:768px){.hero-benefits{grid-template-columns:1fr 1fr 1fr}}.benefit-item{display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(255,255,255,0.08);border-radius:15px;border:1px solid rgba(255,165,52,0.2);transition:all 0.3s ease;backdrop-filter:blur(10px)}.benefit-item:hover{transform:translateY(-3px);background:rgba(255,255,255,0.12);box-shadow:0 6px 20px rgba(255,165,52,0.15)}.benefit-icon{width:35px;height:35px;background:linear-gradient(135deg,var(--solar-orange),var(--orange-hover));border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:0.8rem;color:var(--white);font-size:0.9rem;flex-shrink:0}.benefit-text{color:var(--white);font-weight:500;font-size:0.9rem;line-height:1.3}.hero-testimonial{max-width:600px;margin:0 auto;padding:1.5rem;background:rgba(255,255,255,0.08);border-radius:15px;border-left:4px solid var(--solar-orange);backdrop-filter:blur(10px)}.testimonial-content{font-style:italic;color:var(--white);font-size:1rem;margin-bottom:0.8rem;line-height:1.4}.testimonial-author{color:rgba(255,255,255,0.8);font-size:0.85rem;font-weight:500}.process-step{padding:2rem 1rem;transition:transform 0.3s ease}.process-step:hover{transform:translateY(-5px)}.process-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--sky-blue),var(--solar-orange));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:var(--white);font-size:2rem;box-shadow:0 4px 15px rgba(0,174,239,0.3)}.service-card{background:var(--white);border-radius:10px;padding:2rem;box-shadow:0 4px 6px var(--shadow);transition:transform 0.3s ease}.service-card:hover{transform:translateY(-5px)}.service-icon{width:60px;height:60px;background:var(--solar-orange);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:var(--white);font-size:1.5rem;box-shadow:0 4px 10px var(--orange-shadow)}.service-card h4{color:var(--deep-blue);margin-bottom:1rem;font-weight:600}.payment-option{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:1rem;background:var(--white);border-radius:10px;box-shadow:0 2px 4px var(--shadow);transition:transform 0.3s ease}.payment-option:hover{transform:translateY(-3px)}.payment-option i{font-size:2rem;color:var(--deep-blue);margin-bottom:0.5rem}.payment-option span{font-weight:600;color:var(--dark-gray)}.quote-card{background:var(--white);border-radius:15px;padding:3rem;box-shadow:0 8px 16px var(--shadow);margin-bottom:2rem}.form-control:focus{border-color:var(--deep-blue);box-shadow:0 0 0 0.2rem rgba(0,87,194,0.25)}.form-select:focus{border-color:var(--deep-blue);box-shadow:0 0 0 0.2rem rgba(0,87,194,0.25)}.testimonial-card{background:var(--white);border-radius:10px;padding:2rem;box-shadow:0 4px 6px var(--shadow);height:100%}.testimonial-card .stars{color:var(--solar-orange);font-size:1.2rem}.testimonial-author{margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.testimonial-author strong{color:var(--deep-blue)}.testimonial-author span{color:#666;font-size:0.9rem}.contact-info{background:var(--light-gray);padding:2rem;border-radius:10px}.contact-item{display:flex;align-items:center;margin-bottom:1rem}.contact-item i{color:var(--deep-blue);font-size:1.2rem;margin-right:1rem;width:20px}.contact-form{background:var(--white);padding:2rem;border-radius:10px;box-shadow:0 4px 6px var(--shadow)}.proposal-header{background:var(--light-gray);padding:2rem;border-radius:10px;margin-bottom:2rem}.system-stat{text-align:center;background:var(--light-blue);padding:1.5rem;border-radius:10px;border-left:4px solid var(--solar-orange)}.stat-value{font-size:2rem;font-weight:bold;color:var(--deep-blue);display:block}.stat-label{font-size:0.9rem;color:#666;margin-top:0.5rem}.instant-quote-preview{animation:slideInUp 0.5s ease-out;max-width:600px;margin:0 auto}.instant-quote-preview .card{box-shadow:0 8px 16px rgba(0,123,255,0.15);border-width:2px;border-radius:12px;overflow:hidden}.instant-quote-preview .card-header{padding:0.75rem 1rem;font-size:0.95rem}.instant-quote-preview .card-body{padding:1rem}.instant-quote-preview .quote-stat{text-align:center;padding:0.75rem 0.5rem;background:var(--light-gray);border-radius:8px;margin-bottom:0.75rem}.instant-quote-preview .stat-value{font-size:1.25rem;font-weight:bold;color:var(--solar-orange);display:block;line-height:1.2}.instant-quote-preview .stat-label{font-size:0.8rem;color:#666;margin-top:0.2rem}.instant-quote-preview .row{margin-bottom:0.5rem}.instant-quote-preview .text-center small{font-size:0.75rem;line-height:1.3}@media (max-width:768px){.instant-quote-preview{margin:0 -15px}.instant-quote-preview .card-body{padding:0.75rem}.instant-quote-preview .quote-stat{padding:0.5rem;margin-bottom:0.5rem}.instant-quote-preview .stat-value{font-size:1.1rem}.instant-quote-preview .stat-label{font-size:0.75rem}}.btn-outline-light{border:2px solid rgba(255,255,255,0.8);border-radius:25px;padding:12px 30px;font-weight:600;transition:all 0.3s ease;position:relative;overflow:hidden}.btn-outline-light::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:rgba(255,255,255,0.1);transition:left 0.5s ease}.btn-outline-light:hover::before{left:100%}.btn-outline-light:hover{background:rgba(255,255,255,0.1);border-color:var(--white);color:var(--white);transform:translateY(-2px);box-shadow:0 4px 15px rgba(255,255,255,0.2)}.hero-section h1{font-size:3.5rem;font-weight:700;line-height:1.2;margin-bottom:1.5rem;text-shadow:0 2px 4px rgba(0,0,0,0.1)}.hero-section .lead{font-size:1.1rem;font-weight:400;line-height:1.6;color:rgba(255,255,255,0.9);margin-bottom:2rem}.benefits-section{margin-top:2rem;padding:1.5rem 0}.benefit-item{display:flex;align-items:center;margin-bottom:1rem;padding:0.75rem 1rem;background:rgba(255,255,255,0.1);border-radius:15px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);transition:all 0.3s ease}.benefit-item:hover{background:rgba(255,255,255,0.15);transform:translateX(5px)}.benefit-icon{width:40px;height:40px;background:var(--primary-sun-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:1rem;font-size:1.2rem;color:var(--white);flex-shrink:0}.benefit-text{font-size:0.95rem;font-weight:500;color:var(--white)}.testimonial-rotating{margin-top:2rem;padding:1.5rem;background:rgba(255,255,255,0.1);border-radius:15px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);text-align:center}.testimonial-content{font-style:italic;font-size:1.1rem;color:var(--white);margin-bottom:1rem;transition:opacity 0.3s ease}.testimonial-author{font-weight:600;color:var(--primary-sun-gold);margin-bottom:0;transition:opacity 0.3s ease}.testimonial-location{font-size:0.9rem;color:rgba(255,255,255,0.8)}@media (max-width:768px){.hero-section h1{font-size:2.5rem}.hero-section .lead{font-size:1rem}.benefit-item{margin-bottom:0.75rem}.benefit-text{font-size:0.9rem}}@keyframes slideInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.3);backdrop-filter:blur(2px);z-index:9999;display:none;justify-content:center;align-items:center}.loading-content{text-align:center;max-width:600px;padding:2rem;background:rgba(255,255,255,0.9);border-radius:15px;box-shadow:0 8px 32px rgba(0,0,0,0.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2)}.loading-header{position:relative;margin-bottom:3rem}.loading-sun{font-size:4rem;color:var(--primary-sun-gold);margin-bottom:1rem;animation:rotateSun 3s linear infinite}.loading-house{font-size:2rem;color:var(--primary-sky-blue);margin-bottom:1rem}.loading-title{color:var(--primary-sky-blue);font-size:1.8rem;font-weight:bold;margin-bottom:0.5rem}.loading-subtitle{color:#666;font-size:1rem;margin-bottom:0}.progress-container{margin-bottom:3rem}.progress-bar{width:100%;height:8px;background-color:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:0.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-sky-blue),var(--primary-sun-gold));width:0%;transition:width 0.3s ease;border-radius:4px}.progress-percentage{font-size:1.2rem;font-weight:bold;color:var(--primary-sky-blue)}.loading-steps{display:flex;flex-direction:column;gap:1rem}.loading-step{display:flex;align-items:center;text-align:left;padding:1rem;background:rgba(255,255,255,0.6);border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.1);opacity:0.5;transition:all 0.3s ease;backdrop-filter:blur(5px)}.loading-step.active{opacity:1;background:rgba(255,193,7,0.2);border-left:4px solid var(--primary-sun-gold);transform:scale(1.02)}.loading-step.completed{opacity:1;background:rgba(13,110,253,0.1);border-left:4px solid var(--primary-sky-blue)}.step-icon{width:40px;height:40px;background:var(--light-gray);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:1rem;font-size:1rem;color:var(--primary-sky-blue)}.loading-step.active .step-icon{background:var(--primary-sun-gold);color:white}.loading-step.completed .step-icon{background:var(--primary-sky-blue);color:white}.step-text{font-weight:500;color:var(--dark-gray);flex:1}@keyframes rotateSun{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}100%{transform:scale(1)}}.loading-step.active .step-icon{animation:pulse 1.5s ease-in-out infinite}@media (max-width:768px){.loading-content{padding:1rem}.loading-sun{font-size:3rem}.loading-title{font-size:1.5rem}.loading-steps{gap:0.5rem}.loading-step{padding:0.75rem}}.pricing-item{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 0;border-bottom:1px solid #eee}.pricing-item:last-child{border-bottom:none}.pricing-total{font-size:1.1rem;font-weight:bold;background:var(--light-gray);padding:1rem;border-radius:5px;border:none;margin-top:1rem}.pricing-label{font-weight:500}.pricing-value{font-weight:bold;color:var(--primary-sky-blue)}.savings-info{background:var(--light-gray);padding:1.5rem;border-radius:10px;border-left:4px solid var(--primary-sun-gold)}.savings-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.5rem}.savings-label{font-weight:500}.savings-value{font-weight:bold;color:#28a745}.action-buttons{margin:2rem 0}@media (max-width:768px){.hero-icon{font-size:8rem}.quote-card{padding:2rem}.sticky-cta{bottom:15px;right:15px}.sticky-cta .btn{padding:0.75rem 1.5rem;font-size:0.9rem}.process-step{padding:1rem}.process-icon{width:60px;height:60px;font-size:1.5rem}.service-card{padding:1.5rem}.contact-info,.contact-form{padding:1.5rem}.form-control,.form-select{font-size:16px !important;min-height:44px;padding:12px 16px;border-radius:8px}.form-label{font-size:14px;font-weight:600;margin-bottom:8px}.btn{min-height:44px;padding:12px 20px;font-size:16px;border-radius:8px}.btn-lg{min-height:52px;padding:16px 24px;font-size:18px}.table-responsive{border:none;box-shadow:none}.mb-3{margin-bottom:1.5rem !important}.card-body{padding:1.25rem}.navbar-toggler{border:none;padding:8px 12px;font-size:1.25rem}.navbar-toggler:focus{box-shadow:none}}@media (max-width:576px){.hero-section .display-4{font-size:2rem}.hero-icon{font-size:6rem}.quote-card{padding:1.5rem}.system-stat{padding:1rem}.stat-value{font-size:1.5rem}.action-buttons .btn{display:block;width:100%;margin-bottom:1rem}.form-control,.form-select{font-size:16px !important;min-height:48px;padding:14px 18px;border:2px solid #e0e0e0;border-radius:10px;transition:all 0.2s ease}.form-control:focus,.form-select:focus{border-color:var(--solar-orange);box-shadow:0 0 0 3px rgba(255,165,52,0.1);transform:scale(1.02)}.invalid-feedback{font-size:14px;margin-top:8px;padding:8px 12px;background:rgba(220,53,69,0.1);border-radius:6px;border-left:3px solid #dc3545}.btn{min-height:48px;padding:14px 24px;font-size:16px;font-weight:600;border-radius:10px;transition:all 0.2s ease}.btn:active{transform:scale(0.98)}.modal-dialog{margin:20px auto;max-width:calc(100vw - 40px)}.modal-content{border-radius:12px;border:none;box-shadow:0 10px 30px rgba(0,0,0,0.3)}.table-responsive{-webkit-overflow-scrolling:touch;border:none}.container{padding-left:15px;padding-right:15px}.row{margin-left:-10px;margin-right:-10px}.col,[class*="col-"]{padding-left:10px;padding-right:10px}.card{border-radius:12px;border:none;box-shadow:0 4px 12px rgba(0,0,0,0.1);margin-bottom:1.5rem}.card-header{border-radius:12px 12px 0 0 !important;padding:1rem 1.25rem;font-weight:600}.card-body{padding:1.25rem}}.gallery-item{position:relative;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,0.1);transition:transform 0.3s ease,box-shadow 0.3s ease;height:250px}.gallery-item:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,0.15)}.gallery-image{position:relative;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--light-gray) 0%,#f8f9fa 100%);cursor:pointer;overflow:hidden}.gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s ease}.gallery-item:hover .gallery-image img{transform:scale(1.05)}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,0.8));color:white;padding:1.5rem;transform:translateY(100%);transition:transform 0.3s ease}.gallery-item:hover .gallery-overlay{transform:translateY(0)}.gallery-overlay h5{font-weight:600;margin-bottom:0.5rem}.gallery-overlay p{margin:0;font-size:0.9rem;opacity:0.9}.service-area-card{background:#fff;border-radius:15px;padding:2rem;box-shadow:0 5px 15px rgba(0,0,0,0.08);transition:transform 0.3s ease,box-shadow 0.3s ease;height:100%;border-left:4px solid var(--primary-sky-blue)}.service-area-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(0,0,0,0.12)}.service-area-card h4{font-weight:600;margin-bottom:0.5rem}.service-area-card p{color:var(--dark-gray);margin-bottom:0.5rem}.service-guarantee{background:linear-gradient(135deg,var(--primary-sky-blue) 0%,var(--deep-blue) 100%);color:white;border-radius:15px;margin-top:2rem}.service-guarantee h5{color:white;font-weight:600}.service-guarantee p{color:rgba(255,255,255,0.9)}.service-guarantee a{color:var(--primary-sun-gold);text-decoration:none;font-weight:500}.service-guarantee a:hover{color:#fff;text-decoration:underline}@media (max-width:768px){.gallery-item{height:200px}.service-area-card{padding:1.5rem;margin-bottom:1rem}.service-area-card .col-md-3,.service-area-card .col-md-9{text-align:center}.service-area-card .col-md-3{margin-bottom:1rem}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp 0.8s ease-out}.tax-credit-infographic{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(0.9);transition:all 0.3s ease;backdrop-filter:blur(3px)}.tax-credit-infographic.show{opacity:1;transform:scale(1)}.tax-credit-content{background:linear-gradient(135deg,#dc3545 0%,#c82333 100%);color:white;border-radius:15px;padding:1rem;max-width:400px;margin:1rem;box-shadow:0 15px 30px rgba(220,53,69,0.3);text-align:center;position:relative;border:2px solid rgba(255,255,255,0.2);animation:slideInBounce 0.5s ease-out}.tax-credit-close-btn{position:absolute;top:10px;right:10px;background:rgba(255,255,255,0.2);border:none;color:white;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s ease;font-size:1rem}.tax-credit-close-btn:hover{background:rgba(255,255,255,0.3);transform:scale(1.1)}.tax-credit-header h4{font-size:1.3rem;font-weight:600;margin-bottom:0.75rem;text-shadow:1px 1px 2px rgba(0,0,0,0.3)}.tax-credit-body{font-size:0.95rem;line-height:1.4}.tax-credit-body p{font-size:1rem;font-weight:400;color:rgba(255,255,255,0.95)}.benefits-list{display:flex;flex-direction:column;gap:0.5rem;margin:0.75rem 0}.benefit-item{display:flex;align-items:center;justify-content:center;gap:0.75rem;padding:0.5rem 1rem;background:rgba(255,255,255,0.1);border-radius:10px;border:1px solid rgba(255,255,255,0.2);transition:all 0.3s ease}.benefit-item:hover{background:rgba(255,255,255,0.2);transform:translateX(3px)}.benefit-icon{font-size:1.2rem;filter:drop-shadow(1px 1px 2px rgba(0,0,0,0.3))}.benefit-text{font-size:0.9rem;font-weight:500;color:white}.tax-credit-content .btn-warning{background:linear-gradient(135deg,#ffc107 0%,#e0a800 100%);border:none;color:#212529;font-weight:600;border-radius:20px;padding:8px 20px;box-shadow:0 3px 10px rgba(255,193,7,0.3);transition:all 0.3s ease;font-size:0.85rem}.tax-credit-content .btn-warning:hover{background:linear-gradient(135deg,#e0a800 0%,#ffc107 100%);transform:translateY(-1px);box-shadow:0 5px 15px rgba(255,193,7,0.4)}@keyframes slideInBounce{0%{transform:translateY(-30px) scale(0.9);opacity:0}60%{transform:translateY(5px) scale(1.02);opacity:0.8}100%{transform:translateY(0) scale(1);opacity:1}}@media (max-width:768px){.tax-credit-content{padding:0.75rem;margin:0.5rem;max-width:350px}.tax-credit-header h4{font-size:1.1rem}.tax-credit-body{font-size:0.9rem}.benefit-item{padding:0.4rem 0.75rem;font-size:0.85rem}.tax-credit-close-btn{width:24px;height:24px;font-size:0.9rem}.tax-credit-content .btn-warning{padding:6px 16px;font-size:0.8rem}}.touch-device .form-control.touch-active,.touch-device .form-select.touch-active{transform:scale(1.02);box-shadow:0 0 0 3px rgba(255,165,52,0.2);border-color:var(--solar-orange)}.touch-device .btn.btn-touch-active{transform:scale(0.95);transition:transform 0.1s ease}.touch-device .form-control,.touch-device .form-select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.touch-device .btn{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.touch-device input[type="tel"]{-webkit-appearance:none;-moz-appearance:textfield}.touch-device input[type="number"]{-webkit-appearance:none;-moz-appearance:textfield}.touch-device .was-validated .form-control:invalid{border-color:#dc3545;background-image:none;animation:shake 0.5s ease-in-out}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.touch-device .was-validated .form-control:valid{border-color:#28a745;background-image:none}.security-badge{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:1rem 0.5rem;border-radius:8px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);transition:all 0.3s ease;min-height:80px}.security-badge:hover{background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.2);transform:translateY(-2px)}.security-badge .badge-icon{font-size:1.5rem;margin-bottom:0.5rem}.security-badge .badge-text{line-height:1.2}.security-badge small{font-size:0.75rem;opacity:0.8}.security-badge strong{font-size:0.85rem;font-weight:600}@media (max-width:768px){.security-badge{padding:0.75rem 0.25rem;min-height:70px}.security-badge .badge-icon{font-size:1.25rem;margin-bottom:0.25rem}.security-badge small{font-size:0.7rem}.security-badge strong{font-size:0.8rem}}@media (max-width:576px){.security-badge{padding:0.5rem 0.25rem;min-height:60px}.security-badge .badge-icon{font-size:1.1rem}.security-badge small{font-size:0.65rem}.security-badge strong{font-size:0.75rem}}.security-badge{animation:fadeInUp 0.5s ease-out forwards}.security-badge:nth-child(1){animation-delay:0.1s}.security-badge:nth-child(2){animation-delay:0.2s}.security-badge:nth-child(3){animation-delay:0.3s}.security-badge:nth-child(4){animation-delay:0.4s}.security-badge:nth-child(5){animation-delay:0.5s}.security-badge:nth-child(6){animation-delay:0.6s}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.service-areas-hero{background:linear-gradient(135deg,var(--primary-sky-blue) 0%,var(--deep-blue) 100%);color:white}.state-section{background:#fff;border-radius:15px;padding:2rem;box-shadow:0 5px 15px rgba(0,0,0,0.08);margin-bottom:2rem;border-left:4px solid var(--primary-sky-blue)}.state-header h2{color:var(--primary-sky-blue) !important;margin-bottom:0.5rem}.state-header p.lead{color:var(--dark-gray);margin-bottom:1.5rem}.city-list{background:rgba(0,123,255,0.02);border-radius:10px;padding:1.5rem;height:100%;border:1px solid rgba(0,123,255,0.1)}.city-list h5{color:var(--primary-sky-blue);font-weight:600;border-bottom:2px solid var(--primary-sun-gold);padding-bottom:0.5rem;margin-bottom:1rem}.city-list ul li{color:var(--dark-gray);padding:0.25rem 0;font-size:0.9rem;transition:color 0.2s ease}.city-list ul li:hover{color:var(--primary-sky-blue)}.city-list .fas.fa-check-circle{margin-right:0.5rem;color:#28a745;font-size:0.8rem}@media (max-width:768px){.state-section{padding:1.5rem;margin-bottom:1.5rem}.city-list{padding:1rem;margin-bottom:1rem}.city-list h5{font-size:1.1rem}.city-list ul li{font-size:0.85rem}}@media (max-width:576px){.state-section{padding:1rem}.city-list{padding:0.75rem}.state-header h2{font-size:1.5rem !important}}@media print{.navbar,.sticky-cta,.action-buttons,.tax-credit-infographic,footer{display:none !important}body{padding-top:0}.card{box-shadow:none;border:1px solid #ddd}}img.lazy-load{opacity:0;transition:opacity 0.3s ease-in-out}img.lazy-load[src]:not([src=""]){opacity:1}img[data-src]{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}