.catalog-hero{padding:100px 0 60px;background:linear-gradient(180deg,var(--white) 0%,var(--cream) 100%)}.catalog-hero-text{text-align:center;max-width:640px;margin:0 auto}.catalog-hero-title{font-size:52px;margin-bottom:16px;color:var(--primary);line-height:1.1}.catalog-hero-title .accent-text{color:var(--accent)}.catalog-hero-subtitle{font-size:18px;color:var(--gray);line-height:1.7}.catalog-section{padding:0 0 140px;background:var(--cream)}.filter-bar{background:var(--white);border-radius:20px;padding:28px 32px;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.04);margin-bottom:32px}.filter-row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin-bottom:20px}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:160px;flex:1}.filter-group label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gray)}.filter-group select{padding:12px 40px 12px 16px;border-radius:12px;border:1.5px solid rgba(0,0,0,.08);font-size:14px;font-family:inherit;background:var(--white);color:var(--primary);cursor:pointer;transition:all .2s;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.filter-group select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #c9a96e1f}.filter-group select:disabled{opacity:.5;cursor:not-allowed}.clear-btn{padding:12px 20px;border-radius:12px;background:var(--light);color:var(--gray);font-size:14px;font-weight:600;border:none;cursor:pointer;transition:all .2s;white-space:nowrap}.clear-btn:hover{background:#0000000f;color:var(--primary)}.filter-pills{display:flex;flex-wrap:wrap;gap:10px}.filter-pill{padding:10px 20px;border-radius:100px;font-size:14px;font-weight:600;border:1.5px solid rgba(0,0,0,.08);background:var(--white);color:var(--primary);cursor:pointer;transition:all .2s}.filter-pill:hover{border-color:var(--accent);color:var(--accent)}.filter-pill.active{background:var(--accent);color:var(--white);border-color:var(--accent);box-shadow:0 4px 12px #c9a96e4d}.results-count{font-size:14px;font-weight:600;color:var(--gray);margin-bottom:24px;text-transform:uppercase;letter-spacing:.5px}.catalog-grid{display:grid;grid-template-columns:1fr;gap:28px}.dentist-card{display:grid;grid-template-columns:1fr;background:var(--white);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.04);transition:box-shadow .4s ease}.dentist-card:hover{box-shadow:var(--shadow-xl)}.card-image{position:relative;overflow:hidden;min-height:280px}.card-image img{width:100%;height:100%;object-fit:cover;min-height:280px;transition:transform .8s cubic-bezier(.25,.1,.25,1)}.dentist-card:hover .card-image img{transform:scale(1.05)}.card-location{position:absolute;bottom:16px;left:16px;background:#ffffffeb;backdrop-filter:blur(10px);padding:8px 16px;border-radius:100px;font-size:13px;font-weight:600;color:var(--primary);box-shadow:var(--shadow)}.card-content{padding:32px 36px;display:flex;flex-direction:column}.card-name{font-family:Playfair Display,serif;font-size:28px;margin-bottom:20px;color:var(--primary)}.card-features{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.feature-row{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:500}.feature-row.check{color:#15803d}.feature-row.demand{color:#dc2626}.feature-icon{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.feature-icon.check{background:#dcfce7;color:#15803d}.feature-icon.demand{background:#fee2e2;color:#dc2626}.card-rating{display:flex;align-items:center;gap:10px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid rgba(0,0,0,.06)}.rating-score{font-family:Playfair Display,serif;font-size:32px;font-weight:700;color:var(--accent);line-height:1}.rating-stars{color:var(--accent);font-size:16px;letter-spacing:1px}.rating-reviews{font-size:14px;color:var(--gray)}.card-prices{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}.price-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.price-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gray)}.price-value{font-family:Playfair Display,serif;font-size:24px;font-weight:700;color:var(--primary);white-space:nowrap}.card-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:8px}.card-specialties{display:flex;flex-wrap:wrap;gap:8px}.specialty-tag{padding:6px 14px;border-radius:100px;font-size:12px;font-weight:600;background:var(--light);color:var(--gray);text-transform:uppercase;letter-spacing:.5px}.see-clinic-btn{white-space:nowrap}.no-results{text-align:center;padding:80px 20px;background:var(--white);border-radius:24px;box-shadow:var(--shadow)}.no-results-icon{font-size:48px;margin-bottom:16px}.no-results h3{font-family:Playfair Display,serif;font-size:24px;margin-bottom:8px;color:var(--primary)}.no-results p{color:var(--gray);margin-bottom:24px}@media(min-width:768px){.catalog-hero{padding:140px 0 80px}.catalog-hero-title{font-size:64px}.catalog-grid{gap:32px}.dentist-card{grid-template-columns:320px 1fr}.card-image,.card-image img{min-height:100%}}@media(min-width:1024px){.catalog-hero-title{font-size:72px}.dentist-card{grid-template-columns:380px 1fr}}
