/**handles:iqh-remedy-archive**/
/* Remedy Archive — IQ Homeopathy */
.iqh-mm-archive-page{
  --page-bg:#FBFBFB;
  --card:#FFF;
  --alt:#FBFBFB;
  --t1:#E8F9FF;
  --t2:#C4D9FF;
  --line:#E6EAF2;
  --ink:#0f172a;
  --muted:#6b7280;
  --radius:14px;
  --gap:16px;
  --sticky-top: 0;
}
.iqh-mm-archive-page{ background:var(--page-bg); color:var(--ink); }

/* Header */
.iqh-mm-archive__header{ max-width:1100px; margin:28px auto 10px; padding:0 16px; }
.iqh-mm-archive__header .page-title{ font-size:clamp(28px,4.2vw,40px); line-height:1.1; margin:0 0 10px; }

/* Search + autosuggest */
.iqh-mm-archive__search{ position:relative; display:flex; gap:8px; align-items:center; }
.iqh-mm-archive__search input[type="search"]{ flex:1; padding:12px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; }
.iqh-mm-archive__search button{ border:1px solid var(--line); background:#fff; border-radius:999px; padding:10px 14px; cursor:pointer; }
.iqh-mm-archive__autocomplete{ position:absolute; left:0; top:100%; width:min(680px,100%); background:#fff; border:1px solid var(--line); border-radius:12px; margin-top:6px; box-shadow:0 10px 28px rgba(0,0,0,.10); display:none; z-index:10001; }
.iqh-mm-archive__autocomplete .ac-list{ list-style:none; margin:0; padding:6px; max-height:60vh; overflow:auto; }
.iqh-mm-archive__autocomplete .ac-item{ position:relative; display:grid; grid-template-columns:40px 1fr; gap:10px; align-items:center; padding:8px 10px; border-radius:10px; }
.iqh-mm-archive__autocomplete .ac-item:hover{ background:#F5F8FF; }
.iqh-mm-archive__autocomplete .ac-thumb{ width:40px; height:40px; object-fit:cover; border-radius:8px; background:#f0f0f0; }
.iqh-mm-archive__autocomplete .ac-title{ font-weight:700; }
.iqh-mm-archive__autocomplete .ac-sub{ color:var(--muted); font-size:.92rem; }
.iqh-mm-archive__autocomplete .stretched{ position:absolute; inset:0; }

/* Kingdom chips */
.iqh-mm-archive__kingdoms{ display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
.chip{ display:inline-flex; align-items:center; gap:6px; padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:#F7FAFF; font-size:.92rem; text-decoration:none; color:inherit; }
.chip.is-active{ background:var(--t1); border-color:var(--t2); }

/* Discover carousel */
.iqh-mm-archive__discover{ margin:14px 0 6px; }
.iqh-discover-wrap{ position:relative; background:#fff; border:1px solid var(--line); border-radius:16px; padding:12px 46px; box-shadow:0 8px 24px rgba(0,0,0,.06); }
.iqh-discover-track{ display:flex; overflow:auto; gap:14px; scroll-snap-type:x mandatory; padding:4px; }
.iqh-discover-card{ min-width:220px; border:1px solid var(--line); border-radius:12px; overflow:hidden; text-decoration:none; color:inherit; background:#fff; }
.iqh-discover-card img{ display:block; width:100%; height:120px; object-fit:cover; }
.iqh-discover-card .t{ padding:8px 10px; font-weight:700; }
.iqh-discover-btn{ position:absolute; top:50%; transform:translateY(-50%); border:0; background:#fff; box-shadow:0 6px 18px rgba(0,0,0,.10); width:32px; height:32px; border-radius:999px; cursor:pointer; }
.iqh-discover-prev{ left:8px; } .iqh-discover-next{ right:8px; }

/* Main layout */
.iqh-mm-archive{ max-width:1100px; margin:18px auto; padding:0 16px; }

/* Sticky letter bar */
.iqh-mm-indexbox__letters{ position:sticky; top:calc(var(--sticky-top) + 6px); z-index:40; background:#fff; border:1px solid var(--line); border-radius:12px; padding:10px; }
.iqh-mm-indexbox__letters .row{ display:flex; gap:8px; flex-wrap:wrap; }
.iqh-mm-indexbox__letters .js-letter{ border:1px solid var(--line); background:#fff; border-radius:10px; padding:6px 8px; cursor:pointer; }
.iqh-mm-indexbox__letters .js-letter.is-active{ background:#F1F6FF; border-color:#D6E3FF; }

/* Directory grid (force 4 columns) */
.iqh-directory{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; padding:12px 0 18px; }
@media (max-width:1100px){ .iqh-directory{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:700px){ .iqh-directory{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:440px){ .iqh-directory{ grid-template-columns:1fr; } }

.iqh-dir-group{ background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 8px 24px rgba(0,0,0,.06); }
.iqh-dir-head{ display:flex; align-items:center; justify-content:space-between; padding:10px 12px; border-bottom:1px solid var(--line); }
.iqh-dir-head .letter{ font-weight:800; font-size:18px; }
.iqh-dir-more{ border:1px solid var(--line); border-radius:999px; padding:6px 10px; background:#fff; cursor:pointer; }
.iqh-dir-list{ list-style:none; margin:0; padding:10px 12px; display:grid; gap:6px; }

/* Results mode visibility */
.iqh-mm-results{ display:none; }
.iqh-mm-indexbox.is-results   .iqh-mm-results{ display:block; }
.iqh-mm-indexbox.is-directory .iqh-mm-results{ display:none; }
.iqh-mm-indexbox.is-results   .iqh-directory{ display:none; }
.iqh-mm-indexbox.is-directory .iqh-directory{ display:grid; }

/* Results header + grid */
.iqh-results-head{ display:flex; align-items:center; justify-content:space-between; margin:12px 0; }
.iqh-results-head .tag{ background:#EEF5FF; border:1px solid #D7E6FF; padding:6px 10px; border-radius:999px; }
.iqh-results-head .back{ border:1px solid var(--line); background:#fff; border-radius:999px; padding:6px 10px; cursor:pointer; }
.iqh-results-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
@media (max-width:940px){ .iqh-results-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .iqh-results-grid{ grid-template-columns:1fr; } }

/* Remedy cards */
.iqh-card{ background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 8px 24px rgba(0,0,0,.06); overflow:hidden; display:grid; grid-template-columns:140px 1fr; }
@media (max-width:520px){ .iqh-card{ grid-template-columns:1fr; } }
.iqh-card__media img,.iqh-card__placeholder{ display:block; width:100%; height:100%; object-fit:cover; min-height:120px; background:#f0f0f0; }
.iqh-card__body{ padding:10px 12px; }
.iqh-card__title{ margin:0 0 6px; font-size:18px; }
.iqh-card__meta{ color:var(--muted); margin:0 0 6px; }
.iqh-card__teaser{ margin:0 0 10px; }
.iqh-card__actions{ display:flex; gap:8px; flex-wrap:wrap; }
.button{ border:1px solid var(--line); background:#fff; border-radius:999px; padding:6px 10px; cursor:pointer; text-decoration:none; color:inherit; }
.button--ghost{ background:#F7FAFF; }
.button--text{ border-color:transparent; padding:6px 0; }

/* Quick view drawer */
.iqh-quickview{ position:fixed; inset:0; z-index:10010; display:none; }
.iqh-quickview[aria-hidden="false"]{ display:block; }
.iqh-quickview__backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.35); }
.iqh-quickview__panel{ position:absolute; right:0; top:0; bottom:0; width:min(520px,92%); background:#fff; box-shadow:-8px 0 24px rgba(0,0,0,.25); padding:16px; }
.iqh-quickview__close{ position:absolute; top:8px; right:10px; border:0; background:#fff; border:1px solid var(--line); border-radius:999px; width:32px; height:32px; cursor:pointer; }
/* === Cinematic remedy card ================================================= */
.iqh-results-grid .iqh-card--bg{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 320px;
  border: none;
  border-radius: 18px;
  overflow: hidden;
  padding: 16px;
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
  color: #fff;
  isolation: isolate;
}

/* Background image via CSS variable --card-bg */
.iqh-results-grid .iqh-card--bg::before{
  content: "";
  position: absolute;
  inset: 0;
  background: var(--card-bg, radial-gradient(circle at 30% 20%, #c4d9ff 0%, #85a6ff 35%, #3f66cc 100%)) center/cover no-repeat;
  transform: scale(1.02);
  z-index: -2;
}

/* Overlay for legibility */
.iqh-results-grid .iqh-card--bg::after{
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.55) 65%, rgba(0,0,0,.65) 100%),
    rgba(0,0,0,.1);
  z-index: -1;
}

/* Content layout */
.iqh-card--bg .iqh-card__wrap{
  display: grid;
  gap: 12px;
}

/* Title and meta (white) */
.iqh-card--bg .iqh-card__title{
  margin: 0;
  font-size: clamp(20px, 2.2vw, 24px);
  font-weight: 800;
  letter-spacing: -.01em;
  text-shadow: 0 2px 10px rgba(0,0,0,.25);
}
.iqh-card--bg .iqh-card__title a{ color:#fff; text-decoration:none; }
.iqh-card--bg .iqh-card__meta{
  margin: 0;
  color: rgba(255,255,255,.92);
  text-shadow: 0 1px 8px rgba(0,0,0,.25);
}

/* Back to top (white link) */
.iqh-card--bg .iqh-top{
  color:#fff;
  text-decoration: underline;
  font-weight: 700;
}

/* Essence panel (white @ 0.6) */
.iqh-card--bg .iqh-card__essence{
  background: rgba(255,255,255,.6);
  color: #0f172a;
  padding: 12px 14px;
  border-radius: 12px;
  backdrop-filter: saturate(1.05) blur(1px);
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
}

/* Actions sit at the bottom edge */
.iqh-card--bg .iqh-card__actions{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 10px;
}
.iqh-card--bg .button{
  border: 1px solid rgba(255,255,255,.7);
  background: rgba(255,255,255,.12);
  color: #fff;
  backdrop-filter: blur(2px);
}
.iqh-card--bg .button:hover{
  background: rgba(255,255,255,.22);
}

/* kill the old split card layout inside results so this wins */
.iqh-results-grid .iqh-card{
  border: none;
  grid-template-columns: unset;
}
/* === Remedy card: full-background variant ================================ */
.iqh-results-grid .iqh-card--photo{
  position: relative;
  display: block;                 /* kill any previous split-grid layout */
  min-height: 340px;
  border: 0;
  border-radius: 18px;
  overflow: hidden;
  padding: 18px;                  /* internal breathing room */
  box-shadow: 0 16px 36px rgba(0,0,0,.18);
  color: #fff;                    /* default text on photo */
  isolation: isolate;             /* layer separation for overlays */
}

/* Background image via CSS variable --bg */
.iqh-results-grid .iqh-card--photo::before{
  content:"";
  position:absolute; inset:0;
  background: var(--bg, #dfe6f7) center/cover no-repeat;
  transform: scale(1.02);         /* tiny zoom for crisp edges */
  z-index:-2;
}

/* Overlay for legibility (stronger at the bottom) */
.iqh-results-grid .iqh-card--photo::after{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.22) 40%, rgba(0,0,0,.58) 100%),
    rgba(0,0,0,.10);
  z-index:-1;
}

/* Stack content at the bottom */
.iqh-card--photo .iqh-card__wrap{
  display: grid;
  gap: 12px;
  margin-top: auto;
}

/* Title + meta: white */
.iqh-card--photo .iqh-card__title{
  margin: 0;
  font-size: clamp(20px, 2.2vw, 26px);
  font-weight: 800;
  letter-spacing: -.01em;
  text-shadow: 0 2px 12px rgba(0,0,0,.35);
}
.iqh-card--photo .iqh-card__title a{ color:#fff; text-decoration:none; }

.iqh-card--photo .iqh-card__meta{
  margin: 0;
  color: rgba(255,255,255,.92);
  text-shadow: 0 1px 8px rgba(0,0,0,.28);
}

/* "Back to top" in white */
.iqh-card--photo .iqh-top{
  color:#fff;
  text-decoration: underline;
  font-weight: 700;
}

/* Essence: white panel @ 0.6 with dark text */
.iqh-card--photo .iqh-card__essence{
  background: rgba(255,255,255,.6);
  color: #0f172a;
  padding: 12px 14px;
  border-radius: 12px;
  backdrop-filter: saturate(1.05) blur(1px);
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
}

/* Actions as frosted chips on photo */
.iqh-card--photo .iqh-card__actions{
  display:flex; gap:10px; flex-wrap:wrap; margin-top: 6px;
}
.iqh-card--photo .button{
  border:1px solid rgba(255,255,255,.75);
  background: rgba(255,255,255,.14);
  color:#fff;
  border-radius: 999px;
  padding: 6px 12px;
  backdrop-filter: blur(2px);
}
.iqh-card--photo .button:hover{ background: rgba(255,255,255,.22); }

/* Make sure any old split-card rules don’t kick in */
.iqh-results-grid .iqh-card{ grid-template-columns: unset; }
/* === FINAL OVERRIDES: full-bleed photo card =============================== */
.iqh-results-grid .iqh-card{            /* neutralize the old split layout */
  grid-template-columns: unset !important;
  background: transparent !important;
  border-color: transparent !important;
}

.iqh-results-grid .iqh-card__media{      /* hide old media pane if present */
  display: none !important;
}

.iqh-results-grid .iqh-card--photo{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 340px;
  padding: 18px;
  border: 0 !important;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 16px 36px rgba(0,0,0,.18);
  color: #fff !important;
  background: transparent !important;
  isolation: isolate;
}

/* Use the CSS variable --bg set inline in the HTML */
.iqh-results-grid .iqh-card--photo::before{
  content: "";
  position: absolute; inset: 0;
  background: var(--bg,#e5ecff) center/cover no-repeat;
  transform: scale(1.02);
  z-index: -2;
}

/* Dark overlay so white text reads */
.iqh-results-grid .iqh-card--photo::after{
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,.25) 40%, rgba(0,0,0,.60) 100%);
  z-index: -1;
}

/* White text items */
.iqh-card--photo .iqh-card__title{ margin:0; font-size: clamp(20px,2.2vw,26px); font-weight: 800; text-shadow: 0 2px 12px rgba(0,0,0,.35); }
.iqh-card--photo .iqh-card__title a{ color:#fff !important; text-decoration:none; }
.iqh-card--photo .iqh-card__meta{ margin:0; color: rgba(255,255,255,.92) !important; text-shadow: 0 1px 8px rgba(0,0,0,.28); }
.iqh-card--photo .iqh-top{ color:#fff !important; text-decoration: underline; font-weight:700; }

/* Essence on white 0.6 panel */
.iqh-card--photo .iqh-card__essence{
  background: rgba(255,255,255,.6) !important;
  color: #0f172a !important;
  padding: 12px 14px; border-radius: 12px;
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
  backdrop-filter: saturate(1.05) blur(1px);
}

/* Frosted action chips */
.iqh-card--photo .iqh-card__actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:6px; }
.iqh-card--photo .button{ border:1px solid rgba(255,255,255,.8); background:rgba(255,255,255,.14); color:#fff; border-radius:999px; padding:6px 12px; backdrop-filter: blur(2px); }
.iqh-card--photo .button:hover{ background:rgba(255,255,255,.22); }
/* Top-align the photo card content */
.iqh-results-grid .iqh-card--photo{
  justify-content: flex-start;      /* was flex-end */
  padding-bottom: 56px;             /* room for the fixed "Back to top" link */
}

/* Ensure no auto push-down on the content wrapper */
.iqh-card--photo .iqh-card__wrap{ margin-top: 0; }

/* Darker overlay for better contrast */
.iqh-results-grid .iqh-card--photo::after{
  content:"";
  position:absolute; inset:0;
  /* slightly stronger than before */
  background: linear-gradient(
    180deg,
    rgba(0,0,0,.18) 0%,
    rgba(0,0,0,.38) 45%,
    rgba(0,0,0,.72) 100%
  );
  z-index:-1;
}

/* Back-to-top: fixed at bottom-right of card */
.iqh-card--photo .iqh-top{
  position: absolute;
  right: 14px;
  bottom: 12px;
  margin: 0;
  color: #fff !important;
  text-decoration: underline;
  font-weight: 700;
  text-shadow: 0 1px 8px rgba(0,0,0,.28);
  z-index: 2;
}
/* ===== Consistent Essence panel across cards ============================== */
/* How many lines to show in the white box (change 4 → 3/5 etc.) */
.iqh-mm-archive-page { --essence-lines: 4; }

/* Stretch cards to the same height and keep content tidy */
.iqh-results-grid { align-items: stretch; }
.iqh-results-grid .iqh-card--photo { height: 100%; }
.iqh-card--photo .iqh-card__wrap {
  display: grid;
  gap: 12px;
  /* title / meta / (spacer) / essence / actions (bottom link is absolutely placed) */
  grid-auto-rows: min-content;
}

/* Essence: clamp to N lines AND give it a fixed visual height */
.iqh-card--photo .iqh-card__essence{
  /* already present styles kept */
  background: rgba(255,255,255,.6) !important;
  color:#0f172a !important;
  padding: 12px 14px;
  border-radius: 12px;
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
  backdrop-filter: saturate(1.05) blur(1px);

  /* make them uniform */
  line-height: 1.45;                   /* base for height calc */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: var(--essence-lines);
  overflow: hidden;

  /* same visual height on all cards:
     1lh unit = element line-height; add vertical padding (12px top + 12px bottom) */
  min-height: calc(var(--essence-lines) * 1lh + 24px);
}

/* (Keeps the “Back to top” fixed at the card’s bottom-right) */
.iqh-card--photo .iqh-top{
  position:absolute; right:14px; bottom:12px; z-index:2;
}

/* Optional: ensure actions don’t push the Essence box around */
.iqh-card--photo .iqh-card__actions{ margin-top: 8px; }
/* === Fixed Essence height ================================================ */
.iqh-mm-archive-page { --essence-fixed-height: 200px; }

.iqh-card--photo .iqh-card__essence{
  /* keep your existing styling, then fix the height */
  height: var(--essence-fixed-height) !important;
  min-height: var(--essence-fixed-height) !important;
  max-height: var(--essence-fixed-height) !important;

  overflow: hidden;                 /* no scrollbars */
  display: block;                   /* cancel any -webkit-box clamping */
  -webkit-line-clamp: initial;      /* disable previous line clamp */
}

/* (optional) keep cards top-aligned and leave room for the bottom-right "Back to top" */
.iqh-results-grid .iqh-card--photo{
  justify-content: flex-start;
  padding-bottom: 56px;             /* space for the fixed back-to-top link */
}
/* Center the A–Z/All row and keep it sticky */
.iqh-mm-indexbox__letters {
  position: sticky;
  top: calc(var(--sticky-top) + 6px);
  z-index: 40;
  background: #fff;
}

.iqh-mm-indexbox__letters .row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center; /* NEW: center the content */
}

/* Optional: give "All" the same pill look */
.iqh-mm-indexbox__letters .js-letter--all {
  font-weight: 700;
}
/* Center the A–Z (+ All) row and keep it sticky within the archive area */
.iqh-mm-archive .iqh-mm-indexbox__letters{
  position: -webkit-sticky;
  position: sticky;
  top: calc(var(--sticky-top, 0px) + 6px) !important;
  z-index: 60;                     /* above cards */
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px;
}

/* Ensure ancestors don't break sticky */
.iqh-mm-archive,
.iqh-mm-indexbox{
  overflow: visible !important;
}

.iqh-mm-indexbox__letters .row{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  justify-content: center;         /* center everything */
}

/* Optional: give "All" a subtle emphasis */
.iqh-mm-indexbox__letters .js-letter--all{
  font-weight: 700;
}
/* === Sticky A–Z (+ All) bar ============================================= */
.iqh-mm-archive .iqh-mm-indexbox__letters{
  position: -webkit-sticky;
  position: sticky;
  top: 0 !important;
  z-index: 60;
  background: #fff;
  border: 1px solid var(--line, #e5e7eb);
  border-radius: 12px;
  padding: 10px;
}

/* Center content in the bar */
.iqh-mm-indexbox__letters .row{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  justify-content: center;
}

/* Ensure ancestors don’t break sticky */
.iqh-mm-archive,
.iqh-mm-indexbox{
  overflow: visible !important;
}

/* --- Fallback class when JS pins it (if CSS sticky is blocked) --- */
.iqh-mm-indexbox__letters.is-fixed{
  position: fixed !important;
  top: 0 !important;
  left: var(--letters-left, 0px);
  width: var(--letters-width, 100%);
  box-shadow: 0 10px 22px rgba(0,0,0,.08);
}

/* Spacer used only during fallback to prevent layout jump */
.iqh-letters-spacer{ height: var(--letters-height, 0px); }


/* ==== PHOTO CARD RESTORE / ENHANCE ==== */
.iqh-card--photo{
  position: relative;
  border-radius: 22px;
  background-image: var(--bg);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

/* Darker overlay than before */
.iqh-card--photo::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,.45) 0%,
    rgba(0,0,0,.35) 30%,
    rgba(0,0,0,.45) 100%
  );
  pointer-events:none;
}

/* Content container sits above overlay, align to TOP */
.iqh-card--photo .iqh-card__wrap{
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;   /* top align */
  gap: 14px;
  padding: 20px;
  min-height: 100%;
}

/* Title + meta in white on photo */
.iqh-card--photo .iqh-card__title,
.iqh-card--photo .iqh-card__title a,
.iqh-card--photo .iqh-card__meta{
  color: #fff;
  text-shadow: 0 1px 2px rgba(0,0,0,.25);
}
.iqh-card--photo .iqh-card__title a:hover{ opacity:.9; }

/* === Essence panel: white overlay (uniform height) === */
.iqh-results-grid .iqh-card--photo .iqh-card__essence{
  background: rgba(255,255,255,.78) !important;  /* slightly stronger white */
  color: #0f172a !important;
  padding: 14px 16px;
  border-radius: 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.10);
  backdrop-filter: saturate(1.05) blur(1px);
  height: 200px !important;
  min-height: 200px !important;
  max-height: 200px !important;
  overflow: hidden;
}

/* Keep the link fixed bottom-right on the card */
.iqh-results-grid .iqh-card--photo .iqh-top{
  position: absolute;
  right: 16px;
  bottom: 16px;
  color: #fff !important;
  font-weight: 700;
  text-decoration: underline;
  text-shadow: 0 1px 8px rgba(0,0,0,.28);
}
/* --- Fix overlay layering so the white Essence panel shows --- */
.iqh-results-grid .iqh-card--photo::after{
  z-index: -1 !important;  /* keep overlay behind content */
}

/* Make sure content sits above the overlay */
.iqh-results-grid .iqh-card--photo .iqh-card__wrap,
.iqh-results-grid .iqh-card--photo .iqh-card__essence{
  position: relative;
  z-index: 1;
}

/* Re-assert the Essence panel look & height */
.iqh-results-grid .iqh-card--photo .iqh-card__essence{
  background: rgba(255,255,255,.78) !important;
  color: #0f172a !important;
  height: 200px !important;
  min-height: 200px !important;
  max-height: 200px !important;
  overflow: hidden;
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.10);
}
/* Ensure the dark overlay is behind the content */
.iqh-results-grid .iqh-card--photo::after{ z-index: -1 !important; }

/* Essence panel: your cards use .iqh-card__teaser.is-box, so style that too */
.iqh-results-grid .iqh-card--photo .iqh-card__teaser.is-box,
.iqh-results-grid .iqh-card--photo .iqh-card__essence{
  position: relative;
  z-index: 1;
  background: rgba(255,255,255,.78) !important;
  color: #0f172a !important;
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,.10);
  height: 200px !important;
  min-height: 200px !important;
  max-height: 200px !important;
  overflow: hidden;
}
html.iqh-no-scroll, body.iqh-no-scroll { overflow: hidden; }
/* === Quick View: image hero with bottom gradient & title ================ */
.iqh-quickview__panel{ padding:0; }                    /* let the hero span full width */
.iqh-qv-hero{
  position: relative;
  height: 220px;                                       /* rectangular hero */
  overflow: hidden;
}
.iqh-qv-img{ width:100%; height:100%; object-fit:cover; display:block; }
.iqh-qv-hero::after{                                    /* bottom-to-top dark gradient */
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%,
                                       rgba(0,0,0,.55) 75%,
                                       rgba(0,0,0,.75) 100%);
  pointer-events:none;
}
.iqh-qv-title{                                          /* white title at bottom */
  position:absolute; left:16px; right:56px; bottom:14px;
  margin:0; color:#fff; font-weight:800;
  font-size: clamp(18px, 2.4vw, 22px);
  text-shadow: 0 2px 10px rgba(0,0,0,.35);
  z-index:1;
}
.iqh-qv-body{ padding:16px; }                           /* the rest of the content */
.iqh-qv-meta{ margin:0 0 10px; color:#334155; }
.iqh-qv-essence{
  background:#fff; border:1px solid var(--line, #e5e7eb);
  border-radius:12px; padding:12px 14px;
  max-height:220px; overflow:auto;
}
/* Search button */
.iqh-mm-archive__search button{
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 999px;
}
.iqh-mm-archive__search button svg{
  width: 22px;
  height: 22px;
  pointer-events: none;
}
/* === IQH: Archive search button — visible & positioned === */
.iqh-mm-archive__search { position: relative; }

.iqh-mm-archive__search .iqh-search-btn{
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 100px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line, #e6eaf2);
  border-radius: 999px;
  background: #039be5;
  cursor: pointer;
}

.iqh-mm-archive__search .iqh-search-btn svg{
  width: 20px;
  height: 20px;
  display: block;
  pointer-events: none;
}