.header{width:100%;padding:14px 20px}
.header-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;max-width:1200px;margin:0 auto}
.header-left{display:flex;align-items:center;justify-content:flex-end;gap:4px}
.header-center{display:flex;align-items:center;justify-content:center}
.header-right{display:flex;align-items:center;justify-content:flex-start;gap:4px}
.header-logo{text-decoration:none;flex-shrink:0;display:flex;align-items:center;gap:8px}
.header-logo svg{width:28px;height:28px;flex-shrink:0}
.header-logo h1{font-family:'Bebas Neue',Impact,sans-serif;font-size:2.6rem;font-weight:400;letter-spacing:1px;color:#111;margin:0;white-space:nowrap;text-transform:uppercase}
.header-logo h1 span{color:#22955b}
.header-search{width:600px;margin:0;position:relative}
.header-search .search-input{width:100%;font-size:1.05rem;padding:20px;border:none;border-radius:0;outline:none;font-family:inherit;font-weight:500;background:#f3f3f3;transition:background 120ms;box-sizing:border-box;-webkit-appearance:none;appearance:none}
.header-search .search-input:focus{background:#eaeaea}
.header-search .search-input::placeholder{color:#999;font-weight:400}
.search-suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e0e0e0;border-top:none;display:none;z-index:200;max-height:360px;overflow-y:auto;box-shadow:0 4px 12px rgba(0,0,0,.1)}
.search-suggestions.visible{display:block}
.search-suggestion{padding:12px 20px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background 80ms}
.search-suggestion:hover,.search-suggestion.active{background:#f0f7f3}
.search-suggestion-name{font-size:1rem;font-weight:600;color:#111}
.search-suggestion-state{font-size:.875rem;color:#999;font-weight:500}
.map-btn{width:48px;height:48px;border-radius:100px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:none;box-sizing:border-box}
.map-btn:hover{background:rgba(0,0,0,.06)}
.map-btn:focus-visible{outline:2px solid #22955b;outline-offset:2px}
.map-btn svg{width:18px;height:18px;fill:none;stroke:#888;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.map-btn:hover svg{stroke:#555}
.location-toggle{position:relative;flex-shrink:0}
.location-btn{height:48px;padding:0 14px;border:none;background:transparent;cursor:pointer;font-size:15px;font-weight:700;color:#555;white-space:nowrap;display:flex;align-items:center;gap:6px;transition:none;border-radius:100px;font-family:inherit;letter-spacing:1.5px}
.location-btn:hover{background:rgba(0,0,0,.04)}
.location-btn:focus-visible{outline:2px solid #22955b;outline-offset:2px}
.location-btn::after{content:'';display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #555;margin-left:2px}
.location-panel{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border-radius:0;box-shadow:0 2px 4px rgba(0,0,0,.15);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity 120ms,transform 120ms,visibility 120ms;z-index:100;min-width:160px}
.location-panel.visible{opacity:1;visibility:visible;transform:translateY(0)}
.location-input{width:100%;height:48px;border:none;background:transparent;font-size:15px;font-weight:600;color:#555;text-align:center;outline:none;font-family:inherit;letter-spacing:1.5px;padding:0 16px;border-radius:0;box-sizing:border-box}
.location-input::placeholder{color:#999;font-weight:400;letter-spacing:0}
.location-input:focus{background:rgba(0,0,0,.02)}
.radius-toggle{position:relative;flex-shrink:0}
.radius-btn{height:48px;padding:0 14px;border:none;background:transparent;cursor:pointer;font-size:15px;font-weight:700;color:#22955b;white-space:nowrap;display:flex;align-items:center;gap:6px;transition:none;border-radius:100px;font-family:inherit}
.radius-btn:hover{background:rgba(0,0,0,.04)}
.radius-btn:focus-visible{outline:2px solid #22955b;outline-offset:2px}
.radius-btn::after{content:'';display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #22955b;margin-left:2px}
.radius-panel{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border-radius:0;box-shadow:0 2px 4px rgba(0,0,0,.15);overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity 120ms,transform 120ms,visibility 120ms;z-index:100;min-width:100px}
.radius-panel.visible{opacity:1;visibility:visible;transform:translateY(0)}
.radius-option{padding:10px 16px 10px 34px;font-size:15px;font-weight:600;color:#444;cursor:pointer;transition:background 80ms;white-space:nowrap;position:relative;font-family:inherit}
.radius-option:hover{background:#f0f7f3}
.radius-option.selected{background:#edf7f1;color:#1a7a47}
.radius-option.selected::before{content:'\2713';position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:15px;color:#22955b;font-weight:700}
