::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;-webkit-transition:background .2s ease;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:#94a3b8}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f3f4f6}.hospital-search{max-width:80rem;margin:0 auto;padding:3rem 1rem}@media(min-width:640px){.hospital-search{padding:3rem 1.5rem}}@media(min-width:1024px){.hospital-search{padding:3rem 2rem}}.hospital-search .hero-section{text-align:center;margin-bottom:4rem}.hospital-search .hero-section .hero-title{font-size:2.25rem;font-weight:700;color:#111827;letter-spacing:-.025em;margin-bottom:1rem}@media(min-width:768px){.hospital-search .hero-section .hero-title{font-size:3rem}}.hospital-search .hero-section .hero-subtitle{font-size:1.25rem;color:#4b5563;max-width:36rem;margin:0 auto}.hospital-search .search-container{max-width:32rem;margin:0 auto 3rem}.hospital-search .search-container .search-wrapper{position:relative}.hospital-search .search-container .search-wrapper .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af}.hospital-search .search-container .search-wrapper .search-input{width:100%;padding:1rem 2.5rem;font-size:1.125rem;border:none;border-bottom:2px solid #e5e7eb;background:transparent;color:#111827;transition:border-color .2s}.hospital-search .search-container .search-wrapper .search-input:focus{outline:none;border-bottom-color:#2563eb}.hospital-search .search-container .search-wrapper .search-input::-moz-placeholder{color:#9ca3af}.hospital-search .search-container .search-wrapper .search-input::placeholder{color:#9ca3af}.hospital-search .search-container .search-wrapper .clear-button{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#9ca3af;background:none;border:none;cursor:pointer;padding:.25rem}.hospital-search .search-container .search-wrapper .clear-button:hover{color:#6b7280}.hospital-search .search-container .filter-pills{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.5rem}.hospital-search .search-container .filter-pills .filter-pill{display:inline-flex;align-items:center;padding:.375rem .75rem;background:#eff6ff;color:#1e40af;border-radius:9999px;font-size:.875rem;font-weight:500}.hospital-search .search-container .filter-pills .filter-pill .pill-remove{margin-left:.5rem;color:currentColor;background:none;border:none;padding:.125rem;cursor:pointer}.hospital-search .search-container .filter-pills .filter-pill .pill-remove:hover{color:#2563eb}.hospital-search .province-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem}.hospital-search .province-filters .province-button{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:500;background:#f3f4f6;color:#4b5563;border:none;cursor:pointer;transition:all .2s}.hospital-search .province-filters .province-button:hover{background:#e5e7eb}.hospital-search .province-filters .province-button.active{background:#2563eb;color:#fff;box-shadow:0 4px 6px -1px rgba(37,99,235,.1),0 2px 4px -1px rgba(37,99,235,.06)}.hospital-search .results-container{background:#fff;border-radius:.75rem;border:1px solid #e5e7eb;box-shadow:0 1px 2px 0 rgba(0,0,0,.05);overflow:hidden;max-height:600px;overflow-y:auto}.hospital-search .results-container .results-header{display:grid;grid-template-columns:2fr 1fr 1fr;padding:1rem 1.5rem;background:#f9fafb;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}.hospital-search .results-container .results-header .header-cell{font-size:.875rem;font-weight:600;color:#4b5563}.hospital-search .results-container .results-body .result-row{display:grid;grid-template-columns:2fr 1fr 1fr;padding:1.25rem 1.5rem;cursor:pointer;transition:background-color .15s;border-bottom:1px solid #e5e7eb}.hospital-search .results-container .results-body .result-row:hover{background:#f9fafb}.hospital-search .results-container .results-body .result-row:hover .hospital-name{color:#2563eb}.hospital-search .results-container .results-body .result-row .hospital-cell{display:flex;align-items:center;gap:.75rem}.hospital-search .results-container .results-body .result-row .hospital-cell .hospital-icon{color:#2563eb;opacity:.75}.hospital-search .results-container .results-body .result-row .hospital-cell .hospital-name{color:#111827;transition:color .15s}.hospital-search .results-container .results-body .result-row .cell{color:#4b5563}.hospital-search .empty-state{text-align:center;padding:4rem 1rem;background:#fff;border-radius:.75rem;border:1px solid #e5e7eb}.hospital-search .empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.hospital-search .empty-state .empty-title{font-size:1.25rem;font-weight:600;color:#111827;margin-bottom:.5rem}.hospital-search .empty-state .empty-message{color:#4b5563;margin-bottom:1.5rem}.hospital-search .empty-state .reset-button{padding:.5rem 1.5rem;background:#f3f4f6;color:#4b5563;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.hospital-search .empty-state .reset-button:hover{background:#e5e7eb}.hospital-search .contact-section{text-align:center;max-width:32rem;margin:5rem auto 0}.hospital-search .contact-section .contact-message{font-size:1.125rem;color:#4b5563;margin-bottom:1.5rem}.hospital-search .contact-section .contact-button{display:inline-flex;align-items:center;padding:1rem 2rem;background:#2563eb;color:#fff;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s}.hospital-search .contact-section .contact-button .button-icon{margin-left:.5rem;transition:transform .2s}.hospital-search .contact-section .contact-button:hover{background:#1d4ed8}.hospital-search .contact-section .contact-button:hover .button-icon{transform:translateX(.25rem)}