:root{--accent:#17d2c9;--primary:#0d6efd}
*{box-sizing:border-box}
body{font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:#f7f9fb;color:#24292e}
.fw-extrabold{font-weight:800}
.hero{background:linear-gradient(180deg,#eaf7ff 0%,#ffffff 100%)}
.hero .accent{display:inline-block;width:120px;height:16px;background:linear-gradient(90deg,#17d2c9,#ff6aa6);border-radius:8px;margin-left:.4rem;vertical-align:middle}
section .accent{display:inline-block;width:90px;height:12px;background:linear-gradient(90deg,#17d2c9,#ff6aa6);border-radius:6px;margin-left:.4rem;vertical-align:middle}
.navbar-brand{letter-spacing:.2px}
.feature .icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center}
.pricing-card{border:0}
.pricing-card .badge{border-radius:999px}
footer .btn{border-radius:999px}
#timeSlots{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}
#timeSlots .slot{border:1px solid #e5e7eb;border-radius:999px;padding:.5rem 1rem;background:#fff;color:#111827;cursor:pointer;transition:.15s ease}
#timeSlots .slot:hover{box-shadow:0 2px 6px rgba(0,0,0,.06)}
#timeSlots .slot.active{background:#22c55e;color:#fff;border-color:#16a34a} /* green for selected */
#timeSlots .slot.blocked{background:#fee2e2;color:#b91c1c;border-color:#fecaca;cursor:not-allowed} /* red for booked/blocked */
#timeSlots .slot.blocked{background:#f1f5f9;color:#64748b;border-color:#e2e8f0;cursor:not-allowed}
.card{border-radius:1rem}
img{object-fit:cover}
.hero-img img{height:360px;width:100%}
@media (min-width:992px){.hero-img img{height:420px}}
