/* ===========================================================
   Clean Ween Laundry - Custom Styles
   =========================================================== */

/* Floating WhatsApp + Call buttons */
.floating-icons {
    position: fixed;
    bottom: 80px;
    right: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    z-index: 9999;
}
.floating-icons a {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #25D366;
    color: #fff;
    font-size: 26px;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
    transition: 0.3s;
}
.floating-icons a.call { background: #0d6efd; }
.floating-icons a:hover { transform: scale(1.1); }

/* Top Sticky CTA Bar */
.top-cta-bar {
    background: var(--title-color, #0b2a4a);
    color: #fff;
    padding: 10px 0;
    text-align: center;
    font-size: 15px;
}
.top-cta-bar a.th-btn {
    padding: 8px 22px;
    margin-left: 12px;
}

/* Google Review Badge */
.review-badge-wrap {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border-radius: 14px;
    padding: 16px 22px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
    flex-wrap: wrap;
}
.review-badge-wrap .rating-num {
    font-size: 34px;
    font-weight: 800;
    color: #0b2a4a;
    line-height: 1;
}
.review-badge-wrap .stars i { color: #FFB800; }
.review-badge-wrap .review-count { font-size: 14px; color: #666; }

/* Before / After Gallery */
.before-after-card {
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
    margin-bottom: 24px;
}
.before-after-card .ba-images {
    display: flex;
}
.before-after-card .ba-images .ba-col {
    position: relative;
    width: 100%;
}
.before-after-card .ba-images img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
}
.before-after-card .ba-label {
    position: absolute;
    top: 10px;
    left: 10px;
    background: rgba(0,0,0,0.65);
    color: #fff;
    font-size: 12px;
    padding: 3px 10px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.before-after-card .ba-title {
    padding: 14px 18px;
    font-weight: 600;
    margin: 0;
}

/* Pricing Table */
.price-table-wrap {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.06);
    padding: 10px;
    overflow-x: auto;
}
.price-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 480px;
}
.price-table th {
    background: var(--title-color, #0b2a4a);
    color: #fff;
    padding: 12px 16px;
    text-align: left;
    font-size: 15px;
}
.price-table td {
    padding: 12px 16px;
    border-bottom: 1px solid #eee;
    font-size: 15px;
}
.price-table tr:last-child td { border-bottom: none; }
.price-table tr:nth-child(even) { background: #f8f9fc; }
.price-table .price-cell { font-weight: 600; color: #0b2a4a; }

.price-note {
    font-size: 13px;
    color: #888;
    margin-top: 12px;
}

/* Service Area Chips */
.area-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.area-chips .chip {
    background: #fff;
    border: 1px solid #e2e2e2;
    padding: 8px 18px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.area-chips .chip i { color: var(--theme-color, #2d8dff); }

/* Starting Price Badge on service card */
.starting-price-badge {
    display: inline-block;
    background: #fff3e0;
    color: #b45309;
    font-weight: 700;
    font-size: 13px;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 8px;
}

/* Blog content typography */
.blog-content-body h2 { font-size: 24px; margin-top: 30px; margin-bottom: 14px; }
.blog-content-body h3 { font-size: 20px; margin-top: 24px; margin-bottom: 10px; }
.blog-content-body p { margin-bottom: 16px; line-height: 1.8; }
.blog-content-body ul { margin-bottom: 16px; padding-left: 20px; }
.blog-content-body ul li { margin-bottom: 6px; }

/* Policy pages */
.policy-content ul { padding-left: 20px; }
.policy-content ul li { margin-bottom: 10px; line-height: 1.7; }
.policy-content h3 { margin-top: 24px; margin-bottom: 10px; }
.policy-content p { line-height: 1.8; margin-bottom: 14px; }

/* Map embed */
.map-embed-wrap { border-radius: 14px; overflow: hidden; box-shadow: 0 6px 20px rgba(0,0,0,0.08); }
.map-embed-wrap iframe { width: 100%; height: 400px; border: 0; display: block; }

/* Admin quick badge */
.admin-status-badge { padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600; }
.admin-status-badge.active { background: #d1fae5; color: #065f46; }
.admin-status-badge.inactive { background: #fee2e2; color: #991b1b; }

@media (max-width: 576px) {
    .before-after-card .ba-images img { height: 150px; }
    .floating-icons { bottom: 70px; right: 14px; }
    .floating-icons a { width: 48px; height: 48px; font-size: 22px; }
}
