@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'DM Sans',sans-serif;font-size:18px;color:#1e293b;line-height:1.75;background:#fff}
h1{font-family:'Bebas Neue',sans-serif;font-size:96px;line-height:1;color:#fff}
h2{font-family:'Bebas Neue',sans-serif;font-size:56px;line-height:1.1;color:#1e293b}
h3{font-family:'Bebas Neue',sans-serif;font-size:32px;line-height:1.2;color:#1e293b}
a{color:#14532d;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
ul,ol{padding-left:24px}
.container{max-width:1200px;margin:0 auto;padding:0 24px}

/* Header */
.site-header{background:#14532d;padding:16px 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{font-family:'Bebas Neue',sans-serif;font-size:28px;color:#fff;text-decoration:none}
.brand:hover{text-decoration:none;color:#fff}
.hdr-nav{display:flex;gap:24px;align-items:center}
.hdr-nav a{color:#fff;font-size:16px;font-weight:500;text-decoration:none}
.hdr-nav a:hover{text-decoration:underline}
.hdr-phone{background:#fff;color:#14532d !important;padding:8px 20px;border-radius:6px;font-weight:700;font-size:16px;white-space:nowrap;text-decoration:none}
.hdr-phone:hover{background:#f1f5f9;text-decoration:none}

/* Hero */
.hero{background:#14532d;padding:80px 0;color:#fff}
.hero .container{display:grid;grid-template-columns:1fr 420px;gap:60px;align-items:start}
.hero-content h1{margin-bottom:20px}
.hero-content p{font-size:20px;line-height:1.65;color:rgba(255,255,255,.9);margin-bottom:24px;max-width:580px}
.hero-phone{display:inline-flex;align-items:center;gap:10px;background:#fff;color:#14532d;padding:14px 28px;border-radius:8px;font-family:'Bebas Neue',sans-serif;font-size:28px;text-decoration:none;margin-bottom:16px}
.hero-phone:hover{background:#f1f5f9;text-decoration:none;color:#14532d}
.trust-bar{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.trust-item{background:rgba(255,255,255,.18);color:#fff;padding:6px 14px;border-radius:20px;font-size:14px;font-weight:500}

/* Lead Form */
.lead-form{background:#fff;padding:32px;border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,.18)}
.lead-form h3{color:#14532d;margin-bottom:20px;font-size:28px}
.form-group{margin-bottom:16px}
.form-group label{display:block;font-size:14px;font-weight:600;color:#475569;margin-bottom:6px}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:16px;color:#1e293b;background:#fff;transition:border-color .2s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#14532d}
.form-group textarea{height:100px;resize:vertical}
.honeypot{display:none !important;visibility:hidden !important}
.btn-submit{width:100%;background:#14532d;color:#fff;border:none;padding:16px;border-radius:8px;font-family:'Bebas Neue',sans-serif;font-size:24px;cursor:pointer;transition:opacity .2s}
.btn-submit:hover{opacity:.9}
.form-success{display:none;background:#dcfce7;color:#166534;padding:16px;border-radius:8px;text-align:center;font-weight:600;margin-top:12px}

/* Sections */
section{padding:80px 0}
.section-alt{background:#f8fafc}
.section-dark{background:#14532d;color:#fff}
.section-dark h2,.section-dark h3{color:#fff}
.section-dark p{color:rgba(255,255,255,.9)}
.section-header{text-align:center;margin-bottom:48px}
.section-header p{font-size:20px;color:#475569;max-width:620px;margin:0 auto;margin-top:12px}
.section-dark .section-header p{color:rgba(255,255,255,.85)}

/* Content */
.content-block{max-width:900px;margin:0 auto}
.content-block p{margin-bottom:20px;color:#334155}
.content-block h2{margin-bottom:24px}
.content-block h3{margin-bottom:16px;margin-top:32px}
.content-block ul{margin-bottom:20px}
.content-block ul li{margin-bottom:8px;color:#334155}

/* Cards */
.services-grid,.why-grid,.blog-grid,.cities-grid{display:grid;gap:32px}
.services-grid,.why-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.blog-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.cities-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}

.service-card,.blog-card{border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.service-card:hover,.blog-card:hover{border-color:#14532d;box-shadow:0 4px 16px rgba(0,0,0,.1)}
.service-card img,.blog-card img{width:100%;height:200px;object-fit:cover}
.service-card-body,.blog-card-body{padding:24px}
.service-card h3,.blog-card h3{margin-bottom:10px;font-size:26px}
.service-card p,.blog-card p{color:#475569;margin-bottom:16px}

.why-card{padding:32px;background:#fff;border-radius:12px;border-left:4px solid #14532d;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.why-card h3{margin-bottom:10px}
.why-card p{color:#475569}

.city-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;text-align:center;transition:all .2s;text-decoration:none;display:block}
.city-card:hover{background:#14532d;text-decoration:none}
.city-card:hover h3{color:#fff}
.city-card h3{font-size:20px;color:#1e293b;transition:color .2s}

/* Buttons */
.btn{display:inline-block;background:#14532d;color:#fff;padding:12px 28px;border-radius:8px;font-weight:600;font-size:16px;text-decoration:none;transition:opacity .2s}
.btn:hover{opacity:.9;text-decoration:none;color:#fff}
.btn-outline{background:transparent;border:2px solid #14532d;color:#14532d}
.btn-outline:hover{background:#14532d;color:#fff}
.btn-white{background:#fff;color:#14532d}
.btn-white:hover{background:#f1f5f9;color:#14532d}

/* Images */
.page-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin:40px 0}
.page-images img{width:100%;height:250px;object-fit:cover;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,.1)}

/* Map */
.map-wrap{border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.1);margin:32px 0}
.map-wrap iframe{width:100%;height:400px;border:none;display:block}

/* FAQ */
.faq-list{max-width:800px;margin:0 auto}
.faq-item{border-bottom:1px solid #e2e8f0;padding:24px 0}
.faq-item:last-child{border-bottom:none}
.faq-item h3{font-size:22px;color:#1e293b;margin-bottom:12px}
.faq-item p{color:#475569}

/* Process */
.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}
.step{text-align:center;padding:32px 20px}
.step-num{font-family:'Bebas Neue',sans-serif;font-size:64px;color:#14532d;line-height:1;margin-bottom:12px}
.step h3{margin-bottom:10px}
.step p{color:#475569}

/* Breadcrumb */
.breadcrumb{background:#f8fafc;padding:12px 0;border-bottom:1px solid #e2e8f0}
.breadcrumb ol{list-style:none;display:flex;gap:8px;align-items:center;font-size:14px;flex-wrap:wrap}
.breadcrumb li::before{content:'/';margin-right:8px;color:#94a3b8}
.breadcrumb li:first-child::before{display:none}
.breadcrumb a{color:#14532d}

/* CTA Section */
.cta-section{background:#14532d;color:#fff;padding:80px 0;text-align:center}
.cta-section h2{color:#fff;margin-bottom:20px}
.cta-section p{font-size:20px;color:rgba(255,255,255,.9);max-width:600px;margin:0 auto 32px}
.cta-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.cta-phone{background:#fff;color:#14532d;padding:16px 32px;border-radius:8px;font-family:'Bebas Neue',sans-serif;font-size:28px;text-decoration:none}
.cta-phone:hover{background:#f1f5f9;text-decoration:none;color:#14532d}

/* Footer */
.site-footer{background:#1e293b;color:rgba(255,255,255,.8);padding:60px 0 30px}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px;margin-bottom:40px}
.footer-col h3{color:#fff;font-size:20px;margin-bottom:16px}
.footer-col a{display:block;color:rgba(255,255,255,.7);text-decoration:none;margin-bottom:8px;font-size:15px}
.footer-col a:hover{color:#fff;text-decoration:none}
.footer-col p{color:rgba(255,255,255,.7);font-size:15px;margin-bottom:8px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:24px;text-align:center;font-size:14px;color:rgba(255,255,255,.45)}

/* Mobile Sticky */
.mobile-sticky{display:none;position:fixed;bottom:0;left:0;right:0;z-index:999;background:#fff;box-shadow:0 -2px 12px rgba(0,0,0,.15);padding:12px 16px;gap:12px}
.mobile-sticky a{flex:1;text-align:center;padding:12px;border-radius:8px;font-family:'Bebas Neue',sans-serif;font-size:20px;text-decoration:none}
.mobile-call{background:#14532d;color:#fff}
.mobile-estimate{background:#fff;color:#14532d;border:2px solid #14532d}
.mobile-call:hover,.mobile-estimate:hover{text-decoration:none;opacity:.9}

@media(max-width:768px){
  h1{font-size:56px}
  h2{font-size:40px}
  h3{font-size:26px}
  .hero .container{grid-template-columns:1fr}
  .hdr-nav{display:none}
  .mobile-sticky{display:flex}
  body{padding-bottom:72px}
  section{padding:48px 0}
}
