
:root{
  --blue:#0b66c3;
  --green:#2ecc71;
  --ink:#1f2937;
  --bg:#f6fafc;
  --card:#ffffff;
  --border:#e5eef5;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Arial,sans-serif;color:var(--ink);background:var(--bg)}
.wrap{max-width:1200px;margin:0 auto;padding:48px 20px}
h1,h2,h3{margin:0 0 16px}
p{margin:0 0 12px;line-height:1.55}

.site-header{
  position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-between;padding:10px 16px
}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:56px;height:56px;object-fit:cover;border-radius:8px;border:2px solid var(--blue)}
.brand-text h1{font-size:20px}
.slogan{color:var(--blue);font-weight:600}

.nav a{margin:0 8px;text-decoration:none;color:var(--ink);font-weight:600}
.nav a:hover{color:var(--blue)}

.hero{position:relative}
.slider{width:100%;height:min(64vw,520px);background:linear-gradient(120deg, #d9ecff, #e8fff3);display:grid;place-items:center;overflow:hidden}
.slide{width:100%;height:100%;object-fit:cover;display:none}
.slide.active{display:block;animation:fade 0.8s ease}
@keyframes fade{from{opacity:0}to{opacity:1}}

.hero-cta{display:flex;gap:12px;justify-content:center;margin:14px auto 26px}
.btn{display:inline-block;padding:12px 18px;border-radius:10px;text-decoration:none;font-weight:700;border:2px solid transparent}
.btn.primary{background:var(--blue);color:#fff}
.btn.outline{border-color:var(--blue);color:var(--blue);background:#fff}
.btn.primary:hover{filter:brightness(1.05)}
.btn.outline:hover{background:#eef6ff}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:18px}
.card{background:var(--card);padding:18px;border:1px solid var(--border);border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.03)}

.note{margin-top:8px;color:#4b5563;font-size:14px}

.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.gallery img{width:100%;height:220px;object-fit:cover;border-radius:12px;border:1px solid var(--border)}

.before-after-grid{display:grid;grid-template-columns:1fr;gap:14px}
.ba-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ba-pair img{width:100%;height:320px;object-fit:cover;border-radius:12px;border:1px solid var(--border)}

.contact .contacts{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}
.contact-card{flex:1;min-width:220px;background:var(--card);padding:16px;border:1px solid var(--border);border-radius:12px}
.email a{color:var(--blue);font-weight:700}

.site-footer{border-top:1px solid var(--border);text-align:center;padding:22px 12px;background:#fff;margin-top:20px}

.sticky-call{
  position:fixed;right:16px;padding:12px 14px;border-radius:999px;background:var(--green);color:#fff;
  text-decoration:none;font-weight:800;border:2px solid #fff;box-shadow:0 8px 20px rgba(0,0,0,.15)
}
.sticky-call.cam{bottom:88px}
.sticky-call.andy{bottom:28px;background:var(--blue)}

@media (min-width: 900px){
  .slider{height:520px}
}


.social-links{margin-top:16px;display:flex;gap:16px;flex-wrap:wrap}
.social{font-weight:700;text-decoration:none;padding:10px 14px;border-radius:8px;color:#fff}
.social.fb{background:#1877f2}
.social.yelp{background:#d32323}
.social:hover{opacity:0.85}
.footer-social{justify-content:center;margin-top:10px}
