.contractor-search-container{padding:0 1.5rem 2rem}.contractor-search-form{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1200px;width:100%}.contractor-search-title{color:#1a1d23;display:block;font-size:2rem;font-weight:700;margin-bottom:.375rem;text-align:center;width:100%}.contractor-search-subtitle{color:#71717a;font-size:.9375rem;margin-bottom:1.5rem;text-align:center}.contractor-search-form-wrapper{background:#fff;border:1px solid #e8e8ec;border-radius:14px;display:flex;flex-direction:column;gap:.625rem;margin-bottom:1.5rem;padding:1.25rem}.contractor-search-row{align-items:flex-start;display:flex;gap:.5rem}.contractor-search-row-main>input:first-child{flex:2 1}.contractor-search-row-main>.input-container{flex:1 1}.contractor-search-row-main>.contractor-search-radius-input{flex:0 0 7rem}@media (max-width:768px){.contractor-search-row-main>.contractor-search-radius-input{flex:none;width:100%}}.contractor-search-row-filters>*{flex:1 1;min-width:0}.contractor-search-row-filters>.contractor-search-favorite-toggle{flex:0 0 auto}.contractor-search-row-actions{display:flex;gap:.5rem;padding-top:.25rem}.contractor-search-row-actions .contractor-search-button,.contractor-search-row-actions .contractor-search-toggle-map{flex:0 0 auto}.contractor-search-input{background-color:#fff;border:1px solid #d4d4d8;border-radius:12px;color:#1a1d23;font-size:.875rem;padding:.625rem .75rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.contractor-search-input:focus{border-color:#e8940a;box-shadow:0 0 0 2px #f59e0b26;outline:none}.contractor-search-radius-input{align-items:center;display:flex;position:relative}.contractor-search-radius-input .contractor-search-input{padding-right:3.5rem}.contractor-search-radius-unit{color:#71717a;font-size:.875rem;pointer-events:none;position:absolute;right:1rem}.contractor-search-button,.contractor-search-toggle-map{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:.625rem 1.5rem;transition:background-color .15s ease}.contractor-search-button{background-color:#e8940a;color:#fff}.contractor-search-button:hover{background-color:#d17d00}.contractor-search-toggle-map{background-color:#fff;border:1px solid #d4d4d8;color:#3f3f46}.contractor-search-toggle-map:hover{background-color:#f0f0f4;border-color:#a1a1aa}.contractor-search-toggle-map:disabled{background-color:#f0f0f4;border-color:#e8e8ec;color:#a1a1aa;cursor:not-allowed}.contractor-search-map{border:1px solid #e8e8ec;border-radius:14px;box-shadow:0 1px 3px #0000000f;margin-bottom:1.5rem;overflow:hidden}.custom-marker{align-items:center;cursor:pointer;display:flex;flex-direction:column;position:relative}.custom-marker-logo-container{align-items:center;background:#fff;border:3px solid #e8940a;border-radius:50%;box-shadow:0 4px 8px #0003;display:flex;height:48px;justify-content:center;overflow:hidden;width:48px}.custom-marker-logo{height:100%;object-fit:contain;width:100%}.custom-marker-name{background:#fff;border:1px solid #e8e8ec;border-radius:12px;box-shadow:0 2px 6px #0000001a;color:#2f2f2f;font-size:14px;font-weight:600;margin-top:6px;max-width:180px;overflow:hidden;padding:6px 10px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.custom-marker-pin{border-left:10px solid #0000;border-right:10px solid #0000;border-top:10px solid #e8940a;filter:drop-shadow(0 2px 2px rgba(0,0,0,.3));height:0;margin-top:2px;width:0}.custom-marker:hover .custom-marker-logo-container{border-color:#fbbf24;transform:scale(1.15);transition:transform .3s ease,border-color .3s ease}.custom-marker:hover .custom-marker-name{background:#e8940a;color:#fff;transform:scale(1.05);transition:background-color .2s ease,color .2s ease,transform .2s ease}.custom-marker:hover .custom-marker-name .contractor-search-stars{color:#fff}.cluster-marker{align-items:center;cursor:pointer;display:flex;flex-direction:column;position:relative}.cluster-marker img{background:#fff;border:3px solid #e8940a;border-radius:50%;box-shadow:0 4px 8px #0003;height:48px;width:48px}.cluster-marker:hover img{border-color:#fbbf24;transform:scale(1.15);transition:transform .3s ease,border-color .3s ease}.contractor-search-grid{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));min-height:40vh;padding:.5rem 0}.shimmer-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.contractor-search-card{background-color:#fff;border:1px solid #e8e8ec;border-radius:14px;box-shadow:0 1px 3px #0000000f;cursor:pointer;overflow:hidden;position:relative;transition:box-shadow .2s ease,transform .2s ease;width:100%}.contractor-search-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.contractor-search-card.verified{border-color:#e8940a}.contractor-search-image-container{background-color:#f8f9fb;border-bottom:1px solid #f0f0f4;height:12rem;position:relative;width:100%}.contractor-search-logo{border-radius:14px 8px 0 0;height:100%;object-fit:contain;width:100%}.contractor-search-verified-badge{border-radius:50%;height:3rem;left:.3rem;position:absolute;top:.3rem;width:3rem}.contractor-search-name{color:#1a1d23;font-size:1rem;font-weight:600;height:1.5rem;margin:.75rem 0 .5rem;overflow:hidden;padding:0 .75rem;text-align:center;text-overflow:ellipsis;white-space:nowrap}.contractor-search-rating{align-items:center;display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem;padding:0 .75rem}.contractor-search-stars{color:#e8940a;display:flex;font-size:.875rem;gap:3px}.contractor-search-stars .star-empty{color:#d4d4d8}.contractor-search-review-count{color:#71717a;font-size:.75rem;font-weight:500}.contractor-search-favorite{align-items:center;background:#ffffffe6;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.25rem;height:2rem;justify-content:center;position:absolute;right:.5rem;top:.5rem;transition:transform .2s ease;width:2rem}.contractor-search-favorite:hover{transform:scale(1.15)}.contractor-search-pagination{align-items:center;border-bottom:1px solid #f0f0f4;display:flex;justify-content:space-between;margin-bottom:1rem;padding:.5rem 0}.contractor-search-summary{color:#71717a;font-size:.8125rem;margin:0;white-space:nowrap}.contractor-search-page-buttons,.contractor-search-pagination-controls{align-items:center;display:flex;gap:.25rem}.contractor-search-ellipsis{color:#a1a1aa;font-size:.875rem;padding:0 .25rem}.contractor-search-page-button{background:#fff;border:1px solid #e8e8ec;border-radius:12px;color:#3f3f46;cursor:pointer;font-size:.8125rem;font-weight:500;min-width:2.25rem;padding:.375rem .75rem;text-align:center;transition:background-color .15s ease,border-color .15s ease}.contractor-search-page-button.active,.contractor-search-page-button:hover{background-color:#e8940a;border-color:#e8940a;color:#fff}.contractor-search-page-button:disabled{background:#f0f0f4;border-color:#e8e8ec;color:#a1a1aa;cursor:not-allowed}.contractor-search-nav-button{align-items:center;background:#fff;border:1px solid #e8e8ec;border-radius:12px;color:#3f3f46;cursor:pointer;display:flex;font-size:.8125rem;font-weight:500;gap:.375rem;padding:.375rem .875rem;transition:background-color .15s ease,border-color .15s ease}.contractor-search-nav-button:hover{background-color:#e8940a;border-color:#e8940a;color:#fff}.contractor-search-nav-button:disabled{background:#f0f0f4;border-color:#e8e8ec;color:#a1a1aa;cursor:not-allowed}.contractor-search-initial-state,.contractor-search-no-results{background:#fff;border:1px solid #e8e8ec;border-radius:14px;margin:0 auto;max-width:32rem;padding:2.5rem 2rem;text-align:center;width:100%}.contractor-search-initial-state h2,.contractor-search-no-results h2{color:#1a1d23;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.contractor-search-initial-state p,.contractor-search-no-results p{color:#71717a;font-size:.875rem;line-height:1.5}.contractor-search-error{background:#fef2f2;border:1px solid #fecaca;border-radius:14px;color:#dc2626;font-size:.875rem;margin-bottom:1.5rem;padding:.75rem 1rem;text-align:center}.shimmer{background:#f6f7f8;overflow:hidden;position:relative}.contractor-search-card.shimmer{transition:none}.shimmer-bg{animation:contractorSearchPulse 1.5s ease-in-out infinite;background:#f0f2f5;border-radius:14px}.shimmer .contractor-search-image-container{height:12rem}.shimmer .contractor-search-name{border-radius:12px;height:1.5rem;margin:1rem auto;width:60%}.shimmer .contractor-search-favorite{border-radius:50%;height:1.5rem;right:.75rem;top:.75rem;width:1.5rem}.shimmer .contractor-search-verified-badge{border-radius:50%;height:2.5rem;left:.75rem;top:.75rem;width:2.5rem}@keyframes contractorSearchPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes home-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@media (max-width:768px){.contractor-search-container{padding:1rem}.contractor-search-title{font-size:1.5rem;margin-bottom:1rem}.contractor-search-form-wrapper{gap:.375rem;padding:.75rem}.contractor-search-row{flex-direction:column;gap:.375rem}.contractor-search-row>*{box-sizing:border-box;flex:none;width:100%}.contractor-search-row-actions{flex-direction:row}.contractor-search-row-actions .contractor-search-button,.contractor-search-row-actions .contractor-search-toggle-map{flex:1 1}.contractor-search-button,.contractor-search-toggle-map{font-size:.875rem;padding:.625rem 1rem}.contractor-search-map{height:300px}.contractor-search-grid{gap:1rem}.contractor-search-grid,.shimmer-grid{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.contractor-search-card{max-width:100%}.contractor-search-image-container{height:10rem}.contractor-search-name{font-size:.9375rem}.contractor-search-verified-badge{height:2.5rem;left:.25rem;top:.25rem;width:2.5rem}.contractor-search-favorite{font-size:1.125rem;height:1.75rem;width:1.75rem}.contractor-search-pagination{align-items:center;flex-direction:column;gap:.5rem}.contractor-search-summary{font-size:.75rem}.contractor-search-pagination-controls{flex-wrap:wrap;justify-content:center}.contractor-search-nav-button,.contractor-search-page-button{font-size:.8125rem;min-width:2.25rem;padding:.5rem .75rem}.contractor-search-initial-state,.contractor-search-no-results{padding:1.5rem}.custom-marker-logo-container{border-width:2px;height:36px;width:36px}.custom-marker-name{font-size:12px;max-width:140px;padding:4px 8px}.custom-marker-pin{border-left:8px solid #0000;border-right:8px solid #0000;border-top:8px solid #e8940a}.cluster-marker img{border-width:2px;height:36px;width:36px}}@media (max-width:480px){.contractor-search-title{font-size:1.25rem}.contractor-search-form-wrapper{padding:.75rem}.contractor-search-button,.contractor-search-toggle-map{font-size:.8125rem;padding:.5rem .75rem}.contractor-search-map{height:250px}.contractor-search-grid,.shimmer-grid{grid-template-columns:1fr}.contractor-search-image-container{height:10rem}.contractor-search-verified-badge{height:2rem;width:2rem}.contractor-search-favorite{font-size:1rem;height:1.5rem;width:1.5rem}.contractor-search-summary{font-size:.7rem}.contractor-search-nav-button,.contractor-search-page-button{font-size:.75rem;min-width:2rem;padding:.375rem .625rem}.contractor-search-initial-state,.contractor-search-no-results{padding:1.25rem}.contractor-search-initial-state h2,.contractor-search-no-results h2{font-size:1.125rem}.contractor-search-initial-state p,.contractor-search-no-results p{font-size:.8125rem}.custom-marker-logo-container{height:32px;width:32px}.custom-marker-name{font-size:10px;max-width:120px;padding:3px 6px}.custom-marker-pin{border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid #e8940a}.cluster-marker img{height:32px;width:32px}}.gm-style img[src*="data:image/png"],.gm-style img[src*="ppukwdevstorage.blob.core.windows.net"]{border:3px solid #e8940a!important;border-radius:50%!important;box-sizing:border-box}.cluster-marker img,.custom-marker img,.custom-marker-logo-container img{border:3px solid #e8940a!important;border-radius:50%!important}.contractor-search-favorite-toggle{align-items:center;background-color:#f9fafb;border:1px solid #e8e8ec;border-radius:12px;display:flex;gap:.75rem;justify-content:flex-start;padding:.75rem}.favorites-toggle-label{color:#3f3f46;cursor:pointer;font-size:.875rem;font-weight:500}.favorites-toggle-checkbox{-webkit-appearance:none;appearance:none;background-color:#d1d5db;border-radius:9999px;cursor:pointer;height:1.25rem;position:relative;transition:background-color .3s ease;width:2.5rem}.favorites-toggle-checkbox:before{background-color:#fff;border-radius:50%;box-shadow:0 1px 3px #0000001a;content:"";height:1rem;left:.125rem;position:absolute;top:.125rem;transition:transform .3s ease;width:1rem}.favorites-toggle-checkbox:checked{background-color:#e8940a}.favorites-toggle-checkbox:checked:before{transform:translateX(1.25rem)}.input-container{display:flex;flex-direction:column;position:relative}.contractor-search-input.input-error{border-color:#ef4444;box-shadow:0 0 0 1px #ef4444}.validation-message{color:#dc2626;font-size:.8rem;margin-top:2px;padding-left:.25rem}.contractor-search-availability,.portfolio-availability{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.availability-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.availability-available{background-color:#22c55e}.availability-busy{background-color:#e8940a}.availability-unavailable{background-color:#a1a1aa}.availability-label{color:#3f3f46;font-size:.8rem;font-weight:500}.contractor-response-time{color:#71717a;font-size:.75rem;margin-left:.25rem}.portfolio-availability{padding:.5rem 0}.portfolio-availability-label{color:#3f3f46;font-size:.85rem;font-weight:500}.cb-badges{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem}.cb-badges--compact{gap:.25rem}.cb-badge{align-items:center;border:1px solid;border-radius:999px;display:inline-flex;font-size:.7rem;font-weight:600;gap:.3rem;line-height:1;padding:.2rem .55rem;transition:transform .1s;white-space:nowrap}.cb-badge:hover{transform:scale(1.04)}.cb-badges--compact .cb-badge{font-size:.65rem;padding:.15rem .35rem}.cb-badge-icon{flex-shrink:0;font-size:.65rem}.cb-badges--compact .cb-badge-icon{font-size:.6rem}.cb-badge-label{letter-spacing:.01em}@media (max-width:768px){.cb-badge{font-size:.65rem;padding:.15rem .45rem}}
/*# sourceMappingURL=8414.81e59b18.chunk.css.map*/