.search-main {max-width:1000px; margin:0 auto; padding:clamp(36px,6vw,80px) 24px 80px; min-height:65vh;}
.search-main h1 {font:clamp(2.5rem,6vw,4rem)/1.1 Georgia,serif; margin:8px 0 18px; color:var(--forest);}
.search-intro {max-width:650px; color:var(--muted); font-size:1.1rem;}
.site-search-form {margin:32px 0 12px; display:grid; grid-template-columns:minmax(0,1fr) 190px auto; gap:14px; align-items:end;}
.site-search-form label {font-weight:700; display:grid; gap:8px; font-size:.9rem;}
.site-search-form input,.site-search-form select {width:100%; min-height:52px; padding:12px; font:inherit; color:var(--forest); background:white; border:1px solid #a6b2a9; border-radius:6px;}
.site-search-form button,.search-more {min-height:52px; padding:12px 24px; border:1px solid var(--forest); border-radius:6px; background:var(--forest); color:white; font:inherit; font-weight:700; cursor:pointer;}
.search-main :focus-visible {outline:3px solid #b75f43; outline-offset:4px;}
.search-toolbar {display:flex; gap:16px; justify-content:space-between; align-items:baseline; border-bottom:1px solid var(--line); padding-bottom:14px;}
.search-toolbar p {color:var(--muted); margin:10px 0;}
.search-clear {border:0; background:none; color:var(--forest); font:inherit; text-decoration:underline; cursor:pointer; min-height:44px; flex-shrink:0;}
.search-results {list-style:none; margin:0; padding:0;}
.search-result {padding:24px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere;}
.search-result-meta {font-size:.8rem; font-weight:700; color:#9a523c; margin:0 0 8px;}
.search-result h2 {font:1.6rem/1.3 Georgia,serif; margin:0 0 8px;}
.search-result h2 a {color:var(--forest); text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1px;}
.search-result h2 span {font:1rem sans-serif;}
.search-result>p:last-child {color:var(--muted); margin:0; max-width:800px;}
.search-result .search-camp-contact {margin-top:12px; font-size:.9rem;}
.search-camp-contact span {font-weight:700; margin-right:5px;}
.search-camp-contact a {color:#9a523c; font-weight:700; text-underline-offset:3px;}
.search-more {margin-top:24px;}
.search-more[hidden] {display:none;}
@media(max-width:640px) {.site-search-form {grid-template-columns:minmax(0,1fr) auto;}.search-query-label {grid-column:1/-1;}.search-main {padding:32px 20px 64px;}.search-toolbar {align-items:flex-start;}}
