.search-page { background:#f4faf6; color:#092449; }
.search-hero { padding:clamp(82px,10vw,140px) 24px 80px; background:linear-gradient(120deg,#043f3a,#087c4d); color:#fff; }
.search-hero-inner,.search-results-inner { width:min(1180px,100%); margin:0 auto; }
.search-hero .section-eyebrow { color:#8df27b; }
.search-hero h1 { margin:18px 0 20px; font-size:clamp(3rem,6vw,6.2rem); line-height:.98; letter-spacing:-.065em; }
.search-hero h1 em { color:#78e546; font-style:normal; }
.search-hero p:not(.section-eyebrow) { max-width:650px; color:#d7eee6; font-size:1.15rem; line-height:1.65; }
.site-search-form { position:relative; display:flex; align-items:center; max-width:860px; margin-top:34px; padding:7px; border:1px solid rgba(255,255,255,.35); border-radius:14px; background:rgba(255,255,255,.12); }
.site-search-form > i { margin:0 12px; color:#a9f592; }
.site-search-form input { min-width:0; flex:1; padding:15px 8px; border:0; outline:0; background:transparent; color:#fff; font:inherit; }
.site-search-form input::placeholder { color:rgba(255,255,255,.72); }
.site-search-form button { display:inline-flex; align-items:center; gap:12px; min-height:52px; padding:0 21px; border:0; border-radius:9px; background:#72e33f; color:#073b2c; cursor:pointer; font-weight:800; }
.site-search-form button:hover { background:#9cff75; }
.search-suggestions { display:flex; align-items:center; flex-wrap:wrap; gap:9px; margin-top:20px; color:#d7eee6; font-size:.9rem; }
.search-suggestions a { padding:7px 12px; border:1px solid rgba(255,255,255,.28); border-radius:99px; color:#fff; text-decoration:none; }
.search-suggestions a:hover { border-color:#8df27b; background:rgba(141,242,123,.13); }
.search-results-section { padding:70px 24px 110px; }
.search-results-heading { margin-bottom:28px; }
.search-results-heading h2 { margin:16px 0 0; font-size:clamp(2rem,4vw,3.6rem); letter-spacing:-.05em; }
.search-results-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.search-result-card { display:flex; flex-direction:column; overflow:hidden; border:1px solid #dce9e2; border-radius:16px; background:#fff; color:#092449; text-decoration:none; box-shadow:0 12px 28px rgba(8,74,46,.06); transition:transform .2s,box-shadow .2s,border-color .2s; }
.search-result-card:hover { border-color:#72c98b; box-shadow:0 18px 34px rgba(8,74,46,.12); transform:translateY(-3px); }
.search-result-card img { width:100%; height:170px; object-fit:cover; }
.search-result-card > div { padding:20px; }
.search-result-icon { display:grid; width:100%; height:120px; place-items:center; background:linear-gradient(135deg,#e8f8ed,#c9eed5); color:#078d4a; font-size:2.2rem; }
.search-result-type { color:#078d4a; font-size:.72rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.search-result-card h3 { margin:10px 0 8px; font-size:1.2rem; line-height:1.25; }
.search-result-card p { margin:0; color:#61748a; line-height:1.55; }
.search-result-link { display:inline-flex; gap:8px; margin-top:18px; color:#078d4a; font-size:.88rem; font-weight:800; }
.search-empty { padding:70px 25px; border:1px dashed #abd8b9; border-radius:16px; background:#fff; text-align:center; }
.search-empty i { color:#078d4a; font-size:2rem; }
.search-empty h2 { margin:16px 0 8px; }
.search-empty p { color:#61748a; }
@media (max-width:800px) { .site-search-form { align-items:stretch; flex-wrap:wrap; background:rgba(255,255,255,.12); } .site-search-form input { flex-basis:calc(100% - 50px); } .site-search-form button { width:100%; justify-content:center; } .search-results-grid { grid-template-columns:1fr; } }
