*{box-sizing:border-box}
body{font-family:'Poppins',sans-serif;margin:0;color:#333;line-height:1.7;background:#fff}
a{color:#2E7D32}
img{max-width:100%;height:auto}
nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.25rem;background:#fff;padding:.5rem 1rem;border-bottom:3px solid #2E7D32;position:sticky;top:0;z-index:50}
nav img{height:54px;width:auto;margin-right:1rem}
nav a.link{color:#1a1a1a;text-decoration:none;padding:.5rem 1rem;font-weight:500;border-radius:4px}
nav a.link:hover,nav a.link.active{background:#2E7D32;color:#fff}
.hero{background:linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.55)),url('tree-service-brooksville-fl-hero.jpg') center/cover no-repeat;min-height:480px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;padding:2rem 1rem}
.hero h1{font-size:2.6rem;max-width:900px;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.7)}
.hero.small{min-height:300px}
.band{background:#2E7D32;color:#fff;text-align:center;padding:1rem}
.band h2,.band h3,.band p{margin:.2rem 0}
.paragraph{max-width:900px;margin:1.5rem auto;padding:0 1rem;text-align:center}
.paragraph.left{text-align:left}
/* directory cards */
.providers{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;max-width:1200px;margin:2rem auto;padding:0 1rem}
.provider{background:#fff;border:1px solid #e3e3e3;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.1);padding:1.5rem;width:340px;text-align:center;display:flex;flex-direction:column;align-items:center}
.provider.featured{border:2px solid #2E7D32}
.provider .badge{background:#2E7D32;color:#fff;font-size:.75rem;padding:.15rem .7rem;border-radius:20px;margin-bottom:.8rem}
.provider img.logo{width:120px;height:auto;margin-bottom:.5rem}
.provider svg{width:48px;height:48px;margin:1rem 0 .5rem}
.provider h3{color:#1B5E20;margin:.3rem 0 .8rem;font-size:1.1rem}
.provider p{margin:.25rem 0;font-size:.9rem}
.btns{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:1rem}
.btn{display:inline-block;background:#558B2F;color:#fff;text-decoration:none;padding:.55rem 1.3rem;border-radius:30px;font-weight:600;font-size:.9rem}
.btn:hover{background:#1B5E20}
.btn.big{background:#2E7D32;border-radius:5px;padding:.8rem 1.6rem;font-size:1rem}
/* rows */
.row{display:flex;align-items:center;gap:2rem;max-width:1100px;margin:2rem auto;padding:0 1.5rem}
.row.rev{flex-direction:row-reverse}
.row .img{flex:1}
.row .img img{width:100%;border:2px solid #2E7D32;border-radius:6px;display:block}
.row .txt{flex:1}
.row h3{color:#1B5E20;margin-top:0;font-size:1.5rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;max-width:1100px;margin:2rem auto;padding:0 1rem}
.card{background:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:1.4rem;box-shadow:0 2px 5px rgba(0,0,0,.08)}
.card h3{color:#1B5E20;margin-top:0;font-size:1.1rem}
.card p{margin:0;font-size:.95rem}
.gray{background:#f8f8f8;padding:1rem 0 2rem}
/* faq */
.faq{max-width:800px;margin:2rem auto;padding:1rem;background:#fff;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1)}
.faq details{border-bottom:1px solid #ddd;padding:.9rem 0}
.faq summary{cursor:pointer;font-weight:500;color:#333}
.faq summary:hover{color:#2E7D32}
.faq details p{margin:.6rem 0 0;font-size:.92rem;color:#555}
.map{max-width:1000px;margin:2rem auto;padding:0 1rem}
.map iframe{width:100%;height:400px;border:0;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1)}
/* contact */
.contact-wrap{display:flex;flex-wrap:wrap;gap:2rem;max-width:1000px;margin:2rem auto;padding:0 1rem}
.contact-wrap>div{flex:1;min-width:280px}
.contact-wrap .box{background:#f9f9f9;border:1px solid #ddd;border-radius:8px;padding:1.5rem}
label{display:block;font-weight:500;margin:.8rem 0 .3rem}
input,textarea{width:100%;padding:.7rem;border:1px solid #bbb;border-radius:5px;font:inherit}
button.btn{border:0;cursor:pointer;margin-top:1rem;font-family:inherit}
footer{background:#1a1a1a;color:#fff;padding:2rem;margin-top:3rem}
footer .container{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2rem;max-width:1200px;margin:0 auto}
footer .column{flex:1;min-width:220px}
footer h3{font-size:1.15rem;margin:0 0 1rem}
footer a{color:#fff;text-decoration:none}
footer a:hover{text-decoration:underline}
footer .logo{background:#fff;border-radius:8px;padding:6px;width:140px;display:block;margin-bottom:.8rem}
footer .copy{text-align:center;margin:2rem 0 0;font-size:.9rem;color:#ccc}
@media(max-width:768px){.hero h1{font-size:1.8rem}.row,.row.rev{flex-direction:column}nav img{margin:0 0 .3rem}}
