@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Karla:wght@300;400;500;600&display=swap');*{margin:0;padding:0;box-sizing:border-box}:root{--sage-green:#65a30d;--sage-green-dark:#4d7c0f;--sage-green-light:#84cc16;--desert-sand:#d4a574;--desert-sand-light:#e8c9a0;--terracotta:#c2410c;--terracotta-dark:#9a3412;--sky-blue:#38bdf8;--sky-blue-light:#7dd3fc;--white:#ffffff;--off-white:#fefdfb;--cream:#f8f6f3;--stone-gray:#78716c;--dark-brown:#292524;--light-gray:#e7e5e4;--font-heading:'Playfair Display',serif;--font-body:'Karla',sans-serif;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:4rem;--spacing-xl:6rem;--transition-smooth:all 0.4s cubic-bezier(0.4,0,0.2,1);--transition-bounce:all 0.5s cubic-bezier(0.68,-0.55,0.265,1.55);--shadow-sm:0 2px 8px rgba(0,0,0,0.08);--shadow-md:0 4px 20px rgba(0,0,0,0.12);--shadow-lg:0 10px 40px rgba(0,0,0,0.15);--shadow-organic:0 8px 30px rgba(101,163,13,0.15)}body{font-family:var(--font-body);font-size:1.125rem;line-height:1.7;color:var(--dark-brown);background-color:var(--off-white);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--dark-brown);margin-bottom:var(--spacing-sm)}h1{font-size:clamp(2.25rem,5vw,3.5rem);margin-bottom:var(--spacing-md);letter-spacing:-0.02em}h2{font-size:clamp(1.875rem,4vw,2.75rem);margin-bottom:var(--spacing-md)}h3{font-size:clamp(1.5rem,3vw,2rem)}h4{font-size:1.5rem}p{margin-bottom:var(--spacing-sm)}a{color:var(--sage-green);text-decoration:none;transition:var(--transition-smooth)}a:hover{color:var(--sage-green-dark)}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.container-narrow{max-width:900px;margin:0 auto;padding:0 var(--spacing-md)}.site-header{background:var(--white);border-bottom:1px solid var(--light-gray);padding:var(--spacing-sm) 0;position:sticky;top:0;z-index:1000;box-shadow:var(--shadow-sm)}.header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.logo{display:flex;align-items:center;gap:0.75rem;font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--sage-green);text-decoration:none}.logo-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--sage-green),var(--sage-green-light));border-radius:12px;color:var(--white);font-size:1.5rem;box-shadow:var(--shadow-organic)}.header-phone{display:flex;align-items:center;gap:0.5rem;font-family:var(--font-heading);font-size:1.5rem;font-weight:600;color:var(--terracotta);white-space:nowrap}.phone-icon{font-size:1.25rem}.main-nav{background:var(--cream);border-bottom:1px solid var(--light-gray)}.nav-container{display:flex;justify-content:center;align-items:center;padding:0}.nav-list{display:flex;list-style:none;gap:0;margin:0;flex-wrap:wrap;justify-content:center}.nav-list li{position:relative}.nav-list a{display:block;padding:1rem 1.5rem;color:var(--dark-brown);font-weight:500;transition:var(--transition-smooth);border-bottom:3px solid transparent}.nav-list a:hover,.nav-list a.active{color:var(--sage-green);background:var(--white);border-bottom-color:var(--sage-green)}.mobile-menu-toggle{display:none;background:var(--sage-green);color:var(--white);border:none;padding:0.75rem 1rem;font-size:1.25rem;border-radius:8px;cursor:pointer;transition:var(--transition-smooth)}.mobile-menu-toggle:hover{background:var(--sage-green-dark)}.hero{background:linear-gradient(135deg,rgba(101,163,13,0.95),rgba(132,204,22,0.9)),url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 400"><path d="M0,200 Q300,100 600,200 T1200,200 L1200,400 L0,400 Z" fill="rgba(212,165,116,0.2)"/><path d="M0,250 Q400,150 800,250 T1600,250 L1600,400 L0,400 Z" fill="rgba(194,65,12,0.1)"/></svg>');background-size:cover;background-position:center;color:var(--white);padding:var(--spacing-xl) 0;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(255,255,255,0.1) 0%,transparent 70%);border-radius:50%;animation:float 20s ease-in-out infinite}.hero::after{content:'';position:absolute;bottom:-30%;left:-5%;width:400px;height:400px;background:radial-gradient(circle,rgba(212,165,116,0.2) 0%,transparent 70%);border-radius:50%;animation:float 15s ease-in-out infinite reverse}@keyframes float{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(30px,-30px) rotate(5deg)}}.hero-content{position:relative;z-index:1;max-width:900px;margin:0 auto;text-align:center}.hero h1{color:var(--white);text-shadow:0 2px 20px rgba(0,0,0,0.3);margin-bottom:var(--spacing-md)}.hero-subheadline{font-size:1.375rem;font-weight:300;margin-bottom:var(--spacing-md);color:var(--off-white);line-height:1.6}.hero-body{font-size:1.125rem;margin-bottom:var(--spacing-md);line-height:1.7;color:var(--off-white)}.cta-group{display:flex;gap:var(--spacing-sm);justify-content:center;flex-wrap:wrap;margin-bottom:var(--spacing-md)}.btn{display:inline-block;padding:1rem 2.5rem;font-family:var(--font-body);font-size:1.125rem;font-weight:600;text-align:center;border-radius:50px;cursor:pointer;transition:var(--transition-smooth);border:2px solid transparent;text-decoration:none;white-space:nowrap}.btn-primary{background:var(--terracotta);color:var(--white);box-shadow:var(--shadow-md)}.btn-primary:hover{background:var(--terracotta-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--white);color:var(--sage-green);border-color:var(--white)}.btn-secondary:hover{background:var(--cream);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--sage-green);border-color:var(--sage-green)}.btn-outline:hover{background:var(--sage-green);color:var(--white)}.trust-badges{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap;margin-top:var(--spacing-md)}.trust-badge{display:flex;align-items:center;gap:0.5rem;font-size:0.95rem;color:var(--off-white)}.trust-badge-icon{font-size:1.25rem;color:var(--sky-blue)}.section{padding:var(--spacing-lg) 0}.section-header{text-align:center;margin-bottom:var(--spacing-lg)}.section-title{color:var(--sage-green);margin-bottom:var(--spacing-sm)}.section-subtitle{font-size:1.25rem;color:var(--stone-gray);max-width:700px;margin:0 auto}.bg-cream{background-color:var(--cream)}.bg-white{background-color:var(--white)}.bg-pattern{background-image:radial-gradient(circle at 20% 50%,rgba(101,163,13,0.03) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(212,165,116,0.05) 0%,transparent 50%)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.card{background:var(--white);border-radius:16px;padding:var(--spacing-md);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);border:1px solid var(--light-gray);position:relative;overflow:hidden}.card::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--sage-green),var(--sage-green-light));transform:scaleX(0);transform-origin:left;transition:var(--transition-smooth)}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow-organic)}.card:hover::before{transform:scaleX(1)}.card-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--sage-green-light),var(--sage-green));border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.875rem;color:var(--white);margin-bottom:var(--spacing-sm);box-shadow:var(--shadow-organic)}.card h3{color:var(--sage-green);margin-bottom:var(--spacing-sm)}.card p{color:var(--stone-gray);margin-bottom:var(--spacing-sm)}.card-link{display:inline-flex;align-items:center;gap:0.5rem;color:var(--sage-green);font-weight:600;margin-top:var(--spacing-sm)}.card-link:hover{gap:0.75rem}.problem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-sm);margin:var(--spacing-md) 0}.problem-item{display:flex;align-items:flex-start;gap:0.75rem;padding:var(--spacing-sm);background:var(--white);border-radius:12px;border-left:4px solid var(--terracotta);box-shadow:var(--shadow-sm);transition:var(--transition-smooth)}.problem-item:hover{border-left-color:var(--sage-green);transform:translateX(4px)}.problem-icon{font-size:1.5rem;color:var(--terracotta);flex-shrink:0}.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md);margin:var(--spacing-lg) 0;position:relative}.step{background:var(--white);padding:var(--spacing-md);border-radius:16px;box-shadow:var(--shadow-sm);text-align:center;position:relative;border:2px solid var(--light-gray);transition:var(--transition-smooth)}.step:hover{border-color:var(--sage-green);box-shadow:var(--shadow-organic)}.step-number{width:60px;height:60px;background:linear-gradient(135deg,var(--terracotta),var(--terracotta-dark));color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:1.75rem;font-weight:700;margin:0 auto var(--spacing-sm);box-shadow:var(--shadow-md)}.step h3{color:var(--sage-green);margin-bottom:var(--spacing-sm)}.feature-list{display:grid;gap:var(--spacing-sm);margin:var(--spacing-md) 0}.feature-item{display:flex;align-items:flex-start;gap:1rem;padding:var(--spacing-sm);background:var(--white);border-radius:12px;border-left:4px solid var(--sage-green);box-shadow:var(--shadow-sm)}.feature-icon{font-size:1.5rem;color:var(--sage-green);flex-shrink:0}.feature-content h4{color:var(--sage-green);margin-bottom:0.25rem;font-size:1.125rem}.location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-sm);margin:var(--spacing-md) 0}.location-item{background:var(--white);padding:var(--spacing-sm);border-radius:12px;text-align:center;border:2px solid var(--light-gray);transition:var(--transition-smooth);text-decoration:none;color:var(--dark-brown)}.location-item:hover{border-color:var(--sage-green);transform:translateY(-4px);box-shadow:var(--shadow-md)}.location-icon{font-size:2rem;color:var(--terracotta);margin-bottom:0.5rem}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.review-card{background:var(--white);padding:var(--spacing-md);border-radius:16px;box-shadow:var(--shadow-sm);border-top:4px solid var(--sage-green);position:relative}.review-stars{color:#fbbf24;font-size:1.125rem;margin-bottom:var(--spacing-sm)}.review-text{font-style:italic;color:var(--stone-gray);margin-bottom:var(--spacing-sm);line-height:1.7}.review-author{font-weight:600;color:var(--sage-green);font-size:0.95rem}.faq-list{max-width:800px;margin:var(--spacing-md) auto}.faq-item{background:var(--white);margin-bottom:var(--spacing-sm);border-radius:12px;border:1px solid var(--light-gray);overflow:hidden}.faq-question{width:100%;text-align:left;padding:var(--spacing-sm) var(--spacing-md);background:var(--white);border:none;font-family:var(--font-body);font-size:1.125rem;font-weight:600;color:var(--dark-brown);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);transition:var(--transition-smooth)}.faq-question:hover{background:var(--cream);color:var(--sage-green)}.faq-icon{font-size:1.25rem;color:var(--sage-green);transition:var(--transition-smooth)}.faq-item.active .faq-icon{transform:rotate(180deg)}.faq-answer{padding:0 var(--spacing-md);max-height:0;overflow:hidden;transition:max-height 0.4s ease,padding 0.4s ease}.faq-item.active .faq-answer{padding:0 var(--spacing-md) var(--spacing-sm);max-height:500px}.faq-answer p{color:var(--stone-gray);line-height:1.7}.contact-form{background:var(--white);padding:var(--spacing-md);border-radius:16px;box-shadow:var(--shadow-md);max-width:600px;margin:var(--spacing-md) auto}.form-group{margin-bottom:var(--spacing-sm)}.form-label{display:block;font-weight:600;color:var(--dark-brown);margin-bottom:0.5rem}.form-input,.form-select,.form-textarea{width:100%;padding:0.875rem 1rem;font-family:var(--font-body);font-size:1rem;border:2px solid var(--light-gray);border-radius:8px;transition:var(--transition-smooth);background:var(--off-white)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--sage-green);background:var(--white)}.form-textarea{min-height:120px;resize:vertical}.form-submit{width:100%}.site-footer{background:linear-gradient(135deg,var(--dark-brown),#1c1917);color:var(--off-white);padding:var(--spacing-lg) 0 var(--spacing-md);margin-top:var(--spacing-xl)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.footer-section h3{color:var(--sage-green-light);margin-bottom:var(--spacing-sm);font-size:1.25rem}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:0.5rem}.footer-section a{color:var(--off-white);transition:var(--transition-smooth)}.footer-section a:hover{color:var(--sage-green-light);padding-left:0.5rem}.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding-top:var(--spacing-md);text-align:center;color:var(--stone-gray)}.text-center{text-align:center}.text-sage{color:var(--sage-green)}.text-terracotta{color:var(--terracotta)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mt-md{margin-top:var(--spacing-md)}.hero{background-image:linear-gradient(135deg,rgba(26,54,93,0.9) 0%,rgba(45,74,124,0.85) 50%,rgba(74,111,165,0.8) 100%),url('/images/hero.jpg');background-size:cover;background-position:center;background-repeat:no-repeat}@media (max-width:768px){.header-content{flex-direction:column;gap:var(--spacing-sm)}.header-phone{font-size:1.25rem}.mobile-menu-toggle{display:block}.main-nav{display:none}.main-nav.active{display:block}.nav-list{flex-direction:column;gap:0}.nav-list a{padding:1rem;border-bottom:1px solid var(--light-gray);border-left:none}.hero{padding:var(--spacing-lg) 0}.cta-group{flex-direction:column}.btn{width:100%}.card-grid,.problem-grid,.process-steps,.location-grid{grid-template-columns:1fr}.section{padding:var(--spacing-md) 0}}@media (max-width:480px){:root{--spacing-md:1.5rem;--spacing-lg:2.5rem;--spacing-xl:3rem}h1{font-size:2rem}h2{font-size:1.75rem}.logo{font-size:1.25rem}.logo-icon{width:40px;height:40px;font-size:1.25rem}}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn 0.6s ease-out forwards}@keyframes slideInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@media print{.site-header,.main-nav,.cta-group,.site-footer{display:none}body{font-size:12pt;line-height:1.5;color:#000}}.certifications-section{background:var(--color-gray-100,#f3f4f6);padding:1.5rem 0;border-bottom:1px solid var(--color-gray-200,#e5e7eb)}.certifications-row{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1.5rem 2.5rem}.certification-badge{display:flex;align-items:center;gap:0.5rem;font-size:0.9rem;color:var(--color-gray-700,#374151);font-weight:500}.cert-icon{font-size:1.1rem}.cert-text{white-space:nowrap}@media (max-width:768px){.certifications-row{gap:1rem 1.5rem}.certification-badge{font-size:0.8rem}}@media (max-width:480px){.certifications-section{padding:1rem 0}.certifications-row{gap:0.75rem 1rem}}

/* Urgency Badge Styles */
.urgency-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.25rem;
  border-radius: 50px;
  font-weight: 600;
  font-size: 0.95rem;
  margin-bottom: 1rem;
  animation: pulse-badge 2s infinite;
}

.urgency-sub-badge {
  display: block;
  font-size: 0.875rem;
  color: #666;
  margin-bottom: 0.5rem;
}

.urgency-emergency {
  background: linear-gradient(135deg, #dc2626, #b91c1c);
  color: white;
}

.urgency-savings {
  background: linear-gradient(135deg, #059669, #047857);
  color: white;
}

.urgency-seasonal {
  background: linear-gradient(135deg, #d97706, #b45309);
  color: white;
}

.urgency-important {
  background: linear-gradient(135deg, #7c3aed, #6d28d9);
  color: white;
}

.urgency-caring {
  background: linear-gradient(135deg, #0891b2, #0e7490);
  color: white;
}

@keyframes pulse-badge {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.02); }
}
