/* ===================== HERO / SEARCH ===================== */
.hero{position:relative;overflow:hidden;background:#fff;padding:60px 0 40px}
.hero::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(640px 360px at 12% -10%,rgba(14,159,91,.1),transparent 60%),radial-gradient(560px 420px at 92% 0%,rgba(18,176,122,.07),transparent 62%),linear-gradient(180deg,#f7fdfa,#fff 70%)}
.hero::after{content:"";position:absolute;inset:0;z-index:0;opacity:.4;pointer-events:none;background-image:linear-gradient(#eaf3ee 1px,transparent 1px),linear-gradient(90deg,#eaf3ee 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(640px 320px at 50% 0,#000,transparent 78%);mask-image:radial-gradient(640px 320px at 50% 0,#000,transparent 78%)}
.hero .wrap{position:relative;z-index:1;text-align:center}
.hero h1{font-size:clamp(28px,4vw,42px);font-weight:800;letter-spacing:-.02em;line-height:1.12}
.hero h1 span{color:var(--green-d)}
.hero p{margin-top:13px;font-size:17px;color:var(--muted);max-width:560px;margin-left:auto;margin-right:auto}
.search{position:relative;max-width:620px;margin:28px auto 0}
.search-box{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid #e3e8e5;border-radius:15px;padding:5px 6px 5px 17px;box-shadow:0 20px 50px -30px rgba(26,21,37,.4);transition:border-color .18s,box-shadow .18s}
.search-box:focus-within{border-color:var(--green);box-shadow:0 24px 54px -28px rgba(14,159,91,.4)}
.search-box svg{width:20px;height:20px;color:var(--white);flex:none}
.search-box input{flex:1;min-width:0;border:0;outline:0;font-family:inherit;font-size:16px;font-weight:500;color:var(--ink);background:transparent;padding:11px 0}
.search-box input::placeholder{color:var(--muted2)}
.search-tags{margin-top:15px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.search-tags span{font-size:12px;color:var(--muted2);font-weight:600;align-self:center}
.chip{font-size:12.5px;font-weight:600;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:100px;padding:6px 13px;transition:border-color .16s,color .16s}
.chip:hover{border-color:var(--green);color:var(--green-d)}
/* search dropdown */
.search-res{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 30px 60px -24px rgba(26,21,37,.3);overflow:hidden;z-index:30;text-align:left;max-height:420px;overflow-y:auto}
.search-res-h{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);padding:12px 16px 6px}
.search-res-i{display:flex;gap:11px;align-items:flex-start;padding:11px 16px;border-top:1px solid var(--line2);transition:background .14s}
.search-res-i:hover{background:var(--bg-alt)}
.search-res-i::after{content:"";width:7px;height:7px;margin:auto 2px auto auto;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);color:var(--muted2);flex:none}
.search-res-ic{width:30px;height:30px;border-radius:8px;background:var(--tint);color:var(--green-d);display:flex;align-items:center;justify-content:center;flex:none}
.search-res-ic svg{width:15px;height:15px}
.search-res-tx b{font-size:14px;font-weight:700;display:block;line-height:1.3}
.search-res-tx small{font-size:11.5px;color:var(--muted2);font-family:'JetBrains Mono',monospace}
.search-empty{padding:22px 16px;text-align:center;color:var(--muted2);font-size:14px}

.hero-sm{padding:48px 0 34px}
.search-go{flex:none;border-radius:8px}
@media(max-width:600px){
  .hero,.hero-sm{padding:36px 0 28px}
  .hero h1{font-size:26px}
  .hero p{margin-top:9px;font-size:14px;line-height:1.55}
  .search{margin-top:20px}
  .search-box{gap:8px;border-radius:12px;padding:4px 5px 4px 13px}
  .search-box>svg{width:18px;height:18px}
  .search-box input{font-size:14px;padding:9px 0}
  .search-go{padding:8px 10px;font-size:12.5px}
  .search-go svg{width:14px;height:14px}
  .search-tags{margin-top:12px;gap:6px}
  .chip{font-size:11.5px;padding:5px 10px}
}
