*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;color:#222;line-height:1.6;background:#fff}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{max-width:1100px;margin:0 auto;padding:0 20px}

/* Header */
.site-header{background:#111;padding:12px 0;position:sticky;top:0;z-index:100}
.header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1100px;margin:0 auto;padding:0 20px}
.logo img{height:40px;width:auto}
.main-nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.main-nav a{color:#fff;font-size:.85rem;padding:6px 10px;border-radius:4px;transition:background .2s}
.main-nav a:hover,.main-nav a.active{background:rgba(255,255,255,.15)}
.nav-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:4px 8px}

/* Hero */
.hero{background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);color:#fff;text-align:center;padding:60px 20px 50px}
.hero h1{font-size:2.2rem;margin-bottom:12px;font-weight:700}
.hero .subtitle{font-size:1.05rem;max-width:700px;margin:0 auto 24px;opacity:.9;line-height:1.5}
.btn-primary{display:inline-block;background:#e63946;color:#fff;padding:12px 32px;border-radius:6px;font-size:1rem;font-weight:600;transition:background .2s;border:none;cursor:pointer}
.btn-primary:hover{background:#c1272d}

/* Features Grid */
.features{background:#1a1a1a;padding:50px 20px;color:#fff}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:30px;max-width:900px;margin:0 auto;text-align:center}
.feature-item img{width:50px;height:50px;margin:0 auto 10px;object-fit:contain}
.feature-item p{font-size:.88rem;line-height:1.4}

/* Quote Form Section */
.quote-section{background:#333;color:#fff;padding:50px 20px}
.quote-section h2{text-align:center;font-size:1.8rem;margin-bottom:8px}
.quote-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:900px;margin:0 auto;align-items:start}
.quote-text{padding-top:10px}
.quote-text p{margin-bottom:12px;line-height:1.6;font-size:.95rem}
.quote-form{background:#444;padding:24px;border-radius:8px}
.quote-form h3{margin-bottom:16px;font-size:1.1rem}
.quote-form input,.quote-form select,.quote-form textarea{width:100%;padding:10px 12px;margin-bottom:12px;border:1px solid #666;border-radius:4px;background:#555;color:#fff;font-size:.9rem}
.quote-form input::placeholder{color:#aaa}
.quote-form select{appearance:auto}
.quote-form button{width:100%}

/* Testimonial */
.testimonials{background:#1a1a1a;color:#fff;padding:50px 20px;text-align:center}
.testimonials h2{font-size:1.6rem;margin-bottom:30px}
.testimonial-card{max-width:700px;margin:0 auto;padding:30px;background:rgba(255,255,255,.05);border-radius:8px}
.testimonial-card blockquote{font-style:italic;font-size:1.05rem;margin-bottom:16px;line-height:1.6}
.stars{color:#ffc107;font-size:1.3rem;margin-bottom:12px}
.testimonial-author{font-weight:600}
.testimonial-location{opacity:.7;font-size:.9rem}

/* Info Section (tan/beige) */
.info-section{background:#d4c5a0;color:#333;padding:50px 20px}
.info-section h2{font-size:1.6rem;margin-bottom:16px}
.info-section h3{font-size:1.2rem;margin-bottom:10px;color:#222}
.info-content{max-width:900px;margin:0 auto}
.info-content p{margin-bottom:12px;line-height:1.7;font-size:.95rem}
.info-content ul{margin:12px 0 12px 24px}
.info-content li{margin-bottom:8px;font-size:.95rem}
.info-image{max-width:600px;margin:20px auto;border-radius:8px;overflow:hidden}

/* Location Pages - Services */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin:30px 0}
.service-card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 8px rgba(0,0,0,.1);text-align:center}
.service-card h3{margin-bottom:8px;color:#1a1a1a}
.service-card p{font-size:.9rem;color:#555;line-height:1.5}

/* CTA Banner */
.cta-banner{background:#e63946;color:#fff;text-align:center;padding:40px 20px}
.cta-banner h2{font-size:1.5rem;margin-bottom:12px}
.cta-banner .btn-primary{background:#fff;color:#e63946}
.cta-banner .btn-primary:hover{background:#f0f0f0}

/* Footer */
.site-footer{background:#111;color:#ccc;padding:40px 20px;text-align:center}
.footer-inner{max-width:900px;margin:0 auto}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:20px}
.footer-links a{color:#aaa;font-size:.85rem;transition:color .2s}
.footer-links a:hover{color:#fff}
.footer-contact{margin-bottom:16px}
.footer-contact a{color:#e63946}
.footer-copy{font-size:.8rem;opacity:.6}

/* Page Hero (inner pages) */
.page-hero{background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);color:#fff;text-align:center;padding:50px 20px 40px}
.page-hero h1{font-size:2rem;margin-bottom:8px}
.page-hero .subtitle{font-size:1rem;opacity:.85}

/* Content Section */
.content-section{padding:40px 20px}
.content-section h2{font-size:1.4rem;margin-bottom:12px;color:#1a1a1a}
.content-section p{margin-bottom:12px;line-height:1.7;font-size:.95rem;color:#444}

/* Responsive */
@media(max-width:768px){
  .hero h1{font-size:1.6rem}
  .hero .subtitle{font-size:.95rem}
  .features-grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .quote-inner{grid-template-columns:1fr}
  .main-nav{display:none;flex-direction:column;width:100%;background:#111;padding:10px 0;position:absolute;top:100%;left:0}
  .main-nav.open{display:flex}
  .nav-toggle{display:block}
  .header-inner{flex-wrap:wrap}
  .page-hero h1{font-size:1.5rem}
}
@media(max-width:480px){
  .features-grid{grid-template-columns:1fr 1fr;gap:16px}
  .feature-item p{font-size:.8rem}
}
