:root{--border-color:rgba(20,20,20,0.12);--chip-bg:#f3f3f3;--chip-bg-active:#141414;--chip-color-active:#ffffff;--pill-bg:#f5f5f5;--pill-bg-active:#ffffff;--pill-border:rgba(20,20,20,0.18);--pill-border-active:#141414;--text-muted:rgba(20,20,20,0.6)}.search-page{font-family:Helvetica Neue,Helvetica,Arial,sans-serif}.search-page .search-hero{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}.search-page .search-input-wrapper{position:relative;display:flex;align-items:center}.search-page .search-input{width:100%;border:none;border-bottom:2px dotted var(--border-color);font-size:clamp(36px,6vw,64px);font-weight:700;padding:12px 48px 12px 0;outline:none;background:transparent}.search-page .search-input::placeholder{color:rgba(20,20,20,.3)}.search-page .search-clear{position:absolute;right:8px;width:32px;height:32px;border-radius:50%;border:1px solid var(--border-color);background:rgba(255,255,255,.9);cursor:pointer;display:none}.search-page .search-clear:after,.search-page .search-clear:before{content:"";position:absolute;top:50%;left:50%;width:16px;height:2px;background:#555;transform-origin:center}.search-page .search-clear:before{transform:translate(-50%,-50%) rotate(45deg)}.search-page .search-clear:after{transform:translate(-50%,-50%) rotate(-45deg)}.search-page .search-clear.visible{display:block}.search-page .result-count{color:var(--text-muted);font-size:16px}.search-page .controls{display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between;border-bottom:1px solid var(--border-color);padding-bottom:16px;margin-bottom:16px}.search-page .group-label{font-size:14px;font-weight:600;margin-right:12px;text-transform:uppercase;letter-spacing:.08em}.search-page .filter-group,.search-page .sort-group{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.search-page .chip-group{display:flex;flex-wrap:wrap;gap:10px;max-width:720px}.search-page .chip{border:none;padding:8px 16px;border-radius:9999px;background:var(--chip-bg);color:#141414;font-size:14px;cursor:pointer;transition:background .2s ease,color .2s ease}.search-page .chip-dynamic{display:contents}.search-page .chip:focus,.search-page .chip:hover{background:rgba(20,20,20,.18)}.search-page .chip-active{color:var(--chip-color-active)}.search-page .chip-active,.search-page .chip-active:focus,.search-page .chip-active:hover{background:var(--chip-bg-active)}.search-page .chip-more{background:transparent;border:1px dashed var(--pill-border)}.search-page .chip-more:focus,.search-page .chip-more:hover{background:rgba(20,20,20,.08)}.search-page .pill-group{display:flex;gap:12px;flex-wrap:wrap}.search-page .pill{min-width:104px;padding:8px 16px;border-radius:9999px;border:1px solid var(--pill-border);background:var(--pill-bg);font-size:14px;cursor:pointer;transition:border-color .2s ease,background .2s ease}.search-page .pill:focus,.search-page .pill:hover{border-color:#141414}.search-page .pill-active{background:var(--pill-bg-active);border-color:var(--pill-border-active)}.search-page .active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.search-page .active-filter-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-color);border-radius:9999px;font-size:13px;color:#333;background:#fff}.search-page .active-filter-tag button{border:none;backdrop-filter:blur(0);background:transparent;cursor:pointer;padding:0;font-size:16px;line-height:1}.search-page .results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px}.search-page .result-card{display:flex;flex-direction:column;gap:12px}.search-page .result-card__image-wrapper{position:relative;width:100%;padding-top:66%;background:#f5f5f5;border-radius:8px;overflow:hidden}.search-page .result-card__media-link{display:block;height:100%}.search-page .result-card__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.search-page .result-card__meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-muted)}.search-page .result-card__location a{color:inherit;text-decoration:none}.search-page .result-card__location a:focus,.search-page .result-card__location a:hover{text-decoration:underline}.search-page .result-card__authors a{color:inherit;text-decoration:none}.search-page .result-card__authors a:focus,.search-page .result-card__authors a:hover{text-decoration:underline}.search-page .result-card__title{font-size:18px;font-weight:600;color:#141414;text-decoration:none}.search-page .result-card__title:focus,.search-page .result-card__title:hover{text-decoration:underline}.search-page .result-card__excerpt{font-size:14px;color:#444!important;line-height:1.5}.search-page .empty,.search-page .loading{text-align:center;font-size:15px;color:var(--text-muted);margin:24px 0}.search-page .sentinel{height:1px}.search-page .modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:50;padding:24px}.search-page .modal-panel{background:#fff;border-radius:12px;width:min(640px,90vw);max-height:80vh;display:flex;flex-direction:column;box-shadow:0 12px 40px rgba(0,0,0,.2)}.search-page .modal-footer,.search-page .modal-header{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.search-page .modal-body{padding:0 20px 20px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.search-page .modal-close{border:none;background:transparent;font-size:24px;cursor:pointer;line-height:1;color:var(--text-muted)}.search-page .modal-btn{border:1px solid var(--pill-border);background:#fff;border-radius:6px;padding:8px 20px;font-size:14px;cursor:pointer}.search-page .modal-btn--primary{background:#141414;color:#fff;border-color:#141414}.search-page .modal-option{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid rgba(20,20,20,.08);border-radius:8px;font-size:14px}.search-page .modal-option input{width:16px;height:16px}.search-page .modal-empty{grid-column:1/-1;color:var(--text-muted);font-size:14px;padding:12px 0}body.modal-open{overflow:hidden}@media (max-width:768px){.search-page .controls{flex-direction:column;align-items:flex-start}.search-page .search-input{font-size:clamp(28px,8vw,48px)}.search-page .results-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}