.lfr-wrap{max-width:1180px;margin:0 auto;padding:24px 16px;color:#1f2937}
.lfr-wrap *{box-sizing:border-box}
.lfr-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;margin-bottom:16px;color:#6b7280}
.lfr-breadcrumbs a{color:#b91c1c;text-decoration:none}
.lfr-breadcrumbs a:hover{text-decoration:underline}
.lfr-sep{opacity:.5}
.lfr-header-card,.lfr-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:24px;box-shadow:0 8px 30px rgba(15,23,42,.05);margin-bottom:24px}
.lfr-header-card h1{margin:0 0 12px;font-size:clamp(28px,4vw,46px);line-height:1.08;color:#0f172a}
.lfr-header-card p{margin:0;color:#4b5563;font-size:18px;max-width:850px}
.lfr-eyebrow{display:inline-block;padding:6px 10px;border-radius:999px;background:#fee2e2;color:#b91c1c;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px}
.lfr-stat-grid,.lfr-chip-grid,.lfr-podium,.lfr-details-grid,.lfr-split-cta,.lfr-city-grid,.lfr-category-sections{display:grid;gap:16px}
.lfr-stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:20px}
.lfr-stat-card{padding:18px;border-radius:16px;background:#f9fafb;border:1px solid #e5e7eb}
.lfr-stat-card strong{display:block;font-size:28px;line-height:1.1}
.lfr-stat-card span{display:block;color:#6b7280;margin-top:6px}
.lfr-split-cta{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:24px 0}
.lfr-card-accent{background:linear-gradient(135deg,#fff1f2,#ffffff);border-color:#fecdd3}
.lfr-section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.lfr-section-head h2,.lfr-card h2{margin:0 0 4px;font-size:clamp(24px,3vw,32px);line-height:1.15;color:#0f172a}
.lfr-section-head p{margin:0;color:#6b7280}
.lfr-category-sections{gap:24px}
.lfr-category-group h3{margin:0 0 14px;font-size:20px;color:#111827}
.lfr-chip-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.lfr-chip{display:flex;flex-direction:column;gap:6px;min-height:96px;padding:16px;border:1px solid #d1d5db;border-radius:14px;background:#fff;text-decoration:none;color:#111827;transition:.2s transform,.2s box-shadow,.2s border-color}
.lfr-chip:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(15,23,42,.08);border-color:#f43f5e}
.lfr-chip-name{font-weight:700}
.lfr-chip-count{color:#b91c1c;font-weight:600}
.lfr-chip small{color:#6b7280}
.lfr-city-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.lfr-city-card{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:16px;border:1px solid #e5e7eb;background:#f9fafb;text-decoration:none;color:#111827;transition:.2s transform,.2s box-shadow,.2s border-color}
.lfr-city-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(15,23,42,.08);border-color:#f43f5e}
.lfr-city-name{font-size:20px;font-weight:700}
.lfr-city-count{color:#6b7280}
.lfr-podium{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:24px 0}
.lfr-podium-card{position:relative}
.lfr-podium-card h2{margin:0 0 8px;font-size:24px}
.lfr-podium-card h2 a{color:#0f172a;text-decoration:none}
.lfr-badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#111827;color:#fff;font-size:12px;font-weight:700;margin-bottom:10px}
.lfr-stars{color:#f59e0b;letter-spacing:2px;font-size:18px}
.lfr-ranking-table{display:grid;gap:12px}
.lfr-ranking-head,.lfr-ranking-row{display:grid;grid-template-columns:70px minmax(0,1.8fr) 110px 110px 180px;gap:16px;align-items:center}
.lfr-ranking-head{padding:0 12px 8px;border-bottom:1px solid #e5e7eb;font-size:13px;font-weight:700;color:#6b7280;text-transform:uppercase}
.lfr-ranking-row{padding:18px 12px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}
.lfr-pos{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:#111827;color:#fff;font-weight:700}
.lfr-main h3{margin:0 0 6px;font-size:20px}
.lfr-main h3 a{color:#111827;text-decoration:none}
.lfr-address{margin:0 0 8px;color:#6b7280}
.lfr-inline-rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.lfr-score{color:#6b7280}
.lfr-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border-radius:12px;background:#c8102e;color:#fff;text-decoration:none;font-weight:700;border:1px solid #c8102e;margin:4px 6px 4px 0}
.lfr-btn:hover{background:#a50d26;border-color:#a50d26}
.lfr-btn-secondary{background:#fff;color:#b91c1c;border-color:#fecaca}
.lfr-meta-list{margin:0;padding-left:18px}
.lfr-meta-list li{margin:0 0 10px}
.lfr-meta-list a{word-break:break-word}
.lfr-details-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:24px}
.lfr-details-grid-single{align-items:start}
.lfr-actions{display:flex;flex-wrap:wrap;margin-top:18px}
.lfr-faq details{border-top:1px solid #e5e7eb;padding:14px 0}
.lfr-faq summary{cursor:pointer;font-weight:700}
.lfr-attribution{margin-top:18px;color:#6b7280;font-size:13px}
.lfr-prose p{margin:0 0 14px}
.lfr-map-wrap{border-radius:18px;overflow:hidden;border:1px solid #e5e7eb;background:#f8fafc}
.lfr-map-wrap iframe{display:block;width:100%;min-height:380px;border:0}
@media (max-width:900px){
  .lfr-ranking-head{display:none}
  .lfr-ranking-row{grid-template-columns:56px 1fr}
  .lfr-ranking-row>div:nth-child(3),.lfr-ranking-row>div:nth-child(4),.lfr-ranking-row>div:nth-child(5){grid-column:2}
}

.lfr-mini-chip-grid{display:flex;flex-wrap:wrap;gap:10px}
.lfr-mini-chip{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;border:1px solid #fecaca;background:#fff7f7;color:#991b1b;text-decoration:none;font-weight:700;transition:.2s transform,.2s box-shadow}
.lfr-mini-chip span{font-weight:600;color:#6b7280}
.lfr-mini-chip:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.08)}
.lfr-mini-chip.is-active{background:#c8102e;color:#fff;border-color:#c8102e}
.lfr-mini-chip.is-active span{color:#ffe4e6}

html .lfr-standalone-body{margin:0;background:#f3f4f6;color:#111827}
.lfr-shell-header{position:sticky;top:0;z-index:20;background:#ffffff;border-bottom:1px solid #e5e7eb;box-shadow:0 4px 20px rgba(15,23,42,.04)}
.lfr-shell-inner{max-width:1180px;margin:0 auto;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.lfr-shell-brand{font-size:20px;font-weight:800;color:#111827;text-decoration:none}
.lfr-shell-nav{display:flex;gap:14px;flex-wrap:wrap}
.lfr-shell-nav a{color:#b91c1c;text-decoration:none;font-weight:700}
.lfr-shell-main{padding:24px 0 48px}
@media (max-width:640px){
  .lfr-shell-inner{padding:14px 16px}
  .lfr-shell-brand{font-size:18px}
}
.lfr-promo-card-wrap{padding-top:8px}
.lfr-promo-card{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;align-items:center;border:1px solid #d1d5db;padding:24px;border-radius:16px;background:#fff}
.lfr-promo-logo{display:flex;align-items:center;justify-content:center;min-height:120px}
.lfr-promo-logo img{max-width:160px;max-height:90px;object-fit:contain}
.lfr-promo-logo-placeholder{width:88px;height:88px;border-radius:20px;display:grid;place-items:center;background:#f3f4f6;color:#111827;font-weight:800;font-size:38px}
.lfr-promo-main h3{margin:6px 0 14px;font-size:clamp(26px,3vw,42px);line-height:1.08;color:#0f172a}
.lfr-promo-note-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.lfr-promo-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#ecfeff;color:#0f766e;font-weight:700;font-size:13px}
.lfr-promo-note{color:#6b7280;font-size:14px}
.lfr-promo-line{margin:0 0 12px;font-size:18px;color:#111827}
.lfr-promo-meta{display:flex;flex-wrap:wrap;gap:16px;align-items:center;font-size:16px}
.lfr-promo-meta a{color:#0f766e;text-decoration:none}
@media (max-width:720px){.lfr-promo-card{grid-template-columns:1fr}.lfr-promo-logo{justify-content:flex-start}.lfr-promo-main h3{font-size:32px}}


.lfr-business-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;background:linear-gradient(135deg,#fff7ed 0%,#ffffff 55%,#fff1f2 100%);border-color:#fed7aa}
.lfr-business-cta__badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#111827;color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;margin-bottom:12px}
.lfr-business-cta h2{margin:0 0 10px}
.lfr-business-cta p{margin:0;color:#4b5563;font-size:17px;max-width:760px}
.lfr-business-cta__actions{display:flex;align-items:center;justify-content:flex-end}
@media (max-width:720px){.lfr-business-cta{grid-template-columns:1fr}.lfr-business-cta__actions{justify-content:flex-start}}
