
.fh-body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}
.fh-hero{background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;padding:60px 20px 50px;text-align:center}
.fh-hero h1{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:800;margin:0 0 4px;letter-spacing:-.5px}
.fh-hero p{color:#94a3b8;margin:0 0 24px;font-size:clamp(0.85rem,2vw,1rem)}
.fh-modes{display:flex;gap:8px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}
.fh-mode{padding:8px 20px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#94a3b8;font-size:.85rem;cursor:pointer;transition:all .2s}
.fh-mode.active{background:#f97316;border-color:#f97316;color:#fff}
.fh-mode:hover{border-color:rgba(255,255,255,.5)}
.fh-loc{display:flex;max-width:650px;margin:0 auto 16px;gap:8px;flex-wrap:wrap;justify-content:center}
.fh-loc-inp{flex:1;min-width:240px;position:relative}
.fh-loc-inp input{width:100%;padding:14px 16px 14px 44px;border-radius:12px;border:none;font-size:15px;outline:none;background:#fff;color:#111}
.fh-loc-inp .pin{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:18px}
.fh-loc-btn,.fh-loc-gps{padding:14px 24px;border-radius:12px;border:none;font-weight:600;cursor:pointer;font-size:15px;white-space:nowrap}
.fh-loc-btn{background:#f97316;color:#fff}
.fh-loc-btn:hover{background:#ea580c}
.fh-loc-gps{background:#3b82f6;color:#fff;display:flex;align-items:center;gap:6px}
.fh-loc-gps:hover{background:#2563eb}
.fh-loc-display{font-size:.85rem;color:#94a3b8;margin-top:8px}
.fh-search{max-width:500px;margin:0 auto;display:flex;gap:8px}
.fh-search input{flex:1;padding:14px 16px;border-radius:12px;border:none;font-size:15px;outline:none;background:#fff;color:#111}
.fh-search input::placeholder{color:#94a3b8}
.fh-search button{padding:14px 20px;border-radius:12px;border:none;background:#f97316;color:#fff;font-weight:600;cursor:pointer}
.fh-chips{display:flex;gap:8px;overflow-x:auto;padding:20px 0;-ms-overflow-style:none;scrollbar-width:none}
.fh-chips::-webkit-scrollbar{display:none}
.fh-chip{flex-shrink:0;padding:10px 20px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;font-size:.85rem;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}
.fh-chip.active,.fh-chip:hover{border-color:#f97316;color:#f97316;background:#fff7ed}
.fh-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.fh-section-header h2{font-size:1.25rem;font-weight:700;margin:0}
.fh-section-header a{font-size:.85rem;color:#f97316;text-decoration:none;font-weight:600}
.fh-vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.fh-vcard{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #f1f5f9;box-shadow:0 1px 3px rgba(0,0,0,.04);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:all .25s}
.fh-vcard:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,.08)}
.fh-vcard-img{height:160px;display:flex;align-items:center;justify-content:center;font-size:3rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);position:relative;overflow:hidden}
.fh-vcard-img img{width:100%;height:100%;object-fit:cover}
.fh-vcard-badge{position:absolute;top:12px;left:12px;padding:4px 12px;border-radius:8px;font-size:.7rem;font-weight:600;background:#f97316;color:#fff}
.fh-vcard-body{padding:16px;flex:1}
.fh-vcard-name{font-weight:700;font-size:1rem;color:#0f172a;margin-bottom:2px}
.fh-vcard-cuisine{font-size:.8rem;color:#64748b;margin-bottom:8px}
.fh-vcard-meta{display:flex;gap:10px;font-size:.78rem;color:#64748b;flex-wrap:wrap}
.fh-vcard-meta .star{color:#f59e0b}
