/* ============================================================
   SALVANT ENVIRONMENTAL SERVICES — salvantpestcontrol.com
   ============================================================ */

/* GLOBAL */
*,*::before,*::after{box-sizing:border-box;}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;margin:0;background:#f4f6f5;color:#222;line-height:1.6;padding-bottom:80px;}
h1,h2,h3{margin-top:0;line-height:1.2;}
section{padding:70px 20px;}
img{max-width:100%;height:auto;display:block;}
a{color:#1E5A35;text-decoration:none;transition:.2s;}
a:hover{color:#2F7A3E;text-decoration:underline;}
a:visited{color:#1E5A35;}

/* PERFORMANCE HINT */
.logo{height:60px;width:auto;}

/* TOP BAR */
.topbar{display:flex;justify-content:space-between;align-items:center;background:white;padding:12px 20px;box-shadow:0 3px 10px rgba(0,0,0,.05);position:sticky;top:0;z-index:999;}
.callbtn{background:#1E5A35;color:white;padding:10px 16px;border-radius:8px;text-decoration:none;font-weight:600;font-size:15px;white-space:nowrap;transition:.25s;}
.callbtn:hover{background:#2F7A3E;color:white;text-decoration:none;}

/* SITE NAV */
.sitenav{background:#1E5A35;padding:0 20px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;}
.sitenav ul{list-style:none;margin:0;padding:0;display:inline-flex;gap:0;}
.sitenav ul li a{display:block;color:rgba(255,255,255,.85);font-size:13px;font-weight:500;padding:10px 14px;text-decoration:none;transition:.2s;border-right:1px solid rgba(255,255,255,.1);}
.sitenav ul li:last-child a{border-right:none;}
.sitenav ul li a:hover,.sitenav ul li a.active{color:white;background:rgba(255,255,255,.12);text-decoration:none;}

/* BREADCRUMB */
.breadcrumb{background:#eef2ef;padding:10px 20px;font-size:13px;color:#555;}
.breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px;align-items:center;}
.breadcrumb ol li+li::before{content:"›";margin-right:4px;color:#999;}
.breadcrumb ol li a{color:#1E5A35;text-decoration:none;}
.breadcrumb ol li a:hover{text-decoration:underline;}
.breadcrumb ol li[aria-current]{color:#555;}

/* HERO */
.hero{background:linear-gradient(rgba(30,90,53,.88),rgba(47,122,62,.88)),url("../images/hero.PNG");background-size:cover;background-position:center;color:white;text-align:center;padding:110px 20px 90px;}
.hero h1{font-size:38px;margin-bottom:14px;}
.hero p{font-size:18px;max-width:780px;margin:0 auto 10px;}
.hero-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:18px 0 6px;}
.hero-trust span{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.35);color:white;padding:6px 14px;border-radius:30px;font-size:13px;font-weight:600;}
.cta{display:inline-block;margin-top:22px;background:#E6DFC2;color:#1E5A35;padding:15px 32px;border-radius:40px;text-decoration:none;font-weight:700;font-size:17px;box-shadow:0 6px 18px rgba(0,0,0,.2);transition:.25s;}
.cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.22);color:#1E5A35;text-decoration:none;}

/* HOMEPAGE HERO (images relative from root) */
.hero-home{background-image:linear-gradient(rgba(30,90,53,.88),rgba(47,122,62,.88)),url("images/hero.PNG");}

/* LOCATION / TEXT */
.location{max-width:900px;margin:auto;text-align:center;font-size:18px;}
.location ul{text-align:left;display:inline-block;}

/* STATS */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;max-width:940px;margin:auto;}
.stat{background:white;padding:28px 20px;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.08);text-align:center;}
.stat h2{color:#1E5A35;font-size:30px;margin-bottom:6px;}

/* SERVICES GRID */
.services{max-width:1100px;margin:auto;text-align:center;}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:25px;margin-top:35px;}
.card-link{display:block;text-decoration:none;color:inherit;height:100%;}
.card{background:white;border-radius:14px;box-shadow:0 6px 20px rgba(0,0,0,.08);padding:20px;transition:.25s;height:100%;display:flex;flex-direction:column;}
.card:hover{transform:translateY(-5px);box-shadow:0 14px 32px rgba(0,0,0,.12);}
.card img{width:100%;height:200px;object-fit:cover;border-radius:10px;margin-bottom:14px;}
.card h3{margin-bottom:8px;color:#222;}
.card p{color:#555;margin:0;}

/* INFO */
.info{max-width:900px;margin:auto;}
.info ul{padding-left:22px;text-align:left;}
.info ul li{margin-bottom:4px;}

/* SERVICE AREA */
.service-area{max-width:1000px;margin:auto;text-align:center;}
.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:30px;}
.area-card{background:white;padding:22px;border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.08);text-align:left;}
.area-card h3{color:#1E5A35;margin-bottom:10px;}
.area-card ul{list-style:none;padding:0;margin:0;}
.area-card li{padding:4px 0;font-size:15px;border-bottom:1px solid #f0f0f0;}
.area-card li:last-child{border-bottom:none;}

/* TRUST SECTION */
.trust-section{max-width:1000px;margin:auto;text-align:center;padding:70px 20px;}
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-top:35px;}
.trust-card{background:white;padding:28px 22px;border-radius:14px;box-shadow:0 8px 22px rgba(0,0,0,.08);text-align:left;}
.trust-icon{font-size:30px;margin-bottom:12px;}
.trust-card h3{color:#1E5A35;margin-bottom:8px;font-size:17px;}
.trust-card p{color:#555;font-size:15px;margin:0;line-height:1.55;}

/* TESTIMONIALS */
.testimonials{max-width:1060px;margin:auto;text-align:center;padding:70px 20px;}
.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:40px;}
.testimonial-card{background:white;padding:26px;border-radius:14px;box-shadow:0 8px 22px rgba(0,0,0,.08);text-align:left;}
.testimonial-stars{color:#f2b01e;font-size:18px;margin-bottom:10px;}
.testimonial-name{font-weight:700;margin-top:14px;color:#1E5A35;font-size:14px;}

/* TERMITE STEPS */
.inspection-steps{max-width:860px;margin:auto;text-align:center;}
.step-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:32px;}
.step-card{background:white;padding:28px;border-radius:14px;box-shadow:0 8px 22px rgba(0,0,0,.08);text-align:left;}
.step-number{font-size:12px;letter-spacing:2px;color:#999;font-weight:700;margin-bottom:8px;text-transform:uppercase;}
.step-card h3{color:#1E5A35;margin-bottom:8px;}
.step-arrow{font-size:26px;color:#1E5A35;text-align:center;}

/* FAQ */
.faq-section{max-width:860px;margin:auto;padding:70px 20px;}
.faq-section h2{text-align:center;margin-bottom:35px;}
.faq-item{background:white;border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.07);margin-bottom:12px;overflow:hidden;}
.faq-question{padding:18px 50px 18px 22px;font-weight:600;cursor:pointer;position:relative;font-size:16px;user-select:none;}
.faq-question::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:24px;color:#1E5A35;line-height:1;}
.faq-answer{max-height:0;overflow:hidden;padding:0 22px;transition:max-height .35s ease,padding .35s ease;color:#444;line-height:1.65;font-size:15px;}
.faq-item.active .faq-answer{max-height:300px;padding:0 22px 18px;}
.faq-item.active .faq-question::after{content:"–";}

/* COMMERCIAL */
.commercial-intro-section,.ipm-section,.recurring-service-section{max-width:880px;margin:auto;text-align:center;font-size:17px;}
.business-risk-section{max-width:1000px;margin:auto;text-align:center;padding:70px 20px;}
.business-risk-intro{font-size:17px;max-width:780px;margin:0 auto 30px;}
.business-risk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;}
.risk-card{background:white;padding:26px;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.08);text-align:center;}
.risk-card h3{color:#1E5A35;font-size:26px;margin-bottom:8px;}
.commercial-industries-section{max-width:1000px;margin:auto;text-align:center;padding:70px 20px;}
.industry-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px;margin-top:28px;}
.industry-tile{background:white;padding:18px 12px;border-radius:10px;box-shadow:0 6px 16px rgba(0,0,0,.07);font-weight:600;color:#1E5A35;font-size:14px;}

/* CTA SECTION */
.cta-section{background:#1E5A35;color:white;text-align:center;padding:80px 20px;}
.cta-section h2{margin-bottom:10px;color:white;}
.cta-section p{color:rgba(255,255,255,.9);}
.cta-section .cta{color:#1E5A35;background:#E6DFC2;}

/* FOOTER */
footer{background:#163f26;color:rgba(255,255,255,.85);text-align:center;padding:32px 20px;font-size:14px;line-height:1.8;}
footer strong{color:white;}
footer a{color:#E6DFC2;}
footer a:hover{color:white;}

/* STICKY CALL BAR */
.callbar{position:fixed;bottom:0;left:0;right:0;background:#1E5A35;padding:13px;text-align:center;z-index:999;box-shadow:0 -2px 10px rgba(0,0,0,.2);}
.callbar a{color:white;font-weight:700;font-size:16px;text-decoration:none;letter-spacing:.3px;}
.callbar a:hover{color:#E6DFC2;text-decoration:none;}

/* FLOATING QUOTE BTN */
.quote-btn{position:fixed;right:18px;bottom:88px;background:#2F7A3E;color:white;padding:13px 20px;border-radius:30px;font-weight:700;font-size:14px;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.28);transition:.25s;z-index:998;}
.quote-btn:hover{background:#1E5A35;color:white;transform:translateY(-2px);text-decoration:none;}

/* FOCUS */
.callbtn:focus-visible,.cta:focus-visible,.quote-btn:focus-visible,.callbar a:focus-visible,.card-link:focus-visible{outline:3px solid #E6DFC2;outline-offset:3px;}

/* MOBILE */
@media(max-width:768px){
  section{padding:52px 16px;}
  .topbar{padding:10px 14px;}
  .logo{height:44px;}
  .callbtn{padding:9px 13px;font-size:14px;}
  .sitenav ul li a{font-size:12px;padding:9px 11px;}
  .hero{padding:80px 18px 70px;}
  .hero h1{font-size:26px;}
  .hero p{font-size:16px;}
  .cta{padding:13px 24px;font-size:15px;}
  .hero-trust span{font-size:12px;padding:5px 10px;}
  .trust-grid{grid-template-columns:1fr;}
  .industry-cards-grid{grid-template-columns:repeat(2,1fr);}
  .business-risk-grid{grid-template-columns:repeat(2,1fr);}
  .quote-btn{right:12px;bottom:82px;padding:11px 16px;}
  .breadcrumb{font-size:12px;}
}
