/** Shopify CDN: Minification failed

Line 344:0 Comments in CSS use "/* ... */" instead of "//"
Line 731:0 Unexpected "}"

**/
:root {
  --blue-50:#e6f0ff; --blue-100:#cfe2ff; --blue-200:#a3c8ff; --blue-300:#6ea8fe;
  --blue-400:#3d8bfd; --blue-500:#0d6efd; --blue-600:#0a58ca; --ink:#0b1324;
}
html, body { height:100%; }
.map-container { position:fixed; inset:0; z-index:1; }
.map-ui { position:fixed; inset:0; pointer-events:none; z-index:2; }
.map-header {
  pointer-events:auto;
  position:absolute;
  left:16px;
  top: var(--map-top, 16px); /* header alá igazítva */
  right:16px;
  display:flex;
  flex-direction:column;
  gap:12px;
  max-width:720px;
}
.map-title { margin:0; font-size:20px; font-weight:700; color:white; text-shadow:0 1px 2px rgba(0,0,0,.5); }
.map-controls { display:flex; flex-direction:column; gap:8px; }
.search-wrap {
  display:flex;
  align-items:center;
  gap:8px;
  background:#fff;                    /* FEHÉR buborék */
  padding:12px;
  border-radius:14px;
  border:1px solid #e9eef7;
  pointer-events:auto;                /* biztos, hogy klikkelhető overlay */
}

.search-wrap input {
  flex:1;
  padding:10px 12px;
  border:1px solid #d5dceb;
  border-radius:10px;
  background:#fff;                    /* fehér input a fehér buborékon */
}

.search-wrap button {
  padding:8px 10px;
  border-radius:10px;
  border:1px solid var(--blue-400);
  background:var(--blue-500);
  color:#068e8e;
}
#clearSearch { background:#fff; color:#333; border-color:#ddd; }
.search-results { display:none; max-height:260px; overflow:auto; background:#fff; border:1px solid #ddd; border-radius:10px; margin-top:6px; }
.search-results.open { display:block; }
.search-results > div { padding:10px 12px; border-bottom:1px solid #eee; cursor:pointer; }
.search-results > div:hover { background:var(--blue-50); }
.search-results .sub { font-size:12px; color:#666; }
.service-filters { display:flex; flex-wrap:wrap; gap:8px; }
.pill { pointer-events:auto; background:#fff; color:#0b1324; border:1px solid var(--blue-300); border-radius:999px; padding:6px 10px; font-size:13px; }
.pill.active { background:var(--blue-500); color:#fff; border-color:var(--blue-500); }

/* Popup card */
.maplibregl-popup-content { padding:0 !important; border-radius:14px; overflow:hidden; box-shadow:0 10px 30px rgba(0,0,0,.25); }
.card { min-width:260px; max-width:320px; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial; }
.card .logo { display:block; width:100%; max-height:120px; object-fit:contain; background:#fafafa; border-bottom:1px solid #eee; }
.card .title { font-weight:700; padding:12px 14px 4px; font-size:16px; }
.card .addr { padding:0 14px 10px; color:#555; font-size:13px; }
.card .svc { padding:8px 14px; display:flex; flex-wrap:wrap; gap:6px; }
.badge { background:var(--blue-50); color:#0b1324; border:1px solid var(--blue-200); border-radius:999px; padding:4px 8px; font-size:12px; }
.card .actions { display:flex; gap:8px; padding:10px 14px 14px; }
.btn { text-decoration:none; border:1px solid var(--blue-300); padding:8px 10px; border-radius:10px; font-size:13px; background:#fff; color:#0b1324; }
.btn.primary { background:var(--blue-500); color:#fff; border-color:var(--blue-500); }
.notes { padding:0 14px 14px; color:#333; font-size:13px; }

/* Mobile bottom sheet */
.mobile-sheet { position:fixed; left:0; right:0; bottom:-60%; background:#fff; border-radius:16px 16px 0 0; box-shadow:0 -10px 30px rgba(0,0,0,.2); padding:10px 10px 20px; transition:transform .25s ease, bottom .25s ease; transform: translateY(60%); pointer-events:auto; z-index:3; }
.mobile-sheet.open { bottom:0; transform: translateY(0); }
.mobile-sheet .sheet-close { position:absolute; right:14px; top:10px; background:transparent; border:0; font-size:14px; cursor:pointer; }

/* MapLibre controls tweak */
.maplibregl-ctrl-group button { border-radius:8px !important; }
.maplibregl-ctrl-top-right { margin-right:8px; margin-top:8px; }
  


/* =========================
   SEARCH CLUSTER + MAP CTRL
   ========================= */

/* csak a kereső komponensek legyenek kattinthatók */
.map-ui { pointer-events: none; }
.map-controls, .search-cluster, .search-wrap, .search-row, .home-btn { pointer-events: auto; }


/* pozícionálás: mobilon felül full width-hez közeli; desktopon bal felül */
.search-cluster{
  position: fixed;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 10px;
  top: 14px; left: 14px; right: 14px;
  isolation: unset;             /* dropdown rétegzés stabil */
}
@media (min-width: 992px){
  .search-cluster{ top: 22px; left: 22px; right: auto; }
}

/* a Home gomb kerüljön BALRA – markuphoz nem kell nyúlni */
.search-cluster .home-btn{ order: -1; }

/* a bubble+dropdown együtt méreteződik, max 600px */
.search-wrap{
  position: relative;
  flex: 1 1 auto;
  width: 100%;
  max-width: 900px;               /* <= kért maximum */
  overflow: visible; 
  box-shadow: 0 6px 12px rgba(0,0,0,.12);             /* dropdown ne vágódjon le */
}

/* --- BUBBLE (search-row) --- */
.search-row{
  position: relative;
  display: flex;
  align-items: center;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(0,0,0,.12);
  padding: 0;                     /* input tölti ki teljesen */
  min-height: var(--search-h);    /* fix magasság a gombokhoz igazítva */
}

/* ha van találat, a dropdown ráfekszik (alsó sarkak „egyenesek”) */
.search-wrap.has-results .search-row{
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

/* teljes szélességű input; hely a jobb oldali nagyító gombnak */
#partnerSearch{
  flex: 1 1 auto;
  min-width: 0; width: 100%;
  background: transparent;
  border: none; outline: none;
  font-size: 16px;
  padding: 12px 56px 12px 14px;
  border-radius: 14px;
}
#partnerSearch:focus{ box-shadow: inset 0 0 0 2px rgba(6,142,142,.25); }

/* nagyító gomb az inputon belül */
.search-btn{
  position: absolute;
  right: 8px; top: 50%;
  transform: translateY(-50%);
  width: calc(var(--search-h) - 6px);
  height: calc(var(--search-h) - 6px);
  border: none; border-radius: 10px;
  background: #068e8e; color: #fff;
  display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer; z-index: 1;
}
.search-btn:hover{ filter: brightness(0.95); }
.search-btn:active{ transform: translateY(-50%) translateY(1px); }

/* --- DROPDOWN: a bubble aljához tapad, varrat nélkül; egyesével listázva --- */
.search-results.horizontal{
  position: absolute; left: 0; right: 0; top: 100%;
  margin-top: -1px;               /* felső „csík” eltűnik */
  background: #fff;
  border: 1px solid rgba(0,0,0,.08); border-top: none;
  border-radius: 0 0 14px 14px;
  box-shadow: 0 16px 32px rgba(0,0,0,.14);
  max-height: 52vh; overflow-y: auto; overflow-x: hidden;
  display: flex; flex-direction: column; gap: 8px;
}
.search-results.horizontal > *{
  flex: 0 0 auto; width: 100%; min-width: 100%;
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 10px;
  padding: 10px 12px; text-align: left;
}

/* --- HOME (ház) gomb: fehér háttér, 7px kerekítés, a bubble-lel AZONOS magasság --- */
.home-btn{
  flex: 0 0 auto;
  width: var(--search-h); height: var(--search-h);
  border-radius: 7px; background: #fff; color: #111;
  box-shadow: 0 6px 12px rgba(0,0,0,.12);
  display: inline-flex; align-items: center; justify-content: center;
  text-decoration: none;
}
.home-btn:hover{ filter: brightness(0.98); }
.home-btn:active{ transform: translateY(1px); }

/* pszeudo-elemek/árnyékok, amik „csíkot” okozhatnak */
.search-row::before, .search-row::after,
.search-results.horizontal::before{ content:none !important; }

/* --- MAPLIBRE: interaktív gombok elrejtése (zoom, fullscreen, compass, geolocate) --- */
.maplibregl-ctrl-zoom,
.maplibregl-ctrl-fullscreen,
.maplibregl-ctrl-compass,
.maplibregl-ctrl-geolocate { display: none !important; }


/* (Az attributiont nem rejtem el, hogy licenc-kompatibilis maradjon.) */
/* --- Searchbar finomhangolás --- */



/* 2) Home ikon = bubble magassága; gap felezése */
:root { --search-h: 45px; }           /* maradhat ez az érték, ha jó a magasság */
.search-cluster{
  gap: 5px;                           /* fele akkora, mint a korábbi 10px */
}
.search-row{
  height: var(--search-h);            /* fix, hogy a bubble magasságával egyezzen */
}
.home-btn{
  width: 69px;
  height: 69px;            /* pontosan a bubble magassága */
}

/* 3) Kereső ikon doboz „jobbra tolva”, szinte a mező végéhez */
#partnerSearch{
  padding-right: 69px;                /* több hely a jobbra tolt gombnak */
}
.search-btn{
  right: 4px;                         /* 8px -> 4px: közelebb a jobb szélhez */
  width: calc(var(--search-h) - 6px);
  height: calc(var(--search-h) - 6px);
}
.home-btn svg {
  width: 25px;   /* alapból 18px volt — itt növelheted */
  height: 25px;
}


/* ===== Popup kártya – alap ===== */
.pc-card{
  --pc-bg:#fff; --pc-fg:#101828; --pc-muted:#667085; --pc-accent:#068e8e;
  --pc-border:rgba(0,0,0,.08); --pc-shadow:0 12px 30px rgba(16,24,40,.12);
  --pc-radius:16px;
  width: clamp(260px, 38vw, 360px);
  background:var(--pc-bg);
  color:var(--pc-fg);
  border:1px solid var(--pc-border);
  border-radius:var(--pc-radius);
  box-shadow:var(--pc-shadow);
  overflow:hidden;
  position:relative;
  max-height: calc(100vh - 32px);
  display:flex; flex-direction:column;
}

/* Mobil: 9:12 arány */
@media (max-width: 991px){
  .pc-card{ width:min(92vw, 360px); aspect-ratio: 9 / 14; }
}

/* Desktop: 10:16 arány */
@media (min-width: 992px){
  .pc-card{
    height: min(72vh, 720px);
    width: calc(min(72vh, 720px) * 9 / 14);
    aspect-ratio: 9 / 14;
  }
}

/* Fejrész + avatar + címek */
.pc-head{ padding-top:16px; text-align:center; }
.pc-avatar{
  width:64px; height:64px; border-radius:999px; object-fit:cover;
  border:1px solid var(--pc-border); box-shadow:0 4px 14px rgba(0,0,0,.06);
  display:block; margin:0 auto 10px;
}
.pc-name{ margin:0; font-weight:800; font-size:19px; line-height:1.2; }
.pc-loc{ display:none !important; }
.pc-info{ padding:6px 16px 0; }
.pc-addr{ font-size:14px; margin-top:6px; color:#101828; }


/* Mini infó */
.pc-mini{ padding:16px; display:grid; grid-template-columns:56px 1fr; gap:6px; align-items:center; min-height:96px; }
.pc-mini-ico{ width:27px; height:27px; object-fit:contain; }
.pc-mini-text p{ margin:4px 0 0; font-size:13px; color:#667085; }

/* Gombok */
.pc-cta{ padding:6px 16px 16px; display:grid; gap:10px; margin-top:auto; }
.pc-btn{
  height:44px; width:100%;
  border-radius:10px; border:1px solid rgba(0,0,0,.08);
  display:flex; align-items:center; justify-content:center; gap:3px;
  background:#fff; color:#101828; text-decoration:none; font-weight:600; cursor:pointer;
  font-size: 16px;
}
.pc-btn:hover{ filter:brightness(.98); }
.pc-btn:active{ transform:translateY(1px); }
.pc-btn-primary{ background:#068e8e; border-color:transparent; color:#fff; }
.pc-btn img{ order:2; margin-left:3px; }

/* ===== MapLibre popup beállítások ===== */

/* A „csőr” ne jelenjen meg */
.maplibregl-popup-tip{ display:none !important; }

/* A popup tartalma átlátszó háttér nélkül, padding nélkül – a kártya kezeli */
.maplibregl-popup-content{ padding:0 !important; background:transparent !important; }


/* Mobil: teljesen középre helyezés, fix pozícióban */
@media (max-width: 991px){
  .maplibregl-popup{
    position: fixed !important;
    top: 50% !important; left: 50% !important; right:auto !important; bottom:auto !important;
    transform: translate(-50%, -50%) !important;
  }
}

/* Erős z-index, kattintható map vászon */
#map, #map .maplibregl-canvas{ display:block !important; opacity:1 !important; }
#map .maplibregl-canvas{ pointer-events:auto !important; z-index:1 !important; }
.maplibregl-popup{ pointer-events:auto !important; z-index:70 !important; }

/* ===== Egységes, BAL FELSŐ sötétszürke X gomb (mobil + desktop) ===== */
.maplibregl-popup-close-button{
  position:absolute !important;
  top:10px !important; left:10px !important; right:auto !important;
  width:34px !important; height:34px !important; line-height:30px !important;
  border-radius:10px !important;
  background:#333 !important; color:#fff !important; border:0 !important;
  box-shadow:0 6px 18px rgba(0,0,0,.25) !important;
  font-size:20px !important; font-weight:700 !important;
  opacity:1 !important; cursor:pointer !important;
}

/* Bármely lebegő UI ne fedje a mapot feleslegesen */
.map-ui, .search-cluster, .map-header { pointer-events:none; }
.search-cluster *, .map-header * { pointer-events:auto; }
//* Desktop: MapLibre pozícionál, ne írjuk felül transformmal */
@media (min-width: 992px){
  .maplibregl-popup{
    position: absolute !important;
    transform: none !important;     /* fontos: ne toljuk át kézzel */
    max-width: none !important;      /* ne vágja le 240px-nél */
  }
  .pc-card{
    width: 380px;                    /* a JS is ezzel számol (cardW) */
    max-height: calc(100vh - 48px);
    aspect-ratio: auto;              /* ne kényszerítsen arányt */
    overflow: auto;
  }
}

/* Mobil: marad a középre húzott overlay */
@media (max-width: 991px){
  .maplibregl-popup{
    position: fixed !important;
    top: 50% !important; left: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
}
/* Név és alatta a pontos cím – középre igazítva */
.pc-head{ padding-top:16px; padding-bottom: 0px; text-align:center; }
.pc-name{ margin:0; font-weight:800; font-size:19px; line-height:1.2; }
.pc-info{ padding:6px 16px 0; text-align:center; }
.pc-addr{ font-size:14px; margin-top:6px; color:#101828; }

/* Szolgáltatás ikonok: max 3 / sor, első KÖZÉPEN, 2. BALRA, 3. JOBBRA */
.pc-skills{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  justify-items:center;
  align-items:center;
}

/* 1–3 ikon speciális helyzése az első sorban */
.pc-skills > :nth-child(1){ grid-column: 2; } /* első ikon középen */
.pc-skills > :nth-child(2){ grid-column: 1; } /* második balra */
.pc-skills > :nth-child(3){ grid-column: 3; } /* harmadik jobbra */
/* 4. ikontól természetes automatikus törés következő sorokba */

/* Ikon méretek (ha már vannak) */
.pc-skill{ width:36px; height:36px; border-radius:999px; 
 display:flex; align-items:center; justify-content:center; }
.pc-skill svg{ width:36px; height:36px;  }

/* Popup bezáró gomb: JOBB FELSŐ sarok */
.maplibregl-popup-close-button{
  position:absolute !important;
  top:10px !important; right:10px !important; left:auto !important;
  width:34px !important; height:34px !important; line-height:30px !important;
  border-radius:10px !important;
  background:#333 !important; color:#fff !important; border:0 !important;
  box-shadow:0 6px 18px rgba(0,0,0,.25) !important;
  font-size:20px !important; font-weight:700 !important; opacity:1 !important;
  z-index: 120060;
}

/* Richtext infó doboz (ikon kattintásra) */
.pc-rt {
  position: sticky;        /* mindig a kártya tetején marad */
  top: 0;
  left: 0; right: 0;
  display: none;
  background: #fff;
  border-bottom: 1px solid rgba(0,0,0,.08);
  padding: 12px 44px 12px 14px; /* hely a jobb oldali X-nek */
  z-index: 12010;
}
.pc-rt.open { display: block; }
.pc-rt h4 { margin: 0 0 6px; font-size: 15px; font-weight: 800; }
.pc-rt .rt-body { font-size: 13px; color: #333; }

/* Jobb oldali fekete X gomb (csak a richtexthöz) */
.pc-rt-close{
  position: absolute;
  right: 10px; top: 10px;
  width: 30px; height: 30px;
  border: 0; border-radius: 8px;
  background:#000; color:#fff; font-weight: 800; font-size: 16px;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}

/* „Ellenőrzött” jelzés a név alatt */
.pc-verified{
  margin: 6px auto 0;
  display: inline-flex;           /* maradhat inline-flex */
  align-items: center;
  gap: 6px;
  font-size: 13px; color: #6b7280;
} 
.pc-verified svg{ width: 16px; height: 16px; display: block; }

/* Ikonok 1.3× nagyobbak + kattinthatók */
.pc-skill{ 
  width: calc(36px); 
  height: calc(36px);
  cursor: pointer;
}
.pc-skill svg{ 
  width: calc(24px); 
  height: calc(24px);
}

/* Mobil: teljes képernyős élmény, mögöttes tartalom ne scrollozzon be */
@media (max-width: 991px){
  html, body{ height: 100%; overflow: hidden; overscroll-behavior: none; background: #000; }
  .map-container{ position: fixed; inset: 0; }
  .map-ui{ position: fixed; inset: 0; }
  /* biztos ami biztos: minden UI a map fölött maradjon */
  .map-ui, .search-cluster, .mobile-sheet { z-index: 12005; }
}

/* Popup bezáró gomb legyen mindegyik fölött */
.maplibregl-popup-close-button{
  z-index: 200020 !important;
  position: absolute !important;
  top: 10px !important; right: 10px !important;
}
/* Email „buborék” a Verified alatt */
.pc-email{
  display: block;                 /* inline-flex helyett BLOCK -> új sor */
  width: max-content;             /* középre igazításhoz */
  margin: 6px auto 0;             /* középre */
  padding: 6px 10px;
  border-radius: 999px;
  background: #f7f7f7;
  border: 1px solid rgba(0,0,0,.08);
  color: #0b1324; font-size: 13px;
}
.pc-email-ico{ width:15px; height:15px; object-fit:contain; vertical-align:middle; margin-right:0px; }
.pc-email-link{ color: inherit; text-decoration: none; }
.pc-email-link:hover{ text-decoration: underline; }

.search-cluster,
.search-results { z-index: 1000 !important; } /* jóval a popup (200000) alatt */
/* Popup mindig FIXED és nagyon magas z-index, hogy a search UI fölé kerüljön */

.maplibregl-popup-content{ z-index: 2001 !important; }
.maplibregl-popup-close-button{ z-index: 200002 !important; }
@media screen and (max-width: 849px) {
  /* Popup mindig fixed + legfelül */
.maplibregl-popup{
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 200000 !important;
}
.maplibregl-popup-content{ z-index: 200001 !important; }
.maplibregl-popup-close-button{ z-index: 200002 !important; }
}
/* Szolgáltatás ikonok: 3 oszlop, fix 10px gap, oszlop = tartalom szélesség */
.pc-skills{
  padding: 1px 1px 1px;
  display: grid;
  grid-template-columns: repeat(3, max-content); /* <= tartalom-alapú */
  justify-content: center;                       /* középre hozva az egész sort */
  align-items: center;                             /* <= fix gap */
}

/* Ikon „korong” fix méret + nincs automargó */
.pc-skill{
  width: 56px;
  height: 56px;
  border-radius: 999px;
  display: flex; align-items: center; justify-content: center;
  padding: 0; margin: 0;                         /* nehogy margin okozzon eltérést */
  box-sizing: border-box;
  cursor: pointer;
}
.pc-skill img, .pc-skill svg{
  width: 56px; height: 56px; object-fit: contain;
}

/* A „ghost” helykitöltő tényleg vegye fel a helyet (pl. 1-2 ikon esetén) */
.pc-skill.ghost{ visibility: hidden; }

@media (max-width: 991px){
  .maplibregl-popup{
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 300000 !important;    /* biztosan a UI fölött */
  }
  .maplibregl-popup-content{ z-index: 300001 !important; }
  .maplibregl-popup-close-button{ z-index: 300002 !important; }
}
/* Nagyító gomb a mezőn belül: kék "kocka", fehér ikon */
.search-btn{
  position: absolute;
  right: 6px; 
  top: 50%;
  transform: translateY(-50%);
  width: calc(var(--search-h) - 6px);
  height: calc(var(--search-h) - 6px);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 11px;              /* lekerekített kocka */
  background: #0d6efd;              /* képen látható kék tónus */
  color: #068e8e;                       /* ikon fehér (SVG currentColor) */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 
    0 1px 0 rgb(5, 39, 255) inset;   /* enyhe belső fény */
  cursor: pointer;
  z-index: 2000;                    /* a buborékon belül legfelül maradjon */
}
.search-btn:hover{ filter: brightness(.96); }
.search-btn:active{ transform: translateY(-50%) translateY(1px); }
#partnerSearch{ padding-right: 69px; }
.search-cluster{ isolation: unset; }

/* Szolgáltatás ikonok rácsa (3 oszlop, középre rendezve) */
.pc-skills{
  padding: 1px 1px 1px;
  display: grid;
  grid-template-columns: repeat(3, max-content);
  justify-content: center;
  align-items: center;
  column-gap: 3px;
  row-gap: 0px;
}

/* Ikon „korong” fix 56×56 + FEKETE körvonal */
.pc-skill{
  width: 50px;
  height: 50px;
  border-radius: 999px;
  display: flex; align-items: center; justify-content: center;
  padding: 0; margin: 0;
  box-sizing: border-box;
  cursor: pointer;
}
.pc-skill img, 
.pc-skill svg{
  width: 56px; 
  height: 56px; 
  object-fit: contain;
}
.pc-skill.ghost{ visibility: hidden; }
/* Név + meta-badge egy sorban, 0 gap-pel */
.pc-name{
  margin:0; 
  font-weight:800; 
  font-size:19px; 
  line-height:1.2;
  display: inline-flex;
  align-items: baseline;
  gap: 0;                       /* 0 gap kérésre */
}

/* A Meta ikon a szöveg méretéhez igazítva */
.pc-meta-badge{
  display:inline-block;
  width: 16px;                   /* betűmérettel azonos vizuális méret */
  height: 16px;
  margin-left: 4px;               /* 0 gap */
  vertical-align: baseline;
}
/* Mobil: a kártya az alsó harmadban, a safe-area fölött */
@media (max-width: 991px){
  .maplibregl-popup{
    position: fixed !important;
    top: auto !important;
    bottom: calc(env(safe-area-inset-bottom) + 9px) !important; /* ~közel az aljához */
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 300000 !important; /* biztosan a search UI fölött */
    max-width: none !important;
  }
  .maplibregl-popup-content{ z-index: 300001 !important; }
  .maplibregl-popup-close-button{
    top: 8px !important; right: 8px !important; left: auto !important;
    z-index: 300002 !important;
  }
}
@media (min-width: 849px) {
 .pc-skill svg {
   width: 10px !important; 
  height: 10px !important; 
  object-fit: contain;
 } 
 .pc-skill-img {
  width: 56px !important;
  height: 56px !important;
}
}
@media (max-width: 849px) {
 .pc-skill  {
   width: 70px !important; 
  height: 70px !important; 
  object-fit: contain;
 } 
 .pc-skill-img {
  width: 70px !important;
  height: 70px !important;
}
}
/* Buborék finomabb árnyékkal – nem lóg rá a kártyára */
.search-row{
  position: relative;
  display: flex;
  align-items: center;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 4px 12px rgba(0,0,0,.10);  /* korábbi 0 10px 28px helyett */
  padding: 0;
  min-height: var(--search-h);
}
@media (max-width: 991px){
  .search-row{ box-shadow: 0 3px 10px rgba(0,0,0,.10); } /* még visszább mobilon */
}

/* Nagyító gomb: kék kocka, fehér ikon – mindig a buborék fölött */
.search-row .search-btn{
  position: absolute;
  right: 6px; top: 50%;
  transform: translateY(-50%);
  width: calc(var(--search-h) - 6px);
  height: calc(var(--search-h) - 6px);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 11px;
  background: #0d6efd !important;   /* kék doboz */
  color: #fff !important;            /* ikon fehér (SVG currentColor) */
  display: inline-flex; align-items: center; justify-content: center;
  box-shadow: 0 2px 6px rgba(0,0,0,.20);
  cursor: pointer;
  z-index: 2000;
}
.search-row .search-btn:hover{ filter: brightness(.96); }
.search-row .search-btn:active{ transform: translateY(-50%) translateY(1px); }

/* elég hely a gombnak */
#partnerSearch{ padding-right: 74px; }

/* ne legyen külön stacking context */
.search-cluster{ isolation: unset; }
/* javaslatlista a buborék alatt maradjon, és ne vágja a popupot */
.search-results{ z-index: 1200; }
/* EREDETI: box-shadow:0 8px 24px rgba(13,110,253,.10);  */
/* === SEARCH: mindig maradjon kerek + első nyitásnál is kattintható === */

/* A buborék alsó sarkait NE egyenesítsük ki találatoknál sem */
.search-wrap.has-results .search-row{
  border-bottom-left-radius:14px !important;
  border-bottom-right-radius:14px !important;
}

/* A javaslatdoboz külön álló kerekített panel legyen */
.search-results.horizontal{
  position: absolute; left: 0; right: 0; top: 100%;
  margin-top: 0 !important;                 /* leválasztjuk a buborékról */
  background: #fff;
  border: 1px solid rgba(0,0,0,.08); 
  border-radius: 14px !important;             /* teljesen kerek */
  box-shadow: 0 16px 32px rgba(0,0,0,.14);
  max-height: 52vh; 
  overflow-y: auto; 
  overflow-x: hidden;
  display: none;                               /* az .open kapcsolja */
}
.search-results.horizontal.open{ display:block !important; }

/* Az overlay alapból non-interaktív; itt visszaadjuk a klikkelhetőséget */
.search-results,
.search-wrap,
.search-row,
.search-cluster,
.home-btn{
  pointer-events: auto !important;
}

/* Biztonsági rétegzés (a popup fölé nem kell mennie) */
.search-results{ z-index: 1200 !important; }


  /* ne húzza le a bubble sarkait */
  body.has-popup .search-wrap.has-results .search-row,
  body[data-suggest-locked="1"] .search-wrap.has-results .search-row{
    border-bottom-left-radius:14px !important;
    border-bottom-right-radius:14px !important;
  }
}
/* === INFO CARD mini-blokk – resilient layout (NO :has) === */
.pc-mini{
  display: grid;
  grid-template-columns: 27px 1fr;  /* ikon + szöveg oszlop mindig megvan */
  align-items: center;
  column-gap: 0px;                  /* ikon–leírás közti rés */
  row-gap: 6px;                     /* h3 és a második sor között */
  min-height: 96px;
}

/* wrapper „kilapítva”, hogy h3 és p közvetlen grid-gyerek legyen */
.pc-mini-text{
  display: contents;
}

/* CÍM: felül, mindkét oszlopon át, középre igazítva */
.pc-mini-text h3{
  grid-column: 1 / -1;   /* így akkor is szép, ha nincs p/ikon */
  grid-row: 1;
  justify-self: center;
  text-align: center;
  margin: 0;
  font-size: 16px;
  font-weight: 800;
}

/* IKON: második sor, bal oszlop – nincs extra margó (közelséget a column-gap adja) */
.pc-mini-ico{
  grid-column: 1;
  grid-row: 2;
  width: 27px;
  height: 27px;
  object-fit: contain;
  margin: 0;              /* fontos: ne told a szöveg felé külön margóval */
}

/* LEÍRÁS: második sor, a 2. oszlopban, balra zártan */
.pc-mini-text p{
  grid-column: 2;         /* ha van p, mindig a 2. oszlopba megy az ikon mellé */
  grid-row: 2;
  margin: 4px 0 0 0;   /* jobb oldali légzés, balra 0, hogy egyvonalban legyen */
  font-size: 13px;
  color: #667085;
  text-align: left;
}
/* Ha nincs ikon (csak h3), legyen 1 oszlop */
.pc-mini.pc-mini--noicon{
  grid-template-columns: 1fr;
}
.pc-mini.pc-mini--noicon .pc-mini-text p{
  grid-column: 1;               /* 2. oszlop helyett az 1.-be kerüljön */
  margin-left: 0;               /* igazodjon a kártya bal széléhez */
}
