/* =========================================================================
 * Blog & Labs — the hub: the search block, suggestions, results, Popular.
 *
 * A large block: the eyebrow, a big Outfit 300 H1, a 68px search field with a
 * teal focus, a segmented type filter (radio), options as custom checkboxes,
 * and a Search button that is only visible without JavaScript. Suggestions
 * are a dark panel under the field (role=listbox): thumbnail, title, date,
 * type. Below are the results (tile grid, counter, Load more) and two Popular
 * blocks on the editorial grid (cards.css).
 * ====================================================================== */

.lmx-bh-search{position:relative;z-index:2}
.lmx-bh-head{max-width:900px;margin-bottom:34px}
.lmx-bh-eyebrow{margin:0 0 14px !important;font-family:var(--bl-font) !important;font-weight:600;font-size:13px !important;letter-spacing:.34em;text-transform:uppercase;color:var(--bl-accent) !important;line-height:1.4 !important}
.lmx-bh-title{margin:0 !important;font-family:var(--bl-display) !important;font-weight:300 !important;font-size:clamp(44px,6vw,86px) !important;line-height:1.0 !important;letter-spacing:-.025em;color:#fff !important;text-wrap:balance}
.lmx-bh-intro{margin:18px 0 0 !important;max-width:640px;font-family:var(--bl-font) !important;font-size:clamp(16px,1.3vw,19px) !important;line-height:1.55 !important;font-weight:300;color:var(--bl-muted) !important}

/* --- field ------------------------------------------------------------------------ */
.lmx-bh-form{display:block;margin:0;max-width:960px}
.lmx-bh-box{position:relative}
.lmx-bh-inner .lmx-bh-box__input{box-sizing:border-box !important;width:100% !important;min-width:0 !important;max-width:100% !important}
.lmx-bh-box__icon{position:absolute;left:24px;top:34px;width:24px;height:24px;transform:translateY(-50%);color:var(--bl-accent);pointer-events:none}
.lmx-bh-box__input{display:block;width:100%;height:68px;margin:0;padding:0 64px 0 64px;border:1px solid var(--bl-line-hi);border-radius:16px;background:rgba(255,255,255,.045);color:#fff;font-family:var(--bl-font);font-size:19px;line-height:1.2;letter-spacing:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);-webkit-appearance:none;appearance:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
.lmx-bh-box__input::placeholder{color:var(--bl-muted);opacity:1}
.lmx-bh-box__input::-webkit-search-cancel-button,.lmx-bh-box__input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}
.lmx-bh-box__input:hover{border-color:rgba(255,255,255,.28)}
.lmx-bh-box__input:focus{outline:none;border-color:var(--bl-accent);background:rgba(82,199,198,.06);box-shadow:0 0 0 3px rgba(82,199,198,.18),0 0 34px rgba(82,199,198,.18)}
.lmx-bh-box__input[aria-expanded="true"]{border-bottom-left-radius:0;border-bottom-right-radius:0}
.lmx-bh-box__clear{position:absolute;right:12px;top:34px;width:44px;height:44px;margin-top:-22px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--bl-muted);display:grid;place-items:center;cursor:pointer;transition:color .2s ease,background .2s ease}
.lmx-bh-box__clear svg{width:18px;height:18px}
.lmx-bh-box__clear:hover{color:#fff;background:rgba(255,255,255,.08)}
.lmx-bh-box__clear:focus-visible{outline:2px solid var(--bl-accent);outline-offset:2px}
.lmx-bh-box__clear[hidden]{display:none}

/* --- suggestions ------------------------------------------------------------------ */
.lmx-bh-suggest{position:absolute;left:0;right:0;top:100%;z-index:20;margin:0;padding:8px;list-style:none;max-height:min(60vh,520px);overflow-y:auto;border:1px solid rgba(82,199,198,.45);border-top:0;border-radius:0 0 16px 16px;background:#0b0f10;box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 0 3px rgba(82,199,198,.12)}
.lmx-bh-suggest[hidden]{display:none}
.lmx-bh-suggest__item{margin:0}
.lmx-bh-suggest__link{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;padding:8px 10px;border-radius:10px;color:#fff !important;text-decoration:none !important;cursor:pointer;transition:background .15s ease}
.lmx-bh-suggest__item.is-active .lmx-bh-suggest__link,.lmx-bh-suggest__link:hover{background:rgba(82,199,198,.12)}
.lmx-bh-suggest__thumb{display:block;width:64px;height:44px;object-fit:cover;border-radius:8px;background:#141a1c;border:1px solid var(--bl-line)}
.lmx-bh-suggest__thumb--none{display:grid;place-items:center;color:rgba(131,218,217,.5)}
.lmx-bh-suggest__thumb--none svg{width:22px;height:22px}
.lmx-bh-suggest__text{display:flex;flex-direction:column;gap:4px;min-width:0}
.lmx-bh-suggest__title{font-family:var(--bl-font);font-size:15px;line-height:1.3;color:#fff;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lmx-bh-suggest__meta{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--bl-muted);letter-spacing:.04em}
.lmx-bh-suggest__type{padding:2px 7px;border-radius:999px;background:rgba(82,199,198,.12);border:1px solid rgba(82,199,198,.3);color:#9fe3e2;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.lmx-bh-suggest__item--all .lmx-bh-suggest__link{grid-template-columns:minmax(0,1fr);justify-items:start;margin-top:4px;padding:12px 12px;border-top:1px solid var(--bl-line);border-radius:0;color:var(--bl-accent) !important;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.lmx-bh-suggest__item--none .lmx-bh-suggest__link{grid-template-columns:minmax(0,1fr);color:var(--bl-muted) !important;cursor:default}

/* --- controls: type and options ---------------------------------------------------- */
.lmx-bh-controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:18px}
.lmx-bh-types,.lmx-bh-opts{margin:0;padding:0;border:0;min-width:0;display:flex;flex-wrap:wrap;gap:8px}
/* segmented control: one 4px frame, three equal-height segments, nothing else */
.lmx-bh-types{padding:4px;gap:4px;border:1px solid var(--bl-line);border-radius:999px;background:var(--bl-surface);align-items:stretch}
.lmx-bh-type{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 18px;margin:0;border:0;border-radius:999px;background:transparent;color:var(--bl-muted);font-family:var(--bl-font);font-size:13px;font-weight:600;line-height:1;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;user-select:none;transition:background .2s ease,color .2s ease}
.lmx-bh-type:hover{color:#fff}
.lmx-bh-type[aria-pressed="true"]{background:var(--bl-accent);color:var(--bl-on-accent)}
.lmx-bh-type[aria-pressed="true"]:hover{color:var(--bl-on-accent)}
.lmx-bh-type:focus-visible{outline:2px solid var(--bl-accent);outline-offset:2px}
.lmx-bh-opts{gap:8px 22px;align-items:center}
.lmx-bh-opt{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:38px;color:var(--bl-text);font-family:var(--bl-font);font-size:14px;cursor:pointer;user-select:none}
.lmx-bh-opt input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.lmx-bh-opt__box{position:relative;flex:0 0 auto;width:20px;height:20px;border:1px solid rgba(82,199,198,.7);border-radius:5px;background:transparent;transition:background .18s ease,box-shadow .18s ease}
.lmx-bh-opt__box::after{content:'';position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid var(--bl-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .18s ease}
.lmx-bh-opt input:checked + .lmx-bh-opt__box{background:var(--bl-accent)}
.lmx-bh-opt input:checked + .lmx-bh-opt__box::after{transform:rotate(45deg) scale(1)}
.lmx-bh-opt input:focus-visible + .lmx-bh-opt__box{box-shadow:0 0 0 3px rgba(82,199,198,.3);outline:2px solid var(--bl-accent);outline-offset:2px}
.lmx-bh-opt:hover{color:#fff}
.lmx-bh-inner .lmx-bh-submit{min-height:44px}
.lmx-bh-js .lmx-bh-submit{display:none}

/* --- results ---------------------------------------------------------------------- */
.lmx-bh-results{margin-top:40px}
.lmx-bh-results[hidden]{display:none}
.lmx-bh-results__count{min-height:22px;margin:0 0 18px !important;font-family:var(--bl-font) !important;font-size:14px !important;letter-spacing:.04em;color:var(--bl-accent) !important;font-variant-numeric:tabular-nums}
.lmx-bh-results__count:empty{display:none}
.lmx-bh-inner.is-loading .lmx-pc-grid{opacity:.55;transition:opacity .2s ease}
.lmx-bh-empty{display:flex;flex-direction:column;align-items:center;gap:18px;padding:56px 24px;border:1px dashed rgba(82,199,198,.35);border-radius:18px;background:rgba(82,199,198,.04);text-align:center}
.lmx-bh-empty[hidden]{display:none}
.lmx-bh-empty__icon{width:56px;height:56px;color:var(--bl-accent);opacity:.85}
.lmx-bh-empty__text{max-width:520px;margin:0 !important;font-family:var(--bl-font) !important;font-size:17px !important;line-height:1.55 !important;color:var(--bl-text) !important}
.lmx-bh-more{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:36px}
.lmx-bh-more[hidden]{display:none}
.lmx-bh-inner .lmx-bh-more__btn{min-width:220px;justify-content:center}
.lmx-bh-more__progress{margin:0 !important;font-family:var(--bl-font) !important;font-size:13px !important;letter-spacing:.08em;color:var(--bl-muted) !important;font-variant-numeric:tabular-nums}
.lmx-bh-inner.is-loading .lmx-bh-more__btn{pointer-events:none;opacity:.6}

/* --- Popular ------------------------------------------------------------------------ */
.lmx-bh-popular{display:flex;flex-direction:column;gap:clamp(56px,7vw,96px);margin-top:clamp(56px,7vw,96px)}
.lmx-bh-popular[hidden]{display:none}
.lmx-bp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid var(--bl-line-hi);position:relative}
.lmx-bp-head::after{content:'';position:absolute;left:0;bottom:-1px;width:120px;height:1px;background:var(--bl-accent)}
.lmx-bp-title{margin:0 !important;font-family:var(--bl-display) !important;font-weight:300 !important;font-size:clamp(30px,3.4vw,46px) !important;line-height:1.05 !important;letter-spacing:-.02em;color:#fff !important}
.lmx-bh-inner .lmx-bp-all{display:inline-flex;align-items:center;gap:10px;min-height:46px;white-space:nowrap}
.lmx-bh-inner .lmx-bp-all .lmx-fx-arrow{width:18px;height:18px}
.lmx-bp-foot{display:none;margin-top:18px}
.lmx-bh-inner .lmx-bp-all--foot{width:100%;justify-content:center}

/* --- layout by width -------------------------------------------------------------- */
@media (max-width:1024px){
.lmx-bh-head{margin-bottom:26px}
.lmx-bh-controls{gap:12px 20px}
}
@media (max-width:640px){
.lmx-bh-title{font-size:40px !important}
.lmx-bh-box__input{height:58px;padding:0 54px 0 52px;font-size:16px}
.lmx-bh-box__icon{left:18px;top:29px;width:20px;height:20px}
.lmx-bh-box__clear{top:29px}
.lmx-bh-types{width:100%;flex-wrap:nowrap;justify-content:stretch}
.lmx-bh-type{flex:1 1 0;min-width:0;padding:0 10px;letter-spacing:.1em}
.lmx-bh-opts{flex-direction:column;align-items:flex-start;gap:2px}
.lmx-bh-opt{min-height:32px}
.lmx-bh-suggest__link{grid-template-columns:56px minmax(0,1fr)}
.lmx-bh-suggest__thumb{width:56px;height:40px}
.lmx-bp-head{flex-direction:column;align-items:flex-start;gap:12px}
.lmx-bp-head .lmx-bp-all{display:none}
.lmx-bp-foot{display:block}
.lmx-bh-empty{padding:40px 18px}
}
