/* Typo & Globals */
.faz-hero-desc { font-size:17px; color:#555; text-align:center; line-height:1.7; max-width:560px; margin:0 auto; }
@media(max-width:767px) { .faz-hero-desc { font-size:15px; } }

/* Categories */
.faz-cat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
@media(max-width:991px) { .faz-cat-grid { grid-template-columns: repeat(3, 1fr); } }
@media(max-width:767px) { .faz-cat-grid { grid-template-columns: repeat(2, 1fr); } }
.faz-cat-item { background: #fff; padding: 20px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 8px;}
.faz-cat-icon { font-size: 24px; }
.faz-cat-item strong { font-size: 15px; color: #1a1a2e; }
.faz-cat-item small { font-size: 13px; color: #888; }

/* Cards */
.faz-cards-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
@media(max-width:991px) { .faz-cards-grid { grid-template-columns: repeat(2, 1fr); } }
@media(max-width:767px) { .faz-cards-grid { grid-template-columns: 1fr; } }
.faz-card { background: #fff; padding: 24px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); position: relative; }
.faz-card-badges { display: flex; justify-content: space-between; margin-bottom: 16px; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.faz-badge-cat { background: #1a1a2e; color: #fff; padding: 4px 8px; border-radius: 4px; }
.faz-badge-open { background: #28a745; color: #fff; padding: 4px 8px; border-radius: 4px; }
.faz-badge-closed { background: #dc3545; color: #fff; padding: 4px 8px; border-radius: 4px; }
.faz-card-icon { font-size: 32px; margin-bottom: 12px; text-align: center; }
.faz-card-name { font-size: 18px; font-weight: 700; margin: 0 0 8px; color: #1a1a2e; text-align: center; }
.faz-card-rating { font-size: 13px; color: #666; margin-bottom: 12px; text-align: center; }
.faz-card-rating span { font-weight: 700; color: #1a1a2e; }
.faz-card-address { font-size: 13px; color: #555; margin-bottom: 16px; line-height: 1.5; text-align: center; }
.faz-card-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; justify-content: center; }
.faz-card-tags span { background: #f0f0f5; color: #555; font-size: 12px; padding: 4px 10px; border-radius: 20px; }
.faz-card-phone { display: block; color: #1a1a2e; font-weight: 700; text-decoration: none; font-size: 15px; text-align: center; }

/* Steps */
.faz-steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media(max-width:767px) { .faz-steps-grid { grid-template-columns: 1fr; } }
.faz-step { background: #f9f9f9; border-radius: 10px; padding: 24px; }
.faz-step-num { display: block; font-size: 36px; font-weight: 800; color: #e8a020; margin-bottom: 10px; }
.faz-step-title { font-size: 18px; font-weight: 700; color: #1a1a2e; margin: 0 0 8px; }
.faz-step-text { font-size: 14px; color: #666; line-height: 1.6; margin: 0; }

/* CTA */
.faz-cta-wrap { display: flex; gap: 40px; align-items: center; }
@media(max-width:991px) { .faz-cta-wrap { flex-direction: column; text-align: center; } }
.faz-cta-text { flex: 1; }
.faz-section-label { display: block; font-size: 11px; letter-spacing: 2px; font-weight: 700; text-transform: uppercase; margin-bottom: 12px; }
.faz-cta-heading { font-size: 30px; font-weight: 800; color: #fff; line-height: 1.3; margin: 0 0 16px; }
.faz-cta-sub { font-size: 15px; color: #ccc; line-height: 1.7; margin: 0 0 24px; }
.faz-cta-btns { display: flex; gap: 12px; }
@media(max-width:991px) { .faz-cta-btns { justify-content: center; } }
@media(max-width:480px) { .faz-cta-btns { flex-direction: column; } }
.faz-btn-primary { background: #e8a020; color: #fff; padding: 12px 24px; border-radius: 6px; text-decoration: none; font-weight: 700; font-size: 15px; display: inline-block; text-align: center; }
.faz-btn-outline { border: 1px solid #fff; color: #fff; padding: 12px 24px; border-radius: 6px; text-decoration: none; font-weight: 600; font-size: 15px; display: inline-block; text-align: center; }

.faz-stats-grid { flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; width: 100%; }
.faz-stat { background: rgba(255,255,255,0.08); border-radius: 10px; padding: 20px; text-align: center; }
.faz-stat-val { display: block; font-size: 32px; font-weight: 800; color: #fff; }
.faz-stat-label { font-size: 13px; color: #bbb; }

/* Footer */
.faz-footer-wrap { display: flex; gap: 40px; justify-content: space-between; flex-wrap: wrap; margin-bottom: 40px; }
@media(max-width:767px) { .faz-footer-wrap { flex-direction: column; gap: 30px; } }
.faz-footer-brand { flex: 2; min-width: 250px; }
.faz-footer-logo { font-size: 24px; color: #fff; margin-bottom: 12px; display: block; font-weight: bold; }
.faz-footer-brand p { color: #888; font-size: 14px; line-height: 1.6; margin: 0;}
.faz-footer-col { flex: 1; min-width: 150px; display: flex; flex-direction: column; gap: 10px; }
.faz-footer-col strong { color: #fff; font-size: 13px; font-weight: 700; letter-spacing: 1px; margin-bottom: 10px; text-transform: uppercase; }
.faz-footer-col a { color: #888; text-decoration: none; font-size: 14px; transition: color 0.3s; }
.faz-footer-col a:hover { color: #e8a020; }
.faz-footer-copy { border-top: 1px solid rgba(255,255,255,0.1); padding-top: 24px; color: #666; font-size: 13px; text-align: center; margin: 0; }
