/* league-spartan-regular - latin_latin-ext */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'League Spartan';
  font-style: normal;
  font-weight: 400;
  src: url('/modul/Custom/fonts/league-spartan-v11-latin_latin-ext-regular.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* league-spartan-500 - latin_latin-ext */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'League Spartan';
  font-style: normal;
  font-weight: 500;
  src: url('/modul/Custom/fonts/league-spartan-v11-latin_latin-ext-500.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* league-spartan-600 - latin_latin-ext */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'League Spartan';
  font-style: normal;
  font-weight: 600;
  src: url('/modul/Custom/fonts/league-spartan-v11-latin_latin-ext-600.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* league-spartan-700 - latin_latin-ext */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'League Spartan';
  font-style: normal;
  font-weight: 700;
  src: url('/modul/Custom/fonts/league-spartan-v11-latin_latin-ext-700.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* league-spartan-900 - latin_latin-ext */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'League Spartan';
  font-style: normal;
  font-weight: 900;
  src: url('/modul/Custom/fonts/league-spartan-v11-latin_latin-ext-900.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* color variable function :
LESS provides several functions with quite descriptive keywords that we can use to manipulate colors:
lighten()
darken()
saturate()
desaturate()
fadein()
fadeout()
fade()
spin()
mix()
*/
:root {
  /* ============================================================
     ŠABLÓNA 1b — DVOJVRSTVOVÉ TOKENY (Figma ↔ LESS 1:1)
     Vrstva 1 = PRIMITÍVA (surové škály). Rebrand = zmena TU.
     Vrstva 2 = SÉMANTIKA (aliasy). Komponenty konzumujú TOTO.
     Paleta: krémová + hlboká zelená + oranžový akcent (quiet luxury).
     ============================================================ */
  /* --- PRIMITÍVA --- */
  --green-50: #ECF7F1;
  --green-400: #42A876;
  --green-500: #2E8B5C;
  --green-700: #1D5638;
  --green-800: #173D2B;
  --green-900: #102A1D;
  --orange-400: #F0A25A;
  --orange-500: #E8863B;
  --orange-600: #CF7328;
  --cream: #F5F1E8;
  --cream-2: #EDE8DC;
  --cream-mute: #CFC8B8;
  /* tlmený text na tmavom pozadí */
  --green-line: #2C4A3A;
  /* tenká čiara na tmavej zelenej */
  --warm-white: #FBFAF5;
  --warm: #5B564E;
  --mute: #6B665B;
  /* drobný text na krémovej - kontrast AA 4,5:1 aj na cream-2 (#8A857A mal 3,3:1) */
  --line: #DDD6C6;
  --ink: #1C1C1A;
  /* --- SÉMANTIKA (ponechané slot-mená, rebrand-friendly) --- */
  --white-color: var(--warm-white);
  /* teplá biela (nie čistá #fff) */
  --dark-color: var(--warm);
  /* tlmený text / odkazy */
  --white-darken-5: var(--cream);
  /* krémový povrch */
  --silver-color: var(--cream-2);
  /* krémový povrch (tmavší) */
  --gray-color: var(--mute);
  /* jemný text */
  --first-color: var(--green-800);
  /* brand tmavá — hero, nadpisy */
  --second-color: var(--green-500);
  /* brand mid — akcenty, hover */
  --three-color: var(--cream);
  /* povrch — pozadie sekcií */
  --four-color: var(--cream-2);
  /* povrch — striedavý pás */
  --five-color: var(--cream);
  /* povrch */
  --six-color: var(--warm-white);
  /* povrch — karty */
  --seven-color: var(--warm);
  /* text tlmený */
  --eight-color: var(--mute);
  /* text jemný */
  --nine-color: var(--green-500);
  /* doplnok */
  --ascend-color: var(--orange-500);
  /* akcent (legacy meno) */
  --accent-color: var(--orange-500);
  /* akcent — CTA, kategórie, bodky */
  --accent-color-hover: var(--orange-600);
  /* prístupnosť (audit 17. 10.): oranžová #E8863B má s bielou 2,65:1 a na krémovej 2,5:1 - pod normou AA.
     Plocha a ikony ostávajú v značkovej oranžovej, TEXT na nej je tmavý a oranžový TEXT na svetlej je tmavší. */
  --on-accent: var(--ink);
  /* text na oranžovej ploche - 6,4:1 */
  --accent-text: #A9561A;
  /* oranžový text na krémovej/bielej - 4,6-5:1 */
  --line-color: var(--line);
  /* tenké čiary, bordre kariet */
  /* tmavé sekcie (footer, stats pás) */
  --dark-surface: var(--green-900);
  /* pozadie tmavej sekcie */
  --on-dark-text: var(--cream);
  /* výrazný text na tmavej */
  --on-dark-text-mute: var(--cream-mute);
  /* tlmený text/odkazy na tmavej */
  --on-dark-line: var(--green-line);
  /* oddeľovacia čiara na tmavej */
  --grey-0: transparent;
  --grey-50: #FAFAF9;
  --grey-100: #F5F4F2;
  --grey-200: #ECEAE6;
  --grey-300: #DDD6C6;
  --grey-400: #C9C2B4;
  --grey-500: #A8A091;
  --grey-600: #857E70;
  --grey-700: #5B564E;
  --grey-800: #38352F;
  --grey-900: #1C1C1A;
  --grey-1000: #141310;
  --black-color: var(--ink);
  --first-font: "Fraunces", "Georgia", serif;
  /* display — nadpisy */
  --second-font: "Manrope", system-ui, sans-serif;
  /* body */
  --three-font: "Fraunces", "Georgia", serif;
  /* display alt */
  --four-font: "Manrope", system-ui, sans-serif;
  /* body alt */
  --font-grad-2: linear-gradient(270deg, #FFF6D2 -47.39%, #CEA445 100%);
  --font-grey: var(--warm);
  /* Tlačidlá 1b: first = zelené solid, second = oranžový akcent,
     three = zelený outline, four = ghost (krémový hover) */
  --btn-first-bg: var(--first-color);
  --btn-first-bg-hover: var(--green-900);
  --btn-first-color: var(--white-color);
  --btn-first-color-hover: var(--white-color);
  --btn-second-bg: var(--accent-color);
  --btn-second-bg-hover: var(--accent-color-hover);
  --btn-second-color: var(--on-accent);
  --btn-second-color-hover: var(--on-accent);
  --btn-three-bg: var(--first-color);
  --btn-three-bg-hover: var(--first-color);
  --btn-three-color: var(--first-color);
  --btn-three-color-hover: var(--white-color);
  --btn-four-bg: var(--grey-0);
  --btn-four-bg-hover: var(--cream-2);
  --btn-four-color: var(--first-color);
  --btn-four-color-hover: var(--first-color);
  --header-font: clamp(2.9rem, calc(4vw + 1rem), 4rem);
  --header-font-lh: 125%;
  --h1: clamp(2.2rem, 5vw, 3rem);
  --h1-lh: normal;
  --h2: clamp(2rem, 3.1vw, 2.25rem);
  /* max 36px - o stupeň pod --h1 (48px), aby nadpis sekcie nesúperil s nadpisom stránky */
  --h2-lh: normal;
  --h3: clamp(1.8rem, calc(1.8vw + 1rem), 2rem);
  --h3-lh: normal;
  --h4: 1.5rem;
  --h4-lh: clamp(1.5rem, calc(1.571vw + 1rem), 1.8rem);
  --h5: 1.125rem;
  --h5-lh: 150%;
  --p-body-big: 1.25rem;
  --p-body-big-lh: 130%;
  --p-body: 1rem;
  --p-body-lh: 150%;
  --p-caption: 0.875rem;
  --p-caption-lh: 170%;
  /* ---- zvislý rytmus sekcií ----
     Každá sekcia si nesie odstup SAMA, stránka medzi widgety nič nepridáva - sekcie
     sa dajú skladať v ľubovoľnom poradí.
     - farebný pás (štatistiky, CTA, recenzie): celý odstup VNÚTRI, pásy sa dotýkajú
     - krémová sekcia (text, O nás, kontakt, galéria): polovica hore aj dole ->
       dve krémové za sebou = celý odstup, krémová vedľa pásu = polovica */
  --section-y: clamp(3.5rem, 7vw, 6rem);
  --section-y-half: calc(var(--section-y) / 2);
  /* ---- bočný okraj obsahu na mobile ----
     Jedna hodnota pre kontajnery, navbar aj hero - ľavé hrany všetkých sekcií lícujú.
     Platí pod 768 px, nad tým má kontajner pevnú šírku a okraj je mimo neho. */
  --page-x: 1.25rem;
  /* 20px */
  --trans-100: all 100ms cubic-bezier(0.4, 0, 1, 1);
  --trans-150: all 150ms cubic-bezier(0.4, 0, 1, 1);
  --trans-200: all 200ms cubic-bezier(0.4, 0, 1, 1);
  --trans-250: all 250ms cubic-bezier(0.4, 0, 1, 1);
  --trans-300: all 300ms cubic-bezier(0.4, 0, 1, 1);
  --trans-350: all 350ms cubic-bezier(0.4, 0, 1, 1);
  --trans-500: all 500ms cubic-bezier(0.4, 0, 1, 1);
  /* zaoblenie - tri stupne pre celú šablónu (audit 17. 10.: bolo 22 rôznych hodnôt);
     sm = polia, malé prvky, md = karty a panely, lg = veľké fotky a hlavné bloky. Kapsule ostávajú 5rem. */
  --radius-sm: 0.625rem;
  /* 10px */
  --radius-md: 1.125rem;
  /* 18px */
  --radius-lg: 1.375rem;
  /* 22px */
  --border-radius: var(--radius-md);
  --shadow-0: none !important;
  --shadow-1: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
  --shadow-2: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px;
  --shadow-3: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
  --shadow-4: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
  --shadow-5: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  --shadow-card-1: 0px 2px 30px 0px rgba(109, 119, 119, 0.1);
  --shadow-card-2: 0px 2px 50px 0px rgba(0, 0, 0, 0.08);
  --shadow-red: 0 10px 15px -10px rgba(201, 34, 21, 0.15);
  --shadow-red-2: 0px 15px 30px -10px rgba(201, 34, 21, 0.25);
  --card-shadow-default: drop-shadow(0 1px 7px rgba(154, 154, 154, 0.15));
  --card-shadow-hover: drop-shadow(0px 15px 20px rgba(115, 115, 115, 0.25));
}
a:where(:not(.btn)),
a:where(:not(.btn)):hover {
  color: var(--dark-color);
}
.btn-shadow-1 {
  box-shadow: 0 8px 22px -6px rgba(23, 61, 43, 0.35);
}
.btn {
  display: flex;
  padding: 1rem 1.125rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  color: var(--first-color, #063024);
  font-family: var(--second-font);
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  /* 1rem */
  /* klávesnica: obrys len pri ovládaní klávesnicou (myš ho nevidí), inak by nebolo vidno, kde je fokus */
}
.btn:hover {
  transition: var(--trans-200);
}
.btn:focus {
  outline: none !important;
}
.btn:active:focus,
.btn:active:hover {
  outline: none !important;
}
.btn:active,
.btn:active:focus {
  outline: none !important;
}
.btn:focus-visible {
  outline: 2px solid var(--accent-color) !important;
  outline-offset: 2px;
}
.btn.btn-rounded,
.btn.rounded {
  border-radius: 5rem;
}
.btn.btn-small {
  padding: 1.0625rem 1rem;
}
.btn-first {
  color: var(--btn-first-color);
  background: var(--btn-first-bg);
  display: flex;
  border: 1px solid var(--btn-first-bg);
}
.btn-first:hover,
.btn-first:focus,
.btn-first:visited:hover,
.btn-first:active:focus,
.btn-first:active:hover {
  color: var(--btn-first-color-hover);
  background: var(--btn-first-bg-hover);
  border: 1px solid var(--btn-first-bg-hover);
  box-shadow: 0 8px 22px -6px rgba(23, 61, 43, 0.35);
}
.btn-first:active {
  color: var(--btn-first-color-hover);
  background: var(--btn-first-bg-hover);
  border: 1px solid transparent;
  border-right: 1px solid var(--four-color);
}
.btn-first:visited {
  color: var(--btn-first-color);
  background: var(--btn-first-bg);
  border: 1px solid var(--btn-first-bg);
}
.btn-outline-first {
  color: var(--btn-first-color);
  background: transparent;
  border: 1px solid var(--btn-first-bg);
  display: flex;
}
.btn-outline-first:hover,
.btn-outline-first:focus,
.btn-outline-first:visited:hover,
.btn-outline-first:active:focus,
.btn-outline-first:active:hover {
  color: var(--btn-first-color-hover);
  background: var(--btn-first-bg-hover);
  border: 1px solid var(--btn-first-bg-hover);
  box-shadow: 0 8px 22px -6px rgba(23, 61, 43, 0.35);
}
.btn-outline-first:active {
  color: var(--btn-first-color-hover);
  background: var(--btn-first-bg-hover);
  border: 1px solid transparent;
  border-right: 1px solid var(--four-color);
}
.btn-outline-first:visited {
  color: var(--btn-first-bg);
  background: transparent;
  border: 1px solid var(--btn-first-bg);
}
.btn-second {
  color: var(--btn-second-color);
  background-color: var(--btn-second-bg);
  border: 1px solid var(--btn-second-bg);
  box-shadow: none;
}
.btn-second:hover,
.btn-second:focus,
.btn-second:visited:hover,
.btn-second:active,
.btn-second:active:focus,
.btn-second:active:hover {
  color: var(--btn-second-color-hover);
  background: var(--btn-second-bg-hover);
  border: 1px solid var(--btn-second-bg-hover);
  box-shadow: none;
  box-shadow: 0 8px 22px -6px rgba(23, 61, 43, 0.35);
}
.btn-second:visited {
  color: var(--second-color);
  border: 1px solid var(--btn-second-bg-hover);
}
.btn-three {
  color: var(--btn-three-color);
  box-shadow: none;
  display: flex;
  border: 1px solid var(--first-color);
  text-transform: uppercase;
}
.btn-three:hover,
.btn-three:visited:hover,
.btn-three:focus,
.btn-three:active:focus,
.btn-three:active:hover,
.btn-three:active {
  color: var(--btn-three-color-hover);
  background: var(--btn-three-bg-hover);
  border: 1px solid transparent;
  border-right: 1px solid var(--four-color);
  box-shadow: none;
}
.btn-three:visited {
  color: var(--btn-three-color);
  background: var(--btn-three-bg-hover);
  border: 2px solid var(--black-color);
}
.btn-four {
  color: var(--btn-four-color);
  background-color: var(--btn-four-bg);
  border: 1px solid var(--btn-four-bg);
}
.btn-four:hover,
.btn-four:visited:hover {
  color: var(--btn-four-color-hover);
  background: var(--btn-four-bg-hover);
  border: 1px solid var(--btn-four-bg-hover);
}
.btn-four:active,
.btn-four:visited,
.btn-four:focus,
.btn-four:active:focus {
  color: var(--btn-four-color);
}
.btn-four:active:focus,
.btn-four:active:hover {
  background: var(--btn-four-bg);
  border: 1px solid var(--btn-four-bg-hover);
}
.btn-sm {
  font-size: 0.8rem;
}
/*.btn-form {
  background-size: 27px auto;
  background: var(--first-color) url(/modul/Custom/img/svg/form-logo.svg) no-repeat 15px 10px;
  color: var(--white-color);
  padding: 1rem 2rem;
  font-size: .8rem;
  letter-spacing: 1px;
  font-family: 'Open Sans', sans-serif;

}*/
.btn-whatsapp {
  background-size: 27px auto;
  color: var(--white-color);
  padding: 1rem 2rem;
  font-size: 0.8rem;
  letter-spacing: 1px;
  font-family: 'Open Sans', sans-serif;
  -webkit-box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 100ms linear;
  -moz-transition: all 100ms linear;
  -ms-transition: all 100ms linear;
  -o-transition: all 100ms linear;
  transition: all 100ms linear;
}
.btn-whatsapp:hover {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0), 0 1px 5px 0 rgba(0, 0, 0, 0), 0 3px 1px -2px rgba(0, 0, 0, 0) !important;
  -webkit-transition: all 100ms linear;
  -moz-transition: all 100ms linear;
  -ms-transition: all 100ms linear;
  -o-transition: all 100ms linear;
  transition: all 100ms linear;
}
.btn-whatsapp:active {
  color: var(--white-color);
}
.btn-whatsapp:visited {
  color: var(--white-color);
}
.btn-whatsapp:visited:hover {
  color: var(--white-color);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0), 0 1px 5px 0 rgba(0, 0, 0, 0), 0 3px 1px -2px rgba(0, 0, 0, 0) !important;
}
.btn-viber {
  background-size: 27px auto;
  color: var(--white-color);
  padding: 1rem 2rem;
  font-size: 0.8rem;
  letter-spacing: 1px;
  font-family: 'Open Sans', sans-serif;
  -webkit-box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 100ms linear;
  -moz-transition: all 100ms linear;
  -ms-transition: all 100ms linear;
  -o-transition: all 100ms linear;
  transition: all 100ms linear;
}
.btn-viber:hover {
  color: var(--white-color);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0), 0 1px 5px 0 rgba(0, 0, 0, 0), 0 3px 1px -2px rgba(0, 0, 0, 0) !important;
  -webkit-transition: all 100ms linear;
  -moz-transition: all 100ms linear;
  -ms-transition: all 100ms linear;
  -o-transition: all 100ms linear;
  transition: all 100ms linear;
}
.btn-viber:active {
  color: var(--white-color);
}
.btn-viber:visited {
  color: var(--white-color);
}
.btn-messenger {
  background-size: 27px auto;
  color: var(--white-color);
  padding: 1rem 2rem;
  font-size: 0.8rem;
  letter-spacing: 1px;
  font-family: 'Open Sans', sans-serif;
  -webkit-box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 100ms linear;
  -moz-transition: all 100ms linear;
  -ms-transition: all 100ms linear;
  -o-transition: all 100ms linear;
  transition: all 100ms linear;
}
.btn-messenger:hover {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0), 0 1px 5px 0 rgba(0, 0, 0, 0), 0 3px 1px -2px rgba(0, 0, 0, 0) !important;
  -webkit-transition: all 100ms linear;
  -moz-transition: all 100ms linear;
  -ms-transition: all 100ms linear;
  -o-transition: all 100ms linear;
  transition: all 100ms linear;
}
.btn-messenger:active {
  color: var(--white-color);
}
.btn-messenger:visited {
  color: var(--white-color);
}
.custom-shadow {
  -webkit-box-shadow: 2px 6px 10px var(--first-color);
  box-shadow: 2px 6px 10px var(--first-color);
}
.img-shadow {
  -webkit-box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.1), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -7px rgba(0, 0, 0, 0.02);
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.1), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -7px rgba(0, 0, 0, 0.02);
}
.shadow_0 {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0), 0 1px 5px 0 rgba(0, 0, 0, 0), 0 3px 1px -2px rgba(0, 0, 0, 0) !important;
}
.shadow_1 {
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.shadow_2 {
  -webkit-box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
}
.shadow_3 {
  -webkit-box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}
.shadow_4 {
  -webkit-box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.1), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -7px rgba(0, 0, 0, 0.02);
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.1), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -7px rgba(0, 0, 0, 0.02);
}
.shadow_5 {
  -webkit-box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 8px 15px rgba(0, 0, 0, 0.2);
}
.text-shadow {
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
}
.trans_100 {
  -webkit-transition: all 100ms linear;
  -moz-transition: all 100ms linear;
  -ms-transition: all 100ms linear;
  -o-transition: all 100ms linear;
  transition: all 100ms linear;
}
.trans_150 {
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  -ms-transition: all 0.15s ease-out;
  -o-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}
.trans_200 {
  -webkit-transition: all 200ms linear;
  -moz-transition: all 200ms linear;
  -ms-transition: all 200ms linear;
  -o-transition: all 200ms linear;
  transition: all 200ms linear;
}
.trans_250 {
  -webkit-transition: all 0.25s ease-out;
  -moz-transition: all 0.25s ease-out;
  -ms-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
}
.trans_300 {
  -webkit-transition: all 300ms linear;
  -moz-transition: all 300ms linear;
  -ms-transition: all 300ms linear;
  -o-transition: all 300ms linear;
  transition: all 300ms linear;
}
.trans_400 {
  -webkit-transition: all 400ms linear;
  -moz-transition: all 400ms linear;
  -ms-transition: all 400ms linear;
  -o-transition: all 400ms linear;
  transition: all 400ms linear;
}
.trans_500 {
  -webkit-transition: all 500ms linear;
  -moz-transition: all 500ms linear;
  -ms-transition: all 500ms linear;
  -o-transition: all 500ms linear;
  transition: all 500ms linear;
}
.br-0 {
  border-radius: 0.15rem;
}
.fw-100 {
  font-weight: 100;
}
.fw-200 {
  font-weight: 200;
}
.fw-300 {
  font-weight: 300;
}
.fw-400 {
  font-weight: 400;
}
.fw-500 {
  font-weight: 500;
}
.fw-600 {
  font-weight: 600;
}
.fw-700 {
  font-weight: 700;
}
.fw-800 {
  font-weight: 800;
}
.fw-900 {
  font-weight: 900;
}
/*!
 * Bootstrap Icons v1.13.1 (https://icons.getbootstrap.com/)
 * Copyright 2019-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE)
 */
@font-face {
  font-display: block;
  font-family: "bootstrap-icons";
  src: url("/modul/Custom/fonts/bootstrap-icons.woff2") format("woff2"), url("/modul/Custom/fonts/bootstrap-icons.woff") format("woff");
}
.bi::before,
[class^="bi-"]::before,
[class*=" bi-"]::before {
  display: inline-block;
  font-family: bootstrap-icons !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: -0.125em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.bi-123::before {
  content: "\f67f";
}
.bi-alarm-fill::before {
  content: "\f101";
}
.bi-alarm::before {
  content: "\f102";
}
.bi-align-bottom::before {
  content: "\f103";
}
.bi-align-center::before {
  content: "\f104";
}
.bi-align-end::before {
  content: "\f105";
}
.bi-align-middle::before {
  content: "\f106";
}
.bi-align-start::before {
  content: "\f107";
}
.bi-align-top::before {
  content: "\f108";
}
.bi-alt::before {
  content: "\f109";
}
.bi-app-indicator::before {
  content: "\f10a";
}
.bi-app::before {
  content: "\f10b";
}
.bi-archive-fill::before {
  content: "\f10c";
}
.bi-archive::before {
  content: "\f10d";
}
.bi-arrow-90deg-down::before {
  content: "\f10e";
}
.bi-arrow-90deg-left::before {
  content: "\f10f";
}
.bi-arrow-90deg-right::before {
  content: "\f110";
}
.bi-arrow-90deg-up::before {
  content: "\f111";
}
.bi-arrow-bar-down::before {
  content: "\f112";
}
.bi-arrow-bar-left::before {
  content: "\f113";
}
.bi-arrow-bar-right::before {
  content: "\f114";
}
.bi-arrow-bar-up::before {
  content: "\f115";
}
.bi-arrow-clockwise::before {
  content: "\f116";
}
.bi-arrow-counterclockwise::before {
  content: "\f117";
}
.bi-arrow-down-circle-fill::before {
  content: "\f118";
}
.bi-arrow-down-circle::before {
  content: "\f119";
}
.bi-arrow-down-left-circle-fill::before {
  content: "\f11a";
}
.bi-arrow-down-left-circle::before {
  content: "\f11b";
}
.bi-arrow-down-left-square-fill::before {
  content: "\f11c";
}
.bi-arrow-down-left-square::before {
  content: "\f11d";
}
.bi-arrow-down-left::before {
  content: "\f11e";
}
.bi-arrow-down-right-circle-fill::before {
  content: "\f11f";
}
.bi-arrow-down-right-circle::before {
  content: "\f120";
}
.bi-arrow-down-right-square-fill::before {
  content: "\f121";
}
.bi-arrow-down-right-square::before {
  content: "\f122";
}
.bi-arrow-down-right::before {
  content: "\f123";
}
.bi-arrow-down-short::before {
  content: "\f124";
}
.bi-arrow-down-square-fill::before {
  content: "\f125";
}
.bi-arrow-down-square::before {
  content: "\f126";
}
.bi-arrow-down-up::before {
  content: "\f127";
}
.bi-arrow-down::before {
  content: "\f128";
}
.bi-arrow-left-circle-fill::before {
  content: "\f129";
}
.bi-arrow-left-circle::before {
  content: "\f12a";
}
.bi-arrow-left-right::before {
  content: "\f12b";
}
.bi-arrow-left-short::before {
  content: "\f12c";
}
.bi-arrow-left-square-fill::before {
  content: "\f12d";
}
.bi-arrow-left-square::before {
  content: "\f12e";
}
.bi-arrow-left::before {
  content: "\f12f";
}
.bi-arrow-repeat::before {
  content: "\f130";
}
.bi-arrow-return-left::before {
  content: "\f131";
}
.bi-arrow-return-right::before {
  content: "\f132";
}
.bi-arrow-right-circle-fill::before {
  content: "\f133";
}
.bi-arrow-right-circle::before {
  content: "\f134";
}
.bi-arrow-right-short::before {
  content: "\f135";
}
.bi-arrow-right-square-fill::before {
  content: "\f136";
}
.bi-arrow-right-square::before {
  content: "\f137";
}
.bi-arrow-right::before {
  content: "\f138";
}
.bi-arrow-up-circle-fill::before {
  content: "\f139";
}
.bi-arrow-up-circle::before {
  content: "\f13a";
}
.bi-arrow-up-left-circle-fill::before {
  content: "\f13b";
}
.bi-arrow-up-left-circle::before {
  content: "\f13c";
}
.bi-arrow-up-left-square-fill::before {
  content: "\f13d";
}
.bi-arrow-up-left-square::before {
  content: "\f13e";
}
.bi-arrow-up-left::before {
  content: "\f13f";
}
.bi-arrow-up-right-circle-fill::before {
  content: "\f140";
}
.bi-arrow-up-right-circle::before {
  content: "\f141";
}
.bi-arrow-up-right-square-fill::before {
  content: "\f142";
}
.bi-arrow-up-right-square::before {
  content: "\f143";
}
.bi-arrow-up-right::before {
  content: "\f144";
}
.bi-arrow-up-short::before {
  content: "\f145";
}
.bi-arrow-up-square-fill::before {
  content: "\f146";
}
.bi-arrow-up-square::before {
  content: "\f147";
}
.bi-arrow-up::before {
  content: "\f148";
}
.bi-arrows-angle-contract::before {
  content: "\f149";
}
.bi-arrows-angle-expand::before {
  content: "\f14a";
}
.bi-arrows-collapse::before {
  content: "\f14b";
}
.bi-arrows-expand::before {
  content: "\f14c";
}
.bi-arrows-fullscreen::before {
  content: "\f14d";
}
.bi-arrows-move::before {
  content: "\f14e";
}
.bi-aspect-ratio-fill::before {
  content: "\f14f";
}
.bi-aspect-ratio::before {
  content: "\f150";
}
.bi-asterisk::before {
  content: "\f151";
}
.bi-at::before {
  content: "\f152";
}
.bi-award-fill::before {
  content: "\f153";
}
.bi-award::before {
  content: "\f154";
}
.bi-back::before {
  content: "\f155";
}
.bi-backspace-fill::before {
  content: "\f156";
}
.bi-backspace-reverse-fill::before {
  content: "\f157";
}
.bi-backspace-reverse::before {
  content: "\f158";
}
.bi-backspace::before {
  content: "\f159";
}
.bi-badge-3d-fill::before {
  content: "\f15a";
}
.bi-badge-3d::before {
  content: "\f15b";
}
.bi-badge-4k-fill::before {
  content: "\f15c";
}
.bi-badge-4k::before {
  content: "\f15d";
}
.bi-badge-8k-fill::before {
  content: "\f15e";
}
.bi-badge-8k::before {
  content: "\f15f";
}
.bi-badge-ad-fill::before {
  content: "\f160";
}
.bi-badge-ad::before {
  content: "\f161";
}
.bi-badge-ar-fill::before {
  content: "\f162";
}
.bi-badge-ar::before {
  content: "\f163";
}
.bi-badge-cc-fill::before {
  content: "\f164";
}
.bi-badge-cc::before {
  content: "\f165";
}
.bi-badge-hd-fill::before {
  content: "\f166";
}
.bi-badge-hd::before {
  content: "\f167";
}
.bi-badge-tm-fill::before {
  content: "\f168";
}
.bi-badge-tm::before {
  content: "\f169";
}
.bi-badge-vo-fill::before {
  content: "\f16a";
}
.bi-badge-vo::before {
  content: "\f16b";
}
.bi-badge-vr-fill::before {
  content: "\f16c";
}
.bi-badge-vr::before {
  content: "\f16d";
}
.bi-badge-wc-fill::before {
  content: "\f16e";
}
.bi-badge-wc::before {
  content: "\f16f";
}
.bi-bag-check-fill::before {
  content: "\f170";
}
.bi-bag-check::before {
  content: "\f171";
}
.bi-bag-dash-fill::before {
  content: "\f172";
}
.bi-bag-dash::before {
  content: "\f173";
}
.bi-bag-fill::before {
  content: "\f174";
}
.bi-bag-plus-fill::before {
  content: "\f175";
}
.bi-bag-plus::before {
  content: "\f176";
}
.bi-bag-x-fill::before {
  content: "\f177";
}
.bi-bag-x::before {
  content: "\f178";
}
.bi-bag::before {
  content: "\f179";
}
.bi-bar-chart-fill::before {
  content: "\f17a";
}
.bi-bar-chart-line-fill::before {
  content: "\f17b";
}
.bi-bar-chart-line::before {
  content: "\f17c";
}
.bi-bar-chart-steps::before {
  content: "\f17d";
}
.bi-bar-chart::before {
  content: "\f17e";
}
.bi-basket-fill::before {
  content: "\f17f";
}
.bi-basket::before {
  content: "\f180";
}
.bi-basket2-fill::before {
  content: "\f181";
}
.bi-basket2::before {
  content: "\f182";
}
.bi-basket3-fill::before {
  content: "\f183";
}
.bi-basket3::before {
  content: "\f184";
}
.bi-battery-charging::before {
  content: "\f185";
}
.bi-battery-full::before {
  content: "\f186";
}
.bi-battery-half::before {
  content: "\f187";
}
.bi-battery::before {
  content: "\f188";
}
.bi-bell-fill::before {
  content: "\f189";
}
.bi-bell::before {
  content: "\f18a";
}
.bi-bezier::before {
  content: "\f18b";
}
.bi-bezier2::before {
  content: "\f18c";
}
.bi-bicycle::before {
  content: "\f18d";
}
.bi-binoculars-fill::before {
  content: "\f18e";
}
.bi-binoculars::before {
  content: "\f18f";
}
.bi-blockquote-left::before {
  content: "\f190";
}
.bi-blockquote-right::before {
  content: "\f191";
}
.bi-book-fill::before {
  content: "\f192";
}
.bi-book-half::before {
  content: "\f193";
}
.bi-book::before {
  content: "\f194";
}
.bi-bookmark-check-fill::before {
  content: "\f195";
}
.bi-bookmark-check::before {
  content: "\f196";
}
.bi-bookmark-dash-fill::before {
  content: "\f197";
}
.bi-bookmark-dash::before {
  content: "\f198";
}
.bi-bookmark-fill::before {
  content: "\f199";
}
.bi-bookmark-heart-fill::before {
  content: "\f19a";
}
.bi-bookmark-heart::before {
  content: "\f19b";
}
.bi-bookmark-plus-fill::before {
  content: "\f19c";
}
.bi-bookmark-plus::before {
  content: "\f19d";
}
.bi-bookmark-star-fill::before {
  content: "\f19e";
}
.bi-bookmark-star::before {
  content: "\f19f";
}
.bi-bookmark-x-fill::before {
  content: "\f1a0";
}
.bi-bookmark-x::before {
  content: "\f1a1";
}
.bi-bookmark::before {
  content: "\f1a2";
}
.bi-bookmarks-fill::before {
  content: "\f1a3";
}
.bi-bookmarks::before {
  content: "\f1a4";
}
.bi-bookshelf::before {
  content: "\f1a5";
}
.bi-bootstrap-fill::before {
  content: "\f1a6";
}
.bi-bootstrap-reboot::before {
  content: "\f1a7";
}
.bi-bootstrap::before {
  content: "\f1a8";
}
.bi-border-all::before {
  content: "\f1a9";
}
.bi-border-bottom::before {
  content: "\f1aa";
}
.bi-border-center::before {
  content: "\f1ab";
}
.bi-border-inner::before {
  content: "\f1ac";
}
.bi-border-left::before {
  content: "\f1ad";
}
.bi-border-middle::before {
  content: "\f1ae";
}
.bi-border-outer::before {
  content: "\f1af";
}
.bi-border-right::before {
  content: "\f1b0";
}
.bi-border-style::before {
  content: "\f1b1";
}
.bi-border-top::before {
  content: "\f1b2";
}
.bi-border-width::before {
  content: "\f1b3";
}
.bi-border::before {
  content: "\f1b4";
}
.bi-bounding-box-circles::before {
  content: "\f1b5";
}
.bi-bounding-box::before {
  content: "\f1b6";
}
.bi-box-arrow-down-left::before {
  content: "\f1b7";
}
.bi-box-arrow-down-right::before {
  content: "\f1b8";
}
.bi-box-arrow-down::before {
  content: "\f1b9";
}
.bi-box-arrow-in-down-left::before {
  content: "\f1ba";
}
.bi-box-arrow-in-down-right::before {
  content: "\f1bb";
}
.bi-box-arrow-in-down::before {
  content: "\f1bc";
}
.bi-box-arrow-in-left::before {
  content: "\f1bd";
}
.bi-box-arrow-in-right::before {
  content: "\f1be";
}
.bi-box-arrow-in-up-left::before {
  content: "\f1bf";
}
.bi-box-arrow-in-up-right::before {
  content: "\f1c0";
}
.bi-box-arrow-in-up::before {
  content: "\f1c1";
}
.bi-box-arrow-left::before {
  content: "\f1c2";
}
.bi-box-arrow-right::before {
  content: "\f1c3";
}
.bi-box-arrow-up-left::before {
  content: "\f1c4";
}
.bi-box-arrow-up-right::before {
  content: "\f1c5";
}
.bi-box-arrow-up::before {
  content: "\f1c6";
}
.bi-box-seam::before {
  content: "\f1c7";
}
.bi-box::before {
  content: "\f1c8";
}
.bi-braces::before {
  content: "\f1c9";
}
.bi-bricks::before {
  content: "\f1ca";
}
.bi-briefcase-fill::before {
  content: "\f1cb";
}
.bi-briefcase::before {
  content: "\f1cc";
}
.bi-brightness-alt-high-fill::before {
  content: "\f1cd";
}
.bi-brightness-alt-high::before {
  content: "\f1ce";
}
.bi-brightness-alt-low-fill::before {
  content: "\f1cf";
}
.bi-brightness-alt-low::before {
  content: "\f1d0";
}
.bi-brightness-high-fill::before {
  content: "\f1d1";
}
.bi-brightness-high::before {
  content: "\f1d2";
}
.bi-brightness-low-fill::before {
  content: "\f1d3";
}
.bi-brightness-low::before {
  content: "\f1d4";
}
.bi-broadcast-pin::before {
  content: "\f1d5";
}
.bi-broadcast::before {
  content: "\f1d6";
}
.bi-brush-fill::before {
  content: "\f1d7";
}
.bi-brush::before {
  content: "\f1d8";
}
.bi-bucket-fill::before {
  content: "\f1d9";
}
.bi-bucket::before {
  content: "\f1da";
}
.bi-bug-fill::before {
  content: "\f1db";
}
.bi-bug::before {
  content: "\f1dc";
}
.bi-building::before {
  content: "\f1dd";
}
.bi-bullseye::before {
  content: "\f1de";
}
.bi-calculator-fill::before {
  content: "\f1df";
}
.bi-calculator::before {
  content: "\f1e0";
}
.bi-calendar-check-fill::before {
  content: "\f1e1";
}
.bi-calendar-check::before {
  content: "\f1e2";
}
.bi-calendar-date-fill::before {
  content: "\f1e3";
}
.bi-calendar-date::before {
  content: "\f1e4";
}
.bi-calendar-day-fill::before {
  content: "\f1e5";
}
.bi-calendar-day::before {
  content: "\f1e6";
}
.bi-calendar-event-fill::before {
  content: "\f1e7";
}
.bi-calendar-event::before {
  content: "\f1e8";
}
.bi-calendar-fill::before {
  content: "\f1e9";
}
.bi-calendar-minus-fill::before {
  content: "\f1ea";
}
.bi-calendar-minus::before {
  content: "\f1eb";
}
.bi-calendar-month-fill::before {
  content: "\f1ec";
}
.bi-calendar-month::before {
  content: "\f1ed";
}
.bi-calendar-plus-fill::before {
  content: "\f1ee";
}
.bi-calendar-plus::before {
  content: "\f1ef";
}
.bi-calendar-range-fill::before {
  content: "\f1f0";
}
.bi-calendar-range::before {
  content: "\f1f1";
}
.bi-calendar-week-fill::before {
  content: "\f1f2";
}
.bi-calendar-week::before {
  content: "\f1f3";
}
.bi-calendar-x-fill::before {
  content: "\f1f4";
}
.bi-calendar-x::before {
  content: "\f1f5";
}
.bi-calendar::before {
  content: "\f1f6";
}
.bi-calendar2-check-fill::before {
  content: "\f1f7";
}
.bi-calendar2-check::before {
  content: "\f1f8";
}
.bi-calendar2-date-fill::before {
  content: "\f1f9";
}
.bi-calendar2-date::before {
  content: "\f1fa";
}
.bi-calendar2-day-fill::before {
  content: "\f1fb";
}
.bi-calendar2-day::before {
  content: "\f1fc";
}
.bi-calendar2-event-fill::before {
  content: "\f1fd";
}
.bi-calendar2-event::before {
  content: "\f1fe";
}
.bi-calendar2-fill::before {
  content: "\f1ff";
}
.bi-calendar2-minus-fill::before {
  content: "\f200";
}
.bi-calendar2-minus::before {
  content: "\f201";
}
.bi-calendar2-month-fill::before {
  content: "\f202";
}
.bi-calendar2-month::before {
  content: "\f203";
}
.bi-calendar2-plus-fill::before {
  content: "\f204";
}
.bi-calendar2-plus::before {
  content: "\f205";
}
.bi-calendar2-range-fill::before {
  content: "\f206";
}
.bi-calendar2-range::before {
  content: "\f207";
}
.bi-calendar2-week-fill::before {
  content: "\f208";
}
.bi-calendar2-week::before {
  content: "\f209";
}
.bi-calendar2-x-fill::before {
  content: "\f20a";
}
.bi-calendar2-x::before {
  content: "\f20b";
}
.bi-calendar2::before {
  content: "\f20c";
}
.bi-calendar3-event-fill::before {
  content: "\f20d";
}
.bi-calendar3-event::before {
  content: "\f20e";
}
.bi-calendar3-fill::before {
  content: "\f20f";
}
.bi-calendar3-range-fill::before {
  content: "\f210";
}
.bi-calendar3-range::before {
  content: "\f211";
}
.bi-calendar3-week-fill::before {
  content: "\f212";
}
.bi-calendar3-week::before {
  content: "\f213";
}
.bi-calendar3::before {
  content: "\f214";
}
.bi-calendar4-event::before {
  content: "\f215";
}
.bi-calendar4-range::before {
  content: "\f216";
}
.bi-calendar4-week::before {
  content: "\f217";
}
.bi-calendar4::before {
  content: "\f218";
}
.bi-camera-fill::before {
  content: "\f219";
}
.bi-camera-reels-fill::before {
  content: "\f21a";
}
.bi-camera-reels::before {
  content: "\f21b";
}
.bi-camera-video-fill::before {
  content: "\f21c";
}
.bi-camera-video-off-fill::before {
  content: "\f21d";
}
.bi-camera-video-off::before {
  content: "\f21e";
}
.bi-camera-video::before {
  content: "\f21f";
}
.bi-camera::before {
  content: "\f220";
}
.bi-camera2::before {
  content: "\f221";
}
.bi-capslock-fill::before {
  content: "\f222";
}
.bi-capslock::before {
  content: "\f223";
}
.bi-card-checklist::before {
  content: "\f224";
}
.bi-card-heading::before {
  content: "\f225";
}
.bi-card-image::before {
  content: "\f226";
}
.bi-card-list::before {
  content: "\f227";
}
.bi-card-text::before {
  content: "\f228";
}
.bi-caret-down-fill::before {
  content: "\f229";
}
.bi-caret-down-square-fill::before {
  content: "\f22a";
}
.bi-caret-down-square::before {
  content: "\f22b";
}
.bi-caret-down::before {
  content: "\f22c";
}
.bi-caret-left-fill::before {
  content: "\f22d";
}
.bi-caret-left-square-fill::before {
  content: "\f22e";
}
.bi-caret-left-square::before {
  content: "\f22f";
}
.bi-caret-left::before {
  content: "\f230";
}
.bi-caret-right-fill::before {
  content: "\f231";
}
.bi-caret-right-square-fill::before {
  content: "\f232";
}
.bi-caret-right-square::before {
  content: "\f233";
}
.bi-caret-right::before {
  content: "\f234";
}
.bi-caret-up-fill::before {
  content: "\f235";
}
.bi-caret-up-square-fill::before {
  content: "\f236";
}
.bi-caret-up-square::before {
  content: "\f237";
}
.bi-caret-up::before {
  content: "\f238";
}
.bi-cart-check-fill::before {
  content: "\f239";
}
.bi-cart-check::before {
  content: "\f23a";
}
.bi-cart-dash-fill::before {
  content: "\f23b";
}
.bi-cart-dash::before {
  content: "\f23c";
}
.bi-cart-fill::before {
  content: "\f23d";
}
.bi-cart-plus-fill::before {
  content: "\f23e";
}
.bi-cart-plus::before {
  content: "\f23f";
}
.bi-cart-x-fill::before {
  content: "\f240";
}
.bi-cart-x::before {
  content: "\f241";
}
.bi-cart::before {
  content: "\f242";
}
.bi-cart2::before {
  content: "\f243";
}
.bi-cart3::before {
  content: "\f244";
}
.bi-cart4::before {
  content: "\f245";
}
.bi-cash-stack::before {
  content: "\f246";
}
.bi-cash::before {
  content: "\f247";
}
.bi-cast::before {
  content: "\f248";
}
.bi-chat-dots-fill::before {
  content: "\f249";
}
.bi-chat-dots::before {
  content: "\f24a";
}
.bi-chat-fill::before {
  content: "\f24b";
}
.bi-chat-left-dots-fill::before {
  content: "\f24c";
}
.bi-chat-left-dots::before {
  content: "\f24d";
}
.bi-chat-left-fill::before {
  content: "\f24e";
}
.bi-chat-left-quote-fill::before {
  content: "\f24f";
}
.bi-chat-left-quote::before {
  content: "\f250";
}
.bi-chat-left-text-fill::before {
  content: "\f251";
}
.bi-chat-left-text::before {
  content: "\f252";
}
.bi-chat-left::before {
  content: "\f253";
}
.bi-chat-quote-fill::before {
  content: "\f254";
}
.bi-chat-quote::before {
  content: "\f255";
}
.bi-chat-right-dots-fill::before {
  content: "\f256";
}
.bi-chat-right-dots::before {
  content: "\f257";
}
.bi-chat-right-fill::before {
  content: "\f258";
}
.bi-chat-right-quote-fill::before {
  content: "\f259";
}
.bi-chat-right-quote::before {
  content: "\f25a";
}
.bi-chat-right-text-fill::before {
  content: "\f25b";
}
.bi-chat-right-text::before {
  content: "\f25c";
}
.bi-chat-right::before {
  content: "\f25d";
}
.bi-chat-square-dots-fill::before {
  content: "\f25e";
}
.bi-chat-square-dots::before {
  content: "\f25f";
}
.bi-chat-square-fill::before {
  content: "\f260";
}
.bi-chat-square-quote-fill::before {
  content: "\f261";
}
.bi-chat-square-quote::before {
  content: "\f262";
}
.bi-chat-square-text-fill::before {
  content: "\f263";
}
.bi-chat-square-text::before {
  content: "\f264";
}
.bi-chat-square::before {
  content: "\f265";
}
.bi-chat-text-fill::before {
  content: "\f266";
}
.bi-chat-text::before {
  content: "\f267";
}
.bi-chat::before {
  content: "\f268";
}
.bi-check-all::before {
  content: "\f269";
}
.bi-check-circle-fill::before {
  content: "\f26a";
}
.bi-check-circle::before {
  content: "\f26b";
}
.bi-check-square-fill::before {
  content: "\f26c";
}
.bi-check-square::before {
  content: "\f26d";
}
.bi-check::before {
  content: "\f26e";
}
.bi-check2-all::before {
  content: "\f26f";
}
.bi-check2-circle::before {
  content: "\f270";
}
.bi-check2-square::before {
  content: "\f271";
}
.bi-check2::before {
  content: "\f272";
}
.bi-chevron-bar-contract::before {
  content: "\f273";
}
.bi-chevron-bar-down::before {
  content: "\f274";
}
.bi-chevron-bar-expand::before {
  content: "\f275";
}
.bi-chevron-bar-left::before {
  content: "\f276";
}
.bi-chevron-bar-right::before {
  content: "\f277";
}
.bi-chevron-bar-up::before {
  content: "\f278";
}
.bi-chevron-compact-down::before {
  content: "\f279";
}
.bi-chevron-compact-left::before {
  content: "\f27a";
}
.bi-chevron-compact-right::before {
  content: "\f27b";
}
.bi-chevron-compact-up::before {
  content: "\f27c";
}
.bi-chevron-contract::before {
  content: "\f27d";
}
.bi-chevron-double-down::before {
  content: "\f27e";
}
.bi-chevron-double-left::before {
  content: "\f27f";
}
.bi-chevron-double-right::before {
  content: "\f280";
}
.bi-chevron-double-up::before {
  content: "\f281";
}
.bi-chevron-down::before {
  content: "\f282";
}
.bi-chevron-expand::before {
  content: "\f283";
}
.bi-chevron-left::before {
  content: "\f284";
}
.bi-chevron-right::before {
  content: "\f285";
}
.bi-chevron-up::before {
  content: "\f286";
}
.bi-circle-fill::before {
  content: "\f287";
}
.bi-circle-half::before {
  content: "\f288";
}
.bi-circle-square::before {
  content: "\f289";
}
.bi-circle::before {
  content: "\f28a";
}
.bi-clipboard-check::before {
  content: "\f28b";
}
.bi-clipboard-data::before {
  content: "\f28c";
}
.bi-clipboard-minus::before {
  content: "\f28d";
}
.bi-clipboard-plus::before {
  content: "\f28e";
}
.bi-clipboard-x::before {
  content: "\f28f";
}
.bi-clipboard::before {
  content: "\f290";
}
.bi-clock-fill::before {
  content: "\f291";
}
.bi-clock-history::before {
  content: "\f292";
}
.bi-clock::before {
  content: "\f293";
}
.bi-cloud-arrow-down-fill::before {
  content: "\f294";
}
.bi-cloud-arrow-down::before {
  content: "\f295";
}
.bi-cloud-arrow-up-fill::before {
  content: "\f296";
}
.bi-cloud-arrow-up::before {
  content: "\f297";
}
.bi-cloud-check-fill::before {
  content: "\f298";
}
.bi-cloud-check::before {
  content: "\f299";
}
.bi-cloud-download-fill::before {
  content: "\f29a";
}
.bi-cloud-download::before {
  content: "\f29b";
}
.bi-cloud-drizzle-fill::before {
  content: "\f29c";
}
.bi-cloud-drizzle::before {
  content: "\f29d";
}
.bi-cloud-fill::before {
  content: "\f29e";
}
.bi-cloud-fog-fill::before {
  content: "\f29f";
}
.bi-cloud-fog::before {
  content: "\f2a0";
}
.bi-cloud-fog2-fill::before {
  content: "\f2a1";
}
.bi-cloud-fog2::before {
  content: "\f2a2";
}
.bi-cloud-hail-fill::before {
  content: "\f2a3";
}
.bi-cloud-hail::before {
  content: "\f2a4";
}
.bi-cloud-haze-fill::before {
  content: "\f2a6";
}
.bi-cloud-haze::before {
  content: "\f2a7";
}
.bi-cloud-haze2-fill::before {
  content: "\f2a8";
}
.bi-cloud-lightning-fill::before {
  content: "\f2a9";
}
.bi-cloud-lightning-rain-fill::before {
  content: "\f2aa";
}
.bi-cloud-lightning-rain::before {
  content: "\f2ab";
}
.bi-cloud-lightning::before {
  content: "\f2ac";
}
.bi-cloud-minus-fill::before {
  content: "\f2ad";
}
.bi-cloud-minus::before {
  content: "\f2ae";
}
.bi-cloud-moon-fill::before {
  content: "\f2af";
}
.bi-cloud-moon::before {
  content: "\f2b0";
}
.bi-cloud-plus-fill::before {
  content: "\f2b1";
}
.bi-cloud-plus::before {
  content: "\f2b2";
}
.bi-cloud-rain-fill::before {
  content: "\f2b3";
}
.bi-cloud-rain-heavy-fill::before {
  content: "\f2b4";
}
.bi-cloud-rain-heavy::before {
  content: "\f2b5";
}
.bi-cloud-rain::before {
  content: "\f2b6";
}
.bi-cloud-slash-fill::before {
  content: "\f2b7";
}
.bi-cloud-slash::before {
  content: "\f2b8";
}
.bi-cloud-sleet-fill::before {
  content: "\f2b9";
}
.bi-cloud-sleet::before {
  content: "\f2ba";
}
.bi-cloud-snow-fill::before {
  content: "\f2bb";
}
.bi-cloud-snow::before {
  content: "\f2bc";
}
.bi-cloud-sun-fill::before {
  content: "\f2bd";
}
.bi-cloud-sun::before {
  content: "\f2be";
}
.bi-cloud-upload-fill::before {
  content: "\f2bf";
}
.bi-cloud-upload::before {
  content: "\f2c0";
}
.bi-cloud::before {
  content: "\f2c1";
}
.bi-clouds-fill::before {
  content: "\f2c2";
}
.bi-clouds::before {
  content: "\f2c3";
}
.bi-cloudy-fill::before {
  content: "\f2c4";
}
.bi-cloudy::before {
  content: "\f2c5";
}
.bi-code-slash::before {
  content: "\f2c6";
}
.bi-code-square::before {
  content: "\f2c7";
}
.bi-code::before {
  content: "\f2c8";
}
.bi-collection-fill::before {
  content: "\f2c9";
}
.bi-collection-play-fill::before {
  content: "\f2ca";
}
.bi-collection-play::before {
  content: "\f2cb";
}
.bi-collection::before {
  content: "\f2cc";
}
.bi-columns-gap::before {
  content: "\f2cd";
}
.bi-columns::before {
  content: "\f2ce";
}
.bi-command::before {
  content: "\f2cf";
}
.bi-compass-fill::before {
  content: "\f2d0";
}
.bi-compass::before {
  content: "\f2d1";
}
.bi-cone-striped::before {
  content: "\f2d2";
}
.bi-cone::before {
  content: "\f2d3";
}
.bi-controller::before {
  content: "\f2d4";
}
.bi-cpu-fill::before {
  content: "\f2d5";
}
.bi-cpu::before {
  content: "\f2d6";
}
.bi-credit-card-2-back-fill::before {
  content: "\f2d7";
}
.bi-credit-card-2-back::before {
  content: "\f2d8";
}
.bi-credit-card-2-front-fill::before {
  content: "\f2d9";
}
.bi-credit-card-2-front::before {
  content: "\f2da";
}
.bi-credit-card-fill::before {
  content: "\f2db";
}
.bi-credit-card::before {
  content: "\f2dc";
}
.bi-crop::before {
  content: "\f2dd";
}
.bi-cup-fill::before {
  content: "\f2de";
}
.bi-cup-straw::before {
  content: "\f2df";
}
.bi-cup::before {
  content: "\f2e0";
}
.bi-cursor-fill::before {
  content: "\f2e1";
}
.bi-cursor-text::before {
  content: "\f2e2";
}
.bi-cursor::before {
  content: "\f2e3";
}
.bi-dash-circle-dotted::before {
  content: "\f2e4";
}
.bi-dash-circle-fill::before {
  content: "\f2e5";
}
.bi-dash-circle::before {
  content: "\f2e6";
}
.bi-dash-square-dotted::before {
  content: "\f2e7";
}
.bi-dash-square-fill::before {
  content: "\f2e8";
}
.bi-dash-square::before {
  content: "\f2e9";
}
.bi-dash::before {
  content: "\f2ea";
}
.bi-diagram-2-fill::before {
  content: "\f2eb";
}
.bi-diagram-2::before {
  content: "\f2ec";
}
.bi-diagram-3-fill::before {
  content: "\f2ed";
}
.bi-diagram-3::before {
  content: "\f2ee";
}
.bi-diamond-fill::before {
  content: "\f2ef";
}
.bi-diamond-half::before {
  content: "\f2f0";
}
.bi-diamond::before {
  content: "\f2f1";
}
.bi-dice-1-fill::before {
  content: "\f2f2";
}
.bi-dice-1::before {
  content: "\f2f3";
}
.bi-dice-2-fill::before {
  content: "\f2f4";
}
.bi-dice-2::before {
  content: "\f2f5";
}
.bi-dice-3-fill::before {
  content: "\f2f6";
}
.bi-dice-3::before {
  content: "\f2f7";
}
.bi-dice-4-fill::before {
  content: "\f2f8";
}
.bi-dice-4::before {
  content: "\f2f9";
}
.bi-dice-5-fill::before {
  content: "\f2fa";
}
.bi-dice-5::before {
  content: "\f2fb";
}
.bi-dice-6-fill::before {
  content: "\f2fc";
}
.bi-dice-6::before {
  content: "\f2fd";
}
.bi-disc-fill::before {
  content: "\f2fe";
}
.bi-disc::before {
  content: "\f2ff";
}
.bi-discord::before {
  content: "\f300";
}
.bi-display-fill::before {
  content: "\f301";
}
.bi-display::before {
  content: "\f302";
}
.bi-distribute-horizontal::before {
  content: "\f303";
}
.bi-distribute-vertical::before {
  content: "\f304";
}
.bi-door-closed-fill::before {
  content: "\f305";
}
.bi-door-closed::before {
  content: "\f306";
}
.bi-door-open-fill::before {
  content: "\f307";
}
.bi-door-open::before {
  content: "\f308";
}
.bi-dot::before {
  content: "\f309";
}
.bi-download::before {
  content: "\f30a";
}
.bi-droplet-fill::before {
  content: "\f30b";
}
.bi-droplet-half::before {
  content: "\f30c";
}
.bi-droplet::before {
  content: "\f30d";
}
.bi-earbuds::before {
  content: "\f30e";
}
.bi-easel-fill::before {
  content: "\f30f";
}
.bi-easel::before {
  content: "\f310";
}
.bi-egg-fill::before {
  content: "\f311";
}
.bi-egg-fried::before {
  content: "\f312";
}
.bi-egg::before {
  content: "\f313";
}
.bi-eject-fill::before {
  content: "\f314";
}
.bi-eject::before {
  content: "\f315";
}
.bi-emoji-angry-fill::before {
  content: "\f316";
}
.bi-emoji-angry::before {
  content: "\f317";
}
.bi-emoji-dizzy-fill::before {
  content: "\f318";
}
.bi-emoji-dizzy::before {
  content: "\f319";
}
.bi-emoji-expressionless-fill::before {
  content: "\f31a";
}
.bi-emoji-expressionless::before {
  content: "\f31b";
}
.bi-emoji-frown-fill::before {
  content: "\f31c";
}
.bi-emoji-frown::before {
  content: "\f31d";
}
.bi-emoji-heart-eyes-fill::before {
  content: "\f31e";
}
.bi-emoji-heart-eyes::before {
  content: "\f31f";
}
.bi-emoji-laughing-fill::before {
  content: "\f320";
}
.bi-emoji-laughing::before {
  content: "\f321";
}
.bi-emoji-neutral-fill::before {
  content: "\f322";
}
.bi-emoji-neutral::before {
  content: "\f323";
}
.bi-emoji-smile-fill::before {
  content: "\f324";
}
.bi-emoji-smile-upside-down-fill::before {
  content: "\f325";
}
.bi-emoji-smile-upside-down::before {
  content: "\f326";
}
.bi-emoji-smile::before {
  content: "\f327";
}
.bi-emoji-sunglasses-fill::before {
  content: "\f328";
}
.bi-emoji-sunglasses::before {
  content: "\f329";
}
.bi-emoji-wink-fill::before {
  content: "\f32a";
}
.bi-emoji-wink::before {
  content: "\f32b";
}
.bi-envelope-fill::before {
  content: "\f32c";
}
.bi-envelope-open-fill::before {
  content: "\f32d";
}
.bi-envelope-open::before {
  content: "\f32e";
}
.bi-envelope::before {
  content: "\f32f";
}
.bi-eraser-fill::before {
  content: "\f330";
}
.bi-eraser::before {
  content: "\f331";
}
.bi-exclamation-circle-fill::before {
  content: "\f332";
}
.bi-exclamation-circle::before {
  content: "\f333";
}
.bi-exclamation-diamond-fill::before {
  content: "\f334";
}
.bi-exclamation-diamond::before {
  content: "\f335";
}
.bi-exclamation-octagon-fill::before {
  content: "\f336";
}
.bi-exclamation-octagon::before {
  content: "\f337";
}
.bi-exclamation-square-fill::before {
  content: "\f338";
}
.bi-exclamation-square::before {
  content: "\f339";
}
.bi-exclamation-triangle-fill::before {
  content: "\f33a";
}
.bi-exclamation-triangle::before {
  content: "\f33b";
}
.bi-exclamation::before {
  content: "\f33c";
}
.bi-exclude::before {
  content: "\f33d";
}
.bi-eye-fill::before {
  content: "\f33e";
}
.bi-eye-slash-fill::before {
  content: "\f33f";
}
.bi-eye-slash::before {
  content: "\f340";
}
.bi-eye::before {
  content: "\f341";
}
.bi-eyedropper::before {
  content: "\f342";
}
.bi-eyeglasses::before {
  content: "\f343";
}
.bi-facebook::before {
  content: "\f344";
}
.bi-file-arrow-down-fill::before {
  content: "\f345";
}
.bi-file-arrow-down::before {
  content: "\f346";
}
.bi-file-arrow-up-fill::before {
  content: "\f347";
}
.bi-file-arrow-up::before {
  content: "\f348";
}
.bi-file-bar-graph-fill::before {
  content: "\f349";
}
.bi-file-bar-graph::before {
  content: "\f34a";
}
.bi-file-binary-fill::before {
  content: "\f34b";
}
.bi-file-binary::before {
  content: "\f34c";
}
.bi-file-break-fill::before {
  content: "\f34d";
}
.bi-file-break::before {
  content: "\f34e";
}
.bi-file-check-fill::before {
  content: "\f34f";
}
.bi-file-check::before {
  content: "\f350";
}
.bi-file-code-fill::before {
  content: "\f351";
}
.bi-file-code::before {
  content: "\f352";
}
.bi-file-diff-fill::before {
  content: "\f353";
}
.bi-file-diff::before {
  content: "\f354";
}
.bi-file-earmark-arrow-down-fill::before {
  content: "\f355";
}
.bi-file-earmark-arrow-down::before {
  content: "\f356";
}
.bi-file-earmark-arrow-up-fill::before {
  content: "\f357";
}
.bi-file-earmark-arrow-up::before {
  content: "\f358";
}
.bi-file-earmark-bar-graph-fill::before {
  content: "\f359";
}
.bi-file-earmark-bar-graph::before {
  content: "\f35a";
}
.bi-file-earmark-binary-fill::before {
  content: "\f35b";
}
.bi-file-earmark-binary::before {
  content: "\f35c";
}
.bi-file-earmark-break-fill::before {
  content: "\f35d";
}
.bi-file-earmark-break::before {
  content: "\f35e";
}
.bi-file-earmark-check-fill::before {
  content: "\f35f";
}
.bi-file-earmark-check::before {
  content: "\f360";
}
.bi-file-earmark-code-fill::before {
  content: "\f361";
}
.bi-file-earmark-code::before {
  content: "\f362";
}
.bi-file-earmark-diff-fill::before {
  content: "\f363";
}
.bi-file-earmark-diff::before {
  content: "\f364";
}
.bi-file-earmark-easel-fill::before {
  content: "\f365";
}
.bi-file-earmark-easel::before {
  content: "\f366";
}
.bi-file-earmark-excel-fill::before {
  content: "\f367";
}
.bi-file-earmark-excel::before {
  content: "\f368";
}
.bi-file-earmark-fill::before {
  content: "\f369";
}
.bi-file-earmark-font-fill::before {
  content: "\f36a";
}
.bi-file-earmark-font::before {
  content: "\f36b";
}
.bi-file-earmark-image-fill::before {
  content: "\f36c";
}
.bi-file-earmark-image::before {
  content: "\f36d";
}
.bi-file-earmark-lock-fill::before {
  content: "\f36e";
}
.bi-file-earmark-lock::before {
  content: "\f36f";
}
.bi-file-earmark-lock2-fill::before {
  content: "\f370";
}
.bi-file-earmark-lock2::before {
  content: "\f371";
}
.bi-file-earmark-medical-fill::before {
  content: "\f372";
}
.bi-file-earmark-medical::before {
  content: "\f373";
}
.bi-file-earmark-minus-fill::before {
  content: "\f374";
}
.bi-file-earmark-minus::before {
  content: "\f375";
}
.bi-file-earmark-music-fill::before {
  content: "\f376";
}
.bi-file-earmark-music::before {
  content: "\f377";
}
.bi-file-earmark-person-fill::before {
  content: "\f378";
}
.bi-file-earmark-person::before {
  content: "\f379";
}
.bi-file-earmark-play-fill::before {
  content: "\f37a";
}
.bi-file-earmark-play::before {
  content: "\f37b";
}
.bi-file-earmark-plus-fill::before {
  content: "\f37c";
}
.bi-file-earmark-plus::before {
  content: "\f37d";
}
.bi-file-earmark-post-fill::before {
  content: "\f37e";
}
.bi-file-earmark-post::before {
  content: "\f37f";
}
.bi-file-earmark-ppt-fill::before {
  content: "\f380";
}
.bi-file-earmark-ppt::before {
  content: "\f381";
}
.bi-file-earmark-richtext-fill::before {
  content: "\f382";
}
.bi-file-earmark-richtext::before {
  content: "\f383";
}
.bi-file-earmark-ruled-fill::before {
  content: "\f384";
}
.bi-file-earmark-ruled::before {
  content: "\f385";
}
.bi-file-earmark-slides-fill::before {
  content: "\f386";
}
.bi-file-earmark-slides::before {
  content: "\f387";
}
.bi-file-earmark-spreadsheet-fill::before {
  content: "\f388";
}
.bi-file-earmark-spreadsheet::before {
  content: "\f389";
}
.bi-file-earmark-text-fill::before {
  content: "\f38a";
}
.bi-file-earmark-text::before {
  content: "\f38b";
}
.bi-file-earmark-word-fill::before {
  content: "\f38c";
}
.bi-file-earmark-word::before {
  content: "\f38d";
}
.bi-file-earmark-x-fill::before {
  content: "\f38e";
}
.bi-file-earmark-x::before {
  content: "\f38f";
}
.bi-file-earmark-zip-fill::before {
  content: "\f390";
}
.bi-file-earmark-zip::before {
  content: "\f391";
}
.bi-file-earmark::before {
  content: "\f392";
}
.bi-file-easel-fill::before {
  content: "\f393";
}
.bi-file-easel::before {
  content: "\f394";
}
.bi-file-excel-fill::before {
  content: "\f395";
}
.bi-file-excel::before {
  content: "\f396";
}
.bi-file-fill::before {
  content: "\f397";
}
.bi-file-font-fill::before {
  content: "\f398";
}
.bi-file-font::before {
  content: "\f399";
}
.bi-file-image-fill::before {
  content: "\f39a";
}
.bi-file-image::before {
  content: "\f39b";
}
.bi-file-lock-fill::before {
  content: "\f39c";
}
.bi-file-lock::before {
  content: "\f39d";
}
.bi-file-lock2-fill::before {
  content: "\f39e";
}
.bi-file-lock2::before {
  content: "\f39f";
}
.bi-file-medical-fill::before {
  content: "\f3a0";
}
.bi-file-medical::before {
  content: "\f3a1";
}
.bi-file-minus-fill::before {
  content: "\f3a2";
}
.bi-file-minus::before {
  content: "\f3a3";
}
.bi-file-music-fill::before {
  content: "\f3a4";
}
.bi-file-music::before {
  content: "\f3a5";
}
.bi-file-person-fill::before {
  content: "\f3a6";
}
.bi-file-person::before {
  content: "\f3a7";
}
.bi-file-play-fill::before {
  content: "\f3a8";
}
.bi-file-play::before {
  content: "\f3a9";
}
.bi-file-plus-fill::before {
  content: "\f3aa";
}
.bi-file-plus::before {
  content: "\f3ab";
}
.bi-file-post-fill::before {
  content: "\f3ac";
}
.bi-file-post::before {
  content: "\f3ad";
}
.bi-file-ppt-fill::before {
  content: "\f3ae";
}
.bi-file-ppt::before {
  content: "\f3af";
}
.bi-file-richtext-fill::before {
  content: "\f3b0";
}
.bi-file-richtext::before {
  content: "\f3b1";
}
.bi-file-ruled-fill::before {
  content: "\f3b2";
}
.bi-file-ruled::before {
  content: "\f3b3";
}
.bi-file-slides-fill::before {
  content: "\f3b4";
}
.bi-file-slides::before {
  content: "\f3b5";
}
.bi-file-spreadsheet-fill::before {
  content: "\f3b6";
}
.bi-file-spreadsheet::before {
  content: "\f3b7";
}
.bi-file-text-fill::before {
  content: "\f3b8";
}
.bi-file-text::before {
  content: "\f3b9";
}
.bi-file-word-fill::before {
  content: "\f3ba";
}
.bi-file-word::before {
  content: "\f3bb";
}
.bi-file-x-fill::before {
  content: "\f3bc";
}
.bi-file-x::before {
  content: "\f3bd";
}
.bi-file-zip-fill::before {
  content: "\f3be";
}
.bi-file-zip::before {
  content: "\f3bf";
}
.bi-file::before {
  content: "\f3c0";
}
.bi-files-alt::before {
  content: "\f3c1";
}
.bi-files::before {
  content: "\f3c2";
}
.bi-film::before {
  content: "\f3c3";
}
.bi-filter-circle-fill::before {
  content: "\f3c4";
}
.bi-filter-circle::before {
  content: "\f3c5";
}
.bi-filter-left::before {
  content: "\f3c6";
}
.bi-filter-right::before {
  content: "\f3c7";
}
.bi-filter-square-fill::before {
  content: "\f3c8";
}
.bi-filter-square::before {
  content: "\f3c9";
}
.bi-filter::before {
  content: "\f3ca";
}
.bi-flag-fill::before {
  content: "\f3cb";
}
.bi-flag::before {
  content: "\f3cc";
}
.bi-flower1::before {
  content: "\f3cd";
}
.bi-flower2::before {
  content: "\f3ce";
}
.bi-flower3::before {
  content: "\f3cf";
}
.bi-folder-check::before {
  content: "\f3d0";
}
.bi-folder-fill::before {
  content: "\f3d1";
}
.bi-folder-minus::before {
  content: "\f3d2";
}
.bi-folder-plus::before {
  content: "\f3d3";
}
.bi-folder-symlink-fill::before {
  content: "\f3d4";
}
.bi-folder-symlink::before {
  content: "\f3d5";
}
.bi-folder-x::before {
  content: "\f3d6";
}
.bi-folder::before {
  content: "\f3d7";
}
.bi-folder2-open::before {
  content: "\f3d8";
}
.bi-folder2::before {
  content: "\f3d9";
}
.bi-fonts::before {
  content: "\f3da";
}
.bi-forward-fill::before {
  content: "\f3db";
}
.bi-forward::before {
  content: "\f3dc";
}
.bi-front::before {
  content: "\f3dd";
}
.bi-fullscreen-exit::before {
  content: "\f3de";
}
.bi-fullscreen::before {
  content: "\f3df";
}
.bi-funnel-fill::before {
  content: "\f3e0";
}
.bi-funnel::before {
  content: "\f3e1";
}
.bi-gear-fill::before {
  content: "\f3e2";
}
.bi-gear-wide-connected::before {
  content: "\f3e3";
}
.bi-gear-wide::before {
  content: "\f3e4";
}
.bi-gear::before {
  content: "\f3e5";
}
.bi-gem::before {
  content: "\f3e6";
}
.bi-geo-alt-fill::before {
  content: "\f3e7";
}
.bi-geo-alt::before {
  content: "\f3e8";
}
.bi-geo-fill::before {
  content: "\f3e9";
}
.bi-geo::before {
  content: "\f3ea";
}
.bi-gift-fill::before {
  content: "\f3eb";
}
.bi-gift::before {
  content: "\f3ec";
}
.bi-github::before {
  content: "\f3ed";
}
.bi-globe::before {
  content: "\f3ee";
}
.bi-globe2::before {
  content: "\f3ef";
}
.bi-google::before {
  content: "\f3f0";
}
.bi-graph-down::before {
  content: "\f3f1";
}
.bi-graph-up::before {
  content: "\f3f2";
}
.bi-grid-1x2-fill::before {
  content: "\f3f3";
}
.bi-grid-1x2::before {
  content: "\f3f4";
}
.bi-grid-3x2-gap-fill::before {
  content: "\f3f5";
}
.bi-grid-3x2-gap::before {
  content: "\f3f6";
}
.bi-grid-3x2::before {
  content: "\f3f7";
}
.bi-grid-3x3-gap-fill::before {
  content: "\f3f8";
}
.bi-grid-3x3-gap::before {
  content: "\f3f9";
}
.bi-grid-3x3::before {
  content: "\f3fa";
}
.bi-grid-fill::before {
  content: "\f3fb";
}
.bi-grid::before {
  content: "\f3fc";
}
.bi-grip-horizontal::before {
  content: "\f3fd";
}
.bi-grip-vertical::before {
  content: "\f3fe";
}
.bi-hammer::before {
  content: "\f3ff";
}
.bi-hand-index-fill::before {
  content: "\f400";
}
.bi-hand-index-thumb-fill::before {
  content: "\f401";
}
.bi-hand-index-thumb::before {
  content: "\f402";
}
.bi-hand-index::before {
  content: "\f403";
}
.bi-hand-thumbs-down-fill::before {
  content: "\f404";
}
.bi-hand-thumbs-down::before {
  content: "\f405";
}
.bi-hand-thumbs-up-fill::before {
  content: "\f406";
}
.bi-hand-thumbs-up::before {
  content: "\f407";
}
.bi-handbag-fill::before {
  content: "\f408";
}
.bi-handbag::before {
  content: "\f409";
}
.bi-hash::before {
  content: "\f40a";
}
.bi-hdd-fill::before {
  content: "\f40b";
}
.bi-hdd-network-fill::before {
  content: "\f40c";
}
.bi-hdd-network::before {
  content: "\f40d";
}
.bi-hdd-rack-fill::before {
  content: "\f40e";
}
.bi-hdd-rack::before {
  content: "\f40f";
}
.bi-hdd-stack-fill::before {
  content: "\f410";
}
.bi-hdd-stack::before {
  content: "\f411";
}
.bi-hdd::before {
  content: "\f412";
}
.bi-headphones::before {
  content: "\f413";
}
.bi-headset::before {
  content: "\f414";
}
.bi-heart-fill::before {
  content: "\f415";
}
.bi-heart-half::before {
  content: "\f416";
}
.bi-heart::before {
  content: "\f417";
}
.bi-heptagon-fill::before {
  content: "\f418";
}
.bi-heptagon-half::before {
  content: "\f419";
}
.bi-heptagon::before {
  content: "\f41a";
}
.bi-hexagon-fill::before {
  content: "\f41b";
}
.bi-hexagon-half::before {
  content: "\f41c";
}
.bi-hexagon::before {
  content: "\f41d";
}
.bi-hourglass-bottom::before {
  content: "\f41e";
}
.bi-hourglass-split::before {
  content: "\f41f";
}
.bi-hourglass-top::before {
  content: "\f420";
}
.bi-hourglass::before {
  content: "\f421";
}
.bi-house-door-fill::before {
  content: "\f422";
}
.bi-house-door::before {
  content: "\f423";
}
.bi-house-fill::before {
  content: "\f424";
}
.bi-house::before {
  content: "\f425";
}
.bi-hr::before {
  content: "\f426";
}
.bi-hurricane::before {
  content: "\f427";
}
.bi-image-alt::before {
  content: "\f428";
}
.bi-image-fill::before {
  content: "\f429";
}
.bi-image::before {
  content: "\f42a";
}
.bi-images::before {
  content: "\f42b";
}
.bi-inbox-fill::before {
  content: "\f42c";
}
.bi-inbox::before {
  content: "\f42d";
}
.bi-inboxes-fill::before {
  content: "\f42e";
}
.bi-inboxes::before {
  content: "\f42f";
}
.bi-info-circle-fill::before {
  content: "\f430";
}
.bi-info-circle::before {
  content: "\f431";
}
.bi-info-square-fill::before {
  content: "\f432";
}
.bi-info-square::before {
  content: "\f433";
}
.bi-info::before {
  content: "\f434";
}
.bi-input-cursor-text::before {
  content: "\f435";
}
.bi-input-cursor::before {
  content: "\f436";
}
.bi-instagram::before {
  content: "\f437";
}
.bi-intersect::before {
  content: "\f438";
}
.bi-journal-album::before {
  content: "\f439";
}
.bi-journal-arrow-down::before {
  content: "\f43a";
}
.bi-journal-arrow-up::before {
  content: "\f43b";
}
.bi-journal-bookmark-fill::before {
  content: "\f43c";
}
.bi-journal-bookmark::before {
  content: "\f43d";
}
.bi-journal-check::before {
  content: "\f43e";
}
.bi-journal-code::before {
  content: "\f43f";
}
.bi-journal-medical::before {
  content: "\f440";
}
.bi-journal-minus::before {
  content: "\f441";
}
.bi-journal-plus::before {
  content: "\f442";
}
.bi-journal-richtext::before {
  content: "\f443";
}
.bi-journal-text::before {
  content: "\f444";
}
.bi-journal-x::before {
  content: "\f445";
}
.bi-journal::before {
  content: "\f446";
}
.bi-journals::before {
  content: "\f447";
}
.bi-joystick::before {
  content: "\f448";
}
.bi-justify-left::before {
  content: "\f449";
}
.bi-justify-right::before {
  content: "\f44a";
}
.bi-justify::before {
  content: "\f44b";
}
.bi-kanban-fill::before {
  content: "\f44c";
}
.bi-kanban::before {
  content: "\f44d";
}
.bi-key-fill::before {
  content: "\f44e";
}
.bi-key::before {
  content: "\f44f";
}
.bi-keyboard-fill::before {
  content: "\f450";
}
.bi-keyboard::before {
  content: "\f451";
}
.bi-ladder::before {
  content: "\f452";
}
.bi-lamp-fill::before {
  content: "\f453";
}
.bi-lamp::before {
  content: "\f454";
}
.bi-laptop-fill::before {
  content: "\f455";
}
.bi-laptop::before {
  content: "\f456";
}
.bi-layer-backward::before {
  content: "\f457";
}
.bi-layer-forward::before {
  content: "\f458";
}
.bi-layers-fill::before {
  content: "\f459";
}
.bi-layers-half::before {
  content: "\f45a";
}
.bi-layers::before {
  content: "\f45b";
}
.bi-layout-sidebar-inset-reverse::before {
  content: "\f45c";
}
.bi-layout-sidebar-inset::before {
  content: "\f45d";
}
.bi-layout-sidebar-reverse::before {
  content: "\f45e";
}
.bi-layout-sidebar::before {
  content: "\f45f";
}
.bi-layout-split::before {
  content: "\f460";
}
.bi-layout-text-sidebar-reverse::before {
  content: "\f461";
}
.bi-layout-text-sidebar::before {
  content: "\f462";
}
.bi-layout-text-window-reverse::before {
  content: "\f463";
}
.bi-layout-text-window::before {
  content: "\f464";
}
.bi-layout-three-columns::before {
  content: "\f465";
}
.bi-layout-wtf::before {
  content: "\f466";
}
.bi-life-preserver::before {
  content: "\f467";
}
.bi-lightbulb-fill::before {
  content: "\f468";
}
.bi-lightbulb-off-fill::before {
  content: "\f469";
}
.bi-lightbulb-off::before {
  content: "\f46a";
}
.bi-lightbulb::before {
  content: "\f46b";
}
.bi-lightning-charge-fill::before {
  content: "\f46c";
}
.bi-lightning-charge::before {
  content: "\f46d";
}
.bi-lightning-fill::before {
  content: "\f46e";
}
.bi-lightning::before {
  content: "\f46f";
}
.bi-link-45deg::before {
  content: "\f470";
}
.bi-link::before {
  content: "\f471";
}
.bi-linkedin::before {
  content: "\f472";
}
.bi-list-check::before {
  content: "\f473";
}
.bi-list-nested::before {
  content: "\f474";
}
.bi-list-ol::before {
  content: "\f475";
}
.bi-list-stars::before {
  content: "\f476";
}
.bi-list-task::before {
  content: "\f477";
}
.bi-list-ul::before {
  content: "\f478";
}
.bi-list::before {
  content: "\f479";
}
.bi-lock-fill::before {
  content: "\f47a";
}
.bi-lock::before {
  content: "\f47b";
}
.bi-mailbox::before {
  content: "\f47c";
}
.bi-mailbox2::before {
  content: "\f47d";
}
.bi-map-fill::before {
  content: "\f47e";
}
.bi-map::before {
  content: "\f47f";
}
.bi-markdown-fill::before {
  content: "\f480";
}
.bi-markdown::before {
  content: "\f481";
}
.bi-mask::before {
  content: "\f482";
}
.bi-megaphone-fill::before {
  content: "\f483";
}
.bi-megaphone::before {
  content: "\f484";
}
.bi-menu-app-fill::before {
  content: "\f485";
}
.bi-menu-app::before {
  content: "\f486";
}
.bi-menu-button-fill::before {
  content: "\f487";
}
.bi-menu-button-wide-fill::before {
  content: "\f488";
}
.bi-menu-button-wide::before {
  content: "\f489";
}
.bi-menu-button::before {
  content: "\f48a";
}
.bi-menu-down::before {
  content: "\f48b";
}
.bi-menu-up::before {
  content: "\f48c";
}
.bi-mic-fill::before {
  content: "\f48d";
}
.bi-mic-mute-fill::before {
  content: "\f48e";
}
.bi-mic-mute::before {
  content: "\f48f";
}
.bi-mic::before {
  content: "\f490";
}
.bi-minecart-loaded::before {
  content: "\f491";
}
.bi-minecart::before {
  content: "\f492";
}
.bi-moisture::before {
  content: "\f493";
}
.bi-moon-fill::before {
  content: "\f494";
}
.bi-moon-stars-fill::before {
  content: "\f495";
}
.bi-moon-stars::before {
  content: "\f496";
}
.bi-moon::before {
  content: "\f497";
}
.bi-mouse-fill::before {
  content: "\f498";
}
.bi-mouse::before {
  content: "\f499";
}
.bi-mouse2-fill::before {
  content: "\f49a";
}
.bi-mouse2::before {
  content: "\f49b";
}
.bi-mouse3-fill::before {
  content: "\f49c";
}
.bi-mouse3::before {
  content: "\f49d";
}
.bi-music-note-beamed::before {
  content: "\f49e";
}
.bi-music-note-list::before {
  content: "\f49f";
}
.bi-music-note::before {
  content: "\f4a0";
}
.bi-music-player-fill::before {
  content: "\f4a1";
}
.bi-music-player::before {
  content: "\f4a2";
}
.bi-newspaper::before {
  content: "\f4a3";
}
.bi-node-minus-fill::before {
  content: "\f4a4";
}
.bi-node-minus::before {
  content: "\f4a5";
}
.bi-node-plus-fill::before {
  content: "\f4a6";
}
.bi-node-plus::before {
  content: "\f4a7";
}
.bi-nut-fill::before {
  content: "\f4a8";
}
.bi-nut::before {
  content: "\f4a9";
}
.bi-octagon-fill::before {
  content: "\f4aa";
}
.bi-octagon-half::before {
  content: "\f4ab";
}
.bi-octagon::before {
  content: "\f4ac";
}
.bi-option::before {
  content: "\f4ad";
}
.bi-outlet::before {
  content: "\f4ae";
}
.bi-paint-bucket::before {
  content: "\f4af";
}
.bi-palette-fill::before {
  content: "\f4b0";
}
.bi-palette::before {
  content: "\f4b1";
}
.bi-palette2::before {
  content: "\f4b2";
}
.bi-paperclip::before {
  content: "\f4b3";
}
.bi-paragraph::before {
  content: "\f4b4";
}
.bi-patch-check-fill::before {
  content: "\f4b5";
}
.bi-patch-check::before {
  content: "\f4b6";
}
.bi-patch-exclamation-fill::before {
  content: "\f4b7";
}
.bi-patch-exclamation::before {
  content: "\f4b8";
}
.bi-patch-minus-fill::before {
  content: "\f4b9";
}
.bi-patch-minus::before {
  content: "\f4ba";
}
.bi-patch-plus-fill::before {
  content: "\f4bb";
}
.bi-patch-plus::before {
  content: "\f4bc";
}
.bi-patch-question-fill::before {
  content: "\f4bd";
}
.bi-patch-question::before {
  content: "\f4be";
}
.bi-pause-btn-fill::before {
  content: "\f4bf";
}
.bi-pause-btn::before {
  content: "\f4c0";
}
.bi-pause-circle-fill::before {
  content: "\f4c1";
}
.bi-pause-circle::before {
  content: "\f4c2";
}
.bi-pause-fill::before {
  content: "\f4c3";
}
.bi-pause::before {
  content: "\f4c4";
}
.bi-peace-fill::before {
  content: "\f4c5";
}
.bi-peace::before {
  content: "\f4c6";
}
.bi-pen-fill::before {
  content: "\f4c7";
}
.bi-pen::before {
  content: "\f4c8";
}
.bi-pencil-fill::before {
  content: "\f4c9";
}
.bi-pencil-square::before {
  content: "\f4ca";
}
.bi-pencil::before {
  content: "\f4cb";
}
.bi-pentagon-fill::before {
  content: "\f4cc";
}
.bi-pentagon-half::before {
  content: "\f4cd";
}
.bi-pentagon::before {
  content: "\f4ce";
}
.bi-people-fill::before {
  content: "\f4cf";
}
.bi-people::before {
  content: "\f4d0";
}
.bi-percent::before {
  content: "\f4d1";
}
.bi-person-badge-fill::before {
  content: "\f4d2";
}
.bi-person-badge::before {
  content: "\f4d3";
}
.bi-person-bounding-box::before {
  content: "\f4d4";
}
.bi-person-check-fill::before {
  content: "\f4d5";
}
.bi-person-check::before {
  content: "\f4d6";
}
.bi-person-circle::before {
  content: "\f4d7";
}
.bi-person-dash-fill::before {
  content: "\f4d8";
}
.bi-person-dash::before {
  content: "\f4d9";
}
.bi-person-fill::before {
  content: "\f4da";
}
.bi-person-lines-fill::before {
  content: "\f4db";
}
.bi-person-plus-fill::before {
  content: "\f4dc";
}
.bi-person-plus::before {
  content: "\f4dd";
}
.bi-person-square::before {
  content: "\f4de";
}
.bi-person-x-fill::before {
  content: "\f4df";
}
.bi-person-x::before {
  content: "\f4e0";
}
.bi-person::before {
  content: "\f4e1";
}
.bi-phone-fill::before {
  content: "\f4e2";
}
.bi-phone-landscape-fill::before {
  content: "\f4e3";
}
.bi-phone-landscape::before {
  content: "\f4e4";
}
.bi-phone-vibrate-fill::before {
  content: "\f4e5";
}
.bi-phone-vibrate::before {
  content: "\f4e6";
}
.bi-phone::before {
  content: "\f4e7";
}
.bi-pie-chart-fill::before {
  content: "\f4e8";
}
.bi-pie-chart::before {
  content: "\f4e9";
}
.bi-pin-angle-fill::before {
  content: "\f4ea";
}
.bi-pin-angle::before {
  content: "\f4eb";
}
.bi-pin-fill::before {
  content: "\f4ec";
}
.bi-pin::before {
  content: "\f4ed";
}
.bi-pip-fill::before {
  content: "\f4ee";
}
.bi-pip::before {
  content: "\f4ef";
}
.bi-play-btn-fill::before {
  content: "\f4f0";
}
.bi-play-btn::before {
  content: "\f4f1";
}
.bi-play-circle-fill::before {
  content: "\f4f2";
}
.bi-play-circle::before {
  content: "\f4f3";
}
.bi-play-fill::before {
  content: "\f4f4";
}
.bi-play::before {
  content: "\f4f5";
}
.bi-plug-fill::before {
  content: "\f4f6";
}
.bi-plug::before {
  content: "\f4f7";
}
.bi-plus-circle-dotted::before {
  content: "\f4f8";
}
.bi-plus-circle-fill::before {
  content: "\f4f9";
}
.bi-plus-circle::before {
  content: "\f4fa";
}
.bi-plus-square-dotted::before {
  content: "\f4fb";
}
.bi-plus-square-fill::before {
  content: "\f4fc";
}
.bi-plus-square::before {
  content: "\f4fd";
}
.bi-plus::before {
  content: "\f4fe";
}
.bi-power::before {
  content: "\f4ff";
}
.bi-printer-fill::before {
  content: "\f500";
}
.bi-printer::before {
  content: "\f501";
}
.bi-puzzle-fill::before {
  content: "\f502";
}
.bi-puzzle::before {
  content: "\f503";
}
.bi-question-circle-fill::before {
  content: "\f504";
}
.bi-question-circle::before {
  content: "\f505";
}
.bi-question-diamond-fill::before {
  content: "\f506";
}
.bi-question-diamond::before {
  content: "\f507";
}
.bi-question-octagon-fill::before {
  content: "\f508";
}
.bi-question-octagon::before {
  content: "\f509";
}
.bi-question-square-fill::before {
  content: "\f50a";
}
.bi-question-square::before {
  content: "\f50b";
}
.bi-question::before {
  content: "\f50c";
}
.bi-rainbow::before {
  content: "\f50d";
}
.bi-receipt-cutoff::before {
  content: "\f50e";
}
.bi-receipt::before {
  content: "\f50f";
}
.bi-reception-0::before {
  content: "\f510";
}
.bi-reception-1::before {
  content: "\f511";
}
.bi-reception-2::before {
  content: "\f512";
}
.bi-reception-3::before {
  content: "\f513";
}
.bi-reception-4::before {
  content: "\f514";
}
.bi-record-btn-fill::before {
  content: "\f515";
}
.bi-record-btn::before {
  content: "\f516";
}
.bi-record-circle-fill::before {
  content: "\f517";
}
.bi-record-circle::before {
  content: "\f518";
}
.bi-record-fill::before {
  content: "\f519";
}
.bi-record::before {
  content: "\f51a";
}
.bi-record2-fill::before {
  content: "\f51b";
}
.bi-record2::before {
  content: "\f51c";
}
.bi-reply-all-fill::before {
  content: "\f51d";
}
.bi-reply-all::before {
  content: "\f51e";
}
.bi-reply-fill::before {
  content: "\f51f";
}
.bi-reply::before {
  content: "\f520";
}
.bi-rss-fill::before {
  content: "\f521";
}
.bi-rss::before {
  content: "\f522";
}
.bi-rulers::before {
  content: "\f523";
}
.bi-save-fill::before {
  content: "\f524";
}
.bi-save::before {
  content: "\f525";
}
.bi-save2-fill::before {
  content: "\f526";
}
.bi-save2::before {
  content: "\f527";
}
.bi-scissors::before {
  content: "\f528";
}
.bi-screwdriver::before {
  content: "\f529";
}
.bi-search::before {
  content: "\f52a";
}
.bi-segmented-nav::before {
  content: "\f52b";
}
.bi-server::before {
  content: "\f52c";
}
.bi-share-fill::before {
  content: "\f52d";
}
.bi-share::before {
  content: "\f52e";
}
.bi-shield-check::before {
  content: "\f52f";
}
.bi-shield-exclamation::before {
  content: "\f530";
}
.bi-shield-fill-check::before {
  content: "\f531";
}
.bi-shield-fill-exclamation::before {
  content: "\f532";
}
.bi-shield-fill-minus::before {
  content: "\f533";
}
.bi-shield-fill-plus::before {
  content: "\f534";
}
.bi-shield-fill-x::before {
  content: "\f535";
}
.bi-shield-fill::before {
  content: "\f536";
}
.bi-shield-lock-fill::before {
  content: "\f537";
}
.bi-shield-lock::before {
  content: "\f538";
}
.bi-shield-minus::before {
  content: "\f539";
}
.bi-shield-plus::before {
  content: "\f53a";
}
.bi-shield-shaded::before {
  content: "\f53b";
}
.bi-shield-slash-fill::before {
  content: "\f53c";
}
.bi-shield-slash::before {
  content: "\f53d";
}
.bi-shield-x::before {
  content: "\f53e";
}
.bi-shield::before {
  content: "\f53f";
}
.bi-shift-fill::before {
  content: "\f540";
}
.bi-shift::before {
  content: "\f541";
}
.bi-shop-window::before {
  content: "\f542";
}
.bi-shop::before {
  content: "\f543";
}
.bi-shuffle::before {
  content: "\f544";
}
.bi-signpost-2-fill::before {
  content: "\f545";
}
.bi-signpost-2::before {
  content: "\f546";
}
.bi-signpost-fill::before {
  content: "\f547";
}
.bi-signpost-split-fill::before {
  content: "\f548";
}
.bi-signpost-split::before {
  content: "\f549";
}
.bi-signpost::before {
  content: "\f54a";
}
.bi-sim-fill::before {
  content: "\f54b";
}
.bi-sim::before {
  content: "\f54c";
}
.bi-skip-backward-btn-fill::before {
  content: "\f54d";
}
.bi-skip-backward-btn::before {
  content: "\f54e";
}
.bi-skip-backward-circle-fill::before {
  content: "\f54f";
}
.bi-skip-backward-circle::before {
  content: "\f550";
}
.bi-skip-backward-fill::before {
  content: "\f551";
}
.bi-skip-backward::before {
  content: "\f552";
}
.bi-skip-end-btn-fill::before {
  content: "\f553";
}
.bi-skip-end-btn::before {
  content: "\f554";
}
.bi-skip-end-circle-fill::before {
  content: "\f555";
}
.bi-skip-end-circle::before {
  content: "\f556";
}
.bi-skip-end-fill::before {
  content: "\f557";
}
.bi-skip-end::before {
  content: "\f558";
}
.bi-skip-forward-btn-fill::before {
  content: "\f559";
}
.bi-skip-forward-btn::before {
  content: "\f55a";
}
.bi-skip-forward-circle-fill::before {
  content: "\f55b";
}
.bi-skip-forward-circle::before {
  content: "\f55c";
}
.bi-skip-forward-fill::before {
  content: "\f55d";
}
.bi-skip-forward::before {
  content: "\f55e";
}
.bi-skip-start-btn-fill::before {
  content: "\f55f";
}
.bi-skip-start-btn::before {
  content: "\f560";
}
.bi-skip-start-circle-fill::before {
  content: "\f561";
}
.bi-skip-start-circle::before {
  content: "\f562";
}
.bi-skip-start-fill::before {
  content: "\f563";
}
.bi-skip-start::before {
  content: "\f564";
}
.bi-slack::before {
  content: "\f565";
}
.bi-slash-circle-fill::before {
  content: "\f566";
}
.bi-slash-circle::before {
  content: "\f567";
}
.bi-slash-square-fill::before {
  content: "\f568";
}
.bi-slash-square::before {
  content: "\f569";
}
.bi-slash::before {
  content: "\f56a";
}
.bi-sliders::before {
  content: "\f56b";
}
.bi-smartwatch::before {
  content: "\f56c";
}
.bi-snow::before {
  content: "\f56d";
}
.bi-snow2::before {
  content: "\f56e";
}
.bi-snow3::before {
  content: "\f56f";
}
.bi-sort-alpha-down-alt::before {
  content: "\f570";
}
.bi-sort-alpha-down::before {
  content: "\f571";
}
.bi-sort-alpha-up-alt::before {
  content: "\f572";
}
.bi-sort-alpha-up::before {
  content: "\f573";
}
.bi-sort-down-alt::before {
  content: "\f574";
}
.bi-sort-down::before {
  content: "\f575";
}
.bi-sort-numeric-down-alt::before {
  content: "\f576";
}
.bi-sort-numeric-down::before {
  content: "\f577";
}
.bi-sort-numeric-up-alt::before {
  content: "\f578";
}
.bi-sort-numeric-up::before {
  content: "\f579";
}
.bi-sort-up-alt::before {
  content: "\f57a";
}
.bi-sort-up::before {
  content: "\f57b";
}
.bi-soundwave::before {
  content: "\f57c";
}
.bi-speaker-fill::before {
  content: "\f57d";
}
.bi-speaker::before {
  content: "\f57e";
}
.bi-speedometer::before {
  content: "\f57f";
}
.bi-speedometer2::before {
  content: "\f580";
}
.bi-spellcheck::before {
  content: "\f581";
}
.bi-square-fill::before {
  content: "\f582";
}
.bi-square-half::before {
  content: "\f583";
}
.bi-square::before {
  content: "\f584";
}
.bi-stack::before {
  content: "\f585";
}
.bi-star-fill::before {
  content: "\f586";
}
.bi-star-half::before {
  content: "\f587";
}
.bi-star::before {
  content: "\f588";
}
.bi-stars::before {
  content: "\f589";
}
.bi-stickies-fill::before {
  content: "\f58a";
}
.bi-stickies::before {
  content: "\f58b";
}
.bi-sticky-fill::before {
  content: "\f58c";
}
.bi-sticky::before {
  content: "\f58d";
}
.bi-stop-btn-fill::before {
  content: "\f58e";
}
.bi-stop-btn::before {
  content: "\f58f";
}
.bi-stop-circle-fill::before {
  content: "\f590";
}
.bi-stop-circle::before {
  content: "\f591";
}
.bi-stop-fill::before {
  content: "\f592";
}
.bi-stop::before {
  content: "\f593";
}
.bi-stoplights-fill::before {
  content: "\f594";
}
.bi-stoplights::before {
  content: "\f595";
}
.bi-stopwatch-fill::before {
  content: "\f596";
}
.bi-stopwatch::before {
  content: "\f597";
}
.bi-subtract::before {
  content: "\f598";
}
.bi-suit-club-fill::before {
  content: "\f599";
}
.bi-suit-club::before {
  content: "\f59a";
}
.bi-suit-diamond-fill::before {
  content: "\f59b";
}
.bi-suit-diamond::before {
  content: "\f59c";
}
.bi-suit-heart-fill::before {
  content: "\f59d";
}
.bi-suit-heart::before {
  content: "\f59e";
}
.bi-suit-spade-fill::before {
  content: "\f59f";
}
.bi-suit-spade::before {
  content: "\f5a0";
}
.bi-sun-fill::before {
  content: "\f5a1";
}
.bi-sun::before {
  content: "\f5a2";
}
.bi-sunglasses::before {
  content: "\f5a3";
}
.bi-sunrise-fill::before {
  content: "\f5a4";
}
.bi-sunrise::before {
  content: "\f5a5";
}
.bi-sunset-fill::before {
  content: "\f5a6";
}
.bi-sunset::before {
  content: "\f5a7";
}
.bi-symmetry-horizontal::before {
  content: "\f5a8";
}
.bi-symmetry-vertical::before {
  content: "\f5a9";
}
.bi-table::before {
  content: "\f5aa";
}
.bi-tablet-fill::before {
  content: "\f5ab";
}
.bi-tablet-landscape-fill::before {
  content: "\f5ac";
}
.bi-tablet-landscape::before {
  content: "\f5ad";
}
.bi-tablet::before {
  content: "\f5ae";
}
.bi-tag-fill::before {
  content: "\f5af";
}
.bi-tag::before {
  content: "\f5b0";
}
.bi-tags-fill::before {
  content: "\f5b1";
}
.bi-tags::before {
  content: "\f5b2";
}
.bi-telegram::before {
  content: "\f5b3";
}
.bi-telephone-fill::before {
  content: "\f5b4";
}
.bi-telephone-forward-fill::before {
  content: "\f5b5";
}
.bi-telephone-forward::before {
  content: "\f5b6";
}
.bi-telephone-inbound-fill::before {
  content: "\f5b7";
}
.bi-telephone-inbound::before {
  content: "\f5b8";
}
.bi-telephone-minus-fill::before {
  content: "\f5b9";
}
.bi-telephone-minus::before {
  content: "\f5ba";
}
.bi-telephone-outbound-fill::before {
  content: "\f5bb";
}
.bi-telephone-outbound::before {
  content: "\f5bc";
}
.bi-telephone-plus-fill::before {
  content: "\f5bd";
}
.bi-telephone-plus::before {
  content: "\f5be";
}
.bi-telephone-x-fill::before {
  content: "\f5bf";
}
.bi-telephone-x::before {
  content: "\f5c0";
}
.bi-telephone::before {
  content: "\f5c1";
}
.bi-terminal-fill::before {
  content: "\f5c2";
}
.bi-terminal::before {
  content: "\f5c3";
}
.bi-text-center::before {
  content: "\f5c4";
}
.bi-text-indent-left::before {
  content: "\f5c5";
}
.bi-text-indent-right::before {
  content: "\f5c6";
}
.bi-text-left::before {
  content: "\f5c7";
}
.bi-text-paragraph::before {
  content: "\f5c8";
}
.bi-text-right::before {
  content: "\f5c9";
}
.bi-textarea-resize::before {
  content: "\f5ca";
}
.bi-textarea-t::before {
  content: "\f5cb";
}
.bi-textarea::before {
  content: "\f5cc";
}
.bi-thermometer-half::before {
  content: "\f5cd";
}
.bi-thermometer-high::before {
  content: "\f5ce";
}
.bi-thermometer-low::before {
  content: "\f5cf";
}
.bi-thermometer-snow::before {
  content: "\f5d0";
}
.bi-thermometer-sun::before {
  content: "\f5d1";
}
.bi-thermometer::before {
  content: "\f5d2";
}
.bi-three-dots-vertical::before {
  content: "\f5d3";
}
.bi-three-dots::before {
  content: "\f5d4";
}
.bi-toggle-off::before {
  content: "\f5d5";
}
.bi-toggle-on::before {
  content: "\f5d6";
}
.bi-toggle2-off::before {
  content: "\f5d7";
}
.bi-toggle2-on::before {
  content: "\f5d8";
}
.bi-toggles::before {
  content: "\f5d9";
}
.bi-toggles2::before {
  content: "\f5da";
}
.bi-tools::before {
  content: "\f5db";
}
.bi-tornado::before {
  content: "\f5dc";
}
.bi-trash-fill::before {
  content: "\f5dd";
}
.bi-trash::before {
  content: "\f5de";
}
.bi-trash2-fill::before {
  content: "\f5df";
}
.bi-trash2::before {
  content: "\f5e0";
}
.bi-tree-fill::before {
  content: "\f5e1";
}
.bi-tree::before {
  content: "\f5e2";
}
.bi-triangle-fill::before {
  content: "\f5e3";
}
.bi-triangle-half::before {
  content: "\f5e4";
}
.bi-triangle::before {
  content: "\f5e5";
}
.bi-trophy-fill::before {
  content: "\f5e6";
}
.bi-trophy::before {
  content: "\f5e7";
}
.bi-tropical-storm::before {
  content: "\f5e8";
}
.bi-truck-flatbed::before {
  content: "\f5e9";
}
.bi-truck::before {
  content: "\f5ea";
}
.bi-tsunami::before {
  content: "\f5eb";
}
.bi-tv-fill::before {
  content: "\f5ec";
}
.bi-tv::before {
  content: "\f5ed";
}
.bi-twitch::before {
  content: "\f5ee";
}
.bi-twitter::before {
  content: "\f5ef";
}
.bi-type-bold::before {
  content: "\f5f0";
}
.bi-type-h1::before {
  content: "\f5f1";
}
.bi-type-h2::before {
  content: "\f5f2";
}
.bi-type-h3::before {
  content: "\f5f3";
}
.bi-type-italic::before {
  content: "\f5f4";
}
.bi-type-strikethrough::before {
  content: "\f5f5";
}
.bi-type-underline::before {
  content: "\f5f6";
}
.bi-type::before {
  content: "\f5f7";
}
.bi-ui-checks-grid::before {
  content: "\f5f8";
}
.bi-ui-checks::before {
  content: "\f5f9";
}
.bi-ui-radios-grid::before {
  content: "\f5fa";
}
.bi-ui-radios::before {
  content: "\f5fb";
}
.bi-umbrella-fill::before {
  content: "\f5fc";
}
.bi-umbrella::before {
  content: "\f5fd";
}
.bi-union::before {
  content: "\f5fe";
}
.bi-unlock-fill::before {
  content: "\f5ff";
}
.bi-unlock::before {
  content: "\f600";
}
.bi-upc-scan::before {
  content: "\f601";
}
.bi-upc::before {
  content: "\f602";
}
.bi-upload::before {
  content: "\f603";
}
.bi-vector-pen::before {
  content: "\f604";
}
.bi-view-list::before {
  content: "\f605";
}
.bi-view-stacked::before {
  content: "\f606";
}
.bi-vinyl-fill::before {
  content: "\f607";
}
.bi-vinyl::before {
  content: "\f608";
}
.bi-voicemail::before {
  content: "\f609";
}
.bi-volume-down-fill::before {
  content: "\f60a";
}
.bi-volume-down::before {
  content: "\f60b";
}
.bi-volume-mute-fill::before {
  content: "\f60c";
}
.bi-volume-mute::before {
  content: "\f60d";
}
.bi-volume-off-fill::before {
  content: "\f60e";
}
.bi-volume-off::before {
  content: "\f60f";
}
.bi-volume-up-fill::before {
  content: "\f610";
}
.bi-volume-up::before {
  content: "\f611";
}
.bi-vr::before {
  content: "\f612";
}
.bi-wallet-fill::before {
  content: "\f613";
}
.bi-wallet::before {
  content: "\f614";
}
.bi-wallet2::before {
  content: "\f615";
}
.bi-watch::before {
  content: "\f616";
}
.bi-water::before {
  content: "\f617";
}
.bi-whatsapp::before {
  content: "\f618";
}
.bi-wifi-1::before {
  content: "\f619";
}
.bi-wifi-2::before {
  content: "\f61a";
}
.bi-wifi-off::before {
  content: "\f61b";
}
.bi-wifi::before {
  content: "\f61c";
}
.bi-wind::before {
  content: "\f61d";
}
.bi-window-dock::before {
  content: "\f61e";
}
.bi-window-sidebar::before {
  content: "\f61f";
}
.bi-window::before {
  content: "\f620";
}
.bi-wrench::before {
  content: "\f621";
}
.bi-x-circle-fill::before {
  content: "\f622";
}
.bi-x-circle::before {
  content: "\f623";
}
.bi-x-diamond-fill::before {
  content: "\f624";
}
.bi-x-diamond::before {
  content: "\f625";
}
.bi-x-octagon-fill::before {
  content: "\f626";
}
.bi-x-octagon::before {
  content: "\f627";
}
.bi-x-square-fill::before {
  content: "\f628";
}
.bi-x-square::before {
  content: "\f629";
}
.bi-x::before {
  content: "\f62a";
}
.bi-youtube::before {
  content: "\f62b";
}
.bi-zoom-in::before {
  content: "\f62c";
}
.bi-zoom-out::before {
  content: "\f62d";
}
.bi-bank::before {
  content: "\f62e";
}
.bi-bank2::before {
  content: "\f62f";
}
.bi-bell-slash-fill::before {
  content: "\f630";
}
.bi-bell-slash::before {
  content: "\f631";
}
.bi-cash-coin::before {
  content: "\f632";
}
.bi-check-lg::before {
  content: "\f633";
}
.bi-coin::before {
  content: "\f634";
}
.bi-currency-bitcoin::before {
  content: "\f635";
}
.bi-currency-dollar::before {
  content: "\f636";
}
.bi-currency-euro::before {
  content: "\f637";
}
.bi-currency-exchange::before {
  content: "\f638";
}
.bi-currency-pound::before {
  content: "\f639";
}
.bi-currency-yen::before {
  content: "\f63a";
}
.bi-dash-lg::before {
  content: "\f63b";
}
.bi-exclamation-lg::before {
  content: "\f63c";
}
.bi-file-earmark-pdf-fill::before {
  content: "\f63d";
}
.bi-file-earmark-pdf::before {
  content: "\f63e";
}
.bi-file-pdf-fill::before {
  content: "\f63f";
}
.bi-file-pdf::before {
  content: "\f640";
}
.bi-gender-ambiguous::before {
  content: "\f641";
}
.bi-gender-female::before {
  content: "\f642";
}
.bi-gender-male::before {
  content: "\f643";
}
.bi-gender-trans::before {
  content: "\f644";
}
.bi-headset-vr::before {
  content: "\f645";
}
.bi-info-lg::before {
  content: "\f646";
}
.bi-mastodon::before {
  content: "\f647";
}
.bi-messenger::before {
  content: "\f648";
}
.bi-piggy-bank-fill::before {
  content: "\f649";
}
.bi-piggy-bank::before {
  content: "\f64a";
}
.bi-pin-map-fill::before {
  content: "\f64b";
}
.bi-pin-map::before {
  content: "\f64c";
}
.bi-plus-lg::before {
  content: "\f64d";
}
.bi-question-lg::before {
  content: "\f64e";
}
.bi-recycle::before {
  content: "\f64f";
}
.bi-reddit::before {
  content: "\f650";
}
.bi-safe-fill::before {
  content: "\f651";
}
.bi-safe2-fill::before {
  content: "\f652";
}
.bi-safe2::before {
  content: "\f653";
}
.bi-sd-card-fill::before {
  content: "\f654";
}
.bi-sd-card::before {
  content: "\f655";
}
.bi-skype::before {
  content: "\f656";
}
.bi-slash-lg::before {
  content: "\f657";
}
.bi-translate::before {
  content: "\f658";
}
.bi-x-lg::before {
  content: "\f659";
}
.bi-safe::before {
  content: "\f65a";
}
.bi-apple::before {
  content: "\f65b";
}
.bi-microsoft::before {
  content: "\f65d";
}
.bi-windows::before {
  content: "\f65e";
}
.bi-behance::before {
  content: "\f65c";
}
.bi-dribbble::before {
  content: "\f65f";
}
.bi-line::before {
  content: "\f660";
}
.bi-medium::before {
  content: "\f661";
}
.bi-paypal::before {
  content: "\f662";
}
.bi-pinterest::before {
  content: "\f663";
}
.bi-signal::before {
  content: "\f664";
}
.bi-snapchat::before {
  content: "\f665";
}
.bi-spotify::before {
  content: "\f666";
}
.bi-stack-overflow::before {
  content: "\f667";
}
.bi-strava::before {
  content: "\f668";
}
.bi-wordpress::before {
  content: "\f669";
}
.bi-vimeo::before {
  content: "\f66a";
}
.bi-activity::before {
  content: "\f66b";
}
.bi-easel2-fill::before {
  content: "\f66c";
}
.bi-easel2::before {
  content: "\f66d";
}
.bi-easel3-fill::before {
  content: "\f66e";
}
.bi-easel3::before {
  content: "\f66f";
}
.bi-fan::before {
  content: "\f670";
}
.bi-fingerprint::before {
  content: "\f671";
}
.bi-graph-down-arrow::before {
  content: "\f672";
}
.bi-graph-up-arrow::before {
  content: "\f673";
}
.bi-hypnotize::before {
  content: "\f674";
}
.bi-magic::before {
  content: "\f675";
}
.bi-person-rolodex::before {
  content: "\f676";
}
.bi-person-video::before {
  content: "\f677";
}
.bi-person-video2::before {
  content: "\f678";
}
.bi-person-video3::before {
  content: "\f679";
}
.bi-person-workspace::before {
  content: "\f67a";
}
.bi-radioactive::before {
  content: "\f67b";
}
.bi-webcam-fill::before {
  content: "\f67c";
}
.bi-webcam::before {
  content: "\f67d";
}
.bi-yin-yang::before {
  content: "\f67e";
}
.bi-bandaid-fill::before {
  content: "\f680";
}
.bi-bandaid::before {
  content: "\f681";
}
.bi-bluetooth::before {
  content: "\f682";
}
.bi-body-text::before {
  content: "\f683";
}
.bi-boombox::before {
  content: "\f684";
}
.bi-boxes::before {
  content: "\f685";
}
.bi-dpad-fill::before {
  content: "\f686";
}
.bi-dpad::before {
  content: "\f687";
}
.bi-ear-fill::before {
  content: "\f688";
}
.bi-ear::before {
  content: "\f689";
}
.bi-envelope-check-fill::before {
  content: "\f68b";
}
.bi-envelope-check::before {
  content: "\f68c";
}
.bi-envelope-dash-fill::before {
  content: "\f68e";
}
.bi-envelope-dash::before {
  content: "\f68f";
}
.bi-envelope-exclamation-fill::before {
  content: "\f691";
}
.bi-envelope-exclamation::before {
  content: "\f692";
}
.bi-envelope-plus-fill::before {
  content: "\f693";
}
.bi-envelope-plus::before {
  content: "\f694";
}
.bi-envelope-slash-fill::before {
  content: "\f696";
}
.bi-envelope-slash::before {
  content: "\f697";
}
.bi-envelope-x-fill::before {
  content: "\f699";
}
.bi-envelope-x::before {
  content: "\f69a";
}
.bi-explicit-fill::before {
  content: "\f69b";
}
.bi-explicit::before {
  content: "\f69c";
}
.bi-git::before {
  content: "\f69d";
}
.bi-infinity::before {
  content: "\f69e";
}
.bi-list-columns-reverse::before {
  content: "\f69f";
}
.bi-list-columns::before {
  content: "\f6a0";
}
.bi-meta::before {
  content: "\f6a1";
}
.bi-nintendo-switch::before {
  content: "\f6a4";
}
.bi-pc-display-horizontal::before {
  content: "\f6a5";
}
.bi-pc-display::before {
  content: "\f6a6";
}
.bi-pc-horizontal::before {
  content: "\f6a7";
}
.bi-pc::before {
  content: "\f6a8";
}
.bi-playstation::before {
  content: "\f6a9";
}
.bi-plus-slash-minus::before {
  content: "\f6aa";
}
.bi-projector-fill::before {
  content: "\f6ab";
}
.bi-projector::before {
  content: "\f6ac";
}
.bi-qr-code-scan::before {
  content: "\f6ad";
}
.bi-qr-code::before {
  content: "\f6ae";
}
.bi-quora::before {
  content: "\f6af";
}
.bi-quote::before {
  content: "\f6b0";
}
.bi-robot::before {
  content: "\f6b1";
}
.bi-send-check-fill::before {
  content: "\f6b2";
}
.bi-send-check::before {
  content: "\f6b3";
}
.bi-send-dash-fill::before {
  content: "\f6b4";
}
.bi-send-dash::before {
  content: "\f6b5";
}
.bi-send-exclamation-fill::before {
  content: "\f6b7";
}
.bi-send-exclamation::before {
  content: "\f6b8";
}
.bi-send-fill::before {
  content: "\f6b9";
}
.bi-send-plus-fill::before {
  content: "\f6ba";
}
.bi-send-plus::before {
  content: "\f6bb";
}
.bi-send-slash-fill::before {
  content: "\f6bc";
}
.bi-send-slash::before {
  content: "\f6bd";
}
.bi-send-x-fill::before {
  content: "\f6be";
}
.bi-send-x::before {
  content: "\f6bf";
}
.bi-send::before {
  content: "\f6c0";
}
.bi-steam::before {
  content: "\f6c1";
}
.bi-terminal-dash::before {
  content: "\f6c3";
}
.bi-terminal-plus::before {
  content: "\f6c4";
}
.bi-terminal-split::before {
  content: "\f6c5";
}
.bi-ticket-detailed-fill::before {
  content: "\f6c6";
}
.bi-ticket-detailed::before {
  content: "\f6c7";
}
.bi-ticket-fill::before {
  content: "\f6c8";
}
.bi-ticket-perforated-fill::before {
  content: "\f6c9";
}
.bi-ticket-perforated::before {
  content: "\f6ca";
}
.bi-ticket::before {
  content: "\f6cb";
}
.bi-tiktok::before {
  content: "\f6cc";
}
.bi-window-dash::before {
  content: "\f6cd";
}
.bi-window-desktop::before {
  content: "\f6ce";
}
.bi-window-fullscreen::before {
  content: "\f6cf";
}
.bi-window-plus::before {
  content: "\f6d0";
}
.bi-window-split::before {
  content: "\f6d1";
}
.bi-window-stack::before {
  content: "\f6d2";
}
.bi-window-x::before {
  content: "\f6d3";
}
.bi-xbox::before {
  content: "\f6d4";
}
.bi-ethernet::before {
  content: "\f6d5";
}
.bi-hdmi-fill::before {
  content: "\f6d6";
}
.bi-hdmi::before {
  content: "\f6d7";
}
.bi-usb-c-fill::before {
  content: "\f6d8";
}
.bi-usb-c::before {
  content: "\f6d9";
}
.bi-usb-fill::before {
  content: "\f6da";
}
.bi-usb-plug-fill::before {
  content: "\f6db";
}
.bi-usb-plug::before {
  content: "\f6dc";
}
.bi-usb-symbol::before {
  content: "\f6dd";
}
.bi-usb::before {
  content: "\f6de";
}
.bi-boombox-fill::before {
  content: "\f6df";
}
.bi-displayport::before {
  content: "\f6e1";
}
.bi-gpu-card::before {
  content: "\f6e2";
}
.bi-memory::before {
  content: "\f6e3";
}
.bi-modem-fill::before {
  content: "\f6e4";
}
.bi-modem::before {
  content: "\f6e5";
}
.bi-motherboard-fill::before {
  content: "\f6e6";
}
.bi-motherboard::before {
  content: "\f6e7";
}
.bi-optical-audio-fill::before {
  content: "\f6e8";
}
.bi-optical-audio::before {
  content: "\f6e9";
}
.bi-pci-card::before {
  content: "\f6ea";
}
.bi-router-fill::before {
  content: "\f6eb";
}
.bi-router::before {
  content: "\f6ec";
}
.bi-thunderbolt-fill::before {
  content: "\f6ef";
}
.bi-thunderbolt::before {
  content: "\f6f0";
}
.bi-usb-drive-fill::before {
  content: "\f6f1";
}
.bi-usb-drive::before {
  content: "\f6f2";
}
.bi-usb-micro-fill::before {
  content: "\f6f3";
}
.bi-usb-micro::before {
  content: "\f6f4";
}
.bi-usb-mini-fill::before {
  content: "\f6f5";
}
.bi-usb-mini::before {
  content: "\f6f6";
}
.bi-cloud-haze2::before {
  content: "\f6f7";
}
.bi-device-hdd-fill::before {
  content: "\f6f8";
}
.bi-device-hdd::before {
  content: "\f6f9";
}
.bi-device-ssd-fill::before {
  content: "\f6fa";
}
.bi-device-ssd::before {
  content: "\f6fb";
}
.bi-displayport-fill::before {
  content: "\f6fc";
}
.bi-mortarboard-fill::before {
  content: "\f6fd";
}
.bi-mortarboard::before {
  content: "\f6fe";
}
.bi-terminal-x::before {
  content: "\f6ff";
}
.bi-arrow-through-heart-fill::before {
  content: "\f700";
}
.bi-arrow-through-heart::before {
  content: "\f701";
}
.bi-badge-sd-fill::before {
  content: "\f702";
}
.bi-badge-sd::before {
  content: "\f703";
}
.bi-bag-heart-fill::before {
  content: "\f704";
}
.bi-bag-heart::before {
  content: "\f705";
}
.bi-balloon-fill::before {
  content: "\f706";
}
.bi-balloon-heart-fill::before {
  content: "\f707";
}
.bi-balloon-heart::before {
  content: "\f708";
}
.bi-balloon::before {
  content: "\f709";
}
.bi-box2-fill::before {
  content: "\f70a";
}
.bi-box2-heart-fill::before {
  content: "\f70b";
}
.bi-box2-heart::before {
  content: "\f70c";
}
.bi-box2::before {
  content: "\f70d";
}
.bi-braces-asterisk::before {
  content: "\f70e";
}
.bi-calendar-heart-fill::before {
  content: "\f70f";
}
.bi-calendar-heart::before {
  content: "\f710";
}
.bi-calendar2-heart-fill::before {
  content: "\f711";
}
.bi-calendar2-heart::before {
  content: "\f712";
}
.bi-chat-heart-fill::before {
  content: "\f713";
}
.bi-chat-heart::before {
  content: "\f714";
}
.bi-chat-left-heart-fill::before {
  content: "\f715";
}
.bi-chat-left-heart::before {
  content: "\f716";
}
.bi-chat-right-heart-fill::before {
  content: "\f717";
}
.bi-chat-right-heart::before {
  content: "\f718";
}
.bi-chat-square-heart-fill::before {
  content: "\f719";
}
.bi-chat-square-heart::before {
  content: "\f71a";
}
.bi-clipboard-check-fill::before {
  content: "\f71b";
}
.bi-clipboard-data-fill::before {
  content: "\f71c";
}
.bi-clipboard-fill::before {
  content: "\f71d";
}
.bi-clipboard-heart-fill::before {
  content: "\f71e";
}
.bi-clipboard-heart::before {
  content: "\f71f";
}
.bi-clipboard-minus-fill::before {
  content: "\f720";
}
.bi-clipboard-plus-fill::before {
  content: "\f721";
}
.bi-clipboard-pulse::before {
  content: "\f722";
}
.bi-clipboard-x-fill::before {
  content: "\f723";
}
.bi-clipboard2-check-fill::before {
  content: "\f724";
}
.bi-clipboard2-check::before {
  content: "\f725";
}
.bi-clipboard2-data-fill::before {
  content: "\f726";
}
.bi-clipboard2-data::before {
  content: "\f727";
}
.bi-clipboard2-fill::before {
  content: "\f728";
}
.bi-clipboard2-heart-fill::before {
  content: "\f729";
}
.bi-clipboard2-heart::before {
  content: "\f72a";
}
.bi-clipboard2-minus-fill::before {
  content: "\f72b";
}
.bi-clipboard2-minus::before {
  content: "\f72c";
}
.bi-clipboard2-plus-fill::before {
  content: "\f72d";
}
.bi-clipboard2-plus::before {
  content: "\f72e";
}
.bi-clipboard2-pulse-fill::before {
  content: "\f72f";
}
.bi-clipboard2-pulse::before {
  content: "\f730";
}
.bi-clipboard2-x-fill::before {
  content: "\f731";
}
.bi-clipboard2-x::before {
  content: "\f732";
}
.bi-clipboard2::before {
  content: "\f733";
}
.bi-emoji-kiss-fill::before {
  content: "\f734";
}
.bi-emoji-kiss::before {
  content: "\f735";
}
.bi-envelope-heart-fill::before {
  content: "\f736";
}
.bi-envelope-heart::before {
  content: "\f737";
}
.bi-envelope-open-heart-fill::before {
  content: "\f738";
}
.bi-envelope-open-heart::before {
  content: "\f739";
}
.bi-envelope-paper-fill::before {
  content: "\f73a";
}
.bi-envelope-paper-heart-fill::before {
  content: "\f73b";
}
.bi-envelope-paper-heart::before {
  content: "\f73c";
}
.bi-envelope-paper::before {
  content: "\f73d";
}
.bi-filetype-aac::before {
  content: "\f73e";
}
.bi-filetype-ai::before {
  content: "\f73f";
}
.bi-filetype-bmp::before {
  content: "\f740";
}
.bi-filetype-cs::before {
  content: "\f741";
}
.bi-filetype-css::before {
  content: "\f742";
}
.bi-filetype-csv::before {
  content: "\f743";
}
.bi-filetype-doc::before {
  content: "\f744";
}
.bi-filetype-docx::before {
  content: "\f745";
}
.bi-filetype-exe::before {
  content: "\f746";
}
.bi-filetype-gif::before {
  content: "\f747";
}
.bi-filetype-heic::before {
  content: "\f748";
}
.bi-filetype-html::before {
  content: "\f749";
}
.bi-filetype-java::before {
  content: "\f74a";
}
.bi-filetype-jpg::before {
  content: "\f74b";
}
.bi-filetype-js::before {
  content: "\f74c";
}
.bi-filetype-jsx::before {
  content: "\f74d";
}
.bi-filetype-key::before {
  content: "\f74e";
}
.bi-filetype-m4p::before {
  content: "\f74f";
}
.bi-filetype-md::before {
  content: "\f750";
}
.bi-filetype-mdx::before {
  content: "\f751";
}
.bi-filetype-mov::before {
  content: "\f752";
}
.bi-filetype-mp3::before {
  content: "\f753";
}
.bi-filetype-mp4::before {
  content: "\f754";
}
.bi-filetype-otf::before {
  content: "\f755";
}
.bi-filetype-pdf::before {
  content: "\f756";
}
.bi-filetype-php::before {
  content: "\f757";
}
.bi-filetype-png::before {
  content: "\f758";
}
.bi-filetype-ppt::before {
  content: "\f75a";
}
.bi-filetype-psd::before {
  content: "\f75b";
}
.bi-filetype-py::before {
  content: "\f75c";
}
.bi-filetype-raw::before {
  content: "\f75d";
}
.bi-filetype-rb::before {
  content: "\f75e";
}
.bi-filetype-sass::before {
  content: "\f75f";
}
.bi-filetype-scss::before {
  content: "\f760";
}
.bi-filetype-sh::before {
  content: "\f761";
}
.bi-filetype-svg::before {
  content: "\f762";
}
.bi-filetype-tiff::before {
  content: "\f763";
}
.bi-filetype-tsx::before {
  content: "\f764";
}
.bi-filetype-ttf::before {
  content: "\f765";
}
.bi-filetype-txt::before {
  content: "\f766";
}
.bi-filetype-wav::before {
  content: "\f767";
}
.bi-filetype-woff::before {
  content: "\f768";
}
.bi-filetype-xls::before {
  content: "\f76a";
}
.bi-filetype-xml::before {
  content: "\f76b";
}
.bi-filetype-yml::before {
  content: "\f76c";
}
.bi-heart-arrow::before {
  content: "\f76d";
}
.bi-heart-pulse-fill::before {
  content: "\f76e";
}
.bi-heart-pulse::before {
  content: "\f76f";
}
.bi-heartbreak-fill::before {
  content: "\f770";
}
.bi-heartbreak::before {
  content: "\f771";
}
.bi-hearts::before {
  content: "\f772";
}
.bi-hospital-fill::before {
  content: "\f773";
}
.bi-hospital::before {
  content: "\f774";
}
.bi-house-heart-fill::before {
  content: "\f775";
}
.bi-house-heart::before {
  content: "\f776";
}
.bi-incognito::before {
  content: "\f777";
}
.bi-magnet-fill::before {
  content: "\f778";
}
.bi-magnet::before {
  content: "\f779";
}
.bi-person-heart::before {
  content: "\f77a";
}
.bi-person-hearts::before {
  content: "\f77b";
}
.bi-phone-flip::before {
  content: "\f77c";
}
.bi-plugin::before {
  content: "\f77d";
}
.bi-postage-fill::before {
  content: "\f77e";
}
.bi-postage-heart-fill::before {
  content: "\f77f";
}
.bi-postage-heart::before {
  content: "\f780";
}
.bi-postage::before {
  content: "\f781";
}
.bi-postcard-fill::before {
  content: "\f782";
}
.bi-postcard-heart-fill::before {
  content: "\f783";
}
.bi-postcard-heart::before {
  content: "\f784";
}
.bi-postcard::before {
  content: "\f785";
}
.bi-search-heart-fill::before {
  content: "\f786";
}
.bi-search-heart::before {
  content: "\f787";
}
.bi-sliders2-vertical::before {
  content: "\f788";
}
.bi-sliders2::before {
  content: "\f789";
}
.bi-trash3-fill::before {
  content: "\f78a";
}
.bi-trash3::before {
  content: "\f78b";
}
.bi-valentine::before {
  content: "\f78c";
}
.bi-valentine2::before {
  content: "\f78d";
}
.bi-wrench-adjustable-circle-fill::before {
  content: "\f78e";
}
.bi-wrench-adjustable-circle::before {
  content: "\f78f";
}
.bi-wrench-adjustable::before {
  content: "\f790";
}
.bi-filetype-json::before {
  content: "\f791";
}
.bi-filetype-pptx::before {
  content: "\f792";
}
.bi-filetype-xlsx::before {
  content: "\f793";
}
.bi-1-circle-fill::before {
  content: "\f796";
}
.bi-1-circle::before {
  content: "\f797";
}
.bi-1-square-fill::before {
  content: "\f798";
}
.bi-1-square::before {
  content: "\f799";
}
.bi-2-circle-fill::before {
  content: "\f79c";
}
.bi-2-circle::before {
  content: "\f79d";
}
.bi-2-square-fill::before {
  content: "\f79e";
}
.bi-2-square::before {
  content: "\f79f";
}
.bi-3-circle-fill::before {
  content: "\f7a2";
}
.bi-3-circle::before {
  content: "\f7a3";
}
.bi-3-square-fill::before {
  content: "\f7a4";
}
.bi-3-square::before {
  content: "\f7a5";
}
.bi-4-circle-fill::before {
  content: "\f7a8";
}
.bi-4-circle::before {
  content: "\f7a9";
}
.bi-4-square-fill::before {
  content: "\f7aa";
}
.bi-4-square::before {
  content: "\f7ab";
}
.bi-5-circle-fill::before {
  content: "\f7ae";
}
.bi-5-circle::before {
  content: "\f7af";
}
.bi-5-square-fill::before {
  content: "\f7b0";
}
.bi-5-square::before {
  content: "\f7b1";
}
.bi-6-circle-fill::before {
  content: "\f7b4";
}
.bi-6-circle::before {
  content: "\f7b5";
}
.bi-6-square-fill::before {
  content: "\f7b6";
}
.bi-6-square::before {
  content: "\f7b7";
}
.bi-7-circle-fill::before {
  content: "\f7ba";
}
.bi-7-circle::before {
  content: "\f7bb";
}
.bi-7-square-fill::before {
  content: "\f7bc";
}
.bi-7-square::before {
  content: "\f7bd";
}
.bi-8-circle-fill::before {
  content: "\f7c0";
}
.bi-8-circle::before {
  content: "\f7c1";
}
.bi-8-square-fill::before {
  content: "\f7c2";
}
.bi-8-square::before {
  content: "\f7c3";
}
.bi-9-circle-fill::before {
  content: "\f7c6";
}
.bi-9-circle::before {
  content: "\f7c7";
}
.bi-9-square-fill::before {
  content: "\f7c8";
}
.bi-9-square::before {
  content: "\f7c9";
}
.bi-airplane-engines-fill::before {
  content: "\f7ca";
}
.bi-airplane-engines::before {
  content: "\f7cb";
}
.bi-airplane-fill::before {
  content: "\f7cc";
}
.bi-airplane::before {
  content: "\f7cd";
}
.bi-alexa::before {
  content: "\f7ce";
}
.bi-alipay::before {
  content: "\f7cf";
}
.bi-android::before {
  content: "\f7d0";
}
.bi-android2::before {
  content: "\f7d1";
}
.bi-box-fill::before {
  content: "\f7d2";
}
.bi-box-seam-fill::before {
  content: "\f7d3";
}
.bi-browser-chrome::before {
  content: "\f7d4";
}
.bi-browser-edge::before {
  content: "\f7d5";
}
.bi-browser-firefox::before {
  content: "\f7d6";
}
.bi-browser-safari::before {
  content: "\f7d7";
}
.bi-c-circle-fill::before {
  content: "\f7da";
}
.bi-c-circle::before {
  content: "\f7db";
}
.bi-c-square-fill::before {
  content: "\f7dc";
}
.bi-c-square::before {
  content: "\f7dd";
}
.bi-capsule-pill::before {
  content: "\f7de";
}
.bi-capsule::before {
  content: "\f7df";
}
.bi-car-front-fill::before {
  content: "\f7e0";
}
.bi-car-front::before {
  content: "\f7e1";
}
.bi-cassette-fill::before {
  content: "\f7e2";
}
.bi-cassette::before {
  content: "\f7e3";
}
.bi-cc-circle-fill::before {
  content: "\f7e6";
}
.bi-cc-circle::before {
  content: "\f7e7";
}
.bi-cc-square-fill::before {
  content: "\f7e8";
}
.bi-cc-square::before {
  content: "\f7e9";
}
.bi-cup-hot-fill::before {
  content: "\f7ea";
}
.bi-cup-hot::before {
  content: "\f7eb";
}
.bi-currency-rupee::before {
  content: "\f7ec";
}
.bi-dropbox::before {
  content: "\f7ed";
}
.bi-escape::before {
  content: "\f7ee";
}
.bi-fast-forward-btn-fill::before {
  content: "\f7ef";
}
.bi-fast-forward-btn::before {
  content: "\f7f0";
}
.bi-fast-forward-circle-fill::before {
  content: "\f7f1";
}
.bi-fast-forward-circle::before {
  content: "\f7f2";
}
.bi-fast-forward-fill::before {
  content: "\f7f3";
}
.bi-fast-forward::before {
  content: "\f7f4";
}
.bi-filetype-sql::before {
  content: "\f7f5";
}
.bi-fire::before {
  content: "\f7f6";
}
.bi-google-play::before {
  content: "\f7f7";
}
.bi-h-circle-fill::before {
  content: "\f7fa";
}
.bi-h-circle::before {
  content: "\f7fb";
}
.bi-h-square-fill::before {
  content: "\f7fc";
}
.bi-h-square::before {
  content: "\f7fd";
}
.bi-indent::before {
  content: "\f7fe";
}
.bi-lungs-fill::before {
  content: "\f7ff";
}
.bi-lungs::before {
  content: "\f800";
}
.bi-microsoft-teams::before {
  content: "\f801";
}
.bi-p-circle-fill::before {
  content: "\f804";
}
.bi-p-circle::before {
  content: "\f805";
}
.bi-p-square-fill::before {
  content: "\f806";
}
.bi-p-square::before {
  content: "\f807";
}
.bi-pass-fill::before {
  content: "\f808";
}
.bi-pass::before {
  content: "\f809";
}
.bi-prescription::before {
  content: "\f80a";
}
.bi-prescription2::before {
  content: "\f80b";
}
.bi-r-circle-fill::before {
  content: "\f80e";
}
.bi-r-circle::before {
  content: "\f80f";
}
.bi-r-square-fill::before {
  content: "\f810";
}
.bi-r-square::before {
  content: "\f811";
}
.bi-repeat-1::before {
  content: "\f812";
}
.bi-repeat::before {
  content: "\f813";
}
.bi-rewind-btn-fill::before {
  content: "\f814";
}
.bi-rewind-btn::before {
  content: "\f815";
}
.bi-rewind-circle-fill::before {
  content: "\f816";
}
.bi-rewind-circle::before {
  content: "\f817";
}
.bi-rewind-fill::before {
  content: "\f818";
}
.bi-rewind::before {
  content: "\f819";
}
.bi-train-freight-front-fill::before {
  content: "\f81a";
}
.bi-train-freight-front::before {
  content: "\f81b";
}
.bi-train-front-fill::before {
  content: "\f81c";
}
.bi-train-front::before {
  content: "\f81d";
}
.bi-train-lightrail-front-fill::before {
  content: "\f81e";
}
.bi-train-lightrail-front::before {
  content: "\f81f";
}
.bi-truck-front-fill::before {
  content: "\f820";
}
.bi-truck-front::before {
  content: "\f821";
}
.bi-ubuntu::before {
  content: "\f822";
}
.bi-unindent::before {
  content: "\f823";
}
.bi-unity::before {
  content: "\f824";
}
.bi-universal-access-circle::before {
  content: "\f825";
}
.bi-universal-access::before {
  content: "\f826";
}
.bi-virus::before {
  content: "\f827";
}
.bi-virus2::before {
  content: "\f828";
}
.bi-wechat::before {
  content: "\f829";
}
.bi-yelp::before {
  content: "\f82a";
}
.bi-sign-stop-fill::before {
  content: "\f82b";
}
.bi-sign-stop-lights-fill::before {
  content: "\f82c";
}
.bi-sign-stop-lights::before {
  content: "\f82d";
}
.bi-sign-stop::before {
  content: "\f82e";
}
.bi-sign-turn-left-fill::before {
  content: "\f82f";
}
.bi-sign-turn-left::before {
  content: "\f830";
}
.bi-sign-turn-right-fill::before {
  content: "\f831";
}
.bi-sign-turn-right::before {
  content: "\f832";
}
.bi-sign-turn-slight-left-fill::before {
  content: "\f833";
}
.bi-sign-turn-slight-left::before {
  content: "\f834";
}
.bi-sign-turn-slight-right-fill::before {
  content: "\f835";
}
.bi-sign-turn-slight-right::before {
  content: "\f836";
}
.bi-sign-yield-fill::before {
  content: "\f837";
}
.bi-sign-yield::before {
  content: "\f838";
}
.bi-ev-station-fill::before {
  content: "\f839";
}
.bi-ev-station::before {
  content: "\f83a";
}
.bi-fuel-pump-diesel-fill::before {
  content: "\f83b";
}
.bi-fuel-pump-diesel::before {
  content: "\f83c";
}
.bi-fuel-pump-fill::before {
  content: "\f83d";
}
.bi-fuel-pump::before {
  content: "\f83e";
}
.bi-0-circle-fill::before {
  content: "\f83f";
}
.bi-0-circle::before {
  content: "\f840";
}
.bi-0-square-fill::before {
  content: "\f841";
}
.bi-0-square::before {
  content: "\f842";
}
.bi-rocket-fill::before {
  content: "\f843";
}
.bi-rocket-takeoff-fill::before {
  content: "\f844";
}
.bi-rocket-takeoff::before {
  content: "\f845";
}
.bi-rocket::before {
  content: "\f846";
}
.bi-stripe::before {
  content: "\f847";
}
.bi-subscript::before {
  content: "\f848";
}
.bi-superscript::before {
  content: "\f849";
}
.bi-trello::before {
  content: "\f84a";
}
.bi-envelope-at-fill::before {
  content: "\f84b";
}
.bi-envelope-at::before {
  content: "\f84c";
}
.bi-regex::before {
  content: "\f84d";
}
.bi-text-wrap::before {
  content: "\f84e";
}
.bi-sign-dead-end-fill::before {
  content: "\f84f";
}
.bi-sign-dead-end::before {
  content: "\f850";
}
.bi-sign-do-not-enter-fill::before {
  content: "\f851";
}
.bi-sign-do-not-enter::before {
  content: "\f852";
}
.bi-sign-intersection-fill::before {
  content: "\f853";
}
.bi-sign-intersection-side-fill::before {
  content: "\f854";
}
.bi-sign-intersection-side::before {
  content: "\f855";
}
.bi-sign-intersection-t-fill::before {
  content: "\f856";
}
.bi-sign-intersection-t::before {
  content: "\f857";
}
.bi-sign-intersection-y-fill::before {
  content: "\f858";
}
.bi-sign-intersection-y::before {
  content: "\f859";
}
.bi-sign-intersection::before {
  content: "\f85a";
}
.bi-sign-merge-left-fill::before {
  content: "\f85b";
}
.bi-sign-merge-left::before {
  content: "\f85c";
}
.bi-sign-merge-right-fill::before {
  content: "\f85d";
}
.bi-sign-merge-right::before {
  content: "\f85e";
}
.bi-sign-no-left-turn-fill::before {
  content: "\f85f";
}
.bi-sign-no-left-turn::before {
  content: "\f860";
}
.bi-sign-no-parking-fill::before {
  content: "\f861";
}
.bi-sign-no-parking::before {
  content: "\f862";
}
.bi-sign-no-right-turn-fill::before {
  content: "\f863";
}
.bi-sign-no-right-turn::before {
  content: "\f864";
}
.bi-sign-railroad-fill::before {
  content: "\f865";
}
.bi-sign-railroad::before {
  content: "\f866";
}
.bi-building-add::before {
  content: "\f867";
}
.bi-building-check::before {
  content: "\f868";
}
.bi-building-dash::before {
  content: "\f869";
}
.bi-building-down::before {
  content: "\f86a";
}
.bi-building-exclamation::before {
  content: "\f86b";
}
.bi-building-fill-add::before {
  content: "\f86c";
}
.bi-building-fill-check::before {
  content: "\f86d";
}
.bi-building-fill-dash::before {
  content: "\f86e";
}
.bi-building-fill-down::before {
  content: "\f86f";
}
.bi-building-fill-exclamation::before {
  content: "\f870";
}
.bi-building-fill-gear::before {
  content: "\f871";
}
.bi-building-fill-lock::before {
  content: "\f872";
}
.bi-building-fill-slash::before {
  content: "\f873";
}
.bi-building-fill-up::before {
  content: "\f874";
}
.bi-building-fill-x::before {
  content: "\f875";
}
.bi-building-fill::before {
  content: "\f876";
}
.bi-building-gear::before {
  content: "\f877";
}
.bi-building-lock::before {
  content: "\f878";
}
.bi-building-slash::before {
  content: "\f879";
}
.bi-building-up::before {
  content: "\f87a";
}
.bi-building-x::before {
  content: "\f87b";
}
.bi-buildings-fill::before {
  content: "\f87c";
}
.bi-buildings::before {
  content: "\f87d";
}
.bi-bus-front-fill::before {
  content: "\f87e";
}
.bi-bus-front::before {
  content: "\f87f";
}
.bi-ev-front-fill::before {
  content: "\f880";
}
.bi-ev-front::before {
  content: "\f881";
}
.bi-globe-americas::before {
  content: "\f882";
}
.bi-globe-asia-australia::before {
  content: "\f883";
}
.bi-globe-central-south-asia::before {
  content: "\f884";
}
.bi-globe-europe-africa::before {
  content: "\f885";
}
.bi-house-add-fill::before {
  content: "\f886";
}
.bi-house-add::before {
  content: "\f887";
}
.bi-house-check-fill::before {
  content: "\f888";
}
.bi-house-check::before {
  content: "\f889";
}
.bi-house-dash-fill::before {
  content: "\f88a";
}
.bi-house-dash::before {
  content: "\f88b";
}
.bi-house-down-fill::before {
  content: "\f88c";
}
.bi-house-down::before {
  content: "\f88d";
}
.bi-house-exclamation-fill::before {
  content: "\f88e";
}
.bi-house-exclamation::before {
  content: "\f88f";
}
.bi-house-gear-fill::before {
  content: "\f890";
}
.bi-house-gear::before {
  content: "\f891";
}
.bi-house-lock-fill::before {
  content: "\f892";
}
.bi-house-lock::before {
  content: "\f893";
}
.bi-house-slash-fill::before {
  content: "\f894";
}
.bi-house-slash::before {
  content: "\f895";
}
.bi-house-up-fill::before {
  content: "\f896";
}
.bi-house-up::before {
  content: "\f897";
}
.bi-house-x-fill::before {
  content: "\f898";
}
.bi-house-x::before {
  content: "\f899";
}
.bi-person-add::before {
  content: "\f89a";
}
.bi-person-down::before {
  content: "\f89b";
}
.bi-person-exclamation::before {
  content: "\f89c";
}
.bi-person-fill-add::before {
  content: "\f89d";
}
.bi-person-fill-check::before {
  content: "\f89e";
}
.bi-person-fill-dash::before {
  content: "\f89f";
}
.bi-person-fill-down::before {
  content: "\f8a0";
}
.bi-person-fill-exclamation::before {
  content: "\f8a1";
}
.bi-person-fill-gear::before {
  content: "\f8a2";
}
.bi-person-fill-lock::before {
  content: "\f8a3";
}
.bi-person-fill-slash::before {
  content: "\f8a4";
}
.bi-person-fill-up::before {
  content: "\f8a5";
}
.bi-person-fill-x::before {
  content: "\f8a6";
}
.bi-person-gear::before {
  content: "\f8a7";
}
.bi-person-lock::before {
  content: "\f8a8";
}
.bi-person-slash::before {
  content: "\f8a9";
}
.bi-person-up::before {
  content: "\f8aa";
}
.bi-scooter::before {
  content: "\f8ab";
}
.bi-taxi-front-fill::before {
  content: "\f8ac";
}
.bi-taxi-front::before {
  content: "\f8ad";
}
.bi-amd::before {
  content: "\f8ae";
}
.bi-database-add::before {
  content: "\f8af";
}
.bi-database-check::before {
  content: "\f8b0";
}
.bi-database-dash::before {
  content: "\f8b1";
}
.bi-database-down::before {
  content: "\f8b2";
}
.bi-database-exclamation::before {
  content: "\f8b3";
}
.bi-database-fill-add::before {
  content: "\f8b4";
}
.bi-database-fill-check::before {
  content: "\f8b5";
}
.bi-database-fill-dash::before {
  content: "\f8b6";
}
.bi-database-fill-down::before {
  content: "\f8b7";
}
.bi-database-fill-exclamation::before {
  content: "\f8b8";
}
.bi-database-fill-gear::before {
  content: "\f8b9";
}
.bi-database-fill-lock::before {
  content: "\f8ba";
}
.bi-database-fill-slash::before {
  content: "\f8bb";
}
.bi-database-fill-up::before {
  content: "\f8bc";
}
.bi-database-fill-x::before {
  content: "\f8bd";
}
.bi-database-fill::before {
  content: "\f8be";
}
.bi-database-gear::before {
  content: "\f8bf";
}
.bi-database-lock::before {
  content: "\f8c0";
}
.bi-database-slash::before {
  content: "\f8c1";
}
.bi-database-up::before {
  content: "\f8c2";
}
.bi-database-x::before {
  content: "\f8c3";
}
.bi-database::before {
  content: "\f8c4";
}
.bi-houses-fill::before {
  content: "\f8c5";
}
.bi-houses::before {
  content: "\f8c6";
}
.bi-nvidia::before {
  content: "\f8c7";
}
.bi-person-vcard-fill::before {
  content: "\f8c8";
}
.bi-person-vcard::before {
  content: "\f8c9";
}
.bi-sina-weibo::before {
  content: "\f8ca";
}
.bi-tencent-qq::before {
  content: "\f8cb";
}
.bi-wikipedia::before {
  content: "\f8cc";
}
.bi-alphabet-uppercase::before {
  content: "\f2a5";
}
.bi-alphabet::before {
  content: "\f68a";
}
.bi-amazon::before {
  content: "\f68d";
}
.bi-arrows-collapse-vertical::before {
  content: "\f690";
}
.bi-arrows-expand-vertical::before {
  content: "\f695";
}
.bi-arrows-vertical::before {
  content: "\f698";
}
.bi-arrows::before {
  content: "\f6a2";
}
.bi-ban-fill::before {
  content: "\f6a3";
}
.bi-ban::before {
  content: "\f6b6";
}
.bi-bing::before {
  content: "\f6c2";
}
.bi-cake::before {
  content: "\f6e0";
}
.bi-cake2::before {
  content: "\f6ed";
}
.bi-cookie::before {
  content: "\f6ee";
}
.bi-copy::before {
  content: "\f759";
}
.bi-crosshair::before {
  content: "\f769";
}
.bi-crosshair2::before {
  content: "\f794";
}
.bi-emoji-astonished-fill::before {
  content: "\f795";
}
.bi-emoji-astonished::before {
  content: "\f79a";
}
.bi-emoji-grimace-fill::before {
  content: "\f79b";
}
.bi-emoji-grimace::before {
  content: "\f7a0";
}
.bi-emoji-grin-fill::before {
  content: "\f7a1";
}
.bi-emoji-grin::before {
  content: "\f7a6";
}
.bi-emoji-surprise-fill::before {
  content: "\f7a7";
}
.bi-emoji-surprise::before {
  content: "\f7ac";
}
.bi-emoji-tear-fill::before {
  content: "\f7ad";
}
.bi-emoji-tear::before {
  content: "\f7b2";
}
.bi-envelope-arrow-down-fill::before {
  content: "\f7b3";
}
.bi-envelope-arrow-down::before {
  content: "\f7b8";
}
.bi-envelope-arrow-up-fill::before {
  content: "\f7b9";
}
.bi-envelope-arrow-up::before {
  content: "\f7be";
}
.bi-feather::before {
  content: "\f7bf";
}
.bi-feather2::before {
  content: "\f7c4";
}
.bi-floppy-fill::before {
  content: "\f7c5";
}
.bi-floppy::before {
  content: "\f7d8";
}
.bi-floppy2-fill::before {
  content: "\f7d9";
}
.bi-floppy2::before {
  content: "\f7e4";
}
.bi-gitlab::before {
  content: "\f7e5";
}
.bi-highlighter::before {
  content: "\f7f8";
}
.bi-marker-tip::before {
  content: "\f802";
}
.bi-nvme-fill::before {
  content: "\f803";
}
.bi-nvme::before {
  content: "\f80c";
}
.bi-opencollective::before {
  content: "\f80d";
}
.bi-pci-card-network::before {
  content: "\f8cd";
}
.bi-pci-card-sound::before {
  content: "\f8ce";
}
.bi-radar::before {
  content: "\f8cf";
}
.bi-send-arrow-down-fill::before {
  content: "\f8d0";
}
.bi-send-arrow-down::before {
  content: "\f8d1";
}
.bi-send-arrow-up-fill::before {
  content: "\f8d2";
}
.bi-send-arrow-up::before {
  content: "\f8d3";
}
.bi-sim-slash-fill::before {
  content: "\f8d4";
}
.bi-sim-slash::before {
  content: "\f8d5";
}
.bi-sourceforge::before {
  content: "\f8d6";
}
.bi-substack::before {
  content: "\f8d7";
}
.bi-threads-fill::before {
  content: "\f8d8";
}
.bi-threads::before {
  content: "\f8d9";
}
.bi-transparency::before {
  content: "\f8da";
}
.bi-twitter-x::before {
  content: "\f8db";
}
.bi-type-h4::before {
  content: "\f8dc";
}
.bi-type-h5::before {
  content: "\f8dd";
}
.bi-type-h6::before {
  content: "\f8de";
}
.bi-backpack-fill::before {
  content: "\f8df";
}
.bi-backpack::before {
  content: "\f8e0";
}
.bi-backpack2-fill::before {
  content: "\f8e1";
}
.bi-backpack2::before {
  content: "\f8e2";
}
.bi-backpack3-fill::before {
  content: "\f8e3";
}
.bi-backpack3::before {
  content: "\f8e4";
}
.bi-backpack4-fill::before {
  content: "\f8e5";
}
.bi-backpack4::before {
  content: "\f8e6";
}
.bi-brilliance::before {
  content: "\f8e7";
}
.bi-cake-fill::before {
  content: "\f8e8";
}
.bi-cake2-fill::before {
  content: "\f8e9";
}
.bi-duffle-fill::before {
  content: "\f8ea";
}
.bi-duffle::before {
  content: "\f8eb";
}
.bi-exposure::before {
  content: "\f8ec";
}
.bi-gender-neuter::before {
  content: "\f8ed";
}
.bi-highlights::before {
  content: "\f8ee";
}
.bi-luggage-fill::before {
  content: "\f8ef";
}
.bi-luggage::before {
  content: "\f8f0";
}
.bi-mailbox-flag::before {
  content: "\f8f1";
}
.bi-mailbox2-flag::before {
  content: "\f8f2";
}
.bi-noise-reduction::before {
  content: "\f8f3";
}
.bi-passport-fill::before {
  content: "\f8f4";
}
.bi-passport::before {
  content: "\f8f5";
}
.bi-person-arms-up::before {
  content: "\f8f6";
}
.bi-person-raised-hand::before {
  content: "\f8f7";
}
.bi-person-standing-dress::before {
  content: "\f8f8";
}
.bi-person-standing::before {
  content: "\f8f9";
}
.bi-person-walking::before {
  content: "\f8fa";
}
.bi-person-wheelchair::before {
  content: "\f8fb";
}
.bi-shadows::before {
  content: "\f8fc";
}
.bi-suitcase-fill::before {
  content: "\f8fd";
}
.bi-suitcase-lg-fill::before {
  content: "\f8fe";
}
.bi-suitcase-lg::before {
  content: "\f8ff";
}
.bi-suitcase::before {
  content: "\f900";
}
.bi-suitcase2-fill::before {
  content: "\f901";
}
.bi-suitcase2::before {
  content: "\f902";
}
.bi-vignette::before {
  content: "\f903";
}
.bi-bluesky::before {
  content: "\f7f9";
}
.bi-tux::before {
  content: "\f904";
}
.bi-beaker-fill::before {
  content: "\f905";
}
.bi-beaker::before {
  content: "\f906";
}
.bi-flask-fill::before {
  content: "\f907";
}
.bi-flask-florence-fill::before {
  content: "\f908";
}
.bi-flask-florence::before {
  content: "\f909";
}
.bi-flask::before {
  content: "\f90a";
}
.bi-leaf-fill::before {
  content: "\f90b";
}
.bi-leaf::before {
  content: "\f90c";
}
.bi-measuring-cup-fill::before {
  content: "\f90d";
}
.bi-measuring-cup::before {
  content: "\f90e";
}
.bi-unlock2-fill::before {
  content: "\f90f";
}
.bi-unlock2::before {
  content: "\f910";
}
.bi-battery-low::before {
  content: "\f911";
}
.bi-anthropic::before {
  content: "\f912";
}
.bi-apple-music::before {
  content: "\f913";
}
.bi-claude::before {
  content: "\f914";
}
.bi-openai::before {
  content: "\f915";
}
.bi-perplexity::before {
  content: "\f916";
}
.bi-css::before {
  content: "\f917";
}
.bi-javascript::before {
  content: "\f918";
}
.bi-typescript::before {
  content: "\f919";
}
.bi-fork-knife::before {
  content: "\f91a";
}
.bi-globe-americas-fill::before {
  content: "\f91b";
}
.bi-globe-asia-australia-fill::before {
  content: "\f91c";
}
.bi-globe-central-south-asia-fill::before {
  content: "\f91d";
}
.bi-globe-europe-africa-fill::before {
  content: "\f91e";
}
/* COOKIE LIŠTA - šablóna 1b.
   Šablóna: Custom/View/Partials/cookies_panel.php

   Dvojkrokový panel: najprv text a tri tlačidlá, po kliknutí na „Nastavenia"
   kategórie s prepínačmi a popismi. Vľavo dole, aby neprekrýval obsah v strede.

   Pôvodné pravidlá pre jadrovú lištu (`.btn-necessary`, `.container .checkmark`,
   prehodený dôraz tlačidiel) sú preč - jadrovú lištu už nevoláme. */
#cookie_modal {
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  z-index: 9999;
  width: min(25rem, calc(100vw - 2rem));
  max-height: calc(100vh - 2rem);
  overflow-y: auto;
  padding: 1.75rem;
  border-radius: var(--border-radius);
  background: var(--six-color);
  border: 1px solid var(--line-color);
  box-shadow: var(--shadow-card-2);
  color: var(--seven-color);
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.55;
  /* Späť na prvý krok - nenápadné, je to návrat, nie akcia. */
  /* --- kategórie --- */
  /* --- prepínač ---
     Vlastný, nie systémový checkbox: systémový sa nedá zladiť s paletou
     a v cookie lištách je prepínač zaužívanejší než štvorček. */
  /* --- tlačidlá ---
     „Prijať všetky" je plné, „Odmietnuť" a „Nastavenia" majú obrys. Rovnaká
     veľkosť aj rovnaká pozícia - odmietnutie nesmie byť ťažšie než prijatie. */
  /* Nastavenia - odkaz pod rovnocennými tlačidlami (nie tretie tlačidlo, ktoré by sa bilo s Odmietnuť) */
}
#cookie_modal .ck-zavri {
  position: absolute;
  top: 0.625rem;
  right: 0.875rem;
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: 0;
  border-radius: 50%;
  font-size: 1.5rem;
  line-height: 1;
  color: var(--eight-color);
  cursor: pointer;
  transition: var(--trans-200);
}
#cookie_modal .ck-zavri:hover {
  background: var(--four-color);
  color: var(--first-color);
}
#cookie_modal .ck-nadpis {
  margin: 0 0 0.625rem;
  padding-right: 1.5rem;
  font-family: var(--first-font);
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--first-color);
}
#cookie_modal .ck-popis {
  margin: 0 0 1.25rem;
  color: var(--seven-color);
}
#cookie_modal .ck-spat {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin: 0 0 0.875rem;
  padding: 0;
  background: none;
  border: 0;
  font-size: var(--p-caption);
  color: var(--eight-color);
  cursor: pointer;
}
#cookie_modal .ck-spat:hover {
  color: var(--second-color);
}
#cookie_modal .ck-kategorie {
  margin-bottom: 1.5rem;
}
#cookie_modal .ck-kategoria {
  padding: 0.875rem 0;
  border-top: 1px solid var(--line-color);
}
#cookie_modal .ck-kategoria:last-child {
  border-bottom: 1px solid var(--line-color);
}
#cookie_modal .ck-kategoria-hlava {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.25rem;
  cursor: pointer;
}
#cookie_modal .ck-kategoria-nazov {
  font-weight: 600;
  color: var(--first-color);
}
#cookie_modal .ck-kategoria-popis {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--eight-color);
}
#cookie_modal .ck-vzdy {
  font-size: var(--p-caption);
  color: var(--eight-color);
  white-space: nowrap;
}
#cookie_modal .ck-prepinac {
  position: relative;
  flex: 0 0 auto;
  width: 2.75rem;
  height: 1.5rem;
}
#cookie_modal .ck-prepinac input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
  z-index: 1;
}
#cookie_modal .ck-prepinac-drazka {
  position: absolute;
  inset: 0;
  border-radius: 5rem;
  background: var(--grey-400);
  transition: background-color 0.2s ease;
}
#cookie_modal .ck-prepinac-drazka::after {
  content: "";
  position: absolute;
  top: 0.1875rem;
  left: 0.1875rem;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%;
  background: var(--six-color);
  transition: transform 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
#cookie_modal input:checked + .ck-prepinac-drazka {
  background: var(--accent-color);
}
#cookie_modal input:checked + .ck-prepinac-drazka::after {
  transform: translateX(1.25rem);
}
#cookie_modal input:focus-visible + .ck-prepinac-drazka {
  outline: 2px solid var(--second-color);
  outline-offset: 2px;
}
#cookie_modal .ck-akcie {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin-bottom: 1rem;
}
#cookie_modal .ck-akcie-riadok {
  display: flex;
  gap: 0.625rem;
}
#cookie_modal .ck-btn {
  flex: 1 1 0;
  justify-content: center;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
  white-space: nowrap;
}
#cookie_modal .ck-nastavenia {
  align-self: center;
  padding: 0.25rem 0.5rem;
  border: 0;
  background: none;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--first-color);
  text-decoration: underline;
  text-underline-offset: 0.2em;
  cursor: pointer;
}
#cookie_modal .ck-odkazy {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1rem;
  margin: 0 0 0.375rem;
}
#cookie_modal .ck-pozn {
  margin: 0;
  font-size: var(--p-caption);
  color: var(--eight-color);
  line-height: 1.45;
}
#cookie_modal .ck-viac {
  font-size: var(--p-caption);
  color: var(--eight-color);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
#cookie_modal .ck-viac:hover {
  color: var(--second-color);
}
/* Na mobile ide lišta cez celú šírku dole - úzky panel v rohu by na 390 px
   pôsobil ako omyl. */
@media (max-width: 35.999rem) {
  #cookie_modal {
    left: 0.5rem;
    right: 0.5rem;
    bottom: 0.5rem;
    width: auto;
    padding: 1.375rem 1.25rem;
    /* Odmietnuť a Prijať všetky ostávajú vedľa seba aj na mobile - rovnocenné */
  }
  #cookie_modal .ck-btn {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
/**
 * Swiper 6.4.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: December 18, 2020
 */
@font-face {
  font-family: 'swiper-icons';
  src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA') format('woff');
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: var(--six-color);
}
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: 'prev';
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}
.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: 'next';
}
.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}
.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000;
}
.swiper-button-lock {
  display: none;
}
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2;
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}
.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}
.swiper-pagination-lock {
  display: none;
}
/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
}
/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube {
  overflow: visible;
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}
.swiper-container-flip {
  overflow: visible;
}
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.tooltip-inner {
  max-width: 230px;
  padding: 5px 15px;
  text-align: center;
  background-color: var(--first-color);
  color: var(--white-color);
  font-size: 0.9em;
  border-radius: 2rem;
}
.tooltip.bs-tooltip-auto[x-placement^=top] .arrow::before,
.tooltip.bs-tooltip-top .arrow::before {
  margin-left: -3px;
  content: "";
  border-width: 5px 5px 0;
  border-top-color: var(--first-color);
}
.tooltip.bs-tooltip-auto[x-placement^=right] .arrow::before,
.tooltip.bs-tooltip-right .arrow::before {
  margin-top: -3px;
  content: "";
  border-width: 5px 5px 5px 0;
  border-right-color: var(--first-color);
}
.tooltip.bs-tooltip-auto[x-placement^=bottom] .arrow::before,
.tooltip.bs-tooltip-bottom .arrow::before {
  margin-left: -3px;
  content: "";
  border-width: 0 5px 5px;
  border-bottom-color: var(--first-color);
}
.tooltip.bs-tooltip-auto[x-placement^=left] .arrow::before,
.tooltip.bs-tooltip-left .arrow::before {
  right: 0;
  margin-top: 0.5px;
  margin-left: -0.5px;
  content: "";
  border-width: 5px 0 5px 5px;
  border-left-color: transparent;
}
.breadcrumb {
  font-family: var(--second-font);
  position: relative;
  left: auto;
  margin: 0 0 5px;
  background-color: transparent;
  padding: 1rem 0 1rem;
  font-size: 1rem;
}
.breadcrumb > .active {
  color: var(--first-color);
}
.breadcrumb li a {
  color: var(--black-color);
  text-decoration: none;
}
.breadcrumb li a:active {
  text-decoration: none;
}
.breadcrumb li a:active:focus,
.breadcrumb li a:active:hover {
  text-decoration: none;
}
.breadcrumb li a:focus,
.breadcrumb li a:hover {
  text-decoration: none;
  color: var(--first-color);
}
.listing_detail .car-detail h2 {
  font-size: clamp(1.8rem, 2.8vw, 2rem);
  font-weight: 700;
  margin: 1rem 0;
}
.listing_detail h1 {
  color: var(--first-color);
}
@media (min-width: 60rem) {
  .listing_detail h1 {
    margin-bottom: 2rem;
  }
}
.listing_detail .dph-row {
  display: flex;
  flex-direction: column;
  background: var(--five-color);
  width: auto;
  padding: 1.5rem;
  border-radius: var(--radius-md);
  color: var(--first-color);
  margin-bottom: 1.5rem;
}
.listing_detail .dph-row .with-dph,
.listing_detail .dph-row .without-dph,
.listing_detail .dph-row .dph {
  display: flex;
  flex-direction: row;
  gap: 0.75rem;
  justify-content: space-between;
}
.listing_detail .dph-row .with-dph {
  font-size: 1.35rem;
  font-family: var(--first-font);
}
.listing_detail .dph-row .with-dph .price {
  font-weight: 700;
}
.listing_detail .dph-row .without-dph {
  font-size: 1.35rem;
  font-family: var(--first-font);
}
.listing_detail .dph-row .without-dph .price {
  font-weight: 700;
}
.listing_detail .dph-row .dph {
  font-family: var(--first-font);
  color: var(--grey-800);
}
.listing_detail .images-col .image-grid {
  top: 5rem;
  position: sticky;
}
.listing_detail .images-col .image-grid figure {
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.listing_detail .title-col {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-wrap: nowrap;
}
.listing_detail .top-parameters {
  list-style: none;
  padding-left: 0;
  display: flex;
  flex-direction: column;
}
.listing_detail .top-parameters li {
  display: flex;
  gap: 1rem;
  padding: 0.55rem 0;
  line-height: normal;
  border-bottom: 1px solid var(--grey-400);
}
.listing_detail .top-parameters li:last-child {
  border-bottom: none;
}
.listing_detail .top-parameters li .first {
  flex-basis: 40%;
}
.listing_detail .top-parameters li .second {
  flex-basis: 60%;
  font-weight: 600;
}
.listing_detail .car-equipment {
  display: flex;
  flex-direction: row;
  background: var(--five-color);
  width: auto;
  padding: 1.5rem;
  border-radius: var(--radius-md);
  color: var(--first-color);
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.listing_detail .car-equipment li {
  display: flex;
  flex: 0 1 31%;
  flex-direction: row;
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: 0;
  list-style: none;
}
.listing_detail .car-equipment li:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.125rem;
  width: 1rem;
  height: 1rem;
  background-image: url('data:image/svg+xml;utf8,<svg fill="%236AB43E" height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg"><path d="M6.1 11.5L2.2 7.6L1 8.8L6.1 13.9L15 5L13.8 3.8L6.1 11.5Z" /></svg>');
  background-size: contain;
  background-repeat: no-repeat;
}
@media (max-width: 40rem) {
  .listing_detail .car-equipment li {
    flex: 0 1 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
  }
}
.listing_detail ul {
  padding-left: 1.25rem;
  list-style-type: disc;
}
.listing_detail ul li {
  margin-bottom: 0.25rem;
  line-height: 1.4;
}
/* ============================================================
   DETAIL INZERÁTU - Šablóna 1b (Figma 1703:25)
   ============================================================ */
.listing_detail_body {
  padding: 2rem 0 4rem;
  /* --- breadcrumb --- */
  /* --- galéria --- */
  /* overlay prvky na hlavnom obrázku */
  /* formulár v ľavom stĺpci - prázdny slot (bez widgetu) nezaberá miesto */
  /* --- taby = kotvy na sekcie; cieľ nezalezie pod zúžený sticky navbar --- */
  /* modal pre Video / 3D obhliadku */
  /* --- hlavička --- */
  /* skryté lightbox linky (zvyšné fotky) */
  /* stavy Zdieľať/Uložiť */
  /* --- špecifikácie --- */
  /* --- 2-stĺpec --- */
  /* popis - zbalený so "Zobraziť viac" */
  /* parametre = 2-stĺpcová mriežka */
  /* krycia vrstva - scroll/swipe ide cez ňu na stránku, klik mapu zapne */
  /* PC: nápis len na chvíľu po točení kolieskom bez Ctrl; mobil: stále (ťuknutím sa mapa zapne) */
  /* lišta pod mapou - ovládanie mimo iframe, nebije sa s +/- mapy */
  /* pôdorys (klasické obrázky, contain na krémovom podklade) */
  /* energetická hospodárnosť A-G */
  /* --- hypokalkulačka (zelený box) - zdieľaná s blokom mortgage_calculator, _mortgage_calculator.less --- */
  /* --- kontakt karta (sticky) --- */
  /* pod zúženým sticky navbarom (--nav-h-scrolled z _navbar.less) + medzera */
  /* telefón - outlined pill */
  /* Mám záujem - primárne zelené */
  /* WhatsApp zelená stmavená - biela 5,4:1 */
  /* --- karta "Rezervácia" (pravý stĺpec, sticky nad kartou makléra) - docs/dev/booking.md "Front" --- */
  /* --- sekcia "Obsadenosť a ceny" (obsah) - kalendár + cenník + pravidlá --- */
  /* mobil sticky CTA - skryté na desktope */
  /* --- responzívne --- */
}
.listing_detail_body .pd-breadcrumb {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
  margin-bottom: 1.25rem;
}
.listing_detail_body .pd-breadcrumb a {
  color: var(--mute);
  text-decoration: none;
}
.listing_detail_body .pd-breadcrumb a:hover {
  color: var(--first-color);
}
.listing_detail_body .pd-breadcrumb strong {
  color: var(--ink);
  font-weight: 600;
}
.listing_detail_body .pd-breadcrumb span {
  opacity: 0.6;
}
.listing_detail_body .pd-gallery {
  display: flex;
  gap: 1rem;
  /* 16px */
  height: 30rem;
  /* 480px */
  margin-bottom: 1rem;
}
.listing_detail_body .pd-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.listing_detail_body .pd-gallery-main {
  position: relative;
  flex: 1 1 0;
  border-radius: var(--radius-md);
  /* 18px */
  overflow: hidden;
  background: var(--cream);
}
.listing_detail_body .pd-gallery-main > a {
  display: block;
  height: 100%;
}
.listing_detail_body .pd-noimg {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: var(--mute);
  font-family: var(--second-font);
}
.listing_detail_body .pd-gallery-side {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 1 1 0;
}
.listing_detail_body .pd-gallery-thumb {
  position: relative;
  flex: 1 1 0;
  border-radius: var(--radius-md);
  overflow: hidden;
  display: block;
  background: var(--cream);
}
.listing_detail_body .pd-gallery-more {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(23, 61, 43, 0.55);
  color: var(--white-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1.05rem;
}
.listing_detail_body .pd-gallery-badges {
  position: absolute;
  left: 1.25rem;
  bottom: 1.25rem;
  display: flex;
  gap: 0.5rem;
}
.listing_detail_body .pd-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.44rem;
  padding: 0.5rem 0.875rem;
  border: 0;
  border-radius: 5rem;
  cursor: pointer;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
  color: #fff;
  text-decoration: none;
  /* pure white - lepší kontrast na badgi */
  transition: transform 0.2s ease;
  /* biela na oranžovej 2,65:1 */
}
.listing_detail_body .pd-badge:hover {
  transform: translateY(-1px);
  color: #fff;
}
.listing_detail_body .pd-badge svg {
  color: #fff;
}
.listing_detail_body .pd-badge--video {
  background: var(--first-color);
}
.listing_detail_body .pd-badge--3d {
  background: var(--accent-color);
}
.listing_detail_body .pd-badge--3d,
.listing_detail_body .pd-badge--3d:hover,
.listing_detail_body .pd-badge--3d svg {
  color: var(--on-accent);
}
.listing_detail_body .pd-gallery-count {
  position: absolute;
  right: 1.25rem;
  bottom: 1.25rem;
  padding: 0.5rem 0.875rem;
  border-radius: 5rem;
  background: var(--white-color);
  color: var(--first-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
}
.listing_detail_body .pd-gallery-heart {
  position: absolute;
  right: 1.25rem;
  top: 1.25rem;
  width: 2.625rem;
  height: 2.625rem;
  border-radius: 50%;
  background: var(--white-color);
  border: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--first-color);
  transition: transform 0.2s ease, color 0.2s ease;
}
.listing_detail_body .pd-gallery-heart:hover {
  transform: scale(1.05);
  color: var(--accent-color);
}
.listing_detail_body .pd-form-slot:empty {
  display: none;
}
.listing_detail_body #pd-prehlad,
.listing_detail_body #pd-form,
.listing_detail_body .pd-block[id] {
  scroll-margin-top: calc(var(--nav-h-scrolled, 4.5rem) + 1.5rem);
}
.listing_detail_body .pd-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1.75rem;
}
.listing_detail_body .pd-tab {
  padding: 0.5rem 1.05rem;
  border-radius: 5rem;
  cursor: pointer;
  background: var(--cream);
  border: 1px solid transparent;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--ink);
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}
.listing_detail_body .pd-tab:hover {
  background: var(--cream-2);
  color: var(--ink);
}
.listing_detail_body .pd-tab.is-active {
  background: var(--first-color);
  color: var(--white-color);
}
.listing_detail_body .pd-media-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  opacity: 0;
  transition: opacity 0.25s ease;
}
.listing_detail_body .pd-media-modal[hidden] {
  display: none;
}
.listing_detail_body .pd-media-modal.is-open {
  opacity: 1;
}
.listing_detail_body .pd-media-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(12, 20, 15, 0.84);
}
.listing_detail_body .pd-media-dialog {
  position: relative;
  width: min(1040px, 100%);
  background: #0f1a14;
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: 0 30px 80px -20px rgba(0, 0, 0, 0.6);
  transform: translateY(14px);
  transition: transform 0.25s ease;
}
.pd-media-modal.is-open .listing_detail_body .pd-media-dialog {
  transform: none;
}
.listing_detail_body .pd-media-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 0.85rem 0.75rem 1.15rem;
}
.listing_detail_body .pd-media-head .pd-media-title {
  color: #fff;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.95rem;
}
.listing_detail_body .pd-media-close {
  background: transparent;
  border: 0;
  color: #fff;
  cursor: pointer;
  opacity: 0.8;
  padding: 0.25rem;
  line-height: 0;
}
.listing_detail_body .pd-media-close:hover {
  opacity: 1;
}
.listing_detail_body .pd-media-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
}
.listing_detail_body .pd-media-frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.listing_detail_body .pd-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--line-color);
  padding-block: 1.5rem 1.75rem;
}
.listing_detail_body .pd-head-left {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}
.listing_detail_body .pd-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mute);
}
.listing_detail_body .pd-eyebrow .dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent-color);
}
.listing_detail_body .pd-title {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: 2.5rem;
  line-height: 1.05;
  color: var(--first-color);
  margin: 0;
}
.listing_detail_body .pd-subtitle {
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: #5B564E;
  margin: 0;
}
.listing_detail_body .pd-head-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.25rem;
  flex-shrink: 0;
}
.listing_detail_body .pd-head-actions {
  display: flex;
  gap: 0.625rem;
  margin-bottom: 0.35rem;
}
.listing_detail_body .pd-pill-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1rem;
  border-radius: 5rem;
  background: transparent;
  border: 1px solid var(--line-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--first-color);
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
}
.listing_detail_body .pd-pill-btn:hover {
  border-color: var(--first-color);
  background: var(--warm-white);
}
.listing_detail_body .pd-price-label {
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_body .pd-price {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: 2.375rem;
  color: var(--first-color);
  line-height: 1;
}
.listing_detail_body .pd-price small {
  font-size: 1rem;
  font-weight: 600;
  color: var(--mute);
}
.listing_detail_body .pd-price-note {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_body .pd-gallery-hidden {
  display: none;
}
.listing_detail_body .pd-pill-btn.is-copied {
  border-color: var(--first-color);
  color: var(--first-color);
}
.listing_detail_body .pd-pill-btn.is-saved {
  border-color: var(--accent-color);
  color: var(--accent-color);
}
.listing_detail_body .pd-pill-btn.is-saved svg {
  fill: var(--accent-color);
}
.listing_detail_body .pd-gallery-heart.is-saved {
  color: var(--accent-color);
}
.listing_detail_body .pd-gallery-heart.is-saved svg {
  fill: var(--accent-color);
}
.listing_detail_body .pd-specs {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  padding: 1.35rem 0;
  margin-bottom: 2rem;
  border-top: 1px solid var(--line-color);
  border-bottom: 1px solid var(--line-color);
}
.listing_detail_body .pd-spec {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  flex: 1 1 0;
  min-width: 9rem;
  padding-left: 2.5rem;
  position: relative;
}
.listing_detail_body .pd-spec:not(:last-child) {
  border-right: 1px solid var(--line-color);
}
.listing_detail_body .pd-spec-ico {
  position: absolute;
  left: 0;
  top: 0.1rem;
  color: var(--first-color);
}
.listing_detail_body .pd-spec-val {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.25rem;
  color: var(--ink);
}
.listing_detail_body .pd-spec-lbl {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_body .pd-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 22rem;
  gap: 2.5rem;
  align-items: start;
}
.listing_detail_body .pd-main {
  min-width: 0;
}
.listing_detail_body .pd-block {
  margin-bottom: 2.5rem;
}
.listing_detail_body .pd-block-eyebrow {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mute);
  margin-bottom: 0.4rem;
}
.listing_detail_body .pd-block-title {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.6rem;
  color: var(--first-color);
  margin: 0 0 1.1rem;
}
.listing_detail_body .pd-desc {
  font-family: var(--second-font);
  font-size: 1rem;
  line-height: 1.7;
  color: var(--ink);
}
.listing_detail_body .pd-desc p {
  margin: 0 0 1rem;
}
.listing_detail_body .pd-desc p:last-child {
  margin-bottom: 0;
}
.listing_detail_body .pd-desc-wrap {
  position: relative;
  max-height: 11.5rem;
  /* ~6 riadkov */
  overflow: hidden;
  transition: max-height 0.4s ease;
  /* stmavnutie cez masku (priehľadnosť textu), nie farebnú vrstvu - sedí na akomkoľvek pozadí */
  -webkit-mask-image: linear-gradient(to bottom, #000 45%, transparent);
  mask-image: linear-gradient(to bottom, #000 45%, transparent);
}
.listing_detail_body .pd-desc-wrap.is-expanded {
  max-height: 240rem;
  -webkit-mask-image: none;
  mask-image: none;
}
.listing_detail_body .pd-desc-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 1rem;
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--first-color);
  transition: color 0.2s ease;
}
.listing_detail_body .pd-desc-toggle:hover {
  color: var(--accent-color);
}
.listing_detail_body .pd-desc-toggle svg {
  transition: transform 0.3s ease;
}
.listing_detail_body .pd-desc-toggle.is-open svg {
  transform: rotate(180deg);
}
.listing_detail_body .pd-params {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 2.5rem;
  row-gap: 0;
}
.listing_detail_body .pd-param {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.7rem 0;
  border-bottom: 1px solid var(--line-color);
  font-family: var(--second-font);
  font-size: 0.9375rem;
}
.listing_detail_body .pd-param-k {
  color: var(--mute);
}
.listing_detail_body .pd-param-v {
  color: var(--ink);
  font-weight: 600;
  text-align: right;
}
.listing_detail_body .pd-map {
  position: relative;
  height: 22rem;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--cream);
}
.listing_detail_body .pd-map iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
  pointer-events: none;
}
.listing_detail_body .pd-map.is-active iframe {
  pointer-events: auto;
}
.listing_detail_body .pd-map-shield {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.listing_detail_body .pd-map-hint {
  padding: 0.625rem 1rem;
  border-radius: 5rem;
  background: rgba(23, 61, 43, 0.85);
  color: #fff;
  font-family: var(--second-font);
  font-size: 0.875rem;
  font-weight: 500;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
.listing_detail_body .pd-map-hint.is-visible {
  opacity: 1;
}
.listing_detail_body .pd-map-hint-touch {
  display: none;
}
@media (hover: none) {
  .listing_detail_body .pd-map-hint {
    opacity: 1;
  }
  .listing_detail_body .pd-map-hint-desk {
    display: none;
  }
  .listing_detail_body .pd-map-hint-touch {
    display: inline;
  }
}
.listing_detail_body .pd-map-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-top: 0.875rem;
}
.listing_detail_body .pd-map-layers {
  display: inline-flex;
  padding: 0.25rem;
  border-radius: 5rem;
  background: var(--cream);
  border: 1px solid var(--line-color);
}
.listing_detail_body .pd-map-layers button {
  padding: 0.4375rem 1rem;
  border: 0;
  border-radius: 5rem;
  background: transparent;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--mute);
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.listing_detail_body .pd-map-layers button:hover {
  color: var(--first-color);
}
.listing_detail_body .pd-map-layers button.is-active {
  background: var(--first-color);
  color: #fff;
}
.listing_detail_body .pd-map-nav {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 1rem;
  border-radius: 5rem;
  background: transparent;
  color: var(--first-color);
  border: 1.5px solid var(--line-color);
  font-family: var(--second-font);
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
.listing_detail_body .pd-map-nav:hover {
  border-color: var(--first-color);
  color: var(--first-color);
}
.listing_detail_body .pd-floorplans {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
  gap: 1rem;
}
.listing_detail_body .pd-floorplan {
  display: block;
  background: var(--cream);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  overflow: hidden;
  padding: 1.5rem;
  transition: border-color 0.2s ease;
}
.listing_detail_body .pd-floorplan img {
  width: 100%;
  height: auto;
  max-height: 26rem;
  object-fit: contain;
  display: block;
}
.listing_detail_body .pd-floorplan:hover {
  border-color: var(--first-color);
}
.listing_detail_body .pd-energy-scale {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
}
.listing_detail_body .pd-energy-box {
  flex: 1 1 0;
  min-width: 0;
  height: 2.5rem;
  border-radius: var(--radius-sm);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2.5px solid transparent;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 1rem;
  color: #fff;
  transition: transform 0.2s ease;
}
.listing_detail_body .pd-energy-box.is-active {
  height: 3.25rem;
  font-size: 1.375rem;
  border-color: var(--first-color);
}
.listing_detail_body .pd-energy-note {
  margin: 0.9rem 0 0;
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--first-color);
}
.listing_detail_body .pd-side {
  position: sticky;
  top: calc(var(--nav-h-scrolled, 4.5rem) + 1.5rem);
}
.listing_detail_body .pd-contact {
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.75rem 1.625rem;
  /* 28 / 26 */
  box-shadow: 0 8px 24px rgba(23, 61, 43, 0.06);
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
  /* 18px */
}
.listing_detail_body .pd-contact-agent {
  display: flex;
  align-items: center;
  gap: 0.875rem;
}
.listing_detail_body .pd-agent-photo {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  /* 56px */
}
.listing_detail_body .pd-agent-photo--empty {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--first-color);
  color: var(--white-color);
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.35rem;
}
.listing_detail_body .pd-agent-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.listing_detail_body .pd-agent-info strong {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  color: var(--first-color);
}
.listing_detail_body .pd-agent-info span {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_body .pd-contact-divider {
  height: 1px;
  width: 100%;
  background: var(--line-color);
}
.listing_detail_body .pd-contact-phone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  width: 100%;
  padding: 0.9375rem 1rem;
  border-radius: 5rem;
  border: 1.5px solid var(--first-color);
  background: transparent;
  color: var(--first-color);
  text-decoration: none;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  transition: background 0.2s ease, transform 0.2s ease;
}
.listing_detail_body .pd-contact-phone:hover {
  background: var(--first-color);
  color: var(--white-color);
  transform: translateY(-1px);
}
.listing_detail_body .pd-contact-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 1rem;
  border-radius: 5rem;
  background: var(--first-color);
  color: #fff;
  text-decoration: none;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  transition: background 0.2s ease, transform 0.2s ease;
}
.listing_detail_body .pd-contact-cta:hover {
  background: #123020;
  color: #fff;
  transform: translateY(-1px);
}
.listing_detail_body .pd-contact-cta svg {
  color: #fff;
}
.listing_detail_body .pd-contact-actions {
  display: flex;
  gap: 0.625rem;
}
.listing_detail_body .pd-contact-wa,
.listing_detail_body .pd-contact-email {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.8125rem 0.75rem;
  border-radius: 5rem;
  text-decoration: none;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}
.listing_detail_body .pd-contact-wa:hover,
.listing_detail_body .pd-contact-email:hover {
  transform: translateY(-1px);
}
.listing_detail_body .pd-contact-wa {
  background: #1C7A43;
  color: #fff;
}
.listing_detail_body .pd-contact-wa:hover {
  background: #176639;
  color: #fff;
}
.listing_detail_body .pd-contact-email {
  background: transparent;
  border: 1.5px solid var(--line-color);
  color: var(--first-color);
}
.listing_detail_body .pd-contact-email:hover {
  border-color: var(--first-color);
  color: var(--first-color);
}
.listing_detail_body .pd-contact-note {
  margin: 0;
  text-align: center;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_body .pd-booking-card {
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.75rem 1.625rem;
  box-shadow: 0 8px 24px rgba(23, 61, 43, 0.06);
  margin-bottom: 1.25rem;
}
.listing_detail_body .pd-booking-card__price {
  margin-bottom: 1.1rem;
  font-family: var(--second-font);
  color: var(--first-color);
}
.listing_detail_body .pd-booking-card__from {
  font-size: 0.8125rem;
  color: var(--mute);
  margin-right: 0.25rem;
}
.listing_detail_body .pd-booking-card__amount {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.5rem;
}
.listing_detail_body .pd-booking-card__unit {
  font-size: 0.875rem;
  color: var(--mute);
}
.listing_detail_body .pd-booking-card__dates {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  margin-bottom: 0.9rem;
}
.listing_detail_body .pd-booking-card__date {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 0.65rem 0.75rem;
  min-width: 0;
  background: transparent;
  border: 0;
  text-align: left;
  cursor: pointer;
}
.listing_detail_body .pd-booking-card__date:hover {
  background: var(--cream);
}
.listing_detail_body .pd-booking-card__date-lbl {
  font-family: var(--second-font);
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--mute);
}
.listing_detail_body .pd-booking-card__date-val {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--ink);
}
.listing_detail_body .pd-booking-card__date-sep {
  color: var(--mute);
}
.listing_detail_body .pd-booking-card__persons {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.1rem;
}
.listing_detail_body .pd-booking-card__persons-lbl {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--ink);
}
.listing_detail_body .pd-booking-card__stepper {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
.listing_detail_body .pd-booking-card__stepper button {
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1.5px solid var(--line-color);
  background: transparent;
  cursor: pointer;
  color: var(--first-color);
}
.listing_detail_body .pd-booking-card__stepper button:hover {
  border-color: var(--first-color);
}
.listing_detail_body .pd-booking-card__stepper span {
  min-width: 1.2rem;
  text-align: center;
  font-weight: 600;
}
.listing_detail_body .pd-booking-card__summary {
  border-top: 1px solid var(--line-color);
  padding-top: 0.9rem;
  margin-bottom: 1.1rem;
}
.listing_detail_body .pd-booking-card__row {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.3rem 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--ink);
}
.listing_detail_body .pd-booking-card__row--total {
  font-weight: 700;
  color: var(--first-color);
  border-top: 1px solid var(--line-color);
  margin-top: 0.3rem;
  padding-top: 0.55rem;
}
.listing_detail_body .pd-booking-card__row--muted {
  color: var(--mute);
  font-size: 0.8125rem;
}
.listing_detail_body .pd-booking-card__row--deposit {
  color: var(--mute);
  font-size: 0.8125rem;
  font-style: italic;
}
.listing_detail_body .pd-booking-card__error {
  color: #B3261E;
  font-size: 0.8125rem;
  margin: 0 0 0.75rem;
}
.listing_detail_body .pd-booking-card__cta {
  width: 100%;
  justify-content: center;
  border-radius: 5rem;
  padding: 0.95rem 1.5rem;
  font-weight: 600;
  cursor: pointer;
}
.listing_detail_body .pd-booking-card__cta:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.listing_detail_body .pd-booking-card__hint {
  margin: 0.6rem 0 0;
  font-size: 0.8125rem;
  color: var(--mute);
  text-align: center;
}
.listing_detail_body .pd-avail-cal {
  margin-bottom: 1.75rem;
}
.listing_detail_body .pd-avail-cal__nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.9rem;
}
.listing_detail_body .pd-avail-cal__nav-btn {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  border: 1.5px solid var(--line-color);
  background: transparent;
  cursor: pointer;
  color: var(--first-color);
}
.listing_detail_body .pd-avail-cal__nav-btn:hover {
  border-color: var(--first-color);
}
.listing_detail_body .pd-avail-cal__nav-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}
.listing_detail_body .pd-avail-cal__range {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  text-transform: capitalize;
  color: var(--first-color);
}
.listing_detail_body .pd-avail-cal__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 2rem;
}
.listing_detail_body .pd-avail-cal__month-title {
  text-align: center;
  font-weight: 600;
  text-transform: capitalize;
  margin-bottom: 0.6rem;
  color: var(--ink);
}
.listing_detail_body .pd-avail-cal__weekdays,
.listing_detail_body .pd-avail-cal__days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0.25rem;
}
.listing_detail_body .pd-avail-cal__weekdays span {
  text-align: center;
  font-size: 0.6875rem;
  color: var(--mute);
  padding-bottom: 0.3rem;
}
.listing_detail_body .pd-avail-cal__day {
  min-width: 0;
  width: 100%;
  aspect-ratio: 1;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  background: var(--cream);
  color: var(--ink);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  padding: 0;
  /* polovičný deň (príchod/odchod inej rezervácie, diagonála) - tmavší pruh cez existujúce pozadie
       (voľné aj vybrané), nie vlastná farba, aby fungoval na oboch podkladoch rovnako (pokyn Jozefa 24. 10.) */
}
.listing_detail_body .pd-avail-cal__day--empty {
  background: transparent;
  cursor: default;
}
.listing_detail_body .pd-avail-cal__day--past {
  background: transparent;
  color: var(--grey-400, #c7c7c7);
  cursor: not-allowed;
}
.listing_detail_body .pd-avail-cal__day--blocked {
  color: var(--mute);
  background: repeating-linear-gradient(135deg, var(--cream) 0 6px, var(--cream-2, #ece6da) 6px 12px);
  cursor: not-allowed;
}
.listing_detail_body .pd-avail-cal__day--invalid_start {
  color: var(--mute);
  cursor: not-allowed;
  border-style: dashed;
  border-color: var(--line-color);
}
.listing_detail_body .pd-avail-cal__day--selected {
  background: var(--accent-color);
  color: var(--on-accent);
  font-weight: 700;
  border-color: var(--accent-color);
}
.listing_detail_body .pd-avail-cal__day:disabled {
  cursor: not-allowed;
}
.listing_detail_body .pd-avail-cal__day--edge-arrival {
  background-image: linear-gradient(135deg, transparent 50%, rgba(23, 61, 43, 0.22) 50%);
}
.listing_detail_body .pd-avail-cal__day--edge-departure {
  background-image: linear-gradient(135deg, rgba(23, 61, 43, 0.22) 50%, transparent 50%);
}
.listing_detail_body .pd-avail-cal__day-num {
  font-weight: 600;
  position: relative;
}
.listing_detail_body .pd-avail-cal__day-price {
  position: relative;
}
.listing_detail_body .pd-avail-cal__day-price {
  font-size: 0.5625rem;
  opacity: 0.8;
}
.listing_detail_body .pd-avail-cal__hint,
.listing_detail_body .pd-avail-cal__legend {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
  margin-top: 0.9rem;
}
.listing_detail_body .pd-avail-cal__legend-item {
  margin-right: 1.1rem;
}
.listing_detail_body .pd-avail-cal__legend-item::before {
  content: '';
  display: inline-block;
  width: 0.65rem;
  height: 0.65rem;
  border-radius: 50%;
  margin-right: 0.35rem;
  vertical-align: middle;
}
.listing_detail_body .pd-avail-cal__legend-item--free::before {
  background: var(--cream);
  border: 1px solid var(--line-color);
}
.listing_detail_body .pd-avail-cal__legend-item--blocked::before {
  background: var(--cream-2, #ece6da);
}
.listing_detail_body .pd-avail-cal__legend-item--past::before {
  background: transparent;
  border: 1px solid var(--grey-400, #c7c7c7);
}
.listing_detail_body .pd-avail-cal__legend-item--sel::before {
  background: var(--accent-color);
}
.listing_detail_body .pd-avail-pricing {
  margin-bottom: 1.75rem;
}
.listing_detail_body .pd-avail-pricing__title,
.listing_detail_body .pd-avail-rules__title {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.1rem;
  color: var(--first-color);
  margin: 0 0 0.75rem;
}
.listing_detail_body .pd-avail-pricing__wrap {
  overflow-x: auto;
}
.listing_detail_body .pd-avail-pricing__table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--second-font);
  font-size: 0.875rem;
}
.listing_detail_body .pd-avail-pricing__table th {
  text-align: left;
  color: var(--mute);
  font-weight: 600;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding: 0 0.75rem 0.5rem 0;
}
.listing_detail_body .pd-avail-pricing__table td {
  padding: 0.6rem 0.75rem 0.6rem 0;
  border-top: 1px solid var(--line-color);
  color: var(--ink);
}
.listing_detail_body .pd-avail-pricing__table small {
  color: var(--mute);
}
.listing_detail_body .pd-avail-rules__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--ink);
}
.listing_detail_body .pd-avail-rules__list li {
  padding-left: 1.1rem;
  position: relative;
}
.listing_detail_body .pd-avail-rules__list li::before {
  content: '-';
  position: absolute;
  left: 0;
  color: var(--mute);
}
.listing_detail_body .pd-sticky-cta {
  display: none;
}
.listing_detail_body .pd-sticky-btn {
  border: 0;
  cursor: pointer;
}
@media (max-width: 991.98px) {
  .listing_detail_body {
    /* pod sebou: `flex: 1 1 0` by v stĺpci vynulovalo výšku (fotka mala 0 px) -> výšku dáva pomer strán */
  }
  .listing_detail_body .pd-body {
    grid-template-columns: 1fr;
  }
  .listing_detail_body .pd-side {
    position: static;
  }
  .listing_detail_body .pd-gallery {
    height: auto;
    flex-direction: column;
  }
  .listing_detail_body .pd-gallery-main {
    flex: none;
    height: auto;
    aspect-ratio: 16 / 10;
  }
  .listing_detail_body .pd-gallery-side {
    flex: none;
    flex-direction: row;
  }
  .listing_detail_body .pd-gallery-thumb {
    height: 9rem;
  }
}
@media (max-width: 767.98px) {
  .listing_detail_body {
    /* fotka na celú šírku displeja, ďalšie fotky cez počítadlo „1 / N" (otvorí galériu) */
    /* po okraj displeja bez ohľadu na vnútorný okraj kontajnera (detail ho má väčší než --page-x) */
    /* záložky v jednom riadku, posúvajú sa do strany (zalomená „Mapa" visela sama) */
  }
  .listing_detail_body .pd-gallery {
    margin: 0 calc(50% - 50vw) 1.25rem;
  }
  .listing_detail_body .pd-gallery-main {
    aspect-ratio: 4 / 3;
    border-radius: 0;
  }
  .listing_detail_body .pd-gallery-side {
    display: none;
  }
  .listing_detail_body .pd-gallery-badges {
    left: 1rem;
    bottom: 1rem;
  }
  .listing_detail_body .pd-gallery-count {
    right: 1rem;
    bottom: 1rem;
  }
  .listing_detail_body .pd-gallery-heart {
    right: 1rem;
    top: 1rem;
  }
  .listing_detail_body .pd-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 0 calc(50vw - 50%);
    scrollbar-width: none;
  }
  .listing_detail_body .pd-tabs::-webkit-scrollbar {
    display: none;
  }
  .listing_detail_body .pd-tab {
    flex-shrink: 0;
    white-space: nowrap;
  }
  .listing_detail_body .pd-head-actions {
    margin-bottom: 0.75rem;
  }
}
@media (max-width: 767.98px) {
  .listing_detail_body {
    /* kalendár dostupnosti - mobil len 1 mesiac (zadanie), druhý ostáva v DOM (navigácia ho posunie) */
    /* sticky CTA lišta dole */
    padding-bottom: 5.5rem;
  }
  .listing_detail_body .pd-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .listing_detail_body .pd-head-right {
    align-items: flex-start;
  }
  .listing_detail_body .pd-title {
    font-size: 1.875rem;
  }
  .listing_detail_body .pd-price {
    font-size: 1.875rem;
  }
  .listing_detail_body .pd-specs {
    gap: 0.75rem;
  }
  .listing_detail_body .pd-spec {
    flex: 1 1 45%;
    border-right: 0 !important;
  }
  .listing_detail_body .pd-params {
    grid-template-columns: 1fr;
  }
  .listing_detail_body .pd-avail-cal__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_detail_body .pd-avail-cal__month--second {
    display: none;
  }
  .listing_detail_body .pd-sticky-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1100;
    padding: 0.7rem 1rem;
    background: var(--warm-white);
    border-top: 1px solid var(--line-color);
    box-shadow: 0 -8px 24px -12px rgba(23, 61, 43, 0.18);
  }
  .listing_detail_body .pd-sticky-info {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }
  .listing_detail_body .pd-sticky-price {
    font-family: var(--first-font);
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--first-color);
    line-height: 1.15;
  }
  .listing_detail_body .pd-sticky-agent {
    font-family: var(--second-font);
    font-size: 0.75rem;
    color: var(--mute);
  }
  .listing_detail_body .pd-sticky-btn {
    flex-shrink: 0;
    padding: 0.75rem 1.5rem;
    border-radius: 5rem;
    background: var(--accent-color);
    color: var(--on-accent);
    text-decoration: none;
    font-family: var(--second-font);
    font-weight: 600;
    font-size: 0.9375rem;
  }
}
/* ============================================================
   OKNO S PROCESOM REZERVÁCIE - mimo `.listing_detail_body` zámerne:
   `x-teleport="body"` (process_modal.php) presunie tento DOM strom na koniec <body>, mimo sekcie
   detailu inzerátu - vnorené selektory (`.listing_detail_body .pd-booking-modal`) by po teleporte
   prestali sedieť. Štýl aj tak zdieľa rovnaké premenné 1b ako zvyšok detailu.
   ============================================================ */
.pd-booking-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
}
.pd-booking-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(23, 61, 43, 0.55);
}
.pd-booking-modal__dialog {
  position: relative;
  width: min(32rem, 100%);
  max-height: 90vh;
  overflow-y: auto;
  background: var(--warm-white);
  border-radius: var(--radius-md);
  box-shadow: 0 30px 80px -20px rgba(0, 0, 0, 0.35);
}
.pd-booking-modal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.1rem 1.25rem;
  border-bottom: 1px solid var(--line-color);
  position: sticky;
  top: 0;
  background: var(--warm-white);
  z-index: 1;
}
.pd-booking-modal__title {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.15rem;
  color: var(--first-color);
}
.pd-booking-modal__close {
  background: transparent;
  border: 0;
  cursor: pointer;
  color: var(--mute);
}
.pd-booking-modal__close:hover {
  color: var(--first-color);
}
.pd-booking-modal__body {
  padding: 1.25rem;
}
.pd-booking-modal__range {
  text-align: center;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--first-color);
  margin: 0 0 1.1rem;
}
.pd-booking-modal__range strong {
  font-weight: 700;
}
.pd-booking-modal__range-nights {
  color: var(--mute);
  font-weight: 400;
}
.pd-booking-modal__field {
  margin-bottom: 1.1rem;
}
.pd-booking-modal__label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: var(--ink);
}
.pd-booking-modal__item {
  margin-bottom: 0.75rem;
}
.pd-booking-modal__item label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.3rem;
  font-size: 0.875rem;
  color: var(--ink);
}
.pd-booking-modal__item input[type="text"],
.pd-booking-modal__item input[type="email"],
.pd-booking-modal__item input[type="tel"],
.pd-booking-modal__item input[type="number"],
.pd-booking-modal__item input[type="date"],
.pd-booking-modal__item select,
.pd-booking-modal__item textarea {
  width: 100%;
  padding: 0.65rem 0.8rem;
  border: 1px solid var(--line-color);
  border-radius: 0.5rem;
  background: #fff;
}
.pd-booking-modal__addition {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.5rem 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--ink);
}
.pd-booking-modal__addition-name {
  flex: 1 1 auto;
}
.pd-booking-modal__addition-name small {
  display: block;
  color: var(--mute);
  font-size: 0.75rem;
}
.pd-booking-modal__addition-price {
  color: var(--first-color);
  font-weight: 600;
  white-space: nowrap;
}
.pd-booking-modal__gdpr {
  display: flex;
  gap: 0.5rem;
  font-size: 0.8125rem;
  color: var(--mute);
  align-items: flex-start;
}
.pd-booking-modal__error {
  color: #B3261E;
  font-size: 0.875rem;
  margin: 0 0 0.75rem;
}
.pd-booking-modal__submit {
  width: 100%;
  justify-content: center;
  border-radius: 5rem;
  padding: 0.95rem 1.5rem;
  font-weight: 600;
  cursor: pointer;
}
.pd-booking-modal__submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.pd-booking-modal__success {
  text-align: center;
  padding: 1.5rem 0;
}
.pd-booking-modal__success svg {
  color: var(--green-500, #2E8B5C);
  margin-bottom: 0.75rem;
}
.pd-booking-modal__success p {
  font-family: var(--second-font);
  font-size: 1.0625rem;
  color: var(--first-color);
  margin: 0 0 1.25rem;
}
.pd-booking-modal__success .btn-first {
  display: inline-flex;
  border-radius: 5rem;
  padding: 0.75rem 1.75rem;
  cursor: pointer;
}
@media (max-width: 480px) {
  .pd-booking-modal {
    padding: 0;
  }
  .pd-booking-modal__dialog {
    width: 100%;
    max-height: 100vh;
    height: 100%;
    border-radius: 0;
  }
}
/* ============================================================
   FOTOGALÉRIA (Šablóna 1b)
   Jedna mriežka pre všetky typy - typ určuje len počet stĺpcov
   (`is-cols-1` … `is-cols-4`) alebo mozaiku (`is-mosaic`).
   Šírku sekcie rieši „Rozloženie" widgetu (container), nie tieto štýly.
   ============================================================ */
.gallery {
  padding: var(--section-y-half) 0;
  /* krémová sekcia - viď --section-y */
  /* značka „prehrať" - fotka a video vyzerajú inak rovnako, klient musí vidieť rozdiel */
  /* --- počty stĺpcov --- */
  /* --- jedna fotka na riadok: vyšší formát, nech to má váhu --- */
  /* --- mozaika: prvá fotka veľká cez 2 stĺpce a 2 riadky --- */
}
.gallery .section-title {
  margin-bottom: 1.5rem;
}
.gallery .section-title h2,
.gallery .section-title h3 {
  margin-bottom: 0.5rem;
}
.gallery .section-title p {
  color: var(--font-grey);
  margin-bottom: 0;
}
.gallery .gallery-grid {
  display: grid;
  /* na mobile vždy jeden stĺpec - dve fotky vedľa seba sú na telefóne nečitateľné,
       výnimkou je hustá mriežka (is-cols-4), ktorá je náhľadová */
  grid-template-columns: 1fr;
  gap: 1rem;
}
.gallery .gallery-item {
  margin: 0;
  min-width: 0;
  /* bez toho grid položka nepustí dlhý popis a mriežka sa roztiahne */
}
.gallery .gallery-link {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: var(--border-radius);
  background: var(--four-color);
  aspect-ratio: 4 / 3;
}
.gallery .gallery-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: var(--trans-350);
}
.gallery .gallery-link:hover img,
.gallery .gallery-link:focus-visible img {
  transform: scale(1.03);
}
.gallery .gallery-link:focus-visible {
  outline: 2px solid var(--accent-color);
  outline-offset: 2px;
}
.gallery .gallery-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(23, 61, 43, 0.85);
  /* --green-800 s priehľadnosťou */
  color: var(--cream);
  transition: var(--trans-250);
  pointer-events: none;
}
.gallery .gallery-play svg {
  margin-left: 0.15rem;
  /* opticky doprostred - trojuholník ťahá doľava */
}
.gallery .gallery-link:hover .gallery-play {
  background: var(--accent-color);
  color: #fff;
}
.gallery figcaption {
  margin-top: 0.5rem;
  font-size: var(--p-caption);
  line-height: var(--p-caption-lh);
  color: var(--font-grey);
}
@media (min-width: 576px) {
  .gallery.is-cols-4 .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .gallery.is-cols-2 .gallery-grid,
  .gallery.is-cols-3 .gallery-grid,
  .gallery.is-cols-4 .gallery-grid,
  .gallery.is-mosaic .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .gallery .gallery-grid {
    gap: 1.25rem;
  }
  .gallery.is-cols-3 .gallery-grid,
  .gallery.is-mosaic .gallery-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .gallery.is-cols-4 .gallery-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.gallery.is-cols-1 .gallery-grid {
  gap: 2rem;
}
.gallery.is-cols-1 .gallery-link {
  aspect-ratio: 16 / 9;
}
.gallery.is-cols-1 figcaption {
  max-width: 42rem;
}
@media (min-width: 768px) {
  .gallery.is-mosaic .gallery-grid {
    grid-auto-rows: 1fr;
  }
  .gallery.is-mosaic .gallery-item:first-child {
    grid-column: span 2;
    grid-row: span 2;
  }
  .gallery.is-mosaic .gallery-item:first-child .gallery-link {
    height: 100%;
    aspect-ratio: auto;
    min-height: 22rem;
  }
}
/* ============================================================
   FILTER — Šablóna 1b (biela karta, krémové pill polia, zelené CTA)
   Aktívny template: _filter_bar_inner.php (Bootstrap selectpicker + text inputy).
   Zachované triedy z markupu: .card .form-group .form-control .selectpicker
   .bootstrap-select .btn-second #settings #resetButton #collapseExample .br-*-solid
   Scopované na .product_filter — nič mimo filtra neovplyvní.
   ============================================================ */
.product_filter {
  position: relative;
  z-index: 1020;
  --fld-radius: var(--radius-sm);
  --fld-bg: var(--cream);
  --fld-border: var(--line-color);
  --fld-h: 3.25rem;
  /* interné oddeľovače medzi poľami — v 1b preč (vzdušné, čisté) */
  /* ---- Bootstrap-select (selectpicker) ako 1b pill ---- */
  /* natívny <select> fallback (ak selectpicker JS nebeží) */
  /* ---- Zobraziť | N (submit) — zelené primárne CTA ---- */
  /* ---- round icon buttons (Viac možností / reset) ---- */
  /* ---- collapse „Viac možností" panel ---- */
  /* modal variant (filter_typ_1_modal_2) */
}
.product_filter .card {
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  background: var(--white-color);
  box-shadow: 0 18px 40px -24px rgba(23, 61, 43, 0.18);
}
.product_filter .card-body {
  padding: 1.35rem 1.5rem;
}
.product_filter form {
  /* label = malý eyebrow (Manrope, uppercase, tlmený) */
  /* textové polia (cena od/do, rozloha od/do) */
}
.product_filter form .min-sirka {
  min-width: 10.5rem;
}
.product_filter form label {
  display: block;
  color: var(--mute);
  font-family: var(--second-font);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0.35rem 0 0.5rem;
}
.product_filter form .form-group {
  margin-bottom: 0.85rem;
}
@media (min-width: 992px) {
  .product_filter form .form-group {
    margin-bottom: 0;
  }
}
.product_filter form .form-control {
  background: var(--fld-bg);
  border: 1px solid var(--fld-border);
  border-radius: var(--fld-radius);
  min-height: var(--fld-h);
  height: var(--fld-h);
  padding: 0 1rem;
  color: var(--first-color);
  font-family: var(--second-font);
  font-weight: 500;
  font-size: var(--p-body);
  box-shadow: none;
  caret-color: var(--first-color);
  transition: var(--trans-200);
}
.product_filter form .form-control::placeholder {
  color: var(--mute);
  font-weight: 400;
  opacity: 1;
}
.product_filter form .form-control:focus {
  background: var(--white-color);
  border-color: var(--first-color);
  box-shadow: 0 0 0 3px rgba(23, 61, 43, 0.12);
}
.product_filter .br-solid,
.product_filter .br-lg-solid,
.product_filter .br-xl-solid,
.product_filter .bt-solid,
.product_filter .bt-lg-solid,
.product_filter .bt-xl-none,
.product_filter .bt-lg-none {
  border: 0 !important;
}
.product_filter .bootstrap-select {
  width: 100% !important;
}
.product_filter .bootstrap-select > .dropdown-toggle {
  background: var(--fld-bg) !important;
  border: 1px solid var(--fld-border) !important;
  border-radius: var(--fld-radius) !important;
  min-height: var(--fld-h);
  height: var(--fld-h);
  display: flex;
  align-items: center;
  padding: 0 1rem;
  color: var(--first-color) !important;
  font-family: var(--second-font);
  font-weight: 500;
  box-shadow: none !important;
  outline: none !important;
  transition: var(--trans-200);
}
.product_filter .bootstrap-select > .dropdown-toggle:hover,
.product_filter .bootstrap-select > .dropdown-toggle:focus,
.product_filter .bootstrap-select > .dropdown-toggle:active {
  background: var(--fld-bg) !important;
  border-color: var(--first-color) !important;
}
.product_filter .bootstrap-select > .dropdown-toggle.bs-placeholder {
  color: var(--mute) !important;
  font-weight: 400;
}
.product_filter .bootstrap-select > .dropdown-toggle:after {
  color: var(--mute);
}
.product_filter .bootstrap-select .dropdown-menu {
  border: 1px solid var(--line-color);
  border-radius: var(--fld-radius);
  box-shadow: 0 18px 40px -18px rgba(23, 61, 43, 0.25);
  padding: 0.35rem;
  background: var(--white-color);
}
.product_filter .bootstrap-select .dropdown-menu li a,
.product_filter .bootstrap-select .dropdown-menu .dropdown-item {
  border-radius: var(--radius-sm);
  padding: 0.6rem 0.75rem;
  color: var(--first-color);
  font-family: var(--second-font);
}
.product_filter .bootstrap-select .dropdown-menu li a:hover,
.product_filter .bootstrap-select .dropdown-menu .dropdown-item:hover,
.product_filter .bootstrap-select .dropdown-menu li a:focus,
.product_filter .bootstrap-select .dropdown-menu .dropdown-item:focus {
  background: var(--cream);
  color: var(--first-color);
}
.product_filter .bootstrap-select .dropdown-menu .dropdown-item.active,
.product_filter .bootstrap-select .dropdown-menu .dropdown-item:active,
.product_filter .bootstrap-select .dropdown-menu li.selected > a {
  background: var(--first-color);
  color: var(--white-color);
}
.product_filter .bootstrap-select .dropdown-menu .dropdown-header {
  color: var(--mute);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.7rem;
}
.product_filter select.form-control {
  -webkit-appearance: none;
  appearance: none;
}
.product_filter .btn-second,
.product_filter .btn-success {
  background: var(--first-color);
  border-color: var(--first-color);
  color: var(--white-color);
  border-radius: 5rem;
  font-family: var(--second-font);
  text-transform: none;
  white-space: nowrap;
  /* na desktope needsťahovať pod round tlačidlá */
}
.product_filter .btn-second:hover,
.product_filter .btn-success:hover,
.product_filter .btn-second:focus,
.product_filter .btn-success:focus,
.product_filter .btn-second:active,
.product_filter .btn-success:active {
  background: var(--green-900);
  border-color: var(--green-900);
  color: var(--white-color);
}
.product_filter .btn-second .icon,
.product_filter .btn-success .icon {
  margin-right: 0.4rem;
}
@media (min-width: 992px) {
  .product_filter .btn-second,
  .product_filter .btn-success {
    width: auto;
    min-width: 12rem;
  }
}
.product_filter #settings,
.product_filter #resetButton,
.product_filter .btn-round {
  position: relative;
  z-index: 2;
  background: var(--cream);
  border: 1px solid var(--line-color);
  border-radius: 50%;
  width: 2.85rem;
  height: 2.85rem;
  min-width: 2.85rem;
  margin-left: 0.5rem;
  color: var(--first-color);
  transition: var(--trans-200);
}
.product_filter #settings .icon,
.product_filter #resetButton .icon,
.product_filter .btn-round .icon {
  color: var(--first-color);
}
.product_filter #settings:hover,
.product_filter #resetButton:hover,
.product_filter .btn-round:hover {
  background: var(--first-color);
  border-color: var(--first-color);
}
.product_filter #settings:hover .icon,
.product_filter #resetButton:hover .icon,
.product_filter .btn-round:hover .icon {
  color: var(--white-color);
}
.product_filter #settingsIcon.text-second {
  color: var(--accent-color) !important;
}
.product_filter #collapseExample.show {
  padding-top: 0.75rem;
  margin-top: 0.75rem;
  border-top: 1px solid var(--line-color);
}
.product_filter .modal-content {
  border: 0;
  border-radius: var(--radius-md);
}
@media (min-width: 768px) {
  .product_filter .modal-dialog {
    max-width: 640px;
    margin: 30px auto;
  }
}
/* ---------------------------------------------------------------------------
   Filter bar - Šablóna 1b (čisté natívne selecty, Figma horizontálny bar)
   --------------------------------------------------------------------------- */
.product_filter {
  /* Pipe oddeľovač len pri hlavnom "Hľadať | N" (nie v pätičke panela) */
  /* "Viac možností" - textový prepínač zarovnaný so spodkom polí */
  /* Rozšírený panel - plynulé rozbalenie cez max-height */
}
.product_filter .filter-1b-card {
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  box-shadow: 0 24px 60px -34px rgba(23, 61, 43, 0.22);
  padding: 1.125rem 1.375rem;
}
.product_filter .filter-bar {
  display: flex;
  align-items: flex-end;
  gap: 1.25rem;
  flex-wrap: wrap;
  margin: 0;
}
.product_filter .filter-field {
  flex: 1 1 12rem;
  min-width: 10rem;
}
.product_filter .filter-field label {
  display: block;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mute);
  margin: 0 0 0.45rem 0.15rem;
}
.product_filter .filter-select {
  position: relative;
}
.product_filter .filter-select select {
  width: 100%;
  height: 3.375rem;
  padding: 0 2.75rem 0 1.125rem;
  background: var(--cream);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.9375rem;
  color: var(--ink);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231C1C1A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.product_filter .filter-select select:hover {
  background-color: var(--cream-2);
}
.product_filter .filter-select select:focus {
  outline: none;
  border-color: var(--first-color);
  background-color: var(--warm-white);
}
.product_filter .filter-submit {
  height: 3.375rem;
  padding: 0 2.25rem;
  min-width: 11rem;
  flex-shrink: 0;
  background: var(--first-color);
  color: var(--white-color);
  border: 0;
  border-radius: 5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  transition: background 0.2s ease, transform 0.2s ease;
}
.product_filter .filter-submit .filter-count {
  opacity: 0.72;
  font-weight: 500;
}
.product_filter .filter-submit:hover {
  background: #123020;
  transform: translateY(-1px);
}
.product_filter .filter-bar .filter-submit .filter-count::before {
  content: '| ';
}
.product_filter .filter-more-toggle {
  height: 3.375rem;
  flex-shrink: 0;
  background: transparent;
  border: 0;
  padding: 0 0.5rem;
  color: var(--ink);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  transition: color 0.2s ease;
}
.product_filter .filter-more-toggle:hover {
  color: var(--first-color);
}
.product_filter .filter-more-toggle .filter-more-caret {
  transition: transform 0.25s ease;
}
.product_filter .filter-more {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  margin-top: 0;
  transition: max-height 0.35s ease, opacity 0.25s ease, margin-top 0.3s ease;
}
.product_filter.pf-open .filter-more,
.product_filter .pf-open .filter-more {
  max-height: 46rem;
  opacity: 1;
  margin-top: 1.35rem;
}
.product_filter.pf-open .filter-more-caret,
.product_filter .pf-open .filter-more-caret {
  transform: rotate(180deg);
}
.product_filter .filter-more-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.35rem;
}
.product_filter .fm-block > label {
  display: block;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mute);
  margin: 0 0 0.6rem 0.15rem;
}
.product_filter .fm-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.product_filter .fm-pill {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.75rem;
  height: 2.75rem;
  padding: 0 0.95rem;
  background: var(--cream);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.9375rem;
  color: var(--ink);
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease;
  /* is-on = server render; :has = okamžitá odozva pri count-only (bez re-renderu) */
}
.product_filter .fm-pill input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.product_filter .fm-pill:hover {
  background: var(--cream-2);
}
.product_filter .fm-pill.is-on,
.product_filter .fm-pill:has(input:checked) {
  background: var(--first-color);
  color: var(--white-color);
}
.product_filter .fm-range {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.product_filter .fm-dash {
  color: var(--mute);
  flex-shrink: 0;
}
.product_filter .fm-empty {
  color: var(--mute);
  font-size: 0.9rem;
  line-height: 2.75rem;
}
.product_filter .fm-input {
  width: 100%;
  height: 2.75rem;
  padding: 0 0.85rem;
  background: var(--cream);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--ink);
  -moz-appearance: textfield;
}
.product_filter .fm-input::-webkit-outer-spin-button,
.product_filter .fm-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.product_filter .fm-input:focus {
  outline: none;
  border-color: var(--first-color);
  background: var(--warm-white);
}
.product_filter .filter-more-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.5rem;
  padding-top: 1.35rem;
  border-top: 1px solid var(--line-color);
}
.product_filter .filter-reset {
  background: transparent;
  border: 0;
  padding: 0;
  color: var(--mute);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
  transition: color 0.2s ease;
}
.product_filter .filter-reset:hover {
  color: var(--first-color);
}
.product_filter .filter-1b-card.is-loading {
  opacity: 0.55;
  pointer-events: none;
}
@media (max-width: 991.98px) {
  .product_filter .filter-bar {
    gap: 0.875rem;
  }
  .product_filter .filter-field {
    flex: 1 1 45%;
  }
  .product_filter .filter-more-toggle {
    order: 5;
  }
  .product_filter .filter-submit {
    flex: 1 1 100%;
    margin-top: 0.25rem;
  }
  .product_filter .filter-more-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .product_filter.pf-open .filter-more,
  .product_filter .pf-open .filter-more {
    max-height: 70rem;
  }
}
@media (max-width: 575.98px) {
  .product_filter .filter-more-grid {
    grid-template-columns: 1fr;
  }
  .product_filter .filter-more-foot {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .product_filter .filter-more-foot .filter-submit {
    width: 100%;
  }
  .product_filter .filter-reset {
    text-align: center;
    padding: 0.5rem 0;
  }
}
/* ============================================================
   Filter TYP 1 - SHEET / MODAL variant (Filter B)
   Trigger "Filter" -> BS5 modal. Desktop = centrovaný dialog,
   mobil = bottom-sheet. Zdieľa .filter-select / .fm-* / .fm-pill.
   ============================================================ */
.product_filter_sheet {
  /* DÔLEŽITÉ: .product_filter má position:relative + z-index:1020 = stacking kontext,
     ktorý by modal uväznil POD sticky navbar (z-index:1040) -> navbar by prekryl
     vršok modalu (Filter titul + X). Na sheet variante ten kontext zrušíme. */
  /* Tlačidlo "Filter" */
  /* Modal 1b vzhľad */
  /* Mobil = bottom-sheet */
}
.product_filter_sheet.product_filter {
  position: static;
  z-index: auto;
}
.product_filter_sheet .pf-sheet {
  display: flex;
  justify-content: center;
}
.product_filter_sheet .pf-sheet-trigger {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  height: 3.375rem;
  padding: 0 1.75rem;
  background: var(--first-color);
  color: var(--white-color);
  border: 0;
  border-radius: 5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}
.product_filter_sheet .pf-sheet-trigger:hover {
  background: #123020;
  transform: translateY(-1px);
}
.product_filter_sheet .pf-sheet-trigger .pf-sheet-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.35rem;
  height: 1.35rem;
  padding: 0 0.4rem;
  border-radius: 5rem;
  background: var(--accent-color);
  color: var(--white-color);
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1;
}
.product_filter_sheet .pf-modal {
  z-index: 1056;
  /* nad sticky navbar (1040) aj BS backdrop (1050) */
}
.product_filter_sheet .pf-modal .modal-dialog {
  max-width: 34rem;
}
.product_filter_sheet .pf-modal .modal-content {
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  overflow: hidden;
}
.product_filter_sheet .pf-modal .modal-header {
  align-items: center;
  padding: 1.15rem 1.5rem;
  border-bottom: 1px solid var(--line-color);
}
.product_filter_sheet .pf-modal .modal-title {
  font-family: var(--first-font);
  font-weight: 600;
  font-size: 1.5rem;
  color: var(--ink);
  margin: 0;
}
.product_filter_sheet .pf-modal .pf-modal-close {
  background: transparent;
  border: 0;
  color: var(--ink);
  padding: 0.25rem;
  line-height: 0;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.2s ease, color 0.2s ease;
}
.product_filter_sheet .pf-modal .pf-modal-close:hover {
  opacity: 1;
  color: var(--first-color);
}
.product_filter_sheet .pf-modal .modal-body {
  padding: 1.4rem 1.5rem 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
}
.product_filter_sheet .pf-modal .pf-selects-stack {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}
.product_filter_sheet .pf-modal .modal-footer {
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem 1.5rem 1.35rem;
  border-top: 1px solid var(--line-color);
}
.product_filter_sheet .pf-modal .modal-footer .filter-submit {
  min-width: 0;
}
.product_filter_sheet .pf-modal .pf-swap.is-loading {
  opacity: 0.55;
  pointer-events: none;
}
@media (max-width: 767.98px) {
  .product_filter_sheet {
    /* prebi .modal-dialog-centered (flex center + min-height) -> plná šírka, ukotvené dole */
    /* BS5 fade: dialog sa vysúva zdola */
  }
  .product_filter_sheet .pf-sheet-trigger {
    width: 100%;
    justify-content: center;
  }
  .product_filter_sheet .pf-modal .modal-dialog {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    top: auto;
    width: 100%;
    max-width: 100%;
    margin: 0;
    align-items: stretch;
    min-height: 0;
  }
  .product_filter_sheet .pf-modal .modal-content {
    width: 100%;
    max-height: 92vh;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
  }
  .product_filter_sheet .pf-modal .modal-body {
    overflow-y: auto;
  }
  .product_filter_sheet .pf-modal.fade .modal-dialog {
    transform: translateY(100%);
    transition: transform 0.3s ease-out;
  }
  .product_filter_sheet .pf-modal.show .modal-dialog {
    transform: none;
  }
}
/* Filter ako samostatná sekcia stránky (napr. hneď pod hero) - odstup nad ním, rovnaký ako majú
   chipy pod hero (Figma 56px). Pod chipmi ho nedáva (chipy majú vlastný margin-bottom); filter
   v hero_search a na podstránke page_wide nie je priamo v #main, má svoje odsadenie. */
#main > .product_filter {
  margin-top: 3.5rem;
}
#main > .quick_chips + .product_filter {
  margin-top: 0;
}
/* ============================================================
   DEVELOPERSKÝ PROJEKT - project_units (tabuľka jednotiek)
   Tlačený katalóg, nie SaaS tabuľka: tenké vodorovné čiary namiesto zebry, cena
   Frauncesom, stav tlmenou farbou (nie sýtym semaforom). Na mobile (<768px) sa
   riadky menia na karty cez `data-label` - rovnaký DOM, len iné rozloženie.
   ============================================================ */
.project_units {
  padding: var(--section-y-half) 0;
  /* bunka ostáva bunkou tabuľky (display: flex by jej posunul čiaru oproti riadku); flex len na mobile */
  /* mobil: tabuľka -> karty (rovnaký DOM, data-label ako popisok bunky) */
}
.project_units .pu-hlava {
  margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
}
.project_units .pu-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.25rem 1.75rem;
  margin-top: 1.25rem;
}
.project_units .pu-filter-skupina {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
.project_units .pu-filter-nazov {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--mute);
  margin-right: 0.25rem;
}
.project_units .pu-chip {
  display: inline-flex;
  align-items: center;
  height: 2.25rem;
  padding: 0 0.9rem;
  background: var(--cream);
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--ink);
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease;
}
.project_units .pu-chip:hover {
  background: var(--cream-2);
}
.project_units .pu-chip.is-on {
  background: var(--first-color);
  color: var(--white-color);
}
.project_units .pu-triedenie {
  margin-left: auto;
}
.project_units .pu-triedenie select {
  height: 2.25rem;
  padding: 0 2rem 0 0.9rem;
  background: var(--cream) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235B564E' stroke-width='1.5'/%3E%3C/svg%3E") right 0.75rem center / 10px 7px no-repeat;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--ink);
  appearance: none;
  cursor: pointer;
}
.project_units .pu-pocet {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--mute);
  white-space: nowrap;
}
.project_units .pu-tabulka-obal {
  overflow-x: auto;
}
.project_units .pu-tabulka {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid var(--line-color);
}
.project_units .pu-tabulka th,
.project_units .pu-tabulka td {
  padding: 0.9rem 0.75rem;
  text-align: left;
  border-bottom: 1px solid var(--line-color);
  font-family: var(--second-font);
  font-size: 0.9375rem;
  white-space: nowrap;
}
.project_units .pu-tabulka th {
  font-weight: 600;
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--mute);
}
.project_units .pu-tabulka th.is-cislo {
  text-align: right;
}
.project_units .pu-tabulka td.is-cislo {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.project_units .pu-tabulka tbody tr:hover {
  background: var(--cream);
}
.project_units .pu-nazov a {
  font-weight: 600;
  color: var(--first-color);
  text-decoration: none;
}
.project_units .pu-nazov a:hover {
  text-decoration: underline;
}
.project_units .pu-cena {
  font-family: var(--first-font);
  font-size: 1.0625rem;
  color: var(--first-color);
}
.project_units .pu-pomlcka {
  color: var(--mute);
}
.project_units .pu-tag {
  display: inline-flex;
  align-items: center;
  height: 1.75rem;
  padding: 0 0.7rem;
  border-radius: var(--radius-sm);
  font-family: var(--second-font);
  font-size: 0.8125rem;
  font-weight: 500;
  white-space: nowrap;
}
.project_units .pu-tag.is-volny {
  background: var(--green-50);
  color: var(--green-700);
}
.project_units .pu-tag.is-rezervovany {
  background: rgba(232, 134, 59, 0.14);
  color: var(--orange-600);
}
.project_units .pu-tag.is-predany {
  background: var(--cream-2);
  color: var(--mute);
}
.project_units tr.is-predany .pu-nazov a,
.project_units tr.is-predany .pu-podl,
.project_units tr.is-predany .pu-izby,
.project_units tr.is-predany .pu-plocha,
.project_units tr.is-predany .pu-vonkajsia {
  color: var(--mute);
  text-decoration: line-through;
}
.project_units .pu-akcia {
  text-align: right;
}
.project_units .pu-akcia > a {
  vertical-align: middle;
}
.project_units .pu-akcia > a + a {
  margin-left: 1rem;
}
.project_units .pu-podorys {
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--seven-color);
  text-decoration: none;
}
.project_units .pu-podorys:hover {
  text-decoration: underline;
}
.project_units .pu-detail {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--first-color);
  text-decoration: none;
}
.project_units .pu-detail svg {
  flex-shrink: 0;
  transition: transform 0.18s ease;
}
.project_units .pu-detail:hover svg {
  transform: translateX(2px);
}
.project_units .pu-prazdne {
  padding: 3rem 1rem;
  text-align: center;
  color: var(--mute);
}
.project_units .pu-prazdne p {
  margin: 0 0 1rem;
}
@media (max-width: 767.98px) {
  .project_units .pu-triedenie {
    margin-left: 0;
  }
  .project_units .pu-tabulka-obal {
    overflow-x: visible;
  }
  .project_units .pu-tabulka {
    border-top: 0;
  }
  .project_units .pu-tabulka thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
  }
  .project_units .pu-tabulka tbody tr {
    display: block;
    padding: 1rem 0;
    border-bottom: 1px solid var(--line-color);
  }
  .project_units .pu-tabulka td {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.3rem 0;
    border-bottom: 0;
    white-space: normal;
  }
  .project_units .pu-tabulka td::before {
    content: attr(data-label);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--mute);
    flex-shrink: 0;
  }
  .project_units .pu-tabulka td.is-cislo {
    text-align: right;
  }
  .project_units .pu-tabulka .pu-nazov::before {
    display: none;
  }
  .project_units .pu-tabulka .pu-nazov {
    font-family: var(--first-font);
    font-size: 1.125rem;
    padding-bottom: 0.5rem;
  }
  .project_units .pu-tabulka .pu-akcia {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 0.6rem;
  }
  .project_units .pu-tabulka .pu-akcia::before {
    display: none;
  }
}
/* ============================================================
   DETAIL INZERÁTU - „Ďalšie jednotky v projekte" (listing_detail_body.php)
   Kompaktný zoznam súrodeneckých jednotiek, rovnaká tlmená farba stavu ako project_units.
   ============================================================ */
.pd-pu-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--line-color);
}
.pd-pu-list li {
  border-bottom: 1px solid var(--line-color);
}
.pd-pu-list a {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.4rem 1rem;
  padding: 0.85rem 0.25rem;
  text-decoration: none;
  transition: background 0.18s ease;
}
.pd-pu-list a:hover {
  background: var(--cream);
}
.pd-pu-list .pd-pu-kod {
  font-family: var(--first-font);
  font-size: 1.0625rem;
  color: var(--first-color);
  min-width: 5rem;
}
.pd-pu-list .pd-pu-meta {
  flex: 1 0 auto;
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--seven-color);
}
.pd-pu-list .pd-pu-cena {
  font-family: var(--first-font);
  font-size: 1rem;
  color: var(--first-color);
  margin-left: auto;
}
.pd-pu-list .pd-pu-pomlcka {
  color: var(--mute);
}
.pd-pu-list .pd-pu-tag {
  display: inline-flex;
  align-items: center;
  height: 1.6rem;
  padding: 0 0.6rem;
  border-radius: var(--radius-sm);
  font-family: var(--second-font);
  font-size: 0.75rem;
  font-weight: 500;
  background: var(--green-50);
  color: var(--green-700);
  white-space: nowrap;
}
.pd-pu-list li.is-rezervovany .pd-pu-tag {
  background: rgba(232, 134, 59, 0.14);
  color: var(--orange-600);
}
.pd-pu-list li.is-predany .pd-pu-tag {
  background: var(--cream-2);
  color: var(--mute);
}
.pd-pu-list li.is-predany .pd-pu-kod,
.pd-pu-list li.is-predany .pd-pu-meta {
  color: var(--mute);
  text-decoration: line-through;
}
/* ============================================================
   NAVBAR typ_1 — Šablóna 1b (1:1 podľa Figma)
   Desktop: logo vľavo (Fraunces 26px) · linky v strede (Manrope 15px,
   aktív SemiBold zelená / neaktív Medium sivá) · vpravo telefón + zelený pill CTA.
   Mobil (<1200px): hamburger + zelené off-canvas menu (Fraunces linky).
   Triedy: .navbar .navbar-header .brand-text .nav-main .nav-actions
   .phone .call_to_action .navbar-toggler .sidenav
   ============================================================ */
/* výška navbaru - plná a zúžená (po scrolle). Globálne, lebo s nimi rátajú aj iné sticky
   prvky (napr. bočný panel detailu: top = zúžený navbar + medzera). */
:root {
  --nav-h: 6.75rem;
  /* 108px - 28 + CTA 52 + 28 */
  --nav-h-scrolled: 4.5rem;
  /* 72px */
}
@media (max-width: 1199.98px) {
  :root {
    --nav-h: 4.75rem;
    /* 76px - hamburger 44 + 2x16 */
    --nav-h-scrolled: 3.75rem;
    /* 60px */
  }
}
.site_navbar {
  /* Lepkavý navbar bez skoku obsahu.
     POZOR: JS NESMIE prepínať Bootstrap `.fixed-top` - `position: fixed` vytrhne navbar
     z toku a obsah pod ním poskočí hore o jeho výšku (to bolo to trhnutie pri scrolle).
     `sticky` zostáva v toku, takže sa nič neposunie. */
  position: sticky;
  top: 0;
  z-index: 1030;
  /* Zúženie pri scrolle BEZ skoku obsahu: obal má stálu výšku (--nav-h) a v toku sa nemení,
     zmenší sa len viditeľný pás .navbar vnútri. Spodok obalu je vtedy priehľadný a klikateľný
     obsah pod ním nesmie blokovať -> pointer-events. */
  height: var(--nav-h);
  pointer-events: none;
  /* ============================================================
     MOBIL - menu cez celú obrazovku (JS pridá .active na .sidenav a .nav-open na obal).
     Zelená plocha sa rozvinie kruhom od hamburgera (clip-path), položky vyjdú postupne zdola.
     Navbar ostáva navrchu a prefarbí sa do zelenej, takže logo a krížik sú súčasťou menu.
     ============================================================ */
  /* otvorené menu: navbar nad zelenou plochou, priehľadný, logo a ikony krémové */
}
.site_navbar > * {
  pointer-events: auto;
}
.site_navbar .navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: var(--nav-h);
  padding: 0 4rem;
  /* výšku určuje --nav-h, nie padding */
  background: var(--three-color);
  /* cream */
  box-shadow: none;
  transition: height 0.25s ease, background-color 0.2s ease, box-shadow 0.2s ease;
  /* ---- logo ---- */
  /* spoločné pre obe skupiny */
  /* ---- stredné linky ---- */
  /* ---- vpravo: telefón + CTA ---- */
  /* poistka, keby v DB/šablóne ostala Bootstrap trieda `.fixed-top` */
  /* Scrolled stav (JS pridá .active na .navbar-bounce) = pozadie + tieň + nižší pás.
       Mení sa len výška .navbar, obal .site_navbar drží --nav-h, takže obsah neposkočí. */
  /* ---- hamburger (len < 1200px) ---- */
  /* mobil: okraj dáva len vnútorný container-fluid (--page-x), inak by logo bolo o 24px ďalej než obsah */
}
.site_navbar .navbar .navbar-header {
  flex: 0 0 auto;
  z-index: 1040;
}
.site_navbar .navbar .navbar-header .navbar-brand {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
  line-height: 1;
}
.site_navbar .navbar .navbar-header .navbar-brand .brand-text {
  font-family: var(--first-font);
  /* Fraunces */
  font-weight: 900;
  font-size: 1.625rem;
  /* 26px */
  color: var(--first-color);
  line-height: 1;
  letter-spacing: -0.01em;
}
.site_navbar .navbar .navbar-header .navbar-brand svg {
  height: 2rem;
  width: auto;
  color: var(--first-color);
  pointer-events: none;
}
.site_navbar .navbar .navbar-header .navbar-brand img {
  height: 2rem;
  width: auto;
}
.site_navbar .navbar .nav-main,
.site_navbar .navbar .nav-actions {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.site_navbar .navbar .nav-main li,
.site_navbar .navbar .nav-actions li {
  list-style: none;
}
.site_navbar .navbar .nav-main .nav-link,
.site_navbar .navbar .nav-actions .nav-link {
  padding: 0;
  background: transparent;
  border: 0;
}
.site_navbar .navbar .nav-main {
  gap: 2.125rem;
  /* 34px */
}
.site_navbar .navbar .nav-main li a {
  font-family: var(--second-font);
  /* Manrope */
  font-weight: 500;
  /* Medium */
  font-size: 0.9375rem;
  /* 15px */
  line-height: normal;
  color: var(--warm);
  /* #5b564e */
  text-decoration: none;
  white-space: nowrap;
  transition: var(--trans-200);
}
.site_navbar .navbar .nav-main li a:hover,
.site_navbar .navbar .nav-main li a:focus {
  color: var(--first-color);
}
.site_navbar .navbar .nav-main li.active a {
  font-weight: 600;
  /* SemiBold */
  color: var(--first-color);
  /* #173d2b */
}
.site_navbar .navbar .nav-actions {
  gap: 1.25rem;
  /* 20px */
  flex: 0 0 auto;
}
.site_navbar .navbar .nav-actions li.phone a {
  font-family: var(--second-font);
  font-weight: 600;
  /* SemiBold */
  font-size: 0.9375rem;
  /* 15px */
  color: var(--first-color);
  text-decoration: none;
  white-space: nowrap;
}
.site_navbar .navbar .nav-actions li.phone a:hover {
  color: var(--green-900);
}
.site_navbar .navbar .nav-actions li.call_to_action a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.0625rem 2rem;
  /* 17px / 32px */
  border-radius: 100px;
  background: var(--first-color);
  color: #fff;
  font-family: var(--second-font);
  font-weight: 600;
  /* SemiBold */
  font-size: 1rem;
  /* 16px */
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  border: 1px solid var(--first-color);
  transition: var(--trans-200);
}
.site_navbar .navbar .nav-actions li.call_to_action a:hover,
.site_navbar .navbar .nav-actions li.call_to_action a:focus {
  background: var(--green-900);
  border-color: var(--green-900);
  color: #fff;
}
.site_navbar .navbar.fixed-top {
  position: static;
}
.site_navbar .navbar.navbar-bounce.active {
  height: var(--nav-h-scrolled);
  background: var(--white-color);
  box-shadow: 0 8px 28px -16px rgba(23, 61, 43, 0.28);
}
.site_navbar .navbar.navbar-bounce.active .navbar-header .navbar-brand .brand-text {
  font-size: 1.375rem;
}
.site_navbar .navbar.navbar-bounce.active .nav-actions li.call_to_action a {
  padding: 0.75rem 1.5rem;
  font-size: 0.9375rem;
}
.site_navbar .navbar .navbar-header .navbar-brand .brand-text,
.site_navbar .navbar .nav-actions li.call_to_action a {
  transition: font-size 0.25s ease, padding 0.25s ease, background 0.2s ease;
}
.site_navbar .navbar .navbar-toggler {
  display: none;
  position: relative;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  background: transparent;
  border: 0;
  outline: none !important;
  box-shadow: none !important;
}
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon {
  position: relative;
  display: block;
  width: 1.75rem;
  height: 2px;
  margin: 0 auto;
  background: var(--first-color);
  background-image: none;
  transition: var(--trans-200);
}
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon:before,
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon:after {
  content: "";
  position: absolute;
  left: 0;
  width: 1.75rem;
  height: 2px;
  background: var(--first-color);
  transition: var(--trans-200);
}
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon:before {
  top: -0.55rem;
}
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon:after {
  top: 0.55rem;
}
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon.active {
  background: transparent;
}
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon.active:before {
  top: 0;
  transform: rotate(45deg);
}
.site_navbar .navbar .navbar-toggler .navbar-toggler-icon.active:after {
  top: 0;
  transform: rotate(-45deg);
}
@media (max-width: 1199.98px) {
  .site_navbar .navbar {
    padding: 0 1.5rem;
    /* telefón vedľa hamburgera - margin-left: auto ho odtlačí doprava (navbar je space-between) */
  }
  .site_navbar .navbar .navbar-toggler {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .site_navbar .navbar .nav-phone-mobile {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    /* dotykový cieľ 44 px ako hamburger */
    margin-left: auto;
    margin-right: 0.25rem;
    border-radius: 50%;
    color: var(--first-color);
  }
  .site_navbar .navbar .nav-phone-mobile:hover,
  .site_navbar .navbar .nav-phone-mobile:focus-visible {
    background: var(--cream-2);
  }
  .site_navbar .navbar .navbar-header .navbar-brand .brand-text {
    font-size: 1.4rem;
  }
  .site_navbar .navbar .navbar-header .navbar-brand svg,
  .site_navbar .navbar .navbar-header .navbar-brand img {
    height: 1.75rem;
  }
}
@media (max-width: 47.999rem) {
  .site_navbar .navbar {
    padding: 0;
  }
}
.site_navbar .sidenav {
  position: fixed;
  inset: 0;
  z-index: 1050;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.35rem;
  padding: calc(var(--nav-h) + 1rem) 0 2rem;
  background: var(--first-color);
  overflow-y: auto;
  overscroll-behavior: contain;
  /* stred kruhu = hamburger vpravo hore */
  clip-path: circle(0 at calc(100% - 2.6rem) 2.4rem);
  visibility: hidden;
  transition: clip-path 0.6s cubic-bezier(0.77, 0, 0.18, 1), visibility 0s linear 0.6s;
  /* položky: pri zatvorení zmiznú hneď, pri otvorení postupne (oneskorenie podľa poradia) */
}
.site_navbar .sidenav.active {
  clip-path: circle(150% at calc(100% - 2.6rem) 2.4rem);
  visibility: visible;
  transition: clip-path 0.7s cubic-bezier(0.77, 0, 0.18, 1), visibility 0s;
}
.site_navbar .sidenav ul > li {
  opacity: 0;
  transform: translateY(1.25rem);
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.site_navbar .sidenav.active ul > li {
  opacity: 1;
  transform: none;
  transition: opacity 0.5s ease, transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.site_navbar .sidenav.active ul > li:nth-child(1) {
  transition-delay: 0.23s;
}
.site_navbar .sidenav.active ul > li:nth-child(2) {
  transition-delay: 0.28s;
}
.site_navbar .sidenav.active ul > li:nth-child(3) {
  transition-delay: 0.33s;
}
.site_navbar .sidenav.active ul > li:nth-child(4) {
  transition-delay: 0.38s;
}
.site_navbar .sidenav.active ul > li:nth-child(5) {
  transition-delay: 0.43s;
}
.site_navbar .sidenav.active ul > li:nth-child(6) {
  transition-delay: 0.48s;
}
.site_navbar .sidenav.active ul > li:nth-child(7) {
  transition-delay: 0.53s;
}
.site_navbar .sidenav.active ul > li:nth-child(8) {
  transition-delay: 0.58s;
}
.site_navbar .sidenav.active ul > li:nth-child(9) {
  transition-delay: 0.63s;
}
.site_navbar .sidenav.active ul > li:nth-child(10) {
  transition-delay: 0.68s;
}
.site_navbar .sidenav.active ul > li:nth-child(11) {
  transition-delay: 0.73s;
}
.site_navbar .sidenav.active ul > li:nth-child(12) {
  transition-delay: 0.78s;
}
@media (prefers-reduced-motion: reduce) {
  .site_navbar .sidenav,
  .site_navbar .sidenav.active,
  .site_navbar .sidenav ul > li,
  .site_navbar .sidenav.active ul > li {
    transition: none !important;
  }
}
.site_navbar .sidenav ul {
  width: 100%;
  margin: 0;
  padding: 0 1.75rem;
  text-align: center;
  list-style: none;
}
.site_navbar .sidenav ul li {
  list-style: none;
  padding: 0.5rem 0;
  /* CTA v mobile menu — oranžový pill */
  /* telefón / kontakt */
  /* jazyk */
}
.site_navbar .sidenav ul li a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  color: var(--cream);
  font-family: var(--first-font);
  /* Fraunces */
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
  transition: var(--trans-200);
}
.site_navbar .sidenav ul li a:hover,
.site_navbar .sidenav ul li a.active {
  color: var(--accent-color);
}
.site_navbar .sidenav ul li.call_to_action a {
  margin-top: 0.75rem;
  padding: 0.9rem 2rem;
  border-radius: 100px;
  background: var(--accent-color);
  color: #fff;
  font-family: var(--second-font);
  font-size: 1.05rem;
  font-weight: 600;
}
.site_navbar .sidenav ul li.phone a {
  font-family: var(--second-font);
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--cream);
}
.site_navbar .sidenav ul li.contact a {
  color: var(--cream);
}
.site_navbar .sidenav ul li.lang a {
  font-family: var(--second-font);
  font-size: 1rem;
  gap: 0.5rem;
}
.site_navbar .sidenav ul li.lang a img {
  height: 1.1rem;
  width: auto;
  border-radius: 2px;
}
.site_navbar .navbar {
  position: relative;
  z-index: 1060;
}
.site_navbar .navbar .navbar-header .navbar-brand .brand-text,
.site_navbar .navbar .navbar-header .navbar-brand svg,
.site_navbar .navbar .nav-phone-mobile {
  transition: color 0.3s ease 0.15s;
}
.site_navbar.nav-open .navbar {
  /* logo má farbu v SVG natvrdo (aj klientske) - na zelenej by splynulo, v menu je jednofarebné krémové */
}
.site_navbar.nav-open .navbar,
.site_navbar.nav-open .navbar.navbar-bounce.active {
  background: transparent;
  box-shadow: none;
}
.site_navbar.nav-open .navbar .navbar-header .navbar-brand .brand-text,
.site_navbar.nav-open .navbar .navbar-header .navbar-brand svg,
.site_navbar.nav-open .navbar .nav-phone-mobile {
  color: var(--cream);
}
.site_navbar.nav-open .navbar .navbar-header .navbar-brand svg *:not([fill="none"]) {
  fill: currentColor;
}
.site_navbar.nav-open .navbar .navbar-header .navbar-brand img {
  filter: brightness(0) invert(0.95);
}
.site_navbar.nav-open .navbar .nav-phone-mobile:hover,
.site_navbar.nav-open .navbar .nav-phone-mobile:focus-visible {
  background: rgba(255, 255, 255, 0.08);
}
.site_navbar.nav-open .navbar .navbar-toggler .navbar-toggler-icon:before,
.site_navbar.nav-open .navbar .navbar-toggler .navbar-toggler-icon:after {
  background: var(--cream);
}
/* ============================================================
   Priehľadný navbar nad tmavým hero - automaticky, BEZ nastavenia.
   O tom, či hero môže ísť pod menu, rozhoduje ŠABLÓNA hera triedou `.hero--pod-menu`
   (hero_full, hero_search vždy, hero_card len keď má fotku každý slide). CSS tu nemá
   zoznam typov hera - nový tmavý hero si triedu pridá sám, svetlé (editorial, split,
   collage, form, type) ju nemajú a menu nad nimi ostáva plné.
   Platí pre navbar.php, navbar_center.php aj navbar_topbar.php (všetky majú .site_navbar).
   Len keď je hero PRVÝ v #main - inak by sa pod navbar nezdvihol a svetlý text menu by
   ostal na krémovom pozadí. Bez podpory :has() selektor nič nenájde a navbar ostáva plný.
   Po scrolle prevezme vzhľad .navbar-bounce.active (krémové pozadie).
   ============================================================ */
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) {
  background: transparent;
  box-shadow: none;
}
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .navbar-header .navbar-brand .brand-text,
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .nav-main li a,
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .nav-actions li.phone a,
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .nav-phone-mobile {
  color: var(--cream);
}
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .navbar-header .navbar-brand svg,
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .navbar-header .navbar-brand svg *:not([fill="none"]) {
  fill: currentColor;
  color: var(--cream);
}
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .navbar-header .navbar-brand img {
  filter: brightness(0) invert(0.95);
}
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .nav-main li.active a {
  color: #fff;
}
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .nav-actions li.call_to_action a {
  background: transparent;
  border-color: var(--cream);
  color: var(--cream);
}
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .nav-actions li.call_to_action a:hover,
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .nav-actions li.call_to_action a:focus {
  background: var(--cream);
  color: var(--first-color);
}
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .navbar-toggler .navbar-toggler-icon,
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .navbar-toggler .navbar-toggler-icon:before,
body:has(#main > .hero--pod-menu:first-child) .site_navbar .navbar:not(.navbar-bounce.active) .navbar-toggler .navbar-toggler-icon:after {
  background: var(--cream);
}
/* Hero začína PRED navbarom: záporný margin ho zdvihne presne o výšku navbaru.
   Odsadenie pre menu dostane SLIDE (nie sekcia) - fotka je v slide `position: absolute;
   inset: 0`, takže pokrýva aj jeho padding a vždy začína úplne hore, bez pásu pozadia
   za menu. Text ostáva na mieste. */
@supports selector(:has(a)) {
  #main > .hero--pod-menu:first-child {
    margin-top: calc(-1 * var(--nav-h));
    /* tmavý prechod pod menu - svetlé položky menu musia byť čitateľné aj na svetlej oblohe
       (hero_card nemá závoj, text je na karte) */
  }
  #main > .hero--pod-menu:first-child .hero-slide {
    padding-top: var(--nav-h);
  }
  #main > .hero--pod-menu:first-child .hero-slide::before {
    content: '';
    position: absolute;
    inset: 0 0 auto;
    height: calc(var(--nav-h) * 1.75);
    background: linear-gradient(180deg, rgba(16, 42, 29, 0.55) 0%, rgba(16, 42, 29, 0) 100%);
    z-index: 1;
    pointer-events: none;
  }
  /* hero_card na mobile: fotka nie je za kartou, ale nad ňou (v toku). Odsadenie by ju
     posunulo pod menu - fotka ide hore pod menu a je o výšku menu vyššia, aby z nej
     neubudlo. 62.5vw = pomer 16:10 na celú šírku. */
  @media (max-width: 991.98px) {
    #main > .hero_card.hero--pod-menu:first-child .hero-slide {
      padding-top: 0;
    }
    #main > .hero_card.hero--pod-menu:first-child .hero-media {
      aspect-ratio: auto;
      height: calc(62.5vw + var(--nav-h));
    }
  }
}
/* menu na celú obrazovku - stránka pod ním stojí */
html.nav-locked {
  overflow: hidden;
}
/* ============================================================
   NAVBAR - varianty s logom v strede (Šablóna 1b).
   Desktop (≥1200px): logo centrované absolútne (kotva .navbar { position: relative }),
   odkazy vľavo/vpravo (nav-main-left/-right, rovnaký vzhľad ako .nav-main v _navbar.less),
   telefón + CTA vpravo (_navbar_actions.php - rovnaká trieda .nav-actions).
   Mobil: rovnaký ako základný navbar (logo vľavo, len flow, žiadne absolútne centrovanie).
   ============================================================ */
@media (min-width: 1200px) {
  .navbar-center .navbar {
    position: relative;
  }
  .navbar-center .navbar-header-center {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
  }
}
/* ============================================================
   NAVBAR - variant s hornou lištou (Šablóna 1b).
   Lišta (telefón, e-mail, sociálne siete, jazyk) nad bežným navbarom, len desktop
   (≥1200px) - na mobile sa nezobrazuje, telefón tam rieši .nav-phone-mobile ako dnes.
   Pri scrolle sa schová (JS prepína .scrolled-hide v _navbar_script.php) - rovnaký
   princíp ako zúženie navbaru: obal .site_navbar má stálu výšku (nav-h + topbar-h),
   takže schovanie lišty nespôsobí skok obsahu, len sa uvoľní miesto pre navbar.
   ============================================================ */
@media (min-width: 1200px) {
  .navbar-has-topbar {
    --topbar-h: 2.75rem;
    height: calc(var(--nav-h) + var(--topbar-h));
  }
}
.navbar-has-topbar .navbar-topbar {
  background: var(--first-color);
  color: var(--cream);
  overflow: hidden;
  max-height: 2.75rem;
  transition: max-height 0.3s ease, opacity 0.25s ease;
}
.navbar-has-topbar .navbar-topbar.scrolled-hide {
  max-height: 0;
  opacity: 0;
}
.navbar-has-topbar .topbar-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  height: 2.75rem;
  font-family: var(--second-font);
  font-size: 0.8125rem;
}
.navbar-has-topbar .topbar-contact,
.navbar-has-topbar .topbar-side {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.navbar-has-topbar .topbar-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4375rem;
  color: var(--cream);
  text-decoration: none;
  white-space: nowrap;
  transition: var(--trans-200);
}
.navbar-has-topbar .topbar-link:hover,
.navbar-has-topbar .topbar-link:focus {
  color: var(--accent-color);
}
.navbar-has-topbar .topbar-icon {
  display: inline-flex;
}
.navbar-has-topbar .topbar-icon svg {
  width: 0.9375rem;
  height: 0.9375rem;
  fill: currentColor;
}
.navbar-has-topbar .topbar-social {
  display: flex;
  gap: 0.75rem;
}
.navbar-has-topbar .topbar-social a {
  display: inline-flex;
  color: var(--cream-mute);
  transition: var(--trans-200);
}
.navbar-has-topbar .topbar-social a:hover,
.navbar-has-topbar .topbar-social a:focus {
  color: var(--cream);
}
.navbar-has-topbar .topbar-social a svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}
.navbar-has-topbar .topbar-lang {
  display: flex;
  gap: 0.75rem;
}
.navbar-has-topbar .topbar-lang a {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  color: var(--cream-mute);
  text-decoration: none;
  transition: var(--trans-200);
}
.navbar-has-topbar .topbar-lang a:hover,
.navbar-has-topbar .topbar-lang a:focus {
  color: var(--cream);
}
.navbar-has-topbar .topbar-lang a img {
  height: 0.875rem;
  width: auto;
  border-radius: 2px;
}
/* ============================================================
   KATEGÓRIE CHIPY - quick_chips (Šablóna 1b, Figma homepage)
   Biely pill: ikona (zelená) + názov + count (tlmený).
   Sedí nad filtrom, na mobile horizontálny scroll.
   ============================================================ */
.quick_chips {
  /* Figma "Search block": 56px nad chipmi (od hero), 28px pod chipmi (k filtru) */
  margin-top: 3.5rem;
  margin-bottom: 1.75rem;
  /* mobil: jeden riadok s horizontálnym scrollom (chipy sa nelámu) */
}
.quick_chips .chips-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  /* 12px medzi chipmi (Figma) */
}
.quick_chips .cat-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  /* 10px ikona->názov->count (Figma) */
  height: 2.875rem;
  /* 46px */
  padding: 0 1.375rem 0 1.25rem;
  /* L20 / R22 */
  background: var(--warm-white);
  /* #FBFAF5 */
  border: 1px solid var(--line-color);
  /* #DDD6C6 */
  border-radius: 5rem;
  font-family: var(--second-font);
  /* Manrope */
  font-weight: 600;
  /* SemiBold */
  font-size: 0.9375rem;
  /* 15px */
  color: var(--first-color);
  /* názov = zelený #173D2B (Figma) */
  text-decoration: none;
  white-space: nowrap;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.quick_chips .cat-chip:hover {
  color: var(--first-color);
  border-color: var(--first-color);
  box-shadow: 0 10px 24px -14px rgba(23, 61, 43, 0.35);
  transform: translateY(-1px);
}
.quick_chips .chip-icon {
  display: inline-flex;
  line-height: 0;
  color: var(--first-color);
  /* ikona zelená */
  /* 20px */
}
.quick_chips .chip-icon svg {
  width: 1.25rem;
  height: 1.25rem;
}
.quick_chips .chip-count {
  color: var(--mute);
  /* #8A857A */
  font-weight: 500;
  /* Medium */
  font-size: 0.8125rem;
  /* 13px */
}
@media (max-width: 767.98px) {
  .quick_chips .chips-row {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 0.25rem;
  }
  .quick_chips .chips-row::-webkit-scrollbar {
    display: none;
  }
}
/* ============================================================
   ŠTATISTIKY - stats_band (Šablóna 1b, Figma node 1698:30)
   Tmavozelený pás: 4x veľké Fraunces číslo + Manrope popisok.
   Desktop rozložené do šírky, mobil 2x2 mriežka.
   ============================================================ */
.stats_band {
  background: var(--first-color);
  /* #173D2B (Figma Stats) */
  padding: 4rem 0;
  /* 64px hore/dole */
  /* mobil: 2x2 mriežka */
}
.stats_band .stats-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
}
.stats_band .stat-num {
  font-family: var(--first-font);
  /* Fraunces */
  font-weight: 900;
  /* Black */
  font-size: clamp(2.25rem, calc(1.35rem + 2.2vw), 3.25rem);
  /* 36 -> 52px */
  line-height: 1.2;
  color: var(--on-dark-text);
  /* krémová #F5F1E8 */
}
.stats_band .stat-label {
  margin-top: 0.375rem;
  /* 6px pod číslom */
  font-family: var(--second-font);
  /* Manrope */
  font-weight: 500;
  font-size: 0.9375rem;
  /* 15px */
  line-height: 1.35;
  color: var(--on-dark-text-mute);
  /* tlmená krémová */
}
@media (max-width: 767.98px) {
  .stats_band {
    padding: 3rem 0;
  }
  .stats_band .stats-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 1.25rem;
  }
}
/* ============================================================
   CTA PÁS - cta_band (Šablóna 1b, Figma node 1699:27)
   Tmavozelený pás: Fraunces nadpis + tlmený odsek + oranžový
   pill button (tokeny --btn-second-*). Všetko centrované.
   ============================================================ */
.cta_band {
  background: var(--first-color);
  /* #173D2B (Figma CTA) */
  padding: 5rem 0;
  /* 80px hore/dole */
  text-align: center;
}
.cta_band .cta-text h2 {
  font-family: var(--first-font);
  /* Fraunces */
  font-weight: 900;
  /* Black */
  font-size: clamp(2rem, calc(1.4rem + 2vw), 2.75rem);
  /* 32 -> 44px */
  line-height: 1.25;
  color: var(--on-dark-text);
  /* krémová #F5F1E8 */
  margin: 0 0 0.875rem;
  /* 14px gap (Figma) */
}
.cta_band .cta-text p {
  font-family: var(--second-font);
  /* Manrope */
  font-weight: 400;
  font-size: 1.125rem;
  /* 18px */
  line-height: 1.4;
  color: var(--on-dark-text-mute);
  /* #CFC8B8 (Figma) */
  margin: 0;
}
.cta_band .cta-actions {
  margin-top: 1.625rem;
  /* 14px gap + 12px pt (Figma) */
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.cta_band .cta-btn {
  display: inline-flex;
  align-items: center;
  padding: 1.125rem 2.125rem;
  /* 18px / 34px (Figma) */
  border-radius: 5rem;
  background: var(--btn-second-bg);
  /* oranžový akcent */
  color: var(--btn-second-color);
  /* pure white */
  font-family: var(--second-font);
  /* Manrope */
  font-weight: 600;
  /* SemiBold */
  font-size: 1rem;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.2s ease, transform 0.2s ease;
}
.cta_band .cta-btn:hover,
.cta_band .cta-btn:focus {
  background: var(--btn-second-bg-hover);
  color: var(--btn-second-color-hover);
  transform: translateY(-1px);
}
@media (max-width: 767.98px) {
  .cta_band {
    padding: 3.5rem 0;
  }
}
/* ============================================================
   KONTAKT - spoločné časti pre contact_cards_form / 2 / 3 (Šablóna 1b)
   Kanál (ikona + popis + hodnota), mapa, firemné údaje, nadpis sekcie
   a formulár vložený z holdera `holder-kontakt`.
   Rozloženie jednotlivých variantov je v _contact_typ_N.less.
   ============================================================ */
.contact {
  padding: var(--section-y-half) 0;
  /* krémová sekcia - viď --section-y */
  /* nadpis sekcie = popis widgetu (<h2> + <p>) */
  /* ---------- kanál ---------- */
  /* ---------- mapa ---------- */
  /* ---------- formulár z holdera ---------- */
  /* ---------- firemné údaje ---------- */
}
.contact .ct-head {
  margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
  max-width: 40rem;
}
.contact .ct-head h2,
.contact .ct-head h3 {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.9rem, calc(1.4rem + 1.6vw), 2.5rem);
  line-height: 1.15;
  color: var(--first-color);
  margin: 0 0 0.6rem;
}
.contact .ct-head p {
  font-family: var(--second-font);
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--warm);
  margin: 0;
}
.contact .ct-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mute);
}
.contact .ct-eyebrow .dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent-color);
}
.contact .ct-channels {
  display: grid;
  gap: 0.875rem;
}
.contact .ct-channel {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.125rem 1.25rem;
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  color: inherit;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
.contact a.ct-channel:hover {
  border-color: var(--first-color);
}
.contact a.ct-channel:focus-visible {
  outline: 2px solid var(--first-color);
  outline-offset: 2px;
}
.contact .ct-icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  background: var(--cream-2);
  color: var(--first-color);
}
.contact .ct-icon svg {
  width: 1.125rem;
  height: 1.125rem;
}
.contact .ct-body {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}
.contact .ct-label {
  font-family: var(--second-font);
  font-size: 0.75rem;
  color: var(--mute);
}
.contact .ct-value {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--first-color);
  overflow-wrap: anywhere;
}
.contact .ct-note {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.contact .ct-map {
  position: relative;
  overflow: hidden;
  height: 18rem;
  background: var(--cream-2);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.contact .ct-map iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.contact .ct-map.is-active iframe {
  pointer-events: auto;
}
.contact .ct-map-shield {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: grid;
  place-items: center;
}
.contact .ct-map-hint {
  padding: 0.5rem 0.875rem;
  border-radius: 5rem;
  background: rgba(16, 42, 29, 0.82);
  color: var(--cream);
  font-family: var(--second-font);
  font-size: 0.8125rem;
  font-weight: 600;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
.contact .ct-map-hint.is-visible {
  opacity: 1;
}
.contact .ct-map-idle {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1.5rem;
  text-align: center;
}
.contact .ct-map-pin {
  color: var(--accent-color);
}
.contact .ct-map-pin svg {
  width: 2rem;
  height: 2rem;
}
.contact .ct-map-address {
  font-family: var(--second-font);
  font-weight: 600;
  color: var(--first-color);
}
.contact .ct-map-load {
  margin-top: 0.25rem;
  padding: 0.625rem 1.25rem;
  cursor: pointer;
  background: var(--warm-white);
  color: var(--first-color);
  border: 1px solid var(--first-color);
  border-radius: 5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  transition: background 0.2s ease, color 0.2s ease;
}
.contact .ct-map-load:hover {
  background: var(--first-color);
  color: var(--cream);
}
.contact .ct-map-note {
  font-family: var(--second-font);
  font-size: 0.75rem;
  color: var(--mute);
  max-width: 22rem;
}
.contact .ct-map-nav {
  position: absolute;
  right: 0.875rem;
  bottom: 0.875rem;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.55rem 1rem;
  border-radius: 5rem;
  background: var(--warm-white);
  color: var(--first-color);
  border: 1px solid var(--line-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
  text-decoration: none;
}
.contact .ct-map-nav svg {
  width: 1rem;
  height: 1rem;
}
.contact .ct-map-nav:hover {
  border-color: var(--first-color);
}
.contact .ct-form-slot {
  min-width: 0;
  /* form_block tu stojí ako karta - nadpis patrí dovnútra, nie nad kartu */
}
.contact .ct-form-slot .form_block {
  padding: clamp(1.5rem, 3vw, 2rem);
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.contact .ct-form-slot .form_block .fb-card {
  background: none;
  border: 0;
  border-radius: 0;
  padding: 0;
}
.contact .ct-company {
  margin-top: clamp(3rem, 6vw, 4.5rem);
}
.contact .ct-company-title {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.6rem, calc(1.3rem + 1vw), 2rem);
  color: var(--first-color);
  margin: 0 0 1.25rem;
}
.contact .ct-company-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: clamp(1.5rem, 4vw, 3rem);
  padding: 0.5rem clamp(1.25rem, 2.5vw, 1.75rem);
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.contact .ct-company-col {
  margin: 0;
}
.contact .ct-company-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.875rem 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
}
.contact .ct-company-row + .contact .ct-company-row {
  border-top: 1px solid var(--line-color);
}
.contact .ct-company-row dt {
  font-weight: 400;
  color: var(--mute);
}
.contact .ct-company-row dd {
  margin: 0;
  font-weight: 600;
  color: var(--ink);
  text-align: right;
}
@media (max-width: 767.98px) {
  .contact {
    /* v jednom stĺpci pokračuje čiara aj medzi stĺpcami */
  }
  .contact .ct-company-card {
    grid-template-columns: 1fr;
  }
  .contact .ct-company-col + .ct-company-col {
    border-top: 1px solid var(--line-color);
  }
}
/* ============================================================
   KONTAKT TYP 1 - karty + formulár (Figma Kontakt 1709:71)
   Vľavo karty a mapa, vpravo formulár. Bez formulára karty v riadku.
   ============================================================ */
.contact_cards_form {
  /* bez formulára: kanály vedľa seba, mapa pod nimi na celú šírku */
}
.contact_cards_form .ct-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.5rem, 3vw, 2.25rem);
  align-items: start;
}
.contact_cards_form .ct-side {
  display: grid;
  gap: 0.875rem;
  min-width: 0;
}
.contact_cards_form .ct-grid.is-solo {
  grid-template-columns: 1fr;
}
.contact_cards_form .ct-grid.is-solo .ct-channels {
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
}
.contact_cards_form .ct-grid.is-solo .ct-map {
  height: 22rem;
}
.contact_cards_form .ct-grid.is-solo .ct-form-slot:empty {
  display: none;
}
@media (max-width: 991.98px) {
  .contact_cards_form .ct-grid {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   KONTAKT TYP 2 - zelený panel
   Tmavý panel s veľkým telefónom (hlavná akcia), vedľa formulár,
   pod nimi mapa na celú šírku.
   ============================================================ */
.contact_panel {
  /* veľký telefón */
  /* ostatné kanály ako riadky oddelené čiarou, nie karty */
  /* bez formulára: panel na celú šírku, kanály do stĺpcov */
}
.contact_panel .ct-split {
  display: grid;
  grid-template-columns: 5fr 6fr;
  gap: clamp(1.5rem, 3vw, 2.25rem);
  align-items: stretch;
}
.contact_panel .ct-panel {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: clamp(1.75rem, 4vw, 3rem);
  background: var(--first-color);
  border-radius: var(--radius-lg);
  color: var(--on-dark-text);
}
.contact_panel .ct-panel .ct-head {
  margin-bottom: 0;
}
.contact_panel .ct-panel .ct-head h2,
.contact_panel .ct-panel .ct-head h3 {
  color: var(--on-dark-text);
}
.contact_panel .ct-panel .ct-head p {
  color: var(--on-dark-text-mute);
}
.contact_panel .ct-big-phone {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  color: inherit;
  text-decoration: none;
}
.contact_panel .ct-big-phone .ct-label {
  color: var(--on-dark-text-mute);
  font-size: 0.8125rem;
}
.contact_panel .ct-big-phone .ct-note {
  color: var(--on-dark-text-mute);
}
.contact_panel .ct-big-num {
  font-family: var(--first-font);
  font-weight: 800;
  font-size: clamp(2rem, calc(1.2rem + 2.6vw), 3.25rem);
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--on-dark-text);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.2em;
  transition: text-decoration-color 0.2s ease;
}
.contact_panel .ct-big-phone:hover .ct-big-num,
.contact_panel .ct-big-phone:focus-visible .ct-big-num {
  text-decoration-color: var(--accent-color);
}
.contact_panel .ct-big-phone:focus-visible {
  outline: 2px solid var(--accent-color);
  outline-offset: 4px;
  border-radius: 0.25rem;
}
.contact_panel .ct-channels {
  gap: 0;
  margin-top: auto;
}
.contact_panel .ct-channel {
  padding: 1rem 0;
  background: none;
  border: 0;
  border-radius: 0;
  border-top: 1px solid var(--on-dark-line);
}
.contact_panel a.ct-channel:hover .ct-value {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.contact_panel a.ct-channel:focus-visible {
  outline-color: var(--accent-color);
}
.contact_panel .ct-icon {
  background: rgba(245, 241, 232, 0.08);
  color: var(--accent-color);
}
.contact_panel .ct-label,
.contact_panel .ct-note {
  color: var(--on-dark-text-mute);
}
.contact_panel .ct-value {
  color: var(--on-dark-text);
}
.contact_panel .ct-map {
  margin-top: clamp(1.5rem, 3vw, 2.25rem);
  height: 22rem;
}
.contact_panel .ct-split.is-solo {
  grid-template-columns: 1fr;
}
.contact_panel .ct-split.is-solo .ct-channels {
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  column-gap: 2rem;
}
.contact_panel .ct-split.is-solo .ct-form-slot:empty {
  display: none;
}
@media (max-width: 991.98px) {
  .contact_panel .ct-split {
    grid-template-columns: 1fr;
  }
  .contact_panel .ct-map {
    height: 18rem;
  }
}
/* ============================================================
   KONTAKT TYP 3 - mapa na celú šírku
   Mapa od okraja po okraj, cez ňu karta s kontaktmi. Formulár pod pásom,
   vedľa neho nadpis sekcie. Na mobile karta pod mapou.
   ============================================================ */
.contact_map {
  padding-top: 0;
  /* obal karty nesmie chytať klik - pod ním je mapa */
}
.contact_map .ct-band {
  position: relative;
  min-height: clamp(26rem, 42vw, 34rem);
  display: flex;
  align-items: center;
  /* mapa vypĺňa celý pás */
  /* navigácia vpravo dole - karta je vľavo */
  /* text „Zobraziť mapu" posunúť doprava, aby ho nekryla karta */
}
.contact_map .ct-band .ct-map {
  position: absolute;
  inset: 0;
  height: auto;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--line-color);
}
.contact_map .ct-band .ct-map-nav {
  right: 1.25rem;
  bottom: 1.25rem;
}
.contact_map .ct-band .ct-map-idle {
  padding-left: 40%;
}
.contact_map .ct-band.no-map {
  background: var(--cream-2);
  padding: clamp(2.5rem, 5vw, 4rem) 0;
}
.contact_map .ct-band-inner {
  position: relative;
  z-index: 3;
  pointer-events: none;
}
.contact_map .ct-card {
  pointer-events: auto;
  width: min(26rem, 100%);
  padding: 1.25rem;
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  box-shadow: 0 1.25rem 2.5rem -1.5rem rgba(16, 42, 29, 0.35);
  /* odlepí kartu od mapy */
}
.contact_map .ct-card .ct-channels {
  gap: 0;
}
.contact_map .ct-card .ct-channel {
  border: 0;
  border-radius: var(--radius-sm);
  padding: 0.875rem 0.75rem;
  background: none;
}
.contact_map .ct-card .ct-channel + .ct-channel {
  border-top: 1px solid var(--line-color);
  border-radius: 0;
}
.contact_map .ct-card a.ct-channel:hover {
  background: var(--cream);
  border-color: var(--line-color);
}
.contact_map .ct-below-wrap {
  margin-top: clamp(2.5rem, 5vw, 4rem);
}
.contact_map .ct-below {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.5rem, 4vw, 3.5rem);
  align-items: start;
  /* firemné údaje vedľa formulára - v užšom stĺpci jeden stĺpec riadkov */
}
.contact_map .ct-below.is-solo {
  grid-template-columns: minmax(0, 46rem);
}
.contact_map .ct-below .ct-form-slot:empty {
  display: none;
}
.contact_map .ct-below .ct-company {
  margin-top: 0;
}
.contact_map .ct-below .ct-company-card {
  grid-template-columns: 1fr;
}
.contact_map .ct-below .ct-company-col + .ct-company-col {
  border-top: 1px solid var(--line-color);
}
@media (min-width: 768px) {
  .contact_map .ct-below.is-solo .ct-company-card {
    grid-template-columns: 1fr 1fr;
  }
  .contact_map .ct-below.is-solo .ct-company-col + .ct-company-col {
    border-top: 0;
  }
}
@media (max-width: 991.98px) {
  .contact_map .ct-band {
    display: block;
    min-height: 0;
    /* spodok mapy prekrýva karta - navigácia hore vľavo (vpravo sú tlačidlá priblíženia) */
  }
  .contact_map .ct-band .ct-map {
    position: relative;
    height: 18rem;
  }
  .contact_map .ct-band .ct-map-idle {
    padding-left: 1.5rem;
  }
  .contact_map .ct-band .ct-map-nav {
    top: 0.875rem;
    left: 0.875rem;
    right: auto;
    bottom: auto;
  }
  .contact_map .ct-band-inner {
    margin-top: -2.5rem;
  }
  .contact_map .ct-card {
    width: 100%;
  }
  .contact_map .ct-below {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   O NÁS - spoločné časti pre about_split / 2 / 3 (Šablóna 1b)
   Malý text, nadpis, odsek, odrážky so značkou, odkaz, fotka.
   Rozloženie jednotlivých variantov je v _about_typ_N.less.
   ============================================================ */
.about {
  padding: var(--section-y-half) 0;
  /* krémová sekcia - viď --section-y */
  /* fotka vypĺňa rámik s aspect-ratio (ab-media, ab-wide, ab-photo...) */
}
.about .ab-head {
  margin-bottom: clamp(2rem, 4vw, 3rem);
  max-width: 42rem;
}
.about .ab-head h2,
.about .ab-head h3 {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.9rem, calc(1.4rem + 1.6vw), 2.5rem);
  line-height: 1.15;
  color: var(--first-color);
  margin: 0 0 0.6rem;
}
.about .ab-head p {
  font-family: var(--second-font);
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--warm);
  margin: 0;
}
.about .ab-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mute);
}
.about .ab-eyebrow .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent-color);
}
.about .ab-title {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.9rem, calc(1.3rem + 1.9vw), 2.75rem);
  line-height: 1.15;
  letter-spacing: -0.01em;
  color: var(--first-color);
  margin: 0 0 1.25rem;
}
.about .ab-title em {
  font-style: italic;
  font-weight: 500;
}
.about .ab-text {
  font-family: var(--second-font);
  font-size: 1.0625rem;
  line-height: 1.65;
  color: var(--warm);
  max-width: 38rem;
}
.about .ab-text p {
  margin: 0 0 1rem;
}
.about .ab-text p:last-child {
  margin-bottom: 0;
}
.about .ab-text a {
  color: var(--first-color);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.about .ab-bullets {
  list-style: none;
  margin: 1.5rem 0 0;
  padding: 0;
  display: grid;
  gap: 0.875rem;
}
.about .ab-bullets li {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--ink);
}
.about .ab-check {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 1.375rem;
  height: 1.375rem;
  margin-top: -0.05rem;
  border-radius: 50%;
  background: var(--first-color);
  color: var(--cream);
}
.about .ab-check svg {
  width: 0.75rem;
  height: 0.75rem;
}
.about .ab-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.75rem;
  margin-top: 1.75rem;
}
.about .ab-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 1rem;
  color: var(--first-color);
  text-decoration: none;
}
.about .ab-link svg {
  width: 1rem;
  height: 1rem;
  color: var(--accent-color);
  transition: transform 0.2s ease;
}
.about .ab-link:hover svg {
  transform: translateX(3px);
}
.about .ab-link:hover span {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.about picture {
  display: block;
  height: 100%;
}
.about .ab-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--radius-md);
}
@media (prefers-reduced-motion: reduce) {
  .about .ab-link svg {
    transition: none;
  }
}
/* ============================================================
   O NÁS TYP 1 - fotka + text vedľa seba (Figma 1698:9)
   Viac blokov pod sebou, strany sa striedajú.
   ============================================================ */
.about_split .ab-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: center;
}
.about_split .ab-row + .ab-row {
  margin-top: clamp(3.5rem, 7vw, 6rem);
}
.about_split .ab-row.is-flipped .ab-media {
  order: 2;
}
.about_split .ab-row.no-img {
  grid-template-columns: minmax(0, 46rem);
}
.about_split .ab-media {
  aspect-ratio: 4 / 3;
  min-width: 0;
}
@media (max-width: 991.98px) {
  .about_split .ab-row {
    grid-template-columns: 1fr;
  }
  .about_split .ab-row.is-flipped .ab-media {
    order: 0;
  }
  .about_split .ab-media {
    aspect-ratio: 3 / 2;
  }
}
/* ============================================================
   O NÁS TYP 2 - veľká veta
   Hlavná veta firmy cez celú šírku, pod ňou text + odrážky v dvoch
   stĺpcoch, široká fotka a piliere (ďalšie bloky) vedľa seba.
   ============================================================ */
.about_statement .ab-statement {
  font-family: var(--first-font);
  font-weight: 600;
  font-size: clamp(2.25rem, calc(1.2rem + 3.6vw), 4rem);
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: var(--first-color);
  max-width: 18em;
  margin: 0;
}
.about_statement .ab-statement em {
  font-style: italic;
  font-weight: 400;
}
.about_statement .ab-lead-cols {
  display: grid;
  grid-template-columns: 7fr 5fr;
  gap: clamp(1.5rem, 5vw, 5rem);
  margin-top: clamp(1.75rem, 3.5vw, 2.75rem);
  padding-top: clamp(1.75rem, 3.5vw, 2.75rem);
  border-top: 1px solid var(--line-color);
}
.about_statement .ab-lead-cols .ab-text {
  font-size: 1.125rem;
}
.about_statement .ab-lead-side .ab-bullets {
  margin-top: 0;
}
.about_statement .ab-wide {
  margin-top: clamp(2.5rem, 5vw, 4rem);
  aspect-ratio: 21 / 9;
}
.about_statement .ab-wide .ab-img {
  border-radius: var(--radius-lg);
}
.about_statement .ab-pillars {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: clamp(1.75rem, 3.5vw, 3rem);
  margin-top: clamp(3rem, 6vw, 5rem);
}
.about_statement .ab-pillars .ab-title {
  font-size: clamp(1.35rem, calc(1.1rem + 0.7vw), 1.625rem);
  margin-bottom: 0.6rem;
}
.about_statement .ab-pillars .ab-text {
  font-size: 1rem;
}
.about_statement .ab-pillars .ab-bullets {
  margin-top: 1rem;
}
.about_statement .ab-pillar {
  padding-top: 1.5rem;
  border-top: 2px solid var(--first-color);
}
.about_statement .ab-pillar-img {
  aspect-ratio: 3 / 2;
  margin-bottom: 1.25rem;
}
@media (max-width: 991.98px) {
  .about_statement .ab-lead-cols {
    grid-template-columns: 1fr;
  }
  .about_statement .ab-wide {
    aspect-ratio: 3 / 2;
  }
}
/* ============================================================
   O NÁS TYP 3 - karta na fotke
   Fotka cez celú šírku kontajnera, krémová karta leží CELÁ na nej v dolnom rohu.
   Susedné bloky bez fotky = riadok kariet vedľa seba (.ab-cards).
   Fotka a karta sú v tej istej bunke gridu, takže fotka narastie s kartou -
   dlhší text z nej nikdy nevypadne. Viac blokov = karta sa strieda vľavo / vpravo.
   Mobil: karta pod fotkou, zhora do nej mierne zasahuje.
   ============================================================ */
.about_photo_card {
  /* bloky bez fotky: riadok kariet vedľa seba */
}
.about_photo_card .ab-stage {
  display: grid;
  grid-template: 1fr / 1fr;
  min-height: clamp(28rem, 42vw, 38rem);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.about_photo_card .ab-stage + .ab-stage {
  margin-top: var(--section-y);
}
.about_photo_card .ab-photo {
  grid-area: 1 / 1;
  position: relative;
}
.about_photo_card .ab-photo picture {
  position: absolute;
  inset: 0;
}
.about_photo_card .ab-photo .ab-img {
  border-radius: 0;
}
.about_photo_card .ab-card {
  grid-area: 1 / 1;
  align-self: end;
  justify-self: start;
  position: relative;
  width: min(34rem, calc(100% - 2rem));
  margin: clamp(1rem, 3vw, 2.5rem);
  padding: clamp(1.5rem, 3vw, 2.5rem);
  background: var(--warm-white);
  border-radius: var(--radius-md);
}
.about_photo_card .ab-card .ab-title {
  font-size: clamp(1.75rem, calc(1.3rem + 1.4vw), 2.375rem);
}
.about_photo_card .ab-card .ab-bullets {
  margin-top: 1.25rem;
}
.about_photo_card .ab-stage.is-flipped .ab-card {
  justify-self: end;
}
.about_photo_card .ab-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
}
.about_photo_card .ab-cards .ab-card {
  grid-area: auto;
  align-self: stretch;
  justify-self: stretch;
  width: auto;
  margin: 0;
  border: 1px solid var(--line-color);
}
.about_photo_card .ab-cards .ab-card .ab-title {
  font-size: clamp(1.35rem, calc(1.1rem + 0.7vw), 1.625rem);
  margin-bottom: 0.6rem;
}
.about_photo_card .ab-cards .ab-card .ab-text {
  font-size: 1rem;
}
.about_photo_card .ab-stage + .ab-cards,
.about_photo_card .ab-cards + .ab-stage {
  margin-top: clamp(1.5rem, 3vw, 2.5rem);
}
@media (max-width: 767.98px) {
  .about_photo_card .ab-stage {
    display: block;
    min-height: 0;
    border-radius: 0;
    overflow: visible;
  }
  .about_photo_card .ab-photo {
    aspect-ratio: 4 / 3;
  }
  .about_photo_card .ab-photo .ab-img {
    border-radius: var(--radius-md);
  }
  .about_photo_card .ab-stage .ab-card,
  .about_photo_card .ab-stage.is-flipped .ab-card {
    width: auto;
    margin: -2.5rem 0.75rem 0;
    border: 1px solid var(--line-color);
  }
}
/* ============================================================
   SLUŽBY - spoločné časti pre services_cards / 2 / 3 (Šablóna 1b)
   Nadpis sekcie, ikona, názov, doplnok, popis, odrážky, odkaz.
   Rozloženie jednotlivých variantov je v _services_typ_N.less.
   ============================================================ */
.services {
  padding: var(--section-y-half) 0;
  /* krémová sekcia - viď --section-y */
  /* nadpis sekcie = popis widgetu (<h2> + <p>) */
}
.services .sv-head {
  margin-bottom: clamp(2rem, 4vw, 3rem);
  max-width: 42rem;
}
.services .sv-head h2,
.services .sv-head h3 {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.9rem, calc(1.4rem + 1.6vw), 2.5rem);
  line-height: 1.15;
  color: var(--first-color);
  margin: 0 0 0.6rem;
}
.services .sv-head p {
  font-family: var(--second-font);
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--warm);
  margin: 0;
}
.services .sv-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--cream-2);
  color: var(--first-color);
}
.services .sv-icon svg {
  width: 1.375rem;
  height: 1.375rem;
}
.services .sv-name {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.3rem, calc(1.1rem + 0.6vw), 1.5rem);
  line-height: 1.2;
  color: var(--first-color);
  margin: 0;
}
.services .sv-meta {
  margin-top: 0.35rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--accent-color-hover);
}
.services .sv-text {
  margin-top: 0.75rem;
  font-family: var(--second-font);
  font-size: 1rem;
  line-height: 1.6;
  color: var(--warm);
}
.services .sv-text p {
  margin: 0 0 0.75rem;
}
.services .sv-text p:last-child {
  margin-bottom: 0;
}
.services .sv-bullets {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
  display: grid;
  gap: 0.5rem;
}
.services .sv-bullets li {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.9375rem;
  line-height: 1.45;
  color: var(--ink);
}
.services .sv-check {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 1.125rem;
  height: 1.125rem;
  margin-top: 0.1rem;
  border-radius: 50%;
  background: var(--first-color);
  color: var(--cream);
}
.services .sv-check svg {
  width: 0.625rem;
  height: 0.625rem;
}
.services .sv-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  margin-top: 1.25rem;
}
.services .sv-link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--first-color);
  text-decoration: none;
}
.services .sv-link svg {
  width: 1rem;
  height: 1rem;
  color: var(--accent-color);
  transition: transform 0.2s ease;
}
.services .sv-link:hover svg {
  transform: translateX(3px);
}
.services .sv-link:hover span {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
@media (prefers-reduced-motion: reduce) {
  .services .sv-link svg {
    transition: none;
  }
}
/* ============================================================
   SLUŽBY TYP 1 - karty s ikonou
   3 v riadku (tablet 2, mobil 1), karty v riadku rovnako vysoké,
   odkaz vždy dole na karte.
   ============================================================ */
.services_cards .sv-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 2vw, 1.5rem);
}
.services_cards .sv-card {
  display: flex;
  flex-direction: column;
  padding: clamp(1.5rem, 2.5vw, 2rem);
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.services_cards .sv-card .sv-icon {
  margin-bottom: 1.25rem;
}
.services_cards .sv-card .sv-links {
  margin-top: auto;
  padding-top: 1.25rem;
}
@media (max-width: 991.98px) {
  .services_cards .sv-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575.98px) {
  .services_cards .sv-grid {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   SLUŽBY TYP 2 - riadky
   Každá služba riadok oddelený linkou: vľavo názov (+ ikona), vpravo popis.
   Mobil: názov nad popisom.
   ============================================================ */
.services_rows {
  /* doplnok (cena / trvanie) stojí nad popisom, nie pod názvom */
}
.services_rows .sv-rows {
  border-top: 1px solid var(--line-color);
}
.services_rows .sv-row {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: clamp(1.25rem, 4vw, 4rem);
  padding: clamp(1.75rem, 3.5vw, 2.75rem) 0;
  border-bottom: 1px solid var(--line-color);
}
.services_rows .sv-row-title {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}
.services_rows .sv-row-title .sv-icon {
  margin-top: 0.1rem;
}
.services_rows .sv-name {
  font-size: clamp(1.5rem, calc(1.2rem + 1vw), 2rem);
}
.services_rows .sv-row-body {
  max-width: 38rem;
}
.services_rows .sv-row-body .sv-meta {
  margin-top: 0;
}
.services_rows .sv-row-body .sv-text:first-child {
  margin-top: 0;
}
@media (max-width: 767.98px) {
  .services_rows .sv-row {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }
}
/* ============================================================
   SLUŽBY TYP 3 - postup v krokoch
   PC: vľavo nadpis sekcie (sticky), vpravo kroky pod sebou - číslo v krúžku,
   zvislá linka k ďalšiemu kroku. Ľubovoľný počet krokov, nič sa nezalamuje.
   Mobil: nadpis nad krokmi.
   ============================================================ */
.services_steps {
  /* zvislá linka od čísla k ďalšiemu kroku */
}
.services_steps .sv-process {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
}
.services_steps .sv-process.no-head {
  grid-template-columns: minmax(0, 46rem);
}
.services_steps .sv-process .sv-head {
  position: sticky;
  top: 7rem;
  margin-bottom: 0;
}
.services_steps .sv-steps {
  list-style: none;
  margin: 0;
  padding: 0;
}
.services_steps .sv-step {
  position: relative;
  display: grid;
  grid-template-columns: 3.25rem 1fr;
  column-gap: 1.5rem;
  padding-bottom: clamp(1.75rem, 3vw, 2.5rem);
}
.services_steps .sv-step:last-child {
  padding-bottom: 0;
}
.services_steps .sv-num {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 50%;
  background: var(--first-color);
  color: var(--cream);
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.375rem;
}
.services_steps .sv-step:not(:last-child)::before {
  content: '';
  position: absolute;
  top: 3.25rem;
  bottom: 0;
  left: 1.625rem;
  width: 1px;
  background: var(--line-color);
}
.services_steps .sv-step-body {
  padding-top: 0.7rem;
  min-width: 0;
}
@media (max-width: 991.98px) {
  .services_steps .sv-process {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .services_steps .sv-process .sv-head {
    position: static;
  }
}
/* ============================================================
   BLOG - spoločné časti pre blog_featured / 2 / 3 (Šablóna 1b)
   Karta článku (fotka, dátum + čas čítania, nadpis, perex, „Čítať článok").
   Rozloženie jednotlivých variantov je v _blog_typ_N.less.
   ============================================================ */
.blog {
  padding: var(--section-y-half) 0;
  /* krémová sekcia - viď --section-y */
  /* značka videa na náhľade */
  /* stránkovanie z jadra (NewsList/pager.php) */
}
.blog .bl-head {
  margin-bottom: clamp(2rem, 4vw, 3rem);
  max-width: 42rem;
}
.blog .bl-head h2,
.blog .bl-head h3 {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.9rem, calc(1.4rem + 1.6vw), 2.5rem);
  line-height: 1.15;
  color: var(--first-color);
  margin: 0 0 0.6rem;
}
.blog .bl-head p {
  font-family: var(--second-font);
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--warm);
  margin: 0;
}
.blog .bl-head a {
  color: var(--first-color);
  font-weight: 700;
}
.blog .bl-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
.blog .bl-media {
  position: relative;
  overflow: hidden;
  aspect-ratio: 3 / 2;
  border-radius: var(--radius-md);
  background: var(--cream-2);
}
.blog .bl-media picture {
  display: block;
  height: 100%;
}
.blog .bl-media img,
.blog .bl-media video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.blog .bl-play {
  position: absolute;
  left: 0.75rem;
  bottom: 0.75rem;
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--warm-white);
  color: var(--first-color);
}
.blog .bl-play svg {
  width: 1rem;
  height: 1rem;
  margin-left: 0.1rem;
}
.blog .bl-card:hover .bl-media img,
.blog .bl-card:hover .bl-media video {
  transform: scale(1.03);
}
.blog .bl-media-empty {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--cream-mute);
}
.blog .bl-media-empty svg {
  width: 3rem;
  height: 3rem;
}
.blog .bl-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding-top: 1.125rem;
}
.blog .bl-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1rem;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.blog .bl-title {
  margin: 0.5rem 0 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.2rem, calc(1.05rem + 0.5vw), 1.375rem);
  line-height: 1.25;
  color: var(--first-color);
}
.blog .bl-card:hover .bl-title {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}
.blog .bl-perex {
  margin: 0.6rem 0 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--warm);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.blog .bl-more {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: auto;
  padding-top: 1rem;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--first-color);
}
.blog .bl-more svg {
  width: 1rem;
  height: 1rem;
  color: var(--accent-color);
  transition: transform 0.2s ease;
}
.blog .bl-card:hover .bl-more svg {
  transform: translateX(3px);
}
.blog .bl-card:focus-visible {
  outline: 2px solid var(--first-color);
  outline-offset: 4px;
  border-radius: var(--radius-md);
}
.blog #pagination {
  margin-top: clamp(2rem, 4vw, 3rem);
}
@media (prefers-reduced-motion: reduce) {
  .blog .bl-media img,
  .blog .bl-media video,
  .blog .bl-more svg {
    transition: none;
  }
}
/* ============================================================
   BLOG TYP 1 - hlavný článok + mriežka
   Hlavný článok: fotka a text vedľa seba, väčší nadpis. Ostatné 3 v riadku.
   ============================================================ */
.blog_featured .bl-featured {
  margin-bottom: clamp(2.5rem, 5vw, 4rem);
}
.blog_featured .bl-featured .bl-card {
  display: grid;
  grid-template-columns: 7fr 5fr;
  gap: clamp(1.5rem, 4vw, 3.5rem);
  align-items: center;
}
.blog_featured .bl-featured .bl-media {
  aspect-ratio: 16 / 10;
  border-radius: var(--radius-md);
}
.blog_featured .bl-featured .bl-body {
  padding-top: 0;
}
.blog_featured .bl-featured .bl-title {
  font-size: clamp(1.75rem, calc(1.3rem + 1.5vw), 2.5rem);
  line-height: 1.15;
  margin-top: 0.75rem;
}
.blog_featured .bl-featured .bl-perex {
  font-size: 1.0625rem;
  -webkit-line-clamp: 4;
  margin-top: 1rem;
}
.blog_featured .bl-featured .bl-more {
  margin-top: 1.5rem;
  padding-top: 0;
}
.blog_featured .bl-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(2rem, 3vw, 2.5rem) clamp(1rem, 2vw, 1.75rem);
}
@media (max-width: 991.98px) {
  .blog_featured .bl-featured .bl-card {
    grid-template-columns: 1fr;
  }
  .blog_featured .bl-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575.98px) {
  .blog_featured .bl-grid {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   BLOG TYP 2 - zoznam
   Články pod sebou: náhľad vľavo, text vpravo, oddelené linkou.
   ============================================================ */
.blog_list .bl-list {
  border-top: 1px solid var(--line-color);
}
.blog_list .bl-card {
  display: grid;
  grid-template-columns: minmax(0, 20rem) 1fr;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: center;
  padding: clamp(1.5rem, 3vw, 2rem) 0;
  border-bottom: 1px solid var(--line-color);
}
.blog_list .bl-media {
  aspect-ratio: 4 / 3;
}
.blog_list .bl-body {
  padding-top: 0;
  max-width: 40rem;
}
.blog_list .bl-title {
  font-size: clamp(1.35rem, calc(1.1rem + 0.8vw), 1.75rem);
}
.blog_list .bl-more {
  margin-top: 1rem;
  padding-top: 0;
}
@media (max-width: 575.98px) {
  .blog_list .bl-card {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   BLOG TYP 3 - tri najnovšie články
   Kompaktný riadok na vloženie inam (úvodka, pod článok).
   ============================================================ */
.blog_cards .bl-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 2vw, 1.75rem);
}
.blog_cards .bl-media {
  aspect-ratio: 16 / 10;
}
.blog_cards .bl-perex {
  -webkit-line-clamp: 2;
}
@media (max-width: 991.98px) {
  .blog_cards .bl-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .blog_cards .bl-card:nth-child(3) {
    display: none;
  }
}
@media (max-width: 575.98px) {
  .blog_cards .bl-grid {
    grid-template-columns: 1fr;
  }
  .blog_cards .bl-card:nth-child(3) {
    display: flex;
  }
}
.banner_narrow {
  padding: 4.8rem 0;
}
.banner_narrow .show-more a {
  text-decoration: none;
  font-weight: 400;
  font-size: 0.75rem;
  position: relative;
  margin-bottom: 3.75rem;
}
.banner_narrow .show-more a:after {
  background-image: url("/modul/Custom/img/svg/next2.svg");
  background-repeat: no-repeat;
  background-size: cover;
  content: '';
  width: 1rem;
  height: 1rem;
  top: 0;
  right: -1rem;
  position: absolute;
  transition: var(--trans-200);
}
.banner_narrow .show-more a:hover:after {
  transition: var(--trans-200);
  right: -2rem;
}
.banner_narrow .menu-item .card {
  box-shadow: none;
  border: 1px solid transparent;
  border-right: 1px solid var(--five-color);
  transition: var(--trans-200);
}
.banner_narrow .menu-item .card:hover {
  border-radius: var(--radius-md);
  box-shadow: 0 15px 30px -10px rgba(201, 34, 21, 0.25);
  transition: var(--trans-200);
  border: 1px solid var(--first-color);
}
.banner_narrow .menu-item .card .card-header {
  padding: 1.5rem 1.875rem 0 1.875rem;
}
.banner_narrow .menu-item .card .card-header figure {
  margin-bottom: 2rem;
  position: relative;
}
.banner_narrow .menu-item .card .card-header figure figcaption {
  position: absolute;
  top: -0.65rem;
  right: -0.25rem;
  background: var(--first-color);
  color: var(--white-color);
  padding: 0.25rem;
  font-weight: 500;
  font-family: var(--second-font);
  font-size: 1rem;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
}
.banner_narrow .menu-item .card .card-header figure svg {
  width: 5.125rem;
  height: 5.125rem;
}
.banner_narrow .menu-item .card .card-body {
  padding: 0 1.875rem 2.25rem 1.875rem;
  position: relative;
}
.banner_narrow .menu-item .card .card-body .text {
  font-size: var(--p-caption);
  font-weight: 500;
  text-align: center;
}
.banner_narrow .menu-item .card .card-body:before {
  content: "";
  position: absolute;
  bottom: 1.25rem;
  left: calc(50% - 1rem);
  width: 2rem;
  height: 0.125rem;
  background: var(--first-color);
}
.banner_narrow .menu-item:last-child .card {
  border-right: 0 solid var(--first-color);
}
.banner_narrow .menu-item:last-child:hover .card {
  border-right: 1px solid var(--first-color);
}
@media (max-width: 767.98px) {
  .banner_narrow .slider-container {
    justify-content: flex-start !important;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .banner_narrow .card .card-header {
    padding: 1rem 1.5rem 0 1.5rem;
  }
}
/* ============================================================
   HERO / HEADER typ_1 — Šablóna 1b (SPLIT, 1:1 podľa Figma)
   Lava krémová polovica = text · prava polovica = foto/video.
   Nadpis Fraunces 66px zelena + <em> italic akcent.
   ============================================================ */
.hero_split {
  width: 100%;
  position: relative;
  /* Slider (viac položiek). Prelínanie a bodky sú spoločné - v `_hero.less`,
     tu len to, čo je špecifické pre split rozloženie. */
  /* Ovládanie ide do pravého dolného rohu FOTKY, nie do textovej polovice -
     v texte by sedelo medzi tlačidlami a hodnotením a tlačilo by ich k sebe. */
  /* ---- lava polovica: text ---- */
  /* ---- prava polovica: foto/video ---- */
  /* ---- mobil: stack (foto hore, text dole) ---- */
}
.hero_split.has-slides {
  /* na mobile je foto hore a text dole - ovládanie patrí nad foto */
}
.hero_split.has-slides .hero-nav {
  position: absolute;
  right: clamp(1rem, 2.5vw, 2rem);
  bottom: clamp(1rem, 2.5vw, 1.75rem);
  z-index: 2;
}
.hero_split.has-slides .hero-arrow {
  border-color: rgba(245, 241, 232, 0.4);
  background: rgba(16, 42, 29, 0.45);
  color: var(--cream);
}
.hero_split.has-slides .hero-arrow:hover,
.hero_split.has-slides .hero-arrow:focus-visible {
  background: var(--cream);
  border-color: var(--cream);
  color: var(--first-color);
}
.hero_split.has-slides .hero-dot {
  background: rgba(245, 241, 232, 0.5);
}
.hero_split.has-slides .hero-dot.is-active {
  background: var(--cream);
}
@media (max-width: 991.98px) {
  .hero_split.has-slides .hero-nav {
    right: 1rem;
    bottom: auto;
    top: 1rem;
  }
}
.hero_split .hero-inner {
  display: flex;
  align-items: stretch;
  width: 100%;
  aspect-ratio: 1440 / 500;
  /* nižší hero (drží proporciu, responzívne) */
  min-height: 28rem;
  /* poistka (nižšia než 500px, aby aspect-ratio platil aj na desktope) */
  background: var(--three-color);
  /* cream #f5f1e8 */
}
.hero_split .hero-text {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.625rem;
  /* 26px */
  padding: 4rem 3.5rem 4rem 5rem;
  /* 64 / pr 56 / pl 80 */
  /* voliteľné doplnkové texty horný / spodný */
}
.hero_split .hero-text .hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  color: var(--mute);
  /* #8a857a */
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
  /* 13px */
  letter-spacing: 0.12em;
  /* ~1.56px */
  text-transform: uppercase;
}
.hero_split .hero-text .hero-eyebrow .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent-color);
  flex: 0 0 auto;
}
.hero_split .hero-text .hero-title {
  color: var(--first-color);
  /* #173d2b */
  font-family: var(--first-font);
  /* Fraunces */
  font-weight: 900;
  font-size: clamp(2.75rem, 4.6vw, 4.125rem);
  /* 66px */
  line-height: 1.03;
  letter-spacing: -0.005em;
  margin: 0;
  max-width: 12ch;
}
.hero_split .hero-text .hero-title em,
.hero_split .hero-text .hero-title i {
  font-style: italic;
  font-weight: 900;
}
.hero_split .hero-text .hero-subtitle {
  color: var(--warm);
  /* #5b564e */
  font-family: var(--second-font);
  font-weight: 400;
  font-size: 1.125rem;
  /* 18px */
  line-height: 1.6;
  /* 29px */
  max-width: 40ch;
  margin: 0;
  /* hlavný doplnkový text môže obsahovať h2 + p */
}
.hero_split .hero-text .hero-subtitle h2,
.hero_split .hero-text .hero-subtitle h3 {
  font-family: var(--first-font);
  color: var(--first-color);
  margin: 0 0 0.5rem;
}
.hero_split .hero-text .hero-subtitle p {
  margin: 0 0 0.5rem;
}
.hero_split .hero-text .hero-subtitle p:last-child {
  margin-bottom: 0;
}
.hero_split .hero-text .hero-text-top,
.hero_split .hero-text .hero-text-bottom {
  color: var(--warm);
  font-family: var(--second-font);
  font-weight: 400;
  font-size: 1.0625rem;
  line-height: 1.6;
  max-width: 44ch;
  margin: 0;
}
.hero_split .hero-text .hero-text-top h2,
.hero_split .hero-text .hero-text-bottom h2,
.hero_split .hero-text .hero-text-top h3,
.hero_split .hero-text .hero-text-bottom h3 {
  font-family: var(--first-font);
  color: var(--first-color);
  margin: 0 0 0.25rem;
}
.hero_split .hero-text .hero-text-top p,
.hero_split .hero-text .hero-text-bottom p {
  margin: 0;
}
.hero_split .hero-text .hero-text-top {
  font-size: 0.9375rem;
}
.hero_split .hero-text .hero-actions {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  /* 24px */
  flex-wrap: wrap;
}
.hero_split .hero-text .hero-actions .hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.0625rem 2rem;
  /* 17 / 32 */
  border-radius: 100px;
  background: var(--first-color);
  color: #fff;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  /* 16px */
  line-height: 1;
  text-decoration: none;
  border: 1px solid var(--first-color);
  transition: var(--trans-200);
}
.hero_split .hero-text .hero-actions .hero-btn:hover,
.hero_split .hero-text .hero-actions .hero-btn:focus {
  background: var(--green-900);
  border-color: var(--green-900);
  color: #fff;
}
.hero_split .hero-text .hero-actions .hero-link {
  color: var(--first-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  transition: var(--trans-200);
}
.hero_split .hero-text .hero-actions .hero-link:hover,
.hero_split .hero-text .hero-actions .hero-link:focus {
  color: var(--accent-text);
}
.hero_split .hero-text .hero-rating {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  /* 14px */
  color: var(--warm);
}
.hero_split .hero-text .hero-rating .star {
  color: var(--accent-text);
  font-weight: 700;
  font-size: 0.9375rem;
}
.hero_split .hero-photo {
  flex: 1 1 0;
  min-width: 0;
  position: relative;
  overflow: hidden;
}
.hero_split .hero-photo .hero-img,
.hero_split .hero-photo .hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}
.hero_split .hero-photo .hero-video {
  width: 100vw;
  height: 56.25vw;
  min-height: 100%;
  min-width: 177.78vh;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
@media (max-width: 991.98px) {
  .hero_split .hero-inner {
    flex-direction: column-reverse;
    aspect-ratio: auto;
    min-height: 0;
  }
  .hero_split .hero-photo {
    width: 100%;
    aspect-ratio: 16 / 10;
  }
  .hero_split .hero-text {
    padding: 2.5rem 1.5rem;
    gap: 1.15rem;
  }
  .hero_split .hero-text .hero-title {
    font-size: clamp(2.25rem, 9vw, 3rem);
    max-width: none;
  }
  .hero_split .hero-text .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
}
@media (max-width: 47.999rem) {
  .hero_split .hero-text {
    padding-left: var(--page-x);
    padding-right: var(--page-x);
  }
}
/* ============================================================
   HERO typ_2 / typ_3 / typ_4 — Šablóna 1b
   Spoločné texty (eyebrow, Fraunces nadpis, podnadpis, tlačidlá, hodnotenie)
   sú v `.hero`, rozloženie rieši každý typ zvlášť.
   `hero_split` (split podľa Figmy) má vlastný `_hero_split.less`.
   ============================================================ */
/* ---- slider: slidy ležia na sebe v jednej grid bunke ----
   Posúvanie obsahu (transform/scroll) by pri rôzne vysokých slidoch skákalo,
   takto je výška hera daná najvyšším slidom a mení sa len priehľadnosť.
   Platí aj pre `hero_split`, preto je to mimo `.hero`. */
.hero-slides {
  display: grid;
}
.hero-slides > .hero-slide {
  grid-area: 1 / 1;
  min-width: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.6s ease;
}
.hero-slides > .hero-slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
/* obmedzené animácie v systéme = žiadne prelínanie, len prepnutie */
@media (prefers-reduced-motion: reduce) {
  .hero-slides > .hero-slide {
    transition: none;
  }
}
/* ---- ovládanie slidera (šípky + bodky) ---- */
.hero-nav {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  /* šípky sú pri sebe ako jeden ovládač, bodky vedľa nich (vľavo) */
}
.hero-nav .hero-arrows {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.hero-nav .hero-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  border: 1px solid var(--line-color);
  border-radius: 50%;
  background: var(--warm-white);
  color: var(--first-color);
  cursor: pointer;
  transition: var(--trans-200);
}
.hero-nav .hero-arrow:hover,
.hero-nav .hero-arrow:focus-visible {
  background: var(--first-color);
  border-color: var(--first-color);
  color: #fff;
}
.hero-nav .hero-dots {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.hero-nav .hero-dot {
  width: 0.5rem;
  height: 0.5rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--line-color);
  cursor: pointer;
  transition: var(--trans-200);
}
.hero-nav .hero-dot.is-active {
  width: 1.5rem;
  border-radius: 100px;
  background: var(--accent-color);
}
.hero {
  width: 100%;
  position: relative;
  /* ---- spoločné texty ---- */
  /* ---- médium (foto / video) ---- */
  /* iframe sa nedá orezať `object-fit` - musí sa preto natiahnuť cez 16:9 a vycentrovať */
}
.hero .hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  color: var(--mute);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.hero .hero-eyebrow .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent-color);
  flex: 0 0 auto;
}
.hero .hero-title {
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 900;
  font-size: clamp(2.5rem, 4.4vw, 4rem);
  line-height: 1.05;
  letter-spacing: -0.005em;
  margin: 0;
}
.hero .hero-title em,
.hero .hero-title i {
  font-style: italic;
  font-weight: 900;
}
.hero .hero-subtitle {
  color: var(--warm);
  font-family: var(--second-font);
  font-size: 1.125rem;
  line-height: 1.6;
  max-width: 44ch;
  margin: 0;
}
.hero .hero-subtitle p {
  margin: 0 0 0.5rem;
}
.hero .hero-subtitle p:last-child {
  margin-bottom: 0;
}
.hero .hero-text-top {
  color: var(--warm);
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.6;
  max-width: 44ch;
  margin: 0;
}
.hero .hero-text-top p {
  margin: 0;
}
.hero .hero-actions {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
}
.hero .hero-actions .hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1.0625rem 2rem;
  border-radius: 100px;
  background: var(--first-color);
  border: 1px solid var(--first-color);
  color: #fff;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1;
  text-decoration: none;
  transition: var(--trans-200);
}
.hero .hero-actions .hero-btn:hover,
.hero .hero-actions .hero-btn:focus {
  background: var(--green-900);
  border-color: var(--green-900);
  color: #fff;
}
.hero .hero-actions .hero-link {
  color: var(--first-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  transition: var(--trans-200);
}
.hero .hero-actions .hero-link:hover,
.hero .hero-actions .hero-link:focus {
  color: var(--accent-text);
}
.hero .hero-rating {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--warm);
}
.hero .hero-rating .star {
  color: var(--accent-text);
  font-weight: 700;
  font-size: 0.9375rem;
}
.hero .hero-img,
.hero .hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border: 0;
}
.hero .hero-video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100vw;
  height: 56.25vw;
  min-height: 100%;
  min-width: 177.78vh;
  pointer-events: none;
}
/* ============================================================
   TYP 2 — celoplošné foto/video s tmavým závojom, text na ňom
   ============================================================ */
.hero_full {
  min-height: clamp(30rem, 78vh, 46rem);
  overflow: hidden;
  background: var(--dark-surface);
  /* Závoj, nie priehľadná fotka - stmavením fotky by sa stratili farby.
     Zdola silnejší, aby text držal kontrast a hore ostala fotka čistá. */
  /* svetlý text na tmavom závoji */
  /* bez fotky ostáva čistá tmavozelená plocha - závoj by tam len zašedil farbu */
  /* ovládanie leží na fotke, preto svetlé a v pravom dolnom rohu */
}
.hero_full .hero-slides,
.hero_full .hero-slide {
  min-height: inherit;
}
.hero_full .hero-slide {
  position: relative;
  display: flex;
  align-items: flex-end;
}
.hero_full .hero-media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero_full .hero-veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(16, 42, 29, 0.15) 0%, rgba(16, 42, 29, 0.45) 45%, rgba(16, 42, 29, 0.88) 100%);
}
.hero_full .hero-body {
  position: relative;
  width: 100%;
  padding: clamp(3rem, 8vw, 6rem) 0 clamp(2.5rem, 5vw, 4rem);
}
.hero_full .hero-text {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  max-width: 44rem;
}
.hero_full .hero-eyebrow {
  color: var(--on-dark-text-mute);
}
.hero_full .hero-title {
  color: var(--on-dark-text);
  max-width: 16ch;
}
.hero_full .hero-subtitle,
.hero_full .hero-text-top {
  color: var(--on-dark-text-mute);
}
.hero_full .hero-rating {
  color: var(--on-dark-text-mute);
}
.hero_full .hero-actions .hero-btn {
  background: var(--cream);
  border-color: var(--cream);
  color: var(--first-color);
}
.hero_full .hero-actions .hero-btn:hover,
.hero_full .hero-actions .hero-btn:focus {
  background: var(--accent-color);
  border-color: var(--accent-color);
  color: #fff;
}
.hero_full .hero-actions .hero-link {
  color: var(--on-dark-text);
}
.hero_full .hero-actions .hero-link:hover,
.hero_full .hero-actions .hero-link:focus {
  color: var(--orange-400);
}
.hero_full .hero-slide.is-plain .hero-veil {
  display: none;
}
.hero_full .hero-nav-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(1.25rem, 3vw, 2.25rem);
  z-index: 2;
}
.hero_full .hero-nav {
  justify-content: flex-end;
}
.hero_full .hero-nav .hero-arrow {
  border-color: rgba(245, 241, 232, 0.4);
  background: rgba(16, 42, 29, 0.45);
  color: var(--cream);
}
.hero_full .hero-nav .hero-arrow:hover,
.hero_full .hero-nav .hero-arrow:focus-visible {
  background: var(--cream);
  border-color: var(--cream);
  color: var(--first-color);
}
.hero_full .hero-nav .hero-dot {
  background: rgba(245, 241, 232, 0.45);
}
.hero_full .hero-nav .hero-dot.is-active {
  background: var(--cream);
}
@media (max-width: 991.98px) {
  .hero_full {
    min-height: 0;
  }
  .hero_full .hero-slides,
  .hero_full .hero-slide {
    min-height: 0;
  }
  .hero_full .hero-body {
    padding: clamp(6rem, 22vw, 9rem) 0 4.5rem;
  }
  .hero_full .hero-text {
    gap: 1.15rem;
  }
  .hero_full .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
  .hero_full .hero-nav {
    justify-content: center;
  }
}
/* ============================================================
   TYP 3 — editoriálny, všetko na stred, pod textom pás fotky
   ============================================================ */
.hero_editorial {
  background: var(--three-color);
  padding: clamp(3.5rem, 7vw, 6rem) 0 clamp(2.5rem, 5vw, 4rem);
  /* tu je ovládanie v toku pod obsahom, nie na fotke */
}
.hero_editorial .hero-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.5rem;
  max-width: 52rem;
  margin: 0 auto;
}
.hero_editorial .hero-title {
  max-width: 18ch;
}
.hero_editorial .hero-subtitle {
  max-width: 56ch;
}
.hero_editorial .hero-media {
  position: relative;
  margin-top: clamp(2.5rem, 5vw, 4rem);
  border-radius: var(--border-radius);
  overflow: hidden;
  aspect-ratio: 21 / 9;
  background: var(--four-color);
}
.hero_editorial .hero-nav {
  justify-content: center;
  margin-top: clamp(1.5rem, 3vw, 2.25rem);
}
@media (max-width: 991.98px) {
  .hero_editorial .hero-text {
    gap: 1.15rem;
  }
  .hero_editorial .hero-media {
    aspect-ratio: 16 / 10;
  }
  .hero_editorial .hero-actions {
    justify-content: center;
  }
  .hero_editorial .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
}
/* ============================================================
   TYP 4 — foto na celú šírku, cez ňu zľava krémová karta s textom
   ============================================================ */
.hero_card {
  min-height: clamp(30rem, 72vh, 44rem);
  overflow: hidden;
  background: var(--four-color);
  /* bez fotky nemá karta na čom ležať - splynie s krémovým pozadím sekcie */
  /* ovládanie vpravo dole na fotke (karta je vľavo, nebijú sa) */
}
.hero_card .hero-slides,
.hero_card .hero-slide {
  min-height: inherit;
}
.hero_card .hero-slide {
  position: relative;
  display: flex;
  align-items: center;
}
.hero_card .hero-media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero_card .hero-body {
  position: relative;
  width: 100%;
  padding: clamp(3rem, 6vw, 5rem) 0;
}
.hero_card .hero-card {
  max-width: 34rem;
  padding: clamp(2rem, 3.5vw, 3rem);
  border: 1px solid var(--line-color);
  border-radius: var(--border-radius);
  background: var(--warm-white);
  box-shadow: var(--shadow-card-2);
}
.hero_card .hero-text {
  display: flex;
  flex-direction: column;
  gap: 1.375rem;
}
.hero_card .hero-title {
  font-size: clamp(2.25rem, 3.4vw, 3.25rem);
  max-width: 14ch;
}
.hero_card .hero-slide.is-plain .hero-card {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
}
.hero_card .hero-nav-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(1.25rem, 3vw, 2.25rem);
  z-index: 2;
}
.hero_card .hero-nav {
  justify-content: flex-end;
}
@media (max-width: 991.98px) {
  .hero_card {
    min-height: 0;
    /* na mobile karta pod fotkou, nie cez ňu - inak z fotky nič nezostane */
    /* ovládanie ide pod kartu - na fotke by na mobile prekážalo */
  }
  .hero_card .hero-slides,
  .hero_card .hero-slide {
    min-height: 0;
    display: block;
  }
  .hero_card .hero-media {
    position: relative;
    inset: auto;
    width: 100%;
    aspect-ratio: 16 / 10;
  }
  .hero_card .hero-body {
    padding: 0;
  }
  .hero_card .hero-card {
    max-width: none;
    margin-top: -2.5rem;
    /* karta jemne prekrýva spodok fotky */
    border-radius: var(--border-radius) var(--border-radius) 0 0;
  }
  .hero_card .hero-text {
    gap: 1.15rem;
  }
  .hero_card .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
  .hero_card .hero-nav-wrap {
    position: static;
    padding-top: 1.25rem;
    padding-bottom: 0.5rem;
  }
  .hero_card .hero-nav {
    justify-content: center;
  }
}
/* YouTube v hero: neviditeľný, kým nehrá bez úvodnej vrstvy s názvom (initHeroYoutube v main.js) */
iframe.hero-yt {
  opacity: 0;
  transition: opacity 1s ease;
}
iframe.hero-yt.is-playing {
  opacity: 1;
}
/* ============================================================
   TYP 5 — fotka/video na celú plochu ako typ_2, pod textom lišta
   vyhľadávania (existujúci filter v holderi „hero-filter"), ktorá
   jemne prepadáva cez spodok fotky do stránky pod ňou.
   ============================================================ */
.hero_search {
  min-height: clamp(26rem, 60vh, 36rem);
  overflow: hidden;
  background: var(--dark-surface);
  /* silnejší závoj než typ_2 - pod textom je ešte lišta vyhľadávania, potrebuje viac
     kontrastu aj na svetlejších fotkách (napr. zasnežený exteriér) */
  /* svetlý text na tmavom závoji (rovnako ako typ_2) */
  /* bez fotky ostáva čistá tmavozelená plocha */
  /* ---- lišta vyhľadávania - existujúci filter widget (.product_filter) z holdera
     „hero-filter", len vytiahnutý nahor nad spodný okraj fotky ---- */
}
.hero_search .hero-slides,
.hero_search .hero-slide {
  min-height: inherit;
}
.hero_search .hero-slide {
  position: relative;
  display: flex;
  align-items: flex-end;
}
.hero_search .hero-media {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.hero_search .hero-veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(16, 42, 29, 0.35) 0%, rgba(16, 42, 29, 0.75) 42%, rgba(16, 42, 29, 0.95) 100%);
}
.hero_search .hero-body {
  position: relative;
  width: 100%;
  /* väčší spodný odstup než typ_2 - pod textom je ešte lišta, ktorá do fotky prepadáva */
  padding: clamp(3rem, 8vw, 6rem) 0 clamp(4.5rem, 9vw, 7rem);
}
.hero_search .hero-text {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  max-width: 44rem;
}
.hero_search .hero-eyebrow {
  color: var(--on-dark-text-mute);
}
.hero_search .hero-title {
  color: var(--on-dark-text);
  max-width: 16ch;
}
.hero_search .hero-subtitle,
.hero_search .hero-text-top {
  color: var(--on-dark-text-mute);
}
.hero_search .hero-actions .hero-btn {
  background: var(--cream);
  border-color: var(--cream);
  color: var(--first-color);
}
.hero_search .hero-actions .hero-btn:hover,
.hero_search .hero-actions .hero-btn:focus {
  background: var(--accent-color);
  border-color: var(--accent-color);
  color: #fff;
}
.hero_search .hero-actions .hero-link {
  color: var(--on-dark-text);
}
.hero_search .hero-actions .hero-link:hover,
.hero_search .hero-actions .hero-link:focus {
  color: var(--orange-400);
}
.hero_search .hero-slide.is-plain .hero-veil {
  display: none;
}
.hero_search .hero-nav-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(5.5rem, 11vw, 8.5rem);
  /* nad lištou vyhľadávania, nie pod ňou */
  z-index: 2;
}
.hero_search .hero-nav {
  justify-content: flex-end;
}
.hero_search .hero-nav .hero-arrow {
  border-color: rgba(245, 241, 232, 0.4);
  background: rgba(16, 42, 29, 0.45);
  color: var(--cream);
}
.hero_search .hero-nav .hero-arrow:hover,
.hero_search .hero-nav .hero-arrow:focus-visible {
  background: var(--cream);
  border-color: var(--cream);
  color: var(--first-color);
}
.hero_search .hero-nav .hero-dot {
  background: rgba(245, 241, 232, 0.45);
}
.hero_search .hero-nav .hero-dot.is-active {
  background: var(--cream);
}
.hero_search .hero-search-bar {
  position: relative;
  z-index: 3;
  margin-top: clamp(-4rem, -7vw, -2.75rem);
  padding-bottom: clamp(1.5rem, 3vw, 2.25rem);
}
.hero_search .hero-search-bar .product_filter {
  margin: 0;
}
@media (max-width: 991.98px) {
  .hero_search {
    min-height: 0;
  }
  .hero_search .hero-slides,
  .hero_search .hero-slide {
    min-height: 0;
  }
  .hero_search .hero-body {
    padding: clamp(6rem, 22vw, 9rem) 0 3.5rem;
  }
  .hero_search .hero-text {
    gap: 1.15rem;
  }
  .hero_search .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
  .hero_search .hero-nav {
    justify-content: center;
  }
  .hero_search .hero-nav-wrap {
    bottom: auto;
    position: static;
    margin: 1rem 0;
  }
  .hero_search .hero-search-bar {
    margin-top: 1.5rem;
  }
}
/* Lišta ako SAMOSTATNÁ SEKCIA hneď pod hero (bežný blok „Vyhľadávanie nehnuteľností", tak to popisuje
   aj návod): keď hero nemá filter v holderi „hero-filter", filter, ktorý ide hneď za ním, sa vytiahne
   do spodku fotky - vyzerá rovnako ako lišta v hero, ale dá sa upravovať, presúvať a mazať ako každá
   sekcia. Hero dostane dole miesto, aby lišta neprekryla text. Bez :has() ostane filter pod hero
   s bežným odstupom (_product_filter.less). */
@supports selector(:has(a)) {
  #main > .hero_search:not(:has(.hero-search-bar)):has(+ .product_filter) .hero-slide {
    padding-bottom: clamp(2.75rem, 7vw, 4rem);
  }
  #main > .hero_search:not(:has(.hero-search-bar)) + .product_filter {
    position: relative;
    z-index: 3;
    margin-top: clamp(-4rem, -7vw, -2.75rem);
  }
}
/* ============================================================
   TYP 6 — hero na získanie kontaktu (Šablóna 1b)
   Krémové pozadie, vľavo text + odrážkové výhody, vpravo karta
   s formulárom (existujúci Form widget z holdera „hero-form").
   ============================================================ */
.hero_form {
  width: 100%;
  position: relative;
  background: var(--three-color);
  /* ---- ľavá strana: text ---- */
  /* zoznam výhod - z rich editora (<ul><li>), bez zmeny schémy */
  /* ---- pravá strana: karta s formulárom ---- */
}
.hero_form.has-slides .hero-nav {
  margin-top: 1.75rem;
}
.hero_form .hero-inner {
  display: flex;
  align-items: center;
  gap: clamp(2.5rem, 5vw, 5rem);
  padding: clamp(3.5rem, 7vw, 6rem) 0;
}
.hero_form .hero-slides {
  flex: 1 1 0;
  min-width: 0;
}
.hero_form .hero-text {
  display: flex;
  flex-direction: column;
  gap: 1.375rem;
  max-width: 34rem;
}
.hero_form .hero-title {
  max-width: 14ch;
}
.hero_form .hero-subtitle ul {
  list-style: none;
  margin: 0.5rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.hero_form .hero-subtitle li {
  position: relative;
  padding-left: 1.75rem;
  font-family: var(--second-font);
  color: var(--first-color);
  font-weight: 500;
}
.hero_form .hero-subtitle li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%;
  background: var(--green-50);
}
.hero_form .hero-subtitle li::after {
  content: "";
  position: absolute;
  left: 0.3125rem;
  top: 0.4em;
  width: 0.5rem;
  height: 0.3125rem;
  border-left: 2px solid var(--second-color);
  border-bottom: 2px solid var(--second-color);
  transform: rotate(-45deg);
}
.hero_form .hero-actions {
  margin-top: 0.25rem;
}
.hero_form .hero-form-card {
  flex: 0 0 26rem;
  width: 26rem;
  max-width: 100%;
  padding: clamp(1.75rem, 3vw, 2.25rem);
  border: 1px solid var(--line-color);
  border-radius: var(--border-radius);
  background: var(--warm-white);
  box-shadow: var(--shadow-card-2);
  /* formulár v karte nemá vlastný odstup zhora a dvojstĺpec by bol v užšej
       karte tesný - polia idú pod sebou */
}
.hero_form .hero-form-card .form_block {
  padding-top: 0;
}
.hero_form .hero-form-card .fb-grid {
  grid-template-columns: 1fr;
}
.hero_form .hero-form-card .fb-col-6 {
  grid-column: 1 / -1;
}
@media (max-width: 991.98px) {
  .hero_form .hero-inner {
    flex-direction: column;
    align-items: stretch;
    padding: clamp(3rem, 8vw, 4.5rem) 0;
    gap: 2.25rem;
  }
  .hero_form .hero-text {
    max-width: none;
    gap: 1.15rem;
  }
  .hero_form .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
  .hero_form .hero-form-card {
    flex: none;
    width: 100%;
  }
}
/* ============================================================
   TYP 7 — text vľavo, koláž až 3 fotiek vpravo (Šablóna 1b)
   Fotky jemne presahujú cez seba - ohraničené tenkou linkou,
   BEZ tieňov (tie v 1b patria len kartám na krémovej ploche).
   ============================================================ */
.hero_collage {
  width: 100%;
  position: relative;
  background: var(--three-color);
  /* ---- koláž ---- */
  /* hlavná, väčšia, vľavo hore */
  /* menšia, vpravo hore */
  /* menšia, vpravo dole - jemne prepadáva cez prvú */
}
.hero_collage .hero-inner {
  display: flex;
  align-items: center;
  gap: clamp(2.5rem, 5vw, 5rem);
  padding: clamp(3.5rem, 7vw, 6rem) 0;
}
.hero_collage .hero-text {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  max-width: 32rem;
}
.hero_collage .hero-title {
  max-width: 14ch;
}
.hero_collage .hero-collage {
  position: relative;
  flex: 0 0 min(26rem, 42%);
  width: min(26rem, 42%);
  aspect-ratio: 1 / 1.05;
}
.hero_collage .hero-collage-item {
  position: absolute;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  background: var(--four-color);
}
.hero_collage .hero-collage-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero_collage .hero-collage-item:nth-child(1) {
  width: 68%;
  height: 72%;
  top: 0;
  left: 0;
  z-index: 1;
}
.hero_collage .hero-collage-item:nth-child(2) {
  width: 42%;
  height: 40%;
  top: 4%;
  right: 0;
  z-index: 2;
}
.hero_collage .hero-collage-item:nth-child(3) {
  width: 46%;
  height: 44%;
  bottom: 0;
  right: 6%;
  z-index: 3;
}
.hero_collage.no-collage .hero-text {
  max-width: 44rem;
}
@media (max-width: 991.98px) {
  .hero_collage .hero-inner {
    flex-direction: column;
    align-items: stretch;
    padding: clamp(3rem, 8vw, 4.5rem) 0;
    gap: 2.25rem;
  }
  .hero_collage .hero-text {
    max-width: none;
    gap: 1.15rem;
  }
  .hero_collage .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
  .hero_collage .hero-collage {
    width: 100%;
    flex: none;
    aspect-ratio: 4 / 3;
  }
}
/* ============================================================
   TYP 8 — čisto typografický hero, bez fotky (Šablóna 1b)
   Krémová plocha, všetko na stred, veľký Fraunces nadpis, tenké
   čiary (nie karty) - voliteľný pás štatistík pod textom.
   ============================================================ */
.hero_type {
  background: var(--three-color);
  padding: clamp(4rem, 8vw, 7rem) 0 clamp(3rem, 6vw, 5rem);
  /* ---- voliteľný pás štatistík ---- */
}
.hero_type .hero-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.5rem;
  max-width: 54rem;
  margin: 0 auto;
}
.hero_type .hero-title {
  max-width: 20ch;
  font-size: clamp(2.75rem, 5.2vw, 4.75rem);
}
.hero_type .hero-subtitle {
  max-width: 56ch;
}
.hero_type .hero-actions {
  justify-content: center;
}
.hero_type .hero-nav {
  justify-content: center;
  margin-top: clamp(1.5rem, 3vw, 2.25rem);
}
.hero_type .hero-stats {
  display: flex;
  justify-content: center;
  gap: clamp(2.5rem, 6vw, 5rem);
  margin-top: clamp(2.75rem, 5vw, 4rem);
  padding-top: clamp(2.25rem, 4vw, 3rem);
  border-top: 1px solid var(--line-color);
}
.hero_type .hero-stat {
  text-align: center;
}
.hero_type .hero-stat-num {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: clamp(2rem, 3.4vw, 2.75rem);
  line-height: 1.1;
  color: var(--first-color);
}
.hero_type .hero-stat-label {
  margin-top: 0.375rem;
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--warm);
}
@media (max-width: 767.98px) {
  .hero_type .hero-text {
    gap: 1.15rem;
  }
  .hero_type .hero-actions .hero-btn {
    flex: 1 1 auto;
    text-align: center;
  }
  .hero_type .hero-stats {
    flex-wrap: wrap;
    gap: 1.75rem 2.25rem;
  }
}
/* ============================================================
   PAGE — podstránka ČLÁNOK typ_2 (Šablóna 1b)
   Sprievodné štýly k `Custom/View/Layout/Pages/page.php`.
   Šablóna má hlavičku ako sekciu `header` - keď ju vykresľuje, nesmie byť
   nad ňou medzera (navbar je v toku, hlavička sadá priamo pod neho).
   ============================================================ */
body .main.page_standard {
  /* dátum a čas čítania pod hlavičkou - drobný, tlmený riadok */
}
body .main.page_standard.has-header {
  margin-top: 0;
}
body .main.page_standard .ps-meta {
  margin: clamp(1.25rem, 2.5vw, 2rem) 0 0;
  font-size: var(--p-caption);
  line-height: var(--p-caption-lh);
  color: var(--font-grey);
}
/* ============================================================
   PAGE — podstránka ŠIROKÁ typ_3 (Šablóna 1b)
   Sprievodné štýly k `Custom/View/Layout/Pages/page_wide.php`.
   Šablóna nič neobaľuje do col-* — widgety si container riešia samy,
   tu riešime len zvislý rytmus medzi hlavičkou a obsahom.
   ============================================================ */
body .main.page_wide {
  margin-top: 0;
  /* navbar je v toku, hlavička sadá priamo pod neho */
  /* Žiadny padding ani odstupy medzi widgetmi - každá sekcia si nesie odstup sama
     (--section-y v _variables.less). Vďaka tomu sa farebné pásy dotýkajú hlavičky,
     seba navzájom aj pätičky a poradie sekcií sa dá ľubovoľne meniť. */
  /* Širší kontajner (Jozef, overenie na škále 6. 11. 13:00) - hlavička podstránky (`.hs-content`,
     Header/subpage_header_photo.php, natvrdo `.container`) aj filter (`.product_filter > .container`,
     admin pole "Rozloženie") mali inú (užšiu, Bootstrap 1275px) šírku než výpis nehnuteľností
     (`.listings_search > .container`, `_listings_search.less`, 1800px) - ľavé okraje nesedeli pod
     sebou. Rovnaké hodnoty, zámerná duplicita (Jozefovo pravidlo - vlastný LESS na widget/šablónu,
     nie zdieľaný mixin naprieč súbormi). Platí len na `page_wide` stránkach (Nehnuteľnosti,
     kategórie, O nás, Služby, Kontakt) - užšie textové stránky (`page.php`, článok) sa nemenia. */
}
body .main.page_wide .ps-body {
  padding: 0;
  /* filter na výpise sadá pod hlavičku - na úvodke ho odsadzujú chipy nad ním */
}
body .main.page_wide .ps-body .product_filter {
  padding: var(--section-y-half) 0 clamp(1.5rem, 3vw, 2.25rem);
}
body .main.page_wide .hs-content,
body .main.page_wide .product_filter > .container {
  max-width: 112.5rem;
  /* 1800px */
  padding-left: clamp(1.25rem, 3vw, 3rem);
  padding-right: clamp(1.25rem, 3vw, 3rem);
}
/* ============================================================
   PAGE - blogový článok (Šablóna 1b)
   Sprievodné štýly k `Custom/View/Layout/Pages/article.php`.
   Krémová hlavička (nie zelený pás), široká titulná fotka, telo v čitateľnej
   šírke - ľavá hrana lícuje s nadpisom, ako všade na webe.
   ============================================================ */
body .main.article_page {
  margin-top: 0;
  /* YouTube / Vimeo: náhľad s tlačidlom, prehrávač až po kliknutí */
  /* telo: sekcie z holdera (textové polia...) v čitateľnej šírke */
}
body .main.article_page .cl-head {
  padding: clamp(2rem, 5vw, 3.5rem) 0 clamp(1.75rem, 3.5vw, 2.5rem);
}
body .main.article_page .cl-crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
body .main.article_page .cl-crumbs a {
  color: var(--warm);
  text-decoration: none;
}
body .main.article_page .cl-crumbs a:hover {
  color: var(--first-color);
  text-decoration: underline;
}
body .main.article_page .cl-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1rem;
  margin-top: clamp(1.5rem, 3vw, 2.25rem);
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--mute);
}
body .main.article_page .cl-title {
  margin: 0.75rem 0 0;
  max-width: 18em;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(2.25rem, calc(1.4rem + 3vw), 3.75rem);
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: var(--first-color);
}
body .main.article_page .cl-perex {
  margin: 1.25rem 0 0;
  max-width: 44rem;
  font-family: var(--second-font);
  font-size: clamp(1.125rem, calc(1rem + 0.4vw), 1.3125rem);
  line-height: 1.55;
  color: var(--warm);
}
body .main.article_page .cl-cover {
  position: relative;
  margin: 0;
  aspect-ratio: 21 / 9;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: var(--cream-2);
  /* video titulné médium - rám 16:9 ako video samo (21:9 by ho orezal alebo
       dal čierne pruhy) */
}
body .main.article_page .cl-cover picture {
  display: block;
  height: 100%;
}
body .main.article_page .cl-cover img,
body .main.article_page .cl-cover video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body .main.article_page .cl-cover.cl-cover--file,
body .main.article_page .cl-cover.cl-cover--youtube,
body .main.article_page .cl-cover.cl-cover--vimeo {
  aspect-ratio: 16 / 9;
}
@media (max-width: 767.98px) {
  body .main.article_page .cl-cover {
    aspect-ratio: 3 / 2;
  }
  body .main.article_page .cl-cover.cl-cover--file,
  body .main.article_page .cl-cover.cl-cover--youtube,
  body .main.article_page .cl-cover.cl-cover--vimeo {
    aspect-ratio: 16 / 9;
  }
}
body .main.article_page .cl-video {
  position: absolute;
  inset: 0;
}
body .main.article_page .cl-video iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
body .main.article_page .cl-play {
  position: absolute;
  inset: 0;
  width: 100%;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: var(--first-color);
}
body .main.article_page .cl-play img {
  opacity: 0.92;
  transition: opacity 0.2s ease;
}
body .main.article_page .cl-play:hover img {
  opacity: 1;
}
body .main.article_page .cl-play:focus-visible {
  outline: 3px solid var(--accent-color);
  outline-offset: -3px;
}
body .main.article_page .cl-play-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background: var(--warm-white);
  color: var(--first-color);
  box-shadow: 0 1rem 2rem -1rem rgba(16, 42, 29, 0.6);
  transition: transform 0.2s ease;
}
body .main.article_page .cl-play-icon svg {
  width: 2rem;
  height: 2rem;
  margin-left: 0.2rem;
}
body .main.article_page .cl-play:hover .cl-play-icon {
  transform: translate(-50%, -50%) scale(1.06);
}
body .main.article_page .cl-body {
  padding-bottom: var(--section-y-half);
  /* kontajner dáva .cl-body - vnorený kontajner sekcie by pridal druhý okraj */
}
body .main.article_page .cl-body .container,
body .main.article_page .cl-body .container-fluid {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
body .main.article_page .cl-body .textfield-telo,
body .main.article_page .cl-body .section-title,
body .main.article_page .cl-body .gallery .section-title {
  max-width: 44rem;
}
body .main.article_page .cl-body .textfield-telo {
  font-size: 1.0625rem;
  line-height: 1.75;
}
body .main.article_page .cl-body .textfield-telo > p {
  margin-bottom: 1.25rem;
}
body .main.article_page .cl-body .textfield-telo > h2 {
  margin-top: 2.25rem;
}
body .main.article_page .cl-body .textfield-telo > h3 {
  margin-top: 1.75rem;
}
/* ============================================================
   HLAVIČKA PODSTRÁNKY — spoločná báza (Šablóna 1b)
   Zdieľajú ju subpage_header_band / _2 / _3. Varianty menia len
   pozadie, rozloženie a farbu textu — typografia a odstupy sú tu.
   Triedy: .head_subpage .ps-breadcrumb .hs-eyebrow .hs-title
           .hs-desc .hs-actions .hs-btn .hs-link
   ============================================================ */
.head_subpage {
  width: 100%;
  position: relative;
  /* ---- drobčeky ---- */
  /* ---- eyebrow ---- */
  /* ---- nadpis ---- */
  /* ---- popis ---- */
  /* ---- tlačidlá ---- */
}
.head_subpage .ps-breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.head_subpage .ps-breadcrumb li + li::before {
  content: "/";
  margin-right: 0.5rem;
  color: var(--line-color);
}
.head_subpage .ps-breadcrumb li {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  /* 13px */
  font-weight: 500;
  color: var(--mute);
}
.head_subpage .ps-breadcrumb li a {
  color: var(--mute);
  text-decoration: none;
  transition: var(--trans-200);
}
.head_subpage .ps-breadcrumb li a:hover,
.head_subpage .ps-breadcrumb li a:focus {
  color: var(--first-color);
}
.head_subpage .ps-breadcrumb li.active span {
  color: var(--warm);
}
.head_subpage .hs-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  color: var(--mute);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
  /* 13px */
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.head_subpage .hs-eyebrow .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent-color);
  flex: 0 0 auto;
}
.head_subpage .hs-title {
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 900;
  font-size: clamp(2.25rem, 3.6vw, 3.25rem);
  /* 36 → 52px */
  line-height: 1.06;
  letter-spacing: -0.005em;
  margin: 0;
}
.head_subpage .hs-title em,
.head_subpage .hs-title i {
  font-style: italic;
  font-weight: 900;
}
.head_subpage .hs-desc {
  color: var(--warm);
  font-family: var(--second-font);
  font-size: 1.0625rem;
  /* 17px */
  line-height: 1.6;
  max-width: 52ch;
}
.head_subpage .hs-desc p {
  font-size: inherit;
  line-height: inherit;
  margin: 0 0 0.5rem;
}
.head_subpage .hs-desc p:last-child {
  margin-bottom: 0;
}
.head_subpage .hs-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 1.5rem;
}
.head_subpage .hs-actions .hs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.9375rem 1.875rem;
  /* 15 / 30px */
  border-radius: 999px;
  background: var(--btn-first-bg);
  color: var(--btn-first-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  line-height: 1;
  text-decoration: none;
  border: 0;
  transition: var(--trans-200);
}
.head_subpage .hs-actions .hs-btn:hover,
.head_subpage .hs-actions .hs-btn:focus {
  background: var(--btn-first-bg-hover);
  color: var(--btn-first-color-hover);
}
.head_subpage .hs-actions .hs-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--first-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
  border-bottom: 1px solid var(--line-color);
  padding-bottom: 0.1875rem;
  transition: var(--trans-200);
}
.head_subpage .hs-actions .hs-link:hover,
.head_subpage .hs-actions .hs-link:focus {
  color: var(--accent-text);
  border-bottom-color: var(--accent-text);
}
/* ============================================================
   HLAVIČKA PODSTRÁNKY typ_1 — „Krémový pás" (Šablóna 1b)
   Plnošírkový krémový pás pod navbarom, text vľavo, tlačidlá vpravo,
   dole tenká linka. Bez obrázka. Spoločná typografia je v _subpage_header.
   ============================================================ */
.subpage_header_band {
  background: var(--three-color);
  /* cream #F5F1E8 */
  border-bottom: 1px solid var(--line-color);
  padding: 1.75rem 0 clamp(2.5rem, 4vw, 3.5rem);
}
.subpage_header_band .ps-breadcrumb {
  margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
}
.subpage_header_band .hs-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem 3rem;
}
.subpage_header_band .hs-main {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 0;
}
.subpage_header_band .hs-actions {
  flex: 0 0 auto;
  padding-bottom: 0.25rem;
}
@media (max-width: 991.98px) {
  .subpage_header_band {
    padding: 1.25rem 0 2rem;
  }
  .subpage_header_band .hs-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
  .subpage_header_band .hs-desc {
    max-width: none;
  }
  .subpage_header_band .hs-actions {
    padding-bottom: 0;
  }
}
/* ============================================================
   HLAVIČKA PODSTRÁNKY typ_2 — „Centrovaná editoriálna" (Šablóna 1b)
   Text na stred (väčší nadpis než TYP 1, úzky perex), pod ním voliteľná
   široká fotka v kontajneri. Bez fotky = vzdušný centrovaný blok.
   ============================================================ */
.subpage_header_split {
  background: var(--white-color);
  /* teplá biela — odlišuje od krémového TYP 1 */
  padding: clamp(2.5rem, 5vw, 4rem) 0 0;
  /* editoriálny nadpis — väčší než v TYP 1 */
  /* ---- široká fotka pod textom ---- */
  /* ---- bez fotky: len vzdušný blok ukončený linkou ---- */
}
.subpage_header_split .hs-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.125rem;
  max-width: 44rem;
  margin: 0 auto;
}
.subpage_header_split .ps-breadcrumb ol {
  justify-content: center;
}
.subpage_header_split .hs-title {
  font-size: clamp(2.5rem, 4.4vw, 4rem);
  line-height: 1.02;
  max-width: 16ch;
}
.subpage_header_split .hs-desc {
  max-width: 46ch;
  font-size: 1.125rem;
}
.subpage_header_split .hs-actions {
  justify-content: center;
  margin-top: 0.375rem;
}
.subpage_header_split .hs-photo {
  position: relative;
  margin: clamp(2.5rem, 5vw, 3.75rem) 0 0;
  aspect-ratio: 21 / 9;
  overflow: hidden;
  border-radius: var(--radius-md);
  /* rovnaké zaoblenie ako karty inzerátov */
  border: 1px solid var(--line-color);
  background: var(--cream-2);
}
.subpage_header_split .hs-photo .hs-img,
.subpage_header_split .hs-photo .hs-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}
.subpage_header_split.no-media {
  padding-bottom: clamp(2.5rem, 5vw, 4rem);
  border-bottom: 1px solid var(--line-color);
}
@media (max-width: 991.98px) {
  .subpage_header_split {
    padding-top: 2rem;
  }
  .subpage_header_split .hs-text {
    gap: 0.875rem;
  }
  .subpage_header_split .hs-title {
    max-width: none;
  }
  .subpage_header_split .hs-desc {
    max-width: none;
  }
  .subpage_header_split .hs-photo {
    aspect-ratio: 16 / 9;
  }
  .subpage_header_split .hs-actions .hs-btn {
    flex: 1 1 auto;
    text-align: center;
  }
}
/* ============================================================
   HLAVIČKA PODSTRÁNKY typ_3 — „Foto na celú šírku s prekryvom" (Šablóna 1b)
   Plnošírkový pás s fotkou/videom + tmavozelený gradient, obsah dole vľavo
   bielym písmom. Bez obrázka (.no-media) = plný tmavozelený pás.
   ============================================================ */
.subpage_header_photo {
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: var(--first-color);
  /* výška = obsah, s fotkou aj bez nej rovnaká - fotka je len pozadie pásu (kedysi pomer 1440/420,
     hlavička s fotkou bola skoro dvakrát vyššia) */
  /* ---- pozadie: foto / video ---- */
  /* ---- obsah ---- */
  /* ---- prefarbenie na tmavé pozadie ---- */
}
.subpage_header_photo .hs-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  /* prekryv — zvislý (dole hustejší) + vodorovný zľava, text je vľavo dole */
}
.subpage_header_photo .hs-media .hs-img,
.subpage_header_photo .hs-media .hs-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
  display: block;
}
.subpage_header_photo .hs-media .hs-video {
  position: absolute;
  width: 100vw;
  height: 56.25vw;
  min-height: 100%;
  min-width: 177.78vh;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.subpage_header_photo .hs-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(16, 42, 29, 0.62) 0%, rgba(16, 42, 29, 0.1) 60%), linear-gradient(180deg, rgba(16, 42, 29, 0.25) 0%, rgba(16, 42, 29, 0.55) 55%, rgba(16, 42, 29, 0.85) 100%);
}
.subpage_header_photo .hs-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-top: clamp(2.25rem, 4vw, 3.5rem);
  padding-bottom: clamp(2.25rem, 4vw, 3.5rem);
}
.subpage_header_photo .hs-title {
  color: var(--on-dark-text);
}
.subpage_header_photo .hs-desc {
  color: var(--on-dark-text-mute);
}
.subpage_header_photo .hs-eyebrow {
  color: var(--on-dark-text-mute);
}
.subpage_header_photo .ps-breadcrumb {
  margin-bottom: 0.5rem;
}
.subpage_header_photo .ps-breadcrumb li {
  color: var(--on-dark-text-mute);
}
.subpage_header_photo .ps-breadcrumb li a {
  color: var(--on-dark-text-mute);
}
.subpage_header_photo .ps-breadcrumb li a:hover,
.subpage_header_photo .ps-breadcrumb li a:focus {
  color: var(--white-color);
}
.subpage_header_photo .ps-breadcrumb li + li::before {
  color: var(--on-dark-text-mute);
  opacity: 0.6;
}
.subpage_header_photo .ps-breadcrumb li.active span {
  color: var(--on-dark-text);
}
.subpage_header_photo .hs-actions {
  margin-top: 0.5rem;
}
.subpage_header_photo .hs-actions .hs-btn {
  background: var(--btn-second-bg);
  color: var(--btn-second-color);
}
.subpage_header_photo .hs-actions .hs-btn:hover,
.subpage_header_photo .hs-actions .hs-btn:focus {
  background: var(--btn-second-bg-hover);
}
.subpage_header_photo .hs-actions .hs-link {
  color: var(--on-dark-text);
  border-bottom-color: var(--on-dark-line);
}
.subpage_header_photo .hs-actions .hs-link:hover,
.subpage_header_photo .hs-actions .hs-link:focus {
  color: var(--accent-color);
  border-bottom-color: var(--accent-color);
}
@media (max-width: 991.98px) {
  .subpage_header_photo .hs-desc {
    max-width: none;
  }
  .subpage_header_photo .hs-actions .hs-btn {
    flex: 1 1 auto;
    text-align: center;
  }
}
/* ============================================================
   HLAVIČKA PODSTRÁNKY — TYP 4 „Iba text" (Šablóna 1b)
   Najužší variant: bez fotky, bez perexu, bez tlačidiel.
   Pre právne / informačné podstránky (GDPR, obchodné podmienky).
   ============================================================ */
.subpage_header_text {
  padding: clamp(2.5rem, 5vw, 3.75rem) 0 clamp(1.75rem, 3.5vw, 2.5rem);
}
.subpage_header_text .ps-breadcrumb {
  margin-bottom: 1.25rem;
}
.subpage_header_text .hs-title {
  font-size: clamp(2rem, 3.2vw, 2.75rem);
}
.subpage_header_text .hs-updated {
  margin: 0.875rem 0 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--mute);
}
.subpage_header_text .hs-updated time {
  font-weight: 600;
  color: var(--warm);
}
/* ============================================================
   HLAVIČKA PODSTRÁNKY — TYP 5 „Landing s kontaktom" (Šablóna 1b)
   Nadpis + perex + CTA vľavo, karta kontaktnej osoby vpravo.
   ============================================================ */
.subpage_header_cta {
  padding: clamp(3rem, 6vw, 4.5rem) 0 clamp(2.5rem, 5vw, 3.75rem);
  /* ---- karta kontaktnej osoby ---- */
}
.subpage_header_cta .ps-breadcrumb {
  margin-bottom: 1.5rem;
}
.subpage_header_cta .hs-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(2rem, 4vw, 3.5rem);
}
.subpage_header_cta .hs-main {
  flex: 1 1 0;
  min-width: 0;
  max-width: 40rem;
}
.subpage_header_cta .hs-desc {
  margin-top: 0.875rem;
}
.subpage_header_cta .hs-actions {
  margin-top: 1.625rem;
}
.subpage_header_cta .hs-contact-card {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.125rem 1.5rem 1.125rem 1.125rem;
  border: 1px solid var(--line-color);
  border-radius: var(--border-radius);
  background: var(--warm-white);
}
.subpage_header_cta .hs-contact-photo {
  flex: 0 0 auto;
  width: 4.5rem;
  height: 4.5rem;
  margin: 0;
  border-radius: 50%;
  overflow: hidden;
  background: var(--four-color);
}
.subpage_header_cta .hs-contact-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.subpage_header_cta .hs-contact-photo .hs-contact-initial {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.5rem;
  color: var(--first-color);
}
.subpage_header_cta .hs-contact-feature {
  display: block;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--mute);
}
.subpage_header_cta .hs-contact-name {
  margin: 0.25rem 0 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.0625rem;
  color: var(--first-color);
}
.subpage_header_cta .hs-contact-phone {
  display: inline-block;
  margin-top: 0.25rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--second-color);
  text-decoration: none;
}
.subpage_header_cta .hs-contact-phone:hover,
.subpage_header_cta .hs-contact-phone:focus {
  color: var(--accent-text);
}
@media (max-width: 991.98px) {
  .subpage_header_cta .hs-row {
    flex-direction: column;
    align-items: stretch;
  }
  .subpage_header_cta .hs-main {
    max-width: none;
  }
  .subpage_header_cta .hs-contact-card {
    align-self: flex-start;
  }
}
.tag-box {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  display: block;
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 1;
}
.tag-box .tag-box-item {
  font-size: 0.8rem;
  color: var(--white-color);
  font-weight: 600;
  line-height: 100%;
  margin: 0.5rem;
  padding: 0.3125rem 0.625rem;
  border-radius: 10rem;
  position: relative;
  display: block;
  /* &.light-green-200 {
      background-color: #e0ecd1;
    }

    &.light-green-300 {
      background-color: #cadfb1;
    }

    &.light-green-400 {
      background-color: #bad896;
    }

    &.light-green-500 {
      background-color: #acd57c;
    }

    &.light-green-600 {
      background-color: #9ece67;
    }

    &.light-green-700 {
      background-color: #83b944;
    }

    &.light-green-800 {
      background-color: #70a532;
    }*/
}
.tag-box .tag-box-item:first-child {
  margin: 0.5rem;
}
@media screen and (max-width: 1366px) {
  .tag-box .tag-box-item:nth-child(3) {
    margin: 0.5rem;
  }
}
.tag-box .tag-box-item.item-selled {
  font-size: 0.9rem;
  color: #fff;
  font-weight: 600;
  padding: 0.3125rem 1rem;
  border-radius: 0;
  position: relative;
  background: #2d2d2d;
  margin: -0.5rem 0 !important;
}
.tag-box .tag-box-item.default {
  background-color: var(--second-color);
  color: var(--black-color);
}
.tag-box .tag-box-item.primary-100 {
  background-color: #e8f1f8;
}
.tag-box .tag-box-item.primary-200 {
  background-color: #d5e4f1;
}
.tag-box .tag-box-item.primary-300 {
  background-color: #bcd8f1;
}
.tag-box .tag-box-item.primary-400 {
  background-color: #a2caee;
}
.tag-box .tag-box-item.primary-500 {
  background-color: #89bceb;
}
.tag-box .tag-box-item.primary-600 {
  background-color: #62a8ea;
}
.tag-box .tag-box-item.primary-700 {
  background-color: #4e97d9;
}
.tag-box .tag-box-item.primary-800 {
  background-color: #3583ca;
}
.tag-box .tag-box-item.red-100 {
  background-color: #ffeaea;
}
.tag-box .tag-box-item.red-200 {
  background-color: #fad3d3;
}
.tag-box .tag-box-item.red-300 {
  background-color: #fab4b4;
}
.tag-box .tag-box-item.red-400 {
  background-color: #fa9898;
}
.tag-box .tag-box-item.red-500 {
  background-color: #fa7a7a;
}
.tag-box .tag-box-item.red-600 {
  background-color: #f96868;
}
.tag-box .tag-box-item.red-700 {
  background-color: #e9595b;
}
.tag-box .tag-box-item.red-800 {
  background-color: #d6494b;
}
.tag-box .tag-box-item.pink-100 {
  background-color: #fce4ec;
}
.tag-box .tag-box-item.pink-200 {
  background-color: #ffccde;
}
.tag-box .tag-box-item.pink-300 {
  background-color: #fba9c6;
}
.tag-box .tag-box-item.pink-400 {
  background-color: #fb8db4;
}
.tag-box .tag-box-item.pink-500 {
  background-color: #f978a6;
}
.tag-box .tag-box-item.pink-600 {
  background-color: #f96197;
}
.tag-box .tag-box-item.pink-700 {
  background-color: #f44c87;
}
.tag-box .tag-box-item.pink-800 {
  background-color: #e53b75;
}
.tag-box .tag-box-item.purple-100 {
  background-color: #f6f2ff;
}
.tag-box .tag-box-item.purple-200 {
  background-color: #e3dbf4;
}
.tag-box .tag-box-item.purple-300 {
  background-color: #d2c5ec;
}
.tag-box .tag-box-item.purple-400 {
  background-color: #bba7e4;
}
.tag-box .tag-box-item.purple-500 {
  background-color: #a58add;
}
.tag-box .tag-box-item.purple-600 {
  background-color: #926dde;
}
.tag-box .tag-box-item.purple-700 {
  background-color: #7c51d1;
}
.tag-box .tag-box-item.purple-800 {
  background-color: #6d45bc;
}
.tag-box .tag-box-item.indigo-100 {
  background-color: #edeff9;
}
.tag-box .tag-box-item.indigo-200 {
  background-color: #dadef5;
}
.tag-box .tag-box-item.indigo-300 {
  background-color: #bcc5f4;
}
.tag-box .tag-box-item.indigo-400 {
  background-color: #9daaf3;
}
.tag-box .tag-box-item.indigo-500 {
  background-color: #8897ec;
}
.tag-box .tag-box-item.indigo-600 {
  background-color: #677ae4;
}
.tag-box .tag-box-item.indigo-700 {
  background-color: #5166d6;
}
.tag-box .tag-box-item.indigo-800 {
  background-color: #465bd4;
}
.tag-box .tag-box-item.blue-100 {
  background-color: #e8f1f8;
}
.tag-box .tag-box-item.blue-200 {
  background-color: #d5e4f1;
}
.tag-box .tag-box-item.blue-300 {
  background-color: #bcd8f1;
}
.tag-box .tag-box-item.blue-400 {
  background-color: #a2caee;
}
.tag-box .tag-box-item.blue-500 {
  background-color: #89bceb;
}
.tag-box .tag-box-item.blue-600 {
  background-color: #62a8ea;
}
.tag-box .tag-box-item.blue-700 {
  background-color: #4e97d9;
}
.tag-box .tag-box-item.blue-800 {
  background-color: #3583ca;
}
.tag-box .tag-box-item.cyan-100 {
  background-color: #ecf9fa;
}
.tag-box .tag-box-item.cyan-200 {
  background-color: #d3eff2;
}
.tag-box .tag-box-item.cyan-300 {
  background-color: #baeaef;
}
.tag-box .tag-box-item.cyan-400 {
  background-color: #9ae1e9;
}
.tag-box .tag-box-item.cyan-500 {
  background-color: #77d6e1;
}
.tag-box .tag-box-item.cyan-600 {
  background-color: #57c7d4;
}
.tag-box .tag-box-item.cyan-700 {
  background-color: #47b8c6;
}
.tag-box .tag-box-item.cyan-800 {
  background-color: #37a9b7;
}
.tag-box .tag-box-item.teal-100 {
  background-color: #ecfdfc;
}
.tag-box .tag-box-item.teal-200 {
  background-color: #cdf4f1;
}
.tag-box .tag-box-item.teal-300 {
  background-color: #99e1da;
}
.tag-box .tag-box-item.teal-400 {
  background-color: #79d1c9;
}
.tag-box .tag-box-item.teal-500 {
  background-color: #56bfb5;
}
.tag-box .tag-box-item.teal-600 {
  background-color: #3aa99e;
}
.tag-box .tag-box-item.teal-700 {
  background-color: #269b8f;
}
.tag-box .tag-box-item.teal-800 {
  background-color: #178d81;
}
.tag-box .tag-box-item.green-100 {
  background-color: #e7faf2;
}
.tag-box .tag-box-item.green-200 {
  background-color: #bfedd8;
}
.tag-box .tag-box-item.green-300 {
  background-color: #9fe5c5;
}
.tag-box .tag-box-item.green-400 {
  background-color: #7dd3ae;
}
.tag-box .tag-box-item.green-500 {
  background-color: #5cd29d;
}
.tag-box .tag-box-item.green-600 {
  background-color: #46be8a;
}
.tag-box .tag-box-item.green-700 {
  background-color: #36ab7a;
}
.tag-box .tag-box-item.green-800 {
  background-color: #279566;
}
.tag-box .tag-box-item.light-green-100 {
  background-color: #e7faf2;
}
.tag-box .tag-box-item.light-green-200 {
  background-color: #c5f3dd;
}
.tag-box .tag-box-item.light-green-300 {
  background-color: #a3ebc7;
}
.tag-box .tag-box-item.light-green-400 {
  background-color: #8aefa2;
}
.tag-box .tag-box-item.light-green-500 {
  background-color: #6ddb8f;
}
.tag-box .tag-box-item.light-green-600 {
  background-color: #4fc97c;
}
.tag-box .tag-box-item.light-green-700 {
  background-color: #36b36a;
}
.tag-box .tag-box-item.light-green-800 {
  background-color: #269c59;
}
.tag-box .tag-box-item.light-green-100 {
  background-color: #f1f7ea;
}
.tag-box .tag-box-item.yellow-100 {
  background-color: #fffae7;
}
.tag-box .tag-box-item.yellow-200 {
  background-color: #f9eec1;
}
.tag-box .tag-box-item.yellow-300 {
  background-color: #f6e7a9;
}
.tag-box .tag-box-item.yellow-400 {
  background-color: #f8e59b;
}
.tag-box .tag-box-item.yellow-500 {
  background-color: #f7e083;
}
.tag-box .tag-box-item.yellow-600 {
  background-color: #f7da64;
}
.tag-box .tag-box-item.yellow-700 {
  background-color: #f9cd48;
}
.tag-box .tag-box-item.yellow-800 {
  background-color: #fbc02d;
  color: black;
}
.tag-box .tag-box-item.orange-100 {
  background-color: #fff3e6;
}
.tag-box .tag-box-item.orange-200 {
  background-color: #ffddb9;
}
.tag-box .tag-box-item.orange-300 {
  background-color: #fbce9d;
}
.tag-box .tag-box-item.orange-400 {
  background-color: #f6be80;
}
.tag-box .tag-box-item.orange-500 {
  background-color: #f4b066;
}
.tag-box .tag-box-item.orange-600 {
  background-color: #f2a654;
}
.tag-box .tag-box-item.orange-700 {
  background-color: #ec9940;
}
.tag-box .tag-box-item.orange-800 {
  background-color: #e98f2e;
}
.tag-box .tag-box-item.brown-100 {
  background-color: #fae6df;
}
.tag-box .tag-box-item.brown-200 {
  background-color: #e2bdaf;
}
.tag-box .tag-box-item.brown-300 {
  background-color: #d3aa9c;
}
.tag-box .tag-box-item.brown-400 {
  background-color: #b98e7e;
}
.tag-box .tag-box-item.brown-500 {
  background-color: #a17768;
}
.tag-box .tag-box-item.brown-600 {
  background-color: #8d6658;
}
.tag-box .tag-box-item.brown-700 {
  background-color: #7d5b4f;
}
.tag-box .tag-box-item.brown-800 {
  background-color: #715146;
}
.tag-box .tag-box-item.grey-100 {
  background-color: #fafafa;
}
.tag-box .tag-box-item.grey-200 {
  background-color: #eee;
}
.tag-box .tag-box-item.grey-300 {
  background-color: #e0e0e0;
}
.tag-box .tag-box-item.grey-400 {
  background-color: #bdbdbd;
}
.tag-box .tag-box-item.grey-500 {
  background-color: #9e9e9e;
}
.tag-box .tag-box-item.grey-600 {
  background-color: #757575;
}
.tag-box .tag-box-item.grey-700 {
  background-color: #616161;
}
.tag-box .tag-box-item.grey-800 {
  background-color: #424242;
}
.tag-box .tag-box-item.blue-grey-100 {
  background-color: #f3f7f9;
}
.tag-box .tag-box-item.blue-grey-200 {
  background-color: #e4eaec;
}
.tag-box .tag-box-item.blue-grey-300 {
  background-color: #ccd5db;
}
.tag-box .tag-box-item.blue-grey-400 {
  background-color: #a3afb7;
}
.tag-box .tag-box-item.blue-grey-500 {
  background-color: #76838f;
}
.tag-box .tag-box-item.blue-grey-600 {
  background-color: #526069;
}
.tag-box .tag-box-item.blue-grey-700 {
  background-color: #37474f;
}
.tag-box .tag-box-item.blue-grey-800 {
  background-color: #263238;
}
.tag-box .tag-box-item.color-white {
  color: var(--white-color);
}
.tag-box .tag-box-item.color-black {
  color: var(--white-black);
}
.tag-box .tag-box-item:before {
  position: absolute;
  content: "";
  top: -0.5rem;
  left: -0.5rem;
  width: 1rem;
  height: 1rem;
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .tag-box {
    justify-content: center;
  }
  .tag-box li {
    font-size: 0.85rem;
  }
}
/* ============================================================
   FORMULÁR TYP 1b - Šablóna 1b (Figma detail 1726:66)
   Jednostĺpcová karta, kontaktný formulár na detaile.
   ============================================================ */
.form_block {
  padding: 1rem 0 0;
  /* GDPR checkbox */
  /* Captcha. Typ určuje server (Captcha::resolveType()), šablóna pridá modifikátor
     .captcha--<typ>, takže sa tu dajú odlíšiť neviditeľná a obrázková varianta. */
  /* odosiela sa: tlačidlo stlmené s textom „Odosielam…" (bez prekrytia celej obrazovky) */
  /* po odoslaní: potvrdenie namiesto polí */
}
.form_block .fb-head {
  margin-bottom: 1.25rem;
}
.form_block .fb-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mute);
  margin-bottom: 0.4rem;
}
.form_block .fb-eyebrow .dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent-color);
}
.form_block .fb-title {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.6rem;
  color: var(--first-color);
  margin: 0 0 0.35rem;
}
.form_block .fb-sub {
  font-family: var(--second-font);
  font-size: 0.95rem;
  color: var(--mute);
  margin: 0;
}
.form_block .fb-card {
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.875rem;
  /* 30px */
}
.form_block .fb-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.875rem;
  /* 14px */
}
.form_block .fb-col-12 {
  grid-column: 1 / -1;
}
.form_block .fb-col-6 {
  grid-column: span 1;
}
.form_block .fb-input {
  width: 100%;
  background: #fff;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  /* 10px */
  padding: 0.875rem 1.125rem;
  /* 14 / 18 */
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--ink);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.form_block .fb-input::placeholder {
  color: var(--mute);
}
.form_block .fb-input:focus {
  outline: none;
  border-color: var(--first-color);
  box-shadow: 0 0 0 3px rgba(23, 61, 43, 0.1);
}
.form_block .fb-textarea {
  min-height: 5.5rem;
  resize: vertical;
  line-height: 1.5;
}
.form_block .fb-select {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238A857A' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  padding-right: 2.5rem;
}
.form_block .fb-check {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  cursor: pointer;
}
.form_block .fb-check input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.form_block .fb-check-box {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  margin-top: 0.1rem;
  border: 1.5px solid var(--line-color);
  border-radius: 5px;
  background: #fff;
  position: relative;
  transition: background 0.15s ease, border-color 0.15s ease;
}
.form_block .fb-check input:checked + .fb-check-box {
  background: var(--first-color);
  border-color: var(--first-color);
}
.form_block .fb-check input:checked + .fb-check-box::after {
  content: '';
  position: absolute;
  left: 5px;
  top: 1px;
  width: 5px;
  height: 9px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.form_block .fb-check-txt {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
  line-height: 1.5;
}
.form_block .fb-link {
  color: var(--first-color);
  text-decoration: underline;
}
.form_block .fb-captcha {
  /* Turnstile sa v tele formulára nezobrazuje vôbec (interaction-only) - spoločné štýly
       aj s drobným riadkom "Chránené Cloudflare Turnstile" sú v `_captcha.less`.
       reCAPTCHA je cudzí iframe s pevnou veľkosťou, tej dávame len priestor. */
  /* Riadok "Chránené Cloudflare Turnstile" je až pod tlačidlom - vycentrovaný fine print. */
  /* Obrázková captcha - obrázok s tlačidlom obnovenia vľavo, pole na opis vpravo. */
}
.form_block .fb-captcha .captcha--google_captcha,
.form_block .fb-captcha .captcha--google_invisible_captcha {
  display: flex;
  justify-content: center;
  margin: 0.25rem 0;
}
.form_block .fb-captcha .captcha-note {
  justify-content: center;
  margin-top: 0.15rem;
}
.form_block .fb-captcha .captcha--math_captcha,
.form_block .fb-captcha .captcha--word_captcha {
  display: flex;
  align-items: center;
  gap: 0.875rem;
}
.form_block .fb-captcha .captcha-ar {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  background: var(--cream-2);
  border-radius: var(--radius-sm);
  padding: 0.55rem 0.75rem;
}
.form_block .fb-captcha .captcha-ar img {
  display: block;
  height: 2.375rem;
  width: auto;
  border-radius: 0.375rem;
}
.form_block .fb-captcha .captcha-ar figcaption {
  display: flex;
}
.form_block .fb-captcha .btn-captcha {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  padding: 0;
  cursor: pointer;
  background: #fff;
  border: 1px solid var(--line-color);
  border-radius: 50%;
  color: var(--mute);
  font-size: 0.9rem;
  line-height: 1;
  transition: color 0.2s ease, border-color 0.2s ease;
}
.form_block .fb-captcha .btn-captcha:hover {
  color: var(--first-color);
  border-color: var(--first-color);
}
.form_block .fb-captcha .captcha-input {
  flex: 1 1 auto;
  margin: 0;
  /* Plávajúci label sa v 1b nepoužíva - polia majú len placeholder, inak sa ten istý
         text zobrazí dvakrát pod sebou. `!important` je nutné: partial je zdieľaný s
         ostatnými form_typ_* a label tam nesie bootstrapovú `.d-inline-block`, ktorá
         sama `!important` je. */
}
.form_block .fb-captcha .captcha-input .anime-label {
  display: none !important;
}
.form_block .fb-captcha input[name="captcha"] {
  width: 100%;
  background: #fff;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  padding: 0.875rem 1.125rem;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--ink);
}
.form_block .fb-captcha input[name="captcha"]:focus {
  outline: none;
  border-color: var(--first-color);
}
.form_block .fb-submit {
  width: 100%;
  border: 0;
  cursor: pointer;
  background: var(--first-color);
  color: #fff;
  border-radius: 5rem;
  padding: 1rem 1.5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  transition: background 0.2s ease, transform 0.2s ease;
}
.form_block .fb-submit:hover {
  background: #123020;
  transform: translateY(-1px);
}
.form_block .fb-alert {
  border-radius: var(--radius-sm);
  padding: 0.85rem 1.1rem;
  margin-bottom: 0.75rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9rem;
}
.form_block .fb-alert.fb-alert-ok {
  background: #E6F4EC;
  color: #14663f;
}
.form_block .fb-alert.fb-alert-error {
  background: #FBE9E7;
  color: #b5382c;
}
.form_block .d-none {
  display: none;
}
.form_block .fb-submit:disabled {
  opacity: 0.7;
  cursor: progress;
  transform: none;
}
.form_block .fb-sent {
  display: flex;
  gap: 0.875rem;
  align-items: flex-start;
  padding: 1.25rem;
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.form_block .fb-sent__ic {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--green-50, #E6F4EC);
  color: var(--accent-text, #14663f);
}
.form_block .fb-sent__ic svg {
  width: 1.25rem;
  height: 1.25rem;
}
.form_block .fb-sent b {
  color: var(--ink);
}
.form_block .fb-sent p {
  margin: 0.25rem 0 0.5rem;
  color: var(--warm);
  font-size: 0.9375rem;
}
.form_block .fb-sent .fb-link {
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  font-weight: 600;
  font-size: 0.9375rem;
}
@media (max-width: 575.98px) {
  .form_block .fb-grid {
    grid-template-columns: 1fr;
  }
  .form_block .fb-col-6 {
    grid-column: 1 / -1;
  }
  .form_block .fb-card {
    padding: 1.35rem;
  }
}
/* Footer (Šablóna 1b) - tmavozelený, 4 stĺpce + spodná lišta.
   Figma: Homepage Modern, node 1699:33. */
.footer_menu {
  background: var(--dark-surface);
  padding: 4rem 0 2rem;
  font-family: var(--second-font);
}
.footer_menu a,
.footer_menu a:visited {
  color: var(--on-dark-text-mute);
  text-decoration: none;
  transition: var(--trans-200);
}
.footer_menu a:hover,
.footer_menu a:visited:hover {
  color: var(--on-dark-text);
}
.footer_menu .footer-main {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2.5rem 3rem;
}
.footer_menu .footer-brand {
  max-width: 20rem;
}
.footer_menu .footer-brand .footer-logo {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: 1.625rem;
  color: var(--on-dark-text);
  margin-bottom: 0.875rem;
}
.footer_menu .footer-brand .footer-desc {
  font-size: 0.875rem;
  line-height: 1.375rem;
  color: var(--on-dark-text-mute);
  margin-bottom: 0;
}
.footer_menu .footer-brand .footer-social {
  display: flex;
  gap: 0.875rem;
  margin-top: 1.25rem;
}
.footer_menu .footer-brand .footer-social a {
  display: inline-flex;
}
.footer_menu .footer-brand .footer-social a svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentColor;
}
.footer_menu .footer-col h2 {
  font-family: var(--second-font);
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--on-dark-text);
  margin-bottom: 1rem;
}
.footer_menu .footer-col .footer-links {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  font-size: 0.875rem;
  color: var(--on-dark-text-mute);
}
.footer_menu .footer-col .footer-contact-row {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.footer_menu .footer-col .footer-contact-row .f-icon {
  display: inline-flex;
  color: var(--accent-color);
}
.footer_menu .footer-col .footer-contact-row .f-icon svg {
  width: 1.0625rem;
  height: 1.0625rem;
  fill: currentColor;
}
.footer_menu .footer-line {
  height: 1px;
  background: var(--on-dark-line);
  margin: 2rem 0;
}
.footer_menu .footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  font-size: 0.8125rem;
  color: var(--on-dark-text-mute);
}
.footer_menu .footer-bottom .copywrite {
  margin-bottom: 0;
}
.footer_menu .footer-bottom .footer-legal {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  /* oddeľovacia bodka medzi odkazmi */
}
.footer_menu .footer-bottom .footer-legal .pointer {
  cursor: pointer;
  transition: var(--trans-200);
}
.footer_menu .footer-bottom .footer-legal .pointer:hover {
  color: var(--on-dark-text);
}
.footer_menu .footer-bottom .footer-legal > * + *::before {
  content: "·";
  margin-right: 0.5rem;
  color: var(--on-dark-text-mute);
}
@media (max-width: 767.98px) {
  .footer_menu {
    padding: 3rem 0 1.5rem;
  }
  .footer_menu .footer-main {
    flex-direction: column;
    gap: 2.25rem;
  }
  .footer_menu .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
    /* odkazy sa zalamujú celé (nie po slovách); bodky by pri zalomení viseli na začiatku riadku -> preč */
  }
  .footer_menu .footer-bottom .footer-legal {
    flex-wrap: wrap;
    gap: 0.5rem 1.25rem;
    line-height: 1.5;
  }
  .footer_menu .footer-bottom .footer-legal > * {
    white-space: nowrap;
  }
  .footer_menu .footer-bottom .footer-legal > * + *::before {
    content: none;
  }
}
/* Pätička - veľký pás s výzvou (Šablóna 1b). Navrchu CTA pás v štýle `_cta_band.less`,
   pod ním rovnaké stĺpce ako `_footer_menu.less` (iný outer wrapper, preto vlastné pravidlá). */
.footer_cta {
  background: var(--dark-surface);
  padding: 4rem 0 2rem;
  font-family: var(--second-font);
}
.footer_cta a,
.footer_cta a:visited {
  color: var(--on-dark-text-mute);
  text-decoration: none;
  transition: var(--trans-200);
}
.footer_cta a:hover,
.footer_cta a:visited:hover {
  color: var(--on-dark-text);
}
.footer_cta .footer-cta-band {
  text-align: center;
  padding-bottom: 3rem;
}
.footer_cta .footer-cta-band .cta-text span {
  display: block;
}
.footer_cta .footer-cta-band .cta-text span h2 {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: clamp(1.75rem, calc(1.3rem + 1.6vw), 2.5rem);
  line-height: 1.25;
  color: var(--on-dark-text);
  margin: 0 0 0.75rem;
}
.footer_cta .footer-cta-band .cta-text span p {
  font-family: var(--second-font);
  font-size: 1.0625rem;
  line-height: 1.4;
  color: var(--on-dark-text-mute);
  margin: 0;
}
.footer_cta .footer-cta-band .cta-btn {
  display: inline-flex;
  align-items: center;
  margin-top: 1.5rem;
  padding: 1.0625rem 2rem;
  border-radius: 5rem;
  background: var(--btn-second-bg);
  color: var(--btn-second-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  white-space: nowrap;
  transition: background 0.2s ease, transform 0.2s ease;
}
.footer_cta .footer-cta-band .cta-btn:hover,
.footer_cta .footer-cta-band .cta-btn:focus {
  background: var(--btn-second-bg-hover);
  color: var(--btn-second-color-hover);
  transform: translateY(-1px);
}
.footer_cta .footer-main {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2.5rem 3rem;
  padding: 3rem 0;
}
.footer_cta .footer-brand {
  max-width: 20rem;
}
.footer_cta .footer-brand .footer-logo {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: 1.625rem;
  color: var(--on-dark-text);
  margin-bottom: 0.875rem;
}
.footer_cta .footer-brand .footer-desc {
  font-size: 0.875rem;
  line-height: 1.375rem;
  color: var(--on-dark-text-mute);
  margin-bottom: 0;
}
.footer_cta .footer-brand .footer-social {
  display: flex;
  gap: 0.875rem;
  margin-top: 1.25rem;
}
.footer_cta .footer-brand .footer-social a {
  display: inline-flex;
}
.footer_cta .footer-brand .footer-social a svg {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentColor;
}
.footer_cta .footer-col h2 {
  font-family: var(--second-font);
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--on-dark-text);
  margin-bottom: 1rem;
}
.footer_cta .footer-col .footer-links {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  font-size: 0.875rem;
  color: var(--on-dark-text-mute);
}
.footer_cta .footer-col .footer-contact-row {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.footer_cta .footer-col .footer-contact-row .f-icon {
  display: inline-flex;
  color: var(--accent-color);
}
.footer_cta .footer-col .footer-contact-row .f-icon svg {
  width: 1.0625rem;
  height: 1.0625rem;
  fill: currentColor;
}
.footer_cta .footer-line {
  height: 1px;
  background: var(--on-dark-line);
  margin: 0 0 2rem;
}
.footer_cta .footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  font-size: 0.8125rem;
  color: var(--on-dark-text-mute);
}
.footer_cta .footer-bottom .copywrite {
  margin-bottom: 0;
}
.footer_cta .footer-bottom .footer-legal {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.footer_cta .footer-bottom .footer-legal > * + *::before {
  content: "·";
  margin-right: 0.5rem;
  color: var(--on-dark-text-mute);
}
@media (max-width: 767.98px) {
  .footer_cta {
    padding: 3rem 0 1.5rem;
  }
  .footer_cta .footer-cta-band {
    padding-bottom: 2.25rem;
  }
  .footer_cta .footer-main {
    flex-direction: column;
    gap: 2.25rem;
    padding: 2.25rem 0;
  }
  .footer_cta .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .footer_cta .footer-bottom .footer-legal {
    flex-wrap: wrap;
    gap: 0.5rem 1.25rem;
    line-height: 1.5;
  }
  .footer_cta .footer-bottom .footer-legal > * {
    white-space: nowrap;
  }
  .footer_cta .footer-bottom .footer-legal > * + *::before {
    content: none;
  }
}
/* Pätička - minimálna (Šablóna 1b). Kompaktná verzia na jeden-dva riadky -
   logo, odkazy, kontakt, sociálne siete, copyright. */
.footer_minimal {
  background: var(--dark-surface);
  padding: 1.75rem 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
}
.footer_minimal a,
.footer_minimal a:visited {
  color: var(--on-dark-text-mute);
  text-decoration: none;
  transition: var(--trans-200);
}
.footer_minimal a:hover,
.footer_minimal a:visited:hover {
  color: var(--on-dark-text);
}
.footer_minimal .footer-min-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 2rem;
}
.footer_minimal .footer-min-brand .footer-logo {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: 1.1875rem;
  color: var(--on-dark-text);
  margin: 0;
}
.footer_minimal .footer-min-links,
.footer_minimal .footer-min-contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem 1.25rem;
  list-style: none;
  margin: 0;
  padding: 0;
  color: var(--on-dark-text-mute);
}
.footer_minimal .footer-min-contact li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.footer_minimal .footer-min-contact li .f-icon {
  display: inline-flex;
  color: var(--accent-color);
}
.footer_minimal .footer-min-contact li .f-icon svg {
  width: 0.9375rem;
  height: 0.9375rem;
  fill: currentColor;
}
.footer_minimal .footer-min-social {
  display: flex;
  gap: 0.75rem;
  margin-left: auto;
}
.footer_minimal .footer-min-social a {
  display: inline-flex;
}
.footer_minimal .footer-min-social a svg {
  width: 1.125rem;
  height: 1.125rem;
  fill: currentColor;
}
.footer_minimal .footer-min-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem 1rem;
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--on-dark-line);
  font-size: 0.8125rem;
  color: var(--on-dark-text-mute);
}
.footer_minimal .footer-min-bottom .copywrite {
  margin: 0;
}
@media (max-width: 575.98px) {
  .footer_minimal .footer-min-row {
    flex-direction: column;
    align-items: flex-start;
  }
  .footer_minimal .footer-min-social {
    margin-left: 0;
  }
}
#ajaxFormPreloader {
  position: absolute;
  top: 0;
  width: 100%;
  left: 0;
  height: 100%;
  z-index: 100;
  background: rgba(255, 255, 255, 0.4);
}
#ajaxFormPreloader.hidden {
  display: none;
}
#ajaxFormPreloader #preloadContent {
  top: 50%;
  position: relative;
  text-align: center;
  font-size: 4em;
  color: var(--second-color);
}
#ajaxFormPreloader #preloadContent span {
  display: block;
  animation: spin 2s linear infinite;
}
.tempPreloader {
  position: absolute;
  background: var(--grey-300);
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: auto;
  z-index: 1060;
  opacity: 0.95;
  text-align: center;
  padding-top: 4rem;
}
.tempPreloader.absolute {
  position: absolute;
}
.tempPreloader:not(.visible) {
  display: none;
}
.tempPreloader p {
  font-size: 2rem;
  font-weight: bolder;
  position: absolute;
  top: 30%;
  left: calc(50% - 5.5rem);
  color: var(--black-color);
}
.tempPreloader p svg {
  stroke: var(--black-color);
  width: 2rem;
  height: 2rem;
  -webkit-animation: rotation 1.5s infinite linear;
}
#pagination .pagination li a {
  font-weight: 600;
  color: var(second-color);
  border-radius: 0.25rem;
  -webkit-transition: all 200ms linear;
  -moz-transition: all 200ms linear;
  -ms-transition: all 200ms linear;
  -o-transition: all 200ms linear;
  transition: all 200ms linear;
}
#pagination .pagination li a:hover {
  color: var(second-color);
  background-color: var(--white-color);
  border-color: var(--first-color);
  -webkit-transition: all 200ms linear;
  -moz-transition: all 200ms linear;
  -ms-transition: all 200ms linear;
  -o-transition: all 200ms linear;
  transition: all 200ms linear;
}
#pagination .pagination li.disabled {
  opacity: 0.55;
}
#pagination .pagination li.active a {
  color: var(--white-color);
  background-color: var(--first-color);
  border-color: var(--first-color);
}
#pagination .pagination li.active a:hover,
#pagination .pagination li.active a:active {
  color: var(--white-color);
  background-color: var(--first-color);
  border-color: var(--first-color);
}
.listings_slider .splide__pagination {
  bottom: -1.5rem;
}
@media (max-width: 996px) {
  .listings_slider .splide__pagination {
    bottom: -1rem;
  }
}
/* ---------------------------------------------------------------------------
   Karta nehnuteľnosti + zoznam/slider - Šablóna 1b (Figma "Vybrané nehnuteľnosti")
   --------------------------------------------------------------------------- */
.listings_grid {
  position: relative;
  padding: 0 0 3rem;
  /* ---- karta ---- */
  /* hover (celá karta je <a>) */
  /* ---- hlavička sekcie: nadpis (vľavo) + šípky (vpravo) ---- */
  /* vlastné slider šípky = kruhové obrysové tlačidlá (napojené na Splide API cez @click) */
  /* ---- slider track (Alpine + CSS scroll-snap, bez knižnice) ---- */
  /* vertikálny + horizontálny padding, aby sa hover tieň karty neorezal */
}
.listings_grid a {
  text-decoration: none;
  color: inherit;
  display: block;
  height: 100%;
}
.listings_grid .prop-card {
  background: var(--six-color);
  /* teplá biela */
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  /* 14px */
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
  transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
}
.listings_grid .prop-card__media {
  position: relative;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--cream-2);
}
.listings_grid .prop-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.5s ease;
}
.listings_grid .prop-card__img.is-blank {
  object-position: 50% 76%;
}
.listings_grid .prop-card__badge {
  position: absolute;
  top: 0.875rem;
  left: 0.875rem;
  background: var(--warm-white);
  color: var(--first-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  /* 12px */
  line-height: 1;
  letter-spacing: 0.01em;
  padding: 0.5rem 0.875rem;
  border-radius: 100px;
  box-shadow: 0 2px 8px rgba(28, 28, 26, 0.12);
}
.listings_grid .prop-card__body {
  padding: 1.25rem 1.375rem 1.375rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.listings_grid .prop-card__location {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  /* 12px - menej sa pri verzálkach ťažko číta (audit 17. 10.) */
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--mute);
  margin-bottom: 0.5rem;
}
.listings_grid .prop-card__title {
  font-family: var(--first-font);
  /* Fraunces */
  font-weight: 500;
  font-size: 1.1875rem;
  /* 19px */
  line-height: 1.25;
  color: var(--ink);
  margin: 0 0 0.75rem;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: var(--line-color);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.listings_grid .prop-card__specs {
  font-family: var(--second-font);
  font-weight: 400;
  font-size: 0.875rem;
  /* 14px */
  color: var(--warm);
  margin-bottom: 1rem;
}
.listings_grid .prop-card__footer {
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid var(--line-color);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.listings_grid .prop-card__price {
  font-family: var(--first-font);
  font-weight: 600;
  font-size: 1.375rem;
  /* 22px */
  color: var(--first-color);
  white-space: nowrap;
}
.listings_grid .prop-card__price small {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--warm);
}
.listings_grid .prop-card__price--agreement {
  font-size: 1.0625rem;
}
.listings_grid .prop-card__detail {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--accent-text);
  white-space: nowrap;
  transition: color 0.2s ease;
}
.listings_grid a:hover .prop-card,
.listings_grid .pl-slide:hover .prop-card {
  box-shadow: 0 16px 40px -18px rgba(28, 28, 26, 0.28);
  border-color: var(--cream-2);
  transform: translateY(-3px);
}
.listings_grid a:hover .prop-card .prop-card__img,
.listings_grid .pl-slide:hover .prop-card .prop-card__img {
  transform: scale(1.04);
}
.listings_grid a:hover .prop-card .prop-card__detail,
.listings_grid .pl-slide:hover .prop-card .prop-card__detail {
  color: var(--accent-color-hover);
}
.listings_grid .pl-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 2rem;
}
.listings_grid .section-title {
  margin-bottom: 0;
}
.listings_grid .section-title h2,
.listings_grid .section-title .h2 {
  font-family: var(--first-font);
  color: var(--first-color);
  margin: 0;
}
.listings_grid .pl-arrows {
  display: flex;
  gap: 0.625rem;
  flex-shrink: 0;
}
.listings_grid .pl-arrow {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: transparent;
  border: 1px solid var(--line-color);
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
.listings_grid .pl-arrow svg {
  width: 1.15rem;
  height: 1.15rem;
  display: block;
}
.listings_grid .pl-arrow:hover {
  background: var(--first-color);
  border-color: var(--first-color);
  color: var(--warm-white);
}
.listings_grid .pl-arrow:disabled {
  opacity: 0.35;
  cursor: default;
}
.listings_grid .pl-arrow:disabled:hover {
  background: transparent;
  border-color: var(--line-color);
  color: var(--ink);
}
@media (max-width: 575.98px) {
  .listings_grid .pl-arrows {
    display: none;
  }
}
.listings_grid .pl-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 4.5rem) / 4);
  /* 4 karty, 3× 1.5rem gap */
  gap: 1.5rem;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  padding: 0.75rem 0.5rem 0.75rem;
  margin: -0.75rem -0.5rem 0;
  /* bez scrollbaru (nahrádzajú ho bodky) */
  scrollbar-width: none;
  cursor: grab;
  /* počas mouse-dragu vypnutý snap, nech track nekmitá */
}
.listings_grid .pl-track::-webkit-scrollbar {
  display: none;
}
.listings_grid .pl-track.is-drag {
  scroll-snap-type: none;
  cursor: grabbing;
  user-select: none;
}
@media (max-width: 1199.98px) {
  .listings_grid .pl-track {
    grid-auto-columns: calc((100% - 3rem) / 3);
  }
}
@media (max-width: 991.98px) {
  .listings_grid .pl-track {
    grid-auto-columns: calc((100% - 1.5rem) / 2);
  }
}
@media (max-width: 767.98px) {
  .listings_grid .pl-track {
    gap: 1rem;
    grid-auto-columns: calc(100% - 3rem);
    /* 1 karta + 3rem peek ďalšej */
    /* track až po okraj displeja, karty začínajú na okraji obsahu (--page-x) ako nadpis;
         snap drží ten istý okraj aj pri ďalších kartách */
    margin-left: calc(-1 * var(--page-x));
    margin-right: calc(-1 * var(--page-x));
    padding-left: var(--page-x);
    padding-right: var(--page-x);
    scroll-padding-inline: var(--page-x);
  }
}
.listings_grid .pl-slide {
  position: relative;
  /* srdiečko .ls-card__save v rohu fotky */
  scroll-snap-align: start;
  min-width: 0;
  display: block;
  user-select: none;
}
.listings_grid .pl-slide__link {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
  -webkit-user-drag: none;
  /* <a> karta sa nesmie ťahať ako natívny drag */
}
.listings_grid .pl-dots {
  display: flex;
  justify-content: center;
  gap: 0;
  margin-top: 0.75rem;
  /* tlačidlo 24 px (dotykový cieľ), bodka 8 px je ::before - vyzerá rovnako ako predtým */
}
.listings_grid .pl-dots button {
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.listings_grid .pl-dots button::before {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--cream-2);
  transition: background 0.2s ease, transform 0.2s ease;
}
.listings_grid .pl-dots button.is-active::before {
  background: var(--accent-color);
  transform: scale(1.15);
}
.listings_grid.listings_slider {
  position: relative;
}
/* Širší kontajner, lišta nad výpisom, prepínač zobrazenia (mriežka 5/4/zoznam) a mapa
   (listings_search widget) sú v `_listings_search.less`/`_toolbar_1b.less`/`_map_1b.less` -
   vlastný LESS na widget/partial, rovnaké meno (Jozefovo pravidlo 6. 11.). */
/* ---------------------------------------------------------------------------
   Stránkovač výpisu (`?strana=N`) - Šablóna 1b, pilulky (žiadne hranaté
   bootstrapové tlačidlá). docs/dev/listing-pager.md.
   --------------------------------------------------------------------------- */
.listing-pager {
  margin-top: 1rem;
  transition: opacity 0.2s ease;
  /* Jeden riadok: Hore (vľavo) - Načítať ďalších + súhrn (stred) - čísla strán (vpravo). */
  /* & &-btn = .listing-pager .listing-pager-btn - musí prebiť `.listings_grid a { display: block; height: 100% }` vyššie */
  /* Mobil: Hore vľavo (len ikonka), stred na celú šírku, čísla strán pod ním. */
}
.listing-pager.is-loading {
  opacity: 0.55;
  pointer-events: none;
}
.listing-pager-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.listing-pager-side {
  flex: 1 0 auto;
  display: flex;
}
.listing-pager-top {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  color: var(--ink);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
}
.listing-pager-top-icon {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 100px;
  background: var(--cream-2);
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  transition: background 0.2s ease;
}
.listing-pager-top:hover .listing-pager-top-icon {
  background: var(--line-color);
}
.listing-pager-main {
  flex: 0 1 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.625rem;
}
.listing-pager-prev-link {
  background: none;
  border: 0;
  padding: 0;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
  text-decoration: underline;
  text-decoration-color: var(--line-color);
  cursor: pointer;
}
.listing-pager-prev-link:hover {
  color: var(--ink);
}
.listing-pager-prev-link[hidden] {
  display: none;
}
.listing-pager-load-more {
  border-radius: 100px;
  padding: 0.875rem 2rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  /* `.btn-first` je `display:flex` - medzera z textového uzla PRED <span> sa orezáva
       ako koncová medzera jej anonymného flex itemu (preto "Načítať ďalších12" bez medzery).
       `gap` namiesto spoliehania sa na znak medzery - spoľahlivé pri flex layoute. */
  gap: 0.3em;
}
.listing-pager-summary {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing-pager-nav {
  flex: 1 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.375rem;
}
.listing-pager .listing-pager-btn {
  min-width: 2.25rem;
  height: 2.25rem;
  padding: 0 0.4rem;
  border-radius: 100px;
  border: 0;
  background: var(--cream-2);
  color: var(--ink);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}
.listing-pager .listing-pager-btn:hover {
  background: var(--line-color);
}
.listing-pager .listing-pager-btn.is-active {
  background: var(--first-color);
  color: var(--warm-white);
  cursor: default;
}
.listing-pager-arrow {
  font-size: 1rem;
}
.listing-pager-ellipsis {
  color: var(--mute);
  padding: 0 0.25rem;
}
@media (max-width: 47.998rem) {
  .listing-pager-row {
    justify-content: center;
  }
  .listing-pager-side {
    flex: 0 0 auto;
    order: 1;
  }
  .listing-pager-top-label {
    display: none;
  }
  .listing-pager-main {
    flex: 1 1 100%;
    order: 2;
  }
  .listing-pager-nav {
    flex: 1 1 100%;
    order: 3;
    justify-content: center;
  }
}
/* ---------------------------------------------------------------------------
   Widget `listings_search.php` (Šablóna 1b) - širší kontajner, rozloženie
   zoznam/mapa, prepínač zobrazenia (mriežka 5/mriežka 4/na šírku). Lišta nad
   výpisom je v `_toolbar_1b.less`, mapa v `_map_1b.less`.
   --------------------------------------------------------------------------- */
/* Širší kontajner výpisu (nie Bootstrap .container - ten je nad 1600px capnutý
   na 1275px, style.less) - voľná trieda pre pole "Rozloženie" widgetu v admine. */
.container-listing-wide,
.listings_search > .container {
  max-width: 112.5rem;
  /* 1800px */
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(1.25rem, 3vw, 3rem);
  padding-right: clamp(1.25rem, 3vw, 3rem);
}
/* ---- rozloženie: zoznam vľavo, mapa vpravo (desktop split-view) ---- */
.listing-body {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
.listing-main {
  flex: 1 1 auto;
  min-width: 0;
}
/* ---------------------------------------------------------------------------
   Stĺpce výpisu - CSS grid namiesto Bootstrap row/col, prepína sa len atribútom
   `data-view` na wrapperi; karta (`.prop-card`, `_listings.less`) sa nemení,
   len sa CSS prerozloží.
   --------------------------------------------------------------------------- */
.listing-cards-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(3, 1fr);
  /* `_cards.php` dedí pôvodný Bootstrap wrapper <a class="card-group"> - v grid layoute
     nepotrebuje vlastnú šírku/padding (tie dáva `grid-template-columns`/`gap`). */
}
.listing-cards-grid > a.card-group {
  width: auto;
  max-width: none;
  padding: 0;
  margin: 0;
  flex: none;
}
.listing-cards-grid[data-view="grid4"] {
  grid-template-columns: repeat(4, 1fr);
}
.listing-cards-grid[data-view="grid5"] {
  grid-template-columns: repeat(4, 1fr);
}
.listing-cards-grid[data-view="list"] {
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 100rem) {
  .listing-cards-grid {
    /* 1600px - až tu je priestor na 5 pohodlných kariet */
  }
  .listing-cards-grid[data-view="grid5"] {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (max-width: 87.499rem) {
  .listing-cards-grid {
    /* 1400px */
  }
  .listing-cards-grid[data-view="grid5"],
  .listing-cards-grid[data-view="grid4"] {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 61.999rem) {
  .listing-cards-grid {
    /* 992px */
  }
  .listing-cards-grid[data-view="grid5"],
  .listing-cards-grid[data-view="grid4"] {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 47.998rem) {
  .listing-cards-grid {
    /* 768px */
  }
  .listing-cards-grid[data-view="grid5"],
  .listing-cards-grid[data-view="grid4"] {
    grid-template-columns: 1fr;
  }
}
/* Mapa zapnutá (`.listing-body.has-map`) = výpis je užší (zdieľa šírku s mapou) -> menej stĺpcov. */
.listing-body.has-map .listing-cards-grid[data-view="grid5"] {
  grid-template-columns: repeat(3, 1fr);
}
.listing-body.has-map .listing-cards-grid[data-view="grid4"] {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 87.499rem) {
  .listing-body.has-map .listing-cards-grid[data-view="grid5"],
  .listing-body.has-map .listing-cards-grid[data-view="grid4"] {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 67.5rem) {
  .listing-body.has-map .listing-cards-grid {
    /* 1080px */
  }
  .listing-body.has-map .listing-cards-grid[data-view="grid5"],
  .listing-body.has-map .listing-cards-grid[data-view="grid4"] {
    grid-template-columns: 1fr;
  }
}
/* "Na šírku" (zoznam) - tá istá .prop-card, len horizontálny layout (foto vľavo, telo vpravo) */
.listing-cards-grid[data-view="list"] .prop-card {
  flex-direction: row;
  align-items: stretch;
}
.listing-cards-grid[data-view="list"] .prop-card__media {
  width: 17rem;
  flex-shrink: 0;
  aspect-ratio: auto;
  height: auto;
}
.listing-cards-grid[data-view="list"] .prop-card__body {
  flex: 1;
}
@media (max-width: 47.998rem) {
  .listing-cards-grid[data-view="list"] .prop-card {
    flex-direction: column;
  }
  .listing-cards-grid[data-view="list"] .prop-card__media {
    width: auto;
    aspect-ratio: 3 / 2;
    height: auto;
  }
}
/* ---------------------------------------------------------------------------
   Partial `_toolbar_1b.php` (Šablóna 1b) - lišta nad výpisom: počet, prepínač
   zobrazenia, Filter, Zoradiť, Mapa.
   --------------------------------------------------------------------------- */
.listing-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.listing-toolbar-count {
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--warm);
}
.listing-toolbar-count strong {
  color: var(--ink);
  font-weight: 700;
}
.listing-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
/* pilulka s viacerými voľbami vnútri (prepínač zobrazenia) */
.lt-view-switch {
  display: inline-flex;
  background: var(--cream);
  border-radius: 100px;
  padding: 0.25rem;
  gap: 0.125rem;
}
.lt-view-btn {
  width: 2.5rem;
  height: 2.375rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  border-radius: 100px;
  color: var(--mute);
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.lt-view-btn svg {
  width: 1.125rem;
  height: 1.125rem;
  display: block;
}
.lt-view-btn:hover {
  color: var(--ink);
}
.lt-view-btn.is-active {
  background: var(--warm-white);
  color: var(--first-color);
  box-shadow: 0 1px 3px rgba(28, 28, 26, 0.12);
}
/* samostatné pilulkové tlačidlo (Filter / Zoradiť / Mapa) */
.lt-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.75rem;
  padding: 0 1.125rem;
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: 100px;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--ink);
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  white-space: nowrap;
}
.lt-pill svg {
  width: 1.0625rem;
  height: 1.0625rem;
  flex-shrink: 0;
  display: block;
}
.lt-pill:hover {
  background: var(--cream);
}
.lt-pill.is-active,
.lt-pill[aria-pressed="true"] {
  background: var(--first-color);
  border-color: var(--first-color);
  color: var(--warm-white);
}
.lt-sort-wrap {
  position: relative;
}
.lt-sort-dropdown {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  z-index: 20;
  background: var(--warm-white);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-4);
  min-width: 14rem;
  padding: 0.5rem;
  display: none;
}
.lt-sort-dropdown.is-open {
  display: block;
}
.lt-sort-item {
  display: block;
  width: 100%;
  text-align: left;
  border: 0;
  background: transparent;
  padding: 0.625rem 0.75rem;
  border-radius: 0.5rem;
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--ink);
  text-decoration: none;
  cursor: pointer;
}
.lt-sort-item:hover {
  background: var(--cream);
}
.lt-sort-item.is-active {
  color: var(--accent-text);
  font-weight: 600;
}
/* Filter widget sa zbaľuje/rozbaľuje z lišty nižšie (iný widget nad výpisom) */
.product_filter.pf-toolbar-hidden {
  display: none;
}
/* ---------------------------------------------------------------------------
   Partial `_map_1b.php` (Šablóna 1b, lišta "Mapa") - Leaflet + markercluster +
   gesture-handling. docs/dev/listing-view.md. Rozloženie zoznam/mapa
   (`.listing-body`/`.listing-main`) je v `_listings_search.less`.
   --------------------------------------------------------------------------- */
.listing-map {
  display: none;
  flex: 0 0 0;
  width: 0;
}
.listing-body.has-map .listing-map {
  display: block;
  flex: 0 0 42%;
  width: 42%;
  position: sticky;
  /* pozičná kotva pre .map-layer-switch / .listing-map-loading / .listing-map-back (absolute) -
     bez nej by sa vzťahovali k najbližšiemu pozičnému predkovi, nie k tomuto panelu. */
  top: 6rem;
  height: calc(100vh - 8rem);
  min-height: 24rem;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--cream);
}
@media (max-width: 87.499rem) {
  /* 1400px - mapa trochu širšia na stredných šírkach */
  .listing-body.has-map .listing-map {
    flex-basis: 46%;
    width: 46%;
  }
}
.listing-map-canvas-wrap {
  position: relative;
  width: 100%;
  height: 100%;
}
.listing-map-canvas {
  width: 100%;
  height: 100%;
}
.listing-map-loading {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--mute);
  background: var(--cream);
  z-index: 5;
}
/* "Späť na zoznam" - len na mobile (fullscreen), desktop ho skryje */
.listing-map-back {
  display: none;
}
/* ---- prepínač Mapa / Satelit ---- */
.map-layer-switch {
  position: absolute;
  left: 0.75rem;
  bottom: 0.75rem;
  z-index: 400;
  /* nad Leaflet dlaždicami, pod jeho vlastnými ovládačmi */
  display: flex;
  background: var(--warm-white);
  border-radius: 100px;
  padding: 0.25rem;
  box-shadow: var(--shadow-4);
  gap: 0.125rem;
}
.map-layer-switch button {
  border: 0;
  background: transparent;
  padding: 0.5rem 0.9rem;
  border-radius: 100px;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
  color: var(--mute);
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.map-layer-switch button:hover {
  color: var(--ink);
}
.map-layer-switch button.is-active {
  background: var(--first-color);
  color: var(--warm-white);
}
/* ---- cenová bublina na pine ---- */
.map-price-pin-anchor {
  background: none;
  border: 0;
}
.map-price-pin {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  background: var(--warm-white);
  color: var(--ink);
  border: 1px solid var(--line-color);
  border-radius: 100px;
  padding: 0.375rem 0.75rem;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.8125rem;
  box-shadow: var(--shadow-3);
  cursor: pointer;
  transform: translate(-50%, -100%);
  /* malá bodka namiesto bubliny, keď inzerát nemá cenu (dohoda) */
}
.map-price-pin small {
  font-weight: 500;
  margin-left: 0.15em;
  color: var(--mute);
}
.map-price-pin:hover {
  background: var(--first-color);
  color: var(--warm-white);
  border-color: var(--first-color);
}
.map-price-pin:hover small {
  color: var(--on-dark-text-mute);
}
.map-price-pin--dot {
  padding: 0;
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 50%;
  background: var(--accent-color);
  border-color: var(--accent-color);
}
/* zhluky (Leaflet.markercluster) - preladené do značkovej palety namiesto default zeleno-žltej */
.marker-cluster-small,
.marker-cluster-medium,
.marker-cluster-large {
  background-clip: padding-box;
  background-color: rgba(23, 61, 43, 0.25);
}
.marker-cluster-small div,
.marker-cluster-medium div,
.marker-cluster-large div {
  width: 2.25rem;
  height: 2.25rem;
  margin-left: 0.3125rem;
  margin-top: 0.3125rem;
  text-align: center;
  border-radius: 50%;
  background-color: var(--first-color);
  color: var(--warm-white);
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.8125rem;
  line-height: 2.25rem;
}
/* ---- popup na kliknutý pin ---- */
.leaflet-popup.map-popup .leaflet-popup-content-wrapper {
  border-radius: var(--radius-sm);
  padding: 0;
  overflow: hidden;
}
.leaflet-popup.map-popup .leaflet-popup-content {
  margin: 0;
  width: 15.5rem !important;
}
.map-popup-loading {
  padding: 0.75rem;
}
.map-popup-loading__img {
  height: 7.5rem;
  border-radius: 0.5rem;
  background: var(--cream-2);
  margin-bottom: 0.625rem;
}
.map-popup-loading__line {
  height: 0.75rem;
  border-radius: 0.25rem;
  background: var(--cream-2);
  margin-bottom: 0.5rem;
}
.map-popup-error {
  padding: 0.75rem;
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--mute);
}
.map-popup-card {
  display: block;
  text-decoration: none;
  color: inherit;
}
.map-popup-card__media {
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--cream-2);
}
.map-popup-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.map-popup-card__img.is-blank {
  object-fit: contain;
  opacity: 0.45;
  padding: 1.25rem;
}
.map-popup-card__body {
  padding: 0.875rem 1rem 1rem;
}
.map-popup-card__location {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.6875rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--mute);
  margin-bottom: 0.25rem;
}
.map-popup-card__title {
  font-family: var(--first-font);
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.25;
  color: var(--ink);
  margin-bottom: 0.375rem;
}
.map-popup-card__specs {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--warm);
  margin-bottom: 0.625rem;
}
.map-popup-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding-top: 0.625rem;
  border-top: 1px solid var(--line-color);
}
.map-popup-card__price {
  font-family: var(--first-font);
  font-weight: 600;
  font-size: 1rem;
  color: var(--first-color);
  white-space: nowrap;
}
.map-popup-card__price small {
  font-size: 0.6875rem;
  font-weight: 500;
  color: var(--warm);
}
.map-popup-card__cta {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  color: var(--accent-text);
  white-space: nowrap;
}
.map-popup-card:hover .map-popup-card__cta {
  color: var(--accent-color-hover);
}
/* ---------------------------------------------------------------------------
   Mobil (< 992px) - mapa na celú obrazovku namiesto split-view po boku, s
   tlačidlom "Späť na zoznam". Rovnaký DOM element, len iné CSS zaobchádzanie -
   žiadny druhý modal markup netreba.
   --------------------------------------------------------------------------- */
@media (max-width: 61.999rem) {
  .listing-body.has-map .listing-map {
    position: fixed;
    inset: 0;
    z-index: 1070;
    width: 100%;
    height: 100dvh;
    border-radius: 0;
    top: 0;
  }
  .listing-map-back {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    position: absolute;
    top: 0.875rem;
    left: 0.875rem;
    z-index: 410;
    background: var(--warm-white);
    border: 0;
    border-radius: 100px;
    padding: 0.625rem 1.125rem 0.625rem 0.875rem;
    font-family: var(--second-font);
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--ink);
    box-shadow: var(--shadow-4);
    cursor: pointer;
  }
  /* kým je mapa na celú obrazovku, stránka pod ňou sa nesmie posúvať */
  html.rk-map-fullscreen-open {
    overflow: hidden;
  }
}
/* Až za formulármi: `.captcha--turnstile` musí prebiť `.form_typ_* .captcha` (rovnaká
   špecificita, rozhoduje poradie). Viď komentár v _captcha.less. */
/* ============================================================
   CAPTCHA - spoločné pre všetky form_typ_* / newsletter_typ_*
   Typ captchy určuje SERVER (Captcha::resolveType()), šablóna captchy
   pridá modifikátor .captcha--<typ>. Obrázkovú captchu si štýluje každá
   šablóna formulára po svojom (rozdielne karty), tu je len token-based
   Turnstile - ten vyzerá rovnako všade, lebo ho nie je vidieť.
   ============================================================ */
/* Turnstile ide v režime `interaction-only` (viď TurnstileCaptcha::getView()) - kým
   Cloudflare nevypýta interakciu, widget nemá žiadny obsah. Preto tu žiadna rezervovaná
   výška, rámik ani centrovanie: prázdny kontajner musí zabrať 0 px, inak vznikne
   v karte formulára diera. Keď sa widget naozaj vykreslí, `data-size="flexible"` mu dá
   plnú šírku, takže lícuje s poľami.

   Dvojitý selektor `.captcha.captcha--turnstile` + import až na konci style.less: staršie
   šablóny majú vlastné `.form_typ_* .captcha { display: flex; ... }`, ktoré by inak tento
   blok prebili a note-riadok by skončil vedľa widgetu namiesto pod ním. */
.captcha.captcha--turnstile {
  display: block;
  margin: 0;
}
.captcha.captcha--turnstile .cf-turnstile {
  display: block;
  width: 100%;
}
.captcha.captcha--turnstile .cf-turnstile:not(:empty) {
  margin-bottom: 0.625rem;
}
/* Drobný riadok namiesto viditeľného rámčeka captchy. Odkazy na podmienky Cloudflare
   sú tu zámerne - pri skrytom widgete sa očakáva, že web uvedie, čo ho chráni. */
.captcha-note {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.3rem;
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.6875rem;
  line-height: 1.4;
  color: var(--mute);
}
.captcha-note .bi {
  font-size: 0.8125rem;
  opacity: 0.75;
}
.captcha-note .captcha-note-sep {
  opacity: 0.5;
}
.captcha-note a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.2s ease;
}
.captcha-note a:hover {
  color: var(--first-color);
}
@page {
  margin: 1.5cm 1cm;
}
@media print {
  .row-print {
    display: flex !important;
    flex-wrap: wrap !important;
  }
  .col-print-4 {
    flex: 0 0 33% !important;
    max-width: 33% !important;
  }
  .col-print-6 {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
  .col-print-8 {
    flex: 0 0 66.66% !important;
    max-width: 66.66% !important;
  }
  .col-print-12 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  .print-page-1 {
    page-break-after: always !important;
  }
  .no-break-inside {
    page-break-inside: avoid !important;
  }
  .print-page-2 {
    page-break-before: always !important;
  }
  img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    visibility: visible !important;
  }
  .img-fluid,
  .img-thumbnail {
    max-width: 100% !important;
    height: auto !important;
  }
  .img-cover {
    display: block !important;
    max-width: 100% !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  .product-image {
    aspect-ratio: 4/2.5 !important;
    overflow: hidden !important;
    max-height: 260px !important;
  }
  .images-col .image-grid > div:nth-child(n+2) {
    display: none !important;
  }
  /* Skrytie navigácie, pätičky a ďalších sekcií */
  nav,
  footer,
  .sidebar,
  .header,
  .navbar-wrapper {
    display: none;
  }
  body {
    font-family: inherit;
    color: inherit;
    background-color: inherit;
  }
  body * {
    visibility: hidden !important;
    overflow: hidden !important;
  }
  .car-detail,
  .car-detail * {
    visibility: visible !important;
  }
  .car-detail {
    position: absolute !important;
    left: 0;
    top: 0;
    width: 100%;
    padding: 1rem;
    background: white !important;
    color: black !important;
    z-index: 9999;
  }
  .d-print-none {
    display: none !important;
    visibility: hidden !important;
  }
  .car-detail .row {
    display: flex !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
  }
  .car-detail .images-col,
  .car-detail .images-col .image-grid {
    position: static !important;
    top: auto !important;
    overflow: visible !important;
  }
  .car-detail .images-col {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }
  .car-detail .print-price-col {
    width: 49% !important;
    flex: 0 0 49% !important;
    max-width: 49% !important;
    padding-left: 0.75rem !important;
  }
  .car-detail .print-params-full {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 0.4rem !important;
  }
  .car-detail .print-params-full .no-break-inside {
    display: block !important;
    visibility: visible !important;
  }
  .car-detail .print-params-full h2 {
    font-size: 8.5pt !important;
    font-weight: 700 !important;
    margin: 0.4rem 0 0.15rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #666 !important;
    border-bottom: 1px solid #ccc !important;
    padding-bottom: 0.2rem !important;
  }
  .car-detail .print-params-full .top-parameters {
    list-style: none !important;
    padding-left: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
  }
  .car-detail .print-params-full .top-parameters li {
    flex: 0 0 32% !important;
    max-width: 32% !important;
    font-size: 7.5pt !important;
    line-height: 1.3 !important;
    padding: 0.15rem 0.3rem 0.15rem 0 !important;
    border-bottom: 1px solid #e8e8e8 !important;
    display: flex !important;
    flex-direction: row !important;
  }
  .car-detail .print-params-full .top-parameters li .first {
    flex-basis: 45% !important;
    color: #555 !important;
    font-weight: 400 !important;
  }
  .car-detail .print-params-full .top-parameters li .second {
    flex-basis: 55% !important;
    font-weight: 600 !important;
  }
  .car-detail figcaption,
  .car-detail .tag-box {
    display: none !important;
  }
  .print-logo-row {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-bottom: 0.35rem !important;
  }
  .car-detail .print-logo-row img.print-logo {
    max-width: 27% !important;
    max-height: 75px !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
  }
  .print-title-row {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-bottom: 0.45rem !important;
    padding-bottom: 0.35rem !important;
    border-bottom: 1.5px solid #bbb !important;
  }
  .print-title-row h1 {
    font-size: 14.5pt !important;
    font-weight: 700 !important;
    margin: 0 !important;
    line-height: 1.2 !important;
    color: #000 !important;
  }
  .dph-row {
    background: #f4f1eb !important;
    border: 1px solid #ddd !important;
    color: #000 !important;
    padding: 0.5rem 0.6rem !important;
    margin-bottom: 0.4rem !important;
    border-radius: 0.35rem !important;
  }
  .dph-row p {
    margin-bottom: 0.1rem !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
  }
  .dph-row .with-dph,
  .dph-row .without-dph,
  .dph-row .dph {
    display: flex !important;
    flex-direction: row !important;
    gap: 0.25rem !important;
    justify-content: space-between !important;
  }
  .dph-row .with-dph {
    font-size: 9.5pt !important;
    font-family: inherit !important;
  }
  .dph-row .with-dph .price {
    font-weight: 700 !important;
  }
  .dph-row .without-dph {
    font-size: 9pt !important;
    font-family: inherit !important;
  }
  .dph-row .without-dph .price {
    font-weight: 600 !important;
  }
  .dph-row .dph {
    font-size: 7.5pt !important;
    font-family: inherit !important;
    color: #555 !important;
  }
  .dph-row .cennikova-cena,
  .dph-row .zlava {
    font-size: 7.5pt !important;
  }
  .car-detail h2 {
    font-size: 8.5pt !important;
    font-weight: 700 !important;
    margin: 0.4rem 0 0.15rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #666 !important;
  }
  .top-parameters {
    list-style: none !important;
    padding-left: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }
  .top-parameters li {
    flex: none !important;
    max-width: 100% !important;
    font-size: 7.5pt !important;
    line-height: 1.3 !important;
    padding: 0.15rem 0 !important;
    border-bottom: 1px solid #e8e8e8 !important;
  }
  .top-parameters li .first {
    flex-basis: 45% !important;
    color: #555 !important;
    font-weight: 400 !important;
  }
  .top-parameters li .second {
    flex-basis: 55% !important;
    font-weight: 600 !important;
  }
  .car-equipment {
    padding: 0.4rem 0.6rem !important;
    margin-bottom: 0.4rem !important;
    gap: 0.2rem 0.35rem !important;
    border-radius: 0.35rem !important;
  }
  .car-equipment li {
    display: flex !important;
    justify-content: flex-start !important;
    text-align: start !important;
    flex: 0 1 30% !important;
    flex-direction: row !important;
    position: relative !important;
    padding-left: 1rem !important;
    margin-bottom: 0 !important;
    list-style: none !important;
    font-size: 7.5pt !important;
    line-height: 1.3 !important;
  }
  .car-info ul {
    display: block !important;
    columns: 2 !important;
    column-gap: 1rem !important;
    padding-left: 1rem !important;
    margin: 0 0 0.3rem !important;
    gap: unset !important;
  }
  .car-info ul li {
    display: list-item !important;
    flex: none !important;
    max-width: 100% !important;
    list-style: disc !important;
    padding-left: 0 !important;
    margin-bottom: 0.1rem !important;
    font-size: 7.5pt !important;
    line-height: 1.4 !important;
    break-inside: avoid !important;
    color: #000 !important;
  }
  .car-info ul li::before {
    display: none !important;
  }
  .car-info ul a {
    color: #000 !important;
    text-decoration: none !important;
  }
  .car-info h2 {
    font-size: 8.5pt !important;
    font-weight: 700 !important;
    margin: 0.5rem 0 0.2rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #666 !important;
    border-bottom: 1px solid #ddd !important;
    padding-bottom: 0.15rem !important;
  }
}
.user_list_typ_1_3 {
  margin-bottom: 2rem;
}
.user_list_typ_1_3 .makler-info {
  background: var(--grey-300);
  margin-bottom: 1rem;
}
.user_list_typ_1_3 .makler-info .card-body {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  padding: 0;
}
.user_list_typ_1_3 .makler-info .card-body figure {
  aspect-ratio: 1;
  flex: 1 0 33%;
}
.user_list_typ_1_3 .makler-info .card-body .contact {
  flex: 1 0 66%;
  padding: 1rem;
}
.user_list_typ_1_3 .makler-info .card-body .contact .feature {
  margin-bottom: 0;
}
.user_list_typ_1_3 .makler-info .card-body .contact .contact-info {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 0;
}
.user_list_typ_1_3 .makler-info .card-body .contact .contact-info .phone,
.user_list_typ_1_3 .makler-info .card-body .contact .contact-info .email {
  margin: 0;
}
.user_list_typ_1_3 .makler-info .card-body .contact .contact-info .phone a,
.user_list_typ_1_3 .makler-info .card-body .contact .contact-info .email a {
  text-decoration: none;
}
/* ============================================================
   RECENZIE / REFERENCIE - reviews_section (Šablóna 1b, Figma node 1699:9)
   Krémový pás: oranžové hviezdy + veľký Fraunces citát + autor.
   Rotácia (Alpine): slidy v jednej grid bunke, fade cez opacity
   (výška = najvyšší slide, žiadne skákanie layoutu).
   ============================================================ */
.reviews_section {
  background: var(--three-color);
  /* krémová #F5F1E8 */
  padding: 6rem 0;
  /* 96px hore/dole */
  text-align: center;
}
.reviews_section .section-title {
  margin-bottom: 2rem;
}
.reviews_section .review-rotator {
  display: grid;
}
.reviews_section .review-slide {
  grid-area: 1 / 1;
  /* všetky slidy na sebe */
  margin: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.5s ease;
}
.reviews_section .review-slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.reviews_section .review-stars {
  display: flex;
  justify-content: center;
  gap: 0.25rem;
  /* 4px (Figma) */
  font-size: 1.375rem;
  /* 22px */
  line-height: 1;
  color: var(--accent-color);
  /* oranžová #E8863B */
  /* nevyplnená hviezda */
}
.reviews_section .review-stars .off {
  color: var(--line-color);
}
.reviews_section .review-quote {
  background: none;
  /* reset globálneho blockquote */
  border: 0;
  padding: 0;
  font-family: var(--first-font);
  /* Fraunces */
  font-weight: 700;
  /* Bold */
  font-size: clamp(1.5rem, calc(1.05rem + 1.9vw), 2.25rem);
  /* 24 -> 36px */
  line-height: 1.34;
  /* 48/36 (Figma) */
  color: var(--first-color);
  /* zelená #173D2B */
  max-width: 58.75rem;
  /* 940px (Figma) */
  margin: 1.5rem auto 0;
  /* 24px pod hviezdami */
}
.reviews_section .review-author {
  margin-top: 2rem;
  /* 24px gap + 8px pt (Figma) */
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  /* 12px */
}
.reviews_section .review-avatar {
  width: 2.875rem;
  /* 46px */
  height: 2.875rem;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.reviews_section .review-avatar--initials {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--first-color);
  color: var(--on-dark-text);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
}
.reviews_section .review-author-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.0625rem;
  text-align: left;
}
.reviews_section .review-name {
  font-family: var(--second-font);
  /* Manrope */
  font-weight: 600;
  /* SemiBold */
  font-size: 0.9375rem;
  /* 15px */
  color: var(--first-color);
}
.reviews_section .review-role {
  font-family: var(--second-font);
  font-weight: 400;
  font-size: 0.8125rem;
  /* 13px */
  color: var(--eight-color);
  /* jemný text #8A857A */
}
@media (max-width: 767.98px) {
  .reviews_section {
    padding: 4rem 0;
  }
}
.glightbox-clean .goverlay {
  background: var(--black-color);
}
.glightbox-clean .gslide-description .gdesc-inner {
  padding: 0.75rem;
  background: var(--first-color);
  display: flex;
  align-items: center;
  align-content: center;
  justify-content: center;
  flex-direction: row;
}
.glightbox-clean .gslide-description .gdesc-inner h4 {
  color: var(--second-color);
  margin: 0;
}
/* Bloky kolo 1 (27. 10. 2026) */
/* ============================================================
   ČASTÉ OTÁZKY - faq_section
   Akordeón cez natívne <details>/<summary>, vlastný +/- indikátor.
   Voliteľne dva stĺpce na desktope (trieda faq-list--two-col).
   ============================================================ */
.faq_section {
  background: var(--three-color);
  padding: var(--section-y-half) 0;
}
.faq_section .faq-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 48rem;
  margin: 0 auto;
}
@media (min-width: 992px) {
  .faq_section .faq-list--two-col {
    max-width: none;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem 1.5rem;
    align-items: start;
  }
}
.faq_section .faq-item {
  background: var(--six-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 0 1.5rem;
}
.faq_section .faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 0;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 1.0625rem;
  color: var(--first-color);
  cursor: pointer;
  list-style: none;
}
.faq_section .faq-question::-webkit-details-marker {
  display: none;
}
.faq_section .faq-toggle {
  flex: 0 0 auto;
  position: relative;
  width: 1.125rem;
  height: 1.125rem;
}
.faq_section .faq-toggle::before,
.faq_section .faq-toggle::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  background: var(--first-color);
  transform: translate(-50%, -50%);
  transition: var(--trans-200);
}
.faq_section .faq-toggle::before {
  width: 100%;
  height: 2px;
}
.faq_section .faq-toggle::after {
  width: 2px;
  height: 100%;
}
.faq_section details[open] .faq-toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
  opacity: 0;
}
.faq_section .faq-answer {
  padding: 0 0 1.25rem;
  font-family: var(--second-font);
  font-size: var(--p-body);
  line-height: var(--p-body-lh);
  color: var(--seven-color);
}
.faq_section .faq-answer p:last-child {
  margin-bottom: 0;
}
/* ============================================================
   LOGÁ PARTNEROV - logos_section
   Statická mriežka, alebo (trieda logos-row--moving) pomaly bežiaci
   pás - zoznam sa v PHP zdvojí a CSS animácia posúva o -50 %.
   Logá šedé (grayscale), farebné po hoveri. Bez pohybu pri
   prefers-reduced-motion.
   ============================================================ */
.logos_section {
  padding: var(--section-y-half) 0;
  /* bežiaci pás: položky v PHP zdvojené, pás posúva presne o polovicu svojej šírky -> nekonečná slučka bez skoku */
}
.logos_section .logos-row {
  overflow: hidden;
}
.logos_section .logos-track {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: clamp(2rem, 5vw, 4rem);
}
.logos_section .logo-item img {
  display: block;
  max-height: 2.75rem;
  width: auto;
  filter: grayscale(1);
  opacity: 0.6;
  transition: var(--trans-200);
}
.logos_section .logo-item:hover img {
  filter: grayscale(0);
  opacity: 1;
}
.logos_section .logos-row--moving {
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.logos_section .logos-row--moving .logos-track {
  flex-wrap: nowrap;
  justify-content: flex-start;
  width: max-content;
  animation: rk-logos-marquee 28s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .logos_section .logos-row--moving .logos-track {
    animation: none;
  }
}
@keyframes rk-logos-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
/* ============================================================
   CENNÍK / BALÍČKY - pricing_section
   Ako cenník v tlačenom katalógu: bez kariet, stĺpce oddelené tenkou
   čiarou, cena veľkým Frauncesom, odrážky ako riadky s čiarkou.
   Odporúčaný balík (pricing-col--featured) = tmavozelený panel, jeho
   tlačidlo je jediná oranžová plocha sekcie (oranžová len akcent).
   ============================================================ */
.pricing_section {
  padding: var(--section-y-half) 0;
  /* oblé CTA ako všade na webe (cta_band, navbar) - farbu písma drží aj pri hover,
     inak ju prebije globálne a:hover (zelené na oranžovej) */
  /* odporúčaný balík - tmavý panel, presahuje čiary hore aj dole */
  /* tablet a mobil: balíčky pod sebou, čiara medzi nimi vodorovne */
}
.pricing_section .pricing-grid {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  align-items: stretch;
  border-top: 1px solid var(--line-color);
  border-bottom: 1px solid var(--line-color);
}
.pricing_section .pricing-col {
  display: flex;
  flex-direction: column;
  padding: clamp(1.75rem, 3vw, 2.75rem) clamp(1.25rem, 2.5vw, 2.5rem);
}
.pricing_section .pricing-col + .pricing-col {
  border-left: 1px solid var(--line-color);
}
.pricing_section .pricing-eyebrow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.75rem;
  font-family: var(--second-font);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--eight-color);
}
.pricing_section .pricing-name {
  font-family: var(--first-font);
  font-size: var(--h4);
  font-weight: 500;
  color: var(--first-color);
  margin: 0 0 0.75rem;
}
.pricing_section .pricing-price {
  font-family: var(--first-font);
  font-size: calc(1.5rem + 1vw);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--first-color);
  margin-bottom: 1.75rem;
}
.pricing_section .pricing-price p {
  margin: 0;
}
.pricing_section .pricing-desc {
  flex: 1 0 auto;
  font-family: var(--second-font);
  font-size: var(--p-body);
  line-height: var(--p-body-lh);
  color: var(--seven-color);
  margin-bottom: 2rem;
}
.pricing_section .pricing-desc p {
  margin: 0 0 0.75rem;
}
.pricing_section .pricing-desc ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.pricing_section .pricing-desc li {
  padding: 0.7rem 0;
  border-top: 1px solid var(--line-color);
}
.pricing_section .pricing-desc li:last-child {
  border-bottom: 1px solid var(--line-color);
}
.pricing_section .pricing-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  align-self: flex-start;
  margin-top: auto;
  padding-bottom: 0.25rem;
  font-family: var(--second-font);
  font-weight: 600;
  color: var(--first-color);
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}
.pricing_section .pricing-link svg {
  transition: transform 0.2s ease;
}
.pricing_section .pricing-link:hover,
.pricing_section .pricing-link:focus-visible {
  color: var(--second-color);
}
.pricing_section .pricing-link:hover svg,
.pricing_section .pricing-link:focus-visible svg {
  transform: translateX(0.25rem);
}
.pricing_section .pricing-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: auto;
  width: 100%;
  padding: 1.0625rem 2rem;
  border-radius: 5rem;
  background: var(--btn-second-bg);
  color: var(--btn-second-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.2s ease, transform 0.2s ease;
}
.pricing_section .pricing-btn svg {
  transition: transform 0.2s ease;
}
.pricing_section .pricing-btn:hover,
.pricing_section .pricing-btn:focus-visible {
  background: var(--btn-second-bg-hover);
  color: var(--btn-second-color-hover);
  transform: translateY(-1px);
}
.pricing_section .pricing-btn:hover svg,
.pricing_section .pricing-btn:focus-visible svg {
  transform: translateX(0.25rem);
}
.pricing_section .pricing-col--featured {
  position: relative;
  z-index: 1;
  margin: -1px 0;
  background: var(--dark-surface);
  border-radius: var(--radius-md);
  color: var(--on-dark-text);
}
.pricing_section .pricing-col--featured + .pricing-col {
  border-left-color: transparent;
}
.pricing_section .pricing-col--featured .pricing-eyebrow {
  color: var(--on-dark-text-mute);
}
.pricing_section .pricing-col--featured .pricing-flag {
  color: var(--orange-400);
}
.pricing_section .pricing-col--featured .pricing-name,
.pricing_section .pricing-col--featured .pricing-price {
  color: var(--on-dark-text);
}
.pricing_section .pricing-col--featured .pricing-desc {
  color: var(--on-dark-text-mute);
}
.pricing_section .pricing-col--featured .pricing-desc li,
.pricing_section .pricing-col--featured .pricing-desc li:last-child {
  border-color: var(--on-dark-line);
}
@media (min-width: 992px) {
  .pricing_section .pricing-col--featured {
    margin: -1.25rem 0;
    padding-top: calc(clamp(1.75rem, 3vw, 2.75rem) + 1.25rem);
    padding-bottom: calc(clamp(1.75rem, 3vw, 2.75rem) + 1.25rem);
  }
}
.pricing_section .pricing-col + .pricing-col--featured {
  border-left-color: transparent;
}
@media (max-width: 991.98px) {
  .pricing_section .pricing-grid {
    grid-auto-flow: row;
    border-bottom: 0;
  }
  .pricing_section .pricing-col {
    border-bottom: 1px solid var(--line-color);
  }
  .pricing_section .pricing-col + .pricing-col {
    border-left: 0;
  }
  .pricing_section .pricing-col--featured {
    margin: 1rem 0;
    border-bottom: 0;
  }
}
/* ============================================================
   ČASOVÁ OS / HISTÓRIA - timeline_section
   Zvislá os uprostred, karty striedavo vľavo/vpravo. Na mobile
   os prisunutá k ľavému okraju, karty len vpravo od nej (jednostranne).
   ============================================================ */
.timeline_section {
  padding: var(--section-y-half) 0;
  /* mobil: os k ľavému okraju, karty vždy vpravo od nej (jednostranne) */
}
.timeline_section .timeline-list {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
  /* zvislá čiara */
}
.timeline_section .timeline-list::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 2px;
  background: var(--line-color);
  transform: translateX(-50%);
}
.timeline_section .timeline-item {
  position: relative;
  display: flex;
  justify-content: flex-start;
  width: 50%;
  padding: 0 clamp(1.5rem, 3vw, 3rem) clamp(2rem, 4vw, 3rem) 0;
}
.timeline_section .timeline-item.is-flipped {
  margin-left: 50%;
  justify-content: flex-end;
  padding: 0 0 clamp(2rem, 4vw, 3rem) clamp(1.5rem, 3vw, 3rem);
}
.timeline_section .timeline-dot {
  position: absolute;
  top: 0.375rem;
  right: -0.4375rem;
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 50%;
  background: var(--second-color);
  border: 3px solid var(--three-color);
}
.timeline_section .timeline-item.is-flipped .timeline-dot {
  right: auto;
  left: -0.4375rem;
}
.timeline_section .timeline-card {
  max-width: 24rem;
  background: var(--six-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.25rem 1.5rem;
}
.timeline_section .timeline-year {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.25rem;
  color: var(--second-color);
}
.timeline_section .timeline-title {
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 1.0625rem;
  color: var(--first-color);
  margin: 0.25rem 0;
}
.timeline_section .timeline-text {
  font-family: var(--second-font);
  font-size: var(--p-body);
  line-height: var(--p-body-lh);
  color: var(--seven-color);
}
.timeline_section .timeline-img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--radius-sm);
  margin-top: 0.75rem;
}
@media (max-width: 767.98px) {
  .timeline_section .timeline-list::before {
    left: 0.4375rem;
    transform: none;
  }
  .timeline_section .timeline-item,
  .timeline_section .timeline-item.is-flipped {
    width: 100%;
    margin-left: 0;
    justify-content: flex-start;
    padding: 0 0 2rem 2rem;
  }
  .timeline_section .timeline-dot,
  .timeline_section .timeline-item.is-flipped .timeline-dot {
    left: 0;
    right: auto;
  }
  .timeline_section .timeline-card {
    max-width: none;
  }
}
/* ============================================================
   RECENZIE V MRIEŽKE - reviews_grid_section
   Rovnaký jazyk ako _reviews.less (oranžové hviezdy, Fraunces citát),
   len v karte a v mriežke namiesto rotácie. Navrchu súhrn (priemer, počet).
   ============================================================ */
.reviews_grid_section {
  background: var(--three-color);
  padding: var(--section-y) 0;
  /* hviezdy vľavo, zdroj (Google / Z webu) vpravo */
}
.reviews_grid_section .section-title {
  margin-bottom: 1.5rem;
}
.reviews_grid_section .reviews-summary {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  margin-bottom: 2rem;
  font-family: var(--second-font);
}
.reviews_grid_section .reviews-summary-score {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.5rem;
  color: var(--first-color);
}
.reviews_grid_section .reviews-summary-stars {
  display: flex;
  gap: 0.125rem;
  font-size: 1.125rem;
  color: var(--accent-color);
}
.reviews_grid_section .reviews-summary-stars .off {
  color: var(--line-color);
}
.reviews_grid_section .reviews-summary-count {
  color: var(--eight-color);
  font-size: 0.9375rem;
}
.reviews_grid_section .reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 2vw, 1.5rem);
}
.reviews_grid_section .review-card {
  display: flex;
  flex-direction: column;
  padding: clamp(1.5rem, 2.5vw, 2rem);
  background: var(--six-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.reviews_grid_section .review-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.75rem;
}
.reviews_grid_section .review-source {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-family: var(--second-font);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--eight-color);
  white-space: nowrap;
}
.reviews_grid_section .review-source svg {
  flex: 0 0 auto;
}
.reviews_grid_section .review-stars {
  display: flex;
  gap: 0.25rem;
  font-size: 1.125rem;
  line-height: 1;
  color: var(--accent-color);
}
.reviews_grid_section .review-stars .off {
  color: var(--line-color);
}
.reviews_grid_section .review-quote {
  background: none;
  border: 0;
  padding: 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.4;
  color: var(--first-color);
  margin: 0 0 1.25rem;
  flex: 1 0 auto;
}
.reviews_grid_section .review-author {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.reviews_grid_section .review-avatar {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.reviews_grid_section .review-avatar--initials {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--first-color);
  color: var(--on-dark-text);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
}
.reviews_grid_section .review-author-meta {
  display: flex;
  flex-direction: column;
  gap: 0.0625rem;
}
.reviews_grid_section .review-name {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--first-color);
}
.reviews_grid_section .review-role {
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--eight-color);
}
@media (max-width: 991.98px) {
  .reviews_grid_section .reviews-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575.98px) {
  .reviews_grid_section .reviews-grid {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   VIDEO - video_block_section
   Veľký náhľad vľavo (na mobile hore), text vpravo. Viac videí
   v jednom widgete sa striedajú (is-flipped), rovnako ako about_split.
   ============================================================ */
.video_block_section {
  padding: var(--section-y-half) 0;
}
.video_block_section .video-row {
  display: flex;
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.video_block_section .video-row + .video-row {
  margin-top: clamp(2rem, 4vw, 3rem);
}
.video_block_section .video-row.is-flipped {
  flex-direction: row-reverse;
}
.video_block_section .video-media {
  flex: 1 1 56%;
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: var(--grey-900);
}
.video_block_section .video-player {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.video_block_section .video-play {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: var(--grey-900);
  cursor: pointer;
}
.video_block_section .video-play img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.video_block_section .video-play-icon {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.5rem;
  height: 4.5rem;
  border-radius: 50%;
  background: var(--accent-color);
  color: var(--on-accent);
  transition: var(--trans-200);
}
.video_block_section .video-play-icon svg {
  width: 1.75rem;
  height: 1.75rem;
  margin-left: 0.1875rem;
}
.video_block_section .video-play:hover .video-play-icon {
  background: var(--accent-color-hover);
  transform: scale(1.06);
}
.video_block_section .video-body {
  flex: 1 1 44%;
}
.video_block_section .video-title {
  font-family: var(--first-font);
  font-size: var(--h3);
  color: var(--first-color);
  margin-bottom: 0.75rem;
}
.video_block_section .video-text {
  font-family: var(--second-font);
  font-size: var(--p-body);
  line-height: var(--p-body-lh);
  color: var(--seven-color);
}
@media (max-width: 767.98px) {
  .video_block_section .video-row,
  .video_block_section .video-row.is-flipped {
    flex-direction: column;
    align-items: stretch;
  }
  .video_block_section .video-media {
    flex: none;
    width: 100%;
  }
}
/* ============================================================
   NEWSLETTER - vkladateľná sekcia (newsletter_block_section)
   Len vlastný nadpis nad vloženým formulárom - samotný formulár
   (`form_block`) má štýly z `_form.less` / `_captcha.less`.
   ============================================================ */
.newsletter_block_section {
  padding: var(--section-y-half) 0;
}
.newsletter_block_section .section-title {
  margin-bottom: 1.5rem;
}
/* ============================================================
   HYPOTEKÁRNA KALKULAČKA - .pd-mortgage (zdieľané)
   Zelený panel s poľami a veľkým Frauncesom číslom splátky. Používa ho detail
   inzerátu (`pd-block` v `_listing_detail_body.less`) aj samostatný blok
   `mortgage_calculator_section` nižšie - rovnaký vzhľad na oboch miestach.
   ============================================================ */
.pd-mortgage {
  background: var(--first-color);
  border-radius: var(--radius-md);
  padding: 1.875rem;
  /* 30px */
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
}
.pd-mort-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #CFC8B8;
}
.pd-mort-eyebrow .dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent-color);
}
.pd-mort-title {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.625rem;
  color: var(--cream);
  margin: 0;
}
.pd-mort-fields {
  display: flex;
  gap: 1rem;
}
.pd-mort-field {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.pd-mort-field span {
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.8125rem;
  color: #CFC8B8;
}
.pd-mort-input {
  width: 100%;
  background: #0F2A1D;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  padding: 0.8125rem 1rem;
  color: var(--cream);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
}
.pd-mort-input:focus {
  outline: none;
  border-color: var(--accent-color);
}
.pd-mort-select {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23CFC8B8' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.85rem center;
  padding-right: 2.5rem;
}
.pd-mort-select option {
  color: #1C1C1A;
}
.pd-mort-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-top: 0.5rem;
  flex-wrap: wrap;
}
.pd-mort-result span {
  display: block;
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.8125rem;
  color: #CFC8B8;
  margin-bottom: 0.15rem;
}
.pd-mort-value {
  display: flex;
  align-items: baseline;
  gap: 0.4rem;
}
.pd-mort-payment {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: 2.125rem;
  color: var(--cream);
  line-height: 1;
}
.pd-mort-value small {
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: #CFC8B8;
}
.pd-mort-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.9375rem 1.625rem;
  border-radius: 5rem;
  background: var(--accent-color);
  color: var(--on-accent);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}
.pd-mort-btn:hover,
.pd-mort-btn:focus {
  background: var(--accent-color-hover);
  color: var(--on-accent);
  transform: translateY(-1px);
}
.pd-mort-btn[hidden] {
  display: none;
}
.pd-mort-disclaimer {
  margin: 0.35rem 0 0;
  font-family: var(--second-font);
  font-size: 0.75rem;
  line-height: 1.5;
  color: var(--on-dark-text-mute);
  /* 7:1 na zelenej (s priehľadnosťou bolo 4:1) */
}
.pd-mort-note {
  font-family: var(--second-font);
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--on-dark-text-mute);
}
.pd-mort-note a {
  color: var(--cream);
  text-decoration: underline;
}
@media (max-width: 575.98px) {
  .pd-mort-fields {
    flex-direction: column;
  }
  .pd-mort-foot {
    flex-direction: column;
    align-items: stretch;
  }
  /* dlhý text sa zalamoval doľava (Jozef 11. 11.) - na stred a menší bočný okraj, aby sa zmestil na riadok */
  .pd-mort-btn {
    width: 100%;
    text-align: center;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
/* jednoduchá verzia: úver a LTV pod splátkou, odkaz na celú kalkulačku */
.pd-mort-sub {
  margin: 0.4rem 0 0;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--on-dark-text-mute);
}
.pd-mort-sub strong {
  color: var(--on-dark-text);
  font-weight: 600;
}
.pd-mort-sub .sep {
  margin: 0 0.25rem;
}
.pd-mort-more {
  align-self: flex-start;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--on-dark-text);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.pd-mort-more:hover,
.pd-mort-more:focus {
  color: var(--accent-color);
}
/* ============================================================
   CELÁ KALKULAČKA (.pd-mortgage.is-full, stránka /hypotekarna-kalkulacka)
   Vľavo polia s posuvníkmi na fialovej, vpravo biela karta s výsledkami.
   ============================================================ */
.pd-mortgage.is-full {
  /* pokojná verzia (Jozef 11. 11.: fialový blok s tmavými poľami bol agresívny) - biela karta, svetlé polia
     ako vo formulároch bydo, fialová len na čísla a nadpisy */
  background: var(--white-color);
  border: 1px solid var(--line);
  box-shadow: 0 1.25rem 2.5rem -1.5rem rgba(56, 9, 74, 0.18);
  padding: 1.875rem;
  gap: 1.5rem;
}
.pd-mortgage.is-full .pd-mort-field > span,
.pd-mortgage.is-full .pd-mort-field-head span {
  color: var(--warm);
  font-size: 0.875rem;
}
.pd-mortgage.is-full .pd-mort-input {
  background: var(--white-color);
  border: 1px solid var(--line);
  color: var(--ink);
}
.pd-mortgage.is-full .pd-mort-input:focus {
  border-color: var(--purple-400);
}
.pd-mortgage.is-full .pd-mort-select {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235F6670' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.85rem center;
}
.pd-mortgage.is-full .pd-mort-disclaimer {
  color: var(--mute);
}
.pd-mort-switch {
  margin-bottom: 1rem;
}
/* záložky sú odkazy (vlastné adresy kvôli SEO) - rovnaký vzhľad ako tlačidlá prepínača .bydo-seg */
.pd-mort-switch .bydo-seg a {
  display: block;
  text-align: center;
  text-decoration: none;
  padding: 0.5rem 1.125rem;
  font-family: var(--second-font);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--mute);
  white-space: nowrap;
  transition: color 0.2s ease;
}
.pd-mort-switch .bydo-seg a:hover,
.pd-mort-switch .bydo-seg a.is-active {
  color: var(--first-color);
}
.pd-mort-panel[hidden] {
  display: none;
}
.pd-mort-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 2.5rem;
  align-items: start;
}
.pd-mort-form {
  display: flex;
  flex-direction: column;
  gap: 1.375rem;
}
.pd-mort-field-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin: 0;
}
.pd-mort-field-head span {
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.8125rem;
  color: var(--on-dark-text-mute);
}
.pd-mort-badge {
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.8125rem;
  color: var(--first-color);
  background: var(--purple-50);
  border-radius: 5rem;
  padding: 0.15rem 0.6rem;
}
.pd-mort-suffix {
  position: relative;
  display: block;
}
.pd-mort-suffix::after {
  content: attr(data-suffix);
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--second-font);
  font-size: 0.875rem;
  color: var(--mute);
  pointer-events: none;
}
.pd-mort-suffix .pd-mort-input {
  padding-right: 4.5rem;
}
/* posuvník ako cenový posuvník vo filtri výpisu (`_bydo_sekcie.less` .price-slider): tenká sivá dráha,
   vyplnená časť fialová (--p nastaví JS), veľký biely jazdec s tieňom */
.pd-mort-range {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 1.75rem;
  margin: 0.375rem 0 0;
  background: transparent;
  cursor: pointer;
  --p: 50%;
}
.pd-mort-range::-webkit-slider-runnable-track {
  height: 3px;
  border-radius: 5px;
  background: linear-gradient(to right, var(--first-color) var(--p), var(--line-color) var(--p));
}
.pd-mort-range::-moz-range-track {
  height: 3px;
  border-radius: 5px;
  background: var(--line-color);
}
.pd-mort-range::-moz-range-progress {
  height: 3px;
  border-radius: 5px;
  background: var(--first-color);
}
.pd-mort-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 1.75rem;
  height: 1.75rem;
  margin-top: calc(-0.875rem + 1.5px);
  border-radius: 50%;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  box-shadow: 0 0.125rem 0.5rem rgba(29, 16, 41, 0.22);
  cursor: grab;
}
.pd-mort-range::-moz-range-thumb {
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  box-sizing: border-box;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  box-shadow: 0 0.125rem 0.5rem rgba(29, 16, 41, 0.22);
  cursor: grab;
}
.pd-mort-range:active::-webkit-slider-thumb {
  cursor: grabbing;
}
.pd-mort-range:focus-visible {
  outline: none;
}
/* refinancovanie: Ako si pomôcť - samostatná karta pod kalkulačkou (len v záložke Refinancovanie) */
.pd-mort-help {
  margin-top: 1.5rem;
  padding: 1.875rem;
  background: var(--white-color);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
}
.pd-mort-help[hidden] {
  display: none;
}
.pd-mort-help h3 {
  margin: 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.25rem;
  color: var(--first-color);
}
.pd-mort-help ul {
  margin: 0.25rem 0 0.5rem;
  padding-left: 1.125rem;
}
.pd-mort-help li {
  margin-bottom: 0.3rem;
}
.pd-mort-help li::marker {
  color: var(--purple-300);
}
.pd-mort-help p,
.pd-mort-help li {
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--warm);
}
.pd-mort-help p {
  margin: 0 0 0.5rem;
}
.pd-mort-help .pd-mort-label {
  display: block;
  margin-bottom: 0.5rem;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--mute);
}
.pd-mort-help__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 1.125rem;
}
/* prepínač pod nadpisom */
.pd-mort-help__switch button {
  padding: 0.375rem 1rem;
  font-size: 0.8125rem;
}
.pd-mort-help__grid[hidden] {
  display: none;
}
.pd-mort-help strong {
  color: var(--ink);
}
.pd-mort-help__grid {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
/* pod sebou (Jozef 11. 11.) */
.pd-mort-help__relief {
  background: var(--purple-50);
  border-radius: var(--radius-sm);
  padding: 1.25rem 1.375rem;
}
.pd-mort-help__sum {
  font-size: 1rem !important;
  color: var(--ink) !important;
}
.pd-mort-help__sum strong {
  color: var(--first-color);
  font-size: 1.125rem;
}
.pd-mort-help__sum[hidden] {
  display: none;
}
.pd-mort-help__src {
  font-size: 0.8125rem !important;
  color: var(--mute) !important;
}
.pd-mort-help__src a {
  color: var(--first-color);
}
.pd-mort-hint {
  display: block;
  margin-top: 0.25rem;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.pd-mort-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.pd-mort-summary {
  background: var(--cream);
  color: var(--ink);
  border-radius: var(--radius-md);
  padding: 1.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.pd-mort-summary .pd-mort-label {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--mute);
}
.pd-mort-summary .pd-mort-payment {
  color: var(--first-color);
  font-size: 2.75rem;
}
.pd-mort-summary .pd-mort-value small {
  color: var(--mute);
}
.pd-mort-summary .pd-mort-btn {
  margin-top: 0.5rem;
}
.pd-mort-rows {
  margin: 0.25rem 0 0;
  display: flex;
  flex-direction: column;
  /* záložka Koľko mi požičajú: obmedzenie, ktoré rozhoduje */
}
.pd-mort-rows > div {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.625rem 0;
  border-top: 1px solid rgba(76, 14, 101, 0.1);
}
.pd-mort-rows dt {
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--warm);
}
.pd-mort-rows dd {
  margin: 0;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--ink);
  text-align: right;
  white-space: nowrap;
}
.pd-mort-rows > .is-limit dt,
.pd-mort-rows > .is-limit dd {
  color: var(--first-color);
}
.pd-mort-rows > .is-limit dt::after {
  content: " - rozhoduje";
  font-weight: 600;
  color: var(--accent-text);
}
.pd-mort-pill {
  font-style: normal;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  border-radius: 5rem;
  padding: 0.15rem 0.55rem;
  margin-right: 0.35rem;
  white-space: nowrap;
}
.pd-mort-pill.is-ok {
  background: var(--color-success-bg);
  color: var(--color-success);
}
.pd-mort-pill.is-warn {
  background: var(--color-warning-bg);
  color: var(--color-warning);
}
.pd-mort-pill.is-bad {
  background: var(--color-error-bg);
  color: var(--color-error);
}
.pd-mort-pill[hidden] {
  display: none;
}
.pd-mort-bar {
  display: flex;
  height: 0.5rem;
  border-radius: 1rem;
  overflow: hidden;
  background: var(--purple-100);
}
.pd-mort-bar span:first-child {
  background: var(--purple-500);
}
.pd-mort-bar span:last-child {
  background: var(--purple-200);
}
.pd-mort-bar span {
  transition: width 0.2s ease;
}
.pd-mort-legend {
  display: flex;
  gap: 1.25rem;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--warm);
}
.pd-mort-legend span::before {
  content: "";
  display: inline-block;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50%;
  margin-right: 0.4rem;
  vertical-align: -1px;
}
.pd-mort-legend .is-principal::before {
  background: var(--purple-500);
}
.pd-mort-legend .is-interest::before {
  background: var(--purple-200);
}
.pd-mort-income {
  margin-top: 0.5rem;
  padding: 1rem 1.125rem;
  border-radius: var(--radius-sm);
  background: var(--white-color);
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.pd-mort-income p {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  line-height: 1.7;
  color: var(--warm);
}
.pd-mort-income strong {
  color: var(--first-color);
  font-size: 1rem;
}
.pd-mort-income .pd-mort-maxprice strong {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: 1.75rem;
}
/* stránka kalkulačky: kalkulačka na celú šírku kontajnera, vpravo stĺpec s partnerom a „Ako počítame" */
.pd-mort-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 20rem;
  gap: 1.5rem;
  align-items: start;
}
/* prepínač je v prvom riadku nad kalkulačkou, karty vpravo začínajú s kartou kalkulačky (obal pre JS bez vlastného boxu) */
.pd-mort-layout {
  row-gap: 0;
}
.pd-mort-layout > .pd-mort-wrap {
  display: contents;
}
.pd-mort-layout .pd-mort-switch {
  grid-column: 1;
  grid-row: 1;
}
.pd-mort-layout .pd-mortgage.is-full {
  grid-column: 1;
  grid-row: 2;
}
.pd-mort-layout > .pd-mort-aside {
  grid-column: 2;
  grid-row: 2 / span 3;
  align-self: stretch;
}
.pd-mort-layout .pd-mort-help {
  grid-column: 1;
  grid-row: 3;
}
.pd-mort-layout > .pd-mort-faq {
  grid-column: 1;
  grid-row: 4;
}
/* ponuky vpravo idú pri rolovaní s človekom (pod pevnou hlavičkou webu) */
.pd-mort-aside .pd-mort-offers {
  position: sticky;
  top: 6.5rem;
}
.pd-mort-aside {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.pd-mort-card {
  background: var(--white-color);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.pd-mort-card h2 {
  margin: 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.1875rem;
  line-height: 1.3;
  color: var(--first-color);
}
.pd-mort-card p {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--warm);
}
.pd-mort-card .btn {
  align-self: flex-start;
  margin-top: 0.25rem;
}
.pd-mort-card.is-partner {
  background: var(--purple-50);
  border-color: var(--purple-100);
}
/* žiadosť o ponuku hypotéky (formulár jadra pod kalkulačkou) */
/* formulár v karte s výsledkom (po kliku na Chcem ponuku): ostatný obsah karty sa skryje */
.pd-mort-summary.is-lead > :not(.pd-mort-leadbox) {
  display: none !important;
}
.pd-mort-summary {
  scroll-margin-top: 6rem;
}
.pd-mort-leadbox[hidden] {
  display: none;
}
.pd-mort-leadbox {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.pd-mort-back {
  align-self: flex-start;
  appearance: none;
  border: 0;
  background: none;
  padding: 0;
  cursor: pointer;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--first-color);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.pd-mort-leadline {
  margin: 0;
  padding: 0.75rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--white-color);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--first-color);
}
.pd-mort-leadslot {
  /* widget formulára má vlastný .container */
  /* popis nad poľom - predvyplnený úver a cena bez neho nemali názov (Jozef 11. 11.: „čo je 120k a 150k") */
}
.pd-mort-leadslot .form_block {
  padding: 0;
}
.pd-mort-leadslot .fb-head {
  margin: 0.5rem 0 1.5rem;
}
.pd-mort-leadslot .fb-title {
  font-size: 1.375rem;
  margin: 0 0 0.375rem;
}
.pd-mort-leadslot .fb-sub {
  margin: 0;
}
.pd-mort-leadslot .form_block,
.pd-mort-leadslot .form_block .fb-card {
  background: none;
  border: 0;
  border-radius: 0;
  padding: 0 !important;
  margin: 0;
  box-shadow: none;
  max-width: none;
}
.pd-mort-leadslot .container {
  padding: 0;
  max-width: none;
  width: auto;
}
.pd-mort-leadslot .fb-field > label.visually-hidden {
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 0 0 0.375rem !important;
  clip: auto !important;
  clip-path: none !important;
  overflow: visible !important;
  white-space: normal !important;
  display: block;
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--warm);
}
/* otvorený formulár: polia výpočtu vľavo sa skryjú, karta s formulárom ide na celú šírku (Jozef 11. 11.) */
.pd-mort-grid.is-lead-open {
  grid-template-columns: minmax(0, 1fr);
}
.pd-mort-grid.is-lead-open > .pd-mort-form {
  display: none;
}
.pd-mort-in {
  animation: pdMortIn 0.32s cubic-bezier(0.3, 0.7, 0.4, 1);
}
@keyframes pdMortIn {
  from {
    opacity: 0;
    transform: translateY(0.5rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pd-mort-in {
    animation: none;
  }
}
@media (max-width: 575.98px) {
  .pd-mort-leadslot .fb-grid {
    grid-template-columns: 1fr;
  }
  .pd-mort-leadslot .fb-col-6 {
    grid-column: 1 / -1;
  }
}
.pd-mort-lead {
  align-self: center;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--first-color);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.pd-mort-lead[hidden] {
  display: none;
}
.pd-mort-card__eyebrow {
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--mute);
}
/* pravý stĺpec: ponuky do ceny z výpočtu (karty ako vo výpise, pod sebou) */
.pd-mort-offers {
  gap: 1rem;
  /* výmena ponúk po zmene výpočtu (initMortgageCalc): staré zmiznú, nové prídu postupne */
}
.pd-mort-offers .pd-mort-offers__head h2 {
  margin-top: 0.25rem;
}
.pd-mort-offers .pd-mort-offers__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.pd-mort-offers .pd-mort-offers__list li + li {
  border-top: 1px solid var(--line);
}
.pd-mort-offers .pd-mort-offers__all {
  align-self: stretch;
  text-align: center;
  justify-content: center;
}
.pd-mort-offers .pd-mort-offers__empty {
  font-size: 0.9375rem;
}
.pd-mort-offers .pd-mort-offers__empty a {
  color: var(--first-color);
}
.pd-mort-offers > * {
  transition: opacity 0.18s ease, transform 0.18s ease;
}
.pd-mort-offers.is-leaving > * {
  opacity: 0;
  transform: translateY(-0.25rem);
}
.pd-mort-offers.is-fresh .pd-mort-offers__head,
.pd-mort-offers.is-fresh .pd-mort-offers__list li,
.pd-mort-offers.is-fresh .pd-mort-offers__all,
.pd-mort-offers.is-fresh .pd-mort-offers__empty {
  animation: pdMortOffer 0.5s cubic-bezier(0.2, 0.7, 0.3, 1) both;
}
.pd-mort-offers.is-fresh .pd-mort-offers__list li:nth-child(1) {
  animation-delay: 0.06s;
}
.pd-mort-offers.is-fresh .pd-mort-offers__list li:nth-child(2) {
  animation-delay: 0.12s;
}
.pd-mort-offers.is-fresh .pd-mort-offers__list li:nth-child(3) {
  animation-delay: 0.18s;
}
.pd-mort-offers.is-fresh .pd-mort-offers__list li:nth-child(4) {
  animation-delay: 0.24s;
}
.pd-mort-offers.is-fresh .pd-mort-offers__all {
  animation-delay: 0.3s;
}
@keyframes pdMortOffer {
  from {
    opacity: 0;
    transform: translateY(0.625rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pd-mort-offers > * {
    transition: none;
  }
  .pd-mort-offers.is-fresh *,
  .pd-mort-faq details p {
    animation: none !important;
  }
  .pd-mort-faq details::details-content,
  .pd-mort-faq summary::after {
    transition: none !important;
  }
}
/* pod tlačidlom žiadosti - dôvera (Zadarmo a nezáväzne) */
.pd-mort-trust {
  margin: -0.25rem 0 0;
  text-align: center;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.pd-mort-trust[hidden] {
  display: none;
}
/* Časté otázky pod kalkulačkou - karta: vľavo nadpis a úvod, vpravo otázky */
.pd-mort-faq {
  margin-top: 1.5rem;
  padding: clamp(1.5rem, 3vw, 2.25rem);
  background: var(--white-color);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  gap: 1.5rem clamp(2rem, 4vw, 3.5rem);
  align-items: start;
  /* otvorenie otázky: text jemne vyjde zhora; kde prehliadač vie (::details-content + interpolate-size), aj plynulá výška */
}
.pd-mort-faq h2 {
  margin: 0 0 0.75rem;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.5rem, 2.2rem, 1.875rem);
  color: var(--first-color);
}
.pd-mort-faq .pd-mort-faq__head p {
  margin: 0 0 1rem;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--warm);
}
.pd-mort-faq details {
  border-bottom: 1px solid var(--line);
}
.pd-mort-faq details:first-child {
  border-top: 1px solid var(--line);
}
.pd-mort-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 1rem 2rem 1rem 0;
  position: relative;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 1.0625rem;
  color: var(--ink);
}
.pd-mort-faq summary::-webkit-details-marker {
  display: none;
}
.pd-mort-faq summary::after {
  content: "+";
  position: absolute;
  right: 0.25rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.375rem;
  font-weight: 400;
  color: var(--first-color);
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.pd-mort-faq summary:hover {
  color: var(--first-color);
}
.pd-mort-faq details[open] summary::after {
  content: "−";
  transform: translateY(-50%) rotate(180deg);
}
.pd-mort-faq details p {
  margin: 0 0 1.125rem;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.65;
  color: var(--warm);
}
.pd-mort-faq details[open] p {
  animation: pdMortOffer 0.4s cubic-bezier(0.2, 0.7, 0.3, 1) both;
}
@supports (interpolate-size: allow-keywords) {
  .pd-mort-faq details {
    interpolate-size: allow-keywords;
  }
  .pd-mort-faq details::details-content {
    block-size: 0;
    overflow: hidden;
    transition: block-size 0.35s cubic-bezier(0.2, 0.7, 0.3, 1), content-visibility 0.35s allow-discrete;
  }
  .pd-mort-faq details[open]::details-content {
    block-size: auto;
  }
}
.pd-mort-faq .pd-mort-faq__partner {
  font-size: 0.875rem !important;
  color: var(--mute) !important;
}
.pd-mort-faq .pd-mort-faq__partner a {
  color: var(--first-color);
}
@media (max-width: 767.98px) {
  .pd-mort-faq {
    grid-template-columns: minmax(0, 1fr);
  }
}
.pd-mort-offer {
  display: grid;
  grid-template-columns: 5.5rem minmax(0, 1fr);
  gap: 0.875rem;
  align-items: center;
  padding: 0.75rem 0;
  text-decoration: none;
  color: inherit;
}
.pd-mort-offer img {
  width: 5.5rem;
  height: 4.25rem;
  object-fit: cover;
  border-radius: var(--radius-sm);
  background: var(--cream-2);
}
.pd-mort-offer:hover .pd-mort-offer__title {
  color: var(--first-color);
  text-decoration: underline;
}
.pd-mort-offer__txt {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
  font-family: var(--second-font);
}
.pd-mort-offer__city {
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--mute);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pd-mort-offer__title {
  font-size: 0.875rem;
  line-height: 1.35;
  color: var(--ink);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.pd-mort-offer__price {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--first-color);
}
.pd-mort-card__link {
  align-self: flex-start;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--first-color);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.pd-mort-card__fine {
  font-size: 0.8125rem !important;
  color: var(--mute) !important;
}
.pd-mort-howto {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.pd-mort-howto li {
  position: relative;
  padding-left: 1.125rem;
  font-family: var(--second-font);
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--warm);
}
.pd-mort-howto li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 0.4375rem;
  height: 0.4375rem;
  border-radius: 50%;
  background: var(--purple-300);
}
@media (max-width: 1199.98px) {
  .pd-mort-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .pd-mort-layout > .pd-mort-aside {
    grid-column: 1;
    grid-row: 4;
    margin-top: 1.5rem;
  }
  .pd-mort-layout > .pd-mort-faq {
    grid-row: 5;
  }
  .pd-mort-layout .pd-mort-aside .pd-mort-offers {
    position: static;
  }
  .pd-mort-aside {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 991.98px) {
  .pd-mort-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
  }
}
@media (max-width: 575.98px) {
  .pd-mortgage.is-full {
    padding: 1.25rem 1.125rem;
  }
  /* tri voľby sa na mobile nezmestia do riadku - dlhší názov na dva riadky */
  .pd-mort-switch .bydo-seg {
    display: grid;
  }
  .pd-mort-switch .bydo-seg button,
  .pd-mort-switch .bydo-seg a {
    padding: 0.5rem 0.375rem;
    white-space: normal;
    line-height: 1.25;
    font-size: 0.8125rem;
  }
  .pd-mort-summary {
    padding: 1.25rem;
  }
  .pd-mort-summary .pd-mort-payment {
    font-size: 2.25rem;
  }
  .pd-mort-aside {
    grid-template-columns: minmax(0, 1fr);
  }
  .pd-mort-card {
    padding: 1.25rem;
  }
  .pd-mort-card .btn {
    align-self: stretch;
  }
}
/* --- samostatný vkladateľný blok (Menu/mortgage_calculator.php) --- */
.mortgage_calculator_section {
  padding: var(--section-y-half) 0;
}
.mortgage_calculator_section .pd-mortgage:not(.is-full) {
  max-width: 46rem;
  margin-left: auto;
  margin-right: auto;
}
/* ---------------------------------------------------------------------------
   favorites_typ_1 - stránka Obľúbené (/oblubene, Menu/favorites_typ_1.php). Karty = výpis (.listing_search_typ_1),
   tu len hlavička s počtom, prázdny stav a odchod karty po odobratí srdiečkom.
   --------------------------------------------------------------------------- */
.favorites_typ_1 {
  padding: var(--section-y-half) 0 var(--section-y);
  /* karta Obľúbené v účte (_account_person.php) - bez odsadenia sekcie, veta o uložení je v hlavičke karty */
}
.favorites_typ_1.is-ucet {
  padding: 0;
}
.favorites_typ_1.is-ucet .fav-note {
  display: none;
}
.favorites_typ_1 .fav-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem 1.5rem;
  margin-bottom: 1.25rem;
}
.favorites_typ_1 .fav-count {
  margin: 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.25rem;
  color: var(--first-color);
}
.favorites_typ_1 .fav-note {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.8125rem;
  color: var(--mute);
}
.favorites_typ_1 .fav-note .i {
  width: 1rem;
  height: 1rem;
}
.favorites_typ_1 .ls-card {
  transition: opacity 0.28s ease, transform 0.28s ease;
}
.favorites_typ_1 .ls-card.is-leaving {
  opacity: 0;
  transform: scale(0.96);
}
.favorites_typ_1 .fav-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  padding: 3rem 0;
  font-family: var(--second-font);
  color: var(--mute);
}
.favorites_typ_1 .fav-spinner {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  border: 2px solid var(--purple-100);
  border-top-color: var(--first-color);
  animation: favSpin 0.8s linear infinite;
}
.favorites_typ_1 .fav-gone {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1.25rem;
  margin-top: 1.5rem;
  padding: 1rem 1.25rem;
  border-radius: var(--radius-md);
  background: var(--purple-50);
}
.favorites_typ_1 .fav-gone p {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--warm);
}
.favorites_typ_1 .fav-empty {
  max-width: 30rem;
  margin: 1rem auto;
  padding: 2.5rem 1.5rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}
.favorites_typ_1 .fav-empty h2 {
  margin: 0.25rem 0 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.5rem;
  color: var(--first-color);
}
.favorites_typ_1 .fav-empty p {
  margin: 0 0 0.5rem;
  font-family: var(--second-font);
  font-size: 1rem;
  line-height: 1.6;
  color: var(--warm);
}
.favorites_typ_1 .fav-empty__ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
}
.favorites_typ_1 .fav-empty__ic .i {
  width: 1.75rem;
  height: 1.75rem;
}
@keyframes favSpin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .favorites_typ_1 .ls-card {
    transition: none;
  }
  .favorites_typ_1 .fav-spinner {
    animation-duration: 2s;
  }
}
/* srdiečko Obľúbených všade (karta, posuvník, hlavička detailu): obrys / plné podľa .is-saved (bydoOblubene)
   .i.i-on kvôli váhe: `.listing_detail_typ_1 .i { display: inline-flex }` je v style.less neskôr a ukazoval obe srdcia */
[data-oblubene] .i.i-on {
  display: none;
}
[data-oblubene].is-saved .i.i-on {
  display: inline-flex;
}
[data-oblubene].is-saved .i.i-off {
  display: none;
}
/* ---------------------------------------------------------------------------
   valuation_typ_1 - Ocenenie nehnuteľnosti (/ocenenie-nehnutelnosti, Menu/valuation_typ_1.php). Karta a polia
   sú z hypokalkulačky (.pd-mortgage.is-full, .pd-mort-*), tu len to, čo kalkulačka nemá: dlaždice druhu,
   čipy izieb a stavu, našepkávač obcí a veľké rozpätie vo výsledku.
   --------------------------------------------------------------------------- */
.valuation_typ_1 {
  padding: var(--section-y-half) 0 var(--section-y);
  /* druh: dlaždice s ikonou; izby a stav: menšie čipy */
  /* našepkávač obcí */
  /* výsledok */
  /* „17 ponúk v okrese Spišská Nová Ves" sa na mobile zalomí */
  /* rozpätie: číslo sa nikdy nerozdelí (zalomí sa len medzi „od" a „do") */
  /* PDF na e-mail / žiadosť o realitku - formulár v karte s výsledkom (výsledok sa zatiaľ skryje; nie .is-lead - to je hypokalkulačky a skryje všetko) */
}
.valuation_typ_1 .pd-val-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 20rem;
  gap: 1.5rem;
  align-items: start;
}
.valuation_typ_1 .pd-val .pd-mort-field > span,
.valuation_typ_1 .pd-val .pd-mort-field > label {
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--warm);
}
.valuation_typ_1 .pd-val-opt {
  font-size: 0.75rem;
  color: var(--mute);
  font-weight: 400;
}
.valuation_typ_1 .bydo-seg--plna {
  display: grid;
  width: 100%;
}
.valuation_typ_1 .pd-val-chips {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.5rem;
  /* izby: päť čipov v jednom riadku aj v úzkom stĺpci */
}
.valuation_typ_1 .pd-val-chips button {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.3rem;
  padding: 0.75rem 0.5rem;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  cursor: pointer;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--ink);
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, transform 0.15s ease;
  /* .pd-mort-field span z kalkulačky je svetlý */
}
.valuation_typ_1 .pd-val-chips button .i {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--first-color);
}
.valuation_typ_1 .pd-val-chips button span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}
.valuation_typ_1 .pd-val-chips button:hover {
  border-color: var(--purple-300);
}
.valuation_typ_1 .pd-val-chips button:active {
  transform: scale(0.97);
}
.valuation_typ_1 .pd-val-chips button.is-active {
  border-color: var(--first-color);
  background: var(--purple-50);
  color: var(--first-color);
  box-shadow: inset 0 0 0 1px var(--first-color);
}
.valuation_typ_1 .pd-val-chips.is-small {
  display: flex;
  flex-wrap: wrap;
}
.valuation_typ_1 .pd-val-chips.is-small button {
  flex-direction: row;
  padding: 0.5rem 0.875rem;
  border-radius: 5rem;
  font-size: 0.8125rem;
  min-width: 2.75rem;
  justify-content: center;
}
.valuation_typ_1 .pd-val-chips.is-rooms {
  flex-wrap: nowrap;
  gap: 0.375rem;
}
.valuation_typ_1 .pd-val-chips.is-rooms button {
  flex: 1 1 0;
  min-width: 0;
  padding: 0.625rem 0;
}
.valuation_typ_1 .pd-val-place {
  position: relative;
}
.valuation_typ_1 .pd-val-suggest {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 0.25rem);
  z-index: 20;
  margin: 0;
  padding: 0.375rem;
  list-style: none;
  max-height: 18rem;
  overflow-y: auto;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  box-shadow: 0 18px 40px -16px rgba(29, 16, 41, 0.35);
  animation: pdValIn 0.18s ease;
}
.valuation_typ_1 .pd-val-suggest li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 0.75rem;
  padding: 0.5rem 0.625rem;
  border-radius: 0.5rem;
  cursor: pointer;
  font-family: var(--second-font);
}
.valuation_typ_1 .pd-val-suggest li.is-active {
  background: var(--purple-50);
}
.valuation_typ_1 .pd-val-suggest strong {
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--ink);
}
.valuation_typ_1 .pd-val-suggest small {
  font-size: 0.75rem;
  color: var(--mute);
  white-space: nowrap;
}
.valuation_typ_1 .pd-val-summary {
  min-height: 100%;
  justify-content: center;
}
.valuation_typ_1 .pd-val-summary .pd-mort-rows dd {
  white-space: normal;
}
.valuation_typ_1 .pd-val-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.875rem;
  padding: 2rem 1rem;
  text-align: center;
}
.valuation_typ_1 .pd-val-empty p {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--warm);
  max-width: 20rem;
}
.valuation_typ_1 .pd-val-empty__ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  background: var(--white-color);
  color: var(--first-color);
}
.valuation_typ_1 .pd-val-empty__ic .i {
  width: 1.625rem;
  height: 1.625rem;
}
.valuation_typ_1 .pd-val-result {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  animation: pdValIn 0.35s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.valuation_typ_1 .pd-val-range {
  font-family: var(--first-font);
  font-weight: 900;
  font-size: clamp(1.625rem, 2.25rem, 2.125rem);
  line-height: 1.15;
  color: var(--first-color);
}
.valuation_typ_1 .pd-val-range span {
  white-space: nowrap;
}
.valuation_typ_1 .pd-val-range i {
  font-style: normal;
  font-weight: 400;
  color: var(--purple-300);
}
.valuation_typ_1 .pd-val-mid {
  margin: -0.25rem 0 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--warm);
}
.valuation_typ_1 .pd-val-mid strong {
  color: var(--ink);
}
.valuation_typ_1 .pd-val-note,
.valuation_typ_1 .pd-val-lead {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  line-height: 1.6;
  color: var(--warm);
}
.valuation_typ_1 .pd-val-lead {
  font-size: 0.9375rem;
  color: var(--ink);
}
.valuation_typ_1 .pd-val-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  align-self: center;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--first-color);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.valuation_typ_1 .pd-val-link .i {
  width: 1rem;
  height: 1rem;
}
.valuation_typ_1 .pd-val-how h2 {
  font-size: 1.1875rem;
}
.valuation_typ_1 .pd-val-summary.is-val-lead > .pd-val-result,
.valuation_typ_1 .pd-val-summary.is-val-lead > .pd-val-empty {
  display: none;
}
.valuation_typ_1 .pd-val-lead-form,
.valuation_typ_1 .pd-val-done {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  animation: pdValIn 0.3s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.valuation_typ_1 .pd-val-lead-form h3,
.valuation_typ_1 .pd-val-done h3 {
  margin: 0;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.375rem;
  color: var(--first-color);
}
.valuation_typ_1 .pd-val-lead-form .pd-mort-field.is-error .pd-mort-input {
  border-color: var(--color-error);
}
.valuation_typ_1 .pd-val-check {
  display: flex;
  gap: 0.625rem;
  align-items: flex-start;
  cursor: pointer;
  font-family: var(--second-font);
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--ink);
}
.valuation_typ_1 .pd-val-check input {
  flex: none;
  width: 1.125rem;
  height: 1.125rem;
  margin-top: 0.15rem;
  accent-color: var(--first-color);
}
.valuation_typ_1 .pd-val-msg {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-error);
}
.valuation_typ_1 .pd-val-lead-form .pd-mort-btn {
  gap: 0.5rem;
  border: 0;
  cursor: pointer;
}
.valuation_typ_1 .pd-val-lead-form .pd-mort-btn:disabled {
  opacity: 0.7;
  cursor: wait;
}
.valuation_typ_1 .pd-val-result .pd-mort-btn {
  gap: 0.5rem;
  border: 0;
  cursor: pointer;
}
.valuation_typ_1 .pd-val-result .pd-mort-btn .i {
  width: 1.25rem;
  height: 1.25rem;
}
.valuation_typ_1 .pd-mort-disclaimer a {
  color: var(--first-color);
}
.valuation_typ_1 .pd-val-done {
  align-items: center;
  text-align: center;
  padding: 1.5rem 0.5rem;
}
.valuation_typ_1 .pd-val-done p {
  margin: 0;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--warm);
}
.valuation_typ_1 .fav-spinner {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  border: 2px solid var(--purple-100);
  border-top-color: var(--first-color);
  animation: favSpin 0.8s linear infinite;
}
@media (max-width: 1199.98px) {
  .valuation_typ_1 .pd-val-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 575.98px) {
  .valuation_typ_1 .pd-val-chips {
    gap: 0.375rem;
  }
  .valuation_typ_1 .pd-val-chips button {
    padding: 0.625rem 0.25rem;
    font-size: 0.8125rem;
  }
}
@keyframes pdValIn {
  from {
    opacity: 0;
    transform: translateY(0.375rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .valuation_typ_1 .pd-val-result,
  .valuation_typ_1 .pd-val-suggest {
    animation: none;
  }
}
/* ============================================================
   OCENENIE NEHNUTEĽNOSTI - valuation_form_section
   Vľavo nadpis a kroky (ako postup prebieha), vpravo karta s existujúcim Form
   widgetom (holder `valuation-form`, rovnaký mechanizmus ako Hero - získanie
   kontaktu z 2. kola). Karta formulára = rovnaký vzhľad ako `.hero-form-card`.
   ============================================================ */
.valuation_form_section {
  padding: var(--section-y-half) 0;
}
.valuation_form_section .valuation-grid {
  display: flex;
  align-items: flex-start;
  gap: clamp(2rem, 5vw, 4.5rem);
}
.valuation_form_section .valuation-text {
  flex: 1 1 0;
  min-width: 0;
}
.valuation_form_section .valuation-steps {
  list-style: none;
  margin: 1.75rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.valuation_form_section .valuation-step {
  display: flex;
  gap: 1.25rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--line-color);
}
.valuation_form_section .valuation-step:first-child {
  padding-top: 0;
  border-top: none;
}
.valuation_form_section .valuation-step-no {
  flex: 0 0 auto;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.875rem;
  color: var(--accent-color);
  line-height: 1.1;
}
.valuation_form_section .valuation-step-title {
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 1.125rem;
  margin: 0 0 0.375rem;
  color: var(--first-color);
}
.valuation_form_section .valuation-step-text {
  font-family: var(--second-font);
  font-size: var(--p-body);
  line-height: var(--p-body-lh);
  color: var(--seven-color);
}
.valuation_form_section .valuation-step-text p:last-child {
  margin-bottom: 0;
}
.valuation_form_section .valuation-form-card {
  flex: 0 0 26rem;
  width: 26rem;
  max-width: 100%;
  padding: clamp(1.75rem, 3vw, 2.25rem);
  border: 1px solid var(--line-color);
  border-radius: var(--border-radius);
  background: var(--warm-white);
  box-shadow: var(--shadow-card-2);
}
.valuation_form_section .valuation-form-card .form_block {
  padding-top: 0;
}
.valuation_form_section .valuation-form-card .fb-grid {
  grid-template-columns: 1fr;
}
.valuation_form_section .valuation-form-card .fb-col-6 {
  grid-column: 1 / -1;
}
@media (max-width: 991.98px) {
  .valuation_form_section .valuation-grid {
    flex-direction: column;
  }
  .valuation_form_section .valuation-form-card {
    flex: none;
    width: 100%;
  }
}
/* ============================================================
   KARTA MAKLÉRA S CTA - agent_card_section
   Veľká karta jedného makléra - fotka vľavo, text (oblasť, meno, kontakt, CTA) vpravo.
   Fallback bez fotky = iniciála na krémovom kruhu (rovnaký vzor ako `.hs-contact-*`
   v `_subpage_header_cta.less`).
   ============================================================ */
.agent_card_section {
  padding: var(--section-y-half) 0;
}
.agent_card_section .agent-card {
  display: flex;
  align-items: center;
  gap: clamp(1.75rem, 4vw, 3.5rem);
  background: var(--six-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: clamp(1.75rem, 3.5vw, 3rem);
}
.agent_card_section .agent-card-photo {
  flex: 0 0 auto;
  width: clamp(9rem, 16vw, 13rem);
  height: clamp(9rem, 16vw, 13rem);
  border-radius: 50%;
  overflow: hidden;
  margin: 0;
  background: var(--cream-2);
  display: flex;
  align-items: center;
  justify-content: center;
}
.agent_card_section .agent-card-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.agent_card_section .agent-card-initial {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 3.5rem;
  color: var(--first-color);
}
.agent_card_section .agent-card-body {
  flex: 1 1 0;
  min-width: 0;
}
.agent_card_section .agent-card-feature {
  display: block;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color);
  margin-bottom: 0.5rem;
}
.agent_card_section .agent-card-name {
  font-family: var(--first-font);
  font-weight: 700;
  font-size: clamp(1.5rem, 2.5vw, 2rem);
  color: var(--first-color);
  margin: 0 0 0.875rem;
}
.agent_card_section .agent-card-contact {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  margin-bottom: 1.25rem;
}
.agent_card_section .agent-card-contact a {
  font-family: var(--second-font);
  font-weight: 500;
  font-size: 0.9375rem;
  color: var(--seven-color);
  text-decoration: none;
}
.agent_card_section .agent-card-contact a:hover {
  color: var(--first-color);
}
.agent_card_section .agent-card-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.875rem 1.75rem;
  border-radius: 5rem;
  background: var(--accent-color);
  color: var(--on-accent);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}
.agent_card_section .agent-card-btn:hover,
.agent_card_section .agent-card-btn:focus {
  background: var(--accent-color-hover);
  color: var(--on-accent);
  transform: translateY(-1px);
}
@media (max-width: 575.98px) {
  .agent_card_section .agent-card {
    flex-direction: column;
    text-align: center;
  }
  .agent_card_section .agent-card-contact {
    justify-content: center;
  }
}
/* ============================================================
   VIRTUÁLNA PREHLIADKA - virtual_tour_section
   Náhľad vľavo (na mobile hore) s pilulkovým tlačidlom "Spustiť prehliadku",
   text vpravo. Viac prehliadok v jednom widgete sa striedajú (is-flipped),
   rovnaký vzor ako `video_block.less`. Iframe sa vloží do DOM až po kliknutí
   (<template x-if>), nie len vizuálne skryje.
   ============================================================ */
.virtual_tour_section {
  padding: var(--section-y-half) 0;
  /* bez náhľadu: krémová plocha s jemnou mriežkou (ako pôdorys), nie čierny štvorec */
}
.virtual_tour_section .vt-row {
  display: flex;
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3.5rem);
}
.virtual_tour_section .vt-row + .vt-row {
  margin-top: clamp(2rem, 4vw, 3rem);
}
.virtual_tour_section .vt-row.is-flipped {
  flex-direction: row-reverse;
}
.virtual_tour_section .vt-media {
  flex: 1 1 56%;
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: var(--grey-900);
}
.virtual_tour_section .vt-frame,
.virtual_tour_section .vt-poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.virtual_tour_section .vt-poster {
  object-fit: cover;
}
.virtual_tour_section .vt-media:has(> .vt-placeholder) {
  background-color: var(--four-color);
  background-image: linear-gradient(var(--line-color) 1px, transparent 1px), linear-gradient(90deg, var(--line-color) 1px, transparent 1px);
  background-size: 2.5rem 2.5rem;
  background-position: center;
}
.virtual_tour_section .vt-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  color: var(--first-color);
  font-family: var(--first-font);
  font-size: 1.25rem;
}
.virtual_tour_section .vt-placeholder svg {
  width: 3rem;
  height: 3rem;
}
.virtual_tour_section .vt-play {
  position: absolute;
  left: 50%;
  bottom: 1.5rem;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.875rem 1.75rem;
  border: 0;
  border-radius: 5rem;
  background: var(--accent-color);
  color: var(--on-accent);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}
.virtual_tour_section .vt-play:hover,
.virtual_tour_section .vt-play:focus {
  background: var(--accent-color-hover);
  color: var(--on-accent);
  transform: translateX(-50%) translateY(-1px);
}
.virtual_tour_section .vt-play-icon svg {
  display: block;
  width: 1.125rem;
  height: 1.125rem;
}
.virtual_tour_section .vt-body {
  flex: 1 1 44%;
}
.virtual_tour_section .vt-title {
  font-family: var(--first-font);
  font-size: var(--h3);
  color: var(--first-color);
  margin-bottom: 0.75rem;
}
.virtual_tour_section .vt-text {
  font-family: var(--second-font);
  font-size: var(--p-body);
  line-height: var(--p-body-lh);
  color: var(--seven-color);
}
@media (max-width: 767.98px) {
  .virtual_tour_section .vt-row,
  .virtual_tour_section .vt-row.is-flipped {
    flex-direction: column;
    align-items: stretch;
  }
  .virtual_tour_section .vt-media {
    flex: none;
    width: 100%;
  }
}
/* Extra malé zariadenia (mobilné telefóny) */
/* Malé zariadenia (tablety v režime portrait) */
/* mobil: kontajner na celú šírku, okraj z tokenu --page-x (Bootstrap dáva len 12px) */
@media (max-width: 47.999rem) {
  .container,
  .container-fluid,
  .container-sm {
    padding-left: var(--page-x);
    padding-right: var(--page-x);
  }
}
/* Stredné zariadenia (tablety v režime landscape) */
@media (min-width: 59rem) and (max-width: 61.999rem) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: 58.75rem;
  }
}
/* Veľké zariadenia (notebooky a desktopy) */
/* Veľké zariadenia (notebooky a desktopy s rozlíšením 1600px) */
/* Extra veľké zariadenia (veľké desktopy) */
@media (min-width: 100rem) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl {
    max-width: 78.6875rem;
  }
}
html {
  font-size: 16px;
  image-rendering: high-quality;
  text-rendering: optimizeLegibility;
}
html::-webkit-scrollbar {
  height: 12px;
  width: 7px;
  background: var(--silver-color);
}
html::-webkit-scrollbar-thumb {
  background: var(--first-color);
  -webkit-border-radius: 0;
  -webkit-box-shadow: 0 1px 2px var(three-color);
}
html::-webkit-scrollbar-corner {
  background: var(--dark-color);
}
html svg {
  shape-rendering: geometricPrecision;
}
html img {
  shape-rendering: geometricPrecision;
  pointer-events: none;
}
html[lang="de"] {
  word-break: break-word;
  /* Zalomenie slov na viac riadkov */
  overflow-wrap: break-word;
}
body {
  -webkit-font-smoothing: antialiased;
  shape-rendering: geometricPrecision;
  text-rendering: optimizeLegibility;
  background-color: var(--five-color);
  background-color: var(--white-color);
  transition-property: background-color;
  font-family: var(--second-font);
  image-rendering: auto;
  color: var(--dark-color);
  outline: transparent !important;
  /* obrys schovať len pri myši - z klávesnice (:focus-visible) musí byť vidno, kde je fokus */
}
body .main {
  min-height: 80dvh;
  display: flex;
  flex-direction: column;
}
body .main.page_standard {
  margin-top: 7rem;
}
body p {
  font-size: var(--p-body);
  font-family: var(--second-font);
  text-rendering: optimizeSpeed;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}
@media screen and (max-width: 996px) {
  body p {
    line-height: var(--p-body-lh);
  }
}
body p b,
body p strong {
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  color: var(--first-color);
}
body p .marker {
  font-size: 1.125rem;
  color: var(--first-color);
}
body ul li strong {
  color: var(--first-color);
}
body h1,
body .h1 {
  font-family: var(--three-font);
  font-size: var(--h1);
  line-height: var(--h1-lh);
  color: var(--black-color);
  font-weight: 900;
  position: relative;
}
body h1.top,
body .h1.top {
  top: 0;
  margin: 0;
  position: absolute;
  font-size: 10px;
  color: transparent !important;
}
body h2,
body .h2 {
  font-size: var(--h2);
  color: var(--black-color);
  font-family: var(--three-font);
  letter-spacing: -0.0525rem;
  margin-bottom: 1rem;
  font-style: normal;
  line-height: normal;
  font-weight: 700;
}
body h2 strong,
body .h2 strong {
  color: var(--second-color);
  font-style: normal;
  font-weight: 900;
  line-height: normal;
}
body h3,
body .h3 {
  font-size: var(--h3);
  line-height: var(--h3-lh);
  font-family: var(--three-font);
  font-weight: 500;
  font-style: normal;
  color: var(--first-color);
}
body h3 strong,
body .h3 strong {
  font-family: var(--first-font);
  color: var(--grey-900);
  font-weight: 700;
  font-size: 110%;
}
body h4,
body .h4 {
  font-size: var(--h4);
  line-height: var(--h4-lh);
  color: var(--first-color);
  font-weight: 500;
}
body h5,
body .h5 {
  font-size: var(--h5);
  line-height: var(--h5-lh);
  font-weight: 500;
}
body h6,
body .h6 {
  font-size: var(--h6);
  line-height: var(--h6-lh);
}
body blockquote {
  background: var(--silver-color);
  padding: 1rem;
  border-left: 4px solid var(--grey-300);
}
body .btn {
  justify-content: center;
  align-items: center;
}
body .btn .icon-right-arrow-custom {
  content: url("/modul/Custom/img/svg/arrow_right_orange_circle.svg");
}
body .btn:hover .icon-right-arrow-custom {
  content: url("/modul/Custom/img/svg/arrow_right_orange_circle.svg");
}
body pre {
  color: red;
}
body :focus:not(:focus-visible) {
  outline: transparent !important;
}
body :focus-visible {
  outline: 2px solid var(--accent-color);
  outline-offset: 2px;
}
body .pointer {
  cursor: pointer;
}
body pre {
  white-space: normal;
}
body ul.custom {
  list-style: none;
}
body ul.custom li {
  font-size: 0.9em;
  margin-bottom: 0.5rem;
  position: relative;
}
body ul.tyrion-blue li:before {
  color: var(--first-color);
}
body .blur-up {
  -webkit-filter: blur(5px);
  filter: blur(1px);
  transition: filter 100ms, -webkit-filter 100ms;
}
body .blur-up.lazyloaded {
  -webkit-filter: blur(0);
  filter: blur(0);
}
body .img-cover {
  display: block;
  max-width: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
body .card {
  box-shadow: none;
  border: 0;
  border-radius: 0;
}
body .card .card-header {
  background: none;
  border: none;
}
body .card .card-body {
  font-family: var(--second-font);
}
body .card .card-footer {
  background: initial;
  border: none;
}
body .section-title {
  margin: 3rem 0 2.5rem 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
}
@media (max-width: 40rem) {
  body .section-title {
    margin: 3.5rem 0 2.5rem 0;
  }
}
body .section-title .title h2 {
  margin-bottom: 0;
  color: var(--first-color);
  font-family: var(--first-font);
  font-size: var(--h2);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body .section-title h2 {
  color: var(--first-color);
  font-family: var(--first-font);
  font-size: var(--h2);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
body .section-title .splide__arrows {
  display: flex;
  gap: 1rem;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: center;
  align-items: center;
  position: relative;
}
body .section-title .splide__arrows .splide__arrow {
  position: relative;
  align-items: center;
  background: var(--second-color);
  border: 0;
  border-radius: 0;
  padding: 0;
  cursor: pointer;
  display: flex;
  justify-content: center;
  transform: translateY(0%);
  height: 3rem;
  width: 3rem;
  opacity: 0.7;
  transition: all var(--trans-200);
}
body .section-title .splide__arrows .splide__arrow svg {
  width: fit-content;
  height: fit-content;
}
body .section-title .splide__arrows .splide__arrow.splide__arrow--prev {
  left: 0;
  border-radius: var(--radius-sm) 0 0 var(--radius-sm);
}
body .section-title .splide__arrows .splide__arrow.splide__arrow--prev svg {
  transform: rotate(0deg);
}
body .section-title .splide__arrows .splide__arrow.splide__arrow--next {
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  right: 0;
}
body .section-title .splide__arrows .splide__arrow:hover {
  background: var(--second-color);
  box-shadow: 0 4px 9px rgba(17, 17, 26, 0.1);
  transition: var(--trans-200);
  opacity: 1;
}
body .section-title .splide__arrows .splide__arrow:hover svg {
  transition: var(--trans-350);
}
body .splide__pagination__page {
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: var(--white-color);
  border: 0.0625rem solid rgba(0, 0, 0, 0.2);
  /* 1px */
  transition: all 0.3s ease;
  margin: 0 0.3125rem;
  opacity: 0.7;
}
body .splide__pagination__page.is-active {
  background: var(--second-color);
  opacity: 0.9;
}
body .splide__pagination__page:hover {
  opacity: 1;
}
body .cc_container {
  background: var(--dark-color) !important;
  font-family: var(--second-font) !important;
}
body .cc_container .cc_btn {
  background: transparent;
  color: var(--white-color);
  border-color: var(--first-color);
}
body .cc_container .cc_btn:hover {
  color: var(--first-color);
}
body .cc_container a {
  color: var(--first-color);
}
body .cc_container a:hover,
body .cc_container a:visited {
  color: var(--white-color);
}
body .cc_container .cc_message {
  text-align: center;
}
body .cc_container .cc_btn.cc_btn_accept_all {
  color: var(--btn-first-color);
  background: var(--btn-first-bg);
  display: flex;
  border: 1px solid var(--btn-first-bg);
  font-weight: 600;
  padding: 0.5em;
}
body .cc_container .cc_btn.cc_btn_accept_all:hover,
body .cc_container .cc_btn.cc_btn_accept_all:focus,
body .cc_container .cc_btn.cc_btn_accept_all:visited:hover,
body .cc_container .cc_btn.cc_btn_accept_all:active:focus,
body .cc_container .cc_btn.cc_btn_accept_all:active:hover {
  color: var(--btn-first-color-hover);
  background: var(--btn-first-bg-hover);
  border: 1px solid var(--btn-first-bg-hover);
  box-shadow: 0 8px 22px -6px rgba(23, 61, 43, 0.35);
}
body .cc_container .cc_btn.cc_btn_accept_all:active {
  color: var(--btn-first-color-hover);
  background: var(--btn-first-bg-hover);
  border: 1px solid transparent;
  border-right: 1px solid var(--four-color);
}
body .cc_container .cc_btn.cc_btn_accept_all:visited {
  color: var(--btn-first-color);
  background: var(--btn-first-bg);
  border: 1px solid var(--btn-first-bg);
}
body .slick-prev,
body .slick-next {
  position: absolute;
  display: block;
  height: 40px;
  width: 40px;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  background: transparent;
  color: var(--first-color);
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
body .slick-prev:hover,
body .slick-next:hover,
body .slick-prev:focus,
body .slick-next:focus {
  outline: none;
  background: transparent;
  color: var(--first-color);
}
body .slick-prev:hover:before,
body .slick-next:hover:before,
body .slick-prev:focus:before,
body .slick-next:focus:before {
  opacity: 1;
  color: var(--first-color);
}
body .slick-prev.slick-disabled:before,
body .slick-next.slick-disabled:before {
  opacity: 1;
}
body .slick-prev {
  left: 0;
  z-index: 2;
}
body .slick-prev:before {
  content: "\f104";
  color: var(--first-color);
}
body .slick-next {
  right: 0;
}
body .slick-next:before {
  content: "\f105";
  color: var(--first-color);
}
body .others-img .slick-prev {
  top: 45%;
  left: 0;
  z-index: 2;
}
body .others-img .slick-next {
  top: 45%;
  right: 0;
}
body .slick-dots li button:before {
  font-size: 25px;
  color: var(--first-color) !important;
}
/*.d-flex {
  display: -webkit-box; !* OLD - iOS 6-, Safari 3.1-6, BB7 *!
  display: -ms-flexbox; !* TWEENER - IE 10 *!
  display: -webkit-flex; !* NEW - Safari 6.1+. iOS 7.1+, BB10 *!
  display: flex; !* NEW, Spec - Firefox, Chrome, Opera *!
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;

  &:before, &:after {
    content: normal;
  }

  @media screen and (max-width: 768px) {
    //display: block;
  }

  .grid-item {
    display: inline-flex;
  }
}*/
.margin-top--23 {
  margin-top: -23px;
}
.card-map {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0), 0 1px 5px 0 rgba(0, 0, 0, 0), 0 3px 1px -2px rgba(0, 0, 0, 0) !important;
  -webkit-transition: all 0.25s ease-out;
  -moz-transition: all 0.25s ease-out;
  -ms-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  border-radius: var(--radius-md);
  overflow: hidden;
}
.card-map #map {
  min-height: 25rem;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0), 0 1px 5px 0 rgba(0, 0, 0, 0), 0 3px 1px -2px rgba(0, 0, 0, 0) !important;
}
.card-map #map.productMap {
  height: 300px;
  margin-top: 0;
}
.card-map:hover {
  -webkit-box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.1), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -7px rgba(0, 0, 0, 0.02);
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.1), 0 6px 30px 5px rgba(0, 0, 0, 0), 0 8px 10px -7px rgba(0, 0, 0, 0.02);
  -webkit-transition: all 0.25s ease-out;
  -moz-transition: all 0.25s ease-out;
  -ms-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
}
.fb-comments,
.fb-comments iframe[style],
.fb-comments span {
  width: 100% !important;
}
.fb-page,
.fb-page iframe[style],
.fb-page span {
  width: 100% !important;
}
.heart img {
  width: 1rem;
}
.btn-liked {
  margin: 0;
  background: var(--silver-color);
  border-radius: 4rem;
  padding: 0.5rem 2rem;
  font-size: 1em;
  vertical-align: middle;
  text-decoration: none;
}
.btn-liked object {
  height: 20px;
  width: 20px;
  pointer-events: none;
  position: relative;
  left: -7px;
}
.btn-liked object svg {
  pointer-events: none;
}
.like-section {
  position: relative;
  padding: 2rem 0 5rem;
  height: 5rem;
}
.like-section .left-content {
  position: absolute;
  left: 0;
  line-height: 3rem;
}
.like-section .right-content {
  position: absolute;
  right: 0;
  line-height: 3rem;
}
.like-section .right-content .you-like-it {
  padding-right: 5px;
}
.like-section .right-content .count {
  font-size: 1em;
  text-decoration: none;
  position: relative;
  top: -4px;
  left: 0;
  color: var(--dark-color);
}
@media screen and (max-width: 996px) {
  .like-section .right-content {
    display: block;
    position: relative;
    text-align: center;
  }
}
@media screen and (max-width: 996px) {
  .like-section {
    height: initial;
    padding: 1rem 0 1rem;
  }
  .like-section .left-content {
    display: block;
    position: relative !important;
    text-align: center;
  }
  .like-section .right-content {
    display: block;
    position: relative;
    text-align: center;
  }
}
.faded-bg {
  opacity: 0;
  transition: var(--trans-200);
  background: var(--white-color);
}
.faded-navbar {
  overflow: hidden;
}
/*blockquote {
  border-left: 4px solid var(--first-color);
  //background: fade(var(--first-color), 20%);
  max-width: fit-content;
  font-size: .95rem;
  padding-left: 1rem;

  ol, ul {
    padding-left: 1rem;
  }
}*/
.fb-like {
  margin: 0 0 23px 0 !important;
  /* responsive */
}
.fb-like,
.fb-like > span,
.fb-like iframe[style] {
  width: 100% !important;
}
.alert-success-form {
  background: var(--first-color);
  color: var(--white-color);
  padding: 3rem;
  border-radius: 0;
  position: fixed;
  top: 50%;
  right: calc(50% - 9rem);
  width: 18rem;
  max-height: 30rem;
  z-index: 1030;
  text-align: center;
  border: 0;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .alert-success-form {
    width: 30rem;
    right: calc(50% - 15rem);
  }
}
.alert-success-form strong {
  font-size: var(--h4);
  line-height: var(--h4-lh);
  font-weight: 500;
  display: block;
  margin-bottom: 2rem;
}
.alert-success-form p {
  font-size: var(--p-body-big);
  line-height: var(--p-body-big-lh);
  font-weight: 500;
}
.alert-success-form .close {
  background-repeat: no-repeat;
  background-size: cover;
  font-size: 1rem;
  cursor: pointer;
  pointer-events: auto;
  top: 1.25rem;
  right: 1.25rem;
  position: absolute;
  width: 1.125rem;
  height: 1.125rem;
}
@-moz-keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
.section_404 {
  margin-top: clamp(4rem, 20vh, 10rem);
}
.section_404 h2 {
  font-size: clamp(4rem, 20vh, 15rem);
  color: var(--first-color);
  -webkit-text-fill-color: var(--first-color);
  /* Will override color (regardless of order) */
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: var(--white-color);
  margin: 0;
}
.section_404 h2:before {
  display: none;
}
.icon-custom {
  position: relative;
}
.icon-custom:before {
  content: '';
  position: absolute;
}
.icon-custom.icon-options:before {
  width: 1.5rem;
  height: 1.5rem;
  top: -12px;
  left: 0;
  background-image: url("/modul/Custom/img/svg/options-black.svg");
  background-repeat: no-repeat;
  background-size: cover;
}
.btn:hover .icon-custom.icon-options:before,
.btn:focus .icon-custom.icon-options:before,
.btn:active .icon-custom.icon-options:before {
  background-image: url("/modul/Custom/img/svg/options.svg");
}
.icon-custom.icon-sort:before {
  width: 1.5rem;
  height: 1.5rem;
  top: -12px;
  left: 0;
  background-image: url("/modul/Custom/img/svg/sort.svg");
  background-repeat: no-repeat;
  background-size: cover;
}
.carousel {
  background: #EEE;
  /* cell number */
}
.carousel .carousel-cell {
  width: 50%;
  height: 200px;
  margin-right: 10px;
  background: #8C8;
  border-radius: 5px;
  counter-increment: gallery-cell;
}
.carousel .carousel-cell:before {
  display: block;
  text-align: center;
  content: counter(gallery-cell);
  line-height: 200px;
  font-size: 80px;
  color: white;
}
#SuccessPrinter {
  position: fixed;
  top: 3rem;
  right: 1rem;
  z-index: 1030;
  text-align: center;
  font-weight: normal;
}
@media screen and (max-width: 425px) {
  #SuccessPrinter {
    top: 0;
    left: 0;
    right: 0;
  }
}
#SuccessPrinter > .content {
  display: none;
  width: 20rem;
  padding: 2rem;
  background-color: var(--bs-green);
  color: var(--white-color);
  font-size: 1rem;
}
#SuccessPrinter > .content.visible {
  display: block;
}
@media screen and (max-width: 425px) {
  #SuccessPrinter > .content {
    width: 100%;
  }
}
#SuccessPrinter .icon {
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-size: 0.8rem;
  cursor: pointer;
  pointer-events: auto;
}
#ErrorPrinter {
  position: fixed;
  top: 9rem;
  right: 1rem;
  z-index: 1030;
  text-align: center;
  font-weight: normal;
}
@media screen and (max-width: 425px) {
  #ErrorPrinter {
    top: 0;
    left: 0;
    right: 0;
  }
}
#ErrorPrinter > .content {
  display: none;
  width: 20rem;
  padding: 2rem;
  background: var(--first-color);
  color: var(--white-color);
  font-size: 1rem;
}
#ErrorPrinter > .content.visible {
  display: block;
}
@media screen and (max-width: 425px) {
  #ErrorPrinter > .content {
    width: 100%;
  }
}
#ErrorPrinter .icon {
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-size: 0.8rem;
  cursor: pointer;
  pointer-events: auto;
}
[x-cloak] {
  display: none !important;
}
.first-uppercase {
  text-transform: capitalize;
}
/* RK šablóna: veľkosť loga v navbare (SVG/PNG môžu byť malé - škáluj na rozumnú výšku) */
.navbar-brand svg,
.navbar-brand img {
  height: 42px;
  width: auto;
  max-width: 240px;
}
/* Zarovnanie do bloku - Bootstrap 5 `.text-justify` odstránil, ale front edit
   ho ponúka (zarovnanie sa ukladá ako trieda, nie ako inline štýl). */
.text-justify {
  text-align: justify;
}
/* Zarovnanie textu z front editu - import na konci, nech prebije flex zmrštenie
   nadpisov v `.section-title`. Viď komentár v `_front_edit_obsah.less`. */
/* ============================================================
   ZAROVNANIE TEXTU Z FRONT EDITU
   Panel ukladá zarovnanie ako triedu Bootstrapu (`text-center`, `text-end`,
   `text-justify`) priamo na nadpis či odsek - zámerne, aby obsah nemohol
   obísť dizajnový systém inline štýlom.

   Lenže `.section-title` je flex kontajner (`display: flex; flex-direction:
   column; align-items: flex-start`, viď `style.less`). Nadpis je v ňom flex
   POLOŽKA, ktorá sa zmrští na šírku obsahu - odmerané 130 px v rodičovi
   širokom 1235 px. `text-align: center` teda text vycentroval, ale vnútri
   úzkej škatuľky stojacej vľavo, takže navonok sa nedialo nič.

   Stačí povedať, že zarovnaný blok sa má roztiahnuť na celú šírku. Rieši to
   aj `text-end` (vpravo) a `text-justify` (do bloku), ktoré mali ten istý
   problém. `text-start` je tu kvôli symetrii - vracia sa ním späť doľava.
   ============================================================ */
.section-title > .text-start,
.textfield-telo > .text-start,
.hs-content > .text-start,
.ft-copy > .text-start,
.foot-copy > .text-start,
.section-title > .text-center,
.textfield-telo > .text-center,
.hs-content > .text-center,
.ft-copy > .text-center,
.foot-copy > .text-center,
.section-title > .text-end,
.textfield-telo > .text-end,
.hs-content > .text-end,
.ft-copy > .text-end,
.foot-copy > .text-end,
.section-title > .text-justify,
.textfield-telo > .text-justify,
.hs-content > .text-justify,
.ft-copy > .text-justify,
.foot-copy > .text-justify {
  align-self: stretch;
  width: 100%;
}
/* Front edit obaľuje needitovaný „Text sekcie" (description widgetu) do <span> -
   ten istý problém ako vyššie: span je flex položka, zmrští sa na šírku nadpisu
   v ňom a `text-center` na H2 vnútri nemá okolo seba priestor na vycentrovanie. */
.section-title > span {
  align-self: stretch;
}
/* ============================================================
   TEXTOVÉ POLE - päť typov
   Šírku sekcie riadi nastavenie „Rozloženie - šírka sekcie" (`container`),
   typ šablóny rieši LEN rozloženie textu vnútri. Preto tu nie sú žiadne
   pevné šírky v px a nič neprepisuje kontajner.
   ============================================================ */
/* Spoločné pre telo všetkých typov. Nadpisy vnútri obsahu musia vyzerať
   ROVNAKO ako nadpis sekcie - bez toho sa text, ktorý klient prepne z odseku
   na nadpis, vizuálne rozíde a naspäť to už netrafí. */
.textfield-telo > h2,
.textfield-telo > h3,
.textfield-telo > h4 {
  margin: 0 0 0.75rem;
}
.textfield-telo > h2 {
  font-size: 1.75rem;
}
.textfield-telo > h3 {
  font-size: 1.375rem;
}
.textfield-telo > h4 {
  font-size: 1.125rem;
}
.textfield-telo > p {
  margin: 0 0 1rem;
}
.textfield-telo > p:last-child {
  margin-bottom: 0;
}
.textfield-telo > ul,
.textfield-telo > ol {
  margin: 0 0 1rem;
  padding-left: 1.25rem;
}
.textfield-telo > ul > li,
.textfield-telo > ol > li {
  margin-bottom: 0.375rem;
}
/* Zvislý odstup sekcie - krémová sekcia, polovica hore aj dole (viď --section-y
   v _variables.less). Dve textové polia za sebou = celý odstup, vedľa farebného
   pásu polovica. Predtým tu bol `mb-4` a odstup zhora dopĺňala stránka. */
.text_default,
.text_narrow,
.text_side_title,
.text_two_columns,
.text_highlight {
  padding: var(--section-y-half) 0;
  /* nadpis sekcie patrí k textu pod ním: globálne .section-title (3rem hore, 2.5rem dole) + okraj h2
     dávali 56 px medzi nadpisom a textom a ďalších 48 px nad nadpisom k odstupu sekcie */
  /* „na celú šírku okna" - Bootstrap dáva len 12 px, text by sa lepil na okraj obrazovky; na desktope
     rovnaký okraj ako logo v navbare (4rem + 12px), na mobile platí --page-x zo style.less */
}
.text_default .section-title,
.text_narrow .section-title,
.text_side_title .section-title,
.text_two_columns .section-title,
.text_highlight .section-title {
  margin: 0 0 1.5rem;
}
.text_default .section-title > h1,
.text_narrow .section-title > h1,
.text_side_title .section-title > h1,
.text_two_columns .section-title > h1,
.text_highlight .section-title > h1,
.text_default .section-title > h2,
.text_narrow .section-title > h2,
.text_side_title .section-title > h2,
.text_two_columns .section-title > h2,
.text_highlight .section-title > h2,
.text_default .section-title > h3,
.text_narrow .section-title > h3,
.text_side_title .section-title > h3,
.text_two_columns .section-title > h3,
.text_highlight .section-title > h3 {
  margin-bottom: 0;
}
@media (min-width: 48rem) {
  .text_default > .container-fluid,
  .text_narrow > .container-fluid,
  .text_side_title > .container-fluid,
  .text_two_columns > .container-fluid,
  .text_highlight > .container-fluid {
    padding-left: clamp(1.5rem, 5.3vw, 4.75rem);
    padding-right: clamp(1.5rem, 5.3vw, 4.75rem);
  }
}
/* ---- TYP 1: na celú šírku ----
   Sekcia ide cez celý kontajner (nadpis, obrázky v texte), ale odsek a zoznam sa zalomia na ~80 znakov -
   riadok cez celý desktop mal ~115 znakov a ťažko sa čítal. Úzky typ (68ch) zužuje celý blok aj s nadpisom. */
.text_default .textfield-telo > p,
.text_default .textfield-telo > ul,
.text_default .textfield-telo > ol {
  max-width: 80ch;
}
/* ---- TYP 2: úzky na čítanie ----
   `ch` je šírka číslice v danom písme, takže miera drží ~68 znakov na riadok
   nezávisle od veľkosti písma. Pri `container-fluid` tým text neutečie
   cez celú obrazovku. */
.text_narrow .tf-uzky {
  max-width: 68ch;
}
/* ---- TYP 3: nadpis vedľa textu ----
   Nadpis je bočný popisok, preto hore zarovnaný a na širokej obrazovke
   trochu odsadený od textu. Na mobile sa stĺpce skladajú pod seba samé
   (bootstrapové `col-12`), nadpis teda zostane nad textom. */
.text_side_title .tf-bocny .section-title {
  margin-top: 0;
}
@media (min-width: 62rem) {
  .text_side_title .tf-bocny .section-title {
    position: sticky;
    /* nadpis ostane pri dlhom texte na očiach */
    top: 6rem;
  }
}
/* ---- TYP 4: dva stĺpce ----
   `columns` necháva text tiecť, takže sa nemusí ručne deliť. `break-inside`
   bráni tomu, aby sa odsek zlomil uprostred medzi stĺpce. */
.text_two_columns .tf-stlpce {
  /* Prvý nadpis by inak visel sám na konci stĺpca. */
}
@media (min-width: 48rem) {
  .text_two_columns .tf-stlpce {
    columns: 2;
    column-gap: 2.5rem;
  }
}
.text_two_columns .tf-stlpce > p,
.text_two_columns .tf-stlpce > ul,
.text_two_columns .tf-stlpce > ol,
.text_two_columns .tf-stlpce > h2,
.text_two_columns .tf-stlpce > h3,
.text_two_columns .tf-stlpce > h4 {
  break-inside: avoid;
}
.text_two_columns .tf-stlpce > h2:first-child,
.text_two_columns .tf-stlpce > h3:first-child,
.text_two_columns .tf-stlpce > h4:first-child {
  margin-top: 0;
}
/* ---- TYP 5: zvýraznený blok ----
   Farba ide z premenných dizajnu, nie z obsahu - klient si tak nenafarbí
   text ručne a blok vyzerá na celom webe rovnako. */
.text_highlight .tf-blok {
  padding: 1.5rem 1.75rem;
  border-radius: var(--radius-sm);
  background: var(--four-color);
  /* krémový povrch z tokenov, ten istý ako striedavý pás */
}
@media (max-width: 40rem) {
  .text_highlight .tf-blok {
    padding: 1.25rem;
  }
}
.text_highlight .tf-blok .section-title {
  margin-top: 0;
}
.text_highlight .tf-blok .textfield-telo > p:last-child {
  margin-bottom: 0;
}
/* ============================================================
   ŠTÝLY TEXTU Z EDITORA (`text_styles` v `.hints.php`)
   Klient ich vyberá menom („Perex", „Zvýraznené"), triedy sem píše editor
   a `cleanHtml()` prepúšťa práve a len tieto. Vzhľad teda ostáva tu,
   v dizajnovom systéme, nie v obsahu.
   ============================================================ */
/* Perex - väčší úvodný odstavec pod nadpisom. */
.tf-perex {
  font-size: 1.125rem;
  line-height: 1.6;
  color: var(--gray-color);
}
@media (max-width: 40rem) {
  .tf-perex {
    font-size: 1.0625rem;
  }
}
/* Zvýraznené slovo v nadpise - ozdobné písmo a akcentová farba.
   Práve toto sa cez holé H2/H3 spraviť nedalo: je to kus textu VNÚTRI nadpisu,
   takže to musí byť `span` s triedou, nie iná značka. */
.tf-akcent {
  font-family: var(--first-font);
  font-style: italic;
  font-weight: 400;
  color: var(--accent-text);
}
/* ============================================================
   MOTION - Šablóna 1b
   Sekcie pod okrajom obrazovky sa pri scrolle vynoria zdola, skupiny kariet postupne jedna po druhej,
   čísla v štatistikách sa napočítajú (JS initMotion() v main.js). Fotky v hero a v hlavičke podstránky
   sa pomaly priblížia.

   Skrytie platí len pod `html.motion` - triedu dá JS, keď animácie naozaj beží (nie editor, nie
   prefers-reduced-motion). Bez JS je všetko viditeľné. Prvky viditeľné hneď po načítaní sa neskrývajú
   (LCP, Lighthouse).
   Animácia (nie transition) s `backwards`: po dobehnutí na prvku nič neostane, takže hover efekty
   kariet (vlastné transform/transition) fungujú ďalej bez zmeny.
   ============================================================ */
@keyframes motion-up {
  from {
    opacity: 0;
    transform: translateY(2.25rem);
  }
}
@keyframes motion-zoom {
  from {
    transform: scale(1.08);
  }
}
@keyframes motion-kenburns {
  from {
    transform: scale(1.07);
  }
  to {
    transform: scale(1);
  }
}
html.motion .rv:not(.is-in),
html.motion .rv-group:not(.is-in) > * {
  opacity: 0;
}
html.motion .rv.is-in {
  animation: motion-up 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
}
html.motion .rv-group.is-in > * {
  animation: motion-up 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
  animation-delay: calc(var(--i, 0) * 90ms);
}
/* fotky - nezávisle od scrollu, len keď systém animácie nevypína */
@media (prefers-reduced-motion: no-preference) {
  /* hero: aktívny slide sa pomaly priblíži (pri každom prepnutí slidu znova) */
  .hero-slide.is-active .hero-img {
    animation: motion-kenburns 9s ease-out both;
  }
  /* hlavička podstránky: fotka dosadne pri načítaní */
  .subpage_header_photo .hs-media {
    overflow: hidden;
  }
  .subpage_header_photo .hs-media .hs-img {
    animation: motion-zoom 1.8s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
  }
}
/* napočítanie čísla - rovnaká šírka číslic, nech text počas počítania neskáče */
.stats_band .stat-num {
  font-variant-numeric: tabular-nums;
}
/* Modul booking (docs/dev/booking.md) - widget "Rezervácia" na detaile produktu-zdroja a stránky
   rezervácie cez token (/booking/r, /booking/a). Len semantické tokeny z _variables.less (žiadne
   natvrdo farby) - rovnaký súbor funguje v predvolenej (blank) aj 1b šablóne.
   POZOR (pamäť less-clamp-calc-pasca): lessc sčíta rem + vw v clamp() na maximum - zmiešané
   jednotky preto len v calc(), nie v tomto súbore (žiadny clamp tu nie je potrebný). */
.booking-widget,
.booking-page {
  background: var(--six-color);
  border: 1px solid var(--line-color);
  border-radius: 1rem;
  padding: 1.5rem;
  margin: 2rem 0;
  max-width: 48rem;
  width: 100%;
  box-sizing: border-box;
}
.booking-widget__title,
.booking-page__title {
  font-family: var(--first-font);
  color: var(--first-color);
  margin: 0 0 1rem;
}
.booking-cal {
  margin-bottom: 1.5rem;
}
.booking-cal__nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}
.booking-cal__nav-btn {
  background: var(--four-color);
  border: 1px solid var(--line-color);
  border-radius: 0.5rem;
  width: 2.25rem;
  height: 2.25rem;
  cursor: pointer;
}
.booking-cal__nav-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.booking-cal__range {
  font-weight: 600;
  color: var(--seven-color);
}
.booking-cal__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1.5rem;
}
@media (max-width: 36rem) {
  .booking-cal__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
.booking-cal__month {
  min-width: 0;
}
.booking-cal__month-title {
  text-align: center;
  font-weight: 600;
  margin-bottom: 0.5rem;
  text-transform: capitalize;
  color: var(--seven-color);
}
.booking-cal__weekdays,
.booking-cal__days {
  display: grid;
  /* minmax(0, 1fr), nie holé 1fr - inak dlhší obsah bunky (napr. neprečítaná {P P} šablóna pred
       prekladom) roztiahne grid cez šírku rodiča namiesto toho, aby sa zalomil/skrátil. */
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0.2rem;
}
.booking-cal__weekdays span {
  text-align: center;
  font-size: 0.75rem;
  color: var(--eight-color);
}
.booking-cal__day {
  /* min-width: 0 - grid položka (nie len track) má predvolene min-width:auto, čo by pri úzkom
       stĺpci (mobil) ignorovalo minmax(0,1fr) na rodičovi a pretlačilo grid cez šírku obrazovky. */
  min-width: 0;
  width: 100%;
  padding: 0;
  aspect-ratio: 1;
  border: none;
  border-radius: 0.4rem;
  background: var(--three-color);
  color: var(--ink);
  cursor: pointer;
  font-size: 0.85rem;
}
.booking-cal__day--empty {
  background: transparent;
  cursor: default;
}
.booking-cal__day--blocked,
.booking-cal__day--past {
  background: transparent;
  color: var(--grey-400);
  text-decoration: line-through;
  cursor: not-allowed;
}
.booking-cal__day--invalid_start {
  color: var(--grey-500);
  cursor: not-allowed;
}
.booking-cal__day--selected {
  background: var(--accent-color);
  color: var(--on-accent);
  font-weight: 600;
}
.booking-cal__day:disabled {
  cursor: not-allowed;
}
.booking-cal__hint,
.booking-cal__legend {
  font-size: 0.85rem;
  color: var(--eight-color);
}
.booking-cal__legend-item {
  margin-right: 1rem;
}
.booking-cal__legend-item::before {
  content: '';
  display: inline-block;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 50%;
  margin-right: 0.3rem;
  vertical-align: middle;
}
.booking-cal__legend-item--free::before {
  background: var(--three-color);
  border: 1px solid var(--line-color);
}
.booking-cal__legend-item--blocked::before {
  background: var(--grey-300);
}
.booking-cal__legend-item--sel::before {
  background: var(--accent-color);
}
.booking-field {
  margin-bottom: 1rem;
}
.booking-field label,
.booking-field__label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.3rem;
  color: var(--seven-color);
}
.booking-field input[type="text"],
.booking-field input[type="email"],
.booking-field input[type="tel"],
.booking-field input[type="number"],
.booking-field input[type="date"],
.booking-field select,
.booking-field textarea {
  width: 100%;
  padding: 0.6rem 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: 0.5rem;
  background: var(--white-color);
  color: var(--ink);
}
.booking-field__item {
  margin-bottom: 0.75rem;
}
.booking-field__gdpr {
  display: flex;
  gap: 0.5rem;
  font-size: 0.85rem;
  color: var(--eight-color);
  align-items: flex-start;
}
.booking-stepper {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.booking-stepper button {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.5rem;
  border: 1px solid var(--line-color);
  background: var(--four-color);
  cursor: pointer;
}
.booking-stepper input {
  width: 3.5rem;
  text-align: center;
  padding: 0.5rem;
  border: 1px solid var(--line-color);
  border-radius: 0.5rem;
}
.booking-addition {
  display: block;
  font-size: 0.9rem;
  margin-bottom: 0.4rem;
  color: var(--eight-color);
}
.booking-addition input {
  margin-right: 0.5rem;
}
.booking-addition small {
  display: block;
  color: var(--eight-color);
}
.booking-quote {
  background: var(--four-color);
  border-radius: 0.75rem;
  padding: 1rem;
  margin-bottom: 1rem;
}
.booking-quote__items {
  width: 100%;
}
.booking-quote__items td {
  padding: 0.2rem 0;
}
.booking-quote__items td:last-child {
  text-align: right;
}
.booking-quote__total {
  margin-top: 0.5rem;
  color: var(--first-color);
}
.booking-quote__due {
  font-size: 0.85rem;
  color: var(--eight-color);
}
.booking-error {
  color: #B3261E;
  font-size: 0.9rem;
}
.booking-success {
  color: var(--green-500);
  font-weight: 600;
}
.booking-submit {
  width: 100%;
  justify-content: center;
  padding: 0.85rem 1.5rem;
  border-radius: 2rem;
  font-weight: 600;
  cursor: pointer;
}
.booking-submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
/* Widget "Termíny" (prehľad obsadenosti zdrojov) - homepage sekcia */
.booking-overview__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
  gap: 1rem;
}
.booking-overview__item {
  background: var(--six-color);
  border: 1px solid var(--line-color);
  border-radius: 0.75rem;
  padding: 1rem;
}
.booking-overview__title {
  font-weight: 600;
  color: var(--first-color);
  margin-bottom: 0.4rem;
}
.booking-overview__status {
  font-size: 0.85rem;
}
.booking-overview__status--free {
  color: var(--green-500);
}
.booking-overview__status--soon {
  color: var(--accent-text);
}
.booking-overview__status--full {
  color: var(--grey-600);
}
.booking-page__row {
  display: flex;
  justify-content: space-between;
  padding: 0.4rem 0;
  border-bottom: 1px solid var(--line-color);
}
.booking-page__qr img {
  max-width: 180px;
}
/* ---------------------------------------------------------------------------
   BYDO - vrstva nad šablónou 1b (docs/bydo/dizajn.md). `_bydo_variables` MUSÍ
   byť posledný import - prepisuje :root premenné 1b aj literálny `body{}`
   zapísaný vyššie v tomto súbore (dôvod v docs/bydo/dizajn.md).
   --------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------
   section_header_typ_1 - hlavička (logo, menu, Účet, Pridať inzerát) + na mobile menu cez celú obrazovku
   (.bydo-mmenu) a spodná lišta ako v aplikácii (.bydo-tabbar), Jozef 7. 11.
   Bydo widget (docs/bydo/navrhy-uvodka/tokeny.md). Sticky, biele pozadie.
   --------------------------------------------------------------------------- */
.section_header_typ_1 {
  position: sticky;
  top: 0;
  z-index: 1030;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(8px);
  /* jemný tieň namiesto čiary (Jozef 11. 11.) */
  box-shadow: 0 0.25rem 1.25rem rgba(76, 14, 101, 0.07);
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  /* Skutočné SVG logo starého bydo.sk (Jozef, 6. 11. 14:24), nie textová náhrada -
     public/modul/Custom/img/logo-bydo.svg, pomer strán 518,1:170,6. */
  /* Účet - tlačidlo s obrysom vo výške Pridať inzerát (sivý odkaz vedľa zeleného tlačidla zanikal, Jozef 7. 11.) */
  /* PC: Obľúbené (srdiečko s počtom) pred Účtom; na mobile ich má spodná lišta */
  /* "Pridať inzerát" je PRIMÁRNA akcia -> `.btn.btn-first.btn-s` priamo v šablóne
     (docs/bydo/dizajn.md - fialová nie je farba tlačidla), žiadna vlastná trieda tu netreba. */
  /* hamburger: dve čiary, pri otvorení sa zložia do krížika */
  /* prihlásený na mobile: iniciály v krúžku namiesto čiar, pri otvorenom menu krížik (Jozef 12. 11.) */
}
.section_header_typ_1 .bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 4.5rem;
  gap: 1.5rem;
}
.section_header_typ_1 .logo {
  display: flex;
  align-items: center;
}
.section_header_typ_1 .logo img {
  height: 2.75rem;
  width: auto;
  display: block;
}
@media (max-width: 36rem) {
  .section_header_typ_1 .logo img {
    height: 2.25rem;
  }
}
.section_header_typ_1 nav {
  display: flex;
  align-items: center;
  gap: 1.75rem;
  flex: 1;
  justify-content: center;
}
.section_header_typ_1 nav a {
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--warm);
  text-decoration: none;
}
.section_header_typ_1 nav a:hover {
  color: var(--first-color);
}
.section_header_typ_1 .actions {
  display: flex;
  align-items: center;
  gap: 0.875rem;
}
.section_header_typ_1 a {
  text-decoration: none;
}
.section_header_typ_1 .login {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  height: 2.5rem;
  padding: 0 1rem;
  border: 1.5px solid var(--purple-100);
  border-radius: var(--radius-badge);
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--first-color);
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.section_header_typ_1 .login:hover {
  border-color: var(--first-color);
  background: var(--purple-50);
}
.section_header_typ_1 .login .i {
  width: 1.25em;
  height: 1.25em;
}
.section_header_typ_1 .cta-kratky {
  display: none;
}
.section_header_typ_1 .login-mob {
  display: none;
}
.section_header_typ_1 .fav-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  color: var(--first-color);
  transition: background-color 0.2s ease;
}
.section_header_typ_1 .fav-link .i {
  width: 1.375rem;
  height: 1.375rem;
}
.section_header_typ_1 .fav-link:hover,
.section_header_typ_1 .fav-link[aria-current="page"] {
  background: var(--purple-50);
}
.section_header_typ_1 .fav-link__pocet {
  position: absolute;
  top: 0.125rem;
  right: -0.125rem;
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 0.3rem;
  border-radius: 1rem;
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.625rem;
  font-weight: 800;
  line-height: 1.125rem;
  text-align: center;
}
.section_header_typ_1 .fav-link__pocet[hidden] {
  display: none;
}
.section_header_typ_1 .burger {
  display: none;
  width: 2.75rem;
  height: 2.75rem;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 0;
  color: var(--first-color);
  background: var(--purple-50);
  transition: background-color 0.25s ease, color 0.25s ease;
}
.section_header_typ_1 .burger:hover {
  background: var(--purple-100);
}
.section_header_typ_1 .burger-lines {
  position: relative;
  width: 1.125rem;
  height: 0.75rem;
}
.section_header_typ_1 .burger-lines span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1), top 0.4s cubic-bezier(0.65, 0, 0.35, 1), width 0.3s ease;
}
.section_header_typ_1 .burger-lines span:first-child {
  top: 0;
}
.section_header_typ_1 .burger-lines span:last-child {
  top: calc(100% - 2px);
  width: 70%;
}
.section_header_typ_1 .burger {
  position: relative;
}
.section_header_typ_1 .burger-ini {
  font-size: 0.875rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1;
}
.section_header_typ_1 .burger.has-ini .burger-lines {
  display: none;
}
.section_header_typ_1 .burger .bydo-acc__dot {
  top: 0.125rem;
  right: 0.125rem;
  width: 0.625rem;
  height: 0.625rem;
  box-shadow: 0 0 0 2px var(--white-color);
}
.section_header_typ_1.is-open .burger {
  background: var(--first-color);
  color: var(--white-color);
}
.section_header_typ_1.is-open .burger.has-ini .burger-ini,
.section_header_typ_1.is-open .burger .bydo-acc__dot {
  display: none;
}
.section_header_typ_1.is-open .burger.has-ini .burger-lines {
  display: block;
}
.section_header_typ_1.is-open .burger-lines span:first-child {
  top: calc(50% - 1px);
  transform: rotate(45deg);
}
.section_header_typ_1.is-open .burger-lines span:last-child {
  top: calc(50% - 1px);
  width: 100%;
  transform: rotate(-45deg);
}
.section_header_typ_1 nav a[aria-current="page"] {
  color: var(--first-color);
}
@media (max-width: 61.25rem) {
  .section_header_typ_1 {
    /* Pridať na mobile = krátka zelená pilulka „+ Pridať" (Jozef 7. 11.), pod 360 px len „+" */
    /* Účet v hlavičke na mobile nie je (Jozef 12. 11.) - je v spodnej lište a v menu (prihlásený: iniciály na tlačidle menu) */
  }
  .section_header_typ_1 nav {
    display: none;
  }
  .section_header_typ_1 .fav-link {
    display: none;
  }
  .section_header_typ_1 .burger {
    display: flex;
  }
  .section_header_typ_1 .cta {
    height: 2.75rem;
    padding: 0 0.875rem;
    gap: 0.3rem;
    border-radius: var(--radius-badge);
  }
  .section_header_typ_1 .cta-dlhy {
    display: none;
  }
  .section_header_typ_1 .cta-kratky {
    display: inline;
  }
  .section_header_typ_1 .bydo-acc,
  .section_header_typ_1 .login {
    display: none;
  }
  .section_header_typ_1 .actions {
    gap: 0.5rem;
  }
}
@media (max-width: 61.25rem) and (max-width: 22.4375rem) {
  .section_header_typ_1 .cta {
    width: 2.75rem;
    padding: 0;
    justify-content: center;
  }
  .section_header_typ_1 .cta-kratky {
    display: none;
  }
}
/* ---------------------------------------------------------------------------
   Mobilné menu cez celú obrazovku pod hlavičkou. Otvára sa kruhom od tlačidla menu (clip-path),
   bloky nabiehajú postupne (--i = poradie). Pozadie = jemné oblé tvary bydo (ako SVG pozadie úvodky).
   --------------------------------------------------------------------------- */
.bydo-mmenu {
  display: none;
  /* bloky nabiehajú zdola s oneskorením podľa poradia */
  /* typy nehnuteľností pod Nehnuteľnosti - posuvný pás kariet */
  /* výzva Pridať inzerát - tmavá fialová karta, zelené tlačidlo */
  /* Prihlásiť sa / Registrovať sa vedľa seba (prihlásený: Môj účet na celú šírku) */
  /* účet prihláseného navrchu menu (Jozef 8. 11.) - karta s menom na jemnom pozadí + tri dlaždice ako typy */
  /* Odhlásiť sa - červené tlačidlo cez celú šírku na konci menu, text v strede (Jozef 12. 11.) */
  /* Pridať bydo na plochu - riadok s ikonou aplikácie, návod pod ním */
  /* ostatné odkazy (Realitné kancelárie, Blog a rady) - menšie riadky pod hlavnými blokmi */
  /* podmenu (Nástroje) - rozbalí sa ťuknutím, podpoložky odsadené a menšie */
}
@media (max-width: 61.25rem) {
  .bydo-mmenu {
    display: block;
    position: fixed;
    inset: 4.5rem 0 0 0;
    z-index: 1020;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: radial-gradient(28rem 22rem at 110% -5%, var(--purple-100), transparent 65%), radial-gradient(24rem 20rem at -15% 105%, var(--green-50), transparent 70%), radial-gradient(18rem 14rem at 95% 85%, var(--purple-50), transparent 70%), var(--white-color);
    clip-path: circle(0 at calc(100% - 2.6rem) -2rem);
    visibility: hidden;
    transition: clip-path 0.6s cubic-bezier(0.65, 0, 0.35, 1), visibility 0s linear 0.6s;
  }
  .bydo-mmenu.is-open {
    clip-path: circle(150% at calc(100% - 2.6rem) -2rem);
    visibility: visible;
    transition: clip-path 0.7s cubic-bezier(0.65, 0, 0.35, 1), visibility 0s;
  }
}
.bydo-mmenu__inner {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  min-height: 100%;
  padding: 1.75rem 1.25rem calc(2rem + env(safe-area-inset-bottom));
  max-width: 36rem;
  margin: 0 auto;
}
.bydo-mmenu__link,
.bydo-mmenu__types,
.bydo-mmenu__cta,
.bydo-mmenu__auth,
.bydo-mmenu__acc,
.bydo-mmenu__app,
.bydo-mmenu__more,
.bydo-mmenu__foot,
.bydo-mmenu__out {
  opacity: 0;
  transform: translateY(1.25rem);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.bydo-mmenu.is-open .bydo-mmenu__link,
.bydo-mmenu.is-open .bydo-mmenu__types,
.bydo-mmenu.is-open .bydo-mmenu__cta,
.bydo-mmenu.is-open .bydo-mmenu__auth,
.bydo-mmenu.is-open .bydo-mmenu__acc,
.bydo-mmenu.is-open .bydo-mmenu__app,
.bydo-mmenu.is-open .bydo-mmenu__more,
.bydo-mmenu.is-open .bydo-mmenu__foot,
.bydo-mmenu.is-open .bydo-mmenu__out {
  opacity: 1;
  transform: none;
  transition: opacity 0.5s ease calc(0.18s + var(--i, 0) * 0.06s), transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1) calc(0.18s + var(--i, 0) * 0.06s);
}
.bydo-mmenu__main {
  display: flex;
  flex-direction: column;
}
.bydo-mmenu__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.875rem 0;
  font-family: var(--first-font);
  font-size: 1.875rem;
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1.15;
  color: var(--first-color);
  text-decoration: none;
}
.bydo-mmenu__link .i {
  flex: none;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.625rem;
  border-radius: 50%;
  background: var(--white-color);
  box-shadow: var(--shadow-card-1);
  color: var(--first-color);
  transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease;
}
.bydo-mmenu__link:hover .i,
.bydo-mmenu__link:focus-visible .i,
.bydo-mmenu__link[aria-current="page"] .i {
  background: var(--accent-color);
  color: var(--on-accent);
  transform: translateX(0.25rem);
}
.bydo-mmenu__link[aria-current="page"] span {
  color: var(--purple-600);
}
.bydo-mmenu__types {
  display: flex;
  gap: 0.5rem;
  margin: 0.25rem -1.25rem 0.75rem;
  padding: 0 1.25rem 0.25rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 1.25rem;
  /* prvá karta lícuje s nadpisom, nie s okrajom obrazovky */
  scrollbar-width: none;
}
.bydo-mmenu__types::-webkit-scrollbar {
  display: none;
}
.bydo-mmenu__types a {
  flex: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  min-width: 6.5rem;
  padding: 0.875rem 0.875rem 0.75rem;
  border-radius: var(--radius-md);
  background: var(--white-color);
  box-shadow: var(--shadow-card-1);
  scroll-snap-align: start;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--warm);
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.bydo-mmenu__types a .i {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--accent-color);
}
.bydo-mmenu__types a:active {
  transform: scale(0.97);
}
.bydo-mmenu__cta {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.25rem;
  border-radius: var(--radius-lg);
  background: var(--purple-900);
  color: #fff;
  position: relative;
  overflow: hidden;
}
.bydo-mmenu__cta::after {
  content: '';
  position: absolute;
  right: -3rem;
  top: -3rem;
  width: 9rem;
  height: 9rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(151, 203, 68, 0.35), transparent 70%);
  pointer-events: none;
}
.bydo-mmenu__cta strong {
  display: block;
  font-family: var(--first-font);
  font-size: 1.25rem;
  font-weight: 800;
}
.bydo-mmenu__cta span {
  font-size: 0.9rem;
  color: var(--purple-100);
}
.bydo-mmenu__cta .btn {
  align-self: stretch;
  justify-content: center;
}
.bydo-mmenu__cta .btn span {
  color: inherit;
  font-size: inherit;
}
.bydo-mmenu__foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1.25rem;
  margin-top: auto;
  padding-top: 1.25rem;
  border-top: 1px solid var(--line-color);
}
.bydo-mmenu__foot a {
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--mute);
  text-decoration: none;
}
.bydo-mmenu__foot a:hover {
  color: var(--first-color);
}
.bydo-mmenu__acc {
  margin: 0 0 1.75rem;
}
.bydo-mmenu__acc-head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.875rem 1rem;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--purple-50), var(--white-color));
  text-decoration: none;
}
.bydo-mmenu__acc-head .bydo-acc__av {
  width: 2.75rem;
  height: 2.75rem;
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.9375rem;
}
.bydo-mmenu__acc-head > .i {
  width: 1.25rem;
  height: 1.25rem;
  margin-left: auto;
  color: var(--first-color);
}
.bydo-mmenu__acc-name {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.bydo-mmenu__acc-name b {
  font-family: var(--first-font);
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--first-color);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bydo-mmenu__acc-name small {
  font-size: 0.8125rem;
  color: var(--mute);
}
.bydo-mmenu__acc-tiles {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
  margin-top: 0.625rem;
}
.bydo-mmenu__acc-tiles > a,
.bydo-mmenu__acc-tiles > button {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.875rem 0.75rem 0.75rem;
  border: 0;
  border-radius: var(--radius-md);
  background: var(--white-color);
  box-shadow: var(--shadow-card-1);
  font: inherit;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--warm);
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.2s ease;
}
.bydo-mmenu__acc-tiles > a .i,
.bydo-mmenu__acc-tiles > button .i {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--accent-color);
}
.bydo-mmenu__acc-tiles > a:active,
.bydo-mmenu__acc-tiles > button:active {
  transform: scale(0.97);
}
.bydo-mmenu__acc-badge {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  min-width: 1.375rem;
  padding: 0.0625rem 0.375rem;
  border-radius: 1rem;
  background: var(--purple-50);
  font-size: 0.6875rem;
  font-weight: 800;
  color: var(--first-color);
  text-align: center;
}
.bydo-mmenu__acc-badge.is-warn {
  background: #FFF1D6;
  color: #8A5A00;
}
.bydo-mmenu__acc .bydo-acc__ask {
  margin-top: 0.5rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.bydo-mmenu__out {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  margin-top: auto;
  padding: 0.875rem 1rem;
  border: 0;
  border-radius: var(--radius-badge);
  background: var(--color-error);
  font: inherit;
  font-size: 1rem;
  font-weight: 700;
  color: var(--white-color);
  cursor: pointer;
}
.bydo-mmenu__out .i {
  width: 1.125rem;
  height: 1.125rem;
}
.bydo-mmenu__out:active {
  transform: scale(0.98);
}
.bydo-mmenu__auth {
  display: flex;
  gap: 0.625rem;
}
.bydo-mmenu__auth .btn {
  flex: 1;
  justify-content: center;
  gap: 0.5rem;
  background: var(--white-color);
  color: var(--first-color);
  border: 1.5px solid var(--purple-100);
}
.bydo-mmenu__auth .btn .i {
  width: 1.25rem;
  height: 1.25rem;
}
.bydo-mmenu__auth .btn.is-soft {
  background: var(--purple-50);
  border-color: var(--purple-50);
}
.bydo-mmenu__app-btn {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  width: 100%;
  padding: 0.75rem 0.875rem;
  border: 0;
  border-radius: var(--radius-md);
  background: var(--white-color);
  box-shadow: var(--shadow-card-1);
  color: var(--first-color);
  text-align: left;
  cursor: pointer;
}
.bydo-mmenu__app-btn > .i {
  width: 1.25rem;
  height: 1.25rem;
  margin-left: auto;
  color: var(--accent-text);
}
.bydo-mmenu__app-ic img {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
}
.bydo-mmenu__app-txt strong {
  display: block;
  font-size: 0.9375rem;
  font-weight: 700;
}
.bydo-mmenu__app-txt span {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
}
.bydo-mmenu__app-navod {
  margin: 0.625rem 0.25rem 0;
  font-size: 0.875rem;
  color: var(--warm);
}
.bydo-mmenu__more {
  display: flex;
  flex-direction: column;
}
.bydo-mmenu__more a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--line-color);
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--first-color);
  text-decoration: none;
}
.bydo-mmenu__more a .i {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--mute);
}
.bydo-mmenu__more a[aria-current="page"] {
  color: var(--purple-600);
}
.bydo-mmenu__group {
  border-bottom: 1px solid var(--line-color);
}
.bydo-mmenu__group summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 0;
  cursor: pointer;
  list-style: none;
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--first-color);
}
.bydo-mmenu__group summary::-webkit-details-marker {
  display: none;
}
.bydo-mmenu__group summary .i {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--mute);
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.bydo-mmenu__group[open] summary .i {
  transform: rotate(180deg);
}
.bydo-mmenu__group[open] .bydo-mmenu__sub {
  animation: bydoSubIn 0.35s cubic-bezier(0.2, 0.7, 0.3, 1) both;
}
.bydo-mmenu__more .bydo-mmenu__sub {
  display: flex;
  flex-direction: column;
  padding: 0 0 0.5rem 0.875rem;
  border-left: 2px solid var(--purple-100);
  margin-bottom: 0.75rem;
}
.bydo-mmenu__more .bydo-mmenu__sub a {
  padding: 0.5rem 0;
  border-bottom: 0;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--ink);
}
@keyframes bydoSubIn {
  from {
    opacity: 0;
    transform: translateY(-0.375rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
/* PC: rozbaľovacie menu v hlavnom menu (Nástroje) - panel pod položkou, vzhľad ako okienko účtu */
.bydo-drop {
  position: relative;
}
.bydo-drop__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  font: inherit;
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--warm);
}
.bydo-drop__btn .i {
  width: 0.875rem;
  height: 0.875rem;
  transition: transform 0.25s ease;
}
.bydo-drop__btn:hover,
.bydo-drop__btn.is-active,
.bydo-drop__btn[aria-expanded="true"] {
  color: var(--first-color);
}
.bydo-drop__btn[aria-expanded="true"] .i {
  transform: rotate(180deg);
}
.bydo-drop__panel {
  position: absolute;
  left: 50%;
  top: calc(100% + 0.875rem);
  z-index: 1200;
  width: 19rem;
  padding: 0.5rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  background: var(--white-color);
  box-shadow: 0 18px 40px -16px rgba(29, 16, 41, 0.35);
  transform: translateX(-50%);
  /* mostík nad panelom - myš pri prechode z tlačidla nezatvorí menu */
}
.bydo-drop__panel::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -0.875rem;
  height: 0.875rem;
}
.bydo-drop__panel.is-in {
  transition: opacity 0.2s ease, transform 0.25s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.bydo-drop__panel.is-out {
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.bydo-drop__panel.is-from {
  opacity: 0;
  transform: translateX(-50%) translateY(-0.375rem);
}
.bydo-drop__panel a {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  padding: 0.625rem 0.75rem;
  border-radius: var(--radius-sm);
  text-decoration: none;
}
.bydo-drop__panel a strong {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--ink);
}
.bydo-drop__panel a small {
  font-size: 0.8125rem;
  color: var(--mute);
}
.bydo-drop__panel a:hover,
.bydo-drop__panel a[aria-current="page"] {
  background: var(--purple-50);
}
.bydo-drop__panel a:hover strong,
.bydo-drop__panel a[aria-current="page"] strong {
  color: var(--first-color);
}
@media (prefers-reduced-motion: reduce) {
  .bydo-drop__panel.is-in,
  .bydo-drop__panel.is-out {
    transition: none;
  }
  .bydo-mmenu__group[open] .bydo-mmenu__sub {
    animation: none;
  }
}
html.mmenu-open {
  overflow: hidden;
}
/* ---------------------------------------------------------------------------
   Spodná lišta na mobile (vzor chaty-front menu_main_phone, prefarbené bydo): Domov, Ponuky, Pridať (stred),
   Realitky, Účet. Pri písaní a otvorenom menu sa schová. Stránky s vlastnou lištou dole (detail inzerátu,
   profil realitky) ju nemajú - ako appky na detaile.
   --------------------------------------------------------------------------- */
.bydo-tabbar {
  display: none;
  /* počet uložených pri Obľúbených (main.js bydoOblubene, data-oblubene-pocet) */
  /* Pridať = zelený kruh vytŕčajúci nad lištu */
}
@media (max-width: 61.25rem) {
  .bydo-tabbar {
    display: flex;
    align-items: stretch;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1005;
    /* nad mapou výpisu (1000) - inak zreže vyčnievajúce stredné tlačidlo; pod menu (1020) a filtrom (1100) */
    height: calc(4rem + env(safe-area-inset-bottom));
    padding: 0 0.25rem env(safe-area-inset-bottom);
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(12px);
    border-top: 1px solid var(--line-color);
    box-shadow: 0 -0.5rem 1.5rem -1rem rgba(76, 14, 101, 0.25);
    transition: transform 0.55s cubic-bezier(0.34, 1.35, 0.64, 1), opacity 0.3s ease;
  }
  .bydo-tabbar.is-hidden {
    transform: translateY(110%);
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.25s ease;
  }
}
.bydo-tabbar__item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.2rem;
  min-width: 0;
  color: var(--mute);
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
.bydo-tabbar__item[aria-current="page"] {
  color: var(--first-color);
}
.bydo-tabbar__item[aria-current="page"] .bydo-tabbar__icon {
  background: var(--purple-50);
}
.bydo-tabbar__item[aria-current="page"] .bydo-tabbar__label {
  font-weight: 700;
}
.bydo-tabbar__item:active .bydo-tabbar__icon {
  transform: scale(0.92);
}
.bydo-tabbar__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 1.875rem;
  border-radius: 1rem;
  transition: background-color 0.2s ease, transform 0.15s ease;
}
.bydo-tabbar__icon svg {
  width: 1.375rem;
  height: 1.375rem;
}
.bydo-tabbar__icon {
  position: relative;
}
.bydo-tabbar__pocet {
  position: absolute;
  top: -0.25rem;
  left: calc(50% + 0.375rem);
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 0.3rem;
  border-radius: 1rem;
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.625rem;
  font-weight: 800;
  line-height: 1.125rem;
  text-align: center;
}
.bydo-tabbar__pocet[hidden] {
  display: none;
}
.bydo-tabbar__label {
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}
.bydo-tabbar__item.is-add {
  color: var(--first-color);
}
.bydo-tabbar__item.is-add .bydo-tabbar__icon {
  width: 3.25rem;
  height: 3.25rem;
  margin-top: -1.5rem;
  border-radius: 50%;
  background: var(--accent-color);
  color: var(--on-accent);
  box-shadow: 0 0.375rem 1rem rgba(151, 203, 68, 0.55), 0 0 0 0.25rem var(--white-color);
}
.bydo-tabbar__item.is-add .bydo-tabbar__icon svg {
  width: 1.5rem;
  height: 1.5rem;
}
.bydo-tabbar__item.is-add .bydo-tabbar__label {
  font-weight: 600;
}
@media (max-width: 61.25rem) {
  body {
    padding-bottom: calc(4rem + env(safe-area-inset-bottom));
  }
  /* detail inzerátu a profil realitky majú vlastnú lištu s cenou / kontaktom */
  body:has(.pd-sticky-cta),
  body:has(.ap-bar),
  body:has(.ld-bar) {
    padding-bottom: 0;
  }
  body:has(.pd-sticky-cta) .bydo-tabbar,
  body:has(.ap-bar) .bydo-tabbar,
  body:has(.ld-bar) .bydo-tabbar {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bydo-mmenu,
  .bydo-mmenu.is-open {
    transition: visibility 0s;
    clip-path: none;
  }
  .bydo-mmenu:not(.is-open) {
    display: none;
  }
  .bydo-mmenu__link,
  .bydo-mmenu__types,
  .bydo-mmenu__cta,
  .bydo-mmenu__auth,
  .bydo-mmenu__app,
  .bydo-mmenu__more,
  .bydo-mmenu__foot {
    transition: none !important;
    opacity: 1;
    transform: none;
  }
  .bydo-tabbar {
    transition: none;
  }
}
/* mobil: hlavička sa pri posune dole schová (html.head-hidden z section_header_typ_1.php), pri posune hore vráti */
@media (max-width: 61.25rem) {
  :root {
    --bydo-head-h: 4.5rem;
  }
  html.head-hidden {
    --bydo-head-h: 0rem;
  }
  .section_header_typ_1 {
    transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), background-color 0.3s ease;
  }
  html.head-hidden .section_header_typ_1 {
    transform: translateY(-100%);
  }
}
/* vysunutie lišty: stredné tlačidlo „vyskočí" s malým oneskorením (Jozef 7. 11. - jemný pohyb) */
.bydo-tabbar__item.is-add .bydo-tabbar__icon {
  transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) 0.12s, background-color 0.2s ease;
}
.bydo-tabbar.is-hidden .bydo-tabbar__item.is-add .bydo-tabbar__icon {
  transform: scale(0.4);
  transition-delay: 0s;
}
@media (prefers-reduced-motion: reduce) {
  .bydo-tabbar__item.is-add .bydo-tabbar__icon {
    transition: none;
  }
}
/* otvorená mapa výpisu má vrstvu 1100 (nad hlavičkou, _bydo_sekcie.less) - lišta s Zoznam ide nad ňu, inak mapa
   zreže stredné tlačidlo; otvorený filter (1100) lištu schová, nezakryje mu spodok */
html:has(.listing_search_typ_1.map-open-mobile) .bydo-tabbar {
  z-index: 1110;
}
html.filter-open .bydo-tabbar {
  transform: translateY(110%);
  opacity: 0;
}
/* menu účtu v hlavičke (PC) a v mobilnom menu - zdieľané časti */
.bydo-acc {
  position: relative;
}
.bydo-acc .login {
  position: relative;
  cursor: pointer;
  background: none;
  font-family: inherit;
}
.bydo-acc__dot {
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: #D99A1E;
}
.bydo-acc__panel {
  /* mobil: cez šírku obrazovky pod hlavičkou, v strede - absolútne pod ikonou vyliezalo vľavo mimo (Jozef 8. 11.) */
  position: absolute;
  right: 0;
  top: calc(100% + 0.5rem);
  z-index: 1200;
  min-width: 16rem;
  padding: 0.5rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  background: var(--white-color);
  box-shadow: 0 18px 40px -16px rgba(29, 16, 41, 0.35);
}
@media (max-width: 61.25rem) {
  .bydo-acc__panel {
    position: fixed !important;
    left: 0.75rem !important;
    right: 0.75rem !important;
    top: 4.75rem !important;
    min-width: 0 !important;
  }
}
.bydo-acc__panel > a,
.bydo-acc__panel > button {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  width: 100%;
  padding: 0.625rem 0.75rem;
  border: 0;
  border-radius: var(--radius-sm);
  background: none;
  font: inherit;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--ink);
  text-align: left;
  text-decoration: none;
  cursor: pointer;
}
.bydo-acc__panel > a .i,
.bydo-acc__panel > button .i {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--first-color);
}
.bydo-acc__panel > a small,
.bydo-acc__panel > button small {
  margin-left: auto;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--mute);
}
.bydo-acc__panel > a:hover,
.bydo-acc__panel > button:hover {
  background: var(--purple-50);
}
.bydo-acc__panel .bydo-acc__who {
  padding: 0.5rem 0.75rem 0.75rem;
  margin-bottom: 0.25rem;
  border-bottom: 1px solid var(--line-color);
}
.bydo-acc__who {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.bydo-acc__who b {
  font-weight: 800;
  color: var(--first-color);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bydo-acc__name {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.bydo-acc__name small {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--mute);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bydo-acc__av {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--purple-50);
  font-size: 0.8125rem;
  font-weight: 800;
  color: var(--first-color);
}
.bydo-acc__warn {
  color: #8A5A00 !important;
}
.bydo-acc__ask {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  padding: 0.625rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 600;
}
.bydo-acc__ask > span {
  width: 100%;
}
.bydo-acc__ask .btn-link {
  padding: 0;
  border: 0;
  background: none;
}
/* spodný vysúvací panel z hlavičky (odhlásenie z mobilného menu) - rovnaký vzhľad ako panely v účte */
.bydo-sheet-bg {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background: rgba(28, 28, 26, 0.55);
  overscroll-behavior: contain;
  touch-action: none;
}
@media (min-width: 61.3125rem) {
  .bydo-sheet-bg {
    align-items: center;
    padding: 2rem;
  }
}
.bydo-sheet {
  position: relative;
  width: 100%;
  max-width: 30rem;
  padding: 1.75rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));
  border-radius: 1.25rem 1.25rem 0 0;
  background: var(--white-color);
  box-shadow: 0 -12px 40px -12px rgba(29, 16, 41, 0.4);
  animation: bydoSheetIn 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
  transition: transform 0.2s ease;
}
@media (max-width: 61.25rem) {
  .bydo-sheet {
    max-width: none;
  }
}
@media (min-width: 61.3125rem) {
  .bydo-sheet {
    border-radius: var(--radius-md);
    padding: 1.5rem;
  }
}
.bydo-sheet__grab {
  position: absolute;
  top: 0.5rem;
  left: 50%;
  width: 2.75rem;
  height: 0.3125rem;
  margin-left: -1.375rem;
  border-radius: 1rem;
  background: var(--line-color);
}
@media (min-width: 61.3125rem) {
  .bydo-sheet__grab {
    display: none;
  }
}
.bydo-sheet__title {
  margin: 0 0 0.5rem;
  font-family: var(--first-font);
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--first-color);
}
.bydo-sheet__text {
  margin: 0 0 1.25rem;
  color: var(--warm);
}
.bydo-sheet__text b {
  color: var(--ink);
}
.bydo-sheet__act {
  display: flex;
  gap: 0.5rem;
}
.bydo-sheet__act .btn {
  flex: 1 1 0;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.bydo-sheet__act .btn-first {
  flex: 2 1 0;
}
html:has(.bydo-sheet-bg:not([style*="display: none"]):not([style*="display:none"])) {
  overflow: hidden;
}
/* ---------------------------------------------------------------------------
   hero_search_typ_1 - nadpis s počtom ponúk + vyhľadávací formulár (lokalita,
   typ, cena, filter). Bydo widget (docs/bydo/navrhy-uvodka/tokeny.md, variant A).
   `.is-compact` = strohý hero (variant B - mapa je hlavná akcia nižšie).
   `.field`/`.input-wrap` sú spoločné pre celý web (nielen hero) - v `_bydo_variables.less`,
   aby ich mal k dispozícii aj modal filtra (Jozef 6. 11. 14:50). Fokus poľa je LEN
   `.input-wrap:focus-within` (fialový, `_bydo_variables.less`) - žiadny zelený fokus tu. */
.hero_search_typ_1 {
  padding: 3.5rem 0 4.5rem;
  text-align: center;
  /* rovnaký odtieň ako SVG tvary na pozadí webu (--bg-blob), dole prejde do bielej */
  background: linear-gradient(180deg, var(--bg-blob) 0%, rgba(237, 240, 248, 0) 100%);
  /* karty typov 3x2 ako na starom bydo (Jozef 11. 11.) - hlavná cesta z úvodu, filter až pod nimi */
  /* nadpis nad kartou vyhľadávania - oddelí ju od kariet typov (väčšia medzera hore, menšia ku karte) */
  /* prepínač Predaj / Prenájom = spoločný .bydo-seg (_bydo_variables.less) */
  /* pod nadpisom vyhľadávania, biela dráha na podklade (Jozef 12. 11.) */
  /* Tlačidlo Filter - rovnaká výška ako polia, prázdny label pre zarovnanie na spoločnú
     základňu so zvyškom riadka (Jozef 6. 11. 14:53). */
  /* užšia karta (napr. 1200 px okno, manuál s bočným menu): Lokalita na celý riadok, pod ňou
     Typ, Cena, Filter, Vyhľadať - inak sa Cena orezávala na "Be…" a nadpisy polí sa lámali */
  /* variant B - strohý, mapa je hlavná akcia nižšie */
}
.hero_search_typ_1 .eyebrow {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color-hover);
  margin-bottom: 0.5rem;
}
.hero_search_typ_1 h1 {
  font-family: var(--first-font);
  font-size: var(--h1);
  line-height: var(--h1-lh);
  font-weight: 800;
  color: var(--first-color);
  letter-spacing: -0.02em;
}
.hero_search_typ_1 h1 strong {
  color: var(--accent-color-hover);
}
.hero_search_typ_1 .lede {
  margin: 0.875rem auto 0;
  max-width: 34rem;
  color: var(--mute);
  font-size: 1.0625rem;
}
.hero_search_typ_1 .type-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  max-width: 44rem;
  margin: 2.5rem auto 0;
  /* bez prepínača nad kartami treba viac vzduchu od úvodu (Jozef 12. 11.) */
}
.hero_search_typ_1 .type-tile {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  padding: 1.75rem 1rem 1.5rem;
  background: var(--white-color);
  border: 2px solid transparent;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  color: inherit;
  text-decoration: none;
  transition: var(--trans-200);
  /* hover bez rámika (Jozef 11. 11. - fialový okraj tam nepasoval, ani zmena farieb): dvih, tieň a ikona
       jemne podrastie. Rámik len pri klávesnici, mimo karty. */
}
.hero_search_typ_1 .type-tile:hover,
.hero_search_typ_1 .type-tile:focus-visible {
  box-shadow: var(--shadow-card-2);
  transform: translateY(-3px);
}
.hero_search_typ_1 .type-tile:hover .type-tile__ic,
.hero_search_typ_1 .type-tile:focus-visible .type-tile__ic {
  transform: scale(1.08);
}
.hero_search_typ_1 .type-tile:focus-visible {
  outline: 2px solid var(--first-color);
  outline-offset: 3px;
}
.hero_search_typ_1 .type-tile__ic {
  display: flex;
  color: var(--accent-color-hover);
  transition: transform 0.2s ease;
}
.hero_search_typ_1 .type-tile__ic .i {
  width: 2.75rem;
  height: 2.75rem;
}
.hero_search_typ_1 .type-tile__name {
  font-family: var(--first-font);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--first-color);
  line-height: 1.2;
}
.hero_search_typ_1 .type-tile__count {
  font-size: 0.8rem;
  color: var(--mute);
}
.hero_search_typ_1 .search-card {
  margin: 2.5rem auto 0;
  max-width: 62rem;
  background: var(--white-color);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card-2);
  padding: 1.5rem;
  container-type: inline-size;
  /* riadok sa zalomí podľa šírky karty, nie okna */
  text-align: left;
  position: relative;
  z-index: 5;
}
.hero_search_typ_1 .search-title {
  margin: 3rem auto 0;
  font-family: var(--first-font);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--first-color);
}
.hero_search_typ_1 .search-title + .search-card {
  margin-top: 1rem;
}
.hero_search_typ_1 .hero-seg {
  margin: 1.25rem auto 0;
}
.hero_search_typ_1 .hero-seg + .search-card {
  margin-top: 1.75rem;
}
.hero_search_typ_1 .search-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr) auto auto;
  /* minmax(0,…) - šírka stĺpca nezávisí od vybranej hodnoty (inak riadok skákal, Jozef 6. 11.) */
  gap: 0.875rem;
  align-items: end;
  /* Filter aj Vyhľadať presne na výšku polí */
}
.hero_search_typ_1 .search-grid .btn {
  height: var(--control-h-m);
}
.hero_search_typ_1 .filter-trigger-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.125rem;
  height: 1.125rem;
  padding: 0 0.3rem;
  border-radius: var(--radius-badge);
  background: var(--accent-color);
  color: var(--on-accent);
  font-size: 0.6875rem;
  font-weight: 800;
}
@media (max-width: 30rem) {
  .hero_search_typ_1 .hero-filter-btn-label {
    display: none;
  }
}
.hero_search_typ_1 .suggest {
  position: absolute;
  top: calc(100% + 0.375rem);
  left: 0;
  right: 0;
  background: var(--white-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card-2);
  border: 1px solid var(--line-color);
  overflow: hidden;
  z-index: 10;
  text-align: left;
}
.hero_search_typ_1 .suggest .s-item {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 0.9375rem;
  font-size: 0.9rem;
}
.hero_search_typ_1 .suggest .s-item .i {
  width: 1rem;
  height: 1rem;
  color: var(--mute);
}
.hero_search_typ_1 .suggest .s-item b {
  color: var(--first-color);
}
.hero_search_typ_1 .suggest .s-item:hover {
  background: var(--silver-color);
}
.hero_search_typ_1 .suggest .s-hint {
  padding: 0.5rem 0.9375rem;
  font-size: 0.72rem;
  color: var(--mute);
  border-top: 1px solid var(--line-color);
}
.hero_search_typ_1 .search-card .btn-second {
  height: var(--control-h-m);
  padding: 0 1.625rem;
  border-radius: var(--radius-sm);
}
.hero_search_typ_1 .popular-links {
  margin-top: 1.125rem;
  font-size: 0.875rem;
  color: var(--mute);
}
.hero_search_typ_1 .popular-links b {
  font-weight: 700;
  color: var(--ink);
}
.hero_search_typ_1 .popular-links a {
  text-decoration: underline;
  text-underline-offset: 3px;
  color: var(--first-color);
  font-weight: 500;
}
@container (max-width: 56rem) {
  .hero_search_typ_1 .search-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto auto;
  }
  .hero_search_typ_1 .search-grid > .field:first-child {
    grid-column: 1 / -1;
  }
}
@media (max-width: 56.25rem) {
  .hero_search_typ_1 .search-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .hero_search_typ_1 .search-card .btn-first,
  .hero_search_typ_1 .search-card .btn-second {
    grid-column: 1 / -1;
  }
}
@media (max-width: 40rem) {
  .hero_search_typ_1 {
    padding: 2.25rem 0 2.75rem;
    /* na mobile ostáva 3x2, len menšie */
  }
  .hero_search_typ_1 .search-grid {
    grid-template-columns: 1fr;
  }
  .hero_search_typ_1 .type-grid {
    gap: 0.5rem;
    margin-top: 1.75rem;
  }
  .hero_search_typ_1 .search-title {
    margin-top: 2rem;
    font-size: 1.25rem;
  }
  .hero_search_typ_1 .type-tile {
    padding: 1rem 0.375rem 0.875rem;
    gap: 0.3125rem;
  }
  .hero_search_typ_1 .type-tile__ic .i {
    width: 2rem;
    height: 2rem;
  }
  .hero_search_typ_1 .type-tile__name {
    font-size: 0.875rem;
  }
  .hero_search_typ_1 .type-tile__count {
    font-size: 0.6875rem;
  }
}
.hero_search_typ_1.is-compact {
  padding: 3rem 0 2.5rem;
}
.hero_search_typ_1.is-compact .search-card {
  max-width: 48rem;
  padding: 1.125rem;
}
.hero_search_typ_1.is-compact .search-grid {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto;
}
@media (max-width: 56.25rem) {
  .hero_search_typ_1.is-compact .search-grid {
    grid-template-columns: 1fr;
  }
}
/* ---------------------------------------------------------------------------
   category_tiles_typ_1 - "Čo hľadáte?" - dlaždice kategórií. Ikona v jemnom
   krúžku, názov a počet VNÚTRI karty, hover dvih + fialový okraj.
   `.is-strip` = kompaktný pás (variant B, pod mapou).
   --------------------------------------------------------------------------- */
.category_tiles_typ_1 {
  /* kompaktný pás (variant B) */
}
.category_tiles_typ_1 .section-head {
  text-align: center;
  margin: 0 0 2.25rem;
}
.category_tiles_typ_1 .section-head .eyebrow {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color-hover);
  margin-bottom: 0.5rem;
}
.category_tiles_typ_1 .section-head h2 {
  font-family: var(--first-font);
  font-size: var(--h2);
  font-weight: 800;
  color: var(--first-color);
}
.category_tiles_typ_1 .grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1.125rem;
}
.category_tiles_typ_1 .tile {
  /* min-width:0 - bez toho grid stĺpec s najdlhším nezalomeným textom ("Rekreačné domy")
       natiahne celú mriežku `1fr` cez okraj kontajnera (grid položky majú predvolene
       min-width:auto = šírku svojho obsahu, nie 0). */
  min-width: 0;
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  border: 2px solid transparent;
  padding: 1.75rem 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  text-align: center;
  height: 100%;
  text-decoration: none;
  color: inherit;
  transition: var(--trans-200);
  /* celá dlaždica je jeden odkaz (Jozef, 6. 11. 14:20) - fokus rovnako ako hover */
}
.category_tiles_typ_1 .tile:hover,
.category_tiles_typ_1 .tile:focus-visible {
  box-shadow: var(--shadow-card-2);
  border-color: var(--first-color);
  transform: translateY(-3px);
}
.category_tiles_typ_1 .tile .ic {
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 50%;
  background: rgba(151, 203, 68, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--accent-color-hover);
}
.category_tiles_typ_1 .tile .ic .i {
  width: 1.625rem;
  height: 1.625rem;
}
.category_tiles_typ_1 .tile h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--first-color);
  margin: 0;
}
.category_tiles_typ_1 .tile p {
  font-size: 0.8rem;
  color: var(--mute);
  margin: 0;
}
@media (max-width: 56.25rem) {
  .category_tiles_typ_1 .grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 40rem) {
  .category_tiles_typ_1 .grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
  }
  .category_tiles_typ_1 .tile {
    padding: 1.375rem 0.75rem;
  }
}
.category_tiles_typ_1.is-strip .grid {
  gap: 0.75rem;
}
.category_tiles_typ_1.is-strip .tile {
  flex-direction: row;
  text-align: left;
  justify-content: flex-start;
  padding: 0.875rem 1rem;
  gap: 0.75rem;
}
.category_tiles_typ_1.is-strip .tile .ic {
  width: 2.4rem;
  height: 2.4rem;
  flex-shrink: 0;
}
.category_tiles_typ_1.is-strip .tile .ic .i {
  width: 1.2rem;
  height: 1.2rem;
}
.category_tiles_typ_1.is-strip .tile h3 {
  font-size: 0.875rem;
}
.category_tiles_typ_1.is-strip .tile p {
  font-size: 0.74rem;
}
@media (max-width: 56.25rem) {
  .category_tiles_typ_1.is-strip .grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 40rem) {
  .category_tiles_typ_1.is-strip .grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* rovnaký odtieň ako --accent-color (--green-500) - jemný krúžok za ikonou kategórie */
/* ---------------------------------------------------------------------------
   product_list_typ_1 - "Najnovšie ponuky" / "Podľa miest" ako karty. ZÁMERNE
   neobsahuje štýl samotnej karty ani stránkovača - tie sú z 1b (`_listings.less`:
   `.listings_grid`, `.prop-card`, `.listing-pager`) a Jozef sa páčia 1:1, len
   prefarbené cez bydo tokeny (docs/bydo/navrhy-uvodka/10-zachovat.png, 11-karta.png).
   Tento súbor je len OBAL sekcie: hlavička (nadpis + prepínač Predaj/Prenájom)
   a mriežka okolo `.listings_grid` namiesto slideru, keď sa má zobraziť viac kariet.
   --------------------------------------------------------------------------- */
.product_list_typ_1 {
  /* prepínač Predaj/Prenájom - rovnaký vzor pilulky ako `.hero_search_typ_1 .tabs`,
     len väčší a na bielej karte vlastnej, nie v search-card */
  /* mriežka kariet (bez slideru) - karty samotné = `.prop-card` z 1b bez zmeny */
  /* ---- slider mriežok ako na chatách (Jozef 11. 11.): slide = stĺpec 3 kariet Na šírku ---- */
  /* pás nesie .listing_search_typ_1 len kvôli štýlu kariet - jeho odsadenie výpisu (32 / 96 px) tu nepatrí */
  /* stĺpec = 3 karty pod sebou; .ls-grid.is-view-rows dáva kartám tvar Na šírku z výpisu */
}
.product_list_typ_1 .head-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 2rem;
}
.product_list_typ_1 .head-row h2 {
  font-family: var(--first-font);
  font-size: var(--h2);
  font-weight: 800;
  color: var(--first-color);
  margin: 0;
}
.product_list_typ_1 .list-tabs {
  display: inline-flex;
  background: var(--white-color);
  border-radius: var(--radius-badge);
  padding: 0.3rem;
  box-shadow: var(--shadow-card-1);
  flex-shrink: 0;
}
.product_list_typ_1 .list-tabs button {
  background: none;
  border: none;
  padding: 0.5rem 1.125rem;
  border-radius: var(--radius-badge);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--mute);
}
.product_list_typ_1 .list-tabs button.is-active {
  background: var(--first-color);
  color: var(--white-color);
}
.product_list_typ_1 .listing-grid-static {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  /* min-width:0 na priamom potomkovi (`.prop-card` je `<a>` z 1b) - bez toho veľká
       natívna fotka inzerátu natiahne `1fr` stĺpec cez okraj kontajnera (rovnaký dôvod
       ako pri `.tile` v category_tiles_typ_1.less). */
}
.product_list_typ_1 .listing-grid-static > a {
  min-width: 0;
}
@media (min-width: 93.75rem) {
  .product_list_typ_1 .listing-grid-static {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 61.25rem) {
  .product_list_typ_1 .listing-grid-static {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 40rem) {
  .product_list_typ_1 .listing-grid-static {
    grid-template-columns: 1fr;
  }
}
.product_list_typ_1 .list-cta {
  text-align: center;
  margin-top: 2.25rem;
}
.product_list_typ_1 .head-row__end {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-shrink: 0;
}
.product_list_typ_1 .gs-track.listing_search_typ_1 {
  padding: 0.75rem 0.5rem;
}
@media (max-width: 40rem) {
  .product_list_typ_1 .gs-track.listing_search_typ_1 {
    padding: 0.75rem var(--page-x);
  }
}
.product_list_typ_1 .gs-track .gs-col.ls-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: 1fr;
  gap: 1rem;
  min-width: 0;
  padding: 0;
  /* .listings_grid má spodné odsadenie výpisu - tu by odtlačilo Všetky ponuky */
  scroll-snap-align: start;
  user-select: none;
}
.product_list_typ_1 .gs-track .gs-col.ls-grid a {
  -webkit-user-drag: none;
}
@media (max-width: 40rem) {
  .product_list_typ_1 .head-row {
    flex-direction: column;
    align-items: flex-start;
  }
}
/* Karta inzerátu (1b .prop-card) - vrstva bydo (Jozef 6. 11., jozef-karta-cena.png):
   - cena prebíjala názov (22px) -> zmenšená na 1.25rem, title na 1.125rem, nech cena v hierarchii
     nevyhráva nad tým, ČO sa predáva.
   - spodný riadok (cena / Detail) na spoločnej základni písma (baseline), nie na strede boxu -
     rôzne veľkosti písma (cena/„Detail") musia sedieť na rovnakom riadku, nie len opticky v strede. */
.prop-card__title {
  font-size: 1.125rem;
}
/* riadok cena | Detail: zarovnanie na STRED s rovnakou výškou riadku (line-height 1) - baseline nesedel,
   „Detail" s väčšou šípkou vyskočil ~3 px nad cenu (Jozef 7. 11.). Šípka = výška písma (1em), nie väčšia. */
.prop-card__footer {
  align-items: center;
}
.prop-card__price {
  font-size: 1.25rem;
  line-height: 1;
}
.prop-card__detail {
  display: inline-flex;
  align-items: center;
  gap: 0.3125rem;
  font-size: 0.9375rem;
  line-height: 1;
}
.prop-card__detail .i {
  display: inline-flex;
}
.prop-card__detail svg {
  width: 1em;
  height: 1em;
  display: block;
  transition: transform 0.2s ease;
}
a:hover .prop-card .prop-card__detail,
a.prop-card:hover .prop-card__detail {
  color: var(--accent-text);
}
a:hover .prop-card .prop-card__detail svg,
a.prop-card:hover .prop-card__detail svg {
  transform: translateX(0.25rem);
}
/* ---- slider mriežok bydo - spoločný pre Najnovšie ponuky a Ponuku podľa miest (JS bydoGridSlider v main.js).
   Šípky v hlavičke sekcie, pás `.gs-track` so stĺpcami `.gs-col`; šírku stĺpca určuje sekcia (grid-auto-columns). ---- */
.gs-arrows {
  display: flex;
  gap: 0.5rem;
}
/* odkaz pod sliderom vpravo (Všetky ponuky, Jozef 11. 11.) */
.gs-foot {
  display: flex;
  justify-content: flex-end;
  margin-top: 1.25rem;
}
.gs-arrow {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  border: 0;
  background: var(--white-color);
  box-shadow: var(--shadow-card-1);
  color: var(--first-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--trans-200);
}
.gs-arrow .i {
  width: 1.125rem;
  height: 1.125rem;
  display: inline-flex;
}
.gs-arrow:hover:not(:disabled) {
  background: var(--first-color);
  color: var(--white-color);
}
.gs-arrow:disabled {
  opacity: 0.4;
  cursor: default;
}
.gs-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 2.5rem) / 3);
  /* 3 stĺpce, 2x 1.25rem medzera */
  gap: 1.25rem;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  /* miesto pre tieň a dvih karty, aby sa neorezal */
  padding: 0.75rem 0.5rem;
  margin: -0.75rem -0.5rem 0;
  scroll-padding-inline: 0.5rem;
  scrollbar-width: none;
  cursor: grab;
}
.gs-track::-webkit-scrollbar {
  display: none;
}
.gs-track.is-drag {
  scroll-snap-type: none;
  cursor: grabbing;
  user-select: none;
}
@media (max-width: 61.25rem) {
  .gs-track {
    grid-auto-columns: calc((100% - 1.25rem) / 2);
  }
}
@media (max-width: 40rem) {
  .gs-track {
    gap: 0.75rem;
    grid-auto-columns: calc(100% - 2.5rem);
    /* 1 stĺpec + kúsok ďalšieho */
    margin-left: calc(-1 * var(--page-x));
    margin-right: calc(-1 * var(--page-x));
    padding-left: var(--page-x);
    padding-right: var(--page-x);
    scroll-padding-inline: var(--page-x);
  }
}
@media (max-width: 40rem) {
  .gs-arrows {
    display: none;
  }
}
/* na mobile sa listuje prstom */
/* ---------------------------------------------------------------------------
   map_teaser_typ_1 - mapa ako vstup do vyhľadávania. Jozef (zadanie): mapa NIE
   živá - ilustrácia Slovenska (SVG) s pinmi + tlačidlo "Hľadať na mape" do
   výpisu. `.is-large` = celoširoký banner s prekrývajúcou kartou (variant B).
   Jozef 11. 11.: spojené so sekciou miest - nadpis nad panelom, vľavo mapa,
   vpravo krajské mestá (`.cities`) s odkazmi Byty · Domy · Pozemky.
   --------------------------------------------------------------------------- */
.map_teaser_typ_1 {
  /* nadpis z popisu widgetu: <p>malý nadpis</p><h2>…</h2><p>úvod</p> */
  /* krajské mestá - 2 stĺpce, mesto + počet, pod ním priame odkazy na druhy */
  /* mesto = jemná karta (Jozef 11. 11.: holý text nepôsobil klikateľne) - šípka pri mene, druhy ako pilulky */
  /* mesto pod myšou - jeho okresy na mape akcentovou farbou */
  /* top 5 okresov - zároveň textová alternatíva mapy (čítačky, mobil) */
  /* skutočná mapa okresov (choropleth) - odtiene fialovej podľa počtu ponúk */
  /* tablet: vedľa mapy by mestá mali úzky stĺpec - mapa hore, mestá pod ňou v 4 stĺpcoch */
  /* mobil: mestá pod sebou - v dvoch stĺpcoch sa dlhé mená orezávali a druhy lámali */
  /* celoširoký banner s prekrývajúcou kartou (variant B) */
}
.map_teaser_typ_1 .section-head {
  margin: 0 0 2rem;
}
.map_teaser_typ_1 .section-head h2 {
  font-family: var(--first-font);
  font-size: var(--h2);
  font-weight: 800;
  color: var(--first-color);
  /* zvýraznená časť nadpisu (<strong>) - zelená ako počet v hero */
}
.map_teaser_typ_1 .section-head h2 strong {
  color: var(--accent-color-hover);
  font-weight: 800;
}
.map_teaser_typ_1 .section-head h2 + p {
  margin: 0.75rem 0 0;
  max-width: 40rem;
  color: var(--mute);
}
.map_teaser_typ_1 .panel {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  align-items: center;
  gap: 2.5rem;
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  padding: 2.5rem;
}
.map_teaser_typ_1 .city-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.625rem;
}
.map_teaser_typ_1 .cities__title {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color-hover);
  margin-bottom: 0.5rem;
  margin: 0 0 0.75rem;
}
.map_teaser_typ_1 .city-row {
  min-width: 0;
  padding: 0.75rem 0.875rem 0.8125rem;
  /* polovičný odtieň --cream - plné pozadie pôsobilo ako formulár (Jozef 11. 11.) */
  background: color-mix(in srgb, var(--cream) 45%, var(--white-color));
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
  /* hover v zelenej ako zvýraznené okresy na mape - karta a mapa patria k sebe (okraj s bielou pôsobil ako políčko formulára) */
}
.map_teaser_typ_1 .city-row:hover,
.map_teaser_typ_1 .city-row:focus-within {
  background: color-mix(in srgb, var(--accent-color) 14%, var(--white-color));
}
.map_teaser_typ_1 .city-row__name {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  color: var(--ink);
  font-weight: 700;
  font-size: 0.9375rem;
  /* dlhé meno (Banská Bystrica) pri úzkom stĺpci radšej zalomiť ako orezať */
}
.map_teaser_typ_1 .city-row__name span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.map_teaser_typ_1 .city-row__name small {
  margin-left: auto;
  flex-shrink: 0;
  color: var(--mute);
  font-size: 0.75rem;
  font-weight: 600;
}
.map_teaser_typ_1 .city-row__arrow {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  color: var(--first-color);
  transition: transform 0.15s ease;
}
.map_teaser_typ_1 .city-row__arrow svg {
  width: 100%;
  height: 100%;
}
.map_teaser_typ_1 .city-row:hover .city-row__arrow,
.map_teaser_typ_1 .city-row:focus-within .city-row__arrow {
  transform: translateX(4px);
  color: var(--green-700);
}
.map_teaser_typ_1 .city-row__types {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 0.4375rem;
  margin-top: 0.25rem;
  font-size: 0.8125rem;
  /* obyčajné odkazy vo farbe značky (pilulky pôsobili „programátorsky", Jozef 11. 11.) */
}
.map_teaser_typ_1 .city-row__types a {
  color: var(--first-color);
  font-weight: 600;
}
.map_teaser_typ_1 .city-row__types a:hover,
.map_teaser_typ_1 .city-row__types a:focus-visible {
  color: var(--accent-color-hover);
  text-decoration: underline !important;
}
.map_teaser_typ_1 .city-row__types i {
  font-style: normal;
  color: var(--mute);
  opacity: 0.5;
}
.map_teaser_typ_1 .cities .btn {
  margin-top: 1.25rem;
  display: inline-flex;
  width: auto;
}
.map_teaser_typ_1 svg.sk-map a.is-hl path {
  fill: var(--accent-color) !important;
}
.map_teaser_typ_1 .text .eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-text);
}
.map_teaser_typ_1 .text h2 {
  font-family: var(--first-font);
  font-size: clamp(1.4rem, 2.1rem, 1.9rem);
  font-weight: 800;
  color: var(--first-color);
  margin: 0.5rem 0 0;
}
.map_teaser_typ_1 .text p {
  margin-top: 0.8rem;
  color: var(--mute);
  max-width: 26rem;
}
.map_teaser_typ_1 .text .btn {
  margin-top: 1.25rem;
  display: inline-flex;
  width: auto;
}
.map_teaser_typ_1 .map-top {
  list-style: none;
  margin: 1.25rem 0 0;
  padding: 0;
}
.map_teaser_typ_1 .map-top a {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.625rem;
  margin: 0 -0.625rem;
  border-radius: 0.5rem;
  color: var(--ink);
  text-decoration: none;
  transition: background-color 0.15s ease;
}
.map_teaser_typ_1 .map-top a:hover {
  background: var(--cream);
}
.map_teaser_typ_1 .map-top__num {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
  font-size: 0.75rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.map_teaser_typ_1 .map-top__name {
  flex: 1;
  min-width: 0;
  font-size: 0.9375rem;
}
.map_teaser_typ_1 .map-top b {
  color: var(--first-color);
  font-size: 0.9375rem;
}
.map_teaser_typ_1 .map-visual {
  position: relative;
  padding-bottom: 2rem;
  /* miesto pre legendu a zdroj pod mapou */
}
.map_teaser_typ_1 svg.sk-map {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}
.map_teaser_typ_1 svg.sk-map path {
  stroke: var(--white-color);
  stroke-width: 1.2;
  stroke-linejoin: round;
  transition: fill 0.15s ease, opacity 0.15s ease;
  cursor: pointer;
}
.map_teaser_typ_1 svg.sk-map a:hover path,
.map_teaser_typ_1 svg.sk-map a:focus-visible path {
  fill: var(--accent-color) !important;
}
.map_teaser_typ_1 svg.sk-map a:focus-visible {
  outline: none;
  box-shadow: none !important;
}
.map_teaser_typ_1 .lvl-0 {
  fill: var(--cream-2);
  background: var(--cream-2);
}
.map_teaser_typ_1 .lvl-1 {
  fill: var(--purple-100);
  background: var(--purple-100);
}
.map_teaser_typ_1 .lvl-2 {
  fill: var(--purple-200);
  background: var(--purple-200);
}
.map_teaser_typ_1 .lvl-3 {
  fill: var(--purple-400);
  background: var(--purple-400);
}
.map_teaser_typ_1 .lvl-4 {
  fill: var(--purple-600);
  background: var(--purple-600);
}
.map_teaser_typ_1 .lvl-5 {
  fill: var(--purple-800);
  background: var(--purple-800);
}
.map_teaser_typ_1 .map-info {
  position: absolute;
  top: 0;
  left: 0;
  background: var(--white-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card-2);
  padding: 0.625rem 0.875rem;
  pointer-events: none;
}
.map_teaser_typ_1 .map-info b {
  display: block;
  color: var(--first-color);
  font-size: 0.9375rem;
}
.map_teaser_typ_1 .map-info span span {
  font-size: 0.8125rem;
  color: var(--mute);
}
.map_teaser_typ_1 .map-legend {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  color: var(--mute);
}
.map_teaser_typ_1 .map-legend i {
  width: 1.5rem;
  height: 0.5rem;
  border-radius: 2px;
  display: inline-block;
}
.map_teaser_typ_1 .map-legend span:first-child {
  margin-right: 0.25rem;
}
.map_teaser_typ_1 .map-legend span:last-child {
  margin-left: 0.25rem;
}
.map_teaser_typ_1 .map-pin {
  position: absolute;
  width: 1.75rem;
  height: 1.75rem;
  color: var(--first-color);
  filter: drop-shadow(0 2px 3px rgba(28, 28, 26, 0.25));
  transition: var(--trans-200);
}
.map_teaser_typ_1 .map-pin.is-accent {
  color: var(--accent-color-hover);
}
.map_teaser_typ_1 .map-pin:hover {
  transform: translateY(-2px) scale(1.08);
}
.map_teaser_typ_1 .map-pin .i,
.map_teaser_typ_1 .map-pin svg {
  width: 100%;
  height: 100%;
}
.map_teaser_typ_1 .map-pin-count {
  position: absolute;
  top: -0.4rem;
  right: -0.5rem;
  background: var(--white-color);
  color: var(--first-color);
  font-size: 0.625rem;
  font-weight: 800;
  padding: 0.1rem 0.35rem;
  border-radius: var(--radius-badge);
  box-shadow: var(--shadow-card-1);
}
@media (max-width: 56.25rem) {
  .map_teaser_typ_1 {
    /* mobil: bez prejdenia myšou info okno len zakrývalo mapu; legenda a zdroj pod mapou v riadku */
  }
  .map_teaser_typ_1 .panel {
    grid-template-columns: 1fr;
    gap: 1.5rem;
    padding: 1.625rem 1.25rem;
  }
  .map_teaser_typ_1 .map-visual {
    order: -1;
    padding-bottom: 0;
  }
  .map_teaser_typ_1 .map-legend {
    position: static;
    margin-top: 0.75rem;
  }
  .map_teaser_typ_1 .section-head {
    margin-bottom: 1.25rem;
  }
  .map_teaser_typ_1 .city-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .map_teaser_typ_1 .cities .btn {
    margin-top: 1rem;
  }
  .map_teaser_typ_1 .map-info {
    display: none;
  }
}
@media (max-width: 75rem) and (min-width: 56.26rem) {
  .map_teaser_typ_1 .panel {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .map_teaser_typ_1 .city-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 30rem) {
  .map_teaser_typ_1 .city-list {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
}
.map_teaser_typ_1.is-large .panel {
  grid-template-columns: 1fr;
  padding: 0;
  overflow: hidden;
}
.map_teaser_typ_1.is-large .map-visual {
  aspect-ratio: 21 / 9;
  border-radius: 0;
}
.map_teaser_typ_1.is-large .text {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 24rem;
  background: var(--white-color);
  margin: 2rem;
  padding: 1.75rem;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-2);
  z-index: 5;
}
.map_teaser_typ_1.is-large .inner {
  position: relative;
}
@media (max-width: 56.25rem) {
  .map_teaser_typ_1.is-large .text {
    position: static;
    margin: 1rem;
    box-shadow: none;
    border: 1px solid var(--line-color);
  }
  .map_teaser_typ_1.is-large .map-visual {
    aspect-ratio: 4 / 3;
    border-radius: var(--radius-md);
  }
}
/* ---------------------------------------------------------------------------
   city_cards_typ_1 - "Ponuka nehnuteľností podľa miest" - fotokarty miest s počtom ponúk (PC mriežka, mobil skladaný slider).
   --------------------------------------------------------------------------- */
.city_cards_typ_1 {
  /* PC a tablet: všetky mestá v mriežke, stĺpce slidera sa rozpustia (Jozef 11. 11.) */
  /* mobil: skladaný slider - stĺpec 2 miest pod sebou, 2 stĺpce + kúsok ďalšieho (spoločné .gs-* v _product_list_typ_1.less) */
  /* Celá karta je JEDEN odkaz (Jozef, 6. 11. 14:20). Fotky miest sú kúpené zo starého bydo.sk
     (Jozef, 6. 11. 14:23) - už MAJÚ vlastný vložený nápis "Ponuka nehnuteľností [Mesto]", preto
     karta nepridáva vlastný tmavý prekryv ani nadpis (duplicitný text) - len malý štítok s počtom. */
}
.city_cards_typ_1 .section-head {
  margin: 0 0 2rem;
}
.city_cards_typ_1 .section-head .eyebrow {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color-hover);
  margin-bottom: 0.5rem;
}
.city_cards_typ_1 .section-head h2 {
  font-family: var(--first-font);
  font-size: var(--h2);
  font-weight: 800;
  color: var(--first-color);
  margin: 0;
  /* zvýraznená časť nadpisu (<strong> v popise widgetu) - zelená ako počet v hero (Jozef 11. 11.) */
}
.city_cards_typ_1 .section-head h2 strong {
  color: var(--accent-color-hover);
  font-weight: 800;
}
.city_cards_typ_1 .gs-track {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-auto-flow: row;
  gap: 1.125rem;
  /* spoločný .gs-track je posuvný pás - v mriežke nie */
  overflow: visible;
  scroll-snap-type: none;
  padding: 0;
  margin: 0;
  cursor: auto;
}
@media (max-width: 61.25rem) {
  .city_cards_typ_1 .gs-track {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.city_cards_typ_1 .gs-col {
  display: contents;
}
@media (max-width: 40rem) {
  .city_cards_typ_1 .gs-track {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 3rem) / 2);
    gap: 0.75rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 0.5rem var(--page-x);
    margin: -0.5rem calc(-1 * var(--page-x)) 0;
    scroll-padding-inline: var(--page-x);
  }
  .city_cards_typ_1 .gs-track::-webkit-scrollbar {
    display: none;
  }
  .city_cards_typ_1 .gs-col {
    display: grid;
    gap: 0.75rem;
    min-width: 0;
    scroll-snap-align: start;
  }
}
.city_cards_typ_1 .city-card {
  min-width: 0;
  /* grid položka - viď vysvetlenie v category_tiles_typ_1.less */
  user-select: none;
  -webkit-user-drag: none;
  position: relative;
  /* pomer fotiek (940 x 788) - nápis je V obrázku, karta ho musí ukázať celý; 3:4 ho orezávala a zväčšovala (Jozef 11. 11.) */
  aspect-ratio: 940 / 788;
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: var(--shadow-card-1);
  display: block;
  text-decoration: none;
  transition: var(--trans-200);
}
.city_cards_typ_1 .city-card:hover,
.city_cards_typ_1 .city-card:focus-visible {
  box-shadow: var(--shadow-card-2);
  transform: translateY(-3px);
}
.city_cards_typ_1 .city-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.city_cards_typ_1 .city-card:hover img {
  transform: scale(1.06);
}
.city_cards_typ_1 .city-card .count {
  position: absolute;
  right: 0.625rem;
  bottom: 0.625rem;
  z-index: 2;
  background: var(--warm-white);
  color: var(--first-color);
  font-size: 0.6875rem;
  font-weight: 700;
  padding: 0.3rem 0.625rem;
  border-radius: var(--radius-badge);
  box-shadow: var(--shadow-card-1);
}
/* ---------------------------------------------------------------------------
   private_cta_typ_1 - blok pre súkromných predajcov/prenajímateľov: "Predávate sami?
   Inzerujte zadarmo". Inzercia je zadarmo aj pre súkromné osoby (docs/bydo/monetizacia.md,
   Jozef 6. 11.). Svetlý (biela karta na ploche stránky), aby sa nebil s fialovým
   rk_cta_typ_1 pre realitky; na úvodke ide PRED neho - súkromných ľudí je viac.
   Vpravo ukážka rozpracovaného inzerátu v HTML (nie obrázok) - rovnaký princíp ako
   `.rk-preview` v rk_cta: ukázať, čo človek dostane, nie ilustráciu.
   --------------------------------------------------------------------------- */
.private_cta_typ_1 {
  background: var(--white-color);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card-1);
  padding: 2.5rem;
  /* kroky - ikona v jemnom zelenom kruhu namiesto čísla (pre ľudí, nie pre realitky) */
  /* ---- ukážka rozpracovaného inzerátu ---- */
}
.private_cta_typ_1 .wrap {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 3rem;
  align-items: center;
}
.private_cta_typ_1 .eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-text);
}
.private_cta_typ_1 h2 {
  margin: 0.5rem 0 0;
  font-family: var(--first-font);
  font-size: var(--h2);
  line-height: var(--h2-lh);
  font-weight: 800;
  color: var(--first-color);
}
.private_cta_typ_1 p.lede {
  margin-top: 0.875rem;
  color: var(--mute);
  max-width: 34rem;
}
.private_cta_typ_1 .pc-steps {
  margin: 1.75rem 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.private_cta_typ_1 .pc-steps li {
  display: flex;
  gap: 0.875rem;
  align-items: flex-start;
}
.private_cta_typ_1 .pc-steps .pc-steps__icon {
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--green-50);
  color: var(--accent-text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.private_cta_typ_1 .pc-steps .pc-steps__icon .i,
.private_cta_typ_1 .pc-steps .pc-steps__icon svg {
  width: 1.25rem;
  height: 1.25rem;
}
.private_cta_typ_1 .pc-steps strong {
  display: block;
  color: var(--ink);
  font-size: 0.9375rem;
}
.private_cta_typ_1 .pc-steps span.pc-steps__txt {
  color: var(--mute);
  font-size: 0.875rem;
}
.private_cta_typ_1 .actions {
  margin-top: 1.75rem;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
}
.private_cta_typ_1 .pc-note {
  font-size: 0.8125rem;
  color: var(--mute);
}
.private_cta_typ_1 .pc-preview {
  background: var(--cream);
  border-radius: var(--radius-md);
  padding: 1.5rem;
}
.private_cta_typ_1 .pc-form {
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-2);
  padding: 1.25rem;
  color: var(--ink);
}
.private_cta_typ_1 .pc-form__title {
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--first-color);
  margin: 0 0 0.875rem;
}
.private_cta_typ_1 .pc-form__photos {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.private_cta_typ_1 .pc-form__photos img,
.private_cta_typ_1 .pc-form__photos .pc-form__add {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 0.5rem;
  display: block;
}
.private_cta_typ_1 .pc-form__photos img:first-child {
  grid-row: span 2;
  aspect-ratio: auto;
  height: 100%;
}
.private_cta_typ_1 .pc-form__photos .pc-form__add {
  grid-column: span 2;
  aspect-ratio: auto;
  height: 100%;
  border: 1.5px dashed #B9BEC6;
  color: var(--mute);
  display: flex;
  align-items: center;
  justify-content: center;
}
.private_cta_typ_1 .pc-form__photos .pc-form__add .i,
.private_cta_typ_1 .pc-form__photos .pc-form__add svg {
  width: 1.25rem;
  height: 1.25rem;
}
.private_cta_typ_1 .pc-form__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.5rem 0;
  border-top: 1px solid var(--line-color);
  font-size: 0.875rem;
}
.private_cta_typ_1 .pc-form__row span {
  color: var(--mute);
}
.private_cta_typ_1 .pc-form__row b {
  color: var(--ink);
  font-weight: 600;
  text-align: right;
}
.private_cta_typ_1 .pc-form__row b.is-price {
  color: var(--first-color);
  font-weight: 700;
}
.private_cta_typ_1 .pc-form__foot {
  margin-top: 0.875rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.private_cta_typ_1 .pc-form__foot .dot {
  display: inline-block;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--accent-color);
  margin-right: 0.375rem;
}
@media (max-width: 56.25rem) {
  .private_cta_typ_1 {
    padding: 1.75rem 1.25rem;
  }
  .private_cta_typ_1 .wrap {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
/* ---------------------------------------------------------------------------
   rk_cta_typ_1 - blok pre realitky/developerov: "Inzerujte zadarmo", 3 kroky,
   dôkaz objemu. Inzercia je ZADARMO (docs/bydo/monetizacia.md) - žiadne kredity,
   žiadny cenník v texte. `.rk-import-row` (variant C) = spôsoby napojenia -
   vyvážené stĺpce, "Súbor vo formáte UC" (nie "Nehnuteľnosti.sk").
   --------------------------------------------------------------------------- */
.rk_cta_typ_1 {
  background: var(--first-color);
  position: relative;
  overflow: hidden;
  color: var(--white-color);
  /* Pravý stĺpec = ŽIVÁ UKÁŽKA produktu ("Vaša realitka na bydo.sk"), nie fotka/ilustrácia -
     Jozef chcel vidieť, ako vyzerá napojený účet realitky priamo v HTML/CSS (6. 11. 15:30,
     nahrádza predošlý pokyn o fotke - rk-napojenie.webp sa tu už nepoužíva, súbor ostáva
     pre prípadné iné použitie). Karta je BIELA na fialovom pozadí sekcie, preto si farby
     textu nastavuje sama (nededí `color:var(--white-color)` z `.rk_cta_typ_1`). */
  /* spôsoby napojenia - vyvážené stĺpce (variant C) */
}
.rk_cta_typ_1:before {
  content: "";
  position: absolute;
  right: -8rem;
  top: -10rem;
  width: 28rem;
  height: 28rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.08), transparent 70%);
}
.rk_cta_typ_1 .wrap {
  position: relative;
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 3rem;
  align-items: stretch;
  /* grid položky majú predvolene min-width:auto (viď vysvetlenie v category_tiles_typ_1.less) -
       bez toho sa .rk-preview s dlhým názvom inzerátu nezmestí na úzku obrazovku a pretečie
       (zistené pri 390px, Jozef 6. 11. 15:30). */
}
.rk_cta_typ_1 .wrap > div {
  min-width: 0;
}
.rk_cta_typ_1 .eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--green-400);
  margin-bottom: 0.5rem;
}
.rk_cta_typ_1 h2 {
  font-family: var(--first-font);
  font-size: clamp(1.6rem, 2.6rem, 2.1rem);
  font-weight: 800;
  color: var(--white-color);
  margin: 0;
}
.rk_cta_typ_1 p.lede {
  margin-top: 0.875rem;
  color: rgba(255, 255, 255, 0.78);
  max-width: 34rem;
}
.rk_cta_typ_1 .rk-steps {
  margin-top: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.125rem;
  list-style: none;
  padding: 0;
}
.rk_cta_typ_1 .rk-steps li {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}
.rk_cta_typ_1 .rk-steps .num {
  flex-shrink: 0;
  width: 2.125rem;
  height: 2.125rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  color: var(--white-color);
  font-size: 0.9375rem;
}
.rk_cta_typ_1 .rk-steps strong {
  display: block;
  color: var(--white-color);
  font-size: 0.9375rem;
  margin-bottom: 0.15rem;
}
.rk_cta_typ_1 .rk-steps span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.875rem;
}
.rk_cta_typ_1 .actions {
  display: flex;
  gap: 0.875rem;
  margin-top: 2rem;
  flex-wrap: wrap;
  align-items: center;
  /* vedľajšie tlačidlo na fialovej (Zaregistrovať realitku) - biely obrys */
}
.rk_cta_typ_1 .actions .btn-on-dark {
  background: transparent;
  color: var(--white-color);
  border: 1px solid rgba(255, 255, 255, 0.55);
}
.rk_cta_typ_1 .actions .btn-on-dark:hover,
.rk_cta_typ_1 .actions .btn-on-dark:focus-visible {
  background: var(--white-color);
  color: var(--first-color);
  border-color: var(--white-color);
}
.rk_cta_typ_1 .actions .btn-link {
  color: var(--white-color);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-weight: 700;
}
.rk_cta_typ_1 .actions .btn-link .i {
  display: inline-flex;
  width: 1rem;
  height: 1rem;
}
.rk_cta_typ_1 .rk-side {
  display: flex;
  align-items: center;
  height: 100%;
}
.rk_cta_typ_1 .rk-preview {
  width: 100%;
  background: var(--white-color);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card-2);
  padding: 1.25rem;
  color: var(--ink);
  /* `flex-start`, nie `center` - pri úzkej karte (mobil) sa `.rk-preview__info` zalomí na
       2 riadky (dlhší názov + štítok "Nový") a `.rk-preview__price` by sa vycentrovaním
       dostala do stredu medzi ne (Jozef 6. 11. 15:30, 390px). `flex-wrap` + pevný
       `flex-basis` na `__info` (nie `flex:1` so základňou 0%) - keď sa fotka + cena na
       veľmi úzkej karte spolu nezmestia vedľa textu, cena sa zalomí na vlastný riadok
       vpravo namiesto toho, aby sa text stlačil na 0px šírky a vizuálne sa prekrýval. */
}
.rk_cta_typ_1 .rk-preview__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid var(--line-color);
}
.rk_cta_typ_1 .rk-preview__logo {
  flex-shrink: 0;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--radius-sm);
  background: var(--purple-50);
  color: var(--first-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 0.9375rem;
}
.rk_cta_typ_1 .rk-preview__name {
  display: block;
  font-weight: 700;
  color: var(--ink);
  font-size: 0.9375rem;
}
.rk_cta_typ_1 .rk-preview__status {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.2rem;
  font-size: 0.75rem;
  color: var(--mute);
}
.rk_cta_typ_1 .rk-preview__status .dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--accent-color-hover);
  flex-shrink: 0;
}
.rk_cta_typ_1 .rk-preview__list {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.rk_cta_typ_1 .rk-preview__row {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem 0.75rem;
  flex-wrap: wrap;
}
.rk_cta_typ_1 .rk-preview__photo {
  flex-shrink: 0;
  width: 3.75rem;
  aspect-ratio: 4 / 3;
  border-radius: 0.5rem;
  overflow: hidden;
}
.rk_cta_typ_1 .rk-preview__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.rk_cta_typ_1 .rk-preview__info {
  flex: 1 1 8rem;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}
.rk_cta_typ_1 .rk-preview__title-row {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  min-width: 0;
}
.rk_cta_typ_1 .rk-preview__title {
  min-width: 0;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rk_cta_typ_1 .rk-preview__badge {
  flex-shrink: 0;
}
.rk_cta_typ_1 .rk-preview__loc {
  font-size: 0.75rem;
  color: var(--mute);
}
.rk_cta_typ_1 .rk-preview__price {
  flex-shrink: 0;
  margin-left: auto;
  font-weight: 800;
  color: var(--first-color);
  font-size: 0.875rem;
}
.rk_cta_typ_1 .rk-preview__foot {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-top: 1.125rem;
  padding-top: 1rem;
  border-top: 1px solid var(--line-color);
  font-size: 0.8125rem;
  color: var(--mute);
}
.rk_cta_typ_1 .rk-preview__foot b {
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--first-color);
  font-family: var(--first-font);
}
@media (max-width: 56.25rem) {
  .rk_cta_typ_1 .wrap {
    grid-template-columns: 1fr;
  }
}
.rk_cta_typ_1 .rk-import-row {
  margin-top: 2.25rem;
  padding-top: 1.75rem;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}
.rk_cta_typ_1 .rk-import-row p {
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.65);
  margin-bottom: 0.8rem;
}
.rk_cta_typ_1 .rk-import-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}
.rk_cta_typ_1 .rk-import-chips span {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: var(--white-color);
  font-size: 0.8rem;
  font-weight: 500;
  padding: 0.4375rem 0.875rem;
  border-radius: var(--radius-badge);
}
.rk_cta_typ_1 .rk-import-chips span.is-soon {
  background: transparent;
  border-style: dashed;
  border-color: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.55);
}
.rk_cta_typ_1 .rk-import-chips span.is-soon:after {
  content: "- pripravujeme";
  font-weight: 400;
  margin-left: 0.3rem;
  font-size: 0.72rem;
  opacity: 0.85;
}
/* ---------------------------------------------------------------------------
   quick_links_typ_1 - "Rýchly prístup" - odkazy, ktoré naozaj niekam vedú.
   Bez kreditov/ceny inzercie (stará dlaždica "Cena inzercie" neplatí - inzercia
   je zadarmo, docs/bydo/monetizacia.md).
   --------------------------------------------------------------------------- */
.quick_links_typ_1 .grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
.quick_links_typ_1 .quick-link {
  min-width: 0;
  /* grid položka - viď vysvetlenie v category_tiles_typ_1.less */
  display: flex;
  align-items: center;
  gap: 0.875rem;
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  padding: 1.0625rem 1.3125rem;
  transition: var(--trans-200);
}
.quick_links_typ_1 .quick-link:hover {
  box-shadow: var(--shadow-card-2);
  transform: translateY(-2px);
}
.quick_links_typ_1 .quick-link .ic {
  width: 2.625rem;
  height: 2.625rem;
  border-radius: 0.625rem;
  background: var(--silver-color);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--accent-color-hover);
  flex-shrink: 0;
}
.quick_links_typ_1 .quick-link .ic .i {
  width: 1.375rem;
  height: 1.375rem;
}
.quick_links_typ_1 .quick-link span {
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--first-color);
}
@media (min-width: 93.75rem) {
  .quick_links_typ_1 .grid {
    grid-template-columns: repeat(6, 1fr);
  }
}
@media (max-width: 56.25rem) {
  .quick_links_typ_1 .grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 40rem) {
  .quick_links_typ_1 .grid {
    grid-template-columns: 1fr;
  }
}
/* ---------------------------------------------------------------------------
   tools_typ_1 - "Nástroje" na úvodke (namiesto rýchlych odkazov): biele karty
   s ikonou v zelenom kruhu (ako populárne hľadania), nadpis, jedna veta a šípka.
   Len funkčné nástroje, poradie a texty z položiek menu.
   --------------------------------------------------------------------------- */
.tools_typ_1 {
  /* nadpis ako ostatné bloky úvodky (blog, mapa) - fialový, tučný */
}
.tools_typ_1 .section-head {
  margin-bottom: 2rem;
}
.tools_typ_1 .section-head h2 {
  font-family: var(--first-font);
  font-size: var(--h2);
  font-weight: 800;
  color: var(--first-color);
}
.tools_typ_1 .tools-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.tools_typ_1 .tool-card {
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  padding: 1.25rem 1.25rem 1.25rem 1.375rem;
  color: var(--ink);
  transition: var(--trans-200);
}
.tools_typ_1 .tool-card:hover {
  box-shadow: var(--shadow-card-2);
  transform: translateY(-2px);
}
.tools_typ_1 .tool-card:hover .tool-card__go {
  transform: translateX(3px);
}
.tools_typ_1 .tool-card .ic {
  width: 2.75rem;
  height: 2.75rem;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--green-50);
  color: var(--accent-color-hover);
  display: flex;
  align-items: center;
  justify-content: center;
}
.tools_typ_1 .tool-card .ic .i {
  width: 1.375rem;
  height: 1.375rem;
}
.tools_typ_1 .tool-card__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.tools_typ_1 .tool-card__body strong {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--first-color);
}
.tools_typ_1 .tool-card__text {
  font-size: 0.875rem;
  line-height: 1.45;
  color: var(--mute);
}
.tools_typ_1 .tool-card__go {
  flex-shrink: 0;
  align-self: center;
  color: var(--mute);
  transition: transform 0.2s ease;
}
.tools_typ_1 .tool-card__go svg {
  width: 1.125rem;
  height: 1.125rem;
  display: block;
}
@media (max-width: 75rem) {
  .tools_typ_1 .tools-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 40rem) {
  .tools_typ_1 .tools-grid {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }
  .tools_typ_1 .tool-card {
    padding: 1rem 1.125rem;
  }
}
/* ---------------------------------------------------------------------------
   blog_teaser_typ_1 - "Rady a novinky" - 3 články z blogu.
   --------------------------------------------------------------------------- */
.blog_teaser_typ_1 .head-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 2rem;
}
.blog_teaser_typ_1 .head-row h2 {
  font-family: var(--first-font);
  font-size: var(--h2);
  font-weight: 800;
  color: var(--first-color);
  margin: 0;
}
.blog_teaser_typ_1 .grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.375rem;
}
.blog_teaser_typ_1 .blog-card {
  min-width: 0;
  /* grid položka - viď vysvetlenie v category_tiles_typ_1.less */
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  overflow: hidden;
  display: block;
  transition: var(--trans-200);
}
.blog_teaser_typ_1 .blog-card:hover {
  box-shadow: var(--shadow-card-2);
  transform: translateY(-3px);
}
.blog_teaser_typ_1 .blog-card .photo {
  display: block;
  aspect-ratio: 16 / 9;
  margin: 0.5625rem;
  border-radius: var(--radius-sm);
  object-fit: cover;
  width: calc(100% - 1.125rem);
  height: auto;
  background: var(--cream-2);
  /* kým sa nenačíta <img> (ilustrácia Higgsfield, docs/bydo/obrazky-prompt.md) */
}
.blog_teaser_typ_1 .blog-card .body {
  padding: 0.2rem 1.1875rem 1.3125rem;
}
.blog_teaser_typ_1 .blog-card .tag {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--accent-color-hover);
  background: rgba(151, 203, 68, 0.12);
  padding: 0.3rem 0.625rem;
  border-radius: var(--radius-badge);
}
.blog_teaser_typ_1 .blog-card h3 {
  margin-top: 0.7rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.35;
  color: var(--ink);
}
.blog_teaser_typ_1 .blog-card .date {
  margin-top: 0.6rem;
  font-size: 0.78rem;
  color: var(--mute);
}
@media (max-width: 56.25rem) {
  .blog_teaser_typ_1 .grid {
    grid-template-columns: 1fr;
  }
}
/* ---------------------------------------------------------------------------
   popular_searches_typ_1 - "Populárne hľadania" nad pätou: odkazy na pekné
   adresy výpisov (SEO prelinkovanie). Biela karta ako mapa, stĺpec = hlavička
   s ikonou kategórie a riadky lokalita - počet. Na mobile posuvník
   do strany ako najnovšie ponuky (karta = stĺpec, kúsok ďalšej vykukuje).
   --------------------------------------------------------------------------- */
.popular_searches_typ_1 {
  padding: var(--section-y-half) 0;
  /* mobil: posuvník ako najnovšie ponuky - panel bez karty, každý stĺpec je vlastná biela karta, kúsok ďalšej vykukuje.
     Až k okraju obrazovky cez --page-x (kontajner je tu na celú šírku); zvislý okraj pre tieň kariet. */
}
.popular_searches_typ_1 .section-head {
  margin-bottom: 1.5rem;
}
.popular_searches_typ_1 .ps-panel {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 2rem;
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  padding: 2rem 2.25rem;
}
.popular_searches_typ_1 .ps-col__head {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0 0 0.5rem;
  color: var(--first-color);
}
.popular_searches_typ_1 .ps-col__head .ic {
  width: 2.25rem;
  height: 2.25rem;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--green-50);
  color: var(--accent-color-hover);
  display: flex;
  align-items: center;
  justify-content: center;
}
.popular_searches_typ_1 .ps-col__head .ic .i {
  width: 1.125rem;
  height: 1.125rem;
}
.popular_searches_typ_1 .ps-col__title {
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.25;
}
.popular_searches_typ_1 ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.popular_searches_typ_1 li + li {
  border-top: 1px solid var(--line);
}
.popular_searches_typ_1 li a {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.5rem 0;
  font-size: 0.9375rem;
  color: var(--ink);
  text-decoration: none;
  transition: color 0.15s ease;
}
.popular_searches_typ_1 li a span {
  min-width: 0;
}
.popular_searches_typ_1 li a small {
  color: var(--mute);
  font-size: 0.8125rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.popular_searches_typ_1 li a:hover {
  color: var(--accent-text);
}
.popular_searches_typ_1 li a:hover small {
  color: var(--accent-text);
}
@media (max-width: 75rem) {
  .popular_searches_typ_1 .ps-panel {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 40rem) {
  .popular_searches_typ_1 .ps-panel {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc(100% - 2.5rem);
    gap: 0.75rem;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    background: none;
    box-shadow: none;
    border-radius: 0;
    padding: 0.75rem var(--page-x);
    margin: -0.75rem calc(-1 * var(--page-x));
    scroll-padding-inline: var(--page-x);
  }
  .popular_searches_typ_1 .ps-panel::-webkit-scrollbar {
    display: none;
  }
  .popular_searches_typ_1 .ps-col {
    scroll-snap-align: start;
    background: var(--white-color);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-card-1);
    padding: 1.25rem 1.25rem 0.75rem;
  }
}
/* ---------------------------------------------------------------------------
   section_footer_typ_1 - pätička (stĺpce, sociálne siete, copyright).
   Tmavá fialová plocha (--dark-surface = --purple-900, nie zelená - identita).
   --------------------------------------------------------------------------- */
.section_footer_typ_1 {
  background: var(--dark-surface);
  color: var(--on-dark-text-mute);
  padding: 3.5rem 0 0;
  /* `.about` má v 1b globálny padding sekcie (_about.less) - v päte ho treba vynulovať */
}
.section_footer_typ_1 .logo {
  display: block;
  line-height: 1.2;
  margin-top: 0;
  font-family: var(--first-font);
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--on-dark-text);
  margin-bottom: 0.8rem;
}
.section_footer_typ_1 .logo em {
  color: var(--green-400);
  font-style: normal;
}
.section_footer_typ_1 .cols {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 2rem;
  align-items: start;
}
.section_footer_typ_1 h4 {
  color: var(--on-dark-text);
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 1rem;
}
.section_footer_typ_1 ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.section_footer_typ_1 li {
  margin-bottom: 0.6rem;
  font-size: 0.9rem;
}
.section_footer_typ_1 a {
  color: var(--on-dark-text-mute);
  text-decoration: none;
}
.section_footer_typ_1 a:hover {
  color: var(--on-dark-text);
}
.section_footer_typ_1 .about {
  padding: 0;
}
.section_footer_typ_1 .about p {
  font-size: 0.875rem;
  max-width: 22rem;
  line-height: 1.6;
}
.section_footer_typ_1 .social {
  display: flex;
  gap: 0.6rem;
  margin-top: 1.2rem;
}
.section_footer_typ_1 .social a {
  width: 2.3rem;
  height: 2.3rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--on-dark-text);
}
.section_footer_typ_1 .social a .i {
  width: 1.0625rem;
  height: 1.0625rem;
}
.section_footer_typ_1 .bottom {
  border-top: 1px solid var(--on-dark-line);
  margin-top: 2.5rem;
  padding: 1.375rem 0;
  font-size: 0.8125rem;
  display: flex;
  justify-content: space-between;
  gap: 1rem 2rem;
}
.section_footer_typ_1 .bottom__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.25rem;
}
@media (max-width: 56.25rem) {
  .section_footer_typ_1 .cols {
    grid-template-columns: 1fr 1fr;
    gap: 2rem 1.5rem;
  }
  .section_footer_typ_1 .about {
    grid-column: 1 / -1;
  }
}
@media (max-width: 40rem) {
  .section_footer_typ_1 .cols {
    grid-template-columns: 1fr;
  }
  .section_footer_typ_1 .bottom {
    flex-direction: column;
    gap: 0.75rem;
    text-align: center;
  }
  .section_footer_typ_1 .bottom__links {
    justify-content: center;
  }
}
/* ---------------------------------------------------------------------------
   select_typ_1 - vlastný rozbaľovací zoznam (nie natívny <select> prehliadača,
   Jozef 6. 11. 14:32: macOS ukazuje oranžovú systémovú ponuku, ktorá nejde
   nijako ofarbiť). Alpine komponent `bydoSelect()` (script na konci súboru je
   v manuáli, reálny widget ho bude mať v spoločnom JS bydo - pozri komentár).
   Pod viditeľným tlačidlom je skrytý skutočný `<select>` pre formulár/bez JS.
   --------------------------------------------------------------------------- */
.bydo-select {
  position: relative;
  /* Fokus/otvorený stav NEMÁ vlastnú (zelenú) farbu - rovnaký fialový okraj + prsteň ako
     ostatné polia dáva spoločné pravidlo `.bydo-select:focus-within` v `_bydo_variables.less`
     (Jozef 6. 11. 14:51 - zelená patrí len jemnému podfarbeniu vybranej položky v paneli). */
  /* skutočný <select> zostáva vo DOM (hodnota pre formulár/bez JS) - vizuálne skrytý,
     nie display:none (to by ho vyradilo z odosielania vo väčšine prehliadačov funguje
     aj tak, ale `sr-only` je bezpečnejšie/ponechá ho dosiahnuteľný aj asistenčným technológiám
     keby JS zlyhal). */
}
.bydo-select__trigger {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.5625rem;
  height: var(--control-h-m);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  padding: 0 0.9375rem;
  cursor: pointer;
  text-align: left;
  transition: var(--trans-200);
  /* flex + blokové SVG - inak SVG sedí na účiare písma a šípka je „vysadená" pod textom (Jozef 7. 11.) */
}
.bydo-select__trigger .i {
  width: 1.1875rem;
  height: 1.1875rem;
  color: var(--mute);
  flex-shrink: 0;
}
.bydo-select__trigger-text {
  flex: 1;
  min-width: 0;
}
.bydo-select__trigger-label {
  display: block;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.bydo-select__trigger-value {
  display: block;
  font-size: 0.9375rem;
  color: var(--ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.bydo-select__trigger-caret {
  width: 1rem;
  height: 1rem;
  color: var(--mute);
  flex-shrink: 0;
  transition: transform 0.2s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.bydo-select__trigger-caret svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: currentColor;
}
.bydo-select__trigger:focus-visible {
  outline: none;
}
.bydo-select.is-open .bydo-select__trigger-caret {
  transform: rotate(180deg);
}
.bydo-select__panel {
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 0;
  /* aspoň šírka poľa, ale nie užší ako 16rem - v úzkom poli sa položky lámali a vznikal vodorovný posuvník */
  min-width: max(100%, 16rem);
  z-index: 20;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card-2);
  padding: 0.4rem;
  max-height: min(24rem, 60vh);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  /* tenký posuvník v tónoch webu namiesto hrubého systémového */
  scrollbar-width: thin;
  scrollbar-color: var(--line-color) transparent;
}
.bydo-select__panel::-webkit-scrollbar {
  width: 0.375rem;
}
.bydo-select__panel::-webkit-scrollbar-thumb {
  background: var(--line-color);
  border-radius: 1rem;
}
.bydo-select__panel::-webkit-scrollbar-track {
  background: transparent;
}
.bydo-select__option {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 0.625rem;
  border-radius: 0.5rem;
  border: 0;
  background: none;
  cursor: pointer;
  text-align: left;
  color: var(--ink);
  font-size: 0.9rem;
  white-space: nowrap;
  /* fajka vybranej položky výraznejšia tmavozelená (Jozef 6. 11. 14:51) */
}
.bydo-select__option .i {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--mute);
  flex-shrink: 0;
}
.bydo-select__option-count {
  margin-left: auto;
  color: var(--mute);
  font-size: 0.8rem;
  flex-shrink: 0;
}
.bydo-select__option-check {
  width: 1rem;
  height: 1rem;
  color: var(--accent-text);
  flex-shrink: 0;
  visibility: hidden;
}
.bydo-select__option.is-active,
.bydo-select__option:hover {
  background: var(--green-50);
}
.bydo-select__option[aria-selected="true"] {
  font-weight: 700;
}
.bydo-select__option[aria-selected="true"] .bydo-select__option-check {
  visibility: visible;
}
.bydo-select__native {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* ---------------------------------------------------------------------------
   filter_typ_1 - kompaktný riadok vo výpise + modal "Filter" (Jozef, 6. 11.
   14:33, vzor hladamchatu.sk: jozef-chaty-filter-lista.png/-modal.png).
   Kompaktný riadok: pilulka vyhľadávania (zhrnutie filtra) + okrúhle tlačidlo
   s odznakom počtu aktívnych filtrov -> otvorí modal (mobil na celú obrazovku,
   PC stredný). V module modalu: Lokalita/Typ ponuky/Druh ako vlastné selecty
   (_select_typ_1.less), Zoradiť ako pilulky, Cena s histogramom + dvojitým
   posuvníkom, Typ nehnuteľnosti ako pilulky s ikonou a počtom, izby/stav/
   vybavenie ako pilulky. Pätička: Vymazať filter (text) + Zobraziť ponuky (N).
   --------------------------------------------------------------------------- */
/* ---- Kompaktný riadok vo výpise ---- */
.filter-bar {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.filter-bar__search {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  height: var(--control-h-m);
  padding: 0 1.125rem;
  border-radius: var(--radius-badge);
  background: var(--white-color);
  border: 1px solid var(--line-color);
  cursor: pointer;
  text-align: left;
}
.filter-bar__search .i {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--mute);
  flex-shrink: 0;
}
.filter-bar__search span {
  font-size: 0.9375rem;
  color: var(--ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.filter-bar__search:hover {
  border-color: var(--accent-color-hover);
}
.filter-bar__toggle {
  position: relative;
  flex-shrink: 0;
  width: var(--control-h-m);
  height: var(--control-h-m);
  border-radius: 50%;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  color: var(--first-color);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.filter-bar__toggle .i {
  width: 1.25rem;
  height: 1.25rem;
}
.filter-bar__toggle:hover {
  border-color: var(--accent-color-hover);
}
.filter-bar__toggle-badge {
  position: absolute;
  top: -0.25rem;
  right: -0.25rem;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 0.3rem;
  border-radius: var(--radius-badge);
  background: var(--accent-color);
  color: var(--on-accent);
  font-size: 0.6875rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}
.filter-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1rem;
  /* Zoradiť presunuté sem z modalu (Jozef 6. 11. 16:05 - patrí k počtu ponúk, nie do filtra) */
  /* mobil: počet ponúk hore, zoradenie (na zvyšok šírky) + prepínač pod ním - v jednom riadku
     sa nezmestili a rozťahovali stránku do strany */
}
.filter-summary-row .count {
  font-size: 0.875rem;
  color: var(--mute);
}
.filter-summary-row__right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  /* bez nadpisu "ZORADIŤ" nad poľom - inak pole odskočí nižšie ako prepínač (Jozef 6. 11.);
       nadpis ostáva pre čítačky, viditeľne ho nahrádza ikona šípok */
}
.filter-summary-row__right .field {
  width: 12.5rem;
}
.filter-summary-row__right .field > label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
.filter-summary-row__right .bydo-select__trigger {
  height: 2.75rem;
}
.filter-summary-row__right .view-switch {
  height: 2.75rem;
  align-items: center;
  box-sizing: border-box;
}
@media (max-width: 36rem) {
  .filter-summary-row {
    flex-wrap: wrap;
  }
  .filter-summary-row__right {
    width: 100%;
  }
  .filter-summary-row__right .field {
    flex: 1;
    width: auto;
    min-width: 0;
  }
}
/* ---- Modal ---- */
.filter-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  background: rgba(28, 28, 26, 0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
.filter-modal {
  width: 100%;
  max-width: 38rem;
  max-height: calc(100vh - 4rem);
  background: var(--white-color);
  border-radius: var(--radius-md);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: var(--shadow-card-2);
  /* Predaj/Prenájom/Dražba - segmentový prepínač cez celú šírku, nad scrollovateľným
     telom (Jozef 6. 11. 16:05 - nebol to blok s pilulkami, ale vždy viditeľný prepínač). */
  /* okno filtra má spoločný .bydo-seg; tento vzhľad ostáva pre účet a pridanie inzerátu (ešte nepreklopené) */
  /* nadpis dynamického podbloku (Druh bytu/domu/..., Vlastníctvo, Materiál...) - menší než
     `.eyebrow` sekcie, nie je to nová sekcia, len člení obsah existujúcej (Jozef 6. 11. 15:50). */
  /* Slovensko / Zahraničie pod lokalitou, pod Zahraničím krajiny */
  /* blok "Ďalšie" - zbalený, aby dlhý modal nebol nekonečný (Jozef 6. 11. 15:50) */
}
.filter-modal__header {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid var(--line-color);
}
.filter-modal__header h3 {
  font-family: var(--first-font);
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 0;
}
.filter-modal__offer-switch.bydo-seg {
  margin: 1rem 1.5rem 1.25rem;
}
.filter-modal__offer-switch:not(.bydo-seg) {
  flex-shrink: 0;
  display: flex;
  gap: 0.25rem;
  margin: 1rem 1.5rem 1.25rem;
  padding: 0.25rem;
  background: var(--cream);
  border-radius: var(--radius-sm);
}
.filter-modal__offer-switch:not(.bydo-seg) button {
  flex: 1;
  border: 0;
  background: none;
  padding: 0.625rem;
  border-radius: calc(var(--radius-sm) - 0.25rem);
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.875rem;
  color: var(--mute);
  cursor: pointer;
}
.filter-modal__offer-switch:not(.bydo-seg) button.is-active {
  background: var(--white-color);
  color: var(--first-color);
  box-shadow: var(--shadow-card-1);
}
.filter-modal__body {
  flex: 1;
  overflow-y: auto;
  padding: 0 1.5rem;
}
.filter-modal__section {
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--line-color);
}
.filter-modal__section:last-child {
  border-bottom: 0;
}
.filter-modal__section > .eyebrow {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color-hover);
  margin-bottom: 0.5rem;
  margin-bottom: 1rem;
  display: block;
}
.filter-modal__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}
.filter-modal__subheading {
  display: block;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--ink);
  margin-bottom: 0.5rem;
}
.filter-modal__countries {
  margin-top: 0.75rem;
}
.filter-modal__countries + .filter-modal__countries {
  margin-top: 0.5rem;
}
.filter-modal__subblock {
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px dashed var(--line-color);
}
.filter-modal__hint {
  font-size: 0.78rem;
  color: var(--mute);
  margin: -0.25rem 0 0.75rem;
}
.filter-modal__more-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: none;
  border: 0;
  padding: 0;
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--first-color);
  cursor: pointer;
}
.filter-modal__more-toggle .i {
  width: 1.125rem;
  height: 1.125rem;
  transition: transform 0.2s ease;
}
.filter-modal__more-toggle .i.is-rotated {
  transform: rotate(180deg);
}
.filter-modal__more {
  margin-top: 1rem;
}
.filter-modal__footer {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.125rem 1.5rem;
  border-top: 1px solid var(--line-color);
}
@media (max-width: 40rem) {
  .filter-modal__fields {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 40rem) {
  .filter-modal-backdrop {
    padding: 0;
    align-items: flex-end;
  }
  .filter-modal {
    max-width: none;
    max-height: 92vh;
    border-radius: var(--radius-md) var(--radius-md) 0 0;
  }
}
/* ---- Rozsah od-do (plocha, pozemok, poschodie) - dve polia + pomlčka, nie posuvník
   (Jozef 6. 11. 15:50: "dva posuvník alebo dve polia od/do" - polia, jednoduchšie na čísla). */
.range-row {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  max-width: 20rem;
  /* pole s jednotkou vpravo (m²) - text zarovnaný vľavo ako ostatné polia */
}
.range-row > span {
  color: var(--mute);
  flex-shrink: 0;
}
.range-row .range-input {
  position: relative;
  flex: 1;
  margin: 0;
  font-weight: 400;
  /* <label> obal - inak zdedí tučné písmo z 1b label */
}
.range-row .range-input .fb-input {
  padding-right: 2.75rem;
}
.range-row .range-input .unit {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--mute);
  font-size: 0.875rem;
  pointer-events: none;
}
/* ---- Pilulky (zoradiť, typ nehnuteľnosti, izby, stav, vybavenie) ---- */
.filter-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.filter-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 0.9rem;
  border-radius: var(--radius-badge);
  border: 1px solid var(--line-color);
  background: var(--white-color);
  color: var(--ink);
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--trans-200);
}
.filter-pill .i {
  width: 1rem;
  height: 1rem;
  color: var(--mute);
}
.filter-pill-count {
  color: var(--mute);
  font-weight: 500;
}
.filter-pill:hover {
  border-color: var(--accent-color-hover);
}
.filter-pill.is-active {
  background: var(--green-50);
  border-color: var(--accent-color-hover);
  color: var(--accent-text);
}
.filter-pill.is-active .i {
  color: var(--accent-text);
}
.filter-pill.is-active .filter-pill-count {
  color: var(--accent-text);
}
/* ---- Cena - histogram + dvojitý posuvník (vzor hladamchatu.sk price_slider.phtml,
   prefarbené do bydo). Dva prekryté range inputy - pointer-events len na "thumb",
   vizuálny pruh medzi nimi dokresľuje JS (left/right % v manuáli nižšie). ---- */
.price-slider__values {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.75rem;
  /* suma sa dá prepísať priamo (vzor chaty price_slider.phtml) - vyzerá ako text, pri hover
       jemné podfarbenie, pri úprave pole s fialovým okrajom ako ostatné polia */
}
.price-slider__values div {
  display: flex;
  flex-direction: column;
}
.price-slider__values div:last-child {
  align-items: flex-end;
}
.price-slider__values label {
  font-size: 0.75rem;
  color: var(--mute);
}
.price-slider__values b {
  font-family: var(--first-font);
  font-size: 1.125rem;
  color: var(--first-color);
}
.price-slider__values .price-edit {
  width: 9rem;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  background: transparent;
  padding: 0.125rem 0.5rem;
  margin: 0 -0.5rem;
  font-family: var(--first-font);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--first-color);
  cursor: text;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.price-slider__values .price-edit.is-right {
  text-align: right;
}
.price-slider__values .price-edit:hover {
  background: var(--cream);
}
.price-slider__values .price-edit:focus {
  outline: none;
  background: var(--white-color);
  border-color: var(--focus-color);
  box-shadow: 0 0 0 0.1875rem rgba(93, 17, 123, 0.14) !important;
}
.price-slider__histogram {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  height: 2.75rem;
  margin-bottom: 0.25rem;
}
.price-slider__histogram div {
  flex: 1 1 0;
  min-width: 2px;
  border-radius: 2px 2px 0 0;
  background: var(--line);
  transition: background-color 0.15s ease;
}
.price-slider__histogram div.is-active {
  background: var(--green-300, #C4E093);
}
.price-slider__track {
  height: 4px;
  position: relative;
  background: var(--line);
  border-radius: 5px;
  margin: 0 1rem;
}
.price-slider__progress {
  height: 100%;
  position: absolute;
  border-radius: 5px;
  background: var(--first-color);
}
.price-slider__inputs {
  position: relative;
  margin: 0 1rem;
}
.price-slider__inputs input[type="range"] {
  position: absolute;
  width: 100%;
  height: 4px;
  left: 0;
  top: -4px;
  margin: 0;
  background: none;
  pointer-events: none;
  -webkit-appearance: none;
  appearance: none;
}
.price-slider__inputs input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 1.5rem;
  width: 1.5rem;
  border-radius: 50%;
  background: var(--white-color);
  border: 2px solid var(--first-color);
  box-shadow: var(--shadow-card-1);
  pointer-events: auto;
  cursor: grab;
}
.price-slider__inputs input[type="range"]::-moz-range-thumb {
  height: 1.5rem;
  width: 1.5rem;
  border-radius: 50%;
  background: var(--white-color);
  border: 2px solid var(--first-color);
  box-shadow: var(--shadow-card-1);
  pointer-events: auto;
  cursor: grab;
}
/* ---- mobil: lišta filtra výpisu ako karta aplikácie - biela, tieň, prilepená pod hlavičkou; keď sa hlavička
   schová, vyjde hore (--bydo-head-h zo _section_header_typ_1.less). Obal .filter-wrap bez boxu, aby sa lišta
   lepila cez celý výpis (Jozef 7. 11.). ---- */
@media (max-width: 61.9375rem) {
  .listing_search_typ_1 .filter-wrap {
    display: contents;
  }
  .listing_search_typ_1 .filter-bar {
    position: sticky;
    top: calc(var(--bydo-head-h, 4.5rem) + 0.5rem);
    z-index: 1010;
    gap: 0.5rem;
    padding: 0.5rem;
    border-radius: var(--radius-lg);
    background: var(--white-color);
    box-shadow: var(--shadow-card-2);
    transition: top 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
  .listing_search_typ_1 .filter-bar .filter-bar__search {
    height: 2.75rem;
    border: 0;
    background: var(--cream);
    border-radius: var(--radius-sm);
  }
  .listing_search_typ_1 .filter-bar .filter-bar__search span {
    color: var(--mute);
  }
  .listing_search_typ_1 .filter-bar .filter-bar__toggle {
    width: 2.75rem;
    height: 2.75rem;
    border: 0;
    border-radius: var(--radius-sm);
    background: var(--first-color);
    color: var(--white-color);
  }
}
/* ---- mobil: okno filtra na celú výšku ako appka (Alza, chaty), vysunie sa zdola; stránka pod ním stojí
   (html.filter-open z bydoFilter, Jozef 7. 11.) ---- */
html.filter-open {
  overflow: hidden;
}
.filter-modal__body {
  overscroll-behavior: contain;
}
@keyframes bydoSheetIn {
  from {
    transform: translateY(100%);
  }
  to {
    transform: none;
  }
}
@media (max-width: 61.9375rem) {
  .filter-modal-backdrop {
    padding: 0;
    align-items: stretch;
  }
  .filter-modal {
    max-width: none;
    max-height: none;
    height: 100vh;
    height: 100dvh;
    border-radius: 0;
    box-shadow: none;
    animation: bydoSheetIn 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
  .filter-modal__header {
    padding-top: calc(1rem + env(safe-area-inset-top));
  }
  .filter-modal__footer {
    padding-bottom: calc(1.125rem + env(safe-area-inset-bottom));
  }
}
@media (max-width: 61.9375rem) and (prefers-reduced-motion: reduce) {
  .filter-modal {
    animation: none;
  }
}
/* mobil: mriežka „5 v rade" je tu rovnaká ako „4 v rade" (jeden stĺpec) - len karty a zoznam (Jozef 7. 11.) */
@media (max-width: 61.9375rem) {
  .listing_search_typ_1 .view-switch .view-switch__5 {
    display: none;
  }
  .listing_search_typ_1 .view-switch a.is-active-mobil {
    background: var(--first-color);
    color: var(--white-color);
  }
}
/* text v lište: nastavený filter = hodnota (tmavšia, hrubšia), nič nezadané = striedajúca sa nápoveda (Jozef 7. 11.) */
.filter-bar__search .filter-bar__value {
  color: var(--ink) !important;
  font-weight: 600;
}
.filter-bar__search .filter-bar__hint {
  position: relative;
  flex: 1;
  min-width: 0;
  height: 1.4em;
  overflow: hidden;
}
.filter-bar__search .filter-bar__hint > span {
  position: absolute;
  inset: 0;
  color: var(--mute);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  animation: bydoHintIn 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);
}
@keyframes bydoHintIn {
  from {
    opacity: 0;
    transform: translateY(0.6em);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .filter-bar__search .filter-bar__hint > span {
    animation: none;
  }
}
/* filter otvorený z mapy na mobile: nad mapou (1100) aj spodnou lištou (1110) */
body .filter-modal-backdrop {
  z-index: 1200;
}
/* mobil: písanie lokality vo filtri - prepínač druhu ponuky sa dočasne zbalí (bydoLocation.hore, Jozef 7. 11.) */
@media (max-width: 61.9375rem) {
  .filter-modal__offer-switch {
    max-height: 4rem;
    transition: max-height 0.3s ease, margin 0.3s ease, padding 0.3s ease, opacity 0.2s ease;
    overflow: hidden;
  }
  .filter-modal.is-hladam .filter-modal__offer-switch {
    max-height: 0;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    opacity: 0;
  }
  /* miesto pod poľom, aby sa Lokalita dala vytiahnuť hore aj pri krátkom filtri */
  .filter-modal.is-hladam .filter-modal__body {
    padding-bottom: 60vh;
  }
}
/* ---------------------------------------------------------------------------
   listing_search_typ_1 - výpis ponúk (/nehnutelnosti, stránky kategórií a lokalít).
   Karta aj stránkovač ostávajú z 1b (`_listings.less` .prop-card / .listing-pager) - tu je
   len obal: hlavička s H1 podľa filtra, čipy aktívneho filtra, lišta (počet, uložiť hľadanie,
   zoradiť, zobrazenie 5 / 4 / Na šírku, mapa), mriežka, mapa vedľa výpisu (sticky), vložený
   pás „Nové ponuky do e-mailu", súvisiace hľadania, prázdny výsledok a načítanie.
   Doplnky z monetizácie: TOP (štítok, idú prvé) a Zvýraznenie (podfarbená karta).
   --------------------------------------------------------------------------- */
.listing_search_typ_1 {
  padding: 1.5rem 0 3rem;
  /* ---- hlavička: H1 z filtra + krátky úvod (SEO), na mobile zbalený na 2 riadky ---- */
  /* ---- čipy aktívneho filtra (rovnaký čip ako v naseptávači lokality) ---- */
  /* ---- lišta nad výsledkami ---- */
  /* ---- výsledky + mapa ---- */
  /* ---- mriežka: 5 / 4 v rade alebo Na šírku ----
     Stĺpce podľa šírky VÝSLEDKOV (container query), nie okna - s mapou alebo bočným panelom
     je výpis užší a 5 stĺpcov by sa nezmestilo. 5 = od 68 rem, 4 = od 54 rem, potom 3/2/1. */
  /* ---- karta vo výpise (obal okolo 1b .prop-card) ---- */
  /* ---- Na šírku = kompaktná karta ako `item_sirka` na chatách (Jozef 7. 11.) ----
     Fotka vľavo (38 %, pomer 4:3) URČUJE výšku karty - žiadne height, všetky karty v rade vyjdú rovnako vysoké.
     Vpravo len názov (1 riadok), lokalita · plocha (1 riadok) a cenový pásik dole. Úryvok, „kto ponúka"
     a Detail tu nie sú - patria do mriežky/detailu. 2 karty v rade od 44 rem výsledkov, 3 od 72 rem
     (s mapou je výpis užší, takže sám spadne na 1-2). Na telefóne ostáva vodorovná. */
  /* ---- vložený pás „Nové ponuky do e-mailu" (Strážny pes) - cez celú šírku mriežky ---- */
  /* ---- súvisiace hľadania (vnútorné odkazy pre SEO) ---- */
  /* ---- plávajúce tlačidlo Mapa (len mobil) ---- */
  /* ---- okno Uložiť hľadanie (obal = modal filtra, tu len obsah) ---- */
  /* ---- prázdny výsledok ---- */
  /* ---- načítanie (kostra karty) ---- */
}
.listing_search_typ_1 .breadcrumb {
  margin-bottom: 1rem;
}
.listing_search_typ_1 .ls-head {
  margin-bottom: 1.25rem;
}
.listing_search_typ_1 .ls-head__title {
  font-family: var(--first-font);
  font-size: var(--h2);
  line-height: var(--h2-lh);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.5rem;
}
.listing_search_typ_1 .ls-head__intro {
  max-width: 48rem;
  color: var(--warm);
  font-size: 0.9375rem;
  line-height: 1.6;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.listing_search_typ_1 .ls-head__intro.is-open {
  -webkit-line-clamp: unset;
  display: block;
}
.listing_search_typ_1 .ls-head__more {
  margin-top: 0.25rem;
  font-size: 0.875rem;
  padding: 0;
  background: none;
  border: 0;
}
.listing_search_typ_1 .ls-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.875rem;
  min-height: 2rem;
}
.listing_search_typ_1 .ls-chips__clear {
  font-size: 0.875rem;
  padding: 0 0.25rem;
  background: none;
  border: 0;
  color: var(--mute);
}
.listing_search_typ_1 .ls-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin: 1.25rem 0 1.25rem;
  /* vlastný select „Zoradiť" bez nadpisu nad poľom - v lište je jasné, čo to je */
}
.listing_search_typ_1 .ls-toolbar__left,
.listing_search_typ_1 .ls-toolbar__right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.listing_search_typ_1 .ls-toolbar__count {
  font-size: 0.9375rem;
  color: var(--warm);
}
.listing_search_typ_1 .ls-toolbar__count b {
  color: var(--ink);
}
.listing_search_typ_1 .ls-toolbar .field > label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.listing_search_typ_1 .ls-toolbar .field {
  min-width: 13.5rem;
}
.listing_search_typ_1 .ls-toolbar__watch,
.listing_search_typ_1 .ls-toolbar__map {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  height: var(--control-h-s);
  padding: 0 1rem;
  border-radius: var(--radius-badge);
  border: 1px solid var(--line-color);
  background: var(--white-color);
  color: var(--first-color);
  font-weight: 700;
  font-size: 0.875rem;
  cursor: pointer;
}
.listing_search_typ_1 .ls-toolbar__watch .i,
.listing_search_typ_1 .ls-toolbar__map .i {
  width: 1.125rem;
  height: 1.125rem;
}
.listing_search_typ_1 .ls-toolbar__watch:hover,
.listing_search_typ_1 .ls-toolbar__map:hover {
  border-color: var(--accent-color-hover);
}
.listing_search_typ_1 .ls-toolbar__watch.is-on,
.listing_search_typ_1 .ls-toolbar__map.is-on,
.listing_search_typ_1 .ls-toolbar__watch.is-active,
.listing_search_typ_1 .ls-toolbar__map.is-active {
  background: var(--green-50);
  border-color: var(--accent-color);
  color: var(--accent-text);
}
.listing_search_typ_1 .ls-toolbar__map {
  height: var(--control-h-m);
}
.listing_search_typ_1 .ls-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.5rem;
  align-items: start;
}
.listing_search_typ_1 .ls-map {
  display: none;
}
.listing_search_typ_1.has-map .ls-layout {
  grid-template-columns: minmax(0, 1fr) minmax(22rem, 40%);
}
.listing_search_typ_1.has-map .ls-map {
  display: block;
}
.listing_search_typ_1 .ls-map__inner {
  position: sticky;
  top: 1rem;
  height: calc(100vh - 2rem);
  max-height: 48rem;
  border-radius: var(--radius-md);
  overflow: hidden;
  border: 1px solid var(--line-color);
  background: var(--cream-2);
}
.listing_search_typ_1 .ls-map__canvas {
  position: absolute;
  inset: 0;
}
.listing_search_typ_1 .ls-map__area {
  position: absolute;
  top: 0.75rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 500;
  background: var(--white-color);
  padding: 0.5rem 0.875rem;
  border-radius: var(--radius-badge);
  box-shadow: var(--shadow-card-1);
  font-size: 0.8125rem;
  white-space: nowrap;
}
.listing_search_typ_1 .ls-map__close {
  display: none;
}
.listing_search_typ_1 .ls-results {
  container-type: inline-size;
  min-width: 0;
}
.listing_search_typ_1 .ls-grid {
  display: grid;
  gap: 1.25rem;
  padding: 0;
  grid-template-columns: minmax(0, 1fr);
}
.listing_search_typ_1 .ls-grid.is-view-rows {
  grid-template-columns: minmax(0, 1fr);
}
@container (min-width: 30rem) {
  .listing_search_typ_1 .ls-grid.is-view-5,
  .listing_search_typ_1 .ls-grid.is-view-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@container (min-width: 42rem) {
  .listing_search_typ_1 .ls-grid.is-view-5,
  .listing_search_typ_1 .ls-grid.is-view-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@container (min-width: 54rem) {
  .listing_search_typ_1 .ls-grid.is-view-5,
  .listing_search_typ_1 .ls-grid.is-view-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@container (min-width: 68rem) {
  .listing_search_typ_1 .ls-grid.is-view-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.listing_search_typ_1 .ls-card {
  position: relative;
  min-width: 0;
  /* lokalita · plocha a cenový pásik sú len pre Na šírku (zapína ich .is-view-rows nižšie) */
  /* srdiečko (Obľúbené) - štýl je globálny nižšie, karta je aj na profile realitky a v detaile */
  /* Zvýraznenie (platený doplnok) - jemne podfarbená karta, nie krikľavý rám */
  /* prejdenie myšou nad bodom na mape zvýrazní kartu */
}
.listing_search_typ_1 .ls-card .prop-card {
  height: 100%;
}
.listing_search_typ_1 .ls-card .prop-card__badge.is-top {
  background: var(--first-color);
  color: var(--white-color);
}
.listing_search_typ_1 .ls-card__excerpt,
.listing_search_typ_1 .ls-card__by,
.listing_search_typ_1 .ls-card__meta,
.listing_search_typ_1 .ls-card__price {
  display: none;
}
.listing_search_typ_1 .ls-card.is-highlight .prop-card {
  background: var(--green-50);
  border-color: var(--accent-color);
}
.listing_search_typ_1 .ls-card.is-hover .prop-card {
  border-color: var(--first-color);
  box-shadow: var(--shadow-card-2);
}
@container (min-width: 44rem) {
  .listing_search_typ_1 .ls-grid.is-view-rows {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@container (min-width: 72rem) {
  .listing_search_typ_1 .ls-grid.is-view-rows {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.listing_search_typ_1 .ls-grid.is-view-rows {
  /* srdiečko v pravom hornom rohu FOTKY (ako na chatách), nie karty */
}
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card {
  flex-direction: row;
  height: auto;
}
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card__media {
  flex: 0 0 38%;
  aspect-ratio: 4 / 3;
}
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card__badge {
  top: 0.5rem;
  left: 0.5rem;
  padding: 0.375rem 0.625rem;
  font-size: 0.6875rem;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__media-info {
  right: 0.5rem;
  bottom: 0.5rem;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__media-info > span:not(:last-child) {
  display: none;
}
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card__body {
  flex: 1;
  min-width: 0;
  gap: 0.25rem;
  padding: 0.8rem 0.9rem;
}
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card__location,
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card__specs,
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card__footer {
  display: none;
}
.listing_search_typ_1 .ls-grid.is-view-rows .prop-card__title {
  flex-shrink: 0;
  margin: 0;
  display: block;
  text-decoration: none;
  font-size: 1rem;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__meta {
  display: block;
  flex-shrink: 0;
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.35;
  color: var(--mute);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__price {
  display: block;
  margin: auto 0 0;
  padding: 0.625rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__price-lbl {
  display: block;
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1;
  color: var(--mute);
  margin-bottom: 0.2rem;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__price-val {
  display: block;
  font-family: var(--first-font);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--first-color);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__price-val small {
  font-size: 0.75rem;
  font-weight: 600;
  margin-left: 0.125rem;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__save {
  top: 0.5rem;
  right: auto;
  left: calc(38% - 2.5rem);
  width: 2rem;
  height: 2rem;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card__save .i {
  width: 1rem;
  height: 1rem;
}
.listing_search_typ_1 .ls-grid.is-view-rows .ls-card.is-highlight .ls-card__price {
  background: var(--white-color);
}
.listing_search_typ_1 .ls-watch-banner {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
  padding: 1.25rem 1.5rem;
  border-radius: var(--radius-md);
  background: var(--purple-50);
  border: 1px solid var(--purple-line);
}
.listing_search_typ_1 .ls-watch-banner__icon {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--white-color);
  color: var(--first-color);
  display: flex;
  align-items: center;
  justify-content: center;
}
.listing_search_typ_1 .ls-watch-banner__icon .i {
  width: 1.5rem;
  height: 1.5rem;
}
.listing_search_typ_1 .ls-watch-banner__text {
  flex: 1 1 16rem;
  min-width: 0;
}
.listing_search_typ_1 .ls-watch-banner__text strong {
  display: block;
  color: var(--first-color);
  font-size: 1rem;
}
.listing_search_typ_1 .ls-watch-banner__text span {
  font-size: 0.875rem;
  color: var(--warm);
}
.listing_search_typ_1 .ls-watch-banner__form {
  display: flex;
  gap: 0.5rem;
  flex: 1 1 20rem;
  max-width: 26rem;
}
.listing_search_typ_1 .ls-watch-banner__form .field {
  flex: 1;
  min-width: 0;
}
.listing_search_typ_1 .ls-watch-banner__form .btn {
  flex-shrink: 0;
}
.listing_search_typ_1 .listing-pager {
  margin-top: 2rem;
}
.listing_search_typ_1 .ls-related {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--line-color);
}
.listing_search_typ_1 .ls-related__title {
  font-family: var(--first-font);
  font-size: var(--h4);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 1rem;
}
.listing_search_typ_1 .ls-related__group {
  margin-bottom: 1rem;
}
.listing_search_typ_1 .ls-related__label {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  margin-bottom: 0.5rem;
}
.listing_search_typ_1 .ls-related a.filter-pill {
  text-decoration: none;
}
.listing_search_typ_1 .ls-map-fab {
  display: none;
  position: sticky;
  bottom: 1.25rem;
  width: fit-content;
  margin: 1.5rem auto 0;
  z-index: 900;
  align-items: center;
  gap: 0.5rem;
  height: var(--control-h-m);
  padding: 0 1.375rem;
  border: 0;
  border-radius: var(--radius-badge);
  background: var(--first-color);
  color: var(--white-color);
  font-weight: 700;
  box-shadow: var(--shadow-card-2);
}
.listing_search_typ_1 .ls-map-fab .i {
  width: 1.25rem;
  height: 1.25rem;
}
@media (max-width: 61.25rem) {
  .listing_search_typ_1 {
    /* mapa na mobile = celá obrazovka nad výpisom, späť tlačidlom Zoznam */
  }
  .listing_search_typ_1 .ls-toolbar__map {
    display: none;
  }
  .listing_search_typ_1.has-map .ls-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_search_typ_1.has-map .ls-map {
    display: none;
  }
  .listing_search_typ_1 .ls-map-fab {
    display: flex;
  }
  .listing_search_typ_1.map-open-mobile .ls-map {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: var(--white-color);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__inner {
    position: absolute;
    inset: 0;
    height: auto;
    max-height: none;
    border-radius: 0;
    border: 0;
  }
  .listing_search_typ_1.map-open-mobile .ls-map__close {
    display: inline-flex;
    position: absolute;
    left: 50%;
    bottom: 1.25rem;
    transform: translateX(-50%);
    z-index: 600;
    gap: 0.5rem;
    background: var(--white-color);
  }
  .listing_search_typ_1.map-open-mobile .ls-map-fab {
    display: none;
  }
}
@media (max-width: 40rem) {
  .listing_search_typ_1 .ls-toolbar {
    align-items: stretch;
  }
  .listing_search_typ_1 .ls-toolbar__right {
    width: 100%;
  }
  .listing_search_typ_1 .ls-toolbar__right .field {
    flex: 1;
    min-width: 0;
  }
  .listing_search_typ_1 .ls-watch-banner__form {
    max-width: none;
    flex-basis: 100%;
  }
}
.listing_search_typ_1 .ls-save {
  max-width: 32rem;
}
.listing_search_typ_1 .ls-save .filter-modal__body {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.listing_search_typ_1 .ls-save .field {
  margin-top: 0.75rem;
}
.listing_search_typ_1 .ls-save__label {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  margin: 1.25rem 0 0.5rem;
}
.listing_search_typ_1 .ls-save .filter-pill.is-static {
  cursor: default;
}
.listing_search_typ_1 .ls-save__demo {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 1px dashed var(--line-color);
  border-radius: var(--radius-sm);
  font-size: 0.75rem;
  color: var(--mute);
}
.listing_search_typ_1 .ls-save__notify {
  margin-top: 1.25rem;
  align-items: flex-start;
}
.listing_search_typ_1 .ls-save__notify .fb-check-txt {
  font-size: 0.875rem;
  color: var(--warm);
}
.listing_search_typ_1 .ls-save__notify .fb-check-txt b {
  color: var(--ink);
}
.listing_search_typ_1 .ls-save__freq {
  margin: 0.75rem 0 0 2rem;
}
.listing_search_typ_1 .ls-save .la-hint {
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_search_typ_1 .ls-save__where {
  display: flex;
  gap: 0.75rem;
  margin-top: 1.25rem;
  padding: 0.875rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--purple-50);
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--warm);
}
.listing_search_typ_1 .ls-save__where b {
  color: var(--first-color);
}
.listing_search_typ_1 .ls-save__where .btn-link {
  display: inline;
  padding: 0;
}
.listing_search_typ_1 .ls-save__where.is-account {
  background: var(--green-50);
}
.listing_search_typ_1 .ls-save__where.is-account b {
  color: var(--accent-text);
}
.listing_search_typ_1 .ls-save__where-ic {
  flex-shrink: 0;
  color: var(--first-color);
}
.listing_search_typ_1 .ls-save__where-ic .i {
  width: 1.25rem;
  height: 1.25rem;
}
.listing_search_typ_1 .ls-save__where.is-account .ls-save__where-ic {
  color: var(--accent-text);
}
.listing_search_typ_1 .ls-toast {
  position: fixed;
  left: 50%;
  bottom: 1.5rem;
  transform: translateX(-50%);
  z-index: 1100;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.75rem 1.125rem;
  border-radius: var(--radius-sm);
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: var(--shadow-card-2);
  white-space: nowrap;
}
.listing_search_typ_1 .ls-toast .i {
  width: 1.125rem;
  height: 1.125rem;
  color: var(--accent-color);
}
.listing_search_typ_1 .ls-toast a {
  color: var(--accent-color);
  font-weight: 700;
  margin-left: 0.5rem;
}
.listing_search_typ_1 .ls-empty {
  max-width: 36rem;
  margin: 0 auto;
  text-align: center;
  padding: 2rem 0 1rem;
}
.listing_search_typ_1 .ls-empty__icon {
  display: inline-flex;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
}
.listing_search_typ_1 .ls-empty__icon .i {
  width: 1.75rem;
  height: 1.75rem;
}
.listing_search_typ_1 .ls-empty__title {
  font-family: var(--first-font);
  font-size: var(--h4);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.5rem;
}
.listing_search_typ_1 .ls-empty__text {
  color: var(--warm);
  margin: 0 0 1rem;
}
.listing_search_typ_1 .ls-empty__fixes {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
  margin-bottom: 1.75rem;
}
.listing_search_typ_1 .ls-empty__watch {
  text-align: left;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.25rem;
}
.listing_search_typ_1 .ls-empty__watch p {
  font-size: 0.9375rem;
  color: var(--warm);
  margin: 0 0 0.875rem;
}
.listing_search_typ_1 .ls-empty__watch p strong {
  color: var(--first-color);
}
.listing_search_typ_1 .ls-empty__watch .ls-watch-banner__form {
  max-width: none;
}
.listing_search_typ_1 .ls-skeleton {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
  gap: 1.25rem;
}
.listing_search_typ_1 .ls-skeleton__card {
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--white-color);
  padding-bottom: 1rem;
}
.listing_search_typ_1 .ls-skeleton__img {
  aspect-ratio: 3 / 2;
  margin-bottom: 1rem;
}
.listing_search_typ_1 .ls-skeleton__line {
  height: 0.75rem;
  margin: 0.625rem 1.25rem 0;
  border-radius: 0.375rem;
}
.listing_search_typ_1 .ls-skeleton__line.is-s {
  width: 35%;
}
.listing_search_typ_1 .ls-skeleton__line.is-m {
  width: 55%;
}
.listing_search_typ_1 .ls-skeleton__img,
.listing_search_typ_1 .ls-skeleton__line {
  background: linear-gradient(90deg, var(--cream) 25%, var(--cream-2) 50%, var(--cream) 75%);
  background-size: 200% 100%;
  animation: ls-shimmer 1.4s ease-in-out infinite;
}
@keyframes ls-shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .listing_search_typ_1 .ls-skeleton__img,
  .listing_search_typ_1 .ls-skeleton__line {
    animation: none;
  }
}
/* počet fotiek + video / 3D v rohu fotky - aj v náhľade karty pri pridaní inzerátu */
.ls-card__media-info {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  display: flex;
  gap: 0.375rem;
}
.ls-card__media-info > span {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  height: 1.625rem;
  padding: 0 0.5rem;
  border-radius: var(--radius-badge);
  background: rgba(29, 16, 41, 0.62);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
}
.ls-card__media-info .i {
  width: 0.875rem;
  height: 0.875rem;
}
/* ---- mapa výpisu - vzor chaty (_uni_map.less), prefarbené tokenmi bydo. Mimo widgetu: Leaflet
   vkladá body a popup do vlastných vrstiev. ---- */
.ls-pin-anchor {
  background: none;
  border: 0;
}
.ls-pin {
  position: absolute;
  transform: translate(-50%, -100%);
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  margin-top: -0.375rem;
  /* miesto pre špičku */
  padding: 0.34rem 0.6rem;
  border-radius: var(--radius-badge);
  background: var(--white-color);
  color: var(--first-color);
  font-family: var(--second-font);
  font-size: 0.8125rem;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 6px rgba(29, 16, 41, 0.22);
  cursor: pointer;
  transition: transform 0.12s ease, box-shadow 0.12s ease, background 0.12s ease;
  /* špička dole na súradnici */
  /* kliknutý bod (otvorený popup) aj bod karty pod myšou - zelený */
}
.ls-pin::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -0.3rem;
  width: 0.55rem;
  height: 0.55rem;
  transform: translateX(-50%) rotate(45deg);
  background: inherit;
  border-right: 1px solid rgba(0, 0, 0, 0.06);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
.ls-pin b {
  font-size: 0.625rem;
  letter-spacing: 0.04em;
  padding: 0.125rem 0.3rem;
  border-radius: 0.25rem;
  background: var(--accent-color);
  color: var(--btn-first-color);
}
.ls-pin:hover {
  transform: translate(-50%, -100%) scale(1.06);
  box-shadow: 0 4px 12px rgba(29, 16, 41, 0.3);
}
.ls-pin.is-top {
  background: var(--first-color);
  color: var(--white-color);
  border-color: var(--first-color);
}
.ls-pin.is-active {
  background: var(--accent-color);
  color: var(--btn-first-color);
  border-color: var(--accent-color);
}
/* cena dohodou - text „Dohodou", tlmenejší ako cena */
.ls-pin.is-bez-ceny {
  font-weight: 700;
}
.ls-pin.is-bez-ceny:not(.is-active) {
  color: var(--warm);
}
/* bublina obce - ponuky s nepresnou polohou v strede svojej obce (čiarkovaný okraj = poloha približná) */
.ls-pin.is-obec {
  border: 1px dashed var(--first-color);
}
.ls-pin.is-obec svg {
  width: 0.9rem;
  height: 0.9rem;
  fill: currentColor;
}
.ls-pin-anchor.is-hover {
  z-index: 1000 !important;
}
.ls-pin-anchor.is-hover .ls-pin {
  background: var(--accent-color);
  color: var(--btn-first-color);
  border-color: var(--accent-color);
  transform: translate(-50%, -100%) scale(1.1);
}
.ls-cluster span {
  display: flex;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: var(--first-color);
  color: var(--white-color);
  font-weight: 800;
  font-size: 0.875rem;
  box-shadow: 0 0 0 0.375rem rgba(93, 17, 123, 0.22);
}
.ls-cluster.is-hover span {
  background: var(--accent-color);
  color: var(--btn-first-color);
  box-shadow: 0 0 0 0.375rem rgba(143, 194, 63, 0.35);
}
/* popup = mini-karta ponuky (chaty map-popup-card), obal Leafletu bez paddingu - fotka od hrany po hranu */
.ls-map .leaflet-popup-content-wrapper {
  padding: 0;
  border-radius: var(--radius-md);
  overflow: hidden;
  background: var(--white-color);
  box-shadow: 0 10px 30px rgba(29, 16, 41, 0.28);
}
.ls-map .leaflet-popup-content {
  margin: 0;
  width: 15.5rem !important;
}
.ls-map .leaflet-popup-tip {
  background: var(--white-color);
}
.ls-map .leaflet-container a.leaflet-popup-close-button {
  top: 0.5rem;
  right: 0.5rem;
  width: 1.75rem;
  height: 1.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
  color: var(--first-color);
  font-size: 0;
  z-index: 2;
  transition: background-color 0.15s ease, color 0.15s ease;
  /* znak „×" z Leafletu sedí podľa písma vždy trochu mimo stredu - namiesto neho ikona x (maska, farba = color) */
}
.ls-map .leaflet-container a.leaflet-popup-close-button:hover,
.ls-map .leaflet-container a.leaflet-popup-close-button:focus-visible {
  background: #FDECEC;
  color: var(--color-error);
}
.ls-map .leaflet-container a.leaflet-popup-close-button span {
  display: none;
}
.ls-map .leaflet-container a.leaflet-popup-close-button::before {
  content: "";
  width: 0.875rem;
  height: 0.875rem;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M64 64l128 128M192 64L64 192' stroke='%23000' stroke-width='24' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M64 64l128 128M192 64L64 192' stroke='%23000' stroke-width='24' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.ls-popup {
  font-family: var(--second-font);
  /* bublina obce: hlavička a zoznam ponúk (_map_popup_obec_typ_1.php) */
}
.ls-popup__link {
  display: block;
  text-decoration: none;
  color: var(--ink);
}
.ls-popup__link:hover .ls-popup__title {
  text-decoration: underline;
}
.ls-popup__img {
  position: relative;
  display: block;
  height: 8rem;
  overflow: hidden;
  background: var(--cream-2);
}
.ls-popup__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ls-popup__badge {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  padding: 0.3rem 0.6rem;
  border-radius: var(--radius-badge);
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.6875rem;
  font-weight: 700;
}
.ls-popup__count {
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  height: 1.5rem;
  padding: 0 0.45rem;
  border-radius: var(--radius-badge);
  background: rgba(29, 16, 41, 0.62);
  color: #fff;
  font-size: 0.6875rem;
  font-weight: 700;
}
.ls-popup__count svg {
  width: 0.8rem;
  height: 0.8rem;
  fill: currentColor;
}
.ls-popup__body {
  display: block;
  padding: 0.625rem 0.75rem 0.25rem;
}
.ls-popup__loc {
  display: block;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--mute);
}
.ls-popup__title {
  display: block;
  margin: 0.2rem 0 0.15rem;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ink);
}
.ls-popup__specs {
  display: block;
  font-size: 0.75rem;
  color: var(--warm);
}
.ls-popup__price {
  display: block;
  margin-top: 0.45rem;
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--first-color);
}
.ls-popup__price small {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--warm);
}
.ls-popup__cta {
  display: block;
  margin: 0.5rem 0.75rem 0.75rem;
  padding: 0.55rem;
  border-radius: var(--radius-sm);
  background: var(--btn-first-bg);
  color: var(--btn-first-color) !important;
  font-size: 0.8125rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}
.ls-popup__cta:hover {
  background: var(--btn-first-bg-hover);
}
.ls-popup__head {
  display: block;
  padding: 0.75rem 0.75rem 0.5rem;
  border-bottom: 1px solid var(--line, rgba(0, 0, 0, 0.08));
}
.ls-popup__note {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.75rem;
  color: var(--warm);
}
.ls-popup__list {
  list-style: none;
  margin: 0;
  padding: 0.25rem 0;
  max-height: 15rem;
  overflow-y: auto;
}
.ls-popup__row {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.4rem 0.75rem;
  text-align: left;
  text-decoration: none;
  color: var(--ink);
}
.ls-popup__row img {
  flex: 0 0 3.5rem;
  width: 3.5rem;
  height: 2.75rem;
  object-fit: cover;
  border-radius: var(--radius-sm);
  background: var(--cream-2);
}
.ls-popup__row .ls-popup__title {
  margin: 0;
  font-size: 0.8125rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ls-popup__row .ls-popup__price {
  margin-top: 0.15rem;
  font-size: 0.875rem;
}
.ls-popup__row:hover .ls-popup__title {
  text-decoration: underline;
}
/* hláška gesture handling („podržte ⌘") vo fonte webu */
.leaflet-gesture-handling-touch-warning::after,
.leaflet-gesture-handling-scroll-warning::after {
  font-family: var(--second-font);
  font-size: 1.125rem;
}
/* ---- mobil, návrh A (Jozef 7. 11., docs/bydo/navrhy-uvodka/vypis-hlavicka-mobil.html): prvá ponuka nad polovicou
   obrazovky - omrvinky dole nad pätou (order, pre Google ostávajú), menší nadpis s počtom pod ním, čipy v jednom
   posuvnom riadku, zoradenie ako pole a dve zobrazenia. Tlačidlo Mapa nad spodnou lištou. ---- */
.listing_search_typ_1 .ls-head__count {
  display: none;
}
@media (max-width: 61.9375rem) {
  .listing_search_typ_1 {
    padding-top: 1.25rem;
    /* _bydo_sekcie.less dáva 2rem neskôr */
    /* zoradenie = pôvodné pole s rámikom (Jozef 7. 11.) */
  }
  .listing_search_typ_1 > .container {
    display: flex;
    flex-direction: column;
  }
  .listing_search_typ_1 .ls-crumbs {
    order: 10;
    margin-top: 2rem;
  }
  .listing_search_typ_1 .breadcrumb {
    margin-bottom: 0;
    font-size: 0.875rem;
  }
  .listing_search_typ_1 > .container > .ls-head {
    margin-bottom: 0.875rem;
  }
  .listing_search_typ_1 .ls-head__title {
    font-size: 1.5rem;
    line-height: 1.2;
    margin: 0;
  }
  .listing_search_typ_1 .ls-head__count {
    display: block;
    margin: 0.25rem 0 0;
    font-size: 0.875rem;
    color: var(--mute);
  }
  .listing_search_typ_1 .ls-head__count b {
    color: var(--ink);
  }
  .listing_search_typ_1 .ls-head__intro {
    margin-top: 0.5rem;
  }
  .listing_search_typ_1 .ls-chips {
    position: relative;
    /* .sr-only v pruhu by inak utiekol (pasca 7. 11.) */
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    margin: 0.75rem calc(var(--page-x, 1.25rem) * -1) 0;
    padding: 0 var(--page-x, 1.25rem);
  }
  .listing_search_typ_1 .ls-chips::-webkit-scrollbar {
    display: none;
  }
  .listing_search_typ_1 .ls-chips > * {
    flex: none;
    white-space: nowrap;
  }
  .listing_search_typ_1 .ls-toolbar {
    margin: 0.875rem 0 1rem;
    align-items: center;
  }
  .listing_search_typ_1 .ls-toolbar__left {
    display: none;
  }
  .listing_search_typ_1 .ls-toolbar__right {
    width: 100%;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .listing_search_typ_1 .ls-toolbar__right .field {
    flex: 1;
    min-width: 0;
  }
  .listing_search_typ_1 .ls-toolbar__right {
    gap: 0.75rem;
  }
  .listing_search_typ_1 .ls-map-fab {
    bottom: calc(4rem + env(safe-area-inset-bottom) + 1rem);
  }
}
/* mobil: Mapa je v strede spodnej lišty (section_header_typ_1) - plávajúce tlačidlo a tlačidlo Zoznam v mape netreba;
   otvorená mapa končí nad lištou, lišta ostáva (stred = Zoznam), ako chaty (Jozef 7. 11.) */
@media (max-width: 61.25rem) {
  .listing_search_typ_1 .ls-map-fab {
    display: none !important;
  }
  .listing_search_typ_1.map-open-mobile .ls-map {
    bottom: calc(4rem + env(safe-area-inset-bottom));
  }
  .listing_search_typ_1.map-open-mobile .ls-map__close {
    display: none !important;
  }
  .bydo-tabbar__icon > span {
    display: flex;
  }
}
/* ---- mobil, otvorená mapa: hore karta hľadania (nadpis, počet, filter, zrušenie filtra), pod ňou „Hľadať pri posune",
   vpravo dole pod palcom Moja poloha; +/- preč (mapa sa zväčšuje prstami, ťahá jedným prstom). Jozef 7. 11. ---- */
.listing_search_typ_1 .ls-map__bar,
.listing_search_typ_1 .ls-map__locate {
  display: none;
}
@media (max-width: 61.25rem) {
  .listing_search_typ_1.map-open-mobile .ls-map__bar {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    position: absolute;
    top: calc(0.75rem + env(safe-area-inset-top));
    left: 0.75rem;
    right: 0.75rem;
    z-index: 600;
    padding: 0.375rem;
    border-radius: var(--radius-lg);
    background: var(--white-color);
    box-shadow: var(--shadow-card-2);
    animation: bydoMapBarIn 0.45s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__card {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.375rem 0.625rem;
    border: 0;
    border-radius: var(--radius-sm);
    background: var(--cream);
    text-align: left;
    color: var(--ink);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__card > .i {
    width: 1.25rem;
    height: 1.25rem;
    color: var(--mute);
    flex: none;
  }
  .listing_search_typ_1.map-open-mobile .ls-map__card-txt {
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.25;
  }
  .listing_search_typ_1.map-open-mobile .ls-map__card-txt b,
  .listing_search_typ_1.map-open-mobile .ls-map__card-txt small {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .listing_search_typ_1.map-open-mobile .ls-map__card-txt b {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--first-color);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__card-txt small {
    font-size: 0.75rem;
    color: var(--mute);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__reset,
  .listing_search_typ_1.map-open-mobile .ls-map__filter {
    position: relative;
    flex: none;
    width: 2.75rem;
    height: 2.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: var(--radius-sm);
    text-decoration: none;
  }
  .listing_search_typ_1.map-open-mobile .ls-map__reset .i,
  .listing_search_typ_1.map-open-mobile .ls-map__filter .i {
    width: 1.25rem;
    height: 1.25rem;
  }
  .listing_search_typ_1.map-open-mobile .ls-map__reset {
    background: none;
    color: var(--mute);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__reset:hover,
  .listing_search_typ_1.map-open-mobile .ls-map__reset:active {
    color: var(--danger, #c0392b);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__filter {
    background: var(--first-color);
    color: var(--white-color);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__area {
    top: calc(5.25rem + env(safe-area-inset-top));
  }
  .listing_search_typ_1.map-open-mobile .ls-map__locate {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 1rem;
    bottom: 2rem;
    z-index: 600;
    width: 3rem;
    height: 3rem;
    border: 0;
    border-radius: 50%;
    background: var(--white-color);
    color: var(--first-color);
    box-shadow: var(--shadow-card-2);
  }
  .listing_search_typ_1.map-open-mobile .ls-map__locate .i {
    width: 1.375rem;
    height: 1.375rem;
  }
  .listing_search_typ_1.map-open-mobile .ls-map__locate.is-loading .i {
    animation: bydoPulz 1s ease-in-out infinite;
  }
  .listing_search_typ_1.map-open-mobile .leaflet-control-zoom {
    display: none;
  }
}
@keyframes bydoMapBarIn {
  from {
    opacity: 0;
    transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes bydoPulz {
  50% {
    opacity: 0.35;
  }
}
/* Obľúbené na karte (listing_card_typ_1.php, main.js bydoOblubene) - globálne, karta je vo výpise, na profile realitky,
   v podobných ponukách aj na stránke /oblubene. Tlačidlo je mimo odkazu karty (klik neotvorí detail). */
.ls-card__save {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 2;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  border: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.92);
  color: var(--first-color);
  box-shadow: 0 2px 8px rgba(28, 28, 26, 0.12);
  transition: transform 0.2s ease, color 0.2s ease;
}
.ls-card__save .i {
  width: 1.125rem;
  height: 1.125rem;
}
.ls-card__save:hover {
  transform: scale(1.08);
}
.ls-card__save.is-saved {
  color: var(--color-error);
}
.ls-card__save.is-saved .i svg {
  fill: currentColor;
}
.ls-card__save.is-pop {
  animation: bydoSrdce 0.45s cubic-bezier(0.3, 1.6, 0.5, 1);
}
@keyframes bydoSrdce {
  0% {
    transform: scale(1);
  }
  40% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .ls-card__save.is-pop {
    animation: none;
  }
}
/* ---------------------------------------------------------------------------
   listing_add_typ_1 - pridanie inzerátu na webe (súkromná osoba). Voľne dostupné bez
   prihlásenia: krok 0 kto inzeruje, 6 krokov sprievodcu so živým náhľadom karty vpravo,
   potom účet (registrácia / prihlásenie), overenie e-mailu kódom a hotovo.
   Prvky sú z manuálu (`.field`, `.input-wrap`, `.fb-input`, `.filter-pill`, `.fb-check`,
   segment `.filter-modal__offer-switch`), tu len rozloženie a to, čo inde nie je.
   --------------------------------------------------------------------------- */
.listing_add_typ_1,
.account_auth_typ_1,
.account_agency_typ_1,
.account_person_typ_1 {
  padding: 2rem 0 3rem;
  /* „nepovinné" pri nadpise poľa - malé, bez verzálok (povinné nie sú označené hviezdičkou) */
  /* značka „filter" = podľa tohto poľa sa dá hľadať */
  /* chyba pod poľom - jedna veta, čo spraviť */
  /* zvislý rytmus formulára: pole / riadok polí / zaškrtávacie políčko 1.25 rem, nadpis skupiny pilulkami 1.5 rem */
  /* ---- hlavička sprievodcu + kroky ---- */
  /* ---- stepper pod obsahom - vzor chaty (_accommodation_edit_v2.less .edit-stepper) ---- */
  /* ---- krok Lokalita: adresa + mapa s vrstvami (vzor chaty Kam na výlet) ---- */
  /* riadok návrhu: názov + druh hore, obec a okres pod tým celé (zalomené, nie orezané) */
  /* obec bez ulíc - prepínač s vysvetlením pod textom */
  /* úprava, krok 6: stav inzerátu */
  /* doplnky pri výbave: názov, plocha m², počet 1-5 v jednom riadku */
  /* ---- formulár + náhľad ---- */
  /* karta sa natiahne na výšku pravého stĺpca a lišta sedí dole (Jozef 8. 11.) - len keď je pravý stĺpec vyšší */
  /* typ ponuky - zarovnaný vľavo s ostatnými poliami, 6 možností sa na úzkom zalomí */
  /* polia v rade zarovnané na spodok - dlhší nadpis (značka filter + nepovinné) ich nerozhádže */
  /* pole s jednotkou (m², €) - rovnaký vzor ako .range-input vo filtri (tam je vnorený v modale) */
  /* ---- fotky ---- */
  /* lišta nad fotkami: počet + veľkosť náhľadov (view-switch ako vo výpise) */
  /* ---- nahrávač fotiek - vzor chaty (image_uploader.less), prefarbené tokenmi bydo ---- */
  /* plávajúca kópia pod prstom (Sortable fallback je mimo .la-up, priamo v body) - len fotka s tieňom */
  /* ---- videá (viac odkazov, náhľad z YouTube) ---- */
  /* ---- cena a popis ---- */
  /* ---- AI pomocník k popisu ---- */
  /* povinné skupiny pilulok + siete v dvoch stĺpcoch */
  /* siete pod sebou - prehľadnejšie (Jozef 12. 11.) */
  /* ---- platnosť inzerátu (60 zadarmo / 120 / 180 za poplatok) ---- */
  /* ---- doplnky ---- */
  /* ---- spodná lišta - vzor chaty (.edit-savebar): lepkavá, bez vlastného pozadia, pilulka kroku „sklenená" ---- */
  /* pás cez celú šírku karty, nepriehľadný - obsah pod ním pri scrolle nepresvitá (Jozef 6. 11.: „bije sa") */
  /* ---- náhľad a úplnosť ---- */
  /* ---- účet, overenie, hotovo ---- */
  /* ---- mobil ---- */
}
.listing_add_typ_1 .h1,
.account_auth_typ_1 .h1,
.account_agency_typ_1 .h1,
.account_person_typ_1 .h1 {
  font-family: var(--first-font);
  font-weight: 800;
  color: var(--first-color);
}
.listing_add_typ_1 .la-label,
.account_auth_typ_1 .la-label,
.account_agency_typ_1 .la-label,
.account_person_typ_1 .la-label {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  margin: 1.25rem 0 0.5rem;
}
.listing_add_typ_1 .la-opt,
.account_auth_typ_1 .la-opt,
.account_agency_typ_1 .la-opt,
.account_person_typ_1 .la-opt {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--mute);
  opacity: 0.85;
}
.listing_add_typ_1 .la-ftag,
.account_auth_typ_1 .la-ftag,
.account_agency_typ_1 .la-ftag,
.account_person_typ_1 .la-ftag {
  display: inline-block;
  vertical-align: 0.1em;
  margin-left: 0.25rem;
  padding: 0.0625rem 0.4375rem;
  border-radius: var(--radius-badge);
  background: var(--green-50);
  color: var(--accent-text);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.listing_add_typ_1 .la-hint,
.account_auth_typ_1 .la-hint,
.account_agency_typ_1 .la-hint,
.account_person_typ_1 .la-hint {
  font-size: 0.8125rem;
  color: var(--mute);
  margin: 0.375rem 0 0;
}
.listing_add_typ_1 .la-hint--row,
.account_auth_typ_1 .la-hint--row,
.account_agency_typ_1 .la-hint--row,
.account_person_typ_1 .la-hint--row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}
.listing_add_typ_1 .la-hint--icon,
.account_auth_typ_1 .la-hint--icon,
.account_agency_typ_1 .la-hint--icon,
.account_person_typ_1 .la-hint--icon {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
  margin-top: 1.25rem;
}
.listing_add_typ_1 .la-hint--icon .i,
.account_auth_typ_1 .la-hint--icon .i,
.account_agency_typ_1 .la-hint--icon .i,
.account_person_typ_1 .la-hint--icon .i {
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.listing_add_typ_1 .la-hint .btn-link,
.account_auth_typ_1 .la-hint .btn-link,
.account_agency_typ_1 .la-hint .btn-link,
.account_person_typ_1 .la-hint .btn-link {
  font-size: 0.8125rem;
  padding: 0;
  background: none;
  border: 0;
}
.listing_add_typ_1 .la-count,
.account_auth_typ_1 .la-count,
.account_agency_typ_1 .la-count,
.account_person_typ_1 .la-count {
  margin-left: auto;
  font-variant-numeric: tabular-nums;
}
.listing_add_typ_1 .la-count.is-ok,
.account_auth_typ_1 .la-count.is-ok,
.account_agency_typ_1 .la-count.is-ok,
.account_person_typ_1 .la-count.is-ok {
  color: var(--accent-text);
  font-weight: 700;
}
.listing_add_typ_1 .la-err,
.account_auth_typ_1 .la-err,
.account_agency_typ_1 .la-err,
.account_person_typ_1 .la-err {
  display: flex;
  align-items: flex-start;
  gap: 0.375rem;
  margin-top: 0.375rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-error);
}
.listing_add_typ_1 .la-err .i,
.account_auth_typ_1 .la-err .i,
.account_agency_typ_1 .la-err .i,
.account_person_typ_1 .la-err .i {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-top: 0.0625rem;
}
.listing_add_typ_1 .is-error .input-wrap,
.account_auth_typ_1 .is-error .input-wrap,
.account_agency_typ_1 .is-error .input-wrap,
.account_person_typ_1 .is-error .input-wrap,
.listing_add_typ_1 .is-error > .fb-input,
.account_auth_typ_1 .is-error > .fb-input,
.account_agency_typ_1 .is-error > .fb-input,
.account_person_typ_1 .is-error > .fb-input,
.listing_add_typ_1 .is-error .range-input .fb-input,
.account_auth_typ_1 .is-error .range-input .fb-input,
.account_agency_typ_1 .is-error .range-input .fb-input,
.account_person_typ_1 .is-error .range-input .fb-input,
.listing_add_typ_1 .is-error.la-num .fb-input,
.account_auth_typ_1 .is-error.la-num .fb-input,
.account_agency_typ_1 .is-error.la-num .fb-input,
.account_person_typ_1 .is-error.la-num .fb-input {
  border-color: var(--color-error);
}
.listing_add_typ_1 .fb-check.is-error .fb-check-box,
.account_auth_typ_1 .fb-check.is-error .fb-check-box,
.account_agency_typ_1 .fb-check.is-error .fb-check-box,
.account_person_typ_1 .fb-check.is-error .fb-check-box {
  border-color: var(--color-error);
}
.listing_add_typ_1 .field,
.account_auth_typ_1 .field,
.account_agency_typ_1 .field,
.account_person_typ_1 .field {
  margin-top: 1.25rem;
}
.listing_add_typ_1 .la-card .fb-check,
.account_auth_typ_1 .la-card .fb-check,
.account_agency_typ_1 .la-card .fb-check,
.account_person_typ_1 .la-card .fb-check {
  margin-top: 1.25rem;
}
.listing_add_typ_1 .la-card .la-label,
.account_auth_typ_1 .la-card .la-label,
.account_agency_typ_1 .la-card .la-label,
.account_person_typ_1 .la-card .la-label {
  margin: 1.5rem 0 0.5rem;
}
.listing_add_typ_1 .la-card .la-label + .la-hint,
.account_auth_typ_1 .la-card .la-label + .la-hint,
.account_agency_typ_1 .la-card .la-label + .la-hint,
.account_person_typ_1 .la-card .la-label + .la-hint {
  margin: -0.25rem 0 0;
}
.listing_add_typ_1 .la-card .la-hint + .filter-pills,
.account_auth_typ_1 .la-card .la-hint + .filter-pills,
.account_agency_typ_1 .la-card .la-hint + .filter-pills,
.account_person_typ_1 .la-card .la-hint + .filter-pills {
  margin-top: 0.5rem;
}
.listing_add_typ_1 .field .input-wrap input[type=password],
.account_auth_typ_1 .field .input-wrap input[type=password],
.account_agency_typ_1 .field .input-wrap input[type=password],
.account_person_typ_1 .field .input-wrap input[type=password] {
  letter-spacing: 0.12em;
}
.listing_add_typ_1 .la-top,
.account_auth_typ_1 .la-top,
.account_agency_typ_1 .la-top,
.account_person_typ_1 .la-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin-bottom: 1.25rem;
}
.listing_add_typ_1 .la-top__title,
.account_auth_typ_1 .la-top__title,
.account_agency_typ_1 .la-top__title,
.account_person_typ_1 .la-top__title {
  font-size: var(--h3);
  margin: 0;
}
.listing_add_typ_1 .la-top__lede,
.account_auth_typ_1 .la-top__lede,
.account_agency_typ_1 .la-top__lede,
.account_person_typ_1 .la-top__lede {
  margin: 0.25rem 0 0;
  font-size: 0.9375rem;
  color: var(--warm);
}
.listing_add_typ_1 .la-top__lede .btn-link,
.account_auth_typ_1 .la-top__lede .btn-link,
.account_agency_typ_1 .la-top__lede .btn-link,
.account_person_typ_1 .la-top__lede .btn-link {
  display: inline-flex;
  padding: 0;
  gap: 0.25rem;
}
.listing_add_typ_1 .la-top__lede .btn-link .i,
.account_auth_typ_1 .la-top__lede .btn-link .i,
.account_agency_typ_1 .la-top__lede .btn-link .i,
.account_person_typ_1 .la-top__lede .btn-link .i {
  width: 1rem;
  height: 1rem;
}
.listing_add_typ_1 .la-top__saved,
.account_auth_typ_1 .la-top__saved,
.account_agency_typ_1 .la-top__saved,
.account_person_typ_1 .la-top__saved {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_add_typ_1 .la-top__saved .i,
.account_auth_typ_1 .la-top__saved .i,
.account_agency_typ_1 .la-top__saved .i,
.account_person_typ_1 .la-top__saved .i {
  width: 1rem;
  height: 1rem;
  color: var(--accent-text);
}
.listing_add_typ_1 .la-stepper,
.account_auth_typ_1 .la-stepper,
.account_agency_typ_1 .la-stepper,
.account_person_typ_1 .la-stepper {
  display: flex;
  align-items: flex-start;
  margin-top: 1.75rem;
  padding: 0.9rem 0.6rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  overflow-x: auto;
}
.listing_add_typ_1 .la-step,
.account_auth_typ_1 .la-step,
.account_agency_typ_1 .la-step,
.account_person_typ_1 .la-step {
  flex: 1;
  min-width: 4.5rem;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
  padding: 0 0.25rem;
  border: 0;
  background: none;
  cursor: default;
  /* spojovacia čiara k ďalšiemu kroku */
}
.listing_add_typ_1 .la-step:not(:last-child)::after,
.account_auth_typ_1 .la-step:not(:last-child)::after,
.account_agency_typ_1 .la-step:not(:last-child)::after,
.account_person_typ_1 .la-step:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 1.05rem;
  left: calc(50% + 1.35rem);
  right: calc(-50% + 1.35rem);
  height: 2px;
  border-radius: 2px;
  background: var(--line-color);
}
.listing_add_typ_1 .la-step__dot,
.account_auth_typ_1 .la-step__dot,
.account_agency_typ_1 .la-step__dot,
.account_person_typ_1 .la-step__dot {
  position: relative;
  z-index: 1;
  width: 2.125rem;
  height: 2.125rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8125rem;
  font-weight: 700;
  background: var(--cream);
  border: 1.5px solid var(--line-color);
  color: var(--mute);
  transition: border-color 0.15s ease, color 0.15s ease;
}
.listing_add_typ_1 .la-step__dot .i,
.account_auth_typ_1 .la-step__dot .i,
.account_agency_typ_1 .la-step__dot .i,
.account_person_typ_1 .la-step__dot .i {
  width: 0.9rem;
  height: 0.9rem;
}
.listing_add_typ_1 .la-step__label,
.account_auth_typ_1 .la-step__label,
.account_agency_typ_1 .la-step__label,
.account_person_typ_1 .la-step__label {
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  color: var(--mute);
}
.listing_add_typ_1 .la-step.is-done,
.account_auth_typ_1 .la-step.is-done,
.account_agency_typ_1 .la-step.is-done,
.account_person_typ_1 .la-step.is-done {
  cursor: pointer;
}
.listing_add_typ_1 .la-step.is-done::after,
.account_auth_typ_1 .la-step.is-done::after,
.account_agency_typ_1 .la-step.is-done::after,
.account_person_typ_1 .la-step.is-done::after {
  background: var(--accent-color);
}
.listing_add_typ_1 .la-step.is-done .la-step__dot,
.account_auth_typ_1 .la-step.is-done .la-step__dot,
.account_agency_typ_1 .la-step.is-done .la-step__dot,
.account_person_typ_1 .la-step.is-done .la-step__dot {
  background: var(--green-50);
  border-color: var(--accent-color);
  color: var(--accent-text);
}
.listing_add_typ_1 .la-step.is-done .la-step__label,
.account_auth_typ_1 .la-step.is-done .la-step__label,
.account_agency_typ_1 .la-step.is-done .la-step__label,
.account_person_typ_1 .la-step.is-done .la-step__label {
  color: var(--warm);
}
.listing_add_typ_1 .la-step.is-done:hover .la-step__label,
.account_auth_typ_1 .la-step.is-done:hover .la-step__label,
.account_agency_typ_1 .la-step.is-done:hover .la-step__label,
.account_person_typ_1 .la-step.is-done:hover .la-step__label {
  text-decoration: underline;
}
.listing_add_typ_1 .la-step.is-active .la-step__dot,
.account_auth_typ_1 .la-step.is-active .la-step__dot,
.account_agency_typ_1 .la-step.is-active .la-step__dot,
.account_person_typ_1 .la-step.is-active .la-step__dot {
  background: var(--first-color);
  border-color: var(--first-color);
  color: var(--white-color);
  box-shadow: 0 2px 8px rgba(93, 17, 123, 0.35);
}
.listing_add_typ_1 .la-step.is-active .la-step__label,
.account_auth_typ_1 .la-step.is-active .la-step__label,
.account_agency_typ_1 .la-step.is-active .la-step__label,
.account_person_typ_1 .la-step.is-active .la-step__label {
  color: var(--first-color);
  font-weight: 700;
}
.listing_add_typ_1 .la-step.is-locked,
.account_auth_typ_1 .la-step.is-locked,
.account_agency_typ_1 .la-step.is-locked,
.account_person_typ_1 .la-step.is-locked {
  opacity: 0.6;
}
@media (max-width: 40rem) {
  .listing_add_typ_1 .la-step,
  .account_auth_typ_1 .la-step,
  .account_agency_typ_1 .la-step,
  .account_person_typ_1 .la-step {
    min-width: 3rem;
  }
  .listing_add_typ_1 .la-step__label,
  .account_auth_typ_1 .la-step__label,
  .account_agency_typ_1 .la-step__label,
  .account_person_typ_1 .la-step__label {
    display: none;
  }
  .listing_add_typ_1 .la-step.is-active .la-step__label,
  .account_auth_typ_1 .la-step.is-active .la-step__label,
  .account_agency_typ_1 .la-step.is-active .la-step__label,
  .account_person_typ_1 .la-step.is-active .la-step__label {
    display: block;
    white-space: nowrap;
  }
  .listing_add_typ_1 .la-step:not(:last-child)::after,
  .account_auth_typ_1 .la-step:not(:last-child)::after,
  .account_agency_typ_1 .la-step:not(:last-child)::after,
  .account_person_typ_1 .la-step:not(:last-child)::after {
    left: calc(50% + 1.25rem);
    right: calc(-50% + 1.25rem);
  }
}
.listing_add_typ_1 .la-addr,
.account_auth_typ_1 .la-addr,
.account_agency_typ_1 .la-addr,
.account_person_typ_1 .la-addr {
  position: relative;
  margin-top: 1rem;
}
.listing_add_typ_1 .la-addr .input-wrap,
.account_auth_typ_1 .la-addr .input-wrap,
.account_agency_typ_1 .la-addr .input-wrap,
.account_person_typ_1 .la-addr .input-wrap {
  position: relative;
}
.listing_add_typ_1 .la-addr__box,
.account_auth_typ_1 .la-addr__box,
.account_agency_typ_1 .la-addr__box,
.account_person_typ_1 .la-addr__box {
  position: relative;
}
.listing_add_typ_1 .la-addr .la-hint--icon,
.account_auth_typ_1 .la-addr .la-hint--icon,
.account_agency_typ_1 .la-addr .la-hint--icon,
.account_person_typ_1 .la-addr .la-hint--icon {
  margin-top: 0.5rem;
}
.listing_add_typ_1 .la-addr__x,
.account_auth_typ_1 .la-addr__x,
.account_agency_typ_1 .la-addr__x,
.account_person_typ_1 .la-addr__x {
  flex-shrink: 0;
  margin-right: -0.375rem;
  display: inline-flex;
  padding: 0.25rem;
  border: 0;
  background: none;
  color: var(--mute);
  cursor: pointer;
}
.listing_add_typ_1 .la-addr__x .i,
.account_auth_typ_1 .la-addr__x .i,
.account_agency_typ_1 .la-addr__x .i,
.account_person_typ_1 .la-addr__x .i {
  width: 1rem;
  height: 1rem;
}
.listing_add_typ_1 .la-addr__panel,
.account_auth_typ_1 .la-addr__panel,
.account_agency_typ_1 .la-addr__panel,
.account_person_typ_1 .la-addr__panel {
  max-height: 22rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  z-index: 1100 !important;
}
@media (max-width: 47.99rem) {
  .listing_add_typ_1 .la-addr__panel,
  .account_auth_typ_1 .la-addr__panel,
  .account_agency_typ_1 .la-addr__panel,
  .account_person_typ_1 .la-addr__panel {
    min-width: 0;
    right: 0;
  }
}
.listing_add_typ_1 .la-addr__panel .location-panel__item,
.account_auth_typ_1 .la-addr__panel .location-panel__item,
.account_agency_typ_1 .la-addr__panel .location-panel__item,
.account_person_typ_1 .la-addr__panel .location-panel__item {
  align-items: flex-start;
  gap: 0.5rem 0.625rem;
}
.listing_add_typ_1 .la-addr__panel .location-panel__item .i,
.account_auth_typ_1 .la-addr__panel .location-panel__item .i,
.account_agency_typ_1 .la-addr__panel .location-panel__item .i,
.account_person_typ_1 .la-addr__panel .location-panel__item .i {
  margin-top: 0.125rem;
}
.listing_add_typ_1 .la-addr__panel .location-panel__text,
.account_auth_typ_1 .la-addr__panel .location-panel__text,
.account_agency_typ_1 .la-addr__panel .location-panel__text,
.account_person_typ_1 .la-addr__panel .location-panel__text {
  white-space: normal;
}
.listing_add_typ_1 .la-addr__panel .location-panel__text > span,
.account_auth_typ_1 .la-addr__panel .location-panel__text > span,
.account_agency_typ_1 .la-addr__panel .location-panel__text > span,
.account_person_typ_1 .la-addr__panel .location-panel__text > span {
  display: block;
  font-weight: 600;
}
.listing_add_typ_1 .la-addr__panel .location-panel__text small,
.account_auth_typ_1 .la-addr__panel .location-panel__text small,
.account_agency_typ_1 .la-addr__panel .location-panel__text small,
.account_person_typ_1 .la-addr__panel .location-panel__text small {
  margin-top: 0.125rem;
  line-height: 1.35;
}
.listing_add_typ_1 .la-addr__city,
.account_auth_typ_1 .la-addr__city,
.account_agency_typ_1 .la-addr__city,
.account_person_typ_1 .la-addr__city {
  font-weight: 600;
  color: var(--first-color);
}
.listing_add_typ_1 .la-addr__kind,
.account_auth_typ_1 .la-addr__kind,
.account_agency_typ_1 .la-addr__kind,
.account_person_typ_1 .la-addr__kind {
  flex-shrink: 0;
  margin-left: auto;
  margin-top: 0.0625rem;
  padding: 0.125rem 0.5rem;
  border-radius: var(--radius-badge);
  background: var(--cream);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--mute);
}
.listing_add_typ_1 .la-nostreet,
.account_auth_typ_1 .la-nostreet,
.account_agency_typ_1 .la-nostreet,
.account_person_typ_1 .la-nostreet {
  margin-bottom: 0.75rem;
}
.listing_add_typ_1 .la-nostreet__hint,
.account_auth_typ_1 .la-nostreet__hint,
.account_agency_typ_1 .la-nostreet__hint,
.account_person_typ_1 .la-nostreet__hint {
  display: block;
  margin-top: 0.125rem;
  font-size: 0.8125rem;
  line-height: 1.4;
  color: var(--mute);
}
.listing_add_typ_1 .la-mapwrap,
.account_auth_typ_1 .la-mapwrap,
.account_agency_typ_1 .la-mapwrap,
.account_person_typ_1 .la-mapwrap {
  position: relative;
  margin-top: 1rem;
}
.listing_add_typ_1 .la-mapwrap.is-full,
.account_auth_typ_1 .la-mapwrap.is-full,
.account_agency_typ_1 .la-mapwrap.is-full,
.account_person_typ_1 .la-mapwrap.is-full {
  position: fixed;
  inset: 0;
  z-index: 3000;
  margin: 0;
  background: var(--white-color);
}
.listing_add_typ_1 .la-mapwrap.is-full .la-minimap,
.account_auth_typ_1 .la-mapwrap.is-full .la-minimap,
.account_agency_typ_1 .la-mapwrap.is-full .la-minimap,
.account_person_typ_1 .la-mapwrap.is-full .la-minimap {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.listing_add_typ_1 .la-mapwrap.is-full .la-maplayers,
.account_auth_typ_1 .la-mapwrap.is-full .la-maplayers,
.account_agency_typ_1 .la-mapwrap.is-full .la-maplayers,
.account_person_typ_1 .la-mapwrap.is-full .la-maplayers {
  bottom: max(1rem, env(safe-area-inset-bottom));
}
.listing_add_typ_1 .la-mapwrap.is-full .la-mapfull,
.account_auth_typ_1 .la-mapwrap.is-full .la-mapfull,
.account_agency_typ_1 .la-mapwrap.is-full .la-mapfull,
.account_person_typ_1 .la-mapwrap.is-full .la-mapfull {
  top: max(1rem, env(safe-area-inset-top));
  right: 1rem;
  background: var(--first-color);
  color: var(--white-color);
}
.listing_add_typ_1 .la-mapfull,
.account_auth_typ_1 .la-mapfull,
.account_agency_typ_1 .la-mapfull,
.account_person_typ_1 .la-mapfull {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 500;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  min-width: 2.5rem;
  height: 2.5rem;
  justify-content: center;
  padding: 0 0.625rem;
  border: 0;
  border-radius: var(--radius-badge);
  background: var(--white-color);
  box-shadow: 0 2px 10px rgba(29, 16, 41, 0.18);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--first-color);
  cursor: pointer;
}
.listing_add_typ_1 .la-mapfull .i,
.account_auth_typ_1 .la-mapfull .i,
.account_agency_typ_1 .la-mapfull .i,
.account_person_typ_1 .la-mapfull .i {
  width: 1.25rem;
  height: 1.25rem;
}
.listing_add_typ_1 .la-mapfull span:empty,
.account_auth_typ_1 .la-mapfull span:empty,
.account_agency_typ_1 .la-mapfull span:empty,
.account_person_typ_1 .la-mapfull span:empty {
  display: none;
}
.listing_add_typ_1 .la-maplayers,
.account_auth_typ_1 .la-maplayers,
.account_agency_typ_1 .la-maplayers,
.account_person_typ_1 .la-maplayers {
  position: absolute;
  left: 0.75rem;
  bottom: 0.75rem;
  z-index: 500;
  display: inline-flex;
  padding: 0.1875rem;
  border-radius: var(--radius-badge);
  background: var(--white-color);
  box-shadow: 0 2px 10px rgba(29, 16, 41, 0.18);
}
.listing_add_typ_1 .la-maplayers button,
.account_auth_typ_1 .la-maplayers button,
.account_agency_typ_1 .la-maplayers button,
.account_person_typ_1 .la-maplayers button {
  padding: 0.3125rem 0.75rem;
  border: 0;
  border-radius: var(--radius-badge);
  background: none;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--warm);
  cursor: pointer;
}
.listing_add_typ_1 .la-maplayers button.is-active,
.account_auth_typ_1 .la-maplayers button.is-active,
.account_agency_typ_1 .la-maplayers button.is-active,
.account_person_typ_1 .la-maplayers button.is-active {
  background: var(--first-color);
  color: var(--white-color);
}
.listing_add_typ_1 .la-editinfo__state,
.account_auth_typ_1 .la-editinfo__state,
.account_agency_typ_1 .la-editinfo__state,
.account_person_typ_1 .la-editinfo__state {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  padding: 0.75rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  font-weight: 600;
}
.listing_add_typ_1 .la-editinfo__state .btn-link,
.account_auth_typ_1 .la-editinfo__state .btn-link,
.account_agency_typ_1 .la-editinfo__state .btn-link,
.account_person_typ_1 .la-editinfo__state .btn-link {
  margin-left: auto;
  padding: 0;
}
.listing_add_typ_1 .la-editinfo .la-period,
.account_auth_typ_1 .la-editinfo .la-period,
.account_agency_typ_1 .la-editinfo .la-period,
.account_person_typ_1 .la-editinfo .la-period {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.listing_add_typ_1 .la-utils__none,
.account_auth_typ_1 .la-utils__none,
.account_agency_typ_1 .la-utils__none,
.account_person_typ_1 .la-utils__none {
  display: inline-block;
  margin: 0.75rem 0 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.listing_add_typ_1 .la-extra,
.account_auth_typ_1 .la-extra,
.account_agency_typ_1 .la-extra,
.account_person_typ_1 .la-extra {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  margin-top: 0.625rem;
  padding: 0.625rem 0.875rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.listing_add_typ_1 .la-extra .range-input,
.account_auth_typ_1 .la-extra .range-input,
.account_agency_typ_1 .la-extra .range-input,
.account_person_typ_1 .la-extra .range-input {
  width: 8.5rem;
}
.listing_add_typ_1 .la-extra .fb-input,
.account_auth_typ_1 .la-extra .fb-input,
.account_agency_typ_1 .la-extra .fb-input,
.account_person_typ_1 .la-extra .fb-input {
  height: 2.5rem;
}
.listing_add_typ_1 .la-extra .la-opt,
.account_auth_typ_1 .la-extra .la-opt,
.account_agency_typ_1 .la-extra .la-opt,
.account_person_typ_1 .la-extra .la-opt {
  margin-left: auto;
  font-size: 0.75rem;
}
.listing_add_typ_1 .la-extra .filter-pill,
.account_auth_typ_1 .la-extra .filter-pill,
.account_agency_typ_1 .la-extra .filter-pill,
.account_person_typ_1 .la-extra .filter-pill {
  min-width: 2.25rem;
  justify-content: center;
}
.listing_add_typ_1 .la-extra__name,
.account_auth_typ_1 .la-extra__name,
.account_agency_typ_1 .la-extra__name,
.account_person_typ_1 .la-extra__name {
  min-width: 8rem;
  font-weight: 700;
  font-size: 0.875rem;
  color: var(--ink);
}
.listing_add_typ_1 .la-extra__f,
.account_auth_typ_1 .la-extra__f,
.account_agency_typ_1 .la-extra__f,
.account_person_typ_1 .la-extra__f {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_add_typ_1 .la-extra__count .filter-pills,
.account_auth_typ_1 .la-extra__count .filter-pills,
.account_agency_typ_1 .la-extra__count .filter-pills,
.account_person_typ_1 .la-extra__count .filter-pills {
  gap: 0.25rem;
}
.listing_add_typ_1 .la-layout,
.account_auth_typ_1 .la-layout,
.account_agency_typ_1 .la-layout,
.account_person_typ_1 .la-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 20rem;
  gap: 2rem;
  align-items: stretch;
}
.listing_add_typ_1 .la-card,
.account_auth_typ_1 .la-card,
.account_agency_typ_1 .la-card,
.account_person_typ_1 .la-card {
  display: flex;
  flex-direction: column;
  padding-bottom: 0 !important;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.75rem 2rem;
}
.listing_add_typ_1 .la-card > [x-show],
.account_auth_typ_1 .la-card > [x-show],
.account_agency_typ_1 .la-card > [x-show],
.account_person_typ_1 .la-card > [x-show] {
  margin-bottom: 2rem;
}
.listing_add_typ_1 .la-h,
.account_auth_typ_1 .la-h,
.account_agency_typ_1 .la-h,
.account_person_typ_1 .la-h {
  font-family: var(--first-font);
  font-size: var(--h4);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.25rem;
}
.listing_add_typ_1 .la-h + .la-hint,
.account_auth_typ_1 .la-h + .la-hint,
.account_agency_typ_1 .la-h + .la-hint,
.account_person_typ_1 .la-h + .la-hint {
  margin-top: 0;
}
.listing_add_typ_1 .la-offer,
.account_auth_typ_1 .la-offer,
.account_agency_typ_1 .la-offer,
.account_person_typ_1 .la-offer {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  margin: 1rem 0 0.25rem;
  /* úzke = mriežka 2 × 3 s rovnakou šírkou, nie nerovné zalamovanie */
}
.listing_add_typ_1 .la-offer button,
.account_auth_typ_1 .la-offer button,
.account_agency_typ_1 .la-offer button,
.account_person_typ_1 .la-offer button {
  flex: 0 0 auto;
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  white-space: nowrap;
}
@media (max-width: 47.99rem) {
  .listing_add_typ_1 .la-offer,
  .account_auth_typ_1 .la-offer,
  .account_agency_typ_1 .la-offer,
  .account_person_typ_1 .la-offer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }
  .listing_add_typ_1 .la-offer button,
  .account_auth_typ_1 .la-offer button,
  .account_agency_typ_1 .la-offer button,
  .account_person_typ_1 .la-offer button {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.listing_add_typ_1 .la-types,
.account_auth_typ_1 .la-types,
.account_agency_typ_1 .la-types,
.account_person_typ_1 .la-types {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}
.listing_add_typ_1 .la-type,
.account_auth_typ_1 .la-type,
.account_agency_typ_1 .la-type,
.account_person_typ_1 .la-type {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.875rem 1rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line-color);
  background: var(--white-color);
  color: var(--ink);
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.listing_add_typ_1 .la-type .i,
.account_auth_typ_1 .la-type .i,
.account_agency_typ_1 .la-type .i,
.account_person_typ_1 .la-type .i {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--accent-text);
  flex-shrink: 0;
}
.listing_add_typ_1 .la-type:hover,
.account_auth_typ_1 .la-type:hover,
.account_agency_typ_1 .la-type:hover,
.account_person_typ_1 .la-type:hover {
  border-color: var(--accent-color-hover);
}
.listing_add_typ_1 .la-type.is-active,
.account_auth_typ_1 .la-type.is-active,
.account_agency_typ_1 .la-type.is-active,
.account_person_typ_1 .la-type.is-active {
  border-color: var(--accent-color);
  background: var(--green-50);
  box-shadow: inset 0 0 0 1px var(--accent-color);
}
.listing_add_typ_1 .la-row,
.account_auth_typ_1 .la-row,
.account_agency_typ_1 .la-row,
.account_person_typ_1 .la-row {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.listing_add_typ_1 .la-row > .field,
.account_auth_typ_1 .la-row > .field,
.account_agency_typ_1 .la-row > .field,
.account_person_typ_1 .la-row > .field {
  min-width: 12rem;
}
.listing_add_typ_1 .la-group,
.account_auth_typ_1 .la-group,
.account_agency_typ_1 .la-group,
.account_person_typ_1 .la-group {
  padding: 1.25rem 0;
  border-top: 1px solid var(--line-color);
}
.listing_add_typ_1 .la-group:first-of-type,
.account_auth_typ_1 .la-group:first-of-type,
.account_agency_typ_1 .la-group:first-of-type,
.account_person_typ_1 .la-group:first-of-type {
  border-top: 0;
  padding-top: 0.25rem;
}
.listing_add_typ_1 .la-group__title,
.account_auth_typ_1 .la-group__title,
.account_agency_typ_1 .la-group__title,
.account_person_typ_1 .la-group__title {
  display: block;
  font-family: var(--first-font);
  font-weight: 700;
  color: var(--first-color);
  font-size: 1.0625rem;
}
.listing_add_typ_1 .la-group .la-label:first-of-type,
.account_auth_typ_1 .la-group .la-label:first-of-type,
.account_agency_typ_1 .la-group .la-label:first-of-type,
.account_person_typ_1 .la-group .la-label:first-of-type {
  margin-top: 0.75rem;
}
.listing_add_typ_1 .la-grid,
.account_auth_typ_1 .la-grid,
.account_agency_typ_1 .la-grid,
.account_person_typ_1 .la-grid {
  align-items: end;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr));
  gap: 0 1rem;
}
.listing_add_typ_1 .la-grid > div:empty,
.account_auth_typ_1 .la-grid > div:empty,
.account_agency_typ_1 .la-grid > div:empty,
.account_person_typ_1 .la-grid > div:empty {
  display: none;
}
.listing_add_typ_1 .range-input,
.account_auth_typ_1 .range-input,
.account_agency_typ_1 .range-input,
.account_person_typ_1 .range-input {
  position: relative;
  display: flex;
  font-weight: 400;
}
.listing_add_typ_1 .range-input .fb-input,
.account_auth_typ_1 .range-input .fb-input,
.account_agency_typ_1 .range-input .fb-input,
.account_person_typ_1 .range-input .fb-input {
  padding-right: 3rem;
}
.listing_add_typ_1 .range-input .unit,
.account_auth_typ_1 .range-input .unit,
.account_agency_typ_1 .range-input .unit,
.account_person_typ_1 .range-input .unit {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--mute);
  font-size: 0.875rem;
  pointer-events: none;
}
.listing_add_typ_1 .la-price .unit,
.account_auth_typ_1 .la-price .unit,
.account_agency_typ_1 .la-price .unit,
.account_person_typ_1 .la-price .unit {
  right: 1.125rem;
}
.listing_add_typ_1 .la-minimap,
.account_auth_typ_1 .la-minimap,
.account_agency_typ_1 .la-minimap,
.account_person_typ_1 .la-minimap {
  height: 26rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line-color);
  margin-top: 0.75rem;
  overflow: hidden;
  background: var(--cream-2);
}
@media (max-width: 47.99rem) {
  .listing_add_typ_1 .la-minimap,
  .account_auth_typ_1 .la-minimap,
  .account_agency_typ_1 .la-minimap,
  .account_person_typ_1 .la-minimap {
    height: 20rem;
  }
}
.listing_add_typ_1 .la-up-bar,
.account_auth_typ_1 .la-up-bar,
.account_agency_typ_1 .la-up-bar,
.account_person_typ_1 .la-up-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.625rem;
}
.listing_add_typ_1 .la-up-bar__count,
.account_auth_typ_1 .la-up-bar__count,
.account_agency_typ_1 .la-up-bar__count,
.account_person_typ_1 .la-up-bar__count {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--warm);
}
@media (max-width: 35.99rem) {
  .listing_add_typ_1 .la-up-bar .view-switch,
  .account_auth_typ_1 .la-up-bar .view-switch,
  .account_agency_typ_1 .la-up-bar .view-switch,
  .account_person_typ_1 .la-up-bar .view-switch {
    display: none;
  }
}
.listing_add_typ_1 .la-up,
.account_auth_typ_1 .la-up,
.account_agency_typ_1 .la-up,
.account_person_typ_1 .la-up {
  border: 2px dashed var(--line-color);
  border-radius: var(--radius-md);
  background: var(--cream);
  padding: 0.875rem;
  transition: border-color 0.2s ease, background 0.2s ease;
  /* celá fotka = otvorí úpravu (pod akciami a úchytom) */
  /* akcie v tmavom pruhu dole - ukážu sa pri prejdení myšou (chaty .thumb-actions) */
  /* úchyt - ťahá sa LEN zaň (myš aj dotyk), zvyšok dlaždice skroluje */
  /* úchyt vidno stále (inak nie je jasné, že sa dá ťahať), akcie pri prejdení myšou; dotyk = všetko stále */
  /* Sortable: miesto, kam fotka padne, a ťahaná dlaždica */
  /* MOBIL - fotky ako riadkový zoznam (chaty): náhľad vľavo, akcie a úchyt vpravo, ťahá sa za úchyt */
}
.listing_add_typ_1 .la-up:not(.has-images),
.account_auth_typ_1 .la-up:not(.has-images),
.account_agency_typ_1 .la-up:not(.has-images),
.account_person_typ_1 .la-up:not(.has-images) {
  cursor: pointer;
}
.listing_add_typ_1 .la-up:hover,
.account_auth_typ_1 .la-up:hover,
.account_agency_typ_1 .la-up:hover,
.account_person_typ_1 .la-up:hover,
.listing_add_typ_1 .la-up.is-dragging,
.account_auth_typ_1 .la-up.is-dragging,
.account_agency_typ_1 .la-up.is-dragging,
.account_person_typ_1 .la-up.is-dragging {
  border-color: var(--accent-color);
  background: var(--green-50);
}
.listing_add_typ_1 .la-up.has-images:hover,
.account_auth_typ_1 .la-up.has-images:hover,
.account_agency_typ_1 .la-up.has-images:hover,
.account_person_typ_1 .la-up.has-images:hover {
  background: var(--cream);
}
.listing_add_typ_1 .la-up__empty,
.account_auth_typ_1 .la-up__empty,
.account_agency_typ_1 .la-up__empty,
.account_person_typ_1 .la-up__empty {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.375rem;
  padding: 2rem 1rem;
  border: 0;
  background: none;
  text-align: center;
  font-size: 0.875rem;
  color: var(--warm);
  cursor: pointer;
}
.listing_add_typ_1 .la-up__empty strong,
.account_auth_typ_1 .la-up__empty strong,
.account_agency_typ_1 .la-up__empty strong,
.account_person_typ_1 .la-up__empty strong {
  color: var(--first-color);
  font-size: 1rem;
}
.listing_add_typ_1 .la-up__empty-ic,
.account_auth_typ_1 .la-up__empty-ic,
.account_agency_typ_1 .la-up__empty-ic,
.account_person_typ_1 .la-up__empty-ic {
  color: var(--accent-text);
}
.listing_add_typ_1 .la-up__empty-ic .i,
.account_auth_typ_1 .la-up__empty-ic .i,
.account_agency_typ_1 .la-up__empty-ic .i,
.account_person_typ_1 .la-up__empty-ic .i {
  width: 2.25rem;
  height: 2.25rem;
}
.listing_add_typ_1 .la-up__grid,
.account_auth_typ_1 .la-up__grid,
.account_agency_typ_1 .la-up__grid,
.account_person_typ_1 .la-up__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.5rem;
}
.listing_add_typ_1 .la-up__grid.is-cols-3,
.account_auth_typ_1 .la-up__grid.is-cols-3,
.account_agency_typ_1 .la-up__grid.is-cols-3,
.account_person_typ_1 .la-up__grid.is-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}
.listing_add_typ_1 .la-up__grid.is-cols-2,
.account_auth_typ_1 .la-up__grid.is-cols-2,
.account_agency_typ_1 .la-up__grid.is-cols-2,
.account_person_typ_1 .la-up__grid.is-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.875rem;
}
.listing_add_typ_1 .la-up__item,
.account_auth_typ_1 .la-up__item,
.account_agency_typ_1 .la-up__item,
.account_person_typ_1 .la-up__item {
  position: relative;
  min-width: 0;
  touch-action: manipulation;
}
.listing_add_typ_1 .la-up__thumb,
.account_auth_typ_1 .la-up__thumb,
.account_agency_typ_1 .la-up__thumb,
.account_person_typ_1 .la-up__thumb {
  position: relative;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream-2);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.listing_add_typ_1 .la-up__img,
.account_auth_typ_1 .la-up__img,
.account_agency_typ_1 .la-up__img,
.account_person_typ_1 .la-up__img {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}
.listing_add_typ_1 .la-up__img img,
.account_auth_typ_1 .la-up__img img,
.account_agency_typ_1 .la-up__img img,
.account_person_typ_1 .la-up__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.2s ease;
}
.listing_add_typ_1 .la-up__thumb.is-plan .la-up__img,
.account_auth_typ_1 .la-up__thumb.is-plan .la-up__img,
.account_agency_typ_1 .la-up__thumb.is-plan .la-up__img,
.account_person_typ_1 .la-up__thumb.is-plan .la-up__img {
  background: var(--white-color);
}
.listing_add_typ_1 .la-up__thumb.is-plan .la-up__img img,
.account_auth_typ_1 .la-up__thumb.is-plan .la-up__img img,
.account_agency_typ_1 .la-up__thumb.is-plan .la-up__img img,
.account_person_typ_1 .la-up__thumb.is-plan .la-up__img img {
  object-fit: contain;
}
.listing_add_typ_1 .la-up__open,
.account_auth_typ_1 .la-up__open,
.account_agency_typ_1 .la-up__open,
.account_person_typ_1 .la-up__open {
  position: absolute;
  inset: 0;
  z-index: 1;
  border: 0;
  background: none;
  cursor: pointer;
  padding: 0;
}
.listing_add_typ_1 .la-up__badge,
.account_auth_typ_1 .la-up__badge,
.account_agency_typ_1 .la-up__badge,
.account_person_typ_1 .la-up__badge {
  position: absolute;
  top: 0.375rem;
  left: 0.375rem;
  z-index: 2;
  padding: 0.1875rem 0.5rem;
  border-radius: var(--radius-badge);
  background: var(--accent-color);
  color: var(--btn-first-color);
  font-size: 0.6875rem;
  font-weight: 800;
}
.listing_add_typ_1 .la-up__badge.is-plan,
.account_auth_typ_1 .la-up__badge.is-plan,
.account_agency_typ_1 .la-up__badge.is-plan,
.account_person_typ_1 .la-up__badge.is-plan {
  background: var(--first-color);
  color: var(--white-color);
}
.listing_add_typ_1 .la-up__confirm,
.account_auth_typ_1 .la-up__confirm,
.account_agency_typ_1 .la-up__confirm,
.account_person_typ_1 .la-up__confirm {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 3;
  padding: 0.375rem;
  background: var(--color-error);
  color: #fff;
  font-size: 0.6875rem;
  font-weight: 700;
  text-align: center;
}
.listing_add_typ_1 .la-up__actions,
.account_auth_typ_1 .la-up__actions,
.account_agency_typ_1 .la-up__actions,
.account_person_typ_1 .la-up__actions {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  gap: 0.25rem;
  padding: 0.3rem;
  background: rgba(29, 16, 41, 0.6);
  opacity: 0;
  transition: opacity 0.2s ease;
}
.listing_add_typ_1 .la-up__btn,
.account_auth_typ_1 .la-up__btn,
.account_agency_typ_1 .la-up__btn,
.account_person_typ_1 .la-up__btn {
  width: 1.875rem;
  height: 1.875rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: var(--radius-sm);
  background: var(--white-color);
  color: var(--first-color);
  cursor: pointer;
}
.listing_add_typ_1 .la-up__btn .i,
.account_auth_typ_1 .la-up__btn .i,
.account_agency_typ_1 .la-up__btn .i,
.account_person_typ_1 .la-up__btn .i {
  width: 0.9rem;
  height: 0.9rem;
}
.listing_add_typ_1 .la-up__btn.is-on,
.account_auth_typ_1 .la-up__btn.is-on,
.account_agency_typ_1 .la-up__btn.is-on,
.account_person_typ_1 .la-up__btn.is-on {
  background: var(--first-color);
  color: var(--white-color);
}
.listing_add_typ_1 .la-up__btn.is-delete,
.account_auth_typ_1 .la-up__btn.is-delete,
.account_agency_typ_1 .la-up__btn.is-delete,
.account_person_typ_1 .la-up__btn.is-delete {
  background: var(--color-error);
  color: #fff;
  order: 9;
}
.listing_add_typ_1 .la-up__btn.is-armed,
.account_auth_typ_1 .la-up__btn.is-armed,
.account_agency_typ_1 .la-up__btn.is-armed,
.account_person_typ_1 .la-up__btn.is-armed {
  box-shadow: 0 0 0 2px #fff;
}
.listing_add_typ_1 .la-up__handle,
.account_auth_typ_1 .la-up__handle,
.account_agency_typ_1 .la-up__handle,
.account_person_typ_1 .la-up__handle {
  position: absolute;
  top: 0.35rem;
  right: 0.35rem;
  z-index: 4;
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  background: rgba(29, 16, 41, 0.55);
  color: #fff;
  cursor: grab;
  opacity: 0;
  transition: opacity 0.2s ease;
  touch-action: none;
  user-select: none;
}
.listing_add_typ_1 .la-up__handle .i,
.account_auth_typ_1 .la-up__handle .i,
.account_agency_typ_1 .la-up__handle .i,
.account_person_typ_1 .la-up__handle .i {
  width: 1.5rem;
  height: 1.5rem;
}
.listing_add_typ_1 .la-up__handle:active,
.account_auth_typ_1 .la-up__handle:active,
.account_agency_typ_1 .la-up__handle:active,
.account_person_typ_1 .la-up__handle:active {
  cursor: grabbing;
}
.listing_add_typ_1 .la-up__handle,
.account_auth_typ_1 .la-up__handle,
.account_agency_typ_1 .la-up__handle,
.account_person_typ_1 .la-up__handle {
  opacity: 0.9;
}
.listing_add_typ_1 .la-up__thumb:hover .la-up__actions,
.account_auth_typ_1 .la-up__thumb:hover .la-up__actions,
.account_agency_typ_1 .la-up__thumb:hover .la-up__actions,
.account_person_typ_1 .la-up__thumb:hover .la-up__actions,
.listing_add_typ_1 .la-up__thumb:focus-within .la-up__actions,
.account_auth_typ_1 .la-up__thumb:focus-within .la-up__actions,
.account_agency_typ_1 .la-up__thumb:focus-within .la-up__actions,
.account_person_typ_1 .la-up__thumb:focus-within .la-up__actions {
  opacity: 1;
}
.listing_add_typ_1 .la-up__thumb:hover .la-up__handle,
.account_auth_typ_1 .la-up__thumb:hover .la-up__handle,
.account_agency_typ_1 .la-up__thumb:hover .la-up__handle,
.account_person_typ_1 .la-up__thumb:hover .la-up__handle {
  opacity: 1;
  background: var(--first-color);
}
@media (hover: none) {
  .listing_add_typ_1 .la-up__actions,
  .account_auth_typ_1 .la-up__actions,
  .account_agency_typ_1 .la-up__actions,
  .account_person_typ_1 .la-up__actions {
    opacity: 1;
  }
}
.listing_add_typ_1 .la-up .is-ghost,
.account_auth_typ_1 .la-up .is-ghost,
.account_agency_typ_1 .la-up .is-ghost,
.account_person_typ_1 .la-up .is-ghost {
  opacity: 0.35;
}
.listing_add_typ_1 .la-up .is-ghost .la-up__thumb,
.account_auth_typ_1 .la-up .is-ghost .la-up__thumb,
.account_agency_typ_1 .la-up .is-ghost .la-up__thumb,
.account_person_typ_1 .la-up .is-ghost .la-up__thumb {
  outline: 2px dashed var(--first-color);
  outline-offset: -2px;
}
.listing_add_typ_1 .la-up .is-chosen .la-up__thumb,
.account_auth_typ_1 .la-up .is-chosen .la-up__thumb,
.account_agency_typ_1 .la-up .is-chosen .la-up__thumb,
.account_person_typ_1 .la-up .is-chosen .la-up__thumb,
.listing_add_typ_1 .la-up .is-drag .la-up__thumb,
.account_auth_typ_1 .la-up .is-drag .la-up__thumb,
.account_agency_typ_1 .la-up .is-drag .la-up__thumb,
.account_person_typ_1 .la-up .is-drag .la-up__thumb {
  box-shadow: 0 12px 28px -8px rgba(29, 16, 41, 0.35);
  transform: scale(1.03);
}
.listing_add_typ_1 .la-up__add,
.account_auth_typ_1 .la-up__add,
.account_agency_typ_1 .la-up__add,
.account_person_typ_1 .la-up__add {
  width: 100%;
  height: 100%;
  min-height: 100%;
  aspect-ratio: 4 / 3;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0.5rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  color: var(--first-color);
  font-size: 0.75rem;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
}
.listing_add_typ_1 .la-up__add .i,
.account_auth_typ_1 .la-up__add .i,
.account_agency_typ_1 .la-up__add .i,
.account_person_typ_1 .la-up__add .i {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--accent-text);
}
.listing_add_typ_1 .la-up__add small,
.account_auth_typ_1 .la-up__add small,
.account_agency_typ_1 .la-up__add small,
.account_person_typ_1 .la-up__add small {
  display: block;
  font-weight: 500;
  color: var(--mute);
}
.listing_add_typ_1 .la-up__add:hover,
.account_auth_typ_1 .la-up__add:hover,
.account_agency_typ_1 .la-up__add:hover,
.account_person_typ_1 .la-up__add:hover {
  border-color: var(--accent-color);
  background: var(--green-50);
}
@media (max-width: 61.25rem) {
  .listing_add_typ_1 .la-up__grid.is-cols-5,
  .account_auth_typ_1 .la-up__grid.is-cols-5,
  .account_agency_typ_1 .la-up__grid.is-cols-5,
  .account_person_typ_1 .la-up__grid.is-cols-5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 35.99rem) {
  .listing_add_typ_1 .la-up,
  .account_auth_typ_1 .la-up,
  .account_agency_typ_1 .la-up,
  .account_person_typ_1 .la-up {
    padding: 0;
    border-style: solid;
    border-width: 1px;
    background: var(--white-color);
    overflow: hidden;
  }
  .listing_add_typ_1 .la-up.has-images:hover,
  .account_auth_typ_1 .la-up.has-images:hover,
  .account_agency_typ_1 .la-up.has-images:hover,
  .account_person_typ_1 .la-up.has-images:hover {
    background: var(--white-color);
  }
  .listing_add_typ_1 .la-up__grid,
  .account_auth_typ_1 .la-up__grid,
  .account_agency_typ_1 .la-up__grid,
  .account_person_typ_1 .la-up__grid {
    display: block;
  }
  .listing_add_typ_1 .la-up__item,
  .account_auth_typ_1 .la-up__item,
  .account_agency_typ_1 .la-up__item,
  .account_person_typ_1 .la-up__item {
    border-bottom: 1px solid var(--line-color);
  }
  .listing_add_typ_1 .la-up__open,
  .account_auth_typ_1 .la-up__open,
  .account_agency_typ_1 .la-up__open,
  .account_person_typ_1 .la-up__open {
    display: none;
  }
  .listing_add_typ_1 .la-up__thumb,
  .account_auth_typ_1 .la-up__thumb,
  .account_agency_typ_1 .la-up__thumb,
  .account_person_typ_1 .la-up__thumb {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.6rem 0.55rem;
    border-radius: 0;
    overflow: visible;
    background: var(--white-color);
  }
  .listing_add_typ_1 .la-up__img,
  .account_auth_typ_1 .la-up__img,
  .account_agency_typ_1 .la-up__img,
  .account_person_typ_1 .la-up__img {
    flex: 0 0 4.75rem;
    width: 4.75rem;
    border-radius: 0.65rem;
    box-shadow: 0 1px 3px rgba(29, 16, 41, 0.14);
  }
  .listing_add_typ_1 .la-up__badge,
  .account_auth_typ_1 .la-up__badge,
  .account_agency_typ_1 .la-up__badge,
  .account_person_typ_1 .la-up__badge {
    top: 0.9rem;
    left: 0.95rem;
    font-size: 0.5625rem;
    padding: 0.125rem 0.375rem;
  }
  .listing_add_typ_1 .la-up__confirm,
  .account_auth_typ_1 .la-up__confirm,
  .account_agency_typ_1 .la-up__confirm,
  .account_person_typ_1 .la-up__confirm {
    left: auto;
    right: 0;
    top: auto;
    bottom: 0;
    border-radius: var(--radius-sm) 0 0 0;
  }
  .listing_add_typ_1 .la-up__actions,
  .account_auth_typ_1 .la-up__actions,
  .account_agency_typ_1 .la-up__actions,
  .account_person_typ_1 .la-up__actions {
    position: static;
    margin-left: auto;
    padding: 0;
    gap: 0.3rem;
    background: none;
    opacity: 1;
  }
  .listing_add_typ_1 .la-up__btn,
  .account_auth_typ_1 .la-up__btn,
  .account_agency_typ_1 .la-up__btn,
  .account_person_typ_1 .la-up__btn {
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 50%;
    background: var(--cream);
  }
  .listing_add_typ_1 .la-up__btn .i,
  .account_auth_typ_1 .la-up__btn .i,
  .account_agency_typ_1 .la-up__btn .i,
  .account_person_typ_1 .la-up__btn .i {
    width: 1.05rem;
    height: 1.05rem;
  }
  .listing_add_typ_1 .la-up__btn:active,
  .account_auth_typ_1 .la-up__btn:active,
  .account_agency_typ_1 .la-up__btn:active,
  .account_person_typ_1 .la-up__btn:active {
    transform: scale(0.9);
  }
  .listing_add_typ_1 .la-up__btn.is-delete,
  .account_auth_typ_1 .la-up__btn.is-delete,
  .account_agency_typ_1 .la-up__btn.is-delete,
  .account_person_typ_1 .la-up__btn.is-delete {
    order: -1;
    margin-right: 0.3rem;
    background: rgba(217, 45, 32, 0.12);
    color: var(--color-error);
  }
  .listing_add_typ_1 .la-up__btn.is-armed,
  .account_auth_typ_1 .la-up__btn.is-armed,
  .account_agency_typ_1 .la-up__btn.is-armed,
  .account_person_typ_1 .la-up__btn.is-armed {
    background: var(--color-error);
    color: #fff;
    box-shadow: none;
  }
  .listing_add_typ_1 .la-up__handle,
  .account_auth_typ_1 .la-up__handle,
  .account_agency_typ_1 .la-up__handle,
  .account_person_typ_1 .la-up__handle {
    position: static;
    flex: 0 0 auto;
    width: 2.1rem;
    height: 4rem;
    margin-left: 0.3rem;
    opacity: 1;
    background: var(--purple-50);
    color: var(--first-color);
  }
  .listing_add_typ_1 .la-up__handle .i,
  .account_auth_typ_1 .la-up__handle .i,
  .account_agency_typ_1 .la-up__handle .i,
  .account_person_typ_1 .la-up__handle .i {
    width: 1.2rem;
    height: 1.2rem;
  }
  .listing_add_typ_1 .la-up .is-chosen .la-up__thumb,
  .account_auth_typ_1 .la-up .is-chosen .la-up__thumb,
  .account_agency_typ_1 .la-up .is-chosen .la-up__thumb,
  .account_person_typ_1 .la-up .is-chosen .la-up__thumb {
    transform: none;
    box-shadow: none;
  }
  .listing_add_typ_1 .la-up .is-ghost,
  .account_auth_typ_1 .la-up .is-ghost,
  .account_agency_typ_1 .la-up .is-ghost,
  .account_person_typ_1 .la-up .is-ghost {
    opacity: 1;
  }
  .listing_add_typ_1 .la-up .is-ghost .la-up__thumb,
  .account_auth_typ_1 .la-up .is-ghost .la-up__thumb,
  .account_agency_typ_1 .la-up .is-ghost .la-up__thumb,
  .account_person_typ_1 .la-up .is-ghost .la-up__thumb {
    background: var(--purple-50);
    outline: 0;
  }
  .listing_add_typ_1 .la-up .is-ghost .la-up__actions,
  .account_auth_typ_1 .la-up .is-ghost .la-up__actions,
  .account_agency_typ_1 .la-up .is-ghost .la-up__actions,
  .account_person_typ_1 .la-up .is-ghost .la-up__actions,
  .listing_add_typ_1 .la-up .is-ghost .la-up__handle,
  .account_auth_typ_1 .la-up .is-ghost .la-up__handle,
  .account_agency_typ_1 .la-up .is-ghost .la-up__handle,
  .account_person_typ_1 .la-up .is-ghost .la-up__handle {
    opacity: 0.2;
  }
  .listing_add_typ_1 .la-up__add-col,
  .account_auth_typ_1 .la-up__add-col,
  .account_agency_typ_1 .la-up__add-col,
  .account_person_typ_1 .la-up__add-col {
    border-bottom: 0;
    padding: 0.7rem;
  }
  .listing_add_typ_1 .la-up__add,
  .account_auth_typ_1 .la-up__add,
  .account_agency_typ_1 .la-up__add,
  .account_person_typ_1 .la-up__add {
    aspect-ratio: auto;
    height: 7rem;
    border: 2px dashed var(--line-color);
    background: var(--cream);
  }
}
.listing_add_typ_1 .sortable-fallback .la-up__actions,
.account_auth_typ_1 .sortable-fallback .la-up__actions,
.account_agency_typ_1 .sortable-fallback .la-up__actions,
.account_person_typ_1 .sortable-fallback .la-up__actions,
.listing_add_typ_1 .sortable-fallback .la-up__handle,
.account_auth_typ_1 .sortable-fallback .la-up__handle,
.account_agency_typ_1 .sortable-fallback .la-up__handle,
.account_person_typ_1 .sortable-fallback .la-up__handle,
.listing_add_typ_1 .sortable-fallback .la-up__badge,
.account_auth_typ_1 .sortable-fallback .la-up__badge,
.account_agency_typ_1 .sortable-fallback .la-up__badge,
.account_person_typ_1 .sortable-fallback .la-up__badge {
  opacity: 0 !important;
}
.listing_add_typ_1 .la-videos,
.account_auth_typ_1 .la-videos,
.account_agency_typ_1 .la-videos,
.account_person_typ_1 .la-videos {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.listing_add_typ_1 .la-video,
.account_auth_typ_1 .la-video,
.account_agency_typ_1 .la-video,
.account_person_typ_1 .la-video {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.listing_add_typ_1 .la-video__thumb,
.account_auth_typ_1 .la-video__thumb,
.account_agency_typ_1 .la-video__thumb,
.account_person_typ_1 .la-video__thumb {
  flex: 0 0 5.5rem;
  height: 3rem;
  margin-top: 0;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--mute);
}
.listing_add_typ_1 .la-video__thumb img,
.account_auth_typ_1 .la-video__thumb img,
.account_agency_typ_1 .la-video__thumb img,
.account_person_typ_1 .la-video__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.listing_add_typ_1 .la-video__thumb .i,
.account_auth_typ_1 .la-video__thumb .i,
.account_agency_typ_1 .la-video__thumb .i,
.account_person_typ_1 .la-video__thumb .i {
  width: 1.25rem;
  height: 1.25rem;
}
.listing_add_typ_1 .la-video__field,
.account_auth_typ_1 .la-video__field,
.account_agency_typ_1 .la-video__field,
.account_person_typ_1 .la-video__field {
  flex: 1;
  min-width: 0;
  margin-top: 0 !important;
}
.listing_add_typ_1 .la-video__del,
.account_auth_typ_1 .la-video__del,
.account_agency_typ_1 .la-video__del,
.account_person_typ_1 .la-video__del {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  color: var(--mute);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.listing_add_typ_1 .la-video__del .i,
.account_auth_typ_1 .la-video__del .i,
.account_agency_typ_1 .la-video__del .i,
.account_person_typ_1 .la-video__del .i {
  width: 1.125rem;
  height: 1.125rem;
}
.listing_add_typ_1 .la-video__del:hover,
.account_auth_typ_1 .la-video__del:hover,
.account_agency_typ_1 .la-video__del:hover,
.account_person_typ_1 .la-video__del:hover {
  color: var(--color-error);
  border-color: var(--color-error);
}
.listing_add_typ_1 .la-video__add,
.account_auth_typ_1 .la-video__add,
.account_agency_typ_1 .la-video__add,
.account_person_typ_1 .la-video__add {
  align-self: flex-start;
}
.listing_add_typ_1 .la-video__add .i,
.account_auth_typ_1 .la-video__add .i,
.account_agency_typ_1 .la-video__add .i,
.account_person_typ_1 .la-video__add .i {
  width: 1rem;
  height: 1rem;
}
@media (max-width: 35.99rem) {
  .listing_add_typ_1 .la-video__thumb,
  .account_auth_typ_1 .la-video__thumb,
  .account_agency_typ_1 .la-video__thumb,
  .account_person_typ_1 .la-video__thumb {
    flex-basis: 4rem;
  }
}
.listing_add_typ_1 .la-tips,
.account_auth_typ_1 .la-tips,
.account_agency_typ_1 .la-tips,
.account_person_typ_1 .la-tips {
  margin: 1rem 0 0;
  padding-left: 1.125rem;
  font-size: 0.8125rem;
  color: var(--warm);
}
.listing_add_typ_1 .la-tips li,
.account_auth_typ_1 .la-tips li,
.account_agency_typ_1 .la-tips li,
.account_person_typ_1 .la-tips li {
  margin-bottom: 0.125rem;
}
.listing_add_typ_1 .la-price .fb-input,
.account_auth_typ_1 .la-price .fb-input,
.account_agency_typ_1 .la-price .fb-input,
.account_person_typ_1 .la-price .fb-input {
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--first-color);
  padding-right: 6rem;
}
.listing_add_typ_1 .la-price .fb-input::placeholder,
.account_auth_typ_1 .la-price .fb-input::placeholder,
.account_agency_typ_1 .la-price .fb-input::placeholder,
.account_person_typ_1 .la-price .fb-input::placeholder {
  font-weight: 400;
  color: var(--mute);
}
.listing_add_typ_1 .la-pricebox,
.account_auth_typ_1 .la-pricebox,
.account_agency_typ_1 .la-pricebox,
.account_person_typ_1 .la-pricebox {
  margin-top: 1rem;
  padding: 0.25rem 1.25rem 1.25rem;
  border-radius: var(--radius-md);
  background: var(--cream);
}
.listing_add_typ_1 .la-pricebox .la-price,
.account_auth_typ_1 .la-pricebox .la-price,
.account_agency_typ_1 .la-pricebox .la-price,
.account_person_typ_1 .la-pricebox .la-price {
  max-width: 22rem;
}
.listing_add_typ_1 .la-pricebox .la-price .fb-input,
.account_auth_typ_1 .la-pricebox .la-price .fb-input,
.account_agency_typ_1 .la-pricebox .la-price .fb-input,
.account_person_typ_1 .la-pricebox .la-price .fb-input {
  height: var(--control-h-l);
  font-size: 1.375rem;
}
.listing_add_typ_1 .la-pricebox .field:last-child,
.account_auth_typ_1 .la-pricebox .field:last-child,
.account_agency_typ_1 .la-pricebox .field:last-child,
.account_person_typ_1 .la-pricebox .field:last-child {
  max-width: 32rem;
}
.listing_add_typ_1 .la-desc,
.account_auth_typ_1 .la-desc,
.account_agency_typ_1 .la-desc,
.account_person_typ_1 .la-desc {
  min-height: 11rem;
  resize: vertical;
  line-height: 1.6;
}
.listing_add_typ_1 .la-ai,
.account_auth_typ_1 .la-ai,
.account_agency_typ_1 .la-ai,
.account_person_typ_1 .la-ai {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.625rem 0.75rem;
  border-radius: var(--radius-sm);
  background: var(--purple-50);
  /* voľba štýlu (neutrálny / štýl realitky) - malý segment v lište AI */
}
.listing_add_typ_1 .la-ai__title,
.account_auth_typ_1 .la-ai__title,
.account_agency_typ_1 .la-ai__title,
.account_person_typ_1 .la-ai__title {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-right: 0.25rem;
  font-size: 0.8125rem;
  font-weight: 800;
  color: var(--first-color);
}
.listing_add_typ_1 .la-ai__title .i,
.account_auth_typ_1 .la-ai__title .i,
.account_agency_typ_1 .la-ai__title .i,
.account_person_typ_1 .la-ai__title .i {
  width: 1.125rem;
  height: 1.125rem;
}
.listing_add_typ_1 .la-ai__btn,
.account_auth_typ_1 .la-ai__btn,
.account_agency_typ_1 .la-ai__btn,
.account_person_typ_1 .la-ai__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  height: 2.25rem;
  padding: 0 0.875rem;
  border-radius: var(--radius-badge);
  border: 1px solid var(--purple-line);
  background: var(--white-color);
  color: var(--first-color);
  font-size: 0.8125rem;
  font-weight: 700;
  cursor: pointer;
}
.listing_add_typ_1 .la-ai__btn small,
.account_auth_typ_1 .la-ai__btn small,
.account_agency_typ_1 .la-ai__btn small,
.account_person_typ_1 .la-ai__btn small {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--mute);
}
.listing_add_typ_1 .la-ai__btn:hover:not(:disabled),
.account_auth_typ_1 .la-ai__btn:hover:not(:disabled),
.account_agency_typ_1 .la-ai__btn:hover:not(:disabled),
.account_person_typ_1 .la-ai__btn:hover:not(:disabled) {
  border-color: var(--first-color);
}
.listing_add_typ_1 .la-ai__btn:disabled,
.account_auth_typ_1 .la-ai__btn:disabled,
.account_agency_typ_1 .la-ai__btn:disabled,
.account_person_typ_1 .la-ai__btn:disabled {
  opacity: 0.45;
  cursor: default;
}
.listing_add_typ_1 .la-ai__btn.is-main,
.account_auth_typ_1 .la-ai__btn.is-main,
.account_agency_typ_1 .la-ai__btn.is-main,
.account_person_typ_1 .la-ai__btn.is-main {
  background: var(--first-color);
  border-color: var(--first-color);
  color: var(--white-color);
}
.listing_add_typ_1 .la-ai__btn.is-main small,
.account_auth_typ_1 .la-ai__btn.is-main small,
.account_agency_typ_1 .la-ai__btn.is-main small,
.account_person_typ_1 .la-ai__btn.is-main small {
  color: rgba(255, 255, 255, 0.75);
}
.listing_add_typ_1 .la-ai__style,
.account_auth_typ_1 .la-ai__style,
.account_agency_typ_1 .la-ai__style,
.account_person_typ_1 .la-ai__style {
  display: inline-flex;
  padding: 0.1875rem;
  margin-right: 0.25rem;
  border-radius: var(--radius-badge);
  background: var(--white-color);
  border: 1px solid var(--purple-line);
}
.listing_add_typ_1 .la-ai__style button,
.account_auth_typ_1 .la-ai__style button,
.account_agency_typ_1 .la-ai__style button,
.account_person_typ_1 .la-ai__style button {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  height: 1.875rem;
  padding: 0 0.75rem;
  border: 0;
  border-radius: var(--radius-badge);
  background: none;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--mute);
  cursor: pointer;
}
.listing_add_typ_1 .la-ai__style button .i,
.account_auth_typ_1 .la-ai__style button .i,
.account_agency_typ_1 .la-ai__style button .i,
.account_person_typ_1 .la-ai__style button .i {
  width: 0.875rem;
  height: 0.875rem;
}
.listing_add_typ_1 .la-ai__style button.is-active,
.account_auth_typ_1 .la-ai__style button.is-active,
.account_agency_typ_1 .la-ai__style button.is-active,
.account_person_typ_1 .la-ai__style button.is-active {
  background: var(--purple-50);
  color: var(--first-color);
}
.listing_add_typ_1 .la-ai__busy,
.account_auth_typ_1 .la-ai__busy,
.account_agency_typ_1 .la-ai__busy,
.account_person_typ_1 .la-ai__busy {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 0.8125rem;
  color: var(--first-color);
  font-weight: 600;
}
.listing_add_typ_1 .la-ai__dots,
.account_auth_typ_1 .la-ai__dots,
.account_agency_typ_1 .la-ai__dots,
.account_person_typ_1 .la-ai__dots {
  display: inline-flex;
  gap: 0.25rem;
}
.listing_add_typ_1 .la-ai__dots i,
.account_auth_typ_1 .la-ai__dots i,
.account_agency_typ_1 .la-ai__dots i,
.account_person_typ_1 .la-ai__dots i {
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: var(--first-color);
  animation: la-ai-dot 1s ease-in-out infinite;
}
.listing_add_typ_1 .la-ai__dots i:nth-child(2),
.account_auth_typ_1 .la-ai__dots i:nth-child(2),
.account_agency_typ_1 .la-ai__dots i:nth-child(2),
.account_person_typ_1 .la-ai__dots i:nth-child(2) {
  animation-delay: 0.15s;
}
.listing_add_typ_1 .la-ai__dots i:nth-child(3),
.account_auth_typ_1 .la-ai__dots i:nth-child(3),
.account_agency_typ_1 .la-ai__dots i:nth-child(3),
.account_person_typ_1 .la-ai__dots i:nth-child(3) {
  animation-delay: 0.3s;
}
.listing_add_typ_1 .la-ai__result,
.account_auth_typ_1 .la-ai__result,
.account_agency_typ_1 .la-ai__result,
.account_person_typ_1 .la-ai__result {
  padding: 1rem 1.125rem;
  border: 1px solid var(--purple-line);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  box-shadow: var(--shadow-card-1);
}
.listing_add_typ_1 .la-ai__result-head,
.account_auth_typ_1 .la-ai__result-head,
.account_agency_typ_1 .la-ai__result-head,
.account_person_typ_1 .la-ai__result-head {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--first-color);
}
.listing_add_typ_1 .la-ai__result-head .i,
.account_auth_typ_1 .la-ai__result-head .i,
.account_agency_typ_1 .la-ai__result-head .i,
.account_person_typ_1 .la-ai__result-head .i {
  width: 1rem;
  height: 1rem;
}
.listing_add_typ_1 .la-ai__result-text,
.account_auth_typ_1 .la-ai__result-text,
.account_agency_typ_1 .la-ai__result-text,
.account_person_typ_1 .la-ai__result-text {
  margin: 0.5rem 0 0.75rem;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--ink);
  white-space: pre-line;
}
.listing_add_typ_1 .la-ai__result-actions,
.account_auth_typ_1 .la-ai__result-actions,
.account_agency_typ_1 .la-ai__result-actions,
.account_person_typ_1 .la-ai__result-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.listing_add_typ_1 .la-ai__result-actions .btn-link,
.account_auth_typ_1 .la-ai__result-actions .btn-link,
.account_agency_typ_1 .la-ai__result-actions .btn-link,
.account_person_typ_1 .la-ai__result-actions .btn-link {
  padding: 0;
  background: none;
  border: 0;
  font-size: 0.875rem;
  color: var(--mute);
}
@keyframes la-ai-dot {
  0%,
  100% {
    opacity: 0.25;
    transform: translateY(0);
  }
  50% {
    opacity: 1;
    transform: translateY(-2px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .listing_add_typ_1 .la-ai__dots i,
  .account_auth_typ_1 .la-ai__dots i,
  .account_agency_typ_1 .la-ai__dots i,
  .account_person_typ_1 .la-ai__dots i {
    animation: none;
  }
}
.listing_add_typ_1 .la-req.is-error .filter-pill,
.account_auth_typ_1 .la-req.is-error .filter-pill,
.account_agency_typ_1 .la-req.is-error .filter-pill,
.account_person_typ_1 .la-req.is-error .filter-pill {
  border-color: var(--color-error);
}
.listing_add_typ_1 .la-utils,
.account_auth_typ_1 .la-utils,
.account_agency_typ_1 .la-utils,
.account_person_typ_1 .la-utils {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
.listing_add_typ_1 .la-utils .la-label,
.account_auth_typ_1 .la-utils .la-label,
.account_agency_typ_1 .la-utils .la-label,
.account_person_typ_1 .la-utils .la-label {
  margin-top: 1rem;
}
.listing_add_typ_1 .la-desc-help,
.account_auth_typ_1 .la-desc-help,
.account_agency_typ_1 .la-desc-help,
.account_person_typ_1 .la-desc-help {
  margin-top: 1rem;
  padding: 1rem 1.25rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.listing_add_typ_1 .la-desc-help .la-label,
.account_auth_typ_1 .la-desc-help .la-label,
.account_agency_typ_1 .la-desc-help .la-label,
.account_person_typ_1 .la-desc-help .la-label {
  margin-top: 0;
}
.listing_add_typ_1 .la-desc-help ul,
.account_auth_typ_1 .la-desc-help ul,
.account_agency_typ_1 .la-desc-help ul,
.account_person_typ_1 .la-desc-help ul {
  margin: 0;
  padding-left: 1.125rem;
  font-size: 0.875rem;
  color: var(--warm);
}
.listing_add_typ_1 .la-period,
.account_auth_typ_1 .la-period,
.account_agency_typ_1 .la-period,
.account_person_typ_1 .la-period {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}
.listing_add_typ_1 .la-period__opt,
.account_auth_typ_1 .la-period__opt,
.account_agency_typ_1 .la-period__opt,
.account_person_typ_1 .la-period__opt {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
  padding: 0.875rem 1rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  text-align: left;
  cursor: pointer;
}
.listing_add_typ_1 .la-period__opt strong,
.account_auth_typ_1 .la-period__opt strong,
.account_agency_typ_1 .la-period__opt strong,
.account_person_typ_1 .la-period__opt strong {
  font-family: var(--first-font);
  font-size: 1.125rem;
  color: var(--first-color);
}
.listing_add_typ_1 .la-period__opt:hover,
.account_auth_typ_1 .la-period__opt:hover,
.account_agency_typ_1 .la-period__opt:hover,
.account_person_typ_1 .la-period__opt:hover {
  border-color: var(--accent-color-hover);
}
.listing_add_typ_1 .la-period__opt.is-active,
.account_auth_typ_1 .la-period__opt.is-active,
.account_agency_typ_1 .la-period__opt.is-active,
.account_person_typ_1 .la-period__opt.is-active {
  border-color: var(--accent-color);
  background: var(--green-50);
  box-shadow: inset 0 0 0 1px var(--accent-color);
}
.listing_add_typ_1 .la-period__mult,
.account_auth_typ_1 .la-period__mult,
.account_agency_typ_1 .la-period__mult,
.account_person_typ_1 .la-period__mult {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.listing_add_typ_1 .la-period__price,
.account_auth_typ_1 .la-period__price,
.account_agency_typ_1 .la-period__price,
.account_person_typ_1 .la-period__price {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--first-color);
}
.listing_add_typ_1 .la-period__price.is-free,
.account_auth_typ_1 .la-period__price.is-free,
.account_agency_typ_1 .la-period__price.is-free,
.account_person_typ_1 .la-period__price.is-free {
  color: var(--accent-text);
}
.listing_add_typ_1 .la-period__note,
.account_auth_typ_1 .la-period__note,
.account_agency_typ_1 .la-period__note,
.account_person_typ_1 .la-period__note {
  font-size: 0.75rem;
  line-height: 1.4;
  color: var(--warm);
}
@media (max-width: 40rem) {
  .listing_add_typ_1 .la-period,
  .account_auth_typ_1 .la-period,
  .account_agency_typ_1 .la-period,
  .account_person_typ_1 .la-period {
    grid-template-columns: minmax(0, 1fr);
  }
}
.listing_add_typ_1 .la-addons,
.account_auth_typ_1 .la-addons,
.account_agency_typ_1 .la-addons,
.account_person_typ_1 .la-addons {
  margin: 1.5rem 0 1.25rem;
}
.listing_add_typ_1 .la-addons__grid,
.account_auth_typ_1 .la-addons__grid,
.account_agency_typ_1 .la-addons__grid,
.account_person_typ_1 .la-addons__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.listing_add_typ_1 .la-addon,
.account_auth_typ_1 .la-addon,
.account_agency_typ_1 .la-addon,
.account_person_typ_1 .la-addon {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.375rem;
  padding: 1rem 1.125rem;
  border: 1px dashed var(--line-color);
  border-radius: var(--radius-sm);
  font-size: 0.8125rem;
  color: var(--warm);
}
.listing_add_typ_1 .la-addon strong,
.account_auth_typ_1 .la-addon strong,
.account_agency_typ_1 .la-addon strong,
.account_person_typ_1 .la-addon strong {
  color: var(--first-color);
  font-size: 0.9375rem;
}
.listing_add_typ_1 .la-addon__ic .i,
.account_auth_typ_1 .la-addon__ic .i,
.account_agency_typ_1 .la-addon__ic .i,
.account_person_typ_1 .la-addon__ic .i {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--accent-text);
}
.listing_add_typ_1 .la-addon.is-active,
.account_auth_typ_1 .la-addon.is-active,
.account_agency_typ_1 .la-addon.is-active,
.account_person_typ_1 .la-addon.is-active {
  border-style: solid;
  border-color: var(--accent-color);
  background: var(--green-50);
}
.listing_add_typ_1 .la-addon .filter-pills,
.account_auth_typ_1 .la-addon .filter-pills,
.account_agency_typ_1 .la-addon .filter-pills,
.account_person_typ_1 .la-addon .filter-pills {
  margin-top: 0.5rem;
}
.listing_add_typ_1 .la-addon__soon,
.account_auth_typ_1 .la-addon__soon,
.account_agency_typ_1 .la-addon__soon,
.account_person_typ_1 .la-addon__soon {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  font-size: 0.6875rem;
  font-weight: 700;
  color: var(--mute);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.listing_add_typ_1 .la-terms,
.account_auth_typ_1 .la-terms,
.account_agency_typ_1 .la-terms,
.account_person_typ_1 .la-terms {
  margin-top: 0.5rem;
  align-items: flex-start;
}
.listing_add_typ_1 .la-savebar,
.account_auth_typ_1 .la-savebar,
.account_agency_typ_1 .la-savebar,
.account_person_typ_1 .la-savebar {
  margin-top: auto !important;
  position: sticky;
  bottom: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 2rem -2rem 0;
  padding: 0.875rem 2rem;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-top: 1px solid var(--line-color);
  border-radius: 0 0 calc(var(--radius-md) - 1px) calc(var(--radius-md) - 1px);
  box-shadow: 0 -8px 18px -14px rgba(29, 16, 41, 0.35);
  /* tlačidlo „Chýbajú N polia - ukázať" - posunie na prvé chybné pole */
}
.listing_add_typ_1 .la-savebar .btn-second,
.account_auth_typ_1 .la-savebar .btn-second,
.account_agency_typ_1 .la-savebar .btn-second,
.account_person_typ_1 .la-savebar .btn-second {
  background: var(--white-color);
}
.listing_add_typ_1 .la-savebar__steps,
.account_auth_typ_1 .la-savebar__steps,
.account_agency_typ_1 .la-savebar__steps,
.account_person_typ_1 .la-savebar__steps {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.45rem 0.9rem;
  border-radius: var(--radius-badge);
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--warm);
  background: var(--cream);
  white-space: nowrap;
  flex-shrink: 0;
}
.listing_add_typ_1 .la-savebar__progress,
.account_auth_typ_1 .la-savebar__progress,
.account_agency_typ_1 .la-savebar__progress,
.account_person_typ_1 .la-savebar__progress {
  flex-shrink: 0;
  width: 5rem;
  height: 0.35rem;
  border-radius: 1rem;
  background: var(--cream-2);
  overflow: hidden;
}
.listing_add_typ_1 .la-savebar__progress i,
.account_auth_typ_1 .la-savebar__progress i,
.account_agency_typ_1 .la-savebar__progress i,
.account_person_typ_1 .la-savebar__progress i {
  display: block;
  height: 100%;
  background: var(--first-color);
  transition: width 0.3s ease;
}
.listing_add_typ_1 .la-savebar__err,
.account_auth_typ_1 .la-savebar__err,
.account_agency_typ_1 .la-savebar__err,
.account_person_typ_1 .la-savebar__err {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.45rem 0.875rem;
  border: 0;
  border-radius: var(--radius-badge);
  cursor: pointer;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--color-error);
  background: var(--color-error-bg);
  white-space: nowrap;
}
.listing_add_typ_1 .la-savebar__err .i,
.account_auth_typ_1 .la-savebar__err .i,
.account_agency_typ_1 .la-savebar__err .i,
.account_person_typ_1 .la-savebar__err .i {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.listing_add_typ_1 .la-savebar__err:hover,
.account_auth_typ_1 .la-savebar__err:hover,
.account_agency_typ_1 .la-savebar__err:hover,
.account_person_typ_1 .la-savebar__err:hover {
  text-decoration: underline;
}
.listing_add_typ_1 .la-savebar__actions,
.account_auth_typ_1 .la-savebar__actions,
.account_agency_typ_1 .la-savebar__actions,
.account_person_typ_1 .la-savebar__actions {
  display: flex;
  gap: 0.5rem;
  margin-left: auto;
}
.listing_add_typ_1 .la-savebar__actions .btn .i,
.account_auth_typ_1 .la-savebar__actions .btn .i,
.account_agency_typ_1 .la-savebar__actions .btn .i,
.account_person_typ_1 .la-savebar__actions .btn .i {
  width: 1.125rem;
  height: 1.125rem;
}
.listing_add_typ_1 .la-aside,
.account_auth_typ_1 .la-aside,
.account_agency_typ_1 .la-aside,
.account_person_typ_1 .la-aside {
  align-self: start;
  position: sticky;
  top: 1rem;
}
.listing_add_typ_1 .la-aside .la-label,
.account_auth_typ_1 .la-aside .la-label,
.account_agency_typ_1 .la-aside .la-label,
.account_person_typ_1 .la-aside .la-label {
  margin-top: 0;
}
.listing_add_typ_1 .la-preview,
.account_auth_typ_1 .la-preview,
.account_agency_typ_1 .la-preview,
.account_person_typ_1 .la-preview {
  padding: 0;
}
.listing_add_typ_1 .la-preview .prop-card,
.account_auth_typ_1 .la-preview .prop-card,
.account_agency_typ_1 .la-preview .prop-card,
.account_person_typ_1 .la-preview .prop-card {
  cursor: default;
}
.listing_add_typ_1 .la-preview__nophoto,
.account_auth_typ_1 .la-preview__nophoto,
.account_agency_typ_1 .la-preview__nophoto,
.account_person_typ_1 .la-preview__nophoto {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  color: var(--mute);
  font-size: 0.8125rem;
}
.listing_add_typ_1 .la-preview__nophoto .i,
.account_auth_typ_1 .la-preview__nophoto .i,
.account_agency_typ_1 .la-preview__nophoto .i,
.account_person_typ_1 .la-preview__nophoto .i {
  width: 2rem;
  height: 2rem;
}
.listing_add_typ_1 .la-quality,
.account_auth_typ_1 .la-quality,
.account_agency_typ_1 .la-quality,
.account_person_typ_1 .la-quality {
  margin-top: 1rem;
  padding: 1rem 1.125rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  background: var(--white-color);
}
.listing_add_typ_1 .la-quality__head,
.account_auth_typ_1 .la-quality__head,
.account_agency_typ_1 .la-quality__head,
.account_person_typ_1 .la-quality__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.listing_add_typ_1 .la-quality__head b,
.account_auth_typ_1 .la-quality__head b,
.account_agency_typ_1 .la-quality__head b,
.account_person_typ_1 .la-quality__head b {
  color: var(--first-color);
}
.listing_add_typ_1 .la-quality__bar,
.account_auth_typ_1 .la-quality__bar,
.account_agency_typ_1 .la-quality__bar,
.account_person_typ_1 .la-quality__bar {
  display: block;
  height: 0.375rem;
  border-radius: 1rem;
  background: var(--cream-2);
  margin: 0.5rem 0 0.75rem;
  overflow: hidden;
}
.listing_add_typ_1 .la-quality__bar i,
.account_auth_typ_1 .la-quality__bar i,
.account_agency_typ_1 .la-quality__bar i,
.account_person_typ_1 .la-quality__bar i {
  display: block;
  height: 100%;
  background: var(--accent-color);
  transition: width 0.3s ease;
}
.listing_add_typ_1 .la-quality ul,
.account_auth_typ_1 .la-quality ul,
.account_agency_typ_1 .la-quality ul,
.account_person_typ_1 .la-quality ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_add_typ_1 .la-quality li,
.account_auth_typ_1 .la-quality li,
.account_agency_typ_1 .la-quality li,
.account_person_typ_1 .la-quality li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.1875rem 0;
}
.listing_add_typ_1 .la-quality li .i,
.account_auth_typ_1 .la-quality li .i,
.account_agency_typ_1 .la-quality li .i,
.account_person_typ_1 .la-quality li .i {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.listing_add_typ_1 .la-quality li.is-ok,
.account_auth_typ_1 .la-quality li.is-ok,
.account_agency_typ_1 .la-quality li.is-ok,
.account_person_typ_1 .la-quality li.is-ok {
  color: var(--ink);
}
.listing_add_typ_1 .la-quality li.is-ok .i,
.account_auth_typ_1 .la-quality li.is-ok .i,
.account_agency_typ_1 .la-quality li.is-ok .i,
.account_person_typ_1 .la-quality li.is-ok .i {
  color: var(--accent-text);
}
.listing_add_typ_1 .la-auth,
.account_auth_typ_1 .la-auth,
.account_agency_typ_1 .la-auth,
.account_person_typ_1 .la-auth {
  max-width: 28rem;
  margin: 0 auto;
}
.listing_add_typ_1 .la-auth__head,
.account_auth_typ_1 .la-auth__head,
.account_agency_typ_1 .la-auth__head,
.account_person_typ_1 .la-auth__head {
  text-align: center;
}
.listing_add_typ_1 .la-auth__card,
.account_auth_typ_1 .la-auth__card,
.account_agency_typ_1 .la-auth__card,
.account_person_typ_1 .la-auth__card {
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.5rem;
  margin-top: 1.25rem;
}
.listing_add_typ_1 .la-auth__google,
.account_auth_typ_1 .la-auth__google,
.account_agency_typ_1 .la-auth__google,
.account_person_typ_1 .la-auth__google {
  width: 100%;
  justify-content: center;
  margin-top: 1.25rem;
  gap: 0.625rem;
}
.listing_add_typ_1 .la-auth__g,
.account_auth_typ_1 .la-auth__g,
.account_agency_typ_1 .la-auth__g,
.account_person_typ_1 .la-auth__g {
  font-weight: 800;
  font-size: 1.0625rem;
  color: var(--first-color);
}
.listing_add_typ_1 .la-auth__or,
.account_auth_typ_1 .la-auth__or,
.account_agency_typ_1 .la-auth__or,
.account_person_typ_1 .la-auth__or {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 1.25rem 0 0.25rem;
  font-size: 0.75rem;
  color: var(--mute);
}
.listing_add_typ_1 .la-auth__or::before,
.account_auth_typ_1 .la-auth__or::before,
.account_agency_typ_1 .la-auth__or::before,
.account_person_typ_1 .la-auth__or::before,
.listing_add_typ_1 .la-auth__or::after,
.account_auth_typ_1 .la-auth__or::after,
.account_agency_typ_1 .la-auth__or::after,
.account_person_typ_1 .la-auth__or::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--line-color);
}
.listing_add_typ_1 .la-auth__eye,
.account_auth_typ_1 .la-auth__eye,
.account_agency_typ_1 .la-auth__eye,
.account_person_typ_1 .la-auth__eye {
  border: 0;
  background: none;
  color: var(--mute);
  padding: 0;
  display: flex;
  cursor: pointer;
}
.listing_add_typ_1 .la-auth__eye .i,
.account_auth_typ_1 .la-auth__eye .i,
.account_agency_typ_1 .la-auth__eye .i,
.account_person_typ_1 .la-auth__eye .i {
  width: 1.25rem;
  height: 1.25rem;
}
.listing_add_typ_1 .la-auth__forgot,
.account_auth_typ_1 .la-auth__forgot,
.account_agency_typ_1 .la-auth__forgot,
.account_person_typ_1 .la-auth__forgot {
  font-size: 0.8125rem;
  align-self: flex-end;
  padding: 0;
}
.listing_add_typ_1 .la-auth__submit,
.account_auth_typ_1 .la-auth__submit,
.account_agency_typ_1 .la-auth__submit,
.account_person_typ_1 .la-auth__submit {
  width: 100%;
  justify-content: center;
  margin-top: 1.5rem;
}
.listing_add_typ_1 .la-auth__back,
.account_auth_typ_1 .la-auth__back,
.account_agency_typ_1 .la-auth__back,
.account_person_typ_1 .la-auth__back {
  display: flex;
  margin: 1rem auto 0;
  gap: 0.375rem;
  font-size: 0.875rem;
  background: none;
  border: 0;
}
.listing_add_typ_1 .la-auth__back .i,
.account_auth_typ_1 .la-auth__back .i,
.account_agency_typ_1 .la-auth__back .i,
.account_person_typ_1 .la-auth__back .i {
  width: 1rem;
  height: 1rem;
}
.listing_add_typ_1 .la-final,
.account_auth_typ_1 .la-final,
.account_agency_typ_1 .la-final,
.account_person_typ_1 .la-final {
  max-width: 32rem;
  margin: 0 auto;
  text-align: center;
  padding: 1rem 0;
}
.listing_add_typ_1 .la-final__icon,
.account_auth_typ_1 .la-final__icon,
.account_agency_typ_1 .la-final__icon,
.account_person_typ_1 .la-final__icon {
  display: inline-flex;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
  align-items: center;
  justify-content: center;
}
.listing_add_typ_1 .la-final__icon .i,
.account_auth_typ_1 .la-final__icon .i,
.account_agency_typ_1 .la-final__icon .i,
.account_person_typ_1 .la-final__icon .i {
  width: 2rem;
  height: 2rem;
}
.listing_add_typ_1 .la-final__icon.is-ok,
.account_auth_typ_1 .la-final__icon.is-ok,
.account_agency_typ_1 .la-final__icon.is-ok,
.account_person_typ_1 .la-final__icon.is-ok {
  background: var(--green-50);
  color: var(--accent-text);
}
.listing_add_typ_1 .la-final__title,
.account_auth_typ_1 .la-final__title,
.account_agency_typ_1 .la-final__title,
.account_person_typ_1 .la-final__title {
  font-family: var(--first-font);
  font-size: var(--h3);
  font-weight: 800;
  color: var(--first-color);
  margin: 0.875rem 0 0.5rem;
}
.listing_add_typ_1 .la-final__text,
.account_auth_typ_1 .la-final__text,
.account_agency_typ_1 .la-final__text,
.account_person_typ_1 .la-final__text {
  color: var(--warm);
  margin: 0 auto 1.25rem;
}
.listing_add_typ_1 .la-final__actions,
.account_auth_typ_1 .la-final__actions,
.account_agency_typ_1 .la-final__actions,
.account_person_typ_1 .la-final__actions {
  display: flex;
  justify-content: center;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-bottom: 1.25rem;
}
.listing_add_typ_1 .la-final__actions .btn-link[disabled],
.account_auth_typ_1 .la-final__actions .btn-link[disabled],
.account_agency_typ_1 .la-final__actions .btn-link[disabled],
.account_person_typ_1 .la-final__actions .btn-link[disabled] {
  color: var(--mute);
  cursor: default;
}
.listing_add_typ_1 .la-otp,
.account_auth_typ_1 .la-otp,
.account_agency_typ_1 .la-otp,
.account_person_typ_1 .la-otp {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
}
.listing_add_typ_1 .la-otp input,
.account_auth_typ_1 .la-otp input,
.account_agency_typ_1 .la-otp input,
.account_person_typ_1 .la-otp input {
  width: 3rem;
  height: 3.5rem;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--first-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  font-family: var(--second-font);
}
.listing_add_typ_1 .la-share,
.account_auth_typ_1 .la-share,
.account_agency_typ_1 .la-share,
.account_person_typ_1 .la-share {
  margin-bottom: 1rem;
}
.listing_add_typ_1 .la-share .filter-pills,
.account_auth_typ_1 .la-share .filter-pills,
.account_agency_typ_1 .la-share .filter-pills,
.account_person_typ_1 .la-share .filter-pills {
  justify-content: center;
}
.listing_add_typ_1 .la-share a.filter-pill,
.account_auth_typ_1 .la-share a.filter-pill,
.account_agency_typ_1 .la-share a.filter-pill,
.account_person_typ_1 .la-share a.filter-pill {
  text-decoration: none;
}
@media (max-width: 61.25rem) {
  .listing_add_typ_1,
  .account_auth_typ_1,
  .account_agency_typ_1,
  .account_person_typ_1 {
    /* na mobile len úplnosť nad formulárom - karta by odsunula formulár pod prvú obrazovku */
  }
  .listing_add_typ_1 .la-layout,
  .account_auth_typ_1 .la-layout,
  .account_agency_typ_1 .la-layout,
  .account_person_typ_1 .la-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_add_typ_1 .la-aside,
  .account_auth_typ_1 .la-aside,
  .account_agency_typ_1 .la-aside,
  .account_person_typ_1 .la-aside {
    position: static;
    order: -1;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_add_typ_1 .la-preview,
  .account_auth_typ_1 .la-preview,
  .account_agency_typ_1 .la-preview,
  .account_person_typ_1 .la-preview,
  .listing_add_typ_1 .la-preview-label,
  .account_auth_typ_1 .la-preview-label,
  .account_agency_typ_1 .la-preview-label,
  .account_person_typ_1 .la-preview-label {
    display: none;
  }
  .listing_add_typ_1 .la-quality ul,
  .account_auth_typ_1 .la-quality ul,
  .account_agency_typ_1 .la-quality ul,
  .account_person_typ_1 .la-quality ul {
    display: none;
  }
}
@media (max-width: 40rem) {
  .listing_add_typ_1,
  .account_auth_typ_1,
  .account_agency_typ_1,
  .account_person_typ_1 {
    /* krok ukazuje stepper */
  }
  .listing_add_typ_1 .la-types,
  .account_auth_typ_1 .la-types,
  .account_agency_typ_1 .la-types,
  .account_person_typ_1 .la-types {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .listing_add_typ_1 .la-card,
  .account_auth_typ_1 .la-card,
  .account_agency_typ_1 .la-card,
  .account_person_typ_1 .la-card {
    padding: 1.25rem 1rem;
    border-radius: var(--radius-sm);
  }
  .listing_add_typ_1 .la-addons__grid,
  .account_auth_typ_1 .la-addons__grid,
  .account_agency_typ_1 .la-addons__grid,
  .account_person_typ_1 .la-addons__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_add_typ_1 .la-row > .field,
  .account_auth_typ_1 .la-row > .field,
  .account_agency_typ_1 .la-row > .field,
  .account_person_typ_1 .la-row > .field {
    min-width: 100%;
  }
  .listing_add_typ_1 .la-otp input,
  .account_auth_typ_1 .la-otp input,
  .account_agency_typ_1 .la-otp input,
  .account_person_typ_1 .la-otp input {
    width: 2.625rem;
    height: 3.25rem;
  }
  .listing_add_typ_1 .la-savebar__steps,
  .account_auth_typ_1 .la-savebar__steps,
  .account_agency_typ_1 .la-savebar__steps,
  .account_person_typ_1 .la-savebar__steps {
    display: none;
  }
  .listing_add_typ_1 .la-savebar,
  .account_auth_typ_1 .la-savebar,
  .account_agency_typ_1 .la-savebar,
  .account_person_typ_1 .la-savebar {
    flex-wrap: wrap;
    margin: 1.5rem -1rem 0;
    padding: 0.75rem 1rem;
  }
  .listing_add_typ_1 .la-savebar__err,
  .account_auth_typ_1 .la-savebar__err,
  .account_agency_typ_1 .la-savebar__err,
  .account_person_typ_1 .la-savebar__err {
    width: 100%;
    justify-content: center;
  }
  .listing_add_typ_1 .la-savebar__actions,
  .account_auth_typ_1 .la-savebar__actions,
  .account_agency_typ_1 .la-savebar__actions,
  .account_person_typ_1 .la-savebar__actions {
    width: 100%;
  }
  .listing_add_typ_1 .la-savebar__actions .btn,
  .account_auth_typ_1 .la-savebar__actions .btn,
  .account_agency_typ_1 .la-savebar__actions .btn,
  .account_person_typ_1 .la-savebar__actions .btn {
    flex: 1;
    justify-content: center;
  }
  .listing_add_typ_1 .la-savebar__actions .btn.la-back-icon,
  .account_auth_typ_1 .la-savebar__actions .btn.la-back-icon,
  .account_agency_typ_1 .la-savebar__actions .btn.la-back-icon,
  .account_person_typ_1 .la-savebar__actions .btn.la-back-icon {
    flex: 0 0 auto;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .listing_add_typ_1 .la-savebar__actions .btn.la-back-icon span,
  .account_auth_typ_1 .la-savebar__actions .btn.la-back-icon span,
  .account_agency_typ_1 .la-savebar__actions .btn.la-back-icon span,
  .account_person_typ_1 .la-savebar__actions .btn.la-back-icon span {
    display: none;
  }
}
/* ---- tabuľka Polia a databáza (len manuál) ---- */
.la-dbmap {
  overflow-x: auto;
}
.la-dbmap table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.8125rem;
  min-width: 40rem;
}
.la-dbmap th {
  text-align: left;
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  padding: 0.5rem 0.625rem;
  border-bottom: 1px solid var(--line-color);
}
.la-dbmap td {
  padding: 0.5rem 0.625rem;
  border-bottom: 1px solid var(--line-color);
  vertical-align: top;
  color: var(--warm);
}
.la-dbmap td:first-child {
  color: var(--ink);
  font-weight: 600;
}
.la-dbmap td:last-child {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.la-dbmap code {
  font-size: 0.75rem;
}
.la-dbmap tr.is-missing td {
  background: var(--color-warning-bg);
}
/* špendlík v pridaní inzerátu (Leaflet divIcon) */
.la-pin span {
  display: block;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  background: var(--first-color);
  border: 0.1875rem solid var(--white-color);
  box-shadow: 0 2px 8px rgba(29, 16, 41, 0.35);
}
/* okno Upraviť fotku (obal = modal filtra) */
.la-photo-edit {
  max-width: 34rem;
}
.la-photo-edit__img {
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream-2);
  aspect-ratio: 4 / 3;
  display: flex;
  align-items: center;
  justify-content: center;
}
.la-photo-edit__img img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.2s ease;
}
.la-photo-edit__tools {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}
.la-photo-edit__tools .btn .i {
  width: 1rem;
  height: 1rem;
}
.la-photo-edit .field {
  margin-top: 1.25rem;
}
.la-photo-edit .fb-check {
  margin-top: 1rem;
  align-items: flex-start;
}
.la-photo-edit .la-opt {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--mute);
}
.la-photo-edit .la-hint {
  font-size: 0.8125rem;
  color: var(--mute);
}
.la-photo-edit__del {
  color: var(--color-error) !important;
  padding: 0;
  background: none;
  border: 0;
}
.la-photo-edit__del.is-armed {
  font-weight: 800;
}
/* nastavenie štýlu písania realitky (účet) */
.rk-style {
  padding: 0;
}
.rk-style .la-card {
  max-width: 46rem;
}
.rk-style__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}
.rk-style__list {
  display: grid;
  gap: 0.25rem;
  max-height: 19rem;
  overflow-y: auto;
  padding: 0.25rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
}
.rk-style__item {
  margin: 0 !important;
  padding: 0.5rem 0.625rem;
  border-radius: 0.5rem;
  align-items: flex-start;
}
.rk-style__item:hover {
  background: var(--cream);
}
.rk-style__item .fb-check-txt {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  font-size: 0.875rem;
}
.rk-style__item .fb-check-txt b {
  color: var(--ink);
}
.rk-style__item .fb-check-txt small {
  color: var(--mute);
  font-size: 0.75rem;
}
.rk-style__rules {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
@media (max-width: 40rem) {
  .rk-style__rules {
    grid-template-columns: minmax(0, 1fr);
  }
}
.rk-style__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--line-color);
}
.rk-style .la-ai__result {
  margin-bottom: 0.5rem;
}
/* krok Platba */
.listing_add_typ_1 .la-pay {
  max-width: 30rem;
  margin: 0 auto;
}
.listing_add_typ_1 .la-pay__bill,
.account_person_typ_1 .la-pay__bill {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.9375rem;
}
.listing_add_typ_1 .la-pay__bill li,
.account_person_typ_1 .la-pay__bill li {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.5rem 0;
  border-bottom: 1px solid var(--line-color);
  color: var(--warm);
}
.listing_add_typ_1 .la-pay__bill li b,
.account_person_typ_1 .la-pay__bill li b {
  color: var(--ink);
}
.listing_add_typ_1 .la-pay__bill li.is-total,
.account_person_typ_1 .la-pay__bill li.is-total {
  border-bottom: 0;
  font-weight: 800;
  color: var(--first-color);
}
.listing_add_typ_1 .la-pay__bill li.is-total b,
.account_person_typ_1 .la-pay__bill li.is-total b {
  color: var(--first-color);
  font-size: 1.125rem;
}
.listing_add_typ_1 .la-pay__methods,
.account_agency_typ_1 .la-pay__methods,
.account_person_typ_1 .la-pay__methods {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.listing_add_typ_1 .la-pay__method,
.account_agency_typ_1 .la-pay__method,
.account_person_typ_1 .la-pay__method {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  width: 100%;
  padding: 0.875rem 1rem;
  text-align: left;
  cursor: pointer;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.listing_add_typ_1 .la-pay__method:hover:not(:disabled),
.account_agency_typ_1 .la-pay__method:hover:not(:disabled),
.account_person_typ_1 .la-pay__method:hover:not(:disabled) {
  border-color: var(--accent-color-hover);
}
.listing_add_typ_1 .la-pay__method.is-active,
.account_agency_typ_1 .la-pay__method.is-active,
.account_person_typ_1 .la-pay__method.is-active {
  border-color: var(--accent-color);
  background: var(--green-50);
  box-shadow: inset 0 0 0 1px var(--accent-color);
}
.listing_add_typ_1 .la-pay__method:disabled,
.account_agency_typ_1 .la-pay__method:disabled,
.account_person_typ_1 .la-pay__method:disabled {
  cursor: default;
  opacity: 0.6;
}
.listing_add_typ_1 .la-pay__method .la-pay__radio,
.account_agency_typ_1 .la-pay__method .la-pay__radio,
.account_person_typ_1 .la-pay__method .la-pay__radio {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  margin-top: 0.125rem;
  border-radius: 50%;
  border: 2px solid var(--line-color);
  background: var(--white-color);
}
.listing_add_typ_1 .la-pay__method.is-active .la-pay__radio,
.account_agency_typ_1 .la-pay__method.is-active .la-pay__radio,
.account_person_typ_1 .la-pay__method.is-active .la-pay__radio {
  border-color: var(--first-color);
  box-shadow: inset 0 0 0 0.1875rem var(--white-color);
  background: var(--first-color);
}
.listing_add_typ_1 .la-pay__method .la-pay__txt,
.account_agency_typ_1 .la-pay__method .la-pay__txt,
.account_person_typ_1 .la-pay__method .la-pay__txt {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.listing_add_typ_1 .la-pay__method .la-pay__txt strong,
.account_agency_typ_1 .la-pay__method .la-pay__txt strong,
.account_person_typ_1 .la-pay__method .la-pay__txt strong {
  color: var(--ink);
  font-size: 0.9375rem;
}
.listing_add_typ_1 .la-pay__method .la-pay__txt small,
.account_agency_typ_1 .la-pay__method .la-pay__txt small,
.account_person_typ_1 .la-pay__method .la-pay__txt small {
  color: var(--mute);
  font-size: 0.8125rem;
  line-height: 1.4;
}
.listing_add_typ_1 .la-pay__method .la-pay__topup,
.account_agency_typ_1 .la-pay__method .la-pay__topup,
.account_person_typ_1 .la-pay__method .la-pay__topup {
  flex-shrink: 0;
  font-size: 0.8125rem;
  padding: 0;
  opacity: 1;
}
/* „Dokončiť neskôr" - malá záchranná sieť pod registráciou, nie rovnocenná voľba */
.listing_add_typ_1 .la-later {
  margin-top: 1rem;
  text-align: center;
}
.listing_add_typ_1 .la-later__toggle {
  padding: 0;
  background: none;
  border: 0;
  font-size: 0.875rem;
  color: var(--mute);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.listing_add_typ_1 .la-later__form {
  text-align: left;
  padding: 1rem 1.125rem;
  border: 1px dashed var(--line-color);
  border-radius: var(--radius-md);
}
.listing_add_typ_1 .la-later__form p {
  margin: 0 0 0.25rem;
  font-size: 0.875rem;
  color: var(--warm);
}
.listing_add_typ_1 .la-later__row {
  display: flex;
  gap: 0.5rem;
  align-items: flex-end;
}
.listing_add_typ_1 .la-later__row .field {
  flex: 1;
  min-width: 0;
  margin-top: 0.5rem;
}
.listing_add_typ_1 .la-later__row .btn {
  flex-shrink: 0;
}
@media (max-width: 35.99rem) {
  .listing_add_typ_1 .la-later__row {
    flex-direction: column;
    align-items: stretch;
  }
}
.listing_add_typ_1 .la-later__sent {
  display: inline-flex;
  gap: 0.5rem;
  align-items: flex-start;
  text-align: left;
  font-size: 0.875rem;
  color: var(--warm);
  margin: 0;
}
.listing_add_typ_1 .la-later__sent .i {
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
  color: var(--accent-text);
}
.listing_add_typ_1 .la-top__saved .btn-link {
  margin-left: 0.5rem;
  padding: 0;
  background: none;
  border: 0;
  font-size: 0.8125rem;
}
/* ---- stavba 8. 11.: ostrý web (listing_add_typ_1.php) ---- */
/* krok 7 = vložený widget účtu (formulár + výhody vedľa seba) - širší než karta z manuálu */
.listing_add_typ_1 .la-auth {
  max-width: none;
  padding-top: 1rem;
}
.listing_add_typ_1 .la-auth__head .la-auth__back {
  margin-top: 0.5rem;
  padding: 0;
  background: none;
  border: 0;
  display: inline-flex;
  gap: 0.375rem;
  align-items: center;
}
.listing_add_typ_1 .account_auth_typ_1.is-embedded {
  padding: 1.5rem 0 0;
}
.listing_add_typ_1 .account_auth_typ_1.is-embedded .container {
  padding: 0;
  max-width: none;
}
/* súkromná osoba na limite 3 zverejnených */
.listing_add_typ_1 .la-notice {
  display: flex;
  gap: 0.625rem;
  align-items: flex-start;
  margin: 0 0 1.25rem;
  padding: 0.875rem 1rem;
  border: 1px solid var(--line-color);
  border-left: 0.25rem solid var(--accent-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  font-size: 0.9375rem;
  color: var(--ink);
}
.listing_add_typ_1 .la-notice .i {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  color: var(--accent-text);
}
.listing_add_typ_1 .la-notice a {
  font-weight: 700;
}
/* dlhšia platnosť a doplnky - ceny ešte nie sú (Pripravujeme) */
.listing_add_typ_1 .la-period__opt.is-soon,
.listing_add_typ_1 .la-addon.is-soon {
  opacity: 0.55;
  cursor: default;
}
.listing_add_typ_1 .la-period__opt.is-soon .la-period__price {
  color: var(--mute);
}
/* fotka sa práve nahráva */
.listing_add_typ_1 .la-up__thumb.is-uploading .la-up__img img {
  opacity: 0.45;
}
.listing_add_typ_1 .la-up__badge.is-busy {
  background: var(--white-color);
  color: var(--warm);
}
.listing_add_typ_1 .la-publish-err {
  margin-top: 1rem;
}
.listing_add_typ_1 .la-publish-err a {
  font-weight: 700;
}
/* podobný inzerát už je zverejnený - upozornenie pred zverejnením (farby ako .ac-alert.is-warn v účte) */
.listing_add_typ_1 .la-similar {
  margin-top: 1rem;
  padding: 1rem 1.25rem;
  border-radius: var(--radius-md);
  background: #FFF4DB;
  color: #6B4600;
  font-size: 0.875rem;
  line-height: 1.5;
}
.listing_add_typ_1 .la-similar p {
  margin: 0;
}
.listing_add_typ_1 .la-similar ul {
  margin: 0.5rem 0;
  padding-left: 1.75rem;
}
.listing_add_typ_1 .la-similar li span {
  opacity: 0.75;
  white-space: nowrap;
}
.listing_add_typ_1 .la-similar a {
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
  overflow-wrap: anywhere;
}
.listing_add_typ_1 .la-similar__h {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-weight: 700;
  font-size: 0.9375rem;
}
.listing_add_typ_1 .la-similar__h .i {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  color: #8A5A00;
}
.listing_add_typ_1 .la-similar__act {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.875rem;
}
@media (max-width: 35.99rem) {
  .listing_add_typ_1 .la-similar__act .btn {
    flex: 1 1 100%;
    justify-content: center;
  }
}
/* prepínač typu ponuky (6 volieb = mriežka 2 × 3) - pravidlo filtra pre mobil ho zbaľuje na 4rem (_filter_typ_1.less) */
.listing_add_typ_1 .filter-modal__offer-switch.la-offer {
  max-height: none;
  overflow: visible;
}
/* úchyt na poradie fotky: biely s fialovou ikonou a tieňom - čitateľný na tmavej aj svetlej fotke (Jozef 8. 11.);
   zelená ostáva pre Titulnú a hlavné tlačidlo. Mobilný zoznam (úchyt vedľa náhľadu) má vlastný vzhľad vyššie. */
@media (min-width: 36rem) {
  .listing_add_typ_1 .la-up__handle {
    background: var(--white-color);
    color: var(--first-color);
    opacity: 1;
    box-shadow: 0 2px 8px rgba(29, 16, 41, 0.28);
    border: 1px solid rgba(29, 16, 41, 0.08);
  }
  .listing_add_typ_1 .la-up__thumb:hover .la-up__handle {
    background: var(--first-color);
    color: var(--white-color);
  }
}
/* otáznik s vysvetlením pri poli (Jozef 8. 11.) - jemný krúžok, klik otvorí bublinu .la-pop */
.listing_add_typ_1 .la-tip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: 0.05em;
  width: 1rem;
  height: 1rem;
  margin: 0 0.125rem;
  padding: 0;
  border: 1px solid var(--line-color);
  border-radius: 50%;
  background: var(--white-color);
  color: var(--mute);
  font: 700 0.625rem/1 var(--second-font, inherit);
  letter-spacing: 0;
  text-transform: none;
  cursor: pointer;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.listing_add_typ_1 .la-tip:hover,
.listing_add_typ_1 .la-tip:focus-visible {
  background: var(--purple-50);
  border-color: var(--first-color);
  color: var(--first-color);
}
.listing_add_typ_1 .la-h .la-tip,
.listing_add_typ_1 .la-group__title .la-tip {
  width: 1.125rem;
  height: 1.125rem;
  font-size: 0.6875rem;
  margin-left: 0.25rem;
}
/* bublina vysvetlivky: biela karta s tieňom a šípkou k otázniku; mobil = spodný panel */
.listing_add_typ_1 .la-pop {
  position: fixed;
  z-index: 1300;
  padding: 1rem 1.125rem 1.125rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  box-shadow: 0 18px 40px -12px rgba(29, 16, 41, 0.28), 0 2px 6px rgba(29, 16, 41, 0.06);
}
.listing_add_typ_1 .la-pop__arrow {
  position: absolute;
  top: -0.4375rem;
  width: 0.875rem;
  height: 0.875rem;
  background: var(--white-color);
  border-left: 1px solid var(--line-color);
  border-top: 1px solid var(--line-color);
  transform: rotate(45deg);
}
.listing_add_typ_1 .la-pop__head {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-bottom: 0.5rem;
}
.listing_add_typ_1 .la-pop__ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
}
.listing_add_typ_1 .la-pop__ic .i {
  width: 1.125rem;
  height: 1.125rem;
}
.listing_add_typ_1 .la-pop__ic svg {
  width: 100%;
  height: 100%;
}
.listing_add_typ_1 .la-pop__title {
  flex: 1;
  font-family: var(--first-font);
  font-size: 1rem;
  line-height: 1.3;
  color: var(--first-color);
}
.listing_add_typ_1 .la-pop__x {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  margin: -0.25rem -0.375rem -0.25rem 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: none;
  color: var(--mute);
  cursor: pointer;
}
.listing_add_typ_1 .la-pop__x .i {
  width: 1rem;
  height: 1rem;
}
.listing_add_typ_1 .la-pop__x svg {
  width: 100%;
  height: 100%;
}
.listing_add_typ_1 .la-pop__x:hover {
  background: var(--cream);
  color: var(--ink);
}
.listing_add_typ_1 .la-pop__text {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--ink);
}
.listing_add_typ_1 .la-pop__list {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0.9375rem;
  line-height: 1.5;
  color: var(--ink);
}
.listing_add_typ_1 .la-pop__list li {
  padding: 0.375rem 0;
  border-top: 1px solid var(--line-color);
}
.listing_add_typ_1 .la-pop__list li:first-child {
  border-top: 0;
  padding-top: 0;
}
.listing_add_typ_1 .la-pop__list b {
  color: var(--first-color);
}
.listing_add_typ_1 .la-pop__more {
  margin: 0.75rem 0 0;
  padding-top: 0.75rem;
  border-top: 1px solid var(--line-color);
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--warm);
}
.listing_add_typ_1 .la-pop.is-sheet {
  inset: auto 0 0 0;
  width: auto;
  max-height: 75vh;
  overflow-y: auto;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
  padding-bottom: calc(1.25rem + env(safe-area-inset-bottom));
}
.listing_add_typ_1 .la-pop-shade {
  position: fixed;
  inset: 0;
  z-index: 1290;
  background: rgba(29, 16, 41, 0.35);
}
/* vzdušnejšie rozostupy v sprievodcovi (Jozef 8. 11. - „natlačené"): skupina ~2.25rem, pole od poľa 1.5rem,
   nadpis poľa k voľbám .625rem. Pôvodné `.la-label:first-of-type` dávalo .75rem KAŽDÉMU poľu (každé má vlastný obal). */
.listing_add_typ_1 .la-card .la-group {
  padding: 2.25rem 0;
}
.listing_add_typ_1 .la-card .la-group:first-of-type {
  padding-top: 0.5rem;
}
.listing_add_typ_1 .la-card .la-group__title {
  margin-bottom: 0.25rem;
  font-size: 1.125rem;
}
.listing_add_typ_1 .la-card .la-group .la-label,
.listing_add_typ_1 .la-card .la-group .la-label:first-of-type {
  margin: 1.5rem 0 0.625rem;
}
.listing_add_typ_1 .la-card .la-group__title + .la-label,
.listing_add_typ_1 .la-card .la-group__title + .la-req .la-label,
.listing_add_typ_1 .la-card .la-group__title + div > .la-label,
.listing_add_typ_1 .la-card .la-group__title + div > .la-req .la-label {
  margin-top: 1rem;
}
.listing_add_typ_1 .la-card .la-group .la-grid {
  margin-top: 1rem;
  row-gap: 1.25rem;
}
.listing_add_typ_1 .la-card .la-group .la-grid .field > label {
  margin-bottom: 0.5rem;
}
.listing_add_typ_1 .la-card .la-group .la-hint {
  margin-top: 0.625rem;
}
.listing_add_typ_1 .la-card .la-group .fb-check {
  margin-top: 1rem;
}
.listing_add_typ_1 .la-card .la-utils .la-label {
  margin-top: 1.5rem;
}
.listing_add_typ_1 .la-card .la-h + .la-hint {
  margin-bottom: 0.5rem;
}
/* mapa v sprievodcovi na celú obrazovku - stránka pod ňou sa neposúva */
html:has(.la-mapwrap.is-full) {
  overflow: hidden;
}
/* ---------------------------------------------------------------------------
   listing_detail_typ_1 - detail inzerátu (bydo). Prepracované 7. 11. (Jozef: natlačené, staré, mriežka fotiek,
   omrvinky): galéria 1 + 2 + 2 v pomere 4:3, sekcie bez rámikov oddelené čiarou a vzduchom, cena a kontakt
   v lepkavej karte vpravo, omrvinky dole. Mobil ako aplikácia: fotka na celú šírku s okrúhlymi tlačidlami,
   obsah ako list so zaoblením cez fotku, sekcie oddelené pásom, lišta s cenou dole.
   Bloky bez dát sa nevykreslia (rozhoduje šablóna, nie CSS).
   --------------------------------------------------------------------------- */
.listing_detail_typ_1 {
  padding: 1.5rem 0 4rem;
  background: var(--white-color);
  /* detail na bielom - dekor pozadia webu pod textom bez rámikov rušil */
  /* ---- galéria: 1 veľká + 2 × 2. Stĺpce 2fr 1fr 1fr a pomer celku 8:3 = každá fotka 4:3 (formát fotiek realitiek).
     3-4 fotky: 1 + 2 pod sebou (2:1), 1-2 fotky jedna cez celú plochu (druhá v galérii). ---- */
  /* okrúhle tlačidlo na fotke (späť, zdieľať, uložiť) - ako srdiečko na karte výpisu */
  /* štítok-tlačidlo na fotke (3D, Video, Všetky fotky) */
  /* ---- hlavička: štítky, H1, lokalita, perex realitky (cena je v karte vpravo) ---- */
  /* ---- kľúčové údaje - riadok medzi čiarami, ikona v kruhu, veľké číslo ---- */
  /* ---- kotvy (lepkavé) - pás cez hlavný stĺpec, aktívna kotva podčiarknutá fialovou ---- */
  /* lišta kotiev sa lepí pod lepkavú hlavičku webu (@bydo-header-h, _bydo_sekcie.less) */
  /* ---- 2 stĺpce: obsah | karta ---- */
  /* sekcia bez rámika: čiara + vzduch (kotvy a kľúčové údaje majú vlastnú čiaru, prvá sekcia za nimi ju nezdvojí) */
  /* popis - zbalený na ~9 riadkov, celý po kliknutí */
  /* parametre - súvislá mriežka 3 stĺpcov, štítok nad hodnotou (Jozef 12. 11.: skupiny robili diery a hodnota
     vpravo bola ďaleko od štítku) */
  /* energetická trieda - farba podľa škály A-G (rovnaké farby ako 1b .pd-energy-scale) */
  /* okolie a siete - dlaždice s ikonou v kruhu (Jozef 7. 11.: predtým príliš malé) */
  /* 3D - obal s náhľadom, iframe až po kliknutí */
  /* mapa */
  /* hypotéka - karta: hlavička (nadpis, cena, partner), voľby | splátka + žiadosť, voliteľný banner partnera */
  /* vľavo posuvníky (vzor stránka kalkulačky), vpravo súhrn na celú výšku (vzor .pd-mort-summary) */
  /* posuvník s hodnotou pri popise a krajnými hodnotami pod ním */
  /* správa predávajúcemu */
  /* PC: jeden riadok „ID · Vložené · Aktualizované"; mobil: malý stĺpec pod sebou, Nahlásiť vpravo na stred bloku */
  /* ---- karta vpravo (PC lepkavá): cena, kto ponúka, kontakt ---- */
  /* kto ponúka - avatar: fotka = kruh, logo = obdĺžnik (logá realitiek sú široké, nesmú sa orezať), iniciály = kruh */
  /* realitka makléra - samostatný blok pod maklérom: logo, názov, počet ponúk a odkaz na profil */
  /* ---- podobné ponuky (karta 1b bez zmeny) ---- */
  /* omrvinky dole - drobné, nenápadné */
  /* ---- mobil: lišta dole ---- */
  /* ---- galéria a 3D/video na celú obrazovku ---- */
  /* ---- tablet ---- */
  /* ---- mobil: ako aplikácia ---- */
}
.listing_detail_typ_1 .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.listing_detail_typ_1 .i svg {
  width: 100%;
  height: 100%;
}
.listing_detail_typ_1 .ld-gallery {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0.5rem;
  aspect-ratio: 8 / 3;
  width: 100%;
  /* bez toho pomer + max-height zúžili galériu (3 fotky 2:1 nesiahali cez celú šírku) */
  max-height: 36rem;
  border-radius: 1.25rem;
  overflow: hidden;
  /* mobil: všetky fotky vedľa seba, posun prstom so snapom; PC: vidno len prvú (overflow hidden) */
  /* jedna fotka: cez celú plochu (orezaná), bez rozmazaných okrajov (Jozef 12. 11.) */
}
.listing_detail_typ_1 .ld-gallery.is-n3 {
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  aspect-ratio: 2 / 1;
}
.listing_detail_typ_1 .ld-gallery.is-n2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: minmax(0, 1fr);
}
.listing_detail_typ_1 .ld-gallery.is-n1,
.listing_detail_typ_1 .ld-gallery.is-n0 {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
}
.listing_detail_typ_1 .ld-gallery__main {
  position: relative;
  grid-row: 1 / -1;
  min-width: 0;
  min-height: 0;
  background: var(--cream-2);
  overflow: hidden;
}
.listing_detail_typ_1 .ld-gallery__strip {
  position: relative;
  display: flex;
  height: 100%;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.listing_detail_typ_1 .ld-gallery__strip::-webkit-scrollbar {
  display: none;
}
.listing_detail_typ_1 .ld-gallery__slide {
  flex: 0 0 100%;
  scroll-snap-align: start;
  border: 0;
  padding: 0;
  background: none;
  cursor: zoom-in;
}
.listing_detail_typ_1 .ld-gallery__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: filter 0.3s ease;
}
.listing_detail_typ_1 .ld-gallery__slide:hover img {
  filter: brightness(0.94);
}
.listing_detail_typ_1 .ld-gallery__slide.is-blank {
  cursor: default;
}
.listing_detail_typ_1 .ld-gallery__slide.is-blank img {
  object-position: 50% 76%;
}
.listing_detail_typ_1 .ld-gallery__slide.is-blank:hover img {
  filter: none;
}
.listing_detail_typ_1 .ld-gallery__empty {
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-gallery__empty .i {
  width: 2rem;
  height: 2rem;
}
.listing_detail_typ_1 .ld-gallery__thumb {
  position: relative;
  min-height: 0;
  border: 0;
  padding: 0;
  cursor: zoom-in;
  background: var(--cream-2);
  overflow: hidden;
}
.listing_detail_typ_1 .ld-gallery__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: filter 0.3s ease;
}
.listing_detail_typ_1 .ld-gallery__thumb:hover img {
  filter: brightness(0.94);
}
.listing_detail_typ_1 .ld-gallery__back {
  position: absolute;
  top: 1rem;
  left: 1rem;
}
.listing_detail_typ_1 .ld-gallery__tools {
  position: absolute;
  top: 1rem;
  right: 1rem;
  display: flex;
  gap: 0.5rem;
}
.listing_detail_typ_1 .ld-gallery__btns {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.listing_detail_typ_1 .ld-round {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  border: 0;
  background: rgba(255, 255, 255, 0.94);
  color: var(--first-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(28, 28, 26, 0.14);
  /* is-saved = Obľúbené (bydoOblubene) */
}
.listing_detail_typ_1 .ld-round.is-on,
.listing_detail_typ_1 .ld-round.is-saved {
  color: var(--color-error);
}
.listing_detail_typ_1 .ld-round.is-on .i svg,
.listing_detail_typ_1 .ld-round.is-saved .i svg {
  fill: currentColor;
}
.listing_detail_typ_1 .ld-round.is-dark {
  background: rgba(255, 255, 255, 0.14);
  color: var(--white-color);
  box-shadow: none;
}
.listing_detail_typ_1 .ld-round.is-dark:hover {
  background: rgba(255, 255, 255, 0.24);
}
.listing_detail_typ_1 .ld-chip-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  height: 2.25rem;
  padding: 0 0.875rem;
  border: 0;
  border-radius: var(--radius-sm);
  background: var(--white-color);
  color: var(--first-color);
  font-weight: 700;
  font-size: 0.8125rem;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(28, 28, 26, 0.14);
}
.listing_detail_typ_1 .ld-chip-btn.is-accent {
  background: var(--btn-first-bg);
  color: var(--btn-first-color);
}
.listing_detail_typ_1 .ld-chip-btn:hover {
  background: var(--purple-50);
}
.listing_detail_typ_1 .ld-chip-btn.is-accent:hover {
  background: var(--btn-first-bg-hover);
}
.listing_detail_typ_1 .ld-only-s {
  display: none !important;
}
.listing_detail_typ_1 .ld-head {
  margin: 0 0 2rem;
}
.listing_detail_typ_1 .ld-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  margin-bottom: 0.875rem;
}
.listing_detail_typ_1 .ld-tag {
  display: inline-flex;
  align-items: center;
  height: 1.75rem;
  padding: 0 0.75rem;
  border-radius: var(--radius-badge);
  background: var(--cream);
  color: var(--warm);
  font-size: 0.8125rem;
  font-weight: 600;
}
.listing_detail_typ_1 .ld-tag.is-op {
  background: var(--purple-50);
  color: var(--first-color);
}
.listing_detail_typ_1 .ld-title {
  font-family: var(--first-font);
  font-size: clamp(1.75rem, 2.4vw, 2.5rem);
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: var(--first-color);
  margin: 0 0 0.75rem;
}
.listing_detail_typ_1 .ld-loc {
  display: flex;
  align-items: flex-start;
  gap: 0.375rem;
  margin: 0;
  font-size: 1.0625rem;
  color: var(--warm);
}
.listing_detail_typ_1 .ld-loc > .i {
  color: var(--accent-text);
  margin-top: 0.25rem;
}
.listing_detail_typ_1 .ld-loc .btn-link {
  font-size: 0.9375rem;
  margin-left: 0.5rem;
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-lead {
  margin: 1rem 0 0;
  color: var(--mute);
  font-size: 1rem;
  max-width: 46rem;
}
.listing_detail_typ_1 .ld-price {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.listing_detail_typ_1 .ld-price__val {
  font-family: var(--first-font);
  font-size: 2.125rem;
  line-height: 1.1;
  font-weight: 800;
  color: var(--first-color);
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-price__val.is-agreement {
  font-size: 1.625rem;
}
.listing_detail_typ_1 .ld-price__m2 {
  font-size: 0.875rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-facts {
  list-style: none;
  margin: 0;
  padding: 1.75rem 0;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 3rem;
  border-top: 1px solid var(--line-color);
}
.listing_detail_typ_1 .ld-facts li {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  min-width: 0;
}
.listing_detail_typ_1 .ld-facts b {
  display: block;
  font-family: var(--first-font);
  font-size: 1.375rem;
  font-weight: 800;
  line-height: 1.15;
  color: var(--first-color);
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-facts small {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
  margin-top: 0.125rem;
}
.listing_detail_typ_1 .ld-facts__ic {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--green-50);
  color: var(--accent-text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.listing_detail_typ_1 .ld-facts__ic .i {
  width: 1.5rem;
  height: 1.5rem;
}
.listing_detail_typ_1 .ld-tabs-sentinel {
  height: 1px;
  margin-bottom: -1px;
}
.listing_detail_typ_1 .ld-tabs {
  position: sticky;
  top: 4.5rem;
  z-index: 20;
  background: var(--white-color);
  border-top: 1px solid var(--line-color);
  border-bottom: 1px solid var(--line-color);
  transition: box-shadow 0.2s ease;
}
.listing_detail_typ_1 .ld-tabs.is-stuck {
  box-shadow: 0 0.75rem 1.25rem -1rem rgba(29, 16, 41, 0.3);
}
.listing_detail_typ_1 .ld-tabs__nav {
  display: flex;
  gap: 2rem;
  overflow-x: auto;
  scrollbar-width: none;
}
.listing_detail_typ_1 .ld-tabs__nav::-webkit-scrollbar {
  display: none;
}
.listing_detail_typ_1 .ld-tabs__nav a {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  height: 3.5rem;
  color: var(--warm);
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
  box-shadow: inset 0 -3px 0 transparent;
  transition: color 0.15s ease, box-shadow 0.15s ease;
}
.listing_detail_typ_1 .ld-tabs__nav a:hover {
  color: var(--first-color);
  box-shadow: inset 0 -3px 0 var(--purple-200);
}
.listing_detail_typ_1 .ld-tabs__nav a.is-active {
  color: var(--first-color);
  box-shadow: inset 0 -3px 0 var(--first-color);
}
.listing_detail_typ_1 .ld-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 23rem;
  gap: 4rem;
  align-items: start;
  margin-top: 2.5rem;
}
.listing_detail_typ_1 .ld-main {
  min-width: 0;
}
.listing_detail_typ_1 .ld-block {
  padding: 2.5rem 0;
  border-top: 1px solid var(--line-color);
  scroll-margin-top: calc(4.5rem + 3.5rem);
}
.listing_detail_typ_1 .ld-tabs + .ld-block {
  border-top: 0;
}
.listing_detail_typ_1 .ld-h2 {
  font-family: var(--first-font);
  font-size: 1.625rem;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: var(--first-color);
  margin: 0 0 1.25rem;
}
.listing_detail_typ_1 .ld-h3 {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--mute);
  margin: 0 0 0.625rem;
}
.listing_detail_typ_1 .ld-fine {
  font-size: 0.8125rem;
  color: var(--mute);
  margin: 0.75rem 0 0;
}
.listing_detail_typ_1 .ld-note {
  display: inline-flex;
  gap: 0.375rem;
  align-items: flex-start;
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-note .i {
  color: var(--first-color);
  margin-top: 0.0625rem;
}
.listing_detail_typ_1 .ld-summary {
  font-weight: 600;
  color: var(--ink);
  margin: 0 0 0.75rem;
}
.listing_detail_typ_1 .ld-desc {
  max-height: 14rem;
  overflow: hidden;
  position: relative;
  color: var(--warm);
  font-size: 1.0625rem;
  line-height: 1.7;
}
.listing_detail_typ_1 .ld-desc p {
  margin: 0 0 0.75rem;
}
.listing_detail_typ_1 .ld-desc::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3.5rem;
  background: linear-gradient(rgba(255, 255, 255, 0), var(--white-color));
}
.listing_detail_typ_1 .ld-desc.is-open {
  max-height: none;
}
.listing_detail_typ_1 .ld-desc.is-open::after {
  display: none;
}
.listing_detail_typ_1 .ld-more {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  padding: 0;
  border: 0;
  background: none;
}
.listing_detail_typ_1 .ld-more .i {
  transition: transform 0.2s ease;
}
.listing_detail_typ_1 .ld-params {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 2rem;
  margin: 0;
}
.listing_detail_typ_1 .ld-params > div {
  padding: 0.875rem 0;
  border-bottom: 1px solid var(--line-color);
  min-width: 0;
}
.listing_detail_typ_1 .ld-params dt {
  font-size: 0.8125rem;
  font-weight: 400;
  color: var(--mute);
  margin-bottom: 0.125rem;
}
.listing_detail_typ_1 .ld-params dd {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: var(--ink);
  overflow-wrap: anywhere;
}
.listing_detail_typ_1 .ld-compass-row {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.listing_detail_typ_1 .ld-compass {
  width: 3rem;
  height: 3rem;
}
.listing_detail_typ_1 .ld-compass__bg {
  fill: var(--cream);
}
.listing_detail_typ_1 .ld-compass__on {
  fill: var(--purple-200);
}
.listing_detail_typ_1 .ld-compass__ring {
  fill: none;
  stroke: var(--line-color);
}
.listing_detail_typ_1 .ld-compass text {
  font-size: 7.5px;
  dominant-baseline: middle;
  font-weight: 700;
  fill: var(--first-color);
  text-anchor: middle;
  font-family: var(--second-font);
}
.listing_detail_typ_1 .ld-energy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 1.625rem;
  padding: 0 0.5rem;
  border-radius: var(--radius-badge);
  color: #fff;
  font-weight: 800;
}
.listing_detail_typ_1 .ld-energy.is-a {
  background: #2E8B5C;
}
.listing_detail_typ_1 .ld-energy.is-b {
  background: #6FB36A;
}
.listing_detail_typ_1 .ld-energy.is-c {
  background: #8f9a2c;
}
.listing_detail_typ_1 .ld-energy.is-d {
  background: #b38a12;
}
.listing_detail_typ_1 .ld-energy.is-e {
  background: #c4740f;
}
.listing_detail_typ_1 .ld-energy.is-f {
  background: #c45a1f;
}
.listing_detail_typ_1 .ld-energy.is-g {
  background: #CC4B37;
}
.listing_detail_typ_1 .ld-features-h {
  margin-top: 1.5rem;
}
.listing_detail_typ_1 .ld-features {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.listing_detail_typ_1 .ld-features li {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.75rem;
  border-radius: var(--radius-badge);
  background: var(--cream);
  font-size: 0.875rem;
  color: var(--ink);
}
.listing_detail_typ_1 .ld-features .i {
  width: 1rem;
  height: 1rem;
  color: var(--accent-text);
}
.listing_detail_typ_1 .ld-features li.is-no {
  background: none;
  box-shadow: inset 0 0 0 1px var(--line-color);
  color: var(--mute);
  text-decoration: line-through;
}
.listing_detail_typ_1 .ld-features li.is-no .i {
  color: var(--mute);
}
.listing_detail_typ_1 .ld-icons {
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
  gap: 0.75rem;
}
.listing_detail_typ_1 .ld-icons:last-child {
  margin-bottom: 0;
}
.listing_detail_typ_1 .ld-icons li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 0.875rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--ink);
}
.listing_detail_typ_1 .ld-icons__ic {
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--green-50);
  color: var(--accent-text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.listing_detail_typ_1 .ld-icons__ic .i {
  width: 1.375rem;
  height: 1.375rem;
}
.listing_detail_typ_1 .ld-plans {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
  gap: 0.75rem;
}
.listing_detail_typ_1 .ld-plans img {
  width: 100%;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
}
.listing_detail_typ_1 .ld-tour {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream-2);
}
.listing_detail_typ_1 .ld-tour iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.listing_detail_typ_1 .ld-tour__cover {
  position: absolute;
  inset: 0;
  border: 0;
  padding: 0;
  cursor: pointer;
  background: none;
}
.listing_detail_typ_1 .ld-tour__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.7);
}
.listing_detail_typ_1 .ld-tour__play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  height: var(--control-h-m);
  padding: 0 1.25rem;
  border-radius: var(--radius-sm);
  background: var(--btn-first-bg);
  color: var(--btn-first-color);
  font-weight: 700;
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-tour__cover:hover .ld-tour__play {
  background: var(--btn-first-bg-hover);
}
.listing_detail_typ_1 .ld-map {
  height: 22rem;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream-2);
  z-index: 0;
}
.listing_detail_typ_1 .ld-map__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.875rem;
}
.listing_detail_typ_1 .ld-mcard {
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  background: var(--white-color);
  padding: 1.5rem 1.75rem;
  /* hlavička v ľavom stĺpci nad posuvníkmi (karta so splátkou vpravo od vrchu, Jozef 13. 11.) */
  /* partner: „V spolupráci s" + logo (alebo názov) vpravo hore */
  /* banner partnera pod výpočtom: obrázok na celú šírku alebo riadok s textom */
}
.listing_detail_typ_1 .ld-mcard__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem 1.5rem;
}
.listing_detail_typ_1 .ld-mcard__head .ld-h2 {
  margin: 0 0 0.25rem;
}
.listing_detail_typ_1 .ld-mcard__price {
  margin: 0;
  font-size: 0.9375rem;
  color: var(--warm);
}
.listing_detail_typ_1 .ld-mcard__price b {
  color: var(--ink);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-mcard__partner {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.25rem;
  flex-shrink: 0;
  text-decoration: none;
}
.listing_detail_typ_1 .ld-mcard__partner small {
  font-size: 0.75rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-mcard__partner img {
  max-width: 9rem;
  max-height: 2.5rem;
  object-fit: contain;
  object-position: right center;
}
.listing_detail_typ_1 .ld-mcard__partner b {
  color: var(--first-color);
  font-weight: 700;
}
.listing_detail_typ_1 .ld-mcard__banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.5rem;
  border-radius: var(--radius-sm);
  overflow: hidden;
  text-decoration: none;
}
.listing_detail_typ_1 .ld-mcard__banner img {
  display: block;
  width: 100%;
  height: auto;
}
.listing_detail_typ_1 .ld-mcard__banner > span:not(.i) {
  font-weight: 600;
  color: var(--first-color);
}
.listing_detail_typ_1 .ld-mcard__banner:has(> span) {
  padding: 0.875rem 1.125rem;
  background: var(--cream);
}
.listing_detail_typ_1 .ld-mcard__fine {
  margin: 1.25rem 0 0;
}
.listing_detail_typ_1 .ld-mortgage {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 20rem);
  gap: 1.5rem 2rem;
  align-items: stretch;
}
.listing_detail_typ_1 .ld-mortgage__inputs {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.listing_detail_typ_1 .ld-mortgage__note {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
  margin: auto 0 0;
  font-size: 0.875rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-mortgage__note b {
  color: var(--ink);
  font-weight: 600;
}
.listing_detail_typ_1 .ld-mortgage__note .i {
  width: 1rem;
  height: 1rem;
  margin-top: 0.1875rem;
  color: var(--first-color);
}
.listing_detail_typ_1 .ld-mortgage__out {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 1.25rem 1.5rem;
  border-radius: var(--radius-md);
  background: var(--cream);
}
.listing_detail_typ_1 .ld-mortgage__lbl {
  font-size: 0.875rem;
  color: var(--warm);
}
.listing_detail_typ_1 .ld-mortgage__val {
  font-family: var(--first-font);
  font-size: 2.25rem;
  font-weight: 800;
  color: var(--first-color);
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
}
.listing_detail_typ_1 .ld-mortgage__rows {
  margin: 0.75rem 0 0;
  display: flex;
  flex-direction: column;
}
.listing_detail_typ_1 .ld-mortgage__rows > div {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.5rem 0;
  border-top: 1px solid rgba(76, 14, 101, 0.1);
}
.listing_detail_typ_1 .ld-mortgage__rows dt {
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--warm);
}
.listing_detail_typ_1 .ld-mortgage__rows dd {
  margin: 0;
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-mortgage__cta {
  margin-top: 1rem;
  width: 100%;
  justify-content: center;
}
.listing_detail_typ_1 .ld-mortgage__more {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  align-self: center;
  margin-top: 0.75rem;
  font-size: 0.875rem;
}
.listing_detail_typ_1 .ld-mrange__top {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
}
.listing_detail_typ_1 .ld-mrange__top label {
  margin: 0;
  font-weight: 500;
  font-size: 0.9375rem;
  color: var(--warm);
}
.listing_detail_typ_1 .ld-mrange__top b {
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.125rem;
  color: var(--first-color);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-mrange .pd-mort-range {
  margin-top: 0.5rem;
}
.listing_detail_typ_1 .ld-mrange__scale {
  display: flex;
  justify-content: space-between;
  font-size: 0.75rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-form {
  /* odstup od polí pod rýchlymi otázkami (Jozef 12. 11.) */
}
.listing_detail_typ_1 .ld-form__quick {
  margin-bottom: 0.75rem;
}
.listing_detail_typ_1 .ld-form__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 1rem;
}
.listing_detail_typ_1 .ld-form .field {
  margin-top: 1rem;
}
.listing_detail_typ_1 .ld-form__msg {
  min-height: 7rem;
  resize: vertical;
}
.listing_detail_typ_1 .ld-form__foot {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  margin-top: 1rem;
}
.listing_detail_typ_1 .ld-form__foot .ld-fine {
  margin: 0;
  max-width: 28rem;
}
.listing_detail_typ_1 .ld-form .la-opt {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-form .la-err {
  display: flex;
  gap: 0.375rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-error);
}
.listing_detail_typ_1 .ld-form .la-err .i {
  width: 1rem;
  height: 1rem;
}
.listing_detail_typ_1 .ld-form .is-error .input-wrap,
.listing_detail_typ_1 .ld-form .is-error > .fb-input {
  border-color: var(--color-error);
}
.listing_detail_typ_1 .ld-sent {
  display: flex;
  gap: 0.875rem;
  padding: 1.25rem;
  border-radius: var(--radius-sm);
  background: var(--color-success-bg);
  color: var(--ink);
}
.listing_detail_typ_1 .ld-sent__ic .i {
  width: 1.75rem;
  height: 1.75rem;
  color: var(--color-success);
}
.listing_detail_typ_1 .ld-sent__next {
  margin-top: 0.5rem;
  font-size: 0.875rem;
}
.listing_detail_typ_1 .ld-sent__next .btn-link {
  padding: 0;
  border: 0;
  background: none;
}
.listing_detail_typ_1 .ld-metarow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1rem;
  padding: 1.5rem 0 0.5rem;
  border-top: 1px solid var(--line-color);
}
.listing_detail_typ_1 .ld-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-meta span + span::before {
  content: '·';
  margin: 0 0.5rem;
}
.listing_detail_typ_1 .ld-meta span:first-child {
  font-weight: 600;
  color: var(--warm);
}
.listing_detail_typ_1 .ld-side {
  position: sticky;
  top: calc(4.5rem + 1.5rem);
}
.listing_detail_typ_1 .ld-card {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  padding: 1.75rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: 1.25rem;
  box-shadow: 0 1.25rem 2.5rem -1.5rem rgba(29, 16, 41, 0.25);
}
.listing_detail_typ_1 .ld-card .ld-price {
  padding-bottom: 1.25rem;
  margin-bottom: 0.25rem;
  border-bottom: 1px solid var(--line-color);
}
.listing_detail_typ_1 .ld-card .btn {
  width: 100%;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.listing_detail_typ_1 .ld-card .ld-fine {
  margin: 0;
  text-align: center;
}
.listing_detail_typ_1 .ld-who {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 0.75rem 0.875rem;
}
.listing_detail_typ_1 .ld-who > div {
  min-width: 0;
}
.listing_detail_typ_1 .ld-who b {
  display: block;
  color: var(--ink);
  line-height: 1.3;
}
.listing_detail_typ_1 .ld-who > div > span {
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-who__avatar {
  position: relative;
  width: 3.5rem;
  height: 3.5rem;
  flex-shrink: 0;
  border-radius: 50%;
  overflow: hidden;
  background: var(--purple-50);
  color: var(--first-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.25rem;
  letter-spacing: 0.02em;
  /* fotka leží na iniciálach - keď sa nenačíta (onerror ju zmaže), ostanú iniciály */
}
.listing_detail_typ_1 .ld-who__avatar img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: var(--purple-50);
}
.listing_detail_typ_1 .ld-who.is-logo .ld-who__avatar {
  width: 5.5rem;
  height: 3.5rem;
  border-radius: var(--radius-sm);
  background: var(--white-color);
  border: 1px solid var(--line-color);
  padding: 0.375rem;
}
.listing_detail_typ_1 .ld-who.is-logo .ld-who__avatar img {
  position: static;
  object-fit: contain;
  background: none;
}
.listing_detail_typ_1 .ld-agency {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  color: inherit;
  text-decoration: none;
}
.listing_detail_typ_1 .ld-agency__logo {
  width: 4.5rem;
  height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  background: var(--white-color);
  color: var(--first-color);
  /* ikona budovy len bez loga */
}
.listing_detail_typ_1 .ld-agency__logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.listing_detail_typ_1 .ld-agency__logo img ~ .i {
  display: none;
}
.listing_detail_typ_1 .ld-agency__logo:not(.is-empty):has(img) {
  padding: 0.125rem;
}
.listing_detail_typ_1 .ld-agency__txt {
  min-width: 0;
}
.listing_detail_typ_1 .ld-agency__txt b {
  display: block;
  color: var(--ink);
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.listing_detail_typ_1 .ld-agency__txt small {
  font-size: 0.8125rem;
  color: var(--mute);
}
.listing_detail_typ_1 .ld-agency > .i {
  color: var(--mute);
}
.listing_detail_typ_1 a.ld-agency:hover .ld-agency__txt b {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.listing_detail_typ_1 .ld-phone {
  font-variant-numeric: tabular-nums;
  width: 100%;
  justify-content: center;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.listing_detail_typ_1 .ld-similar {
  margin-top: 4rem;
  padding-top: 3rem;
  border-top: 1px solid var(--line-color);
  scroll-margin-top: calc(4.5rem + 4.5rem);
  /* karty výpisu (ls-card) - obal .listing_search_typ_1 len kvôli ich štýlom, bez odsadenia sekcie */
}
.listing_detail_typ_1 .ld-similar__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-bottom: 1rem;
}
.listing_detail_typ_1 .ld-similar__head .ld-h2 {
  margin: 0;
}
.listing_detail_typ_1 .ld-similar__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  padding: 0;
}
.listing_detail_typ_1 .ld-similar__grid > * {
  min-width: 0;
}
.listing_detail_typ_1 .ld-similar__cards.listing_search_typ_1 {
  padding: 0;
}
.listing_detail_typ_1 .ld-crumbs {
  margin-top: 3rem;
}
.listing_detail_typ_1 .ld-crumbs .breadcrumb {
  margin: 0;
  font-size: 0.8125rem;
  flex-wrap: wrap;
  row-gap: 0.25rem;
}
.listing_detail_typ_1 .ld-crumbs .breadcrumb-item,
.listing_detail_typ_1 .ld-crumbs .breadcrumb-item a {
  color: var(--mute);
}
.listing_detail_typ_1 .ld-crumbs .breadcrumb-item a:hover {
  color: var(--first-color);
}
.listing_detail_typ_1 .ld-crumbs .breadcrumb-item.active {
  color: var(--ink);
}
.listing_detail_typ_1 .ld-bar {
  display: none;
}
.listing_detail_typ_1 .ld-lightbox {
  position: fixed;
  inset: 0;
  z-index: 2000;
  background: #140b1c;
  display: flex;
  flex-direction: column;
  /* mobil: 3D / video od okraja po okraj (celá obrazovka) */
}
.listing_detail_typ_1 .ld-lightbox__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 1rem;
  color: var(--white-color);
}
.listing_detail_typ_1 .ld-lightbox__count {
  margin-right: auto;
  margin-left: 0.5rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.listing_detail_typ_1 .ld-lightbox__grid {
  flex: 1;
  overflow-y: auto;
  padding: 0 1rem 1rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
  gap: 0.5rem;
  align-content: start;
  /* pomer strán nesie OBRÁZOK, nie tlačidlo - dlaždica s aspect-ratio v mriežke s pevnou výškou nemala vlastnú
         výšku, riadky sa stlačili na 40 px a fotky sa prekrývali (overené 7. 11. na 390 px) */
  grid-auto-rows: max-content;
}
.listing_detail_typ_1 .ld-lightbox__grid button {
  display: block;
  width: 100%;
  border: 0;
  padding: 0;
  background: none;
  cursor: zoom-in;
}
.listing_detail_typ_1 .ld-lightbox__grid img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-sm);
}
.listing_detail_typ_1 .ld-lightbox__photo {
  flex: 1;
  min-height: 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4rem 1rem;
}
.listing_detail_typ_1 .ld-lightbox__photo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.listing_detail_typ_1 .ld-lightbox__prev,
.listing_detail_typ_1 .ld-lightbox__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.listing_detail_typ_1 .ld-lightbox__prev {
  left: 1rem;
}
.listing_detail_typ_1 .ld-lightbox__next {
  right: 1rem;
}
.listing_detail_typ_1 .ld-lightbox__frame {
  flex: 1;
  padding: 0 1rem 1rem;
}
.listing_detail_typ_1 .ld-lightbox__frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: var(--radius-sm);
  background: #000;
}
@media (max-width: 61.25rem) {
  .listing_detail_typ_1 .ld-lightbox.is-media .ld-lightbox__head {
    padding: 0.5rem 0.75rem;
  }
  .listing_detail_typ_1 .ld-lightbox.is-media .ld-lightbox__frame {
    padding: 0;
  }
  .listing_detail_typ_1 .ld-lightbox.is-media .ld-lightbox__frame iframe {
    border-radius: 0;
  }
}
.listing_detail_typ_1 .ld-toast {
  position: fixed;
  left: 50%;
  bottom: 1.5rem;
  transform: translateX(-50%);
  z-index: 2100;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.75rem 1.125rem;
  border-radius: var(--radius-sm);
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: var(--shadow-card-2);
}
.listing_detail_typ_1 .ld-toast .i {
  color: var(--accent-color);
}
@media (max-width: 75rem) {
  .listing_detail_typ_1 .ld-similar__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .listing_detail_typ_1 .ld-body {
    grid-template-columns: minmax(0, 1fr) 20rem;
    gap: 2.5rem;
  }
}
@media (max-width: 61.9375rem) {
  .listing_detail_typ_1 .ld-body {
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_detail_typ_1 .ld-side {
    display: none;
  }
  .listing_detail_typ_1 .ld-only-s {
    display: flex !important;
  }
  .listing_detail_typ_1 span.ld-only-s {
    display: inline !important;
  }
  .listing_detail_typ_1 .ld-head .ld-price {
    flex-direction: row;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.25rem 0.75rem;
    margin-top: 1rem;
  }
  .listing_detail_typ_1 .ld-form__who {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
    margin-bottom: 1rem;
    padding: 1rem;
    border-radius: 1rem;
    background: var(--cream);
  }
  .listing_detail_typ_1 .ld-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_detail_typ_1 .ld-params {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 1.25rem;
  }
}
@media (max-width: 47.9375rem) {
  .listing_detail_typ_1 {
    padding-top: 0;
    padding-bottom: 5.5rem;
    /* miesto pre lištu dole */
    /* fotka na celú šírku hneď pod hlavičkou webu, tlačidlá na nej */
    /* obsah ako list so zaoblením, ktorý prekrýva spodok fotky */
    /* kľúčové údaje: dlaždice 2 × 2 */
    /* sekcie oddelené pásom na celú šírku (ako v aplikácii), nie čiarou */
    /* hlavička sa pri posune dole schová (html.head-hidden, --bydo-head-h) - lišta ide s ňou hore k okraju (Jozef 7. 11.) */
    /* podobné: vodorovné posúvanie, vidno kúsok ďalšej karty - 4 karty pod sebou boli na mobile príliš dlhé */
  }
  .listing_detail_typ_1 .ld-gallery {
    display: block;
    aspect-ratio: auto;
    max-height: none;
    margin: 0 calc(50% - 50vw);
    /* po okraj displeja bez ohľadu na vnútorný okraj kontajnera */
    border-radius: 0;
    /* šírka z okrajov (nie 100 % z PC - s okrajmi pretekala, pruh vpravo) a pomer z fotky, nie z počtu (is-n3 2:1 rezal fotku) */
    /* vyššia úvodná fotka (Jozef 7. 11.) - 4:5, na nízkom displeji najviac 70 % výšky */
    /* najviac toľko, aby pod fotkou ostali štítky a dvojriadkový názov nad spodnou lištou (Jozef 13. 11., Xiaomi 14):
         hlavička ~4,5 + štítky a názov ~11 + lišta ~5,5 rem; najmenej 15rem */
    /* nad zaoblením listu */
  }
  .listing_detail_typ_1 .ld-gallery,
  .listing_detail_typ_1 .ld-gallery[class*="is-n"] {
    width: auto;
    aspect-ratio: auto;
  }
  .listing_detail_typ_1 .ld-gallery__main {
    aspect-ratio: 4 / 5;
    max-height: 70vh;
    max-height: max(15rem, calc(100svh - 21rem));
    width: 100%;
  }
  .listing_detail_typ_1 .ld-gallery.is-n0 .ld-gallery__main {
    aspect-ratio: 16 / 9;
  }
  .listing_detail_typ_1 .ld-gallery__thumb {
    display: none;
  }
  .listing_detail_typ_1 .ld-gallery__back {
    top: 0.875rem;
    left: 0.875rem;
  }
  .listing_detail_typ_1 .ld-gallery__tools {
    top: 0.875rem;
    right: 0.875rem;
  }
  .listing_detail_typ_1 .ld-gallery__btns {
    right: 0.875rem;
    bottom: 2rem;
  }
  .listing_detail_typ_1 .ld-round {
    width: 2.5rem;
    height: 2.5rem;
  }
  .listing_detail_typ_1 .ld-chip-btn {
    height: 2rem;
    padding: 0 0.75rem;
    border-radius: 2rem;
    background: rgba(29, 16, 41, 0.62);
    color: var(--white-color);
    box-shadow: none;
    backdrop-filter: blur(6px);
  }
  .listing_detail_typ_1 .ld-chip-btn:hover {
    background: rgba(29, 16, 41, 0.72);
  }
  .listing_detail_typ_1 .ld-chip-btn.is-accent {
    background: var(--btn-first-bg);
    color: var(--btn-first-color);
  }
  .listing_detail_typ_1 .ld-hide-s {
    display: none;
  }
  .listing_detail_typ_1 .ld-body {
    position: relative;
    margin: -1.25rem calc(50% - 50vw) 0;
    padding: 1.5rem var(--page-x) 0;
    background: var(--white-color);
    border-radius: 1.5rem 1.5rem 0 0;
    gap: 0;
  }
  .listing_detail_typ_1 .ld-head {
    margin-bottom: 1.25rem;
  }
  .listing_detail_typ_1 .ld-title {
    font-size: 1.625rem;
    line-height: 1.2;
  }
  .listing_detail_typ_1 .ld-loc {
    font-size: 0.9375rem;
  }
  .listing_detail_typ_1 .ld-price__val {
    font-size: 1.875rem;
  }
  .listing_detail_typ_1 .ld-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.625rem;
    padding: 0 0 1.5rem;
    border-top: 0;
  }
  .listing_detail_typ_1 .ld-facts li {
    padding: 0.875rem;
    gap: 0.625rem;
    border-radius: 1rem;
    background: var(--cream);
  }
  .listing_detail_typ_1 .ld-facts b {
    font-size: 1.125rem;
  }
  .listing_detail_typ_1 .ld-facts__ic {
    width: 2.25rem;
    height: 2.25rem;
    background: var(--white-color);
  }
  .listing_detail_typ_1 .ld-facts__ic .i {
    width: 1.125rem;
    height: 1.125rem;
  }
  .listing_detail_typ_1 .ld-block,
  .listing_detail_typ_1 .ld-tabs + .ld-block {
    padding: 1.75rem 0;
    border-top: 0.5rem solid var(--cream);
    margin: 0 calc(var(--page-x) * -1);
    padding-left: var(--page-x);
    padding-right: var(--page-x);
  }
  .listing_detail_typ_1 .ld-h2 {
    font-size: 1.375rem;
    margin-bottom: 1rem;
  }
  .listing_detail_typ_1 .ld-desc {
    font-size: 1rem;
  }
  .listing_detail_typ_1 .ld-tabs {
    margin: 0 calc(var(--page-x) * -1);
    padding: 0 var(--page-x);
    border-top: 0;
    top: var(--bydo-head-h, 4.5rem);
    transition: top 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.2s ease;
  }
  .listing_detail_typ_1 .ld-tabs__nav {
    gap: 1.5rem;
  }
  .listing_detail_typ_1 .ld-tabs__nav a {
    height: 3rem;
    font-size: 0.875rem;
  }
  .listing_detail_typ_1 .ld-tabs + .ld-block {
    border-top-width: 0;
  }
  .listing_detail_typ_1 .ld-metarow {
    flex-wrap: nowrap;
    border-top: 0;
    padding: 1.25rem 0 1.5rem;
  }
  .listing_detail_typ_1 .ld-meta {
    flex-direction: column;
    align-items: flex-start;
    font-size: 0.75rem;
  }
  .listing_detail_typ_1 .ld-meta span + span::before {
    content: none;
  }
  .listing_detail_typ_1 .ld-mcard {
    padding: 1.25rem 1rem;
  }
  .listing_detail_typ_1 .ld-mcard__head {
    flex-direction: column;
  }
  .listing_detail_typ_1 .ld-mcard__partner {
    align-items: flex-start;
  }
  .listing_detail_typ_1 .ld-mcard__partner img {
    object-position: left center;
  }
  .listing_detail_typ_1 .ld-mortgage {
    grid-template-columns: minmax(0, 1fr);
  }
  .listing_detail_typ_1 .ld-mortgage__inputs {
    gap: 1.5rem;
  }
  .listing_detail_typ_1 .ld-mortgage__out {
    padding: 1.25rem;
  }
  .listing_detail_typ_1 .ld-form__foot {
    flex-direction: column;
    align-items: stretch;
  }
  .listing_detail_typ_1 .ld-form__foot .btn {
    justify-content: center;
  }
  .listing_detail_typ_1 .ld-similar {
    margin-top: 0;
    padding-top: 1.75rem;
    border-top: 0.5rem solid var(--cream);
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: var(--page-x);
    padding-right: var(--page-x);
  }
  .listing_detail_typ_1 .ld-crumbs {
    margin-top: 2rem;
  }
  .listing_detail_typ_1 .ld-similar__grid {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding: 0 var(--page-x);
    /* bez toho snap prilepil prvú kartu k okraju displeja (okraj chýbal) */
    scrollbar-width: none;
    gap: 0.75rem;
    margin: 0 calc(var(--page-x) * -1);
    padding: 0 var(--page-x) 0.25rem;
  }
  .listing_detail_typ_1 .ld-similar__grid::-webkit-scrollbar {
    display: none;
  }
  .listing_detail_typ_1 .ld-similar__grid > * {
    flex: 0 0 80%;
    scroll-snap-align: start;
  }
  .listing_detail_typ_1 .ld-lightbox__photo {
    padding: 0 0 1rem;
  }
  .listing_detail_typ_1 .ld-lightbox__prev,
  .listing_detail_typ_1 .ld-lightbox__next {
    display: none;
  }
  .listing_detail_typ_1 .ld-lightbox__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .listing_detail_typ_1 .ld-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    /* Jozef 12. 11.: väčšia cena a viac vzduchu od okrajov; tlačidlá 44 px na ťuknutie */
    padding: 0.875rem 1.25rem calc(0.875rem + env(safe-area-inset-bottom));
    background: var(--white-color);
    border-top: 1px solid var(--line-color);
    box-shadow: 0 -4px 16px rgba(28, 28, 26, 0.08);
    /* úzky mobil: Zavolať len ikonou, nech sa cena nezalomí */
  }
  .listing_detail_typ_1 .ld-bar__price {
    margin-right: auto;
    min-width: 0;
  }
  .listing_detail_typ_1 .ld-bar__price b {
    display: block;
    font-family: var(--first-font);
    font-size: 1.375rem;
    font-weight: 800;
    line-height: 1.15;
    color: var(--first-color);
    white-space: nowrap;
  }
  .listing_detail_typ_1 .ld-bar__price small {
    display: block;
    margin-top: 0.125rem;
    font-size: 0.75rem;
    color: var(--mute);
    white-space: nowrap;
  }
  .listing_detail_typ_1 .ld-bar .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    height: 2.75rem;
    padding: 0 1rem;
  }
}
@media (max-width: 47.9375rem) and (max-width: 23.4375rem) {
  .listing_detail_typ_1 .ld-bar .btn-second {
    width: 2.75rem;
    padding: 0;
  }
  .listing_detail_typ_1 .ld-bar .btn-second span:not(.i) {
    display: none;
  }
}
/* bod na mape detailu - domček v kruhu (bydo fialová) */
.ld-pin {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--first-color);
  color: var(--white-color);
  border: 3px solid var(--white-color);
  box-shadow: 0 2px 8px rgba(28, 28, 26, 0.3);
  transform: translate(-50%, -50%);
}
.ld-pin svg {
  width: 1.25rem;
  height: 1.25rem;
}
/* Nahlásiť inzerát (_listing_report.php, Jozef 12. 11.) - nenápadný odkaz pod ID, panel = bydo-sheet z hlavičky */
.ld-report {
  flex-shrink: 0;
}
.ld-report__kratky {
  display: none;
}
@media (max-width: 47.9375rem) {
  .ld-report__dlhy {
    display: none;
  }
  .ld-report__kratky {
    display: inline;
  }
}
/* sivé tlačidlo-pilulka (Jozef 12. 11.: zvýrazniť, ale nie ako hlavná akcia) */
.ld-report__link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5625rem 1rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-badge);
  background: var(--cream);
  font: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--warm);
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease;
}
.ld-report__link .i {
  width: 1.0625rem;
  height: 1.0625rem;
  color: var(--mute);
}
.ld-report__link:hover {
  border-color: var(--purple-100);
  color: var(--first-color);
}
.ld-report__link:hover .i {
  color: var(--first-color);
}
.ld-report__sheet {
  text-align: left;
}
.ld-report__why {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1.25rem;
}
.ld-report__field {
  display: block;
  margin: 0 0 1rem;
}
.ld-report__field > span {
  display: block;
  margin-bottom: 0.375rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--ink);
}
.ld-report__field small {
  font-weight: 500;
  color: var(--mute);
}
.ld-report__field textarea {
  resize: vertical;
  min-height: 5.5rem;
}
.ld-report__captcha:empty {
  display: none;
}
.ld-report__captcha {
  margin: 0 0 1rem;
}
.ld-report__err {
  margin: 0 0 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-danger, #B3261E);
}
.ld-report__done {
  text-align: center;
}
.ld-report__done .bydo-sheet__act {
  justify-content: center;
}
.ld-report__ic {
  display: inline-flex;
  margin-bottom: 0.5rem;
}
.ld-report__ic .i {
  width: 2.75rem;
  height: 2.75rem;
  color: var(--color-success);
}
/* ---------------------------------------------------------------------------
   agency_profile_typ_1 - profil realitnej kancelárie (bydo). Hlavička firmy (logo celé v obdĺžniku ako
   v kontakte detailu, názov, sídlo, otvorené teraz, čísla, telefón po kliknutí), lepkavé kotvy (ako detail),
   ponuky s pilulkami operácie a druhu (karta a stránkovač 1b bez zmeny), o realitke + pôsobnosť v okresoch,
   makléri (fotka/iniciály, prvých 8 + hľadanie), kontakt (mapa sídla, otváracie hodiny, správa), lišta na mobile.
   Recenzie (rv-*): súhrn bydo + karty, Google oddelene, formulár s hviezdami.
   Pobočky (br-*): zoznam + mapa všetkých pobočiek, filter maklérov podľa pobočky (len realitka s pobočkami).
   Bloky bez dát sa nevykreslia (rozhoduje šablóna, nie CSS).
   Stránka makléra (broker_profile_typ_1) používa tie isté bloky ap-* / rv-*, vlastné veci má v _broker_profile_typ_1.less.
   --------------------------------------------------------------------------- */
.agency_profile_typ_1,
.broker_profile_typ_1,
.agency_list_typ_1 {
  padding: 1.25rem 0 3rem;
  /* ---- hlavička ---- */
  /* ---- kotvy (lepkavé) - rovnaké ako detail inzerátu ---- */
  /* ---- bloky ---- */
  /* ---- ponuky ---- */
  /* ---- o realitke ---- */
  /* ---- hodnotenie v hlavičke: bydo a Google vedľa seba, nikdy jedno číslo ---- */
  /* ---- recenzie ---- */
  /* Google: vlastný rámik, logo, menšie karty v rade - je zrejmé, že nie sú z bydo */
  /* ---- pobočky ---- */
  /* ---- makléri ---- */
  /* ---- kontakt ---- */
  /* ---- tablet ---- */
  /* ---- mobil ---- */
}
.agency_profile_typ_1 .i,
.broker_profile_typ_1 .i,
.agency_list_typ_1 .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.agency_profile_typ_1 .i svg,
.broker_profile_typ_1 .i svg,
.agency_list_typ_1 .i svg {
  width: 100%;
  height: 100%;
}
.agency_profile_typ_1 .ap-crumbs,
.broker_profile_typ_1 .ap-crumbs,
.agency_list_typ_1 .ap-crumbs {
  margin: 0 0 1rem;
}
.agency_profile_typ_1 .ap-head,
.broker_profile_typ_1 .ap-head,
.agency_list_typ_1 .ap-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 1.5rem 2rem;
  align-items: center;
  padding: 1.75rem;
  margin-bottom: 1.25rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.agency_profile_typ_1 .ap-head__logo,
.broker_profile_typ_1 .ap-head__logo,
.agency_list_typ_1 .ap-head__logo {
  width: 10rem;
  height: 6.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.agency_profile_typ_1 .ap-head__logo img,
.broker_profile_typ_1 .ap-head__logo img,
.agency_list_typ_1 .ap-head__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.agency_profile_typ_1 .ap-head__logo.is-initials,
.broker_profile_typ_1 .ap-head__logo.is-initials,
.agency_list_typ_1 .ap-head__logo.is-initials {
  width: 6.5rem;
  border-radius: 50%;
  border: 0;
  background: var(--purple-50);
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 2rem;
  letter-spacing: 0.02em;
}
.agency_profile_typ_1 .ap-head__main,
.broker_profile_typ_1 .ap-head__main,
.agency_list_typ_1 .ap-head__main {
  min-width: 0;
}
.agency_profile_typ_1 .ap-head__actions,
.broker_profile_typ_1 .ap-head__actions,
.agency_list_typ_1 .ap-head__actions {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  min-width: 15rem;
}
.agency_profile_typ_1 .ap-head__actions .btn,
.broker_profile_typ_1 .ap-head__actions .btn,
.agency_list_typ_1 .ap-head__actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.agency_profile_typ_1 .ap-head__links,
.broker_profile_typ_1 .ap-head__links,
.agency_list_typ_1 .ap-head__links {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.25rem 1.25rem;
  margin-top: 0.125rem;
}
.agency_profile_typ_1 .ap-head__links .btn-link,
.broker_profile_typ_1 .ap-head__links .btn-link,
.agency_list_typ_1 .ap-head__links .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.agency_profile_typ_1 .ap-phone,
.broker_profile_typ_1 .ap-phone,
.agency_list_typ_1 .ap-phone {
  font-variant-numeric: tabular-nums;
}
.agency_profile_typ_1 .ap-tags,
.broker_profile_typ_1 .ap-tags,
.agency_list_typ_1 .ap-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  margin-bottom: 0.5rem;
}
.agency_profile_typ_1 .ap-tag,
.broker_profile_typ_1 .ap-tag,
.agency_list_typ_1 .ap-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  height: 1.625rem;
  padding: 0 0.625rem;
  border-radius: var(--radius-badge);
  background: var(--cream);
  color: var(--warm);
  font-size: 0.75rem;
  font-weight: 600;
}
.agency_profile_typ_1 .ap-tag .i,
.broker_profile_typ_1 .ap-tag .i,
.agency_list_typ_1 .ap-tag .i {
  width: 1rem;
  height: 1rem;
}
.agency_profile_typ_1 .ap-tag.is-ok,
.broker_profile_typ_1 .ap-tag.is-ok,
.agency_list_typ_1 .ap-tag.is-ok {
  background: var(--green-50);
  color: var(--accent-text);
}
.agency_profile_typ_1 .ap-title,
.broker_profile_typ_1 .ap-title,
.agency_list_typ_1 .ap-title {
  font-family: var(--first-font);
  font-size: var(--h2);
  line-height: var(--h2-lh);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.5rem;
}
.agency_profile_typ_1 .ap-loc,
.broker_profile_typ_1 .ap-loc,
.agency_list_typ_1 .ap-loc {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem 1.25rem;
  margin: 0 0 0.875rem;
  color: var(--warm);
}
.agency_profile_typ_1 .ap-loc > span,
.broker_profile_typ_1 .ap-loc > span,
.agency_list_typ_1 .ap-loc > span {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .ap-loc > span > .i,
.broker_profile_typ_1 .ap-loc > span > .i,
.agency_list_typ_1 .ap-loc > span > .i {
  color: var(--accent-text);
}
.agency_profile_typ_1 .ap-open,
.broker_profile_typ_1 .ap-open,
.agency_list_typ_1 .ap-open {
  font-weight: 600;
}
.agency_profile_typ_1 .ap-open.is-open,
.broker_profile_typ_1 .ap-open.is-open,
.agency_list_typ_1 .ap-open.is-open {
  color: var(--accent-text);
}
.agency_profile_typ_1 .ap-open.is-closed,
.broker_profile_typ_1 .ap-open.is-closed,
.agency_list_typ_1 .ap-open.is-closed {
  color: var(--mute);
}
.agency_profile_typ_1 .ap-open.is-closed .i,
.broker_profile_typ_1 .ap-open.is-closed .i,
.agency_list_typ_1 .ap-open.is-closed .i {
  color: var(--mute);
}
.agency_profile_typ_1 .ap-stats,
.broker_profile_typ_1 .ap-stats,
.agency_list_typ_1 .ap-stats {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0;
  margin: 0;
  padding: 0;
  color: var(--mute);
  font-size: 0.9375rem;
}
.agency_profile_typ_1 .ap-stats li + li::before,
.broker_profile_typ_1 .ap-stats li + li::before,
.agency_list_typ_1 .ap-stats li + li::before {
  content: '·';
  margin: 0 0.625rem;
}
.agency_profile_typ_1 .ap-stats b,
.broker_profile_typ_1 .ap-stats b,
.agency_list_typ_1 .ap-stats b {
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.125rem;
  color: var(--first-color);
}
.agency_profile_typ_1 .ap-tabs-sentinel,
.broker_profile_typ_1 .ap-tabs-sentinel,
.agency_list_typ_1 .ap-tabs-sentinel {
  height: 1px;
  margin-bottom: -1px;
}
.agency_profile_typ_1 .ap-tabs,
.broker_profile_typ_1 .ap-tabs,
.agency_list_typ_1 .ap-tabs {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0 0 1.25rem;
  padding: 0 1rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  transition: box-shadow 0.2s ease, border-radius 0.2s ease;
}
.agency_profile_typ_1 .ap-tabs.is-stuck,
.broker_profile_typ_1 .ap-tabs.is-stuck,
.agency_list_typ_1 .ap-tabs.is-stuck {
  border-radius: 0 0 var(--radius-md) var(--radius-md);
  border-top-color: transparent;
  box-shadow: 0 0.5rem 1.5rem -0.75rem rgba(29, 16, 41, 0.25);
}
.agency_profile_typ_1 .ap-tabs__nav,
.broker_profile_typ_1 .ap-tabs__nav,
.agency_list_typ_1 .ap-tabs__nav {
  flex: 1;
  min-width: 0;
  display: flex;
  gap: 1.5rem;
  overflow-x: auto;
  scrollbar-width: none;
}
.agency_profile_typ_1 .ap-tabs__nav::-webkit-scrollbar,
.broker_profile_typ_1 .ap-tabs__nav::-webkit-scrollbar,
.agency_list_typ_1 .ap-tabs__nav::-webkit-scrollbar {
  display: none;
}
.agency_profile_typ_1 .ap-tabs__nav a,
.broker_profile_typ_1 .ap-tabs__nav a,
.agency_list_typ_1 .ap-tabs__nav a {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  height: 3.25rem;
  color: var(--warm);
  font-weight: 600;
  font-size: 0.9375rem;
  text-decoration: none;
  box-shadow: inset 0 -3px 0 transparent;
  transition: color 0.15s ease, box-shadow 0.15s ease;
}
.agency_profile_typ_1 .ap-tabs__nav a small,
.broker_profile_typ_1 .ap-tabs__nav a small,
.agency_list_typ_1 .ap-tabs__nav a small,
.agency_profile_typ_1 .ap-tabs__nav a .filter-pill-count,
.broker_profile_typ_1 .ap-tabs__nav a .filter-pill-count,
.agency_list_typ_1 .ap-tabs__nav a .filter-pill-count {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-tabs__nav a:hover,
.broker_profile_typ_1 .ap-tabs__nav a:hover,
.agency_list_typ_1 .ap-tabs__nav a:hover {
  color: var(--first-color);
  box-shadow: inset 0 -3px 0 var(--purple-200);
}
.agency_profile_typ_1 .ap-tabs__nav a.is-active,
.broker_profile_typ_1 .ap-tabs__nav a.is-active,
.agency_list_typ_1 .ap-tabs__nav a.is-active {
  color: var(--first-color);
  box-shadow: inset 0 -3px 0 var(--first-color);
}
.agency_profile_typ_1 .ap-tabs__cta,
.broker_profile_typ_1 .ap-tabs__cta,
.agency_list_typ_1 .ap-tabs__cta {
  flex-shrink: 0;
  padding-left: 1rem;
  border-left: 1px solid var(--line-color);
}
.agency_profile_typ_1 .ap-tabs__cta .btn,
.broker_profile_typ_1 .ap-tabs__cta .btn,
.agency_list_typ_1 .ap-tabs__cta .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .ap-block,
.broker_profile_typ_1 .ap-block,
.agency_list_typ_1 .ap-block {
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  padding: 1.5rem;
  margin-bottom: 1.25rem;
  scroll-margin-top: 4.5rem;
}
.agency_profile_typ_1 .ap-block__head,
.broker_profile_typ_1 .ap-block__head,
.agency_list_typ_1 .ap-block__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  margin-bottom: 1rem;
}
.agency_profile_typ_1 .ap-block__head .ap-h2,
.broker_profile_typ_1 .ap-block__head .ap-h2,
.agency_list_typ_1 .ap-block__head .ap-h2 {
  margin: 0;
}
.agency_profile_typ_1 .ap-block__head .btn-link,
.broker_profile_typ_1 .ap-block__head .btn-link,
.agency_list_typ_1 .ap-block__head .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .ap-h2,
.broker_profile_typ_1 .ap-h2,
.agency_list_typ_1 .ap-h2 {
  font-family: var(--first-font);
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 1rem;
}
.agency_profile_typ_1 .ap-h2 small,
.broker_profile_typ_1 .ap-h2 small,
.agency_list_typ_1 .ap-h2 small {
  font-size: 1rem;
  font-weight: 600;
  color: var(--mute);
  margin-left: 0.25rem;
}
.agency_profile_typ_1 .ap-h3,
.broker_profile_typ_1 .ap-h3,
.agency_list_typ_1 .ap-h3 {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  margin: 0 0 0.625rem;
}
.agency_profile_typ_1 .ap-fine,
.broker_profile_typ_1 .ap-fine,
.agency_list_typ_1 .ap-fine {
  font-size: 0.8125rem;
  color: var(--mute);
  margin: 0;
}
.agency_profile_typ_1 .ap-empty,
.broker_profile_typ_1 .ap-empty,
.agency_list_typ_1 .ap-empty {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 1rem 0 0;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-filter,
.broker_profile_typ_1 .ap-filter,
.agency_list_typ_1 .ap-filter {
  margin-bottom: 0.625rem;
  text-decoration: none;
}
.agency_profile_typ_1 .ap-filter .filter-pill,
.broker_profile_typ_1 .ap-filter .filter-pill,
.agency_list_typ_1 .ap-filter .filter-pill {
  text-decoration: none;
}
.agency_profile_typ_1 .ap-filter.is-types,
.broker_profile_typ_1 .ap-filter.is-types,
.agency_list_typ_1 .ap-filter.is-types {
  margin-bottom: 1.25rem;
}
.agency_profile_typ_1 .ap-grid,
.broker_profile_typ_1 .ap-grid,
.agency_list_typ_1 .ap-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  padding: 0;
}
.agency_profile_typ_1 .ap-grid > *,
.broker_profile_typ_1 .ap-grid > *,
.agency_list_typ_1 .ap-grid > * {
  min-width: 0;
}
.agency_profile_typ_1 .ap-nophoto,
.broker_profile_typ_1 .ap-nophoto,
.agency_list_typ_1 .ap-nophoto {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  background: var(--cream-2);
  color: var(--mute);
  font-size: 0.8125rem;
}
.agency_profile_typ_1 .ap-nophoto .i,
.broker_profile_typ_1 .ap-nophoto .i,
.agency_list_typ_1 .ap-nophoto .i {
  width: 1.75rem;
  height: 1.75rem;
}
.agency_profile_typ_1 .ap-pager,
.broker_profile_typ_1 .ap-pager,
.agency_list_typ_1 .ap-pager {
  margin-top: 1.5rem;
}
.agency_profile_typ_1 .ap-pager .listing-pager-row,
.broker_profile_typ_1 .ap-pager .listing-pager-row,
.agency_list_typ_1 .ap-pager .listing-pager-row {
  justify-content: space-between;
}
.agency_profile_typ_1 .ap-about__grid,
.broker_profile_typ_1 .ap-about__grid,
.agency_list_typ_1 .ap-about__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 20rem;
  gap: 1.5rem 2.5rem;
  align-items: start;
  margin-bottom: 1.5rem;
}
.agency_profile_typ_1 .ap-about__grid.is-nodesc,
.broker_profile_typ_1 .ap-about__grid.is-nodesc,
.agency_list_typ_1 .ap-about__grid.is-nodesc {
  grid-template-columns: minmax(0, 1fr);
}
.agency_profile_typ_1 .ap-about__grid.is-nodesc .ap-facts,
.broker_profile_typ_1 .ap-about__grid.is-nodesc .ap-facts,
.agency_list_typ_1 .ap-about__grid.is-nodesc .ap-facts {
  grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr));
}
.agency_profile_typ_1 .ap-desc,
.broker_profile_typ_1 .ap-desc,
.agency_list_typ_1 .ap-desc {
  max-height: 11rem;
  overflow: hidden;
  position: relative;
  color: var(--warm);
  line-height: 1.65;
  /* stmievanie len pri dlhom texte (zbalenom) - krátky popis by inak mal zakrytý posledný riadok */
}
.agency_profile_typ_1 .ap-desc.is-long::after,
.broker_profile_typ_1 .ap-desc.is-long::after,
.agency_list_typ_1 .ap-desc.is-long::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3.5rem;
  background: linear-gradient(rgba(255, 255, 255, 0), var(--white-color));
}
.agency_profile_typ_1 .ap-desc.is-open,
.broker_profile_typ_1 .ap-desc.is-open,
.agency_list_typ_1 .ap-desc.is-open {
  max-height: none;
}
.agency_profile_typ_1 .ap-desc.is-open::after,
.broker_profile_typ_1 .ap-desc.is-open::after,
.agency_list_typ_1 .ap-desc.is-open::after {
  display: none;
}
.agency_profile_typ_1 .ap-more,
.broker_profile_typ_1 .ap-more,
.agency_list_typ_1 .ap-more {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.5rem;
  padding: 0;
  border: 0;
  background: none;
}
.agency_profile_typ_1 .ap-more .i,
.broker_profile_typ_1 .ap-more .i,
.agency_list_typ_1 .ap-more .i {
  transition: transform 0.2s ease;
}
.agency_profile_typ_1 .ap-more[aria-expanded="true"] .i,
.broker_profile_typ_1 .ap-more[aria-expanded="true"] .i,
.agency_list_typ_1 .ap-more[aria-expanded="true"] .i {
  transform: rotate(180deg);
}
.agency_profile_typ_1 .ap-facts,
.broker_profile_typ_1 .ap-facts,
.agency_list_typ_1 .ap-facts {
  display: grid;
  gap: 0.75rem 1.5rem;
  margin: 0;
  padding: 1.125rem 1.25rem;
  background: var(--cream);
  border-radius: var(--radius-sm);
}
.agency_profile_typ_1 .ap-facts dt,
.broker_profile_typ_1 .ap-facts dt,
.agency_list_typ_1 .ap-facts dt {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-facts dd,
.broker_profile_typ_1 .ap-facts dd,
.agency_list_typ_1 .ap-facts dd {
  margin: 0.125rem 0 0;
  color: var(--ink);
  font-weight: 600;
  overflow-wrap: anywhere;
}
.agency_profile_typ_1 .ap-areas .filter-pill,
.broker_profile_typ_1 .ap-areas .filter-pill,
.agency_list_typ_1 .ap-areas .filter-pill {
  text-decoration: none;
}
.agency_profile_typ_1 .ap-areas .is-more,
.broker_profile_typ_1 .ap-areas .is-more,
.agency_list_typ_1 .ap-areas .is-more {
  color: var(--accent-text);
  border-style: dashed;
}
.agency_profile_typ_1 .ap-rating,
.broker_profile_typ_1 .ap-rating,
.agency_list_typ_1 .ap-rating {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem 1.25rem;
  margin-top: 0.75rem;
  color: var(--warm);
  font-size: 0.875rem;
  text-decoration: none;
}
.agency_profile_typ_1 .ap-rating > span,
.broker_profile_typ_1 .ap-rating > span,
.agency_list_typ_1 .ap-rating > span {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .ap-rating b,
.broker_profile_typ_1 .ap-rating b,
.agency_list_typ_1 .ap-rating b {
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1rem;
  color: var(--first-color);
}
.agency_profile_typ_1 .ap-rating__g .i,
.broker_profile_typ_1 .ap-rating__g .i,
.agency_list_typ_1 .ap-rating__g .i {
  width: 1rem;
  height: 1rem;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-rating:hover > span > span,
.broker_profile_typ_1 .ap-rating:hover > span > span,
.agency_list_typ_1 .ap-rating:hover > span > span {
  text-decoration: underline;
}
.agency_profile_typ_1 .rv-stars,
.broker_profile_typ_1 .rv-stars,
.agency_list_typ_1 .rv-stars {
  display: inline-flex;
  gap: 0.0625rem;
  color: var(--line-color);
}
.agency_profile_typ_1 .rv-stars .i,
.broker_profile_typ_1 .rv-stars .i,
.agency_list_typ_1 .rv-stars .i {
  width: 1rem;
  height: 1rem;
}
.agency_profile_typ_1 .rv-stars .is-on,
.broker_profile_typ_1 .rv-stars .is-on,
.agency_list_typ_1 .rv-stars .is-on {
  color: var(--star-color);
}
.agency_profile_typ_1 .rv-layout,
.broker_profile_typ_1 .rv-layout,
.agency_list_typ_1 .rv-layout {
  display: grid;
  grid-template-columns: 17rem minmax(0, 1fr);
  gap: 1.5rem 2.5rem;
  align-items: start;
}
.agency_profile_typ_1 .rv-sum,
.broker_profile_typ_1 .rv-sum,
.agency_list_typ_1 .rv-sum {
  padding: 1.25rem;
  background: var(--cream);
  border-radius: var(--radius-sm);
}
.agency_profile_typ_1 .rv-sum__avg,
.broker_profile_typ_1 .rv-sum__avg,
.agency_list_typ_1 .rv-sum__avg {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  margin-bottom: 1rem;
}
.agency_profile_typ_1 .rv-sum__avg > b,
.broker_profile_typ_1 .rv-sum__avg > b,
.agency_list_typ_1 .rv-sum__avg > b {
  font-family: var(--first-font);
  font-size: 2.75rem;
  line-height: 1;
  font-weight: 800;
  color: var(--first-color);
}
.agency_profile_typ_1 .rv-sum__avg small,
.broker_profile_typ_1 .rv-sum__avg small,
.agency_list_typ_1 .rv-sum__avg small {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.agency_profile_typ_1 .rv-sum__avg .rv-stars .i,
.broker_profile_typ_1 .rv-sum__avg .rv-stars .i,
.agency_list_typ_1 .rv-sum__avg .rv-stars .i {
  width: 1.125rem;
  height: 1.125rem;
}
.agency_profile_typ_1 .rv-sum .ap-fine,
.broker_profile_typ_1 .rv-sum .ap-fine,
.agency_list_typ_1 .rv-sum .ap-fine {
  margin-top: 1rem;
}
.agency_profile_typ_1 .rv-dist,
.broker_profile_typ_1 .rv-dist,
.agency_list_typ_1 .rv-dist {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.agency_profile_typ_1 .rv-dist li,
.broker_profile_typ_1 .rv-dist li,
.agency_list_typ_1 .rv-dist li {
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr) 1.5rem;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
  color: var(--warm);
  font-variant-numeric: tabular-nums;
}
.agency_profile_typ_1 .rv-dist li > span:first-child,
.broker_profile_typ_1 .rv-dist li > span:first-child,
.agency_list_typ_1 .rv-dist li > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 0.1875rem;
}
.agency_profile_typ_1 .rv-dist li > span:first-child .i,
.broker_profile_typ_1 .rv-dist li > span:first-child .i,
.agency_list_typ_1 .rv-dist li > span:first-child .i {
  width: 0.8125rem;
  height: 0.8125rem;
  color: var(--star-color);
}
.agency_profile_typ_1 .rv-dist li > span:last-child,
.broker_profile_typ_1 .rv-dist li > span:last-child,
.agency_list_typ_1 .rv-dist li > span:last-child {
  text-align: right;
  color: var(--mute);
}
.agency_profile_typ_1 .rv-dist__bar,
.broker_profile_typ_1 .rv-dist__bar,
.agency_list_typ_1 .rv-dist__bar {
  height: 0.5rem;
  border-radius: 1rem;
  background: var(--white-color);
  overflow: hidden;
}
.agency_profile_typ_1 .rv-dist__bar i,
.broker_profile_typ_1 .rv-dist__bar i,
.agency_list_typ_1 .rv-dist__bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--star-color);
}
.agency_profile_typ_1 .rv-list,
.broker_profile_typ_1 .rv-list,
.agency_list_typ_1 .rv-list {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
}
.agency_profile_typ_1 .rv-list .ap-all,
.broker_profile_typ_1 .rv-list .ap-all,
.agency_list_typ_1 .rv-list .ap-all {
  margin-top: 0.25rem;
}
.agency_profile_typ_1 .rv-card,
.broker_profile_typ_1 .rv-card,
.agency_list_typ_1 .rv-card {
  padding: 1.125rem 1.25rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
}
.agency_profile_typ_1 .rv-card__top,
.broker_profile_typ_1 .rv-card__top,
.agency_list_typ_1 .rv-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}
.agency_profile_typ_1 .rv-card__top time,
.broker_profile_typ_1 .rv-card__top time,
.agency_list_typ_1 .rv-card__top time,
.agency_profile_typ_1 .rv-card__top > span:last-child,
.broker_profile_typ_1 .rv-card__top > span:last-child,
.agency_list_typ_1 .rv-card__top > span:last-child {
  font-size: 0.8125rem;
  color: var(--mute);
}
.agency_profile_typ_1 .rv-card__text,
.broker_profile_typ_1 .rv-card__text,
.agency_list_typ_1 .rv-card__text {
  margin: 0;
  color: var(--ink);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.agency_profile_typ_1 .rv-card__text.is-open,
.broker_profile_typ_1 .rv-card__text.is-open,
.agency_list_typ_1 .rv-card__text.is-open {
  display: block;
}
.agency_profile_typ_1 .rv-card__who,
.broker_profile_typ_1 .rv-card__who,
.agency_list_typ_1 .rv-card__who {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-top: 0.875rem;
}
.agency_profile_typ_1 .rv-card__who b,
.broker_profile_typ_1 .rv-card__who b,
.agency_list_typ_1 .rv-card__who b {
  display: inline;
  color: var(--ink);
  font-size: 0.9375rem;
  margin-right: 0.5rem;
}
.agency_profile_typ_1 .rv-card__who small,
.broker_profile_typ_1 .rv-card__who small,
.agency_list_typ_1 .rv-card__who small {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
}
.agency_profile_typ_1 .rv-card__who small a,
.broker_profile_typ_1 .rv-card__who small a,
.agency_list_typ_1 .rv-card__who small a {
  font-weight: 600;
}
.agency_profile_typ_1 .rv-more,
.broker_profile_typ_1 .rv-more,
.agency_list_typ_1 .rv-more {
  padding: 0;
  border: 0;
  background: none;
  margin-top: 0.375rem;
  font-size: 0.875rem;
}
.agency_profile_typ_1 .rv-avatar,
.broker_profile_typ_1 .rv-avatar,
.agency_list_typ_1 .rv-avatar {
  width: 2.25rem;
  height: 2.25rem;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 0.8125rem;
}
.agency_profile_typ_1 .rv-avatar.is-g,
.broker_profile_typ_1 .rv-avatar.is-g,
.agency_list_typ_1 .rv-avatar.is-g {
  background: var(--cream-2);
  color: var(--warm);
}
.agency_profile_typ_1 .rv-ok,
.broker_profile_typ_1 .rv-ok,
.agency_list_typ_1 .rv-ok {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--accent-text);
}
.agency_profile_typ_1 .rv-ok .i,
.broker_profile_typ_1 .rv-ok .i,
.agency_list_typ_1 .rv-ok .i {
  width: 0.9375rem;
  height: 0.9375rem;
}
.agency_profile_typ_1 .rv-reply,
.broker_profile_typ_1 .rv-reply,
.agency_list_typ_1 .rv-reply {
  display: flex;
  gap: 0.625rem;
  margin-top: 0.875rem;
  padding: 0.875rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.agency_profile_typ_1 .rv-reply > .i,
.broker_profile_typ_1 .rv-reply > .i,
.agency_list_typ_1 .rv-reply > .i {
  color: var(--mute);
  margin-top: 0.125rem;
}
.agency_profile_typ_1 .rv-reply b,
.broker_profile_typ_1 .rv-reply b,
.agency_list_typ_1 .rv-reply b {
  font-size: 0.8125rem;
  color: var(--first-color);
}
.agency_profile_typ_1 .rv-reply p,
.broker_profile_typ_1 .rv-reply p,
.agency_list_typ_1 .rv-reply p {
  margin: 0.25rem 0 0;
  font-size: 0.875rem;
  color: var(--warm);
  line-height: 1.55;
}
.agency_profile_typ_1 .rv-empty,
.broker_profile_typ_1 .rv-empty,
.agency_list_typ_1 .rv-empty {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem 1.25rem;
  padding: 1.25rem;
  border: 1px dashed var(--purple-200);
  border-radius: var(--radius-sm);
}
.agency_profile_typ_1 .rv-empty > div,
.broker_profile_typ_1 .rv-empty > div,
.agency_list_typ_1 .rv-empty > div {
  flex: 1 1 18rem;
}
.agency_profile_typ_1 .rv-empty b,
.broker_profile_typ_1 .rv-empty b,
.agency_list_typ_1 .rv-empty b {
  color: var(--ink);
}
.agency_profile_typ_1 .rv-empty p,
.broker_profile_typ_1 .rv-empty p,
.agency_list_typ_1 .rv-empty p {
  margin: 0.25rem 0 0;
  color: var(--warm);
  font-size: 0.9375rem;
}
.agency_profile_typ_1 .rv-empty__ic,
.broker_profile_typ_1 .rv-empty__ic,
.agency_list_typ_1 .rv-empty__ic {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.agency_profile_typ_1 .rv-empty__ic .i,
.broker_profile_typ_1 .rv-empty__ic .i,
.agency_list_typ_1 .rv-empty__ic .i {
  width: 1.5rem;
  height: 1.5rem;
}
.agency_profile_typ_1 .rv-empty .btn,
.broker_profile_typ_1 .rv-empty .btn,
.agency_list_typ_1 .rv-empty .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .ap-block__head .btn-s,
.broker_profile_typ_1 .ap-block__head .btn-s,
.agency_list_typ_1 .ap-block__head .btn-s {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .rv-form,
.broker_profile_typ_1 .rv-form,
.agency_list_typ_1 .rv-form {
  margin-top: 1.25rem;
  padding: 1.25rem;
  border: 1px solid var(--purple-200);
  border-radius: var(--radius-sm);
  scroll-margin-top: 5rem;
}
.agency_profile_typ_1 .rv-form .field,
.broker_profile_typ_1 .rv-form .field,
.agency_list_typ_1 .rv-form .field {
  margin-top: 1rem;
}
.agency_profile_typ_1 .rv-form .filter-pills,
.broker_profile_typ_1 .rv-form .filter-pills,
.agency_list_typ_1 .rv-form .filter-pills {
  margin: 0;
}
.agency_profile_typ_1 .rv-form .la-opt,
.broker_profile_typ_1 .rv-form .la-opt,
.agency_list_typ_1 .rv-form .la-opt {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--mute);
}
.agency_profile_typ_1 .rv-form .la-err,
.broker_profile_typ_1 .rv-form .la-err,
.agency_list_typ_1 .rv-form .la-err {
  display: flex;
  gap: 0.375rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-error);
}
.agency_profile_typ_1 .rv-form .la-err .i,
.broker_profile_typ_1 .rv-form .la-err .i,
.agency_list_typ_1 .rv-form .la-err .i {
  width: 1rem;
  height: 1rem;
}
.agency_profile_typ_1 .rv-form .is-error .input-wrap,
.broker_profile_typ_1 .rv-form .is-error .input-wrap,
.agency_list_typ_1 .rv-form .is-error .input-wrap,
.agency_profile_typ_1 .rv-form .is-error > .fb-input,
.broker_profile_typ_1 .rv-form .is-error > .fb-input,
.agency_list_typ_1 .rv-form .is-error > .fb-input {
  border-color: var(--color-error);
}
.agency_profile_typ_1 .rv-form__grid,
.broker_profile_typ_1 .rv-form__grid,
.agency_list_typ_1 .rv-form__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.agency_profile_typ_1 .rv-form__btns,
.broker_profile_typ_1 .rv-form__btns,
.agency_list_typ_1 .rv-form__btns {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-shrink: 0;
}
.agency_profile_typ_1 .rv-form__btns .btn-link,
.broker_profile_typ_1 .rv-form__btns .btn-link,
.agency_list_typ_1 .rv-form__btns .btn-link {
  padding: 0;
  border: 0;
  background: none;
}
.agency_profile_typ_1 .rv-form__btns .btn,
.broker_profile_typ_1 .rv-form__btns .btn,
.agency_list_typ_1 .rv-form__btns .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .rv-pick,
.broker_profile_typ_1 .rv-pick,
.agency_list_typ_1 .rv-pick {
  display: flex;
  align-items: center;
  gap: 0.125rem;
}
.agency_profile_typ_1 .rv-pick button,
.broker_profile_typ_1 .rv-pick button,
.agency_list_typ_1 .rv-pick button {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.25rem;
  border: 0;
  background: none;
  color: var(--line-color);
  cursor: pointer;
  border-radius: 0.5rem;
  transition: color 0.12s ease, transform 0.12s ease;
}
.agency_profile_typ_1 .rv-pick button .i,
.broker_profile_typ_1 .rv-pick button .i,
.agency_list_typ_1 .rv-pick button .i {
  width: 100%;
  height: 100%;
}
.agency_profile_typ_1 .rv-pick button.is-on,
.broker_profile_typ_1 .rv-pick button.is-on,
.agency_list_typ_1 .rv-pick button.is-on {
  color: var(--star-color);
}
.agency_profile_typ_1 .rv-pick button:hover,
.broker_profile_typ_1 .rv-pick button:hover,
.agency_list_typ_1 .rv-pick button:hover {
  transform: scale(1.08);
}
.agency_profile_typ_1 .rv-pick button:focus-visible,
.broker_profile_typ_1 .rv-pick button:focus-visible,
.agency_list_typ_1 .rv-pick button:focus-visible {
  outline: 2px solid var(--first-color);
  outline-offset: 1px;
}
.agency_profile_typ_1 .rv-pick__txt,
.broker_profile_typ_1 .rv-pick__txt,
.agency_list_typ_1 .rv-pick__txt {
  margin-left: 0.625rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--warm);
}
.agency_profile_typ_1 .rv-count,
.broker_profile_typ_1 .rv-count,
.agency_list_typ_1 .rv-count {
  display: block;
  margin-top: 0.375rem;
  font-size: 0.75rem;
  color: var(--mute);
}
.agency_profile_typ_1 .rv-count.is-ok,
.broker_profile_typ_1 .rv-count.is-ok,
.agency_list_typ_1 .rv-count.is-ok {
  color: var(--accent-text);
}
.agency_profile_typ_1 .rv-sent,
.broker_profile_typ_1 .rv-sent,
.agency_list_typ_1 .rv-sent {
  margin-top: 1.25rem;
}
.agency_profile_typ_1 .rv-google,
.broker_profile_typ_1 .rv-google,
.agency_list_typ_1 .rv-google {
  margin-top: 1.5rem;
  padding: 1.25rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.agency_profile_typ_1 .rv-google__head,
.broker_profile_typ_1 .rv-google__head,
.agency_list_typ_1 .rv-google__head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  margin-bottom: 1rem;
}
.agency_profile_typ_1 .rv-google__head > div,
.broker_profile_typ_1 .rv-google__head > div,
.agency_list_typ_1 .rv-google__head > div {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.agency_profile_typ_1 .rv-google__head > div > b,
.broker_profile_typ_1 .rv-google__head > div > b,
.agency_list_typ_1 .rv-google__head > div > b {
  font-size: 0.9375rem;
  color: var(--ink);
}
.agency_profile_typ_1 .rv-google__head .btn-link,
.broker_profile_typ_1 .rv-google__head .btn-link,
.agency_list_typ_1 .rv-google__head .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.875rem;
}
.agency_profile_typ_1 .rv-google__logo,
.broker_profile_typ_1 .rv-google__logo,
.agency_list_typ_1 .rv-google__logo {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  background: var(--white-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.agency_profile_typ_1 .rv-google__logo .i,
.broker_profile_typ_1 .rv-google__logo .i,
.agency_list_typ_1 .rv-google__logo .i {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--warm);
}
.agency_profile_typ_1 .rv-google__score,
.broker_profile_typ_1 .rv-google__score,
.agency_list_typ_1 .rv-google__score {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.agency_profile_typ_1 .rv-google__score > b,
.broker_profile_typ_1 .rv-google__score > b,
.agency_list_typ_1 .rv-google__score > b {
  font-family: var(--first-font);
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--ink);
}
.agency_profile_typ_1 .rv-google__score small,
.broker_profile_typ_1 .rv-google__score small,
.agency_list_typ_1 .rv-google__score small {
  font-size: 0.8125rem;
  color: var(--mute);
}
.agency_profile_typ_1 .rv-google__list,
.broker_profile_typ_1 .rv-google__list,
.agency_list_typ_1 .rv-google__list {
  list-style: none;
  margin: 0 0 0.875rem;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
  gap: 0.75rem;
}
.agency_profile_typ_1 .rv-gcard,
.broker_profile_typ_1 .rv-gcard,
.agency_list_typ_1 .rv-gcard {
  display: flex;
  flex-direction: column;
  padding: 1rem;
  background: var(--white-color);
  border-radius: var(--radius-sm);
}
.agency_profile_typ_1 .rv-gcard p,
.broker_profile_typ_1 .rv-gcard p,
.agency_list_typ_1 .rv-gcard p {
  flex: 1;
  margin: 0 0 0.75rem;
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--ink);
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.agency_profile_typ_1 .rv-gcard .rv-card__top,
.broker_profile_typ_1 .rv-gcard .rv-card__top,
.agency_list_typ_1 .rv-gcard .rv-card__top {
  margin-bottom: 0.375rem;
}
.agency_profile_typ_1 .rv-gcard .rv-stars .i,
.broker_profile_typ_1 .rv-gcard .rv-stars .i,
.agency_list_typ_1 .rv-gcard .rv-stars .i {
  width: 0.875rem;
  height: 0.875rem;
}
.agency_profile_typ_1 .rv-gcard footer,
.broker_profile_typ_1 .rv-gcard footer,
.agency_list_typ_1 .rv-gcard footer {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8125rem;
}
.agency_profile_typ_1 .rv-gcard footer b,
.broker_profile_typ_1 .rv-gcard footer b,
.agency_list_typ_1 .rv-gcard footer b {
  flex: 1;
  min-width: 0;
  color: var(--warm);
}
.agency_profile_typ_1 .rv-gcard .rv-avatar,
.broker_profile_typ_1 .rv-gcard .rv-avatar,
.agency_list_typ_1 .rv-gcard .rv-avatar {
  width: 1.75rem;
  height: 1.75rem;
  font-size: 0.6875rem;
}
.agency_profile_typ_1 .rv-gcard__src,
.broker_profile_typ_1 .rv-gcard__src,
.agency_list_typ_1 .rv-gcard__src {
  width: 0.9375rem;
  height: 0.9375rem;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-branch-pick,
.broker_profile_typ_1 .ap-branch-pick,
.agency_list_typ_1 .ap-branch-pick {
  width: 15rem;
  max-width: 100%;
  margin-left: auto;
}
.agency_profile_typ_1 .ap-branch-pick .field,
.broker_profile_typ_1 .ap-branch-pick .field,
.agency_list_typ_1 .ap-branch-pick .field {
  margin: 0;
}
.agency_profile_typ_1 .ap-branch-pick label,
.broker_profile_typ_1 .ap-branch-pick label,
.agency_list_typ_1 .ap-branch-pick label {
  display: none;
}
.agency_profile_typ_1 .ap-broker__branch,
.broker_profile_typ_1 .ap-broker__branch,
.agency_list_typ_1 .ap-broker__branch {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.125rem;
  font-size: 0.75rem;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-broker__branch .i,
.broker_profile_typ_1 .ap-broker__branch .i,
.agency_list_typ_1 .ap-broker__branch .i {
  width: 0.875rem;
  height: 0.875rem;
}
.agency_profile_typ_1 .br-layout,
.broker_profile_typ_1 .br-layout,
.agency_list_typ_1 .br-layout {
  display: grid;
  grid-template-columns: minmax(0, 22rem) minmax(0, 1fr);
  gap: 1.25rem;
  align-items: start;
}
.agency_profile_typ_1 .br-list,
.broker_profile_typ_1 .br-list,
.agency_list_typ_1 .br-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.agency_profile_typ_1 .br-item,
.broker_profile_typ_1 .br-item,
.agency_list_typ_1 .br-item {
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  transition: border-color 0.15s ease, background 0.15s ease;
}
.agency_profile_typ_1 .br-item.is-active,
.broker_profile_typ_1 .br-item.is-active,
.agency_list_typ_1 .br-item.is-active {
  border-color: var(--first-color);
  background: var(--purple-50);
}
.agency_profile_typ_1 .br-item__main,
.broker_profile_typ_1 .br-item__main,
.agency_list_typ_1 .br-item__main {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: 0.75rem 0.875rem 0.375rem;
  border: 0;
  background: none;
  text-align: left;
  cursor: pointer;
}
.agency_profile_typ_1 .br-item__main .ap-tag,
.broker_profile_typ_1 .br-item__main .ap-tag,
.agency_list_typ_1 .br-item__main .ap-tag {
  margin-left: auto;
  flex-shrink: 0;
}
.agency_profile_typ_1 .br-item__pin,
.broker_profile_typ_1 .br-item__pin,
.agency_list_typ_1 .br-item__pin {
  width: 2.25rem;
  height: 2.25rem;
  flex-shrink: 0;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--purple-50);
  color: var(--first-color);
}
.agency_profile_typ_1 .br-item__pin .i,
.broker_profile_typ_1 .br-item__pin .i,
.agency_list_typ_1 .br-item__pin .i {
  width: 1.125rem;
  height: 1.125rem;
}
.agency_profile_typ_1 .br-item__pin.is-main,
.broker_profile_typ_1 .br-item__pin.is-main,
.agency_list_typ_1 .br-item__pin.is-main {
  background: var(--first-color);
  color: var(--white-color);
}
.agency_profile_typ_1 .br-item__txt,
.broker_profile_typ_1 .br-item__txt,
.agency_list_typ_1 .br-item__txt {
  min-width: 0;
}
.agency_profile_typ_1 .br-item__txt b,
.broker_profile_typ_1 .br-item__txt b,
.agency_list_typ_1 .br-item__txt b {
  display: block;
  color: var(--ink);
  font-size: 0.9375rem;
}
.agency_profile_typ_1 .br-item__txt small,
.broker_profile_typ_1 .br-item__txt small,
.agency_list_typ_1 .br-item__txt small {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
}
.agency_profile_typ_1 .br-item__foot,
.broker_profile_typ_1 .br-item__foot,
.agency_list_typ_1 .br-item__foot {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1.25rem;
  padding: 0 0.875rem 0.75rem 3.875rem;
}
.agency_profile_typ_1 .br-item__foot .btn-link,
.broker_profile_typ_1 .br-item__foot .btn-link,
.agency_list_typ_1 .br-item__foot .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.8125rem;
}
.agency_profile_typ_1 .br-item__foot .btn-link .i,
.broker_profile_typ_1 .br-item__foot .btn-link .i,
.agency_list_typ_1 .br-item__foot .btn-link .i {
  width: 1rem;
  height: 1rem;
}
.agency_profile_typ_1 .br-map,
.broker_profile_typ_1 .br-map,
.agency_list_typ_1 .br-map {
  position: sticky;
  top: 4.5rem;
  height: 30rem;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream-2);
  z-index: 0;
}
.agency_profile_typ_1 .ld-pin.is-branch,
.broker_profile_typ_1 .ld-pin.is-branch,
.agency_list_typ_1 .ld-pin.is-branch {
  width: 2rem;
  height: 2rem;
  background: var(--white-color);
  color: var(--first-color);
  border-color: var(--first-color);
  border-width: 2px;
}
.agency_profile_typ_1 .ld-pin.is-branch svg,
.broker_profile_typ_1 .ld-pin.is-branch svg,
.agency_list_typ_1 .ld-pin.is-branch svg {
  width: 1rem;
  height: 1rem;
}
.agency_profile_typ_1 .ap-search,
.broker_profile_typ_1 .ap-search,
.agency_list_typ_1 .ap-search {
  width: 18rem;
  max-width: 100%;
  margin: 0;
}
.agency_profile_typ_1 .ap-brokers,
.broker_profile_typ_1 .ap-brokers,
.agency_list_typ_1 .ap-brokers {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}
.agency_profile_typ_1 .ap-broker,
.broker_profile_typ_1 .ap-broker,
.agency_list_typ_1 .ap-broker {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.25rem 0.75rem;
  padding: 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
}
.agency_profile_typ_1 .ap-broker__avatar,
.broker_profile_typ_1 .ap-broker__avatar,
.agency_list_typ_1 .ap-broker__avatar {
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 50%;
  overflow: hidden;
  background: var(--purple-50);
  color: var(--first-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.0625rem;
}
.agency_profile_typ_1 .ap-broker__avatar img,
.broker_profile_typ_1 .ap-broker__avatar img,
.agency_list_typ_1 .ap-broker__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.agency_profile_typ_1 .ap-broker__txt,
.broker_profile_typ_1 .ap-broker__txt,
.agency_list_typ_1 .ap-broker__txt {
  min-width: 0;
}
.agency_profile_typ_1 .ap-broker__txt b,
.broker_profile_typ_1 .ap-broker__txt b,
.agency_list_typ_1 .ap-broker__txt b,
.agency_profile_typ_1 .ap-broker__txt .ap-broker__name,
.broker_profile_typ_1 .ap-broker__txt .ap-broker__name,
.agency_list_typ_1 .ap-broker__txt .ap-broker__name {
  display: block;
  color: var(--ink);
  font-weight: 700;
  line-height: 1.3;
  font-size: 0.9375rem;
  overflow-wrap: anywhere;
  text-decoration: none;
}
.agency_profile_typ_1 .ap-broker__txt .ap-broker__name:hover,
.broker_profile_typ_1 .ap-broker__txt .ap-broker__name:hover,
.agency_list_typ_1 .ap-broker__txt .ap-broker__name:hover {
  color: var(--first-color);
  text-decoration: underline;
}
.agency_profile_typ_1 .ap-broker__txt span,
.broker_profile_typ_1 .ap-broker__txt span,
.agency_list_typ_1 .ap-broker__txt span,
.agency_profile_typ_1 .ap-broker__txt .btn-link,
.broker_profile_typ_1 .ap-broker__txt .btn-link,
.agency_list_typ_1 .ap-broker__txt .btn-link {
  font-size: 0.8125rem;
}
.agency_profile_typ_1 .ap-broker__txt span,
.broker_profile_typ_1 .ap-broker__txt span,
.agency_list_typ_1 .ap-broker__txt span {
  color: var(--mute);
}
.agency_profile_typ_1 .ap-broker__tel,
.broker_profile_typ_1 .ap-broker__tel,
.agency_list_typ_1 .ap-broker__tel {
  grid-column: 2 / 4;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--first-color);
  font-variant-numeric: tabular-nums;
}
.agency_profile_typ_1 .ap-round,
.broker_profile_typ_1 .ap-round,
.agency_list_typ_1 .ap-round {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  border: 1px solid var(--line-color);
  background: var(--white-color);
  color: var(--first-color);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--trans-200);
}
.agency_profile_typ_1 .ap-round:hover,
.broker_profile_typ_1 .ap-round:hover,
.agency_list_typ_1 .ap-round:hover {
  border-color: var(--accent-color-hover);
  background: var(--green-50);
}
.agency_profile_typ_1 .ap-all,
.broker_profile_typ_1 .ap-all,
.agency_list_typ_1 .ap-all {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 1rem auto 0;
}
.agency_profile_typ_1 .ap-contact__grid,
.broker_profile_typ_1 .ap-contact__grid,
.agency_list_typ_1 .ap-contact__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 20rem;
  gap: 1.5rem 2.5rem;
  align-items: start;
}
.agency_profile_typ_1 .ap-contact__grid.is-nomap,
.broker_profile_typ_1 .ap-contact__grid.is-nomap,
.agency_list_typ_1 .ap-contact__grid.is-nomap {
  grid-template-columns: minmax(0, 1fr);
}
.agency_profile_typ_1 .ap-map,
.broker_profile_typ_1 .ap-map,
.agency_list_typ_1 .ap-map {
  height: 18rem;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream-2);
  z-index: 0;
}
.agency_profile_typ_1 .ap-map__bar,
.broker_profile_typ_1 .ap-map__bar,
.agency_list_typ_1 .ap-map__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.875rem;
}
.agency_profile_typ_1 .ap-map__bar > span,
.broker_profile_typ_1 .ap-map__bar > span,
.agency_list_typ_1 .ap-map__bar > span {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  color: var(--warm);
}
.agency_profile_typ_1 .ap-map__bar > span .i,
.broker_profile_typ_1 .ap-map__bar > span .i,
.agency_list_typ_1 .ap-map__bar > span .i {
  color: var(--accent-text);
}
.agency_profile_typ_1 .ap-map__bar .btn,
.broker_profile_typ_1 .ap-map__bar .btn,
.agency_list_typ_1 .ap-map__bar .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.agency_profile_typ_1 .ap-hours,
.broker_profile_typ_1 .ap-hours,
.agency_list_typ_1 .ap-hours {
  list-style: none;
  margin: 0 0 1.25rem;
  padding: 0;
}
.agency_profile_typ_1 .ap-hours li,
.broker_profile_typ_1 .ap-hours li,
.agency_list_typ_1 .ap-hours li {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.375rem 0.625rem;
  border-radius: 0.5rem;
  color: var(--warm);
  font-variant-numeric: tabular-nums;
}
.agency_profile_typ_1 .ap-hours li.is-today,
.broker_profile_typ_1 .ap-hours li.is-today,
.agency_list_typ_1 .ap-hours li.is-today {
  background: var(--purple-50);
  color: var(--first-color);
  font-weight: 700;
}
.agency_profile_typ_1 .ap-lines,
.broker_profile_typ_1 .ap-lines,
.agency_list_typ_1 .ap-lines {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.agency_profile_typ_1 .ap-lines li,
.broker_profile_typ_1 .ap-lines li,
.agency_list_typ_1 .ap-lines li {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  color: var(--warm);
  font-size: 0.9375rem;
}
.agency_profile_typ_1 .ap-lines li > .i,
.broker_profile_typ_1 .ap-lines li > .i,
.agency_list_typ_1 .ap-lines li > .i {
  color: var(--accent-text);
  margin-top: 0.1875rem;
}
.agency_profile_typ_1 .ap-lines li > span,
.broker_profile_typ_1 .ap-lines li > span,
.agency_list_typ_1 .ap-lines li > span {
  font-size: 0.8125rem;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-lines .btn-link,
.broker_profile_typ_1 .ap-lines .btn-link,
.agency_list_typ_1 .ap-lines .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-variant-numeric: tabular-nums;
}
.agency_profile_typ_1 .ap-lines a,
.broker_profile_typ_1 .ap-lines a,
.agency_list_typ_1 .ap-lines a {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.agency_profile_typ_1 .ap-form,
.broker_profile_typ_1 .ap-form,
.agency_list_typ_1 .ap-form {
  margin-top: 1.75rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--line-color);
}
.agency_profile_typ_1 .ap-form__quick,
.broker_profile_typ_1 .ap-form__quick,
.agency_list_typ_1 .ap-form__quick {
  margin-bottom: 0.25rem;
}
.agency_profile_typ_1 .ap-form__grid,
.broker_profile_typ_1 .ap-form__grid,
.agency_list_typ_1 .ap-form__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 1rem;
}
.agency_profile_typ_1 .ap-form .field,
.broker_profile_typ_1 .ap-form .field,
.agency_list_typ_1 .ap-form .field {
  margin-top: 1rem;
}
.agency_profile_typ_1 .ap-form__msg,
.broker_profile_typ_1 .ap-form__msg,
.agency_list_typ_1 .ap-form__msg {
  min-height: 7rem;
  resize: vertical;
}
.agency_profile_typ_1 .ap-form__foot,
.broker_profile_typ_1 .ap-form__foot,
.agency_list_typ_1 .ap-form__foot {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem 1.5rem;
  margin-top: 1rem;
}
.agency_profile_typ_1 .ap-form__foot .ap-fine,
.broker_profile_typ_1 .ap-form__foot .ap-fine,
.agency_list_typ_1 .ap-form__foot .ap-fine {
  max-width: 28rem;
}
.agency_profile_typ_1 .ap-form .la-opt,
.broker_profile_typ_1 .ap-form .la-opt,
.agency_list_typ_1 .ap-form .la-opt {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--mute);
}
.agency_profile_typ_1 .ap-form .la-err,
.broker_profile_typ_1 .ap-form .la-err,
.agency_list_typ_1 .ap-form .la-err {
  display: flex;
  gap: 0.375rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--color-error);
}
.agency_profile_typ_1 .ap-form .la-err .i,
.broker_profile_typ_1 .ap-form .la-err .i,
.agency_list_typ_1 .ap-form .la-err .i {
  width: 1rem;
  height: 1rem;
}
.agency_profile_typ_1 .ap-form .is-error .input-wrap,
.broker_profile_typ_1 .ap-form .is-error .input-wrap,
.agency_list_typ_1 .ap-form .is-error .input-wrap,
.agency_profile_typ_1 .ap-form .is-error > .fb-input,
.broker_profile_typ_1 .ap-form .is-error > .fb-input,
.agency_list_typ_1 .ap-form .is-error > .fb-input {
  border-color: var(--color-error);
}
.agency_profile_typ_1 .ap-sent,
.broker_profile_typ_1 .ap-sent,
.agency_list_typ_1 .ap-sent {
  display: flex;
  gap: 0.875rem;
  padding: 1.25rem;
  border-radius: var(--radius-sm);
  background: var(--color-success-bg);
  color: var(--ink);
}
.agency_profile_typ_1 .ap-sent__ic .i,
.broker_profile_typ_1 .ap-sent__ic .i,
.agency_list_typ_1 .ap-sent__ic .i {
  width: 1.75rem;
  height: 1.75rem;
  color: var(--color-success);
}
.agency_profile_typ_1 .ap-bar,
.broker_profile_typ_1 .ap-bar,
.agency_list_typ_1 .ap-bar {
  display: none;
}
.agency_profile_typ_1 .ap-toast,
.broker_profile_typ_1 .ap-toast,
.agency_list_typ_1 .ap-toast {
  position: fixed;
  left: 50%;
  bottom: 1.5rem;
  transform: translateX(-50%);
  z-index: 2100;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.75rem 1.125rem;
  border-radius: var(--radius-sm);
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: var(--shadow-card-2);
}
.agency_profile_typ_1 .ap-toast .i,
.broker_profile_typ_1 .ap-toast .i,
.agency_list_typ_1 .ap-toast .i {
  color: var(--accent-color);
}
@media (max-width: 75rem) {
  .agency_profile_typ_1 .ap-grid,
  .broker_profile_typ_1 .ap-grid,
  .agency_list_typ_1 .ap-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .agency_profile_typ_1 .ap-brokers,
  .broker_profile_typ_1 .ap-brokers,
  .agency_list_typ_1 .ap-brokers {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 61.9375rem) {
  .agency_profile_typ_1 .ap-head,
  .broker_profile_typ_1 .ap-head,
  .agency_list_typ_1 .ap-head {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .agency_profile_typ_1 .ap-head__actions,
  .broker_profile_typ_1 .ap-head__actions,
  .agency_list_typ_1 .ap-head__actions {
    grid-column: 1 / -1;
    flex-direction: row;
    flex-wrap: wrap;
    min-width: 0;
  }
  .agency_profile_typ_1 .ap-head__actions .btn,
  .broker_profile_typ_1 .ap-head__actions .btn,
  .agency_list_typ_1 .ap-head__actions .btn {
    flex: 1 1 12rem;
  }
  .agency_profile_typ_1 .ap-head__links,
  .broker_profile_typ_1 .ap-head__links,
  .agency_list_typ_1 .ap-head__links {
    flex-basis: 100%;
    justify-content: flex-start;
  }
  .agency_profile_typ_1 .ap-grid,
  .broker_profile_typ_1 .ap-grid,
  .agency_list_typ_1 .ap-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .agency_profile_typ_1 .ap-brokers,
  .broker_profile_typ_1 .ap-brokers,
  .agency_list_typ_1 .ap-brokers {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .agency_profile_typ_1 .ap-about__grid,
  .broker_profile_typ_1 .ap-about__grid,
  .agency_list_typ_1 .ap-about__grid,
  .agency_profile_typ_1 .ap-contact__grid,
  .broker_profile_typ_1 .ap-contact__grid,
  .agency_list_typ_1 .ap-contact__grid,
  .agency_profile_typ_1 .rv-layout,
  .broker_profile_typ_1 .rv-layout,
  .agency_list_typ_1 .rv-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .agency_profile_typ_1 .br-layout,
  .broker_profile_typ_1 .br-layout,
  .agency_list_typ_1 .br-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .agency_profile_typ_1 .br-map,
  .broker_profile_typ_1 .br-map,
  .agency_list_typ_1 .br-map {
    position: relative;
    top: 0;
    height: 18rem;
    order: -1;
  }
  .agency_profile_typ_1 .ap-form__grid,
  .broker_profile_typ_1 .ap-form__grid,
  .agency_list_typ_1 .ap-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 47.9375rem) {
  .agency_profile_typ_1,
  .broker_profile_typ_1,
  .agency_list_typ_1 {
    padding-bottom: 5.5rem;
    /* miesto pre lištu dole */
    /* čísla ako tri stĺpce - pri zalomení by bodka ostala na začiatku riadka */
    /* pilulky filtra v jednom riadku s posúvaním - pod sebou by zabrali pol obrazovky */
  }
  .agency_profile_typ_1 .ap-crumbs,
  .broker_profile_typ_1 .ap-crumbs,
  .agency_list_typ_1 .ap-crumbs {
    display: none;
  }
  .agency_profile_typ_1 .ap-head,
  .broker_profile_typ_1 .ap-head,
  .agency_list_typ_1 .ap-head {
    grid-template-columns: minmax(0, 1fr);
    padding: 1.25rem 1rem;
    gap: 1rem;
    /* telefón a správa sú v lište dole - v hlavičke ostane web a Zdieľať */
  }
  .agency_profile_typ_1 .ap-head__logo,
  .broker_profile_typ_1 .ap-head__logo,
  .agency_list_typ_1 .ap-head__logo {
    width: 8rem;
    height: 5rem;
  }
  .agency_profile_typ_1 .ap-head__logo.is-initials,
  .broker_profile_typ_1 .ap-head__logo.is-initials,
  .agency_list_typ_1 .ap-head__logo.is-initials {
    width: 5rem;
    font-size: 1.5rem;
  }
  .agency_profile_typ_1 .ap-head__actions,
  .broker_profile_typ_1 .ap-head__actions,
  .agency_list_typ_1 .ap-head__actions {
    min-width: 0;
  }
  .agency_profile_typ_1 .ap-head__actions .btn,
  .broker_profile_typ_1 .ap-head__actions .btn,
  .agency_list_typ_1 .ap-head__actions .btn {
    display: none !important;
  }
  .agency_profile_typ_1 .ap-head__links,
  .broker_profile_typ_1 .ap-head__links,
  .agency_list_typ_1 .ap-head__links {
    justify-content: flex-start;
    margin: 0;
  }
  .agency_profile_typ_1 .ap-stats,
  .broker_profile_typ_1 .ap-stats,
  .agency_list_typ_1 .ap-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding-top: 0.875rem;
    border-top: 1px solid var(--line-color);
    font-size: 0.8125rem;
  }
  .agency_profile_typ_1 .ap-stats li + li::before,
  .broker_profile_typ_1 .ap-stats li + li::before,
  .agency_list_typ_1 .ap-stats li + li::before {
    content: none;
  }
  .agency_profile_typ_1 .ap-stats li,
  .broker_profile_typ_1 .ap-stats li,
  .agency_list_typ_1 .ap-stats li {
    display: flex;
    flex-direction: column;
  }
  .agency_profile_typ_1 .ap-stats b,
  .broker_profile_typ_1 .ap-stats b,
  .agency_list_typ_1 .ap-stats b {
    font-size: 1.25rem;
    line-height: 1.2;
  }
  .agency_profile_typ_1 .ap-title,
  .broker_profile_typ_1 .ap-title,
  .agency_list_typ_1 .ap-title {
    font-size: 1.5rem;
    line-height: 1.25;
  }
  .agency_profile_typ_1 .ap-block,
  .broker_profile_typ_1 .ap-block,
  .agency_list_typ_1 .ap-block {
    padding: 1.25rem 1rem;
  }
  .agency_profile_typ_1 .ap-tabs,
  .broker_profile_typ_1 .ap-tabs,
  .agency_list_typ_1 .ap-tabs {
    margin-left: calc(var(--page-x, 1rem) * -1);
    margin-right: calc(var(--page-x, 1rem) * -1);
    border-radius: 0;
    border-left: 0;
    border-right: 0;
  }
  .agency_profile_typ_1 .ap-tabs.is-stuck,
  .broker_profile_typ_1 .ap-tabs.is-stuck,
  .agency_list_typ_1 .ap-tabs.is-stuck {
    border-radius: 0;
  }
  .agency_profile_typ_1 .ap-tabs__cta,
  .broker_profile_typ_1 .ap-tabs__cta,
  .agency_list_typ_1 .ap-tabs__cta {
    display: none !important;
  }
  .agency_profile_typ_1 .ap-tabs__nav,
  .broker_profile_typ_1 .ap-tabs__nav,
  .agency_list_typ_1 .ap-tabs__nav {
    gap: 1.25rem;
  }
  .agency_profile_typ_1 .ap-tabs__nav a,
  .broker_profile_typ_1 .ap-tabs__nav a,
  .agency_list_typ_1 .ap-tabs__nav a {
    height: 2.875rem;
    font-size: 0.875rem;
  }
  .agency_profile_typ_1 .ap-filter,
  .broker_profile_typ_1 .ap-filter,
  .agency_list_typ_1 .ap-filter {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    margin-left: -1rem;
    margin-right: -1rem;
    padding: 0 1rem;
  }
  .agency_profile_typ_1 .ap-filter::-webkit-scrollbar,
  .broker_profile_typ_1 .ap-filter::-webkit-scrollbar,
  .agency_list_typ_1 .ap-filter::-webkit-scrollbar {
    display: none;
  }
  .agency_profile_typ_1 .ap-filter .filter-pill,
  .broker_profile_typ_1 .ap-filter .filter-pill,
  .agency_list_typ_1 .ap-filter .filter-pill {
    flex-shrink: 0;
  }
  .agency_profile_typ_1 .ap-grid,
  .broker_profile_typ_1 .ap-grid,
  .agency_list_typ_1 .ap-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
  }
  .agency_profile_typ_1 .ap-brokers,
  .broker_profile_typ_1 .ap-brokers,
  .agency_list_typ_1 .ap-brokers {
    grid-template-columns: minmax(0, 1fr);
  }
  .agency_profile_typ_1 .ap-search,
  .broker_profile_typ_1 .ap-search,
  .agency_list_typ_1 .ap-search {
    width: 100%;
  }
  .agency_profile_typ_1 .ap-map,
  .broker_profile_typ_1 .ap-map,
  .agency_list_typ_1 .ap-map {
    height: 14rem;
  }
  .agency_profile_typ_1 .ap-form__foot,
  .broker_profile_typ_1 .ap-form__foot,
  .agency_list_typ_1 .ap-form__foot {
    flex-direction: column;
    align-items: stretch;
  }
  .agency_profile_typ_1 .ap-form__foot .btn,
  .broker_profile_typ_1 .ap-form__foot .btn,
  .agency_list_typ_1 .ap-form__foot .btn {
    justify-content: center;
  }
  .agency_profile_typ_1 .rv-form,
  .broker_profile_typ_1 .rv-form,
  .agency_list_typ_1 .rv-form {
    padding: 1rem;
  }
  .agency_profile_typ_1 .rv-form__grid,
  .broker_profile_typ_1 .rv-form__grid,
  .agency_list_typ_1 .rv-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .agency_profile_typ_1 .rv-form__btns,
  .broker_profile_typ_1 .rv-form__btns,
  .agency_list_typ_1 .rv-form__btns {
    justify-content: space-between;
  }
  .agency_profile_typ_1 .rv-pick button,
  .broker_profile_typ_1 .rv-pick button,
  .agency_list_typ_1 .rv-pick button {
    width: 2.25rem;
    height: 2.25rem;
  }
  .agency_profile_typ_1 .rv-pick__txt,
  .broker_profile_typ_1 .rv-pick__txt,
  .agency_list_typ_1 .rv-pick__txt {
    flex-basis: 100%;
    margin: 0.25rem 0 0;
  }
  .agency_profile_typ_1 .rv-pick,
  .broker_profile_typ_1 .rv-pick,
  .agency_list_typ_1 .rv-pick {
    flex-wrap: wrap;
  }
  .agency_profile_typ_1 .ap-branch-pick,
  .broker_profile_typ_1 .ap-branch-pick,
  .agency_list_typ_1 .ap-branch-pick {
    width: 100%;
    margin-left: 0;
  }
  .agency_profile_typ_1 .br-map,
  .broker_profile_typ_1 .br-map,
  .agency_list_typ_1 .br-map {
    height: 16rem;
  }
  .agency_profile_typ_1 .br-map .ld-pin,
  .broker_profile_typ_1 .br-map .ld-pin,
  .agency_list_typ_1 .br-map .ld-pin {
    width: 1.75rem;
    height: 1.75rem;
    border-width: 2px;
  }
  .agency_profile_typ_1 .br-map .ld-pin svg,
  .broker_profile_typ_1 .br-map .ld-pin svg,
  .agency_list_typ_1 .br-map .ld-pin svg {
    width: 0.875rem;
    height: 0.875rem;
  }
  .agency_profile_typ_1 .br-map .ld-pin.is-branch,
  .broker_profile_typ_1 .br-map .ld-pin.is-branch,
  .agency_list_typ_1 .br-map .ld-pin.is-branch {
    width: 1.375rem;
    height: 1.375rem;
  }
  .agency_profile_typ_1 .br-map .ld-pin.is-branch svg,
  .broker_profile_typ_1 .br-map .ld-pin.is-branch svg,
  .agency_list_typ_1 .br-map .ld-pin.is-branch svg {
    width: 0.75rem;
    height: 0.75rem;
  }
  .agency_profile_typ_1 .rv-google,
  .broker_profile_typ_1 .rv-google,
  .agency_list_typ_1 .rv-google {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
    padding: 1rem;
    /* pruh s posúvaním - flex, nie grid s auto-columns v % (ten roztiahol stránku na 935 px) */
  }
  .agency_profile_typ_1 .rv-google__list,
  .broker_profile_typ_1 .rv-google__list,
  .agency_list_typ_1 .rv-google__list {
    position: relative;
    /* sr-only v kartách inak uteká z pruhu */
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .agency_profile_typ_1 .rv-google__list::-webkit-scrollbar,
  .broker_profile_typ_1 .rv-google__list::-webkit-scrollbar,
  .agency_list_typ_1 .rv-google__list::-webkit-scrollbar {
    display: none;
  }
  .agency_profile_typ_1 .rv-google__list > li,
  .broker_profile_typ_1 .rv-google__list > li,
  .agency_list_typ_1 .rv-google__list > li {
    flex: 0 0 80%;
    scroll-snap-align: start;
  }
  .agency_profile_typ_1 .ap-bar,
  .broker_profile_typ_1 .ap-bar,
  .agency_list_typ_1 .ap-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem calc(0.625rem + env(safe-area-inset-bottom));
    background: var(--white-color);
    border-top: 1px solid var(--line-color);
    box-shadow: 0 -4px 16px rgba(28, 28, 26, 0.08);
  }
  .agency_profile_typ_1 .ap-bar__name,
  .broker_profile_typ_1 .ap-bar__name,
  .agency_list_typ_1 .ap-bar__name {
    margin-right: auto;
    min-width: 0;
  }
  .agency_profile_typ_1 .ap-bar__name b,
  .broker_profile_typ_1 .ap-bar__name b,
  .agency_list_typ_1 .ap-bar__name b {
    display: block;
    font-family: var(--first-font);
    font-size: 1rem;
    color: var(--first-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .agency_profile_typ_1 .ap-bar__name small,
  .broker_profile_typ_1 .ap-bar__name small,
  .agency_list_typ_1 .ap-bar__name small {
    font-size: 0.75rem;
    color: var(--mute);
  }
  .agency_profile_typ_1 .ap-bar .btn,
  .broker_profile_typ_1 .ap-bar .btn,
  .agency_list_typ_1 .ap-bar .btn {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    flex-shrink: 0;
  }
}
/* pobočky v Kontakte (Real\Ucet\Pobocky) */
.agency_profile_typ_1 .ap-lines + .ap-h3 {
  margin-top: 1.5rem;
}
.agency_profile_typ_1 .ap-branches {
  list-style: none;
  margin: 0 0 1rem;
  padding: 0;
  display: grid;
  gap: 0.75rem;
}
.agency_profile_typ_1 .ap-branches li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.625rem;
  align-items: start;
  font-size: 0.9375rem;
}
.agency_profile_typ_1 .ap-branches .i {
  color: var(--first-color);
  margin-top: 0.1875rem;
}
.agency_profile_typ_1 .ap-branches b {
  display: block;
  color: var(--ink);
}
.agency_profile_typ_1 .ap-branches span,
.agency_profile_typ_1 .ap-branches a:not(.btn-link) {
  display: block;
  color: var(--warm);
}
.agency_profile_typ_1 .ap-branches .btn-link {
  font-size: 0.875rem;
  white-space: nowrap;
}
/* ---------------------------------------------------------------------------
   broker_profile_typ_1 - stránka makléra (bydo, /makler/{meno}-{id}). Bloky ap-* a rv-* (hlavička, ponuky,
   okresy, recenzie, formulár, lišta na mobile) sú spoločné s profilom realitky v _agency_profile_typ_1.less.
   Tu len to, čo má iba maklér: veľká fotka v kruhu, realitka s logom pod menom, okresy + recenzie vedľa seba,
   správa + karta kancelárie.
   --------------------------------------------------------------------------- */
.broker_profile_typ_1 {
  /* realitka pod menom: logo + názov, celé je odkaz na profil realitky */
  /* okresy a recenzie vedľa seba; bez okresov recenzie cez celú šírku */
  /* kontakt: formulár + kancelária vpravo */
}
.broker_profile_typ_1 .mk-photo {
  width: 8.5rem;
  height: 8.5rem;
  border-radius: 50%;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--purple-50);
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 2.25rem;
}
.broker_profile_typ_1 .mk-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}
.broker_profile_typ_1 .mk-agency {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 1rem;
  padding: 0.375rem 0.875rem 0.375rem 0.375rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  text-decoration: none;
  max-width: 100%;
  transition: var(--trans-200);
}
.broker_profile_typ_1 .mk-agency:hover {
  border-color: var(--purple-200);
  background: var(--purple-50);
}
.broker_profile_typ_1 .mk-agency__logo {
  width: 4.5rem;
  height: 2.75rem;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  border-radius: 0.5rem;
  background: var(--white-color);
}
.broker_profile_typ_1 .mk-agency__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.broker_profile_typ_1 .mk-agency__logo.is-initials {
  width: 2.75rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
  font-weight: 800;
  font-size: 0.875rem;
}
.broker_profile_typ_1 .mk-agency__txt {
  min-width: 0;
}
.broker_profile_typ_1 .mk-agency__txt b {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  color: var(--ink);
  font-size: 0.9375rem;
}
.broker_profile_typ_1 .mk-agency__txt small {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
}
.broker_profile_typ_1 .mk-agency__ok {
  width: 1rem;
  height: 1rem;
  color: var(--accent-text);
}
.broker_profile_typ_1 .mk-star {
  width: 1rem;
  height: 1rem;
  color: var(--star-color);
  vertical-align: -0.125rem;
}
.broker_profile_typ_1 .ap-stats li {
  display: inline-flex;
  align-items: baseline;
  gap: 0.3rem;
}
.broker_profile_typ_1 .mk-row {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  gap: 0 1.25rem;
  align-items: start;
}
.broker_profile_typ_1 .mk-row.is-single {
  grid-template-columns: minmax(0, 1fr);
}
.broker_profile_typ_1 .mk-row > .ap-block {
  min-width: 0;
}
.broker_profile_typ_1 .ap-empty a {
  font-weight: 600;
}
.broker_profile_typ_1 .mk-contact {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 18rem;
  gap: 1.5rem 2.5rem;
  align-items: start;
}
.broker_profile_typ_1 .mk-contact .ap-form {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
.broker_profile_typ_1 .mk-contact .ap-form__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.broker_profile_typ_1 .mk-office {
  padding: 1.25rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.broker_profile_typ_1 .mk-office > b {
  display: block;
  color: var(--ink);
  margin-bottom: 0.625rem;
}
.broker_profile_typ_1 .mk-office p {
  display: flex;
  gap: 0.5rem;
  margin: 0 0 0.5rem;
  color: var(--warm);
  font-size: 0.9375rem;
}
.broker_profile_typ_1 .mk-office p .i {
  color: var(--accent-text);
  margin-top: 0.125rem;
}
.broker_profile_typ_1 .mk-office p.ap-open.is-closed .i {
  color: var(--mute);
}
.broker_profile_typ_1 .mk-office__btns {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1.25rem;
  margin-top: 1rem;
}
.broker_profile_typ_1 .mk-office__btns .btn,
.broker_profile_typ_1 .mk-office__btns .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
@media (max-width: 61.9375rem) {
  .broker_profile_typ_1 .mk-row,
  .broker_profile_typ_1 .mk-contact {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 47.9375rem) {
  .broker_profile_typ_1 .mk-photo {
    width: 6rem;
    height: 6rem;
    font-size: 1.75rem;
  }
  .broker_profile_typ_1 .mk-contact .ap-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* ---------------------------------------------------------------------------
   Správa inzerentovi - widget Form/form_detail_typ_1 (detail inzerátu `.ld-form`, profil realitky `.ap-form`).
   Panel ako žiadosť o hypotéku na kalkulačke (Jozef 12. 11.: formulár sa strácal): tónované pozadie,
   nadpis s podnadpisom vnútri, biele polia, popisy bez kapitálok, tlačidlo na celú šírku.
   Obal `.fd-panel` kreslí šablóna detailu / profilu, polia a pätu widget (`ld-form__*` / `ap-form__*`).
   --------------------------------------------------------------------------- */
.fd-panel {
  background: var(--cream);
  border-radius: var(--radius-md);
  padding: 1.75rem 2rem 1.5rem;
  /* rýchle témy: biele pilulky na tónovanom pozadí */
  /* polia: meno cez celú šírku, e-mail a telefón vedľa seba (ako žiadosť o hypotéku) */
  /* päta: tlačidlo cez celú šírku, drobný text pod ním */
}
.fd-panel .fd-head {
  margin-bottom: 1.25rem;
}
.fd-panel .fd-title {
  font-family: var(--first-font);
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: var(--first-color);
  margin: 0 0 0.375rem;
}
.fd-panel .fd-sub {
  margin: 0;
  font-size: 0.9375rem;
  color: var(--warm);
}
.fd-panel .fd-sub b {
  color: var(--ink);
  font-weight: 600;
}
.fd-panel .filter-pill:not(.is-active) {
  background: var(--white-color);
}
.fd-panel .ld-form__grid,
.fd-panel .ap-form__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.fd-panel .ld-form__grid > .field:first-child,
.fd-panel .ap-form__grid > .field:first-child {
  grid-column: 1 / -1;
}
.fd-panel .field > label {
  text-transform: none;
  letter-spacing: 0;
  font-family: var(--second-font);
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--warm);
}
.fd-panel .input-wrap,
.fd-panel textarea.fb-input {
  background: var(--white-color);
}
.fd-panel .ld-form__foot,
.fd-panel .ap-form__foot {
  flex-direction: column;
  align-items: stretch;
  gap: 0.75rem;
  margin-top: 1.25rem;
}
.fd-panel .ld-form__foot .btn,
.fd-panel .ap-form__foot .btn {
  width: 100%;
  justify-content: center;
}
.fd-panel .ld-form__foot .ld-fine,
.fd-panel .ap-form__foot .ld-fine,
.fd-panel .ld-form__foot .ap-fine,
.fd-panel .ap-form__foot .ap-fine {
  margin: 0;
  max-width: none;
  text-align: center;
}
/* profil realitky: panel nahrádza deliacu čiaru nad formulárom */
.ap-form.fd-panel {
  border-top: 0;
  margin-top: 1.75rem;
}
/* bez karty vpravo je nad formulárom kto ponúka (`ld-form__who`) - podnadpis by ho len opakoval */
@media (max-width: 61.9375rem) {
  .ld-form .fd-sub {
    display: none;
  }
  .ld-form .fd-panel .ld-form__who {
    background: var(--white-color);
  }
}
@media (max-width: 47.9375rem) {
  .fd-panel {
    padding: 1.25rem 1rem;
  }
  .fd-panel .ld-form__grid,
  .fd-panel .ap-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* ---------------------------------------------------------------------------
   Mapy Leaflet na celom webe (detail, výpis, profil realitky, pridanie inzerátu) - spoločné ovládanie.
   Priblíženie +/- ako okrúhle tlačidlá (vzor .ld-round na fotke detailu), nie hranatý blok Leafletu
   s posunutými znakmi (Jozef 12. 11.). Podklad mapy: jadro MapaPodklad / wfrPodklad (vlastné PMTiles).
   --------------------------------------------------------------------------- */
.leaflet-container .leaflet-control-zoom.leaflet-bar {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  border: 0;
  box-shadow: none;
  background: none;
}
.leaflet-container .leaflet-control-zoom.leaflet-bar a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  border-radius: 50% !important;
  background: var(--white-color);
  color: var(--first-color);
  box-shadow: 0 2px 8px rgba(28, 28, 26, 0.16);
  font-size: 0;
  /* znaky + a − z Leafletu sedia v písme posunuto - namiesto nich SVG ikona (maska) */
  text-decoration: none;
}
.leaflet-container .leaflet-control-zoom.leaflet-bar a span {
  display: none;
}
.leaflet-container .leaflet-control-zoom.leaflet-bar a::before {
  content: "";
  width: 1.125rem;
  height: 1.125rem;
  background: currentColor;
  -webkit-mask: var(--ikona) center / contain no-repeat;
  mask: var(--ikona) center / contain no-repeat;
}
.leaflet-container .leaflet-control-zoom.leaflet-bar a.leaflet-control-zoom-in {
  --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
}
.leaflet-container .leaflet-control-zoom.leaflet-bar a.leaflet-control-zoom-out {
  --ikona: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");
}
.leaflet-container .leaflet-control-zoom.leaflet-bar a.leaflet-disabled {
  color: var(--mute);
  opacity: 0.55;
  cursor: default;
}
/* ---------------------------------------------------------------------------
   agency_list_typ_1 - zoznam realitných kancelárií (bydo, /realitne-kancelarie a /realitne-kancelarie/okres/{okres}).
   Hlavička s počtami, hľadanie (názov, okres, poradie), časté okresy, karty realitiek, stránkovač 1b, výzva pre realitky.
   Štítok (.ap-tag), čísla (.ap-stats) a hodnotenie (.ap-rating) zdieľa s profilom realitky - selektor je
   v _agency_profile_typ_1.less, tu sú len veci zoznamu (al-*).
   --------------------------------------------------------------------------- */
.agency_list_typ_1 {
  padding: 1.25rem 0 3rem;
  /* ---- hlavička ---- */
  /* ---- hľadanie ---- */
  /* ---- časté okresy ---- */
  /* ---- karty ---- */
  /* ---- prázdny výsledok ---- */
  /* ---- výzva pre realitky ---- */
  /* ---- tablet ---- */
  /* ---- mobil ---- */
}
.agency_list_typ_1 .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.agency_list_typ_1 .i svg {
  width: 100%;
  height: 100%;
}
.agency_list_typ_1 .al-crumbs {
  margin: 0 0 1rem;
}
.agency_list_typ_1 .al-head {
  margin-bottom: 1.25rem;
  max-width: 46rem;
}
.agency_list_typ_1 .al-title {
  font-family: var(--first-font);
  font-size: var(--h2);
  line-height: var(--h2-lh);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.5rem;
}
.agency_list_typ_1 .al-lead {
  margin: 0;
  color: var(--warm);
}
.agency_list_typ_1 .al-bar {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 0.75rem 1rem;
  align-items: end;
  padding: 1.25rem;
  margin-bottom: 1rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.agency_list_typ_1 .al-bar .field {
  margin: 0;
}
.agency_list_typ_1 .al-bar .input-wrap {
  position: relative;
}
.agency_list_typ_1 .al-bar input[type="search"] {
  padding-right: 2.5rem;
}
.agency_list_typ_1 .al-bar input[type="search"]::-webkit-search-cancel-button {
  display: none;
}
.agency_list_typ_1 .al-bar__clear {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  padding: 0.375rem;
  border-radius: 50%;
  color: var(--mute);
}
.agency_list_typ_1 .al-bar__clear:hover {
  color: var(--first-color);
  background: var(--purple-50);
}
.agency_list_typ_1 .al-bar__go {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.agency_list_typ_1 .al-quick {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-bottom: 1.5rem;
}
.agency_list_typ_1 .al-quick__label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.agency_list_typ_1 .al-quick .filter-pills {
  margin: 0;
}
.agency_list_typ_1 .al-quick .filter-pill {
  text-decoration: none;
}
.agency_list_typ_1 .al-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-bottom: 1rem;
}
.agency_list_typ_1 .al-toolbar__count {
  color: var(--warm);
}
.agency_list_typ_1 .al-toolbar__count b {
  font-family: var(--first-font);
  font-weight: 800;
  color: var(--first-color);
}
.agency_list_typ_1 .al-grid {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  margin: 0;
  padding: 0;
}
.agency_list_typ_1 .al-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 1.25rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
  /* logo celé v obdĺžniku (ako hlavička profilu), bez loga iniciály v kruhu */
  /* tlačidlo vždy pri spodku karty, aj keď má karta menej riadkov */
}
.agency_list_typ_1 .al-card:hover {
  border-color: var(--purple-200);
  box-shadow: var(--shadow-card-2);
}
.agency_list_typ_1 .al-card__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 1rem;
}
.agency_list_typ_1 .al-card__logo {
  width: 8rem;
  height: 4.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.agency_list_typ_1 .al-card__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.agency_list_typ_1 .al-card__logo.is-initials {
  width: 4.5rem;
  border-radius: 50%;
  border: 0;
  background: var(--purple-50);
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.375rem;
  letter-spacing: 0.02em;
}
.agency_list_typ_1 .al-card__name {
  font-family: var(--first-font);
  font-size: 1.125rem;
  line-height: 1.3;
  font-weight: 800;
  margin: 0 0 0.25rem;
  /* celá karta je klikateľná na profil (tlačidlo dole je ten istý cieľ) */
}
.agency_list_typ_1 .al-card__name a {
  color: var(--first-color);
  text-decoration: none;
}
.agency_list_typ_1 .al-card__name a::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
}
.agency_list_typ_1 .al-card__loc {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin: 0 0 0.75rem;
  color: var(--warm);
  font-size: 0.875rem;
}
.agency_list_typ_1 .al-card__loc .i {
  width: 1rem;
  height: 1rem;
  color: var(--accent-text);
}
.agency_list_typ_1 .al-card__here {
  margin: 0 0 0.375rem;
  color: var(--accent-text);
  font-weight: 600;
  font-size: 0.9375rem;
}
.agency_list_typ_1 .al-card__here b {
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.125rem;
}
.agency_list_typ_1 .al-card__stats {
  font-size: 0.875rem;
}
.agency_list_typ_1 .al-card__stats b {
  font-size: 1rem;
}
.agency_list_typ_1 .al-card__rating {
  margin-top: 0.625rem;
}
.agency_list_typ_1 .al-card__norating {
  margin: 0.625rem 0 0;
  color: var(--mute);
  font-size: 0.875rem;
}
.agency_list_typ_1 .al-card__areas {
  margin: 0.875rem 0 0;
  padding-top: 0.875rem;
  border-top: 1px solid var(--line-color);
  font-size: 0.875rem;
  color: var(--warm);
  /* odkazy na okres sú nad klikateľnou plochou karty */
}
.agency_list_typ_1 .al-card__areas > span {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  margin-bottom: 0.25rem;
}
.agency_list_typ_1 .al-card__areas a {
  position: relative;
  z-index: 1;
  color: var(--first-color);
}
.agency_list_typ_1 .al-card__foot {
  margin-top: auto;
  padding-top: 1.25rem;
}
.agency_list_typ_1 .al-card__go {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  width: 100%;
}
.agency_list_typ_1 .al-pager {
  margin-top: 1.5rem;
}
.agency_list_typ_1 .al-pager .listing-pager-row {
  justify-content: space-between;
}
.agency_list_typ_1 .al-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  padding: 2.5rem 1.25rem;
  text-align: center;
  background: var(--white-color);
  border: 1px dashed var(--line-color);
  border-radius: var(--radius-md);
}
.agency_list_typ_1 .al-empty p {
  margin: 0;
  max-width: 28rem;
  color: var(--warm);
}
.agency_list_typ_1 .al-empty__ic {
  display: inline-flex;
  padding: 0.875rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
}
.agency_list_typ_1 .al-empty__ic .i {
  width: 1.75rem;
  height: 1.75rem;
}
.agency_list_typ_1 .al-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 2rem;
  margin-top: 2.5rem;
  padding: 1.75rem;
  background: var(--purple-50);
  border-radius: var(--radius-md);
}
.agency_list_typ_1 .al-cta__title {
  font-family: var(--first-font);
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.375rem;
}
.agency_list_typ_1 .al-cta p {
  margin: 0;
  max-width: 40rem;
  color: var(--warm);
}
.agency_list_typ_1 .al-cta .btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
@media (max-width: 61.9375rem) {
  .agency_list_typ_1 .al-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    /* Enter v poli, okres a poradie načítajú hneď */
  }
  .agency_list_typ_1 .al-bar__q {
    grid-column: 1 / -1;
  }
  .agency_list_typ_1 .al-bar__go {
    display: none;
  }
  .agency_list_typ_1 .al-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 47.9375rem) {
  .agency_list_typ_1 {
    /* časté okresy v jednom posuvnom riadku */
  }
  .agency_list_typ_1 .al-crumbs {
    display: none;
  }
  .agency_list_typ_1 .al-bar {
    grid-template-columns: minmax(0, 1fr);
    padding: 1rem;
  }
  .agency_list_typ_1 .al-quick {
    flex-wrap: nowrap;
    overflow: hidden;
  }
  .agency_list_typ_1 .al-quick .filter-pills {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: 0.125rem;
  }
  .agency_list_typ_1 .al-quick .filter-pills::-webkit-scrollbar {
    display: none;
  }
  .agency_list_typ_1 .al-quick .filter-pill {
    flex-shrink: 0;
  }
  .agency_list_typ_1 .al-quick__label {
    display: none;
  }
  .agency_list_typ_1 .al-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
  }
  .agency_list_typ_1 .al-card {
    padding: 1rem;
  }
  .agency_list_typ_1 .al-cta {
    flex-direction: column;
    align-items: stretch;
    padding: 1.25rem;
  }
  .agency_list_typ_1 .al-cta .btn {
    justify-content: center;
  }
}
/* ---------------------------------------------------------------------------
   account_auth_typ_1 - prihlásenie, registrácia (súkromná osoba / realitka s IČO; existujúci profil = žiadosť o prevod),
   overenie e-mailu kódom, zabudnuté heslo, hotovo (bydo, /prihlasenie, /registracia, /zabudnute-heslo).
   Polia, Google, kód a hlásenia (.la-auth__*, .la-final*, .la-otp, .la-err, .la-hint) zdieľa s pridaním inzerátu -
   selektor je v _listing_add_typ_1.less, tu je len rozloženie a to, čo pridanie nemá (au-*).
   --------------------------------------------------------------------------- */
.account_auth_typ_1 {
  padding: 2.5rem 0 4rem;
  /* prepínač ukážky - len v manuáli */
  /* formulár vľavo, výhody vpravo; kód / hotovo v strede bez výhod */
  /* typ účtu - segment cez celú šírku karty (rovnaký ako Predaj/Prenájom vo filtri) */
  /* oficiálne tlačidlo Google (iframe GIS) - výška vopred, aby formulár neskákal */
  /* realitka už na bydo je: logo + názov + počet ponúk */
  /* hláška zo servera (zlé heslo, kód nesedí ...) - pod formulárom, nad tlačidlom */
  /* rozcestník účtu (/ucet) */
  /* PIN na zapamätanom zariadení (vzor chaty): krstné meno v kruhu, zamaskovaný e-mail, PIN */
  /* Turnstile beží neviditeľne (interaction-only), keď chce kliknutie, ukáže sa pod formulárom */
  /* výhody účtu */
  /* ---- stránka účtu: polovica na polovicu cez celé okno, vzor prihlásenie do adminu (Jozef 12. 11.) ---- */
  /* scéna: izometrická karta inzerátu + plávajúce tvary */
  /* bubliny vedľa karty - jedna naraz, striedajú sa (Jozef 12. 11.) */
  /* karta striedá ponuky - prelínanie fotky a textu */
  /* zabudnuté heslo: funkcie webu */
  /* ---- tablet a mobil: výhody pod formulárom ---- */
}
.account_auth_typ_1 .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.account_auth_typ_1 .i svg {
  width: 100%;
  height: 100%;
}
.account_auth_typ_1 .au-demo {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.375rem;
  padding: 0.5rem 0.75rem;
  margin-bottom: 2rem;
  border: 1px dashed var(--line-color);
  border-radius: var(--radius-sm);
  font-size: 0.75rem;
  color: var(--mute);
}
.account_auth_typ_1 .au-layout {
  display: grid;
  grid-template-columns: minmax(0, 28rem) minmax(0, 22rem);
  justify-content: center;
  gap: 2rem 3.5rem;
  align-items: start;
}
.account_auth_typ_1 .au-layout.is-narrow {
  grid-template-columns: minmax(0, 32rem);
}
.account_auth_typ_1 .au-title {
  font-family: var(--first-font);
  font-size: var(--h2);
  line-height: var(--h2-lh);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.375rem;
}
.account_auth_typ_1 .au-lead {
  margin: 0;
  color: var(--warm);
}
.account_auth_typ_1 .au-lead .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-weight: 700;
}
.account_auth_typ_1 .au-card .field {
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
}
.account_auth_typ_1 .au-card .input-wrap {
  position: relative;
}
.account_auth_typ_1 .au-card .la-auth__google {
  margin-top: 0;
}
.account_auth_typ_1 .la-auth__gsi {
  display: flex;
  justify-content: center;
  min-height: 2.75rem;
}
.account_auth_typ_1 .au-kind {
  margin: 0 0 1.25rem;
}
.account_auth_typ_1 .au-kind button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
}
.account_auth_typ_1 .au-kind button .i {
  width: 1rem;
  height: 1rem;
}
.account_auth_typ_1 .au-forgot {
  align-self: flex-end;
  margin-top: 0.375rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.8125rem;
}
.account_auth_typ_1 .au-alt {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  width: 100%;
  margin-top: 0.875rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_auth_typ_1 .au-alt .i {
  width: 1rem;
  height: 1rem;
}
.account_auth_typ_1 .au-terms {
  margin: 0.875rem 0 0;
  font-size: 0.75rem;
  color: var(--mute);
  text-align: center;
}
.account_auth_typ_1 .au-news {
  margin-top: 1.25rem;
}
.account_auth_typ_1 .au-news .fb-check-txt {
  font-size: 0.875rem;
  color: var(--warm);
}
.account_auth_typ_1 .au-found {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  margin-top: 1rem;
  padding: 0.875rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--green-50);
  font-size: 0.875rem;
  color: var(--warm);
}
.account_auth_typ_1 .au-found b {
  display: block;
  color: var(--first-color);
  font-size: 1rem;
}
.account_auth_typ_1 .au-found small {
  display: block;
  margin-top: 0.25rem;
  color: var(--accent-text);
  font-weight: 600;
  font-size: 0.8125rem;
}
.account_auth_typ_1 .au-found__logo {
  flex-shrink: 0;
  width: 5rem;
  height: 3.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.375rem;
  border-radius: var(--radius-sm);
  background: var(--white-color);
  border: 1px solid var(--line-color);
}
.account_auth_typ_1 .au-found__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.account_auth_typ_1 .au-found__logo.is-initials {
  width: 3.25rem;
  border-radius: 50%;
  border: 0;
  background: var(--purple-50);
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 800;
}
.account_auth_typ_1 .au-forgot-card {
  text-align: left;
  margin-top: 0;
}
.account_auth_typ_1 .au-msg {
  margin: 1rem 0 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--color-error);
}
.account_auth_typ_1 .au-msg.is-ok {
  color: var(--accent-text);
}
.account_auth_typ_1 .au-msg .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: inherit;
}
.account_auth_typ_1 .la-final .au-msg {
  text-align: center;
}
.account_auth_typ_1 .au-verify {
  margin-top: 1.5rem;
  text-align: center;
}
.account_auth_typ_1 .au-verify .la-final__title {
  margin-top: 0;
}
.account_auth_typ_1 .au-verify .la-otp {
  margin-top: 1rem;
}
.account_auth_typ_1 .au-hub {
  list-style: none;
  margin: 1.5rem 0 0;
  padding: 0;
  border-top: 1px solid var(--line-color);
}
.account_auth_typ_1 .au-hub li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--line-color);
  color: var(--warm);
  font-size: 0.9375rem;
}
.account_auth_typ_1 .au-hub li > span:not(.i) {
  flex: 1;
}
.account_auth_typ_1 .au-hub li b {
  color: var(--ink);
  margin-right: 0.375rem;
}
.account_auth_typ_1 .au-hub li .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-weight: 700;
}
.account_auth_typ_1 .au-hub .i {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--first-color);
}
.account_auth_typ_1 .au-hub__actions {
  justify-content: flex-start;
  margin-top: 1.5rem;
}
.account_auth_typ_1 .au-hub__actions .btn {
  gap: 0.5rem;
}
.account_auth_typ_1 .au-hub__actions .i {
  width: 1.125rem;
  height: 1.125rem;
}
.account_auth_typ_1 .au-pin__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  background: var(--first-color);
  color: var(--white-color);
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.5rem;
}
.account_auth_typ_1 .au-pin__links {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1rem;
}
.account_auth_typ_1 .au-pin__links .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_auth_typ_1 .au-sub {
  font-family: var(--first-font);
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 2rem 0 0.25rem;
}
.account_auth_typ_1 .au-tag {
  display: inline-block;
  padding: 0.0625rem 0.5rem;
  border-radius: var(--radius-sm);
  background: var(--green-50);
  color: var(--accent-text);
  font-weight: 700;
  font-size: 0.75rem;
}
.account_auth_typ_1 .au-devices {
  margin-top: 0.75rem;
}
.account_auth_typ_1 .au-devices small {
  color: var(--mute);
}
.account_auth_typ_1 .au-devices li > span.au-devices__act {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.25rem;
  flex: 0 0 auto;
}
.account_auth_typ_1 .au-captcha {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 28rem;
  margin: 1.5rem auto 0;
}
.account_auth_typ_1 .au-captcha:empty {
  display: none;
}
.account_auth_typ_1 .au-captcha .cf-turnstile {
  width: 100%;
}
.account_auth_typ_1 .au-side {
  margin-top: 4.5rem;
  padding: 1.5rem;
  border-radius: var(--radius-md);
  background: var(--purple-50);
}
.account_auth_typ_1 .au-side__title {
  font-family: var(--first-font);
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 1rem;
}
.account_auth_typ_1 .au-side__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.875rem;
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_auth_typ_1 .au-side__list li {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
}
.account_auth_typ_1 .au-side__list .i {
  width: 1.375rem;
  height: 1.375rem;
  color: var(--first-color);
  margin-top: 0.0625rem;
}
.account_auth_typ_1 .au-side__list b {
  color: var(--ink);
}
.account_auth_typ_1.is-split {
  padding: 0;
}
.account_auth_typ_1.is-split > .container {
  max-width: none;
  padding: 0;
}
.account_auth_typ_1 .au-split {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  min-height: calc(100svh - 4.5rem);
  /* pod hlavičkou na výšku okna */
  /* nahradil ho prepínač Prihlásenie | Registrácia */
}
.account_auth_typ_1 .au-split .au-main {
  align-self: center;
  justify-self: center;
  width: 100%;
  max-width: 25rem;
  padding: 3rem 1.5rem;
  box-sizing: content-box;
}
.account_auth_typ_1 .au-split .au-lead {
  display: none;
}
.account_auth_typ_1 .au-split .au-tabs ~ div .au-title {
  margin-top: 2.25rem;
}
.account_auth_typ_1 .au-split .la-auth__card {
  border: 0;
  padding: 0;
  background: none;
}
.account_auth_typ_1 .au-split .au-card .field {
  margin-top: 1.125rem;
}
.account_auth_typ_1 .au-split .la-auth__submit {
  margin-top: 1.5rem;
}
.account_auth_typ_1 .au-tabs {
  width: 100%;
}
.account_auth_typ_1 .au-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 4.5rem 5rem 2.5rem;
  background: linear-gradient(160deg, var(--cream) 0%, var(--purple-50) 48%, var(--green-50) 100%);
  /* jemné svetlé škvrny ako vo vzore */
  /* .sk zelené ako v logu */
}
.account_auth_typ_1 .au-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: radial-gradient(40rem 28rem at 100% 0%, rgba(215, 179, 231, 0.45), transparent 70%), radial-gradient(34rem 26rem at 0% 100%, rgba(201, 230, 165, 0.4), transparent 70%);
}
.account_auth_typ_1 .au-panel__title {
  margin: 0;
  font-family: var(--first-font);
  font-weight: 800;
  font-size: clamp(2.75rem, 4.2vw, 4.75rem);
  line-height: 1;
  letter-spacing: -0.035em;
  color: var(--first-color);
  max-width: 9.5ch;
  text-wrap: balance;
}
.account_auth_typ_1 .au-panel__title .au-sk {
  color: var(--accent-color);
}
.account_auth_typ_1 .au-panel__sub {
  margin: 1.25rem 0 0;
  max-width: 28rem;
  font-size: 1.0625rem;
  line-height: 1.5;
  color: var(--warm);
}
.account_auth_typ_1 .au-panel__foot {
  margin: auto 0 0;
  padding-top: 2rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_auth_typ_1 .au-panel__foot b {
  color: var(--first-color);
}
.account_auth_typ_1 .au-scene {
  position: relative;
  flex: 1;
  min-height: 24rem;
  padding-top: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.account_auth_typ_1 .au-scene__bob {
  animation: au-bob 7s ease-in-out infinite;
}
.account_auth_typ_1 .au-iso {
  position: relative;
  width: 21rem;
  transform: rotateX(54deg) rotateZ(-38deg);
  transform-style: preserve-3d;
}
.account_auth_typ_1 .au-c3 {
  position: relative;
  border-radius: 1.125rem;
  background: var(--white-color);
  box-shadow: 0 2.5rem 4rem -1rem rgba(76, 14, 101, 0.25), 0 0.25rem 0 #E4DDEA;
  /* hrana karty */
  overflow: hidden;
}
.account_auth_typ_1 .au-c3--back {
  position: absolute;
  inset: 0;
  transform: translate(1.75rem, -1.75rem);
  background: rgba(255, 255, 255, 0.55);
  box-shadow: none;
}
.account_auth_typ_1 .au-c3__img {
  position: relative;
  aspect-ratio: 16 / 10;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  background: linear-gradient(150deg, var(--purple-300), var(--purple-600));
}
.account_auth_typ_1 .au-c3__img > .i {
  width: 55%;
  height: 75%;
  color: rgba(255, 255, 255, 0.92);
  margin-bottom: -6%;
}
.account_auth_typ_1 .au-c3__img video,
.account_auth_typ_1 .au-c3__img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.account_auth_typ_1 .au-c3__sun {
  position: absolute;
  top: 14%;
  right: 16%;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: var(--accent-color);
}
.account_auth_typ_1 .au-c3__heart {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  display: inline-flex;
  padding: 0.4rem;
  border-radius: 50%;
  background: var(--white-color);
  color: var(--first-color);
}
.account_auth_typ_1 .au-c3__heart .i {
  width: 1rem;
  height: 1rem;
}
.account_auth_typ_1 .au-c3__body {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  padding: 1.125rem 1.25rem 1.375rem;
}
.account_auth_typ_1 .au-c3__price {
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.375rem;
  color: var(--first-color);
}
.account_auth_typ_1 .au-c3__title {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.account_auth_typ_1 .au-c3__line {
  height: 0.5rem;
  border-radius: 1rem;
  background: #E7E2EC;
  width: 85%;
}
.account_auth_typ_1 .au-c3__line.is-short {
  width: 55%;
}
.account_auth_typ_1 .au-c3__pills {
  display: flex;
  gap: 0.4rem;
  margin-top: 0.25rem;
}
.account_auth_typ_1 .au-c3__pills i {
  width: 3.25rem;
  height: 1.25rem;
  border-radius: 1rem;
  background: var(--green-50);
}
.account_auth_typ_1 .au-fl {
  position: absolute;
  display: block;
  animation: au-float 9s ease-in-out infinite;
}
.account_auth_typ_1 .au-fl--pill {
  width: 4.5rem;
  height: 1.375rem;
  border-radius: 1rem;
  background: var(--accent-color);
  right: 12%;
  bottom: 18%;
  transform: rotate(-30deg);
  animation-delay: -2s;
}
.account_auth_typ_1 .au-fl--dot {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--purple-400);
  right: 3%;
  top: 42%;
  width: 2.5rem;
  height: 2.5rem;
  animation-delay: -5s;
}
.account_auth_typ_1 .au-fl--cube {
  width: 3rem;
  height: 3rem;
  border-radius: 0.5rem;
  background: var(--purple-100);
  left: 12%;
  top: 20%;
  transform: rotateX(54deg) rotateZ(-38deg);
  box-shadow: 0 0.4rem 0 var(--purple-200);
}
.account_auth_typ_1 .au-fl--pin {
  left: 18%;
  bottom: 14%;
  display: inline-flex;
  padding: 0.7rem;
  border-radius: 50%;
  background: var(--white-color);
  color: var(--first-color);
  box-shadow: var(--shadow-card-2);
  animation-delay: -3.5s;
}
.account_auth_typ_1 .au-fl--pin .i {
  width: 1.375rem;
  height: 1.375rem;
}
.account_auth_typ_1 .au-feed {
  position: absolute;
  right: 2%;
  top: 0;
  width: 17.5rem;
  height: 5.5rem;
  z-index: 2;
}
.account_auth_typ_1 .au-toast {
  position: absolute;
  inset: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1.125rem 0.75rem 0.75rem;
  border: 0;
  border-radius: var(--radius-md);
  background: var(--white-color);
  box-shadow: 0 1.25rem 2.5rem -0.75rem rgba(76, 14, 101, 0.3);
  font: inherit;
  font-size: 0.8125rem;
  color: var(--warm);
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  cursor: default;
  opacity: 0;
  transform: translateY(-10px) scale(0.97);
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.25s ease;
  /* odchádzajúca rýchlo hore */
  /* nová až po nej */
}
.account_auth_typ_1 .au-toast.is-on {
  opacity: 1;
  transform: none;
  pointer-events: auto;
  transition: opacity 0.45s ease 0.3s, transform 0.5s cubic-bezier(0.3, 0.7, 0.4, 1) 0.3s;
}
.account_auth_typ_1 .au-toast[href],
.account_auth_typ_1 .au-toast.is-video {
  cursor: pointer;
}
.account_auth_typ_1 .au-toast[href]:hover,
.account_auth_typ_1 .au-toast.is-video:hover {
  box-shadow: 0 1.5rem 2.75rem -0.75rem rgba(76, 14, 101, 0.4);
}
.account_auth_typ_1 .au-toast > span:last-child {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.account_auth_typ_1 .au-toast b {
  display: block;
  color: var(--ink);
  font-size: 0.875rem;
}
.account_auth_typ_1 .au-toast__ic {
  flex-shrink: 0;
  display: inline-flex;
  padding: 0.5rem;
  border-radius: 50%;
  background: var(--green-50);
  color: var(--accent-text);
}
.account_auth_typ_1 .au-toast__ic .i {
  width: 1.125rem;
  height: 1.125rem;
}
.account_auth_typ_1 .au-toast.is-video .au-toast__ic {
  background: var(--first-color);
  color: var(--white-color);
}
.account_auth_typ_1 .au-feed__dots {
  position: absolute;
  left: 0.25rem;
  top: 100%;
  margin-top: 0.75rem;
  display: flex;
  gap: 0.3rem;
}
.account_auth_typ_1 .au-feed__dots i {
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 1rem;
  background: rgba(76, 14, 101, 0.18);
  transition: width 0.3s ease, background 0.3s ease;
}
.account_auth_typ_1 .au-feed__dots i.is-on {
  width: 1.25rem;
  background: var(--first-color);
}
.account_auth_typ_1 .au-c3__img img {
  opacity: 0;
  transition: opacity 0.8s ease;
}
.account_auth_typ_1 .au-c3__img img.is-on {
  opacity: 1;
}
.account_auth_typ_1 .au-c3__body {
  position: relative;
}
.account_auth_typ_1 .au-c3__txt {
  display: none;
  flex-direction: column;
  gap: 0.35rem;
}
.account_auth_typ_1 .au-c3__txt.is-on {
  display: flex;
  animation: au-in 0.5s ease;
}
.account_auth_typ_1 .au-tools {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.875rem;
  margin-top: 2.5rem;
  max-width: 36rem;
}
.account_auth_typ_1 .au-tools a {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 1.25rem;
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.75);
  color: var(--warm);
  font-size: 0.8125rem;
  line-height: 1.4;
  text-decoration: none;
  box-shadow: var(--shadow-card-1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.account_auth_typ_1 .au-tools a:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-card-2);
}
.account_auth_typ_1 .au-tools a b {
  color: var(--first-color);
  font-size: 0.9375rem;
}
.account_auth_typ_1 .au-tools a .i {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--accent-text);
  margin-bottom: 0.5rem;
}
@media (prefers-reduced-motion: reduce) {
  .account_auth_typ_1 .au-scene__bob,
  .account_auth_typ_1 .au-fl {
    animation: none;
  }
}
@media (max-width: 61.9375rem) {
  .account_auth_typ_1 {
    /* mobil a tablet: len formulár, panel nie */
  }
  .account_auth_typ_1 .au-layout {
    grid-template-columns: minmax(0, 28rem);
  }
  .account_auth_typ_1 .au-side {
    margin-top: 0;
  }
  .account_auth_typ_1 .au-split {
    grid-template-columns: minmax(0, 1fr);
    justify-content: center;
    min-height: 0;
  }
  .account_auth_typ_1 .au-split .au-main {
    justify-self: stretch;
    max-width: 28rem;
    margin: 0 auto;
    padding: 1.5rem 1rem 3rem;
    box-sizing: border-box;
  }
  .account_auth_typ_1 .au-panel {
    display: none;
  }
}
@media (max-width: 47.9375rem) {
  .account_auth_typ_1 {
    padding-top: 1.25rem;
    /* typ účtu v jednom riadku */
  }
  .account_auth_typ_1 .au-demo {
    margin-bottom: 1.25rem;
  }
  .account_auth_typ_1 .la-auth__card {
    padding: 1.25rem 1rem;
  }
  .account_auth_typ_1 .au-kind .i,
  .account_auth_typ_1 .au-kind__more {
    display: none;
  }
  .account_auth_typ_1 .au-side {
    padding: 1.25rem;
  }
  .account_auth_typ_1 .au-side__list {
    font-size: 0.875rem;
  }
}
/* PIN ako text so skrytými číslicami - pole typu heslo by prehliadač ponúkal na uložené heslá (Jozef 8. 11.) */
.is-masked {
  -webkit-text-security: disc;
  text-security: disc;
}
@keyframes au-bob {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-14px);
  }
}
@keyframes au-float {
  0%,
  100% {
    translate: 0 0;
  }
  50% {
    translate: 0 -18px;
  }
}
@keyframes au-toast {
  0%,
  8% {
    opacity: 0;
    transform: translateY(12px) scale(0.96);
  }
  14%,
  62% {
    opacity: 1;
    transform: none;
  }
  70%,
  100% {
    opacity: 0;
    transform: translateY(-8px);
  }
}
@keyframes au-in {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
/* okno s videom (x-teleport do body) */
.au-vmodal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  background: rgba(20, 0, 30, 0.72);
}
.au-vmodal__box {
  position: relative;
  width: min(60rem, 100%);
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: #000;
  box-shadow: 0 2rem 4rem rgba(0, 0, 0, 0.4);
}
.au-vmodal__box video {
  display: block;
  width: 100%;
  max-height: 80vh;
}
.au-vmodal__x {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 1;
  display: inline-flex;
  padding: 0.5rem;
  border: 0;
  border-radius: 50%;
  background: var(--white-color);
  color: var(--ink);
  cursor: pointer;
}
.au-vmodal__x .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
}
/* ---------------------------------------------------------------------------
   account_agency_typ_1 - účet realitky (bydo, /ucet). Bočné menu (na mobile posuvný pás), záložky Profil (logo, údaje, sídlo,
   otváracie hodiny, Google), Ľudia (ako Pipeticket: pozvať, roly, Pozvaný, vlastník), Recenzie (schváliť / zamietnuť, odpoveď),
   Pobočky, Nastavenia (upozornenia, prevod vlastníctva ako chaty). Lišta Uložiť dole, hlásenie (toast).
   Popisy polí (.la-label, .la-hint, .la-err, .la-opt, .la-count) zdieľa s pridaním inzerátu - selektor v _listing_add_typ_1.less.
   Ten istý základ (menu, karty, ⋯, hlásenie) používa aj účet súkromnej osoby - account_person_typ_1.
   --------------------------------------------------------------------------- */
.account_agency_typ_1,
.account_person_typ_1 {
  /* ---- bočné menu ---- */
  /* ---- obsah ---- */
  /* údaje na faktúre osoby (_account_platby.php): náhľad ako na faktúre, formulár s chybou pri poli */
  /* logo */
  /* otváracie hodiny */
  /* ---- inzeráty (správa) ---- */
  /* zoznam sa prispôsobuje svojej šírke (container query), nie oknu - v účte ho zužuje bočné menu */
  /* až za základnými pravidlami zoznamu - inak ich rovnaká špecificita prebije */
  /* ---- ľudia ---- */
  /* pozvať - rola ako veľké voľby */
  /* upraviť práva (jadro opravnenia5.php): rola = predvoľba, prepínače po skupinách */
  /* okná v účte: obsah nesmie lepiť na čiaru pod hlavičkou a nad pätou (Jozef 8. 11.) - ako detail a hľadanie */
  /* odobrať s inzerátmi: označiť -> komu -> Dať vybrané (opakovať), Odobrať až keď majú všetky makléra */
  /* ---- recenzie ---- */
  /* ---- pobočky ---- */
  /* ---- napojenie ponúk (napojenia-navrh.md) ---- */
  /* Bazoš (export firemným kontom realitky): postup na konto a ceny v rozbaľovačke */
  /* živá karta napojenia (_account_napojenia.php): vypnuté, chyba spojenia, točiaca sa ikona pri sťahovaní (ako iCal na chatách) */
  /* čaká na priradenie: ich hodnota -> naša (návrh alebo výber) */
  /* chyby po inzerátoch */
  /* posledné behy */
  /* sprievodca pridania napojenia */
  /* ---- faktúry a kredit (realitka) / platby a doklady (osoba) - monetizacia.md ---- */
  /* zoznam platieb / faktúr: riadok = čo, kedy a ako, suma + stav, doklad.
     NAJPRV MOBIL: pevné stĺpce len v @container (min-width). Keby boli v základe, mobilný Chrome ich pri prvom rozložení
     (pred vyhodnotením container query) zoberie ako šírku obsahu a roztiahne celý viewport (390 -> 590 px). */
  /* faktúra: názov aj číslo na celú šírku, suma so stavom pod nimi */
  /* spotreba mesiaca: dátum, čo + inzerát, kto objednal, suma (tiež najprv mobil) */
  /* zaplatiť: QR + údaje na prevod */
  /* okno nesmie rásť podľa obsahu (flex položka má min-width: auto) - voľby platby sa zalamujú */
  /* platba SMS: QR hore, pod ním text a číslo na celú šírku (QR len počítač - mobil ho naskenuje, jadro billingSmsQr; Jozef 13. 11.) */
  /* mobil: text SMS v jednom riadku, Kopírovať len ikonou (Jozef 13. 11.) */
  /* mobil: QR nemá čo skenovať, SMS otvorí tlačidlo Napísať SMS */
  /* ---- prevod vlastníctva ---- */
  /* ---- lišta Uložiť a hlásenie ---- */
  /* ---- tablet ---- */
  /* ---- mobil ---- */
}
.account_agency_typ_1 .i,
.account_person_typ_1 .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.account_agency_typ_1 .i svg,
.account_person_typ_1 .i svg {
  width: 100%;
  height: 100%;
}
.account_agency_typ_1 .ac-layout,
.account_person_typ_1 .ac-layout {
  display: grid;
  grid-template-columns: 15.5rem minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
}
.account_agency_typ_1 .ac-side,
.account_person_typ_1 .ac-side {
  position: sticky;
  top: calc(4.5rem + 1rem);
  /* pod lepkavou hlavičkou webu */
  padding: 1rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_agency_typ_1 .ac-side__who,
.account_person_typ_1 .ac-side__who {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.25rem 0.25rem 1rem;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-side__who b,
.account_person_typ_1 .ac-side__who b {
  display: block;
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 800;
  line-height: 1.25;
}
.account_agency_typ_1 .ac-side__who .btn-link,
.account_person_typ_1 .ac-side__who .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0;
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-side__who .btn-link .i,
.account_person_typ_1 .ac-side__who .btn-link .i {
  width: 0.875rem;
  height: 0.875rem;
}
.account_agency_typ_1 .ac-side__logo,
.account_person_typ_1 .ac-side__logo {
  flex-shrink: 0;
  width: 3.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  color: var(--first-color);
  font-weight: 800;
}
.account_agency_typ_1 .ac-side__logo img,
.account_person_typ_1 .ac-side__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.account_agency_typ_1 .ac-side__nav,
.account_person_typ_1 .ac-side__nav {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.account_agency_typ_1 .ac-side__nav a,
.account_person_typ_1 .ac-side__nav a,
.account_agency_typ_1 .ac-side__nav button,
.account_person_typ_1 .ac-side__nav button {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 0.625rem;
  border: 0;
  border-radius: var(--radius-sm);
  background: none;
  color: var(--warm);
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  justify-content: flex-start;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-side__nav a > span:not(.i),
.account_person_typ_1 .ac-side__nav a > span:not(.i),
.account_agency_typ_1 .ac-side__nav button > span:not(.i),
.account_person_typ_1 .ac-side__nav button > span:not(.i) {
  flex: 1;
  text-align: left;
}
.account_agency_typ_1 .ac-side__nav a small,
.account_person_typ_1 .ac-side__nav a small,
.account_agency_typ_1 .ac-side__nav button small,
.account_person_typ_1 .ac-side__nav button small {
  color: var(--mute);
  font-weight: 500;
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-side__nav a:hover,
.account_person_typ_1 .ac-side__nav a:hover,
.account_agency_typ_1 .ac-side__nav button:hover,
.account_person_typ_1 .ac-side__nav button:hover {
  background: var(--cream);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-side__nav a.is-active,
.account_person_typ_1 .ac-side__nav a.is-active,
.account_agency_typ_1 .ac-side__nav button.is-active,
.account_person_typ_1 .ac-side__nav button.is-active {
  background: var(--purple-50);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-side__nav a.is-active .i,
.account_person_typ_1 .ac-side__nav a.is-active .i,
.account_agency_typ_1 .ac-side__nav button.is-active .i,
.account_person_typ_1 .ac-side__nav button.is-active .i {
  color: var(--first-color);
}
.account_agency_typ_1 .ac-side__nav a.is-later,
.account_person_typ_1 .ac-side__nav a.is-later,
.account_agency_typ_1 .ac-side__nav button.is-later,
.account_person_typ_1 .ac-side__nav button.is-later {
  opacity: 0.55;
}
.account_agency_typ_1 .ac-badge,
.account_person_typ_1 .ac-badge {
  min-width: 1.375rem;
  height: 1.375rem;
  padding: 0 0.375rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-badge);
  background: var(--accent-color);
  color: var(--first-color);
  font-size: 0.75rem;
  font-weight: 800;
}
.account_agency_typ_1 .ac-main,
.account_person_typ_1 .ac-main {
  min-width: 0;
  padding-bottom: 4rem;
}
.account_agency_typ_1 .ac-head,
.account_person_typ_1 .ac-head {
  margin-bottom: 1.25rem;
}
.account_agency_typ_1 .ac-head--row,
.account_person_typ_1 .ac-head--row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 1rem;
}
.account_agency_typ_1 .ac-head--row > div,
.account_person_typ_1 .ac-head--row > div {
  flex: 1 1 20rem;
}
.account_agency_typ_1 .ac-head--row .btn,
.account_person_typ_1 .ac-head--row .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-title,
.account_person_typ_1 .ac-title {
  font-family: var(--first-font);
  font-size: var(--h2);
  line-height: var(--h2-lh);
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 0.375rem;
}
.account_agency_typ_1 .ac-lead,
.account_person_typ_1 .ac-lead,
.account_agency_typ_1 .ac-text,
.account_person_typ_1 .ac-text {
  margin: 0;
  color: var(--warm);
  max-width: 40rem;
}
.account_agency_typ_1 .ac-text,
.account_person_typ_1 .ac-text {
  font-size: 0.9375rem;
  margin-bottom: 1rem;
}
.account_agency_typ_1 .ac-card,
.account_person_typ_1 .ac-card {
  padding: 1.5rem;
  margin-bottom: 1.25rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_agency_typ_1 .ac-card .field,
.account_person_typ_1 .ac-card .field {
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
}
.account_agency_typ_1 .ac-card > .field:first-of-type,
.account_person_typ_1 .ac-card > .field:first-of-type {
  margin-top: 0;
}
.account_agency_typ_1 .ac-h2,
.account_person_typ_1 .ac-h2 {
  font-family: var(--first-font);
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 0 0 1rem;
}
.account_agency_typ_1 .ac-h2 small,
.account_person_typ_1 .ac-h2 small {
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--mute);
  margin-left: 0.25rem;
}
.account_agency_typ_1 .ac-h2row,
.account_person_typ_1 .ac-h2row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-bottom: 1rem;
}
.account_agency_typ_1 .ac-h2row .ac-h2,
.account_person_typ_1 .ac-h2row .ac-h2 {
  margin: 0;
}
.account_agency_typ_1 .ac-h2row .btn-link,
.account_person_typ_1 .ac-h2row .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-grid,
.account_person_typ_1 .ac-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 1.25rem;
}
.account_agency_typ_1 .ac-grid .field,
.account_person_typ_1 .ac-grid .field {
  margin-top: 1rem;
}
.account_agency_typ_1 .ac-grid.is-3,
.account_person_typ_1 .ac-grid.is-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.account_agency_typ_1 .ac-fd .ac-h2row,
.account_person_typ_1 .ac-fd .ac-h2row {
  align-items: center;
}
.account_agency_typ_1 .ac-fd .ac-fd__show,
.account_person_typ_1 .ac-fd .ac-fd__show {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-fd .ac-fd__show b,
.account_person_typ_1 .ac-fd .ac-fd__show b {
  color: var(--ink);
  font-weight: 700;
}
.account_agency_typ_1 .ac-fd .ac-fd__form > .field,
.account_person_typ_1 .ac-fd .ac-fd__form > .field {
  margin-top: 1rem;
}
.account_agency_typ_1 .ac-fd .ac-fd__check,
.account_person_typ_1 .ac-fd .ac-fd__check {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 1.25rem 0 0;
  font-weight: 600;
  color: var(--ink);
  cursor: pointer;
}
.account_agency_typ_1 .ac-fd .ac-fd__check input,
.account_person_typ_1 .ac-fd .ac-fd__check input {
  width: 1.125rem;
  height: 1.125rem;
  flex: none;
}
.account_agency_typ_1 .ac-fd .la-err,
.account_person_typ_1 .ac-fd .la-err {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.375rem;
}
.account_agency_typ_1 .ac-fd .ac-note,
.account_person_typ_1 .ac-fd .ac-note {
  margin-top: 1rem;
}
.account_agency_typ_1 .ac-fd .ac-fd__act,
.account_person_typ_1 .ac-fd .ac-fd__act {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin-top: 1.25rem;
}
.account_agency_typ_1 .input-wrap.is-readonly,
.account_person_typ_1 .input-wrap.is-readonly {
  background: var(--cream);
}
.account_agency_typ_1 .input-wrap.is-readonly input,
.account_person_typ_1 .input-wrap.is-readonly input {
  color: var(--mute);
}
.account_agency_typ_1 .ac-desc,
.account_person_typ_1 .ac-desc {
  width: 100%;
  resize: vertical;
}
.account_agency_typ_1 .ac-note,
.account_person_typ_1 .ac-note {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
  margin: 1rem 0 0;
  font-size: 0.875rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-note .i,
.account_person_typ_1 .ac-note .i {
  margin-top: 0.125rem;
}
.account_agency_typ_1 .ac-empty,
.account_person_typ_1 .ac-empty {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  color: var(--accent-text);
  font-weight: 600;
}
.account_agency_typ_1 .ac-check,
.account_person_typ_1 .ac-check {
  margin-top: 0.75rem;
}
.account_agency_typ_1 .ac-check .fb-check-txt,
.account_person_typ_1 .ac-check .fb-check-txt {
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-logo,
.account_person_typ_1 .ac-logo {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.account_agency_typ_1 .ac-logo__img,
.account_person_typ_1 .ac-logo__img {
  flex-shrink: 0;
  width: 9rem;
  height: 5.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.625rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.account_agency_typ_1 .ac-logo__img img,
.account_person_typ_1 .ac-logo__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.account_agency_typ_1 .ac-logo .btn,
.account_person_typ_1 .ac-logo .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-logo .la-hint,
.account_person_typ_1 .ac-logo .la-hint {
  margin-top: 0.5rem;
}
.account_agency_typ_1 .ac-hours,
.account_person_typ_1 .ac-hours {
  display: grid;
  gap: 0.375rem;
}
.account_agency_typ_1 .ac-hours__row,
.account_person_typ_1 .ac-hours__row {
  display: grid;
  grid-template-columns: 7rem auto minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
  min-height: 2.75rem;
}
.account_agency_typ_1 .ac-hours__row.is-closed .ac-hours__day,
.account_person_typ_1 .ac-hours__row.is-closed .ac-hours__day {
  color: var(--mute);
}
.account_agency_typ_1 .ac-hours__day,
.account_person_typ_1 .ac-hours__day {
  font-weight: 700;
  color: var(--ink);
}
.account_agency_typ_1 .ac-hours__time,
.account_person_typ_1 .ac-hours__time {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-hours__time .fb-input,
.account_person_typ_1 .ac-hours__time .fb-input {
  width: 5.5rem;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-kpi,
.account_person_typ_1 .ac-kpi {
  list-style: none;
  margin: 0 0 1.25rem;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}
.account_agency_typ_1 .ac-kpi li,
.account_person_typ_1 .ac-kpi li {
  padding: 1rem 1.125rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_agency_typ_1 .ac-kpi span,
.account_person_typ_1 .ac-kpi span {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_agency_typ_1 .ac-kpi b,
.account_person_typ_1 .ac-kpi b {
  display: block;
  margin: 0.25rem 0;
  font-family: var(--first-font);
  font-size: 1.625rem;
  font-weight: 800;
  color: var(--first-color);
  line-height: 1.1;
}
.account_agency_typ_1 .ac-kpi small,
.account_person_typ_1 .ac-kpi small {
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-kpi small.is-up,
.account_person_typ_1 .ac-kpi small.is-up {
  color: var(--accent-text);
  font-weight: 600;
}
.account_agency_typ_1 .ac-ads-bar,
.account_person_typ_1 .ac-ads-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  margin-bottom: 0.75rem;
}
.account_agency_typ_1 .ac-ads-bar .filter-pills,
.account_person_typ_1 .ac-ads-bar .filter-pills {
  margin: 0;
}
.account_agency_typ_1 .ac-ads-q,
.account_person_typ_1 .ac-ads-q {
  margin: 0;
  min-width: 16rem;
}
.account_agency_typ_1 .ac-ads-bulk,
.account_person_typ_1 .ac-ads-bulk {
  position: sticky;
  top: calc(4.5rem + 0.5rem);
  z-index: 6;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 0.75rem;
  padding: 0.625rem 0.875rem;
  margin-bottom: 0.75rem;
  border-radius: var(--radius-sm);
  background: var(--first-color);
  color: var(--white-color);
}
.account_agency_typ_1 .ac-ads-bulk .btn,
.account_person_typ_1 .ac-ads-bulk .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  background: var(--white-color);
  border-color: var(--white-color);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-ads-bulk .btn-link,
.account_person_typ_1 .ac-ads-bulk .btn-link {
  color: var(--white-color);
  opacity: 0.8;
  padding: 0;
  border: 0;
  background: none;
  margin-left: auto;
}
.account_agency_typ_1 .ac-ads,
.account_person_typ_1 .ac-ads {
  container-type: inline-size;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_agency_typ_1 .ac-ads__head,
.account_person_typ_1 .ac-ads__head,
.account_agency_typ_1 .ac-ad,
.account_person_typ_1 .ac-ad {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 9.5rem 9.5rem 7.5rem;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1.25rem;
}
.account_agency_typ_1 .ac-ads__head,
.account_person_typ_1 .ac-ads__head {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  border-bottom: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-ads__head > span,
.account_person_typ_1 .ac-ads__head > span {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_agency_typ_1 .ac-ads__empty,
.account_person_typ_1 .ac-ads__empty {
  padding: 1.25rem;
}
.account_agency_typ_1 .ac-ad,
.account_person_typ_1 .ac-ad {
  /* názov na dva riadky - pri úzkom stĺpci by z jedného ostal len začiatok */
}
.account_agency_typ_1 .ac-ad + .ac-ad,
.account_person_typ_1 .ac-ad + .ac-ad {
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-ad.is-sel,
.account_person_typ_1 .ac-ad.is-sel {
  background: var(--purple-50);
}
.account_agency_typ_1 .ac-ad.is-off .ac-ad__main,
.account_person_typ_1 .ac-ad.is-off .ac-ad__main {
  opacity: 0.55;
}
.account_agency_typ_1 .ac-ad__main,
.account_person_typ_1 .ac-ad__main {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  min-width: 0;
}
.account_agency_typ_1 .ac-ad__img,
.account_person_typ_1 .ac-ad__img {
  flex-shrink: 0;
  width: 5.5rem;
  height: 3.75rem;
  border-radius: 0.625rem;
  overflow: hidden;
  background: var(--cream);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--mute);
}
.account_agency_typ_1 .ac-ad__img img,
.account_person_typ_1 .ac-ad__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.account_agency_typ_1 .ac-ad__txt,
.account_person_typ_1 .ac-ad__txt {
  min-width: 0;
}
.account_agency_typ_1 .ac-ad__txt small,
.account_person_typ_1 .ac-ad__txt small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-ad__title,
.account_person_typ_1 .ac-ad__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-weight: 700;
  line-height: 1.3;
  color: var(--ink);
  text-decoration: none;
}
.account_agency_typ_1 .ac-ad__title:hover,
.account_person_typ_1 .ac-ad__title:hover {
  color: var(--first-color);
}
.account_agency_typ_1 .ac-ad__tags,
.account_person_typ_1 .ac-ad__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  margin-top: 0.375rem;
}
.account_agency_typ_1 .ac-ad__tags .ac-chip,
.account_person_typ_1 .ac-ad__tags .ac-chip {
  height: 1.375rem;
  font-size: 0.6875rem;
}
.account_agency_typ_1 .ac-ad__state,
.account_person_typ_1 .ac-ad__state {
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-ad__state b,
.account_person_typ_1 .ac-ad__state b {
  display: block;
  font-weight: 700;
}
.account_agency_typ_1 .ac-ad__state b.is-ok,
.account_person_typ_1 .ac-ad__state b.is-ok {
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-ad__state b.is-wait,
.account_person_typ_1 .ac-ad__state b.is-wait {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-ad__state b.is-off,
.account_person_typ_1 .ac-ad__state b.is-off {
  color: var(--mute);
}
.account_agency_typ_1 .ac-ad__state small,
.account_person_typ_1 .ac-ad__state small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-ad__state .btn-link,
.account_person_typ_1 .ac-ad__state .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-ad__stats,
.account_person_typ_1 .ac-ad__stats {
  display: flex;
  gap: 0.875rem;
  font-size: 0.875rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-ad__stats > span,
.account_person_typ_1 .ac-ad__stats > span {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}
.account_agency_typ_1 .ac-ad__stats .i,
.account_person_typ_1 .ac-ad__stats .i {
  width: 1rem;
  height: 1rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-ad__stats b,
.account_person_typ_1 .ac-ad__stats b {
  font-weight: 600;
}
.account_agency_typ_1 .ac-ad__act,
.account_person_typ_1 .ac-ad__act {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  justify-content: flex-end;
}
.account_agency_typ_1 .ac-ad__act .btn,
.account_person_typ_1 .ac-ad__act .btn {
  white-space: nowrap;
}
.account_agency_typ_1 .ac-chip.is-top,
.account_person_typ_1 .ac-chip.is-top {
  background: var(--accent-color);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-chip.is-hl,
.account_person_typ_1 .ac-chip.is-hl {
  background: var(--purple-50);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-roles.is-grid3,
.account_person_typ_1 .ac-roles.is-grid3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@container (max-width: 52rem) {
  .account_agency_typ_1 .ac-ads__head,
  .account_person_typ_1 .ac-ads__head,
  .account_agency_typ_1 .ac-ad,
  .account_person_typ_1 .ac-ad {
    grid-template-columns: auto minmax(0, 1fr) 9.5rem 7.5rem;
  }
  .account_agency_typ_1 .ac-ads__head > span:nth-of-type(3),
  .account_person_typ_1 .ac-ads__head > span:nth-of-type(3),
  .account_agency_typ_1 .ac-ad__stats,
  .account_person_typ_1 .ac-ad__stats {
    display: none;
  }
}
@container (max-width: 34rem) {
  .account_agency_typ_1 .ac-ads__head,
  .account_person_typ_1 .ac-ads__head {
    display: none;
  }
  .account_agency_typ_1 .ac-ad,
  .account_person_typ_1 .ac-ad {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.5rem 0.75rem;
    padding: 0.875rem 1rem;
  }
  .account_agency_typ_1 .ac-ad__state,
  .account_person_typ_1 .ac-ad__state {
    grid-column: 2;
  }
  .account_agency_typ_1 .ac-ad__stats,
  .account_person_typ_1 .ac-ad__stats {
    display: flex;
    grid-column: 2;
  }
  .account_agency_typ_1 .ac-ad__act,
  .account_person_typ_1 .ac-ad__act {
    grid-column: 3;
    grid-row: 1;
    align-self: start;
  }
  .account_agency_typ_1 .ac-ad__act .btn,
  .account_person_typ_1 .ac-ad__act .btn {
    display: none;
  }
  .account_agency_typ_1 .ac-ad__img,
  .account_person_typ_1 .ac-ad__img {
    width: 4rem;
    height: 3rem;
  }
}
.account_agency_typ_1 .ac-people,
.account_person_typ_1 .ac-people {
  list-style: none;
  margin: 0;
  padding: 0;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_agency_typ_1 .ac-person,
.account_person_typ_1 .ac-person {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.875rem;
  padding: 0.875rem 1.25rem;
}
.account_agency_typ_1 .ac-person + .ac-person,
.account_person_typ_1 .ac-person + .ac-person {
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-person.is-off .ac-person__who,
.account_person_typ_1 .ac-person.is-off .ac-person__who {
  opacity: 0.6;
}
.account_agency_typ_1 .ac-person__av,
.account_person_typ_1 .ac-person__av {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--purple-50);
  color: var(--first-color);
  font-weight: 800;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-person__av img,
.account_person_typ_1 .ac-person__av img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.account_agency_typ_1 .ac-person__who,
.account_person_typ_1 .ac-person__who {
  min-width: 0;
}
.account_agency_typ_1 .ac-person__who b,
.account_person_typ_1 .ac-person__who b {
  display: block;
  color: var(--ink);
}
.account_agency_typ_1 .ac-person__who small,
.account_person_typ_1 .ac-person__who small {
  display: block;
  color: var(--mute);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-person__tags,
.account_person_typ_1 .ac-person__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  justify-content: flex-end;
}
.account_agency_typ_1 .ac-person__menu,
.account_person_typ_1 .ac-person__menu {
  position: relative;
}
.account_agency_typ_1 .ac-chip,
.account_person_typ_1 .ac-chip {
  display: inline-flex;
  align-items: center;
  height: 1.625rem;
  padding: 0 0.625rem;
  border-radius: var(--radius-badge);
  background: var(--cream);
  color: var(--warm);
  font-size: 0.75rem;
  font-weight: 700;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-chip.is-owner,
.account_person_typ_1 .ac-chip.is-owner {
  background: var(--purple-50);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-chip.is-wait,
.account_person_typ_1 .ac-chip.is-wait {
  background: #FFF4DB;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-chip.is-off,
.account_person_typ_1 .ac-chip.is-off {
  background: #FDECEC;
  color: var(--color-error);
}
.account_agency_typ_1 .ac-dots,
.account_person_typ_1 .ac-dots {
  display: inline-flex;
  padding: 0.375rem;
  border: 0;
  border-radius: 50%;
  background: none;
  color: var(--mute);
  cursor: pointer;
}
.account_agency_typ_1 .ac-dots:hover,
.account_person_typ_1 .ac-dots:hover,
.account_agency_typ_1 .ac-dots[aria-expanded="true"],
.account_person_typ_1 .ac-dots[aria-expanded="true"] {
  background: var(--cream);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-dots .i,
.account_person_typ_1 .ac-dots .i {
  width: 1.375rem;
  height: 1.375rem;
}
.account_agency_typ_1 .ac-pop,
.account_person_typ_1 .ac-pop {
  position: absolute;
  right: 0;
  top: calc(100% + 0.25rem);
  z-index: 30;
  width: 18rem;
  padding: 0.5rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card-2);
}
.account_agency_typ_1 .ac-pop button:not(.btn):not(.btn-link),
.account_person_typ_1 .ac-pop button:not(.btn):not(.btn-link) {
  display: block;
  width: 100%;
  padding: 0.5rem 0.625rem;
  border: 0;
  border-radius: calc(var(--radius-sm) - 0.25rem);
  background: none;
  text-align: left;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--warm);
  cursor: pointer;
}
.account_agency_typ_1 .ac-pop button:not(.btn):not(.btn-link):hover,
.account_person_typ_1 .ac-pop button:not(.btn):not(.btn-link):hover {
  background: var(--cream);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-pop button:not(.btn):not(.btn-link).is-danger,
.account_person_typ_1 .ac-pop button:not(.btn):not(.btn-link).is-danger {
  color: var(--color-error);
}
.account_agency_typ_1 .ac-pop hr,
.account_person_typ_1 .ac-pop hr {
  margin: 0.375rem 0;
  border: 0;
  border-top: 1px solid var(--line-color);
  opacity: 1;
}
.account_agency_typ_1 .ac-pop__label,
.account_person_typ_1 .ac-pop__label {
  display: block;
  padding: 0.25rem 0.625rem;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_agency_typ_1 .ac-pop__role b,
.account_person_typ_1 .ac-pop__role b {
  display: block;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-pop__role small,
.account_person_typ_1 .ac-pop__role small {
  display: block;
  font-weight: 500;
  color: var(--mute);
  font-size: 0.75rem;
}
.account_agency_typ_1 .ac-pop__role.is-on b::after,
.account_person_typ_1 .ac-pop__role.is-on b::after {
  content: ' ✓';
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-pop__ask,
.account_person_typ_1 .ac-pop__ask {
  padding: 0.375rem;
}
.account_agency_typ_1 .ac-pop__ask p,
.account_person_typ_1 .ac-pop__ask p {
  margin: 0 0 0.75rem;
  font-size: 0.875rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-pop__ask > div,
.account_person_typ_1 .ac-pop__ask > div {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.account_agency_typ_1 .btn-danger,
.account_person_typ_1 .btn-danger {
  background: var(--color-error);
  color: var(--white-color);
  border-color: var(--color-error);
}
.account_agency_typ_1 .ac-invite .field,
.account_person_typ_1 .ac-invite .field {
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
}
.account_agency_typ_1 .ac-roles,
.account_person_typ_1 .ac-roles {
  display: grid;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-role,
.account_person_typ_1 .ac-role {
  display: block;
  width: 100%;
  padding: 0.75rem 1rem;
  text-align: left;
  cursor: pointer;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.account_agency_typ_1 .ac-role b,
.account_person_typ_1 .ac-role b {
  display: block;
  color: var(--ink);
}
.account_agency_typ_1 .ac-role small,
.account_person_typ_1 .ac-role small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-role.is-on,
.account_person_typ_1 .ac-role.is-on {
  border-color: var(--first-color);
  box-shadow: inset 0 0 0 1px var(--first-color);
  background: var(--purple-50);
}
.account_agency_typ_1 .ac-role.is-on b,
.account_person_typ_1 .ac-role.is-on b {
  color: var(--first-color);
}
.account_agency_typ_1 .ac-rights__in,
.account_person_typ_1 .ac-rights__in {
  display: contents;
}
.account_agency_typ_1 .filter-modal__body,
.account_person_typ_1 .filter-modal__body {
  padding-top: 1.25rem;
  padding-bottom: 1.5rem;
}
.account_agency_typ_1 .ac-rights__hint,
.account_person_typ_1 .ac-rights__hint {
  margin: -0.25rem 0 0.75rem;
}
.account_agency_typ_1 .ac-roles.is-grid,
.account_person_typ_1 .ac-roles.is-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.account_agency_typ_1 .ac-rights__custom,
.account_person_typ_1 .ac-rights__custom {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0.75rem 0 0;
  padding: 0.625rem 0.875rem;
  border-radius: var(--radius-sm);
  background: #FFF4DB;
  color: #5C3D00;
  font-size: 0.875rem;
  font-weight: 600;
}
.account_agency_typ_1 .ac-rights__grp,
.account_person_typ_1 .ac-rights__grp {
  margin-top: 0.25rem;
}
.account_agency_typ_1 .ac-chip.is-custom,
.account_person_typ_1 .ac-chip.is-custom {
  background: #FFF4DB;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-switch,
.account_person_typ_1 .ac-switch {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0;
  cursor: pointer;
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-switch input,
.account_person_typ_1 .ac-switch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.account_agency_typ_1 .ac-switch__ui,
.account_person_typ_1 .ac-switch__ui {
  flex-shrink: 0;
  position: relative;
  width: 2.5rem;
  height: 1.5rem;
  border-radius: var(--radius-badge);
  background: var(--line-color);
  transition: background 0.15s ease;
}
.account_agency_typ_1 .ac-switch__ui::after,
.account_person_typ_1 .ac-switch__ui::after {
  content: '';
  position: absolute;
  top: 0.1875rem;
  left: 0.1875rem;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%;
  background: var(--white-color);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  transition: transform 0.15s ease;
}
.account_agency_typ_1 .ac-switch input:checked + .ac-switch__ui,
.account_person_typ_1 .ac-switch input:checked + .ac-switch__ui {
  background: var(--first-color);
}
.account_agency_typ_1 .ac-switch input:checked + .ac-switch__ui::after,
.account_person_typ_1 .ac-switch input:checked + .ac-switch__ui::after {
  transform: translateX(1rem);
}
.account_agency_typ_1 .ac-switch input:focus-visible + .ac-switch__ui,
.account_person_typ_1 .ac-switch input:focus-visible + .ac-switch__ui {
  outline: 2px solid var(--first-color);
  outline-offset: 2px;
}
.account_agency_typ_1 .ac-switch > span:last-child,
.account_person_typ_1 .ac-switch > span:last-child {
  font-weight: 500;
}
.account_agency_typ_1 .ac-switch input:checked ~ span:last-child,
.account_person_typ_1 .ac-switch input:checked ~ span:last-child {
  color: var(--ink);
}
.account_agency_typ_1 .la-count.is-over,
.account_person_typ_1 .la-count.is-over {
  color: var(--color-error);
  font-weight: 700;
}
.account_agency_typ_1 .ac-move,
.account_person_typ_1 .ac-move {
  max-width: 46rem;
}
.account_agency_typ_1 .ac-move__bar,
.account_person_typ_1 .ac-move__bar {
  position: sticky;
  top: -1px;
  z-index: 2;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: end;
  gap: 0.75rem 1rem;
  padding: 0.875rem 1rem;
  margin: 0 0 0.75rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  /* výška ako pole Dať maklérovi - checkbox v strede voči poľu, nie voči nadpisu */
}
.account_agency_typ_1 .ac-move__bar .ac-move__q,
.account_person_typ_1 .ac-move__bar .ac-move__q {
  grid-column: 1 / -1;
}
.account_agency_typ_1 .ac-move__bar > .fb-check,
.account_person_typ_1 .ac-move__bar > .fb-check {
  align-self: end;
  display: flex;
  align-items: center;
  min-height: 3rem;
}
.account_agency_typ_1 .ac-move__bar > .fb-check .fb-check-txt,
.account_person_typ_1 .ac-move__bar > .fb-check .fb-check-txt {
  font-weight: 700;
  color: var(--ink);
  white-space: nowrap;
}
.account_agency_typ_1 .ac-move__bar .field,
.account_person_typ_1 .ac-move__bar .field {
  margin: 0;
}
.account_agency_typ_1 .ac-move__bar .field label,
.account_person_typ_1 .ac-move__bar .field label {
  font-size: 0.6875rem;
}
.account_agency_typ_1 .ac-move__bar .btn,
.account_person_typ_1 .ac-move__bar .btn {
  white-space: nowrap;
}
.account_agency_typ_1 .ac-move__list,
.account_person_typ_1 .ac-move__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.375rem;
}
.account_agency_typ_1 .ac-move__list li,
.account_person_typ_1 .ac-move__list li {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.account_agency_typ_1 .ac-move__list li.is-sel,
.account_person_typ_1 .ac-move__list li.is-sel {
  background: var(--purple-50);
  border-color: var(--purple-200);
}
.account_agency_typ_1 .ac-move__img,
.account_person_typ_1 .ac-move__img {
  width: 4rem;
  height: 2.75rem;
  border-radius: 0.5rem;
  overflow: hidden;
  background: var(--cream-2, var(--cream));
}
.account_agency_typ_1 .ac-move__img img,
.account_person_typ_1 .ac-move__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.account_agency_typ_1 .ac-move__txt,
.account_person_typ_1 .ac-move__txt {
  min-width: 0;
}
.account_agency_typ_1 .ac-move__txt b,
.account_person_typ_1 .ac-move__txt b {
  display: block;
  font-size: 0.875rem;
  color: var(--ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-move__txt small,
.account_person_typ_1 .ac-move__txt small {
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-move__who,
.account_person_typ_1 .ac-move__who {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--accent-text);
  white-space: nowrap;
}
.account_agency_typ_1 .ac-move__who.is-none,
.account_person_typ_1 .ac-move__who.is-none {
  color: var(--mute);
  font-weight: 500;
}
.account_agency_typ_1 .ac-move__left,
.account_person_typ_1 .ac-move__left {
  flex: 1;
  font-size: 0.875rem;
  font-weight: 600;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-move__left.is-ok,
.account_person_typ_1 .ac-move__left.is-ok {
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-review,
.account_person_typ_1 .ac-review {
  padding: 1rem 0;
}
.account_agency_typ_1 .ac-review + .ac-review,
.account_person_typ_1 .ac-review + .ac-review {
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-review:first-of-type,
.account_person_typ_1 .ac-review:first-of-type {
  padding-top: 0;
}
.account_agency_typ_1 .ac-review p,
.account_person_typ_1 .ac-review p {
  margin: 0.5rem 0 0.375rem;
  color: var(--ink);
}
.account_agency_typ_1 .ac-review small,
.account_person_typ_1 .ac-review small {
  color: var(--mute);
}
.account_agency_typ_1 .ac-review__top,
.account_person_typ_1 .ac-review__top {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.account_agency_typ_1 .ac-review__top time,
.account_person_typ_1 .ac-review__top time {
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-review__act,
.account_person_typ_1 .ac-review__act {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin-top: 0.75rem;
}
.account_agency_typ_1 .ac-review__act .btn,
.account_person_typ_1 .ac-review__act .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.account_agency_typ_1 .ac-review__act .btn-link,
.account_person_typ_1 .ac-review__act .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-review__decline,
.account_person_typ_1 .ac-review__decline {
  margin-top: 0.75rem;
  padding: 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.account_agency_typ_1 .ac-review__decline .la-label,
.account_person_typ_1 .ac-review__decline .la-label {
  margin-top: 0;
}
.account_agency_typ_1 .ac-stars,
.account_person_typ_1 .ac-stars,
.account_agency_typ_1 .rv-stars,
.account_person_typ_1 .rv-stars {
  display: inline-flex;
  gap: 0.125rem;
  color: var(--line-color);
}
.account_agency_typ_1 .ac-stars .i,
.account_person_typ_1 .ac-stars .i,
.account_agency_typ_1 .rv-stars .i,
.account_person_typ_1 .rv-stars .i {
  width: 1rem;
  height: 1rem;
}
.account_agency_typ_1 .ac-stars .is-on,
.account_person_typ_1 .ac-stars .is-on,
.account_agency_typ_1 .rv-stars .is-on,
.account_person_typ_1 .rv-stars .is-on {
  color: var(--star-color);
}
.account_agency_typ_1 .ac-avg,
.account_person_typ_1 .ac-avg {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.account_agency_typ_1 .ac-avg b,
.account_person_typ_1 .ac-avg b {
  color: var(--first-color);
  font-family: var(--first-font);
  font-weight: 800;
}
.account_agency_typ_1 .ac-reply,
.account_person_typ_1 .ac-reply {
  margin-top: 0.75rem;
  padding: 0.75rem 1rem;
  border-left: 3px solid var(--purple-200);
  background: var(--cream);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.account_agency_typ_1 .ac-reply b,
.account_person_typ_1 .ac-reply b {
  font-size: 0.8125rem;
  color: var(--first-color);
}
.account_agency_typ_1 .ac-reply p,
.account_person_typ_1 .ac-reply p {
  margin: 0.25rem 0 0;
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-reply-form,
.account_person_typ_1 .ac-reply-form {
  margin-top: 0.75rem;
}
.account_agency_typ_1 .ac-reply-form textarea,
.account_person_typ_1 .ac-reply-form textarea {
  width: 100%;
}
.account_agency_typ_1 .ac-reply__head,
.account_person_typ_1 .ac-reply__head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25rem 0.75rem;
}
.account_agency_typ_1 .ac-reply__head small,
.account_person_typ_1 .ac-reply__head small {
  font-size: 0.75rem;
  color: var(--mute);
  font-style: italic;
}
.account_agency_typ_1 .ac-reply__act,
.account_person_typ_1 .ac-reply__act {
  margin-left: auto;
  display: inline-flex;
  gap: 1rem;
}
.account_agency_typ_1 .ac-reply__act .btn-link,
.account_person_typ_1 .ac-reply__act .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-reply__act .btn-link .i,
.account_person_typ_1 .ac-reply__act .btn-link .i {
  width: 0.9375rem;
  height: 0.9375rem;
}
.account_agency_typ_1 .ac-reply__act .btn-link.is-danger,
.account_person_typ_1 .ac-reply__act .btn-link.is-danger {
  color: var(--color-error);
}
.account_agency_typ_1 .ac-reply__body,
.account_person_typ_1 .ac-reply__body {
  margin-top: 0.25rem;
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-reply__body p,
.account_person_typ_1 .ac-reply__body p {
  margin: 0;
}
.account_agency_typ_1 .ac-reply__body p + p,
.account_person_typ_1 .ac-reply__body p + p {
  margin-top: 0.5rem;
}
.account_agency_typ_1 .ac-reply__ask,
.account_person_typ_1 .ac-reply__ask {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--line-color);
  font-size: 0.875rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-reply__ask > span,
.account_person_typ_1 .ac-reply__ask > span {
  flex: 1 1 14rem;
}
.account_agency_typ_1 .ac-reply__ask .btn-link,
.account_person_typ_1 .ac-reply__ask .btn-link {
  padding: 0;
  border: 0;
  background: none;
}
.account_agency_typ_1 .ac-more,
.account_person_typ_1 .ac-more {
  margin-top: 0.5rem;
  padding: 0;
  border: 0;
  background: none;
}
.account_agency_typ_1 .ac-branches,
.account_person_typ_1 .ac-branches {
  list-style: none;
  margin: 0;
  padding: 0;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_agency_typ_1 .ac-branch,
.account_person_typ_1 .ac-branch {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.875rem;
  padding: 0.875rem 1.25rem;
}
.account_agency_typ_1 .ac-branch + .ac-branch,
.account_person_typ_1 .ac-branch + .ac-branch {
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-branch__ic,
.account_person_typ_1 .ac-branch__ic {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--cream);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-branch__ic.is-main,
.account_person_typ_1 .ac-branch__ic.is-main {
  background: var(--first-color);
  color: var(--white-color);
}
.account_agency_typ_1 .ac-branch__who,
.account_person_typ_1 .ac-branch__who {
  min-width: 0;
}
.account_agency_typ_1 .ac-branch__who b,
.account_person_typ_1 .ac-branch__who b {
  color: var(--ink);
}
.account_agency_typ_1 .ac-branch__who .ac-chip,
.account_person_typ_1 .ac-branch__who .ac-chip {
  margin-left: 0.375rem;
  vertical-align: 0.0625rem;
  height: 1.375rem;
}
.account_agency_typ_1 .ac-branch__who small,
.account_person_typ_1 .ac-branch__who small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-branch__who small.is-warn,
.account_person_typ_1 .ac-branch__who small.is-warn {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-branch__n,
.account_person_typ_1 .ac-branch__n {
  font-size: 0.875rem;
  color: var(--warm);
  white-space: nowrap;
}
.account_agency_typ_1 .ac-badge.is-warn,
.account_person_typ_1 .ac-badge.is-warn {
  background: #FFF4DB;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-alert,
.account_person_typ_1 .ac-alert {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  padding: 1rem 1.25rem;
  margin-bottom: 1.25rem;
  border-radius: var(--radius-md);
  background: #FDECEC;
  color: #6B1A1A;
  font-size: 0.9375rem;
}
.account_agency_typ_1 .ac-alert > .i,
.account_person_typ_1 .ac-alert > .i {
  color: var(--color-error);
  width: 1.5rem;
  height: 1.5rem;
}
.account_agency_typ_1 .ac-alert > div,
.account_person_typ_1 .ac-alert > div {
  flex: 1 1 18rem;
}
.account_agency_typ_1 .ac-alert b,
.account_person_typ_1 .ac-alert b {
  color: inherit;
}
.account_agency_typ_1 .ac-alert.is-warn,
.account_person_typ_1 .ac-alert.is-warn {
  background: #FFF4DB;
  color: #6B4600;
}
.account_agency_typ_1 .ac-alert.is-warn > .i,
.account_person_typ_1 .ac-alert.is-warn > .i {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-alert.is-info,
.account_person_typ_1 .ac-alert.is-info {
  background: var(--purple-50);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-alert.is-info > .i,
.account_person_typ_1 .ac-alert.is-info > .i {
  color: var(--first-color);
}
.account_agency_typ_1 .ac-chip .i,
.account_person_typ_1 .ac-chip .i {
  width: 0.875rem;
  height: 0.875rem;
  margin-right: 0.3rem;
}
.account_agency_typ_1 .ac-chip.is-ok,
.account_person_typ_1 .ac-chip.is-ok {
  background: #E8F5EC;
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-dot,
.account_person_typ_1 .ac-dot {
  width: 0.5rem;
  height: 0.5rem;
  margin-right: 0.375rem;
  border-radius: 50%;
  background: currentColor;
}
.account_agency_typ_1 .ac-conn__head,
.account_person_typ_1 .ac-conn__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 1rem;
}
.account_agency_typ_1 .ac-conn__ic,
.account_person_typ_1 .ac-conn__ic {
  width: 3rem;
  height: 3rem;
  border-radius: var(--radius-sm);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--purple-50);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-conn__ic .i,
.account_person_typ_1 .ac-conn__ic .i {
  width: 1.5rem;
  height: 1.5rem;
}
.account_agency_typ_1 .ac-conn__who,
.account_person_typ_1 .ac-conn__who {
  min-width: 0;
}
.account_agency_typ_1 .ac-conn__who b,
.account_person_typ_1 .ac-conn__who b {
  display: block;
  font-family: var(--first-font);
  font-size: 1.125rem;
  font-weight: 800;
  color: var(--first-color);
  line-height: 1.3;
}
.account_agency_typ_1 .ac-conn__who small,
.account_person_typ_1 .ac-conn__who small {
  display: block;
  color: var(--mute);
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-conn__tags,
.account_person_typ_1 .ac-conn__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  margin-top: 0.5rem;
}
.account_agency_typ_1 .ac-conn__act,
.account_person_typ_1 .ac-conn__act {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.account_agency_typ_1 .ac-conn__act .btn,
.account_person_typ_1 .ac-conn__act .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-conn__nums,
.account_person_typ_1 .ac-conn__nums {
  list-style: none;
  margin: 1.25rem 0 0;
  padding: 1rem 0 0;
  border-top: 1px solid var(--line-color);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem 1rem;
}
.account_agency_typ_1 .ac-conn__nums span,
.account_person_typ_1 .ac-conn__nums span {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_agency_typ_1 .ac-conn__nums b,
.account_person_typ_1 .ac-conn__nums b {
  display: block;
  margin-top: 0.125rem;
  font-family: var(--first-font);
  font-size: 1.375rem;
  font-weight: 800;
  color: var(--first-color);
}
.account_agency_typ_1 .ac-conn__nums b.is-txt,
.account_person_typ_1 .ac-conn__nums b.is-txt {
  font-family: var(--second-font);
  font-size: 1rem;
  font-weight: 700;
  margin-top: 0.375rem;
}
.account_agency_typ_1 .ac-conn__nums li.is-warn b,
.account_person_typ_1 .ac-conn__nums li.is-warn b {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-conn + .ac-conn,
.account_person_typ_1 .ac-conn + .ac-conn {
  margin-top: 0;
}
.account_agency_typ_1 .ac-pop__note,
.account_person_typ_1 .ac-pop__note {
  margin: 0;
  padding: 0.25rem 0.625rem 0.375rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-bz__how,
.account_person_typ_1 .ac-bz__how {
  margin: 1rem 0 0;
  padding: 1rem 0 0;
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-bz__how summary,
.account_person_typ_1 .ac-bz__how summary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  font-weight: 700;
  color: var(--first-color);
  list-style: none;
}
.account_agency_typ_1 .ac-bz__how summary::-webkit-details-marker,
.account_person_typ_1 .ac-bz__how summary::-webkit-details-marker {
  display: none;
}
.account_agency_typ_1 .ac-bz__how summary .i,
.account_person_typ_1 .ac-bz__how summary .i {
  width: 1.125rem;
  height: 1.125rem;
}
.account_agency_typ_1 .ac-bz__how ol,
.account_person_typ_1 .ac-bz__how ol {
  margin: 0.75rem 0 0;
  padding-left: 1.25rem;
}
.account_agency_typ_1 .ac-bz__how ol li + li,
.account_person_typ_1 .ac-bz__how ol li + li {
  margin-top: 0.375rem;
}
.account_agency_typ_1 .ac-bz__ceny,
.account_person_typ_1 .ac-bz__ceny {
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem 1rem;
}
.account_agency_typ_1 .ac-bz__ceny span,
.account_person_typ_1 .ac-bz__ceny span {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_agency_typ_1 .ac-bz__ceny b,
.account_person_typ_1 .ac-bz__ceny b {
  display: block;
  margin-top: 0.125rem;
  font-weight: 700;
  color: var(--first-color);
}
.account_agency_typ_1 .ac-conn.is-off .ac-conn__ic,
.account_person_typ_1 .ac-conn.is-off .ac-conn__ic {
  background: var(--cream);
  color: var(--mute);
}
.account_agency_typ_1 .ac-nx-err,
.account_person_typ_1 .ac-nx-err {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 1rem 0 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-nx-err .i,
.account_person_typ_1 .ac-nx-err .i {
  margin-top: 0.125rem;
}
.account_agency_typ_1 .ac-nx-run.is-spin .i,
.account_person_typ_1 .ac-nx-run.is-spin .i {
  animation: ac-nx-spin 1.1s linear infinite;
}
@keyframes ac-nx-spin {
  to {
    transform: rotate(360deg);
  }
}
.account_agency_typ_1 .ac-nx-empty,
.account_person_typ_1 .ac-nx-empty {
  text-align: center;
  padding: 2.5rem 1.5rem;
}
.account_agency_typ_1 .ac-nx-empty .ac-text,
.account_person_typ_1 .ac-nx-empty .ac-text {
  max-width: 30rem;
  margin: 0.5rem auto 1.25rem;
}
.account_agency_typ_1 .ac-nx-empty .btn,
.account_person_typ_1 .ac-nx-empty .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.account_agency_typ_1 .ac-nx-empty__ic,
.account_person_typ_1 .ac-nx-empty__ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  margin-bottom: 0.75rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-nx-empty__ic .i,
.account_person_typ_1 .ac-nx-empty__ic .i {
  width: 2rem;
  height: 2rem;
}
.account_agency_typ_1 .ac-nx-loc,
.account_person_typ_1 .ac-nx-loc {
  position: relative;
  margin: 0;
}
.account_agency_typ_1 .ac-nx-loc__list,
.account_person_typ_1 .ac-nx-loc__list {
  position: absolute;
  z-index: 5;
  left: 0;
  right: 0;
  top: 100%;
  margin: 0.25rem 0 0;
  padding: 0.25rem;
  list-style: none;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.12);
}
.account_agency_typ_1 .ac-nx-loc__list button,
.account_person_typ_1 .ac-nx-loc__list button {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  padding: 0.5rem 0.625rem;
  border: 0;
  border-radius: 0.375rem;
  background: none;
  text-align: left;
  cursor: pointer;
}
.account_agency_typ_1 .ac-nx-loc__list button:hover,
.account_person_typ_1 .ac-nx-loc__list button:hover,
.account_agency_typ_1 .ac-nx-loc__list button:focus-visible,
.account_person_typ_1 .ac-nx-loc__list button:focus-visible {
  background: var(--purple-50);
}
.account_agency_typ_1 .ac-nx-loc__list small,
.account_person_typ_1 .ac-nx-loc__list small {
  color: var(--mute);
  font-size: 0.8125rem;
}
@media (max-width: 575.98px) {
  .account_agency_typ_1 .ac-conn__head,
  .account_person_typ_1 .ac-conn__head {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-conn__act,
  .account_person_typ_1 .ac-conn__act {
    grid-column: 1 / -1;
  }
  .account_agency_typ_1 .ac-conn__act .ac-nx-run,
  .account_person_typ_1 .ac-conn__act .ac-nx-run {
    flex: 1;
    justify-content: center;
  }
}
.account_agency_typ_1 .ac-map,
.account_person_typ_1 .ac-map {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-map__row,
.account_person_typ_1 .ac-map__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  padding: 0.875rem 1rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
}
.account_agency_typ_1 .ac-map__row small,
.account_person_typ_1 .ac-map__row small {
  display: block;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_agency_typ_1 .ac-map__row b,
.account_person_typ_1 .ac-map__row b {
  display: block;
  color: var(--ink);
}
.account_agency_typ_1 .ac-map__row span:not(.i),
.account_person_typ_1 .ac-map__row span:not(.i) {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-map__row .field,
.account_person_typ_1 .ac-map__row .field {
  margin: 0;
}
.account_agency_typ_1 .ac-map__row .field label,
.account_person_typ_1 .ac-map__row .field label {
  font-size: 0.6875rem;
}
.account_agency_typ_1 .ac-map__from span:not(.i),
.account_person_typ_1 .ac-map__from span:not(.i) {
  color: #8A5A00;
  font-weight: 600;
}
.account_agency_typ_1 .ac-map__to b,
.account_person_typ_1 .ac-map__to b {
  color: var(--first-color);
}
.account_agency_typ_1 .ac-map__arrow,
.account_person_typ_1 .ac-map__arrow {
  color: var(--mute);
}
.account_agency_typ_1 .ac-map__act,
.account_person_typ_1 .ac-map__act {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.375rem;
}
.account_agency_typ_1 .ac-map__act .btn,
.account_person_typ_1 .ac-map__act .btn {
  white-space: nowrap;
}
.account_agency_typ_1 .ac-map__act .btn-link,
.account_person_typ_1 .ac-map__act .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-errs,
.account_person_typ_1 .ac-errs {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-errs li,
.account_person_typ_1 .ac-errs li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 0.875rem;
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
}
.account_agency_typ_1 .ac-errs b,
.account_person_typ_1 .ac-errs b {
  display: block;
  font-size: 0.9375rem;
  color: var(--ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-errs small,
.account_person_typ_1 .ac-errs small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-errs__img,
.account_person_typ_1 .ac-errs__img {
  width: 4.5rem;
  height: 3.25rem;
  border-radius: 0.5rem;
  overflow: hidden;
  background: var(--cream);
}
.account_agency_typ_1 .ac-errs__img img,
.account_person_typ_1 .ac-errs__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.account_agency_typ_1 .ac-errs__why,
.account_person_typ_1 .ac-errs__why {
  display: flex;
  align-items: flex-start;
  gap: 0.375rem;
  margin: 0.125rem 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-errs__why .i,
.account_person_typ_1 .ac-errs__why .i {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  margin-top: 0.125rem;
}
.account_agency_typ_1 .ac-runs,
.account_person_typ_1 .ac-runs {
  list-style: none;
  margin: 0;
  padding: 0;
}
.account_agency_typ_1 .ac-runs__legend,
.account_person_typ_1 .ac-runs__legend {
  font-size: 0.75rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-runs__row,
.account_person_typ_1 .ac-runs__row {
  display: grid;
  grid-template-columns: 11rem minmax(0, 1fr) auto 3.5rem;
  align-items: center;
  gap: 1rem;
  padding: 0.625rem 0;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-runs__row + .ac-runs__row,
.account_person_typ_1 .ac-runs__row + .ac-runs__row {
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-runs__row time,
.account_person_typ_1 .ac-runs__row time {
  color: var(--warm);
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-runs__res,
.account_person_typ_1 .ac-runs__res {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-weight: 600;
}
.account_agency_typ_1 .ac-runs__res .i,
.account_person_typ_1 .ac-runs__res .i {
  width: 1rem;
  height: 1rem;
}
.account_agency_typ_1 .ac-runs__res.is-ok,
.account_person_typ_1 .ac-runs__res.is-ok {
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-runs__res.is-warn,
.account_person_typ_1 .ac-runs__res.is-warn {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-runs__res.is-err,
.account_person_typ_1 .ac-runs__res.is-err {
  color: var(--color-error);
}
.account_agency_typ_1 .ac-runs__n,
.account_person_typ_1 .ac-runs__n {
  display: inline-flex;
  gap: 0.75rem;
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-runs__n b,
.account_person_typ_1 .ac-runs__n b {
  min-width: 1.75rem;
  text-align: right;
  font-weight: 600;
  color: var(--warm);
}
.account_agency_typ_1 .ac-runs__n b.is-new,
.account_person_typ_1 .ac-runs__n b.is-new {
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-runs__n b.is-gone,
.account_person_typ_1 .ac-runs__n b.is-gone {
  color: var(--mute);
}
.account_agency_typ_1 .ac-runs__n b.is-zero,
.account_person_typ_1 .ac-runs__n b.is-zero {
  color: var(--line-color);
}
.account_agency_typ_1 .ac-runs__t,
.account_person_typ_1 .ac-runs__t {
  text-align: right;
  color: var(--mute);
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-wiz,
.account_person_typ_1 .ac-wiz {
  max-width: 40rem;
}
.account_agency_typ_1 .ac-wiz .filter-modal__header h3,
.account_person_typ_1 .ac-wiz .filter-modal__header h3 {
  margin: 0;
}
.account_agency_typ_1 .ac-wiz .field,
.account_person_typ_1 .ac-wiz .field {
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
}
.account_agency_typ_1 .ac-wiz .la-label,
.account_person_typ_1 .ac-wiz .la-label {
  margin-top: 1.25rem;
}
.account_agency_typ_1 .ac-wiz__dup,
.account_person_typ_1 .ac-wiz__dup {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin: -0.25rem 0 1rem;
  padding: 0.75rem 1rem;
  border-radius: var(--radius-sm);
  background: #FFF4DB;
  color: #5C3D00;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-wiz__dup .i,
.account_person_typ_1 .ac-wiz__dup .i {
  margin-top: 0.125rem;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-wiz__dup b,
.account_person_typ_1 .ac-wiz__dup b {
  color: inherit;
}
.account_agency_typ_1 .ac-wiz__step,
.account_person_typ_1 .ac-wiz__step {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-wiz__type,
.account_person_typ_1 .ac-wiz__type {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 0.875rem;
}
.account_agency_typ_1 .ac-wiz__type > .i,
.account_person_typ_1 .ac-wiz__type > .i {
  width: 1.5rem;
  height: 1.5rem;
  margin-top: 0.125rem;
  color: var(--first-color);
}
.account_agency_typ_1 .ac-wiz__type em,
.account_person_typ_1 .ac-wiz__type em {
  font-style: normal;
  font-weight: 500;
  color: var(--mute);
  font-size: 0.8125rem;
  margin-left: 0.25rem;
}
.account_agency_typ_1 .ac-wiz__type:hover,
.account_person_typ_1 .ac-wiz__type:hover {
  border-color: var(--first-color);
  background: var(--purple-50);
}
.account_agency_typ_1 .ac-wiz__test,
.account_person_typ_1 .ac-wiz__test {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1rem;
}
.account_agency_typ_1 .ac-wiz__ok,
.account_person_typ_1 .ac-wiz__ok {
  margin-top: 1rem;
  padding: 1rem;
  border-radius: var(--radius-sm);
  background: #E8F5EC;
}
.account_agency_typ_1 .ac-wiz__ok > p,
.account_person_typ_1 .ac-wiz__ok > p {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 0;
  color: var(--ink);
}
.account_agency_typ_1 .ac-wiz__ok > p .i,
.account_person_typ_1 .ac-wiz__ok > p .i {
  color: var(--accent-text);
  margin-top: 0.125rem;
}
.account_agency_typ_1 .ac-wiz__prev,
.account_person_typ_1 .ac-wiz__prev {
  list-style: none;
  margin: 0.75rem 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-wiz__prev li,
.account_person_typ_1 .ac-wiz__prev li {
  min-width: 0;
  font-size: 0.75rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-wiz__prev img,
.account_person_typ_1 .ac-wiz__prev img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 0.5rem;
  margin-bottom: 0.25rem;
}
.account_agency_typ_1 .ac-wiz__prev span,
.account_person_typ_1 .ac-wiz__prev span {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.account_agency_typ_1 .ac-wiz__warn,
.account_person_typ_1 .ac-wiz__warn {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin: 1rem 0 0;
  font-size: 0.875rem;
  color: #8A5A00;
}
.account_agency_typ_1 .ac-wiz__warn .i,
.account_person_typ_1 .ac-wiz__warn .i {
  margin-top: 0.125rem;
}
.account_agency_typ_1 .ac-wiz__agree,
.account_person_typ_1 .ac-wiz__agree {
  margin-top: 1.25rem;
}
.account_agency_typ_1 .ac-wiz__doc,
.account_person_typ_1 .ac-wiz__doc {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.75rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-keys,
.account_person_typ_1 .ac-keys {
  margin: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.625rem 1rem;
  align-items: center;
  padding: 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.account_agency_typ_1 .ac-keys dt,
.account_person_typ_1 .ac-keys dt {
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--mute);
}
.account_agency_typ_1 .ac-keys dd,
.account_person_typ_1 .ac-keys dd {
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25rem 0.875rem;
  min-width: 0;
}
.account_agency_typ_1 .ac-keys code,
.account_person_typ_1 .ac-keys code {
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
  background: var(--white-color);
  color: var(--ink);
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-keys .btn-link,
.account_person_typ_1 .ac-keys .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-keys .btn-link .i,
.account_person_typ_1 .ac-keys .btn-link .i {
  width: 0.875rem;
  height: 0.875rem;
}
.account_agency_typ_1 .ac-badge.is-err,
.account_person_typ_1 .ac-badge.is-err {
  background: var(--color-error);
  color: var(--white-color);
}
.account_agency_typ_1 .ac-kpi small.is-err,
.account_person_typ_1 .ac-kpi small.is-err {
  color: var(--color-error);
  font-weight: 600;
}
.account_agency_typ_1 .ac-grid--cards,
.account_person_typ_1 .ac-grid--cards {
  gap: 0 1.25rem;
  align-items: stretch;
}
.account_agency_typ_1 .ac-grid--cards .ac-card.is-col,
.account_person_typ_1 .ac-grid--cards .ac-card.is-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.account_agency_typ_1 .ac-credit,
.account_person_typ_1 .ac-credit {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem 1.25rem;
  /* v stĺpci (účet realitky): pod sebou, tlačidlo dole */
}
.account_agency_typ_1 .ac-credit__ic,
.account_person_typ_1 .ac-credit__ic {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--green-50);
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-credit__ic .i,
.account_person_typ_1 .ac-credit__ic .i {
  width: 1.5rem;
  height: 1.5rem;
}
.account_agency_typ_1 .ac-credit__bal,
.account_person_typ_1 .ac-credit__bal {
  min-width: 0;
}
.account_agency_typ_1 .ac-credit__bal > span,
.account_person_typ_1 .ac-credit__bal > span {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_agency_typ_1 .ac-credit__bal b,
.account_person_typ_1 .ac-credit__bal b {
  display: block;
  font-family: var(--first-font);
  font-size: 1.625rem;
  font-weight: 800;
  color: var(--first-color);
  line-height: 1.2;
}
.account_agency_typ_1 .ac-credit__bal small,
.account_person_typ_1 .ac-credit__bal small {
  display: block;
  font-size: 0.875rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-credit__act,
.account_person_typ_1 .ac-credit__act {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.375rem;
  text-align: right;
}
.account_agency_typ_1 .ac-credit__act .btn,
.account_person_typ_1 .ac-credit__act .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-credit__act small,
.account_person_typ_1 .ac-credit__act small {
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-credit.is-col .ac-credit__bal,
.account_person_typ_1 .ac-credit.is-col .ac-credit__bal {
  margin-bottom: 0.75rem;
}
.account_agency_typ_1 .ac-credit.is-col .ac-text,
.account_person_typ_1 .ac-credit.is-col .ac-text {
  flex: 1;
}
.account_agency_typ_1 .ac-credit.is-col .btn,
.account_person_typ_1 .ac-credit.is-col .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-bill,
.account_person_typ_1 .ac-bill {
  container-type: inline-size;
  list-style: none;
  margin: 0;
  padding: 0;
}
.account_agency_typ_1 .ac-bill__row,
.account_person_typ_1 .ac-bill__row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.5rem 1rem;
  padding: 0.75rem 0;
}
.account_agency_typ_1 .ac-bill__row + .ac-bill__row,
.account_person_typ_1 .ac-bill__row + .ac-bill__row {
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-bill__row.is-fail .ac-bill__ic,
.account_person_typ_1 .ac-bill__row.is-fail .ac-bill__ic {
  background: #FDECEC;
  color: var(--color-error);
}
.account_agency_typ_1 .ac-bill__ic,
.account_person_typ_1 .ac-bill__ic {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--purple-50);
  color: var(--first-color);
}
.account_agency_typ_1 .ac-bill__ic .i,
.account_person_typ_1 .ac-bill__ic .i {
  width: 1.125rem;
  height: 1.125rem;
}
.account_agency_typ_1 .ac-bill__main,
.account_person_typ_1 .ac-bill__main {
  min-width: 0;
}
.account_agency_typ_1 .ac-bill__main b,
.account_person_typ_1 .ac-bill__main b {
  display: block;
  color: var(--ink);
}
.account_agency_typ_1 .ac-bill__main small,
.account_person_typ_1 .ac-bill__main small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-bill__when,
.account_person_typ_1 .ac-bill__when {
  grid-column: 2;
  grid-row: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.5rem;
  font-size: 0.8125rem;
  color: var(--mute);
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-bill__when > span,
.account_person_typ_1 .ac-bill__when > span,
.account_agency_typ_1 .ac-bill__when small,
.account_person_typ_1 .ac-bill__when small {
  white-space: nowrap;
}
.account_agency_typ_1 .ac-bill__when small,
.account_person_typ_1 .ac-bill__when small {
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_agency_typ_1 .ac-bill__when small::before,
.account_person_typ_1 .ac-bill__when small::before {
  content: '· ';
}
.account_agency_typ_1 .ac-bill__sum,
.account_person_typ_1 .ac-bill__sum {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-bill__sum b,
.account_person_typ_1 .ac-bill__sum b {
  display: block;
  color: var(--ink);
  font-weight: 700;
}
.account_agency_typ_1 .ac-bill__sum small,
.account_person_typ_1 .ac-bill__sum small {
  display: block;
  font-size: 0.8125rem;
  font-weight: 600;
}
.account_agency_typ_1 .ac-bill__sum small.is-ok,
.account_person_typ_1 .ac-bill__sum small.is-ok {
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-bill__sum small.is-wait,
.account_person_typ_1 .ac-bill__sum small.is-wait {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-bill__sum small.is-err,
.account_person_typ_1 .ac-bill__sum small.is-err {
  color: var(--color-error);
}
.account_agency_typ_1 .ac-bill__act,
.account_person_typ_1 .ac-bill__act {
  grid-column: 2 / -1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0.375rem 0.875rem;
  /* ikona sa v úzkom riadku nenaťahuje ani nestláča */
}
.account_agency_typ_1 .ac-bill__act .btn-link,
.account_person_typ_1 .ac-bill__act .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-bill__act .btn-link .i,
.account_person_typ_1 .ac-bill__act .btn-link .i {
  width: 1rem;
  height: 1rem;
}
.account_agency_typ_1 .ac-bill__act .btn,
.account_person_typ_1 .ac-bill__act .btn {
  white-space: nowrap;
}
.account_agency_typ_1 .ac-bill__act .i,
.account_person_typ_1 .ac-bill__act .i {
  flex: none;
}
.account_agency_typ_1 .ac-bill__act small,
.account_person_typ_1 .ac-bill__act small {
  flex-basis: 100%;
  font-size: 0.75rem;
  color: var(--mute);
}
.account_agency_typ_1 .ac-bill__row.is-inv .ac-bill__main,
.account_person_typ_1 .ac-bill__row.is-inv .ac-bill__main {
  grid-column: 2 / -1;
}
.account_agency_typ_1 .ac-bill__row.is-inv .ac-bill__sum,
.account_person_typ_1 .ac-bill__row.is-inv .ac-bill__sum {
  grid-column: 2 / -1;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.5rem;
  text-align: left;
}
.account_agency_typ_1 .ac-bill__items,
.account_person_typ_1 .ac-bill__items {
  grid-column: 2 / -1;
  list-style: none;
  margin: 0.25rem 0 0;
  padding: 0.625rem 0.875rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-bill__items li,
.account_person_typ_1 .ac-bill__items li {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.25rem 0;
  color: var(--warm);
}
.account_agency_typ_1 .ac-bill__items li b,
.account_person_typ_1 .ac-bill__items li b {
  color: var(--ink);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-bill__items li.is-total,
.account_person_typ_1 .ac-bill__items li.is-total {
  margin-top: 0.25rem;
  padding-top: 0.5rem;
  border-top: 1px solid var(--line-color);
  font-weight: 700;
  color: var(--ink);
}
.account_agency_typ_1 .ac-usage,
.account_person_typ_1 .ac-usage {
  container-type: inline-size;
  list-style: none;
  margin: 0;
  padding: 0;
}
.account_agency_typ_1 .ac-usage li,
.account_person_typ_1 .ac-usage li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.25rem 1rem;
  padding: 0.625rem 0;
  font-size: 0.875rem;
}
.account_agency_typ_1 .ac-usage li + li,
.account_person_typ_1 .ac-usage li + li {
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-usage time,
.account_person_typ_1 .ac-usage time {
  grid-column: 1;
  grid-row: 1;
  font-size: 0.75rem;
  color: var(--mute);
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-usage__what,
.account_person_typ_1 .ac-usage__what {
  grid-column: 1;
  grid-row: 2;
  min-width: 0;
}
.account_agency_typ_1 .ac-usage__what b,
.account_person_typ_1 .ac-usage__what b {
  display: block;
  color: var(--ink);
  font-weight: 600;
}
.account_agency_typ_1 .ac-usage__what small,
.account_person_typ_1 .ac-usage__what small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-usage__who,
.account_person_typ_1 .ac-usage__who {
  grid-column: 1;
  grid-row: 3;
  font-size: 0.8125rem;
  color: var(--mute);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_agency_typ_1 .ac-usage__sum,
.account_person_typ_1 .ac-usage__sum {
  grid-column: 2;
  grid-row: 1 / span 3;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.account_agency_typ_1 .ac-usage__sum b,
.account_person_typ_1 .ac-usage__sum b {
  color: var(--ink);
  font-weight: 700;
}
.account_agency_typ_1 .ac-usage__sum small,
.account_person_typ_1 .ac-usage__sum small {
  display: block;
  font-size: 0.75rem;
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-qr,
.account_person_typ_1 .ac-qr {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
  margin-top: 1rem;
}
.account_agency_typ_1 .ac-qr .ac-keys,
.account_person_typ_1 .ac-qr .ac-keys {
  grid-template-columns: 3rem minmax(0, 1fr);
}
.account_agency_typ_1 .ac-qr__img,
.account_person_typ_1 .ac-qr__img {
  width: 8.5rem;
  height: 8.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  color: var(--ink);
}
.account_agency_typ_1 .ac-qr__img .i,
.account_person_typ_1 .ac-qr__img .i {
  width: 100%;
  height: 100%;
}
.account_agency_typ_1 .ac-addon,
.account_person_typ_1 .ac-addon {
  min-width: 0;
}
.account_agency_typ_1 .ac-addon .la-pay__method,
.account_person_typ_1 .ac-addon .la-pay__method {
  white-space: normal;
}
.account_agency_typ_1 .ac-addon .la-pay__methods,
.account_person_typ_1 .ac-addon .la-pay__methods {
  margin-top: 0.25rem;
}
.account_agency_typ_1 .ac-addon .la-label,
.account_person_typ_1 .ac-addon .la-label {
  margin-top: 1.25rem;
}
.account_agency_typ_1 .ac-addon .po-confirm__act,
.account_person_typ_1 .ac-addon .po-confirm__act {
  margin-top: 1.25rem;
}
.account_agency_typ_1 .ac-sms,
.account_person_typ_1 .ac-sms {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin-top: 1.25rem;
}
.account_agency_typ_1 .ac-sms .ac-keys,
.account_person_typ_1 .ac-sms .ac-keys {
  align-self: stretch;
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  /* text SMS a číslo veľkým písmom - musí sa dať pohodlne prečítať a prepísať (Jozef 13. 11.) */
}
.account_agency_typ_1 .ac-sms .ac-keys dt,
.account_person_typ_1 .ac-sms .ac-keys dt {
  margin-bottom: 0.25rem;
  font-size: 0.9375rem;
}
.account_agency_typ_1 .ac-sms .ac-keys dd + dt,
.account_person_typ_1 .ac-sms .ac-keys dd + dt {
  margin-top: 1rem;
}
.account_agency_typ_1 .ac-sms .ac-keys dd,
.account_person_typ_1 .ac-sms .ac-keys dd {
  flex-wrap: nowrap;
}
.account_agency_typ_1 .ac-sms .ac-keys code,
.account_person_typ_1 .ac-sms .ac-keys code {
  padding: 0.375rem 0.75rem;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.account_agency_typ_1 .ac-sms .ac-keys b,
.account_person_typ_1 .ac-sms .ac-keys b {
  font-size: 1.25rem;
}
.account_agency_typ_1 .ac-sms .ac-keys .btn-link,
.account_person_typ_1 .ac-sms .ac-keys .btn-link {
  flex: none;
  white-space: nowrap;
  font-size: 0.9375rem;
}
.account_agency_typ_1 .ac-sms__qr,
.account_person_typ_1 .ac-sms__qr {
  order: -1;
}
@media (max-width: 413.98px) {
  .account_agency_typ_1 .ac-sms .ac-keys,
  .account_person_typ_1 .ac-sms .ac-keys {
    padding: 0.875rem;
  }
  .account_agency_typ_1 .ac-sms .ac-keys dd + dt,
  .account_person_typ_1 .ac-sms .ac-keys dd + dt {
    margin-top: 0.875rem;
  }
  .account_agency_typ_1 .ac-sms .ac-keys dd,
  .account_person_typ_1 .ac-sms .ac-keys dd {
    gap: 0.5rem;
  }
  .account_agency_typ_1 .ac-sms .ac-keys code,
  .account_person_typ_1 .ac-sms .ac-keys code {
    white-space: nowrap;
    padding: 0.3125rem 0.5rem;
    font-size: 0.9375rem;
    letter-spacing: 0;
  }
  .account_agency_typ_1 .ac-sms .ac-keys .btn-link,
  .account_person_typ_1 .ac-sms .ac-keys .btn-link {
    padding: 0.25rem;
  }
  .account_agency_typ_1 .ac-sms .ac-keys .btn-link .i,
  .account_person_typ_1 .ac-sms .ac-keys .btn-link .i {
    width: 1.125rem;
    height: 1.125rem;
  }
  .account_agency_typ_1 .ac-sms .ac-keys .ac-sms__copy,
  .account_person_typ_1 .ac-sms .ac-keys .ac-sms__copy {
    display: none;
  }
}
@media (max-width: 359.98px) {
  .account_agency_typ_1 .ac-sms .ac-keys code,
  .account_person_typ_1 .ac-sms .ac-keys code {
    font-size: 0.8125rem;
  }
}
.account_agency_typ_1 .ac-sms__qr,
.account_person_typ_1 .ac-sms__qr {
  flex: none;
  width: 12.5rem;
  margin: 0;
  text-align: center;
}
.account_agency_typ_1 .ac-sms__qr img,
.account_person_typ_1 .ac-sms__qr img {
  display: block;
  width: 100%;
  height: auto;
  image-rendering: pixelated;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
}
.account_agency_typ_1 .ac-sms__qr figcaption,
.account_person_typ_1 .ac-sms__qr figcaption {
  margin-top: 0.375rem;
  font-size: 0.75rem;
  line-height: 1.3;
  color: var(--mute);
}
@media (max-width: 575.98px) {
  .account_agency_typ_1 .ac-sms,
  .account_person_typ_1 .ac-sms {
    display: block;
  }
  .account_agency_typ_1 .ac-sms__qr,
  .account_person_typ_1 .ac-sms__qr {
    display: none !important;
  }
}
.account_agency_typ_1 .ac-autopay,
.account_person_typ_1 .ac-autopay {
  margin-top: 1rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--line-color);
}
.account_agency_typ_1 .ac-autopay .la-hint,
.account_person_typ_1 .ac-autopay .la-hint {
  margin: 0.25rem 0 0;
}
.account_agency_typ_1 .ac-autopay .btn-link,
.account_person_typ_1 .ac-autopay .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: inherit;
}
@container (min-width: 40.0625rem) {
  .account_agency_typ_1 .ac-bill__row,
  .account_person_typ_1 .ac-bill__row {
    grid-template-columns: auto minmax(0, 1fr) 9rem 7.5rem 12rem;
    gap: 0.5rem 1rem;
  }
  .account_agency_typ_1 .ac-bill__when,
  .account_person_typ_1 .ac-bill__when {
    grid-column: auto;
    grid-row: auto;
    display: block;
    font-size: 0.875rem;
    color: var(--warm);
  }
  .account_agency_typ_1 .ac-bill__when small,
  .account_person_typ_1 .ac-bill__when small {
    display: block;
  }
  .account_agency_typ_1 .ac-bill__when small::before,
  .account_person_typ_1 .ac-bill__when small::before {
    content: none;
  }
  .account_agency_typ_1 .ac-bill__sum,
  .account_person_typ_1 .ac-bill__sum {
    text-align: left;
  }
  .account_agency_typ_1 .ac-bill__act,
  .account_person_typ_1 .ac-bill__act {
    grid-column: auto;
    justify-content: flex-end;
    text-align: right;
  }
  .account_agency_typ_1 .ac-bill__row.is-inv,
  .account_person_typ_1 .ac-bill__row.is-inv {
    grid-template-columns: auto minmax(0, 1fr) 11rem 17rem;
  }
  .account_agency_typ_1 .ac-bill__row.is-inv .ac-bill__main,
  .account_person_typ_1 .ac-bill__row.is-inv .ac-bill__main,
  .account_agency_typ_1 .ac-bill__row.is-inv .ac-bill__sum,
  .account_person_typ_1 .ac-bill__row.is-inv .ac-bill__sum {
    grid-column: auto;
  }
  .account_agency_typ_1 .ac-bill__row.is-inv .ac-bill__sum,
  .account_person_typ_1 .ac-bill__row.is-inv .ac-bill__sum {
    display: block;
  }
  .account_agency_typ_1 .ac-bill__row.is-inv .ac-bill__act,
  .account_person_typ_1 .ac-bill__row.is-inv .ac-bill__act {
    flex-wrap: nowrap;
  }
  .account_agency_typ_1 .ac-usage li,
  .account_person_typ_1 .ac-usage li {
    grid-template-columns: 3.5rem minmax(0, 1fr) 10rem 6rem;
  }
  .account_agency_typ_1 .ac-usage.is-log li,
  .account_person_typ_1 .ac-usage.is-log li {
    grid-template-columns: 6.5rem minmax(0, 1fr) 0 7rem;
  }
  .account_agency_typ_1 .ac-usage time,
  .account_person_typ_1 .ac-usage time,
  .account_agency_typ_1 .ac-usage__what,
  .account_person_typ_1 .ac-usage__what,
  .account_agency_typ_1 .ac-usage__who,
  .account_person_typ_1 .ac-usage__who,
  .account_agency_typ_1 .ac-usage__sum,
  .account_person_typ_1 .ac-usage__sum {
    grid-column: auto;
    grid-row: auto;
  }
  .account_agency_typ_1 .ac-usage time,
  .account_person_typ_1 .ac-usage time {
    font-size: 0.875rem;
  }
  .account_agency_typ_1 .ac-usage__who,
  .account_person_typ_1 .ac-usage__who {
    font-size: 0.875rem;
    color: var(--warm);
  }
}
.account_agency_typ_1 .ac-transfer .btn,
.account_person_typ_1 .ac-transfer .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.account_agency_typ_1 .ac-transfer__list,
.account_person_typ_1 .ac-transfer__list {
  list-style: none;
  margin: 0 0 0.5rem;
  padding: 0;
  display: grid;
  gap: 0.375rem;
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_agency_typ_1 .ac-transfer__list li,
.account_person_typ_1 .ac-transfer__list li {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
}
.account_agency_typ_1 .ac-transfer__list li .i,
.account_person_typ_1 .ac-transfer__list li .i {
  margin-top: 0.125rem;
  color: var(--accent-text);
}
.account_agency_typ_1 .ac-transfer__list li.is-warn,
.account_person_typ_1 .ac-transfer__list li.is-warn {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-transfer__list li.is-warn .i,
.account_person_typ_1 .ac-transfer__list li.is-warn .i {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-transfer__list li.is-mute,
.account_person_typ_1 .ac-transfer__list li.is-mute {
  color: var(--mute);
}
.account_agency_typ_1 .ac-transfer__list li.is-mute .i,
.account_person_typ_1 .ac-transfer__list li.is-mute .i {
  color: var(--mute);
}
.account_agency_typ_1 .ac-transfer__form,
.account_person_typ_1 .ac-transfer__form {
  padding-top: 0.25rem;
}
.account_agency_typ_1 .ac-transfer__form .la-label,
.account_person_typ_1 .ac-transfer__form .la-label {
  margin-top: 0;
}
.account_agency_typ_1 .ac-transfer__act,
.account_person_typ_1 .ac-transfer__act {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 1.25rem;
}
.account_agency_typ_1 .ac-transfer__act .btn-link,
.account_person_typ_1 .ac-transfer__act .btn-link {
  padding: 0;
  border: 0;
  background: none;
}
.account_agency_typ_1 .ac-transfer__sent,
.account_person_typ_1 .ac-transfer__sent {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  padding: 1rem;
  border-radius: var(--radius-sm);
  background: #FFF4DB;
  color: #5C3D00;
}
.account_agency_typ_1 .ac-transfer__sent > .i,
.account_person_typ_1 .ac-transfer__sent > .i {
  color: #8A5A00;
}
.account_agency_typ_1 .ac-transfer__sent > div,
.account_person_typ_1 .ac-transfer__sent > div {
  flex: 1;
  min-width: 14rem;
}
.account_agency_typ_1 .ac-savebar,
.account_person_typ_1 .ac-savebar {
  position: sticky;
  bottom: 1rem;
  z-index: 25;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1rem 0.75rem 1.25rem;
  border-radius: var(--radius-md);
  background: var(--first-color);
  color: var(--white-color);
  box-shadow: var(--shadow-card-2);
}
.account_agency_typ_1 .ac-savebar > span,
.account_person_typ_1 .ac-savebar > span {
  flex: 1;
  font-weight: 600;
}
.account_agency_typ_1 .ac-savebar .btn-link,
.account_person_typ_1 .ac-savebar .btn-link {
  color: var(--white-color);
  opacity: 0.8;
  padding: 0;
  border: 0;
  background: none;
}
.account_agency_typ_1 .ac-toast,
.account_person_typ_1 .ac-toast {
  position: fixed;
  left: 50%;
  bottom: 1.5rem;
  transform: translateX(-50%);
  z-index: 1100;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.75rem 1.125rem;
  border-radius: var(--radius-sm);
  background: var(--first-color);
  color: var(--white-color);
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: var(--shadow-card-2);
  max-width: calc(100vw - 2rem);
}
.account_agency_typ_1 .ac-toast .i,
.account_person_typ_1 .ac-toast .i {
  color: var(--accent-color);
}
@media (max-width: 61.9375rem) {
  .account_agency_typ_1,
  .account_person_typ_1 {
    /* menu ako posuvný pás záložiek */
  }
  .account_agency_typ_1 .ac-layout,
  .account_person_typ_1 .ac-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
  }
  .account_agency_typ_1 .ac-side,
  .account_person_typ_1 .ac-side {
    position: static;
    padding: 0.5rem;
  }
  .account_agency_typ_1 .ac-side__who,
  .account_person_typ_1 .ac-side__who {
    display: none;
  }
  .account_agency_typ_1 .ac-side__nav,
  .account_person_typ_1 .ac-side__nav {
    display: flex;
    flex-direction: row;
    gap: 0.25rem;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .account_agency_typ_1 .ac-side__nav::-webkit-scrollbar,
  .account_person_typ_1 .ac-side__nav::-webkit-scrollbar {
    display: none;
  }
  .account_agency_typ_1 .ac-side__nav li,
  .account_person_typ_1 .ac-side__nav li {
    flex-shrink: 0;
  }
  .account_agency_typ_1 .ac-side__nav a,
  .account_person_typ_1 .ac-side__nav a,
  .account_agency_typ_1 .ac-side__nav button,
  .account_person_typ_1 .ac-side__nav button {
    white-space: nowrap;
    padding: 0.5rem 0.75rem;
  }
  .account_agency_typ_1 .ac-side__nav .is-later,
  .account_person_typ_1 .ac-side__nav .is-later {
    display: none;
  }
}
@media (max-width: 47.9375rem) {
  .account_agency_typ_1 .ac-card,
  .account_person_typ_1 .ac-card {
    padding: 1.125rem 1rem;
  }
  .account_agency_typ_1 .ac-grid,
  .account_person_typ_1 .ac-grid,
  .account_agency_typ_1 .ac-grid.is-3,
  .account_person_typ_1 .ac-grid.is-3 {
    grid-template-columns: minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-logo,
  .account_person_typ_1 .ac-logo {
    flex-direction: column;
    align-items: flex-start;
  }
  .account_agency_typ_1 .ac-hours__row,
  .account_person_typ_1 .ac-hours__row {
    grid-template-columns: 5.5rem minmax(0, 1fr);
    gap: 0.25rem 0.75rem;
    padding: 0.375rem 0;
  }
  .account_agency_typ_1 .ac-hours__row .fb-check,
  .account_person_typ_1 .ac-hours__row .fb-check {
    grid-column: 2;
  }
  .account_agency_typ_1 .ac-hours__row .ac-hours__time,
  .account_person_typ_1 .ac-hours__row .ac-hours__time {
    grid-column: 2;
  }
  .account_agency_typ_1 .ac-person,
  .account_person_typ_1 .ac-person {
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 0.875rem 1rem;
  }
  .account_agency_typ_1 .ac-person__tags,
  .account_person_typ_1 .ac-person__tags {
    grid-column: 2;
    grid-row: 2;
    justify-content: flex-start;
  }
  .account_agency_typ_1 .ac-person__menu,
  .account_person_typ_1 .ac-person__menu {
    grid-column: 3;
    grid-row: 1 / span 2;
  }
  .account_agency_typ_1 .ac-pop,
  .account_person_typ_1 .ac-pop {
    width: min(18rem, calc(100vw - 3rem));
  }
  .account_agency_typ_1 .ac-roles.is-grid,
  .account_person_typ_1 .ac-roles.is-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-kpi,
  .account_person_typ_1 .ac-kpi {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .account_agency_typ_1 .ac-kpi b,
  .account_person_typ_1 .ac-kpi b {
    font-size: 1.375rem;
  }
  .account_agency_typ_1 .ac-ads-q,
  .account_person_typ_1 .ac-ads-q {
    min-width: 0;
    width: 100%;
  }
  .account_agency_typ_1 .ac-move__bar,
  .account_person_typ_1 .ac-move__bar {
    grid-template-columns: minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-move__bar .ac-move__q,
  .account_person_typ_1 .ac-move__bar .ac-move__q,
  .account_agency_typ_1 .ac-move__bar .ac-move__to,
  .account_person_typ_1 .ac-move__bar .ac-move__to,
  .account_agency_typ_1 .ac-move__bar .btn,
  .account_person_typ_1 .ac-move__bar .btn {
    grid-column: 1;
  }
  .account_agency_typ_1 .ac-move__list li,
  .account_person_typ_1 .ac-move__list li {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-move__list li .ac-move__img,
  .account_person_typ_1 .ac-move__list li .ac-move__img {
    display: none;
  }
  .account_agency_typ_1 .ac-move__list li .ac-move__who,
  .account_person_typ_1 .ac-move__list li .ac-move__who {
    grid-column: 2;
  }
  .account_agency_typ_1 .ac-branch,
  .account_person_typ_1 .ac-branch {
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 0.875rem 1rem;
  }
  .account_agency_typ_1 .ac-branch__n,
  .account_person_typ_1 .ac-branch__n {
    grid-column: 2;
  }
  .account_agency_typ_1 .ac-branch .btn,
  .account_person_typ_1 .ac-branch .btn {
    grid-column: 3;
    grid-row: 1;
  }
  .account_agency_typ_1 .ac-savebar > span,
  .account_person_typ_1 .ac-savebar > span {
    font-size: 0.875rem;
  }
  .account_agency_typ_1 .ac-conn__head,
  .account_person_typ_1 .ac-conn__head {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-conn__act,
  .account_person_typ_1 .ac-conn__act {
    grid-column: 1 / -1;
  }
  .account_agency_typ_1 .ac-conn__nums,
  .account_person_typ_1 .ac-conn__nums {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .account_agency_typ_1 .ac-map__row,
  .account_person_typ_1 .ac-map__row {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.5rem;
  }
  .account_agency_typ_1 .ac-map__arrow,
  .account_person_typ_1 .ac-map__arrow {
    transform: rotate(90deg);
    justify-self: start;
  }
  .account_agency_typ_1 .ac-map__act,
  .account_person_typ_1 .ac-map__act {
    flex-direction: row;
    align-items: center;
    gap: 1rem;
  }
  .account_agency_typ_1 .ac-runs__row,
  .account_person_typ_1 .ac-runs__row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.25rem 1rem;
  }
  .account_agency_typ_1 .ac-runs__row .ac-runs__res,
  .account_person_typ_1 .ac-runs__row .ac-runs__res {
    grid-column: 1;
    grid-row: 2;
  }
  .account_agency_typ_1 .ac-runs__row .ac-runs__n,
  .account_person_typ_1 .ac-runs__row .ac-runs__n {
    grid-column: 2;
    grid-row: 1 / span 2;
  }
  .account_agency_typ_1 .ac-runs__row .ac-runs__t,
  .account_person_typ_1 .ac-runs__row .ac-runs__t {
    display: none;
  }
  .account_agency_typ_1 .ac-runs__legend,
  .account_person_typ_1 .ac-runs__legend {
    display: none;
  }
  .account_agency_typ_1 .ac-errs__img,
  .account_person_typ_1 .ac-errs__img {
    width: 3.5rem;
    height: 2.75rem;
  }
  .account_agency_typ_1 .ac-keys,
  .account_person_typ_1 .ac-keys {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.25rem;
  }
  .account_agency_typ_1 .ac-keys dd + dt,
  .account_person_typ_1 .ac-keys dd + dt {
    margin-top: 0.5rem;
  }
  .account_agency_typ_1 .ac-credit,
  .account_person_typ_1 .ac-credit {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-credit .ac-credit__act,
  .account_person_typ_1 .ac-credit .ac-credit__act {
    grid-column: 1 / -1;
    align-items: flex-start;
    text-align: left;
  }
  .account_agency_typ_1 .ac-grid--cards,
  .account_person_typ_1 .ac-grid--cards {
    grid-template-columns: minmax(0, 1fr);
  }
  .account_agency_typ_1 .ac-qr,
  .account_person_typ_1 .ac-qr {
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
  }
  .account_agency_typ_1 .ac-qr .ac-keys,
  .account_person_typ_1 .ac-qr .ac-keys {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }
}
/* ---------------------------------------------------------------------------
   account_person_typ_1 - účet súkromnej osoby (bydo, /ucet). Moje inzeráty (limit aktívnych naraz, platnosť 60 dní,
   predĺženie, TOP, stiahnuť s dôvodom), Obľúbené, Uložené hľadania (upozornenia), Nastavenia.
   Základ (bočné menu, .ac-card, .ac-chip, menu ⋯ .ac-pop, lišta Uložiť, hlásenie) zdieľa s účtom realitky -
   selektor v _account_agency_typ_1.less; popisy polí .la-*, voľby .la-period a platba .la-pay__* v _listing_add_typ_1.less.
   --------------------------------------------------------------------------- */
.account_person_typ_1 {
  /* ---- limit aktívnych inzerátov ---- */
  /* pri limite ponuka firemného účtu (realitka, developer - bez limitu) */
  /* pripojenie Google: tlačidlo cez šírku, pod ním aké údaje berieme */
  /* prechod na firemný účet: druh + IČO, nájdená firma z registra */
  /* ---- moje inzeráty: málo položiek -> riadky s viac miesta, nie tabuľka ---- */
  /* inzeráty ako v admine Real: každý riadok samostatná karta s medzerou (Jozef 8. 11.) */
  /* web zatiaľ štatistiky inzerátu nemá - riadok bez stĺpca čísel */
  /* riadok inzerátu (Jozef 9. 11., variant A): [úchyt] výber | fotka | text | stav + propagácia | Upraviť, Viac */
  /* na počítači zvislo na ľavom okraji [˄ úchyt ˅] (Jozef 9. 11.) - šípky tlmené, výraznejšie pri prejdení nad riadkom */
  /* skrytý ako duplicita: odkaz na inzerát, ktorý ostal na webe, a rada pod ním */
  /* propagácia pod stavom: beží = plná pilulka (TOP červená, zvýraznenie zelená), nebeží = tichý odkaz */
  /* poradie: skupina [úchyt | ˄ | ˅] ako v admine Real -> Inzeráty */
  /* naposledy menený inzerát (úprava, presun, akcia z Viac - nie hromadné) */
  /* „Viac" namiesto troch bodiek */
  /* menu Viac pri inzeráte: ikona + text, Zmazať oddelené a výraznejšie (Jozef 8. 11.) */
  /* poradie zoznamu (bydoSelect) - menovka len pre čítačky, pole kompaktné */
  /* dátumy a pôvod pod cenou (Jozef 8. 11.) */
  /* realitka: hľadanie + filter makléra (ucet-realitky) */
  /* výber: políčko v rohu fotky (mriežka riadku ostáva), lišta akcií sa lepí hore */
  /* „Vybrať všetky" zarovnané so stĺpcom políčok v riadkoch (padding riadku 1.25rem + rámik) */
  /* Dať maklérovi: zoznam maklérov nesmie orezať okno (Jozef 8. 11.) - okno pustí obsah von, zoznam sa posúva sám */
  /* karta Makléri (realitka): [výber] avatar meno | štítky | akcie; prístup do účtu = štítok roly / Pozvaný */
  /* okná Pozvať a Práva: roly ako voľby, práva v skupinách */
  /* PC: okno práv široké - roly v jednom riadku, práva v dvoch stĺpcoch bez posúvania (Jozef 8. 11.) */
  /* Profil a Pobočky (účet firmy, _account_profil.php): ulica + číslo v jednom riadku, akcie pobočky, okno pobočky */
  /* zrušenie účtu - nenápadná karta na konci nastavení, okno s prehľadom a potvrdením */
  /* spodný panel na mobile (potvrdenie, Google, Inzerát je online) - nie celá obrazovka; úchyt, stiahnuť palcom (bydo-ux.js) */
  /* zariadenie na mobile: tlačidlá pod textom, nie stlačené vedľa neho */
  /* polia v paneli na modrastom podklade (ako predtým v karte), aby panel nebol holý (Jozef 8. 11.) */
  /* okno potvrdenia */
  /* okno TOP / zvýraznenie: ktorý inzerát - fotka a názov v okne, riadok v zozname hrubý zelený rámček (Jozef 9. 11.) */
  /* mobil: menu Viac ako výber na úvode - pod tlačidlami na šírku karty, stránka sa posunie (bydo-ux.js) - Jozef 8. 11. */
  /* platnosť: koľko z obdobia ostáva */
  /* pilulky dôvodu sú v menu ⋯ - prebiť štýl položky menu (.ac-pop button) */
  /* ---- obľúbené ---- */
  /* hlásenie po prihlásení: obľúbené / hľadania z prehliadača */
  /* ---- uložené hľadania ---- */
  /* ---- nastavenia ---- */
  /* až za základnými pravidlami - container query so zhodnou špecificitou by inak prehrala */
}
.account_person_typ_1 .ac-side__who .ac-person__av {
  flex-shrink: 0;
}
.account_person_typ_1 .ac-side__kind {
  display: block;
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_person_typ_1 .btn.is-locked {
  opacity: 0.55;
}
.account_person_typ_1 .po-limit {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem 1.25rem;
  padding: 1rem 1.25rem;
  margin-bottom: 1rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_person_typ_1 .po-limit.is-full {
  background: #FFF4DB;
  border-color: #F2D49B;
}
.account_person_typ_1 .po-limit__meter {
  display: flex;
  gap: 0.25rem;
}
.account_person_typ_1 .po-limit__meter span {
  width: 1.75rem;
  height: 0.5rem;
  border-radius: var(--radius-badge);
  background: var(--line-color);
}
.account_person_typ_1 .po-limit__meter span.is-on {
  background: var(--accent-color);
}
.account_person_typ_1 .po-limit.is-full .po-limit__meter span.is-on {
  background: #D99A1E;
}
.account_person_typ_1 .po-limit__txt {
  flex: 1 1 18rem;
  font-size: 0.875rem;
  color: var(--warm);
}
.account_person_typ_1 .po-limit__txt b {
  display: block;
  color: var(--ink);
  font-size: 0.9375rem;
}
.account_person_typ_1 .po-limit__rk {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0;
  font-size: 0.875rem;
}
.account_person_typ_1 .po-limit__rk .i {
  width: 0.875rem;
  height: 0.875rem;
}
.account_person_typ_1 .po-limit__firm {
  display: block;
  margin-top: 0.25rem;
}
.account_person_typ_1 .po-limit__firm .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: inherit;
}
.account_person_typ_1 .po-confirm__chip {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0.75rem 0 0.25rem;
  padding: 0.75rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  font-weight: 700;
  color: var(--ink);
  word-break: break-all;
}
.account_person_typ_1 .po-confirm__chip .i {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}
.account_person_typ_1 .po-gsi {
  display: flex;
  justify-content: center;
  min-height: 2.75rem;
}
.account_person_typ_1 .po-gcta {
  margin-top: 1rem;
  padding: 1rem;
  border: 2px solid var(--accent-color);
  border-radius: var(--radius-md);
  text-align: center;
}
.account_person_typ_1 .po-gcta__title {
  margin: 0 0 0.75rem !important;
  font-weight: 700;
  font-size: 1rem !important;
  color: var(--ink);
}
.account_person_typ_1 .po-gcta__hint {
  margin: 0.625rem 0 0 !important;
  font-size: 0.8125rem !important;
  color: var(--mute);
}
.account_person_typ_1 .po-gdata {
  margin-top: 1.25rem;
  padding: 0.875rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--warm);
}
.account_person_typ_1 .po-gdata p {
  margin: 0;
  font-size: inherit !important;
  line-height: inherit;
  color: inherit;
}
.account_person_typ_1 .po-gdata p + ul,
.account_person_typ_1 .po-gdata ul + p {
  margin-top: 0.5rem;
}
.account_person_typ_1 .po-gdata b {
  color: var(--ink);
}
.account_person_typ_1 .po-gdata ul {
  margin: 0;
  padding-left: 1.125rem;
}
.account_person_typ_1 .po-gdata li + li {
  margin-top: 0.25rem;
}
.account_person_typ_1 .po-firm__kind {
  margin: 0 0 1rem;
}
.account_person_typ_1 .po-firm__found {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  margin-top: 0.875rem;
  padding: 0.875rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--white-color);
  border: 1px solid var(--line-color);
}
.account_person_typ_1 .po-firm__found > .i {
  width: 1.375rem;
  height: 1.375rem;
  flex-shrink: 0;
  color: var(--first-color);
}
.account_person_typ_1 .po-firm__found b {
  display: block;
  color: var(--ink);
}
.account_person_typ_1 .po-firm__found small {
  display: block;
  margin-top: 0.125rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_person_typ_1 .po-firm__taken {
  margin-top: 0.5rem !important;
  color: #8A5A00 !important;
}
.account_person_typ_1 .po-ads,
.account_person_typ_1 .po-favs,
.account_person_typ_1 .po-searches {
  container-type: inline-size;
  list-style: none;
  margin: 0;
  padding: 0;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_person_typ_1 .po-ad,
.account_person_typ_1 .po-fav {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) 10.5rem 12rem 11.5rem;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.25rem;
}
.account_person_typ_1 .po-ad + .po-ad,
.account_person_typ_1 .po-fav + .po-ad,
.account_person_typ_1 .po-ad + .po-fav,
.account_person_typ_1 .po-fav + .po-fav {
  border-top: 1px solid var(--line-color);
}
.account_person_typ_1 .po-ads {
  display: grid;
  gap: 0.5rem;
  background: none;
  border: 0;
  border-radius: 0;
}
.account_person_typ_1 .po-ads > .po-ad {
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  transition: border-color 0.15s, box-shadow 0.15s;
}
.account_person_typ_1 .po-ads > .po-ad:hover {
  border-color: #D9CFE6;
  box-shadow: 0 2px 10px rgba(60, 20, 90, 0.06);
}
.account_person_typ_1 .po-ads > .po-ad + .po-ad {
  border-top: 1px solid var(--line-color);
}
.account_person_typ_1 .po-ad.is-skoncil .ac-ad__img,
.account_person_typ_1 .po-ad.is-stiahnuty .ac-ad__img,
.account_person_typ_1 .po-ad.is-skoncil .po-ad__main,
.account_person_typ_1 .po-ad.is-stiahnuty .po-ad__main {
  opacity: 0.6;
}
.account_person_typ_1 .po-ad__main {
  min-width: 0;
}
.account_person_typ_1 .po-ad__sub {
  display: block;
  margin-top: 0.125rem;
  color: var(--mute);
  font-size: 0.8125rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_person_typ_1 .po-ad__state {
  font-size: 0.875rem;
}
.account_person_typ_1 .po-ad__state b {
  display: block;
  font-weight: 700;
}
.account_person_typ_1 .po-ad__state b.is-ok {
  color: var(--accent-text);
}
.account_person_typ_1 .po-ad__state b.is-wait {
  color: #8A5A00;
}
.account_person_typ_1 .po-ad__state b.is-off {
  color: var(--mute);
}
.account_person_typ_1 .po-ad__state small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_person_typ_1 .po-ad__stats {
  display: grid;
  grid-template-columns: repeat(2, auto);
  justify-content: start;
  gap: 0.25rem 1rem;
  font-size: 0.875rem;
  color: var(--warm);
}
.account_person_typ_1 .po-ad__stats > span {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}
.account_person_typ_1 .po-ad__stats .i {
  width: 1rem;
  height: 1rem;
  color: var(--mute);
}
.account_person_typ_1 .po-ad__stats b {
  font-weight: 600;
}
.account_person_typ_1 .po-ad__act {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  justify-content: flex-end;
}
.account_person_typ_1 .po-ad__act .btn {
  white-space: nowrap;
}
.account_person_typ_1 .po-ad.is-bez-stat {
  grid-template-columns: auto auto minmax(0, 1fr) 12.5rem auto;
  grid-template-areas: "pick img main state act";
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-ad__pick {
  grid-area: pick;
}
.account_person_typ_1 .po-ad.is-bez-stat > .ac-ad__img {
  grid-area: img;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-ad__main {
  grid-area: main;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-ad__state {
  grid-area: state;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-ad__act {
  grid-area: act;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order {
  grid-area: ord;
}
.account_person_typ_1 .po-mail {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0.375rem 0 0;
  color: var(--ink);
}
.account_person_typ_1 .po-mail .i {
  color: var(--mute);
}
.account_person_typ_1 .po-login .au-tag {
  margin-left: 0.25rem;
}
.account_person_typ_1 .po-ad.is-bez-stat.has-order {
  grid-template-columns: auto auto auto minmax(0, 1fr) 12.5rem auto;
  grid-template-areas: "ord pick img main state act";
  padding-left: 0.5rem;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order {
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: center;
  border: 0;
  background: none;
  overflow: visible;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn,
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__handle {
  width: 2.25rem;
  border-radius: var(--radius-sm);
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn + *,
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__handle + * {
  border-left: 0;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn {
  order: -1;
  height: 2rem;
  color: var(--line-color);
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn svg {
  width: 1rem;
  height: 1rem;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn:disabled {
  visibility: hidden;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn + .po-order__btn {
  order: 1;
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__handle {
  height: 2.25rem;
  background: none;
  color: var(--mute);
}
.account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__handle:hover {
  background: var(--purple-50);
  color: var(--first-color);
}
.account_person_typ_1 .po-ad.is-bez-stat:hover > .po-order .po-order__btn {
  color: var(--warm);
}
.account_person_typ_1 .po-dup small + small {
  margin-top: 0.25rem;
}
.account_person_typ_1 .po-dup a {
  color: var(--first-color);
  font-weight: 600;
  text-decoration: underline;
  overflow-wrap: anywhere;
}
.account_person_typ_1 .po-promo {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.375rem;
  margin-top: 0.5rem;
}
.account_person_typ_1 .po-promo__b {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.1875rem 0.5rem;
  border: 1px dashed var(--line-color);
  border-radius: var(--radius-badge);
  background: none;
  color: var(--mute);
  font: inherit;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
  cursor: pointer;
}
.account_person_typ_1 .po-promo__b .i {
  width: 0.875rem;
  height: 0.875rem;
}
.account_person_typ_1 .po-promo__b:hover:not(.is-static) {
  border-color: var(--first-color);
  color: var(--first-color);
}
.account_person_typ_1 .po-promo__b.is-on {
  border-style: solid;
  font-weight: 700;
}
.account_person_typ_1 .po-promo__b.is-top.is-on {
  background: var(--color-error);
  border-color: var(--color-error);
  color: var(--white-color);
}
.account_person_typ_1 .po-promo__b.is-hl.is-on {
  background: var(--accent-color);
  border-color: var(--accent-color);
  color: var(--on-accent);
}
.account_person_typ_1 .po-promo__b.is-on:hover:not(.is-static) {
  filter: brightness(0.95);
}
.account_person_typ_1 .po-promo__b.is-static {
  cursor: default;
}
.account_person_typ_1 .po-order {
  display: inline-flex;
  align-items: stretch;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  overflow: hidden;
}
.account_person_typ_1 .po-order__btn,
.account_person_typ_1 .po-order__handle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  background: none;
  color: var(--warm);
}
.account_person_typ_1 .po-order > * + * {
  border-left: 1px solid var(--line-color);
}
.account_person_typ_1 .po-order__btn {
  cursor: pointer;
}
.account_person_typ_1 .po-order__btn svg {
  width: 1rem;
  height: 1rem;
}
.account_person_typ_1 .po-order__btn:hover:not(:disabled) {
  background: var(--purple-50);
  color: var(--first-color);
}
.account_person_typ_1 .po-order__btn:disabled {
  opacity: 0.3;
  cursor: default;
}
.account_person_typ_1 .po-order__handle {
  width: 2.5rem;
  color: var(--first-color);
  background: var(--purple-50);
  cursor: grab;
  touch-action: none;
}
.account_person_typ_1 .po-order__handle:active {
  cursor: grabbing;
}
.account_person_typ_1 .po-order__handle .i {
  width: 1.25rem;
  height: 1.25rem;
}
.account_person_typ_1 .po-ad.is-ghost {
  opacity: 0.4;
  background: var(--cream);
}
.account_person_typ_1 .po-ad.is-flash {
  animation: po-flash 4s ease-out;
}
@keyframes po-flash {
  0%,
  40% {
    background: var(--green-50);
  }
  100% {
    background: var(--white-color);
  }
}
.account_person_typ_1 .po-ads > .po-ad.is-last {
  border-color: var(--first-color);
}
.account_person_typ_1 .po-more {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.account_person_typ_1 .po-more .i {
  width: 0.875rem;
  height: 0.875rem;
}
.account_person_typ_1 .po-menu {
  min-width: 17rem;
}
.account_person_typ_1 .po-menu button,
.account_person_typ_1 .po-menu .ac-pop__a {
  display: block;
  width: 100%;
  text-align: left;
}
.account_person_typ_1 .po-menu small {
  display: block;
  margin-top: 0.125rem;
  font-size: 0.75rem;
  font-weight: 500;
  color: var(--mute);
  line-height: 1.3;
}
.account_person_typ_1 .po-menu--ic {
  /* skupiny oddelené čiarou (Jozef 9. 11.): zobraziť | TOP, zvýrazniť | poradie | skryť, stiahnuť | Bazoš | archív | zmazať */
}
.account_person_typ_1 .po-menu--ic button:not(.btn):not(.btn-link),
.account_person_typ_1 .po-menu--ic .ac-pop__a {
  display: grid;
  grid-template-columns: 1.25rem minmax(0, 1fr);
  gap: 0.625rem;
  align-items: start;
}
.account_person_typ_1 .po-menu--ic .i {
  width: 1.25rem;
  height: 1.25rem;
  margin-top: 0.0625rem;
  color: var(--mute);
}
.account_person_typ_1 .po-menu--ic button:not(.btn):not(.btn-link):hover .i,
.account_person_typ_1 .po-menu--ic .ac-pop__a:hover .i {
  color: var(--first-color);
}
.account_person_typ_1 .po-menu--ic .po-menu__bz,
.account_person_typ_1 .po-menu--ic .po-menu__bz + button,
.account_person_typ_1 .po-menu--ic .po-menu__bz + .ac-pop__a {
  position: relative;
  margin-top: 0.75rem;
}
.account_person_typ_1 .po-menu--ic .po-menu__bz::before,
.account_person_typ_1 .po-menu--ic .po-menu__bz + button::before,
.account_person_typ_1 .po-menu--ic .po-menu__bz + .ac-pop__a::before {
  content: '';
  position: absolute;
  left: 0.625rem;
  right: 0.625rem;
  top: -0.375rem;
  border-top: 1px solid var(--line-color);
}
.account_person_typ_1 .po-menu--ic .po-menu__bz:not(:has( > :not([style*="display: none"]))) {
  display: none;
}
.account_person_typ_1 .po-menu--ic button.is-danger {
  margin-top: 0.375rem;
  padding-top: 0.625rem;
  position: relative;
  color: var(--color-error);
}
.account_person_typ_1 .po-menu--ic button.is-danger::before {
  content: '';
  position: absolute;
  left: 0.625rem;
  right: 0.625rem;
  top: 0;
  border-top: 1px solid var(--line-color);
}
.account_person_typ_1 .po-menu--ic button.is-danger .i {
  color: var(--color-error);
}
.account_person_typ_1 .po-menu--ic button.is-danger small {
  color: #B5534A;
}
.account_person_typ_1 .po-menu--ic button.is-danger:hover {
  background: #FDECEA;
  color: var(--color-error);
}
.account_person_typ_1 .po-menu--ic button.is-danger:hover .i {
  color: var(--color-error);
}
.account_person_typ_1 .po-tabsrow {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 0 0 0.75rem;
}
.account_person_typ_1 .po-tabsrow .po-tabs {
  margin: 0;
}
.account_person_typ_1 .po-viewsw {
  display: none;
  padding: 0.1875rem;
  border-radius: var(--radius-badge);
  background: var(--cream);
}
.account_person_typ_1 .po-viewsw button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2rem;
  padding: 0;
  border: 0;
  border-radius: var(--radius-badge);
  background: none;
  color: var(--mute);
  cursor: pointer;
}
.account_person_typ_1 .po-viewsw button .i {
  width: 1.125rem;
  height: 1.125rem;
}
.account_person_typ_1 .po-viewsw button.is-active {
  background: var(--white-color);
  color: var(--first-color);
  box-shadow: 0 1px 4px rgba(29, 16, 41, 0.12);
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-viewsw {
    display: inline-flex;
  }
}
.account_person_typ_1 .po-tabs {
  margin: 0 0 0.75rem;
}
.account_person_typ_1 .po-sort {
  margin-left: auto;
  min-width: 13.5rem;
}
.account_person_typ_1 .po-sort .field {
  margin: 0;
}
.account_person_typ_1 .po-sort label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
.account_person_typ_1 .po-sort .bydo-select__trigger {
  min-height: var(--control-h-s, 2.5rem);
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-sort {
    order: 3;
    flex: 1 0 100%;
    margin-left: 0;
  }
}
.account_person_typ_1 .po-tabsrow {
  flex-wrap: wrap;
}
.account_person_typ_1 .po-ad__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.125rem 0.5rem;
  margin-top: 0.25rem;
  font-size: 0.75rem;
  color: var(--mute);
}
.account_person_typ_1 .po-ad__meta > span + span:not(.po-src)::before {
  content: "·";
  margin-right: 0.5rem;
}
.account_person_typ_1 .po-src {
  display: inline-flex;
  align-items: center;
  padding: 0.0625rem 0.4375rem;
  border-radius: var(--radius-badge);
  font-weight: 700;
  font-size: 0.6875rem;
  background: var(--cream);
  color: var(--warm);
  /* na Bazoši (Real\Ucet\Bazos): dokedy tam vydrží, po 2 mesiacoch sivý */
  /* platené doplnky (Invoicing\AddonTag): TOP ako štítok vo výpise, zvýraznenie fialové ako karta */
}
.account_person_typ_1 .po-src.is-import {
  background: var(--purple-50);
  color: var(--first-color);
}
.account_person_typ_1 .po-src.po-bz {
  background: var(--green-50);
  color: var(--accent-text);
}
.account_person_typ_1 .po-src.po-bz.is-old {
  background: var(--cream);
  color: var(--mute);
}
.account_person_typ_1 .po-src.po-top {
  background: var(--color-error);
  color: var(--white-color);
}
.account_person_typ_1 .po-src.po-hl {
  background: var(--accent-color);
  color: var(--on-accent);
}
.account_person_typ_1 .po-more-row {
  display: flex;
  justify-content: center;
  padding: 1rem 0 0.25rem;
}
.account_person_typ_1 .po-find {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.75rem;
  margin: 0 0 0.75rem;
}
.account_person_typ_1 .po-find .field {
  margin: 0;
}
.account_person_typ_1 .po-find label:not(.fb-check) {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}
.account_person_typ_1 .po-find .bydo-select__trigger {
  min-height: var(--control-h-s, 2.5rem);
}
.account_person_typ_1 .po-find__q {
  flex: 1 1 16rem;
}
.account_person_typ_1 .po-find__broker {
  flex: 0 1 18rem;
  min-width: 14rem;
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-find__broker {
    flex: 1 1 100%;
  }
}
.account_person_typ_1 .po-ad__pick {
  margin: 0;
  align-self: center;
  cursor: pointer;
}
.account_person_typ_1 .po-ad__pick .fb-check-box {
  margin: 0;
  width: 1.25rem;
  height: 1.25rem;
}
.account_person_typ_1 .po-pickall {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0 0 0.5rem;
  padding: 0 1.3125rem;
  font-size: 0.875rem;
}
.account_person_typ_1 .po-pickall .fb-check-box {
  margin: 0;
  width: 1.25rem;
  height: 1.25rem;
}
.account_person_typ_1 .po-pickall .fb-check {
  margin: 0;
}
.account_person_typ_1 .po-pickall .fb-check-txt {
  font-size: 0.875rem;
  color: var(--warm);
}
.account_person_typ_1 .po-pickall__n {
  color: var(--mute);
}
.account_person_typ_1 .po-bulk {
  position: sticky;
  top: calc(4.5rem + 0.5rem);
  z-index: 6;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 0.625rem;
  padding: 0.625rem 0.875rem;
  margin-bottom: 0.75rem;
  border-radius: var(--radius-sm);
  background: var(--first-color);
  color: var(--white-color);
  /* mobil: jeden posuvný riadok, nie päť riadkov tlačidiel */
}
.account_person_typ_1 .po-bulk .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  background: var(--white-color);
  border-color: var(--white-color);
  color: var(--first-color);
}
.account_person_typ_1 .po-bulk .btn .i {
  width: 1rem;
  height: 1rem;
}
.account_person_typ_1 .po-bulk .btn-link {
  color: var(--white-color);
  opacity: 0.85;
  padding: 0;
  border: 0;
  background: none;
  margin-left: auto;
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-bulk {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    margin-left: -1rem;
    margin-right: -1rem;
    border-radius: 0;
  }
  .account_person_typ_1 .po-bulk::-webkit-scrollbar {
    display: none;
  }
  .account_person_typ_1 .po-bulk > * {
    flex-shrink: 0;
  }
  .account_person_typ_1 .po-bulk .btn,
  .account_person_typ_1 .po-bulk .btn-link {
    white-space: nowrap;
  }
}
.account_person_typ_1 .po-mv__now {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin: -0.25rem 0 0;
  padding: 0.625rem 0.875rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  font-size: 0.9375rem;
}
.account_person_typ_1 .po-mv__now .i {
  width: 1.125rem;
  height: 1.125rem;
  margin-top: 0.125rem;
  color: var(--mute);
}
.account_person_typ_1 .po-mv__now b {
  color: var(--ink);
}
.account_person_typ_1 .po-mv__now-l {
  color: var(--mute);
}
.account_person_typ_1 .po-mv__to {
  margin: 1rem 0 0;
}
.account_person_typ_1 .po-mv__to .field {
  margin: 0;
}
.account_person_typ_1 .po-confirm.po-mv {
  overflow: visible;
}
.account_person_typ_1 .po-confirm.po-mv .bydo-select__panel {
  max-height: min(16rem, 45vh);
  overflow-y: auto;
}
.account_person_typ_1 .po-broker {
  grid-template-columns: auto minmax(0, 1fr) auto auto;
}
.account_person_typ_1 .po-broker .btn {
  white-space: nowrap;
}
.account_person_typ_1 .po-brokers .po-broker {
  grid-template-columns: auto auto minmax(0, 1fr) auto auto;
}
.account_person_typ_1 .po-broker__n {
  font-size: 0.875rem;
  color: var(--warm);
  white-space: nowrap;
}
.account_person_typ_1 .po-broker__act {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  justify-content: flex-end;
}
.account_person_typ_1 .po-broker__act .ac-pop {
  right: 0;
  left: auto;
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-broker,
  .account_person_typ_1 .po-brokers .po-broker {
    grid-template-columns: auto auto minmax(0, 1fr);
  }
  .account_person_typ_1 .po-broker .ac-person__tags,
  .account_person_typ_1 .po-brokers .po-broker .ac-person__tags,
  .account_person_typ_1 .po-broker .po-broker__act,
  .account_person_typ_1 .po-brokers .po-broker .po-broker__act {
    grid-column: 3;
    justify-self: start;
    justify-content: flex-start;
  }
  .account_person_typ_1 .po-brokers .po-ad__pick {
    position: static;
    padding: 0;
    background: none;
    box-shadow: none;
  }
}
.account_person_typ_1 .po-confirm.po-inv,
.account_person_typ_1 .po-confirm.po-rights {
  max-width: 34rem;
}
.account_person_typ_1 .po-inv__rl {
  display: block;
  margin: 1rem 0 0.5rem;
}
.account_person_typ_1 .po-roles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
  margin-top: 0.75rem;
}
@media (max-width: 30rem) {
  .account_person_typ_1 .po-roles {
    grid-template-columns: minmax(0, 1fr);
  }
}
.account_person_typ_1 .po-perms {
  display: grid;
  gap: 0.875rem;
  margin: 1rem 0 0;
  max-height: 40vh;
  overflow: auto;
  padding-right: 0.25rem;
}
.account_person_typ_1 .po-perms .fb-check {
  margin: 0.375rem 0 0;
}
.account_person_typ_1 .po-perms .fb-check-txt {
  font-size: 0.875rem;
  color: var(--ink);
}
.account_person_typ_1 .po-perms__grp .la-label {
  display: block;
  margin-bottom: 0.125rem;
}
.account_person_typ_1 .po-rights .po-confirm__act,
.account_person_typ_1 .po-inv .po-confirm__act,
.account_person_typ_1 .po-mv .po-confirm__act {
  margin-top: 1.5rem;
}
@media (min-width: 62rem) {
  .account_person_typ_1 .po-confirm.po-rights {
    max-width: 60rem;
    width: calc(100vw - 4rem);
  }
  .account_person_typ_1 .po-rights .po-roles {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .account_person_typ_1 .po-rights .po-perms {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem 2rem;
    max-height: none;
    overflow: visible;
  }
  .account_person_typ_1 .po-confirm.po-inv {
    max-width: 44rem;
    width: calc(100vw - 4rem);
  }
}
.account_person_typ_1 .ac-addr {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 5.5rem;
  gap: 0.5rem;
}
.account_person_typ_1 .ac-addr--city {
  grid-template-columns: 6.5rem minmax(0, 1fr);
  margin-top: 0.5rem;
}
.account_person_typ_1 .ac-logo .btn-link {
  margin-left: 0.75rem;
  padding: 0;
  border: 0;
  background: none;
}
.account_person_typ_1 .ac-branch__act {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.account_person_typ_1 .ac-branch__act .btn {
  white-space: nowrap;
}
.account_person_typ_1 .po-confirm.po-branch {
  max-width: 40rem;
  width: calc(100vw - 2rem);
  max-height: calc(100vh - 2rem);
  overflow: auto;
}
.account_person_typ_1 .po-branch .po-sheet__box + .po-sheet__box {
  margin-top: 1rem;
}
.account_person_typ_1 .po-branch .ac-check {
  margin: 0.75rem 0 0;
}
.account_person_typ_1 .po-br__q {
  margin: 0.5rem 0;
}
.account_person_typ_1 .po-br__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.25rem 1rem;
  max-height: 14rem;
  overflow: auto;
  margin-top: 0.5rem;
}
.account_person_typ_1 .po-br__list .fb-check-txt {
  font-size: 0.875rem;
  color: var(--ink);
}
@media (max-width: 30rem) {
  .account_person_typ_1 .po-br__list {
    grid-template-columns: minmax(0, 1fr);
  }
}
.account_person_typ_1 .po-br__hours summary {
  cursor: pointer;
}
.account_person_typ_1 .po-br__hours .btn-link {
  display: inline-block;
  margin: 0.5rem 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_person_typ_1 .po-branch .po-confirm__act {
  margin-top: 1.5rem;
}
.account_person_typ_1 .po-branch .po-confirm__act .po-br__del {
  margin-right: auto;
  padding: 0;
  border: 0;
  background: none;
  color: var(--color-error);
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .ac-branch {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .account_person_typ_1 .ac-branch .ac-branch__n,
  .account_person_typ_1 .ac-branch .ac-branch__act {
    grid-column: 2;
  }
}
.account_person_typ_1 .po-mv__warn {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
  margin: 0.875rem 0 0;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #8A5A00;
}
.account_person_typ_1 .po-mv__warn .i {
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.account_person_typ_1 .po-cancel .ac-text {
  margin-bottom: 0.75rem;
}
.account_person_typ_1 .po-cancel .po-cancel__btn {
  color: var(--color-error);
  border-color: var(--line-color);
}
.account_person_typ_1 .po-cancel__list {
  margin: 0 0 1rem;
  padding-left: 1.125rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--warm);
}
.account_person_typ_1 .po-cancel__list li {
  margin-bottom: 0.375rem;
}
.account_person_typ_1 .po-cancel__list .is-warn {
  color: var(--color-error);
  font-weight: 700;
}
.account_person_typ_1 .po-cancel__ok {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin-top: 0.75rem;
  font-size: 0.875rem;
  cursor: pointer;
}
.account_person_typ_1 .po-cancel__ok input {
  width: 1.125rem;
  height: 1.125rem;
  margin-top: 0.125rem;
  accent-color: var(--first-color);
  flex-shrink: 0;
}
.account_person_typ_1 .po-sheet {
  position: relative;
  padding: 1.5rem;
  max-width: 30rem;
}
.account_person_typ_1 .po-sheet__grab {
  display: none;
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-login--dev {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .account_person_typ_1 .po-login--dev .po-login__act {
    grid-column: 2 / -1;
    justify-content: flex-start;
  }
}
.account_person_typ_1 .po-sheet__box {
  margin-top: 1rem;
  padding: 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.account_person_typ_1 .po-sheet__box .field:first-child {
  margin-top: 0;
}
.account_person_typ_1 .po-sheet .ac-review__act {
  display: flex;
  flex-direction: row-reverse;
  gap: 0.5rem;
  margin-top: 1rem;
}
.account_person_typ_1 .po-sheet .ac-review__act .btn {
  justify-content: center;
}
.account_person_typ_1 .po-sheet .ac-review__act .btn-first {
  flex: 2 1 0;
}
.account_person_typ_1 .po-sheet .ac-review__act .btn-second {
  flex: 1 1 0;
}
@media (max-width: 61.9375rem) {
  .account_person_typ_1 .po-sheet-bg {
    align-items: flex-end !important;
    padding: 0 !important;
    overscroll-behavior: contain;
    touch-action: none;
  }
  .account_person_typ_1 .po-sheet {
    width: 100%;
    max-width: none;
    height: auto !important;
    max-height: 88vh !important;
    overflow-y: auto;
    border-radius: 1.25rem 1.25rem 0 0 !important;
    padding: 1.75rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));
    box-shadow: 0 -12px 40px -12px rgba(29, 16, 41, 0.4) !important;
    transition: transform 0.2s ease;
    touch-action: pan-y;
  }
  .account_person_typ_1 .po-sheet__grab {
    display: block;
    position: absolute;
    top: 0.5rem;
    left: 50%;
    width: 2.75rem;
    height: 0.3125rem;
    margin-left: -1.375rem;
    border-radius: 1rem;
    background: var(--line-color);
  }
  .account_person_typ_1 .po-confirm__act .btn {
    flex: 1 1 0;
  }
}
.account_person_typ_1 .po-confirm-bg {
  z-index: 1400;
}
.account_person_typ_1 .ac-addon__ad {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 0.75rem;
  padding: 0.5rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.account_person_typ_1 .ac-addon__ad .ac-ad__img {
  flex: 0 0 auto;
  width: 4.5rem;
  height: 3.25rem;
}
.account_person_typ_1 .ac-addon__ad b {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 0.9375rem;
  line-height: 1.3;
  color: var(--first-color);
}
.account_person_typ_1 .ac-addon__ad small {
  display: block;
  margin-top: 0.125rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_person_typ_1 .po-ads > .po-ad.is-target {
  border-color: var(--accent-color);
  box-shadow: 0 0 0 3px var(--accent-color);
}
.account_person_typ_1 .po-confirm {
  max-width: 26rem;
  padding: 1.5rem;
}
.account_person_typ_1 .po-confirm__title {
  margin: 0 0 0.5rem;
  font-family: var(--first-font);
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--first-color);
}
.account_person_typ_1 .po-confirm__text {
  margin: 0 0 1.25rem;
  color: var(--warm);
}
.account_person_typ_1 .po-confirm__act {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.account_person_typ_1 .po-confirm__act .btn {
  min-width: 7rem;
  justify-content: center;
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-ad__act {
    position: relative;
  }
  .account_person_typ_1 .po-menu {
    left: 0;
    right: 0;
    width: auto;
    top: calc(100% + 0.375rem);
    z-index: 40;
  }
}
.account_person_typ_1 .po-bottom-out {
  display: none;
  margin-top: 2rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--line-color);
}
.account_person_typ_1 .po-bottom-out > .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  justify-content: center;
}
@media (max-width: 61.9375rem) {
  .account_person_typ_1 .po-bottom-out {
    display: block;
  }
}
.account_person_typ_1 .po-added {
  max-width: 34rem;
  padding: 2rem 1.5rem;
}
.account_person_typ_1 .po-added .la-final {
  padding: 0;
}
.account_person_typ_1 .po-added .la-share {
  margin-top: 1.25rem;
  text-align: center;
}
.account_person_typ_1 .po-added .la-share .filter-pills {
  justify-content: center;
}
.account_person_typ_1 .po-login__act {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}
.account_person_typ_1 .po-login__act > span {
  display: inline-flex;
  gap: 0.5rem;
}
.account_person_typ_1 .po-out {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  margin-top: 0.5rem;
  padding: 0.75rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  font-size: 0.875rem;
}
.account_person_typ_1 .po-out > span {
  width: 100%;
  font-weight: 600;
}
.account_person_typ_1 .po-out .btn-link {
  padding: 0;
  border: 0;
  background: none;
}
.account_person_typ_1 .po-pw .input-wrap {
  position: relative;
}
.account_person_typ_1 .po-saved {
  margin-bottom: 1rem;
}
.account_person_typ_1 .po-saved .btn {
  margin-left: auto;
}
.account_person_typ_1 .po-login small {
  display: block;
}
.account_person_typ_1 .po-bar {
  display: block;
  width: 100%;
  max-width: 8rem;
  height: 0.375rem;
  margin: 0.375rem 0 0.25rem;
  border-radius: var(--radius-badge);
  background: var(--line-color);
  overflow: hidden;
}
.account_person_typ_1 .po-bar > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--accent-color);
}
.account_person_typ_1 .po-bar.is-low > span {
  background: #D99A1E;
}
.account_person_typ_1 .ac-pop__a {
  display: block;
  padding: 0.5rem 0.625rem;
  border-radius: calc(var(--radius-sm) - 0.25rem);
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--warm);
  text-decoration: none;
}
.account_person_typ_1 .ac-pop__a:hover {
  background: var(--cream);
  color: var(--first-color);
}
.account_person_typ_1 .ac-pop .po-why {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  margin-bottom: 0.75rem;
}
.account_person_typ_1 .ac-pop .po-why button.filter-pill {
  display: inline-flex;
  width: auto;
  padding: 0 0.75rem;
  height: 2rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-badge);
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--warm);
}
.account_person_typ_1 .ac-pop .po-why button.filter-pill.is-active {
  border-color: var(--accent-color);
  background: var(--green-50);
  color: var(--first-color);
}
.account_person_typ_1 .ac-pop__ask p .la-opt {
  font-weight: 500;
}
.account_person_typ_1 .po-empty {
  padding: 1.25rem;
}
.account_person_typ_1 .po-empty .btn-link {
  padding: 0;
  margin-left: 0.25rem;
}
.account_person_typ_1 .po-sort {
  margin: 0;
}
.account_person_typ_1 .po-fav {
  grid-template-columns: auto minmax(0, 1fr) 12rem 11.5rem;
}
.account_person_typ_1 .po-fav.is-gone .ac-ad__img,
.account_person_typ_1 .po-fav.is-gone .po-fav__main {
  opacity: 0.55;
}
.account_person_typ_1 .po-fav.is-gone .po-fav__price b {
  color: var(--mute);
  font-size: 0.875rem;
}
.account_person_typ_1 .po-fav__main {
  min-width: 0;
}
.account_person_typ_1 .po-fav__price b {
  display: block;
  font-family: var(--first-font);
  font-weight: 800;
  color: var(--first-color);
}
.account_person_typ_1 .po-fav__price small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_person_typ_1 .po-fav__price .ac-chip {
  margin-top: 0.25rem;
  gap: 0.25rem;
}
.account_person_typ_1 .po-fav__price .ac-chip .i {
  width: 0.75rem;
  height: 0.75rem;
}
.account_person_typ_1 .po-fav__act {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-content: flex-end;
}
.account_person_typ_1 .po-fav__act .btn {
  white-space: nowrap;
}
.account_person_typ_1 .ac-chip.is-drop {
  background: var(--green-50);
  color: var(--accent-text);
}
.account_person_typ_1 .ac-chip.is-new {
  background: var(--accent-color);
  color: var(--first-color);
}
.account_person_typ_1 .po-heart {
  display: inline-flex;
  padding: 0.5rem;
  border: 0;
  border-radius: 50%;
  background: none;
  color: var(--color-error);
  cursor: pointer;
}
.account_person_typ_1 .po-heart .i {
  width: 1.25rem;
  height: 1.25rem;
}
.account_person_typ_1 .po-heart .i svg {
  fill: currentColor;
}
.account_person_typ_1 .po-heart:hover {
  background: #FDECEC;
}
.account_person_typ_1 .po-merge {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 0.875rem;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  border-radius: var(--radius-sm);
  background: var(--green-50);
  color: var(--ink);
  font-size: 0.875rem;
}
.account_person_typ_1 .po-merge > .i {
  color: var(--accent-text);
}
.account_person_typ_1 .po-merge > span:not(.i) {
  flex: 1 1 16rem;
}
.account_person_typ_1 .po-merge .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_person_typ_1 .po-merge.is-ask {
  background: var(--purple-50);
}
.account_person_typ_1 .po-merge.is-ask > .i {
  color: var(--first-color);
}
.account_person_typ_1 .po-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 1rem;
  padding: 1rem 1.25rem;
}
.account_person_typ_1 .po-search + .po-search {
  border-top: 1px solid var(--line-color);
}
.account_person_typ_1 .po-search__main {
  min-width: 0;
}
.account_person_typ_1 .po-search__name {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.375rem 0.625rem;
}
.account_person_typ_1 .po-search__name b {
  color: var(--ink);
  font-size: 1rem;
}
.account_person_typ_1 .po-search__name .ac-chip {
  height: 1.375rem;
  font-size: 0.6875rem;
}
.account_person_typ_1 .po-search__ren {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 0.75rem;
}
.account_person_typ_1 .po-search__ren .input-wrap {
  flex: 1 1 14rem;
  max-width: 22rem;
}
.account_person_typ_1 .po-search__ren .btn-link {
  padding: 0;
  border: 0;
  background: none;
}
.account_person_typ_1 .po-search__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  margin: 0.5rem 0 0.625rem;
}
.account_person_typ_1 .po-search__chips .filter-pill {
  height: 1.75rem;
  font-size: 0.75rem;
}
.account_person_typ_1 .po-search__freq {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.375rem 0.75rem;
}
.account_person_typ_1 .po-search__freq > span {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
}
.account_person_typ_1 .po-search__freq > span .i {
  width: 0.875rem;
  height: 0.875rem;
}
.account_person_typ_1 .po-search__freq .filter-pills {
  margin: 0;
  gap: 0.25rem;
}
.account_person_typ_1 .po-search__freq .filter-pill {
  height: 2rem;
  font-size: 0.8125rem;
}
.account_person_typ_1 .po-search__act {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.account_person_typ_1 .po-search__act .btn {
  white-space: nowrap;
}
.account_person_typ_1 .po-login {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.875rem;
  padding: 0.625rem 0;
}
.account_person_typ_1 .po-login + .po-login {
  border-top: 1px solid var(--line-color);
}
.account_person_typ_1 .po-login b {
  display: block;
  color: var(--ink);
}
.account_person_typ_1 .po-login small {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
}
.account_person_typ_1 .po-login .btn-link {
  padding: 0;
  border: 0;
  background: none;
  font-size: 0.875rem;
}
.account_person_typ_1 .po-login__ic {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--cream);
  color: var(--first-color);
}
.account_person_typ_1 .po-pw {
  margin-top: 0.5rem;
  padding: 1rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.account_person_typ_1 .po-pw .field:first-child {
  margin-top: 0;
}
.account_person_typ_1 .po-danger .ac-h2 {
  color: var(--color-error);
}
.account_person_typ_1 .po-danger .ac-reply__ask {
  border-top: 0;
  padding-top: 0;
}
.account_person_typ_1 .po-danger__btn {
  border-color: var(--color-error);
  color: var(--color-error);
}
.account_person_typ_1 .po-danger__btn:hover {
  background: #FDECEC;
  color: var(--color-error);
}
.account_person_typ_1 .ac-card > .btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.account_person_typ_1 .ac-toast .btn-link {
  padding: 0 0 0 0.25rem;
  border: 0;
  background: none;
  color: var(--accent-color);
  font-size: 0.875rem;
}
@container (max-width: 50rem) {
  .account_person_typ_1 .po-ad {
    grid-template-columns: auto auto minmax(0, 1fr) 10.5rem 11.5rem;
  }
  .account_person_typ_1 .po-ad.is-bez-stat {
    grid-template-columns: auto auto minmax(0, 1fr) 11rem auto;
  }
  .account_person_typ_1 .po-ad.is-bez-stat.has-order {
    grid-template-columns: auto auto auto minmax(0, 1fr) 11rem auto;
  }
  .account_person_typ_1 .po-ad__stats {
    grid-column: 3 / 5;
    grid-row: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1rem;
  }
}
@container (max-width: 36rem) {
  .account_person_typ_1 {
    /* mobil: políčko výberu v rohu fotky (karta nemá stĺpec navyše) */
    /* mobil (Jozef 8. 11.): fotka cez celú šírku, pod ňou text, stav a vedľa neho [úchyt | ˄ | ˅], dole tlačidlá */
    /* kompaktný zoznam: fotka vľavo, text vpravo, pod tým CTA a Viac, dole úchyt so šípkami */
    /* hlavná akcia (Predĺžiť, Znova zverejniť) ostáva viditeľná - riadok pod stavom */
  }
  .account_person_typ_1 .po-ad,
  .account_person_typ_1 .po-ad.is-bez-stat,
  .account_person_typ_1 .po-fav {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.5rem 0.75rem;
    padding: 0.875rem 1rem;
  }
  .account_person_typ_1 .po-ad {
    position: relative;
  }
  .account_person_typ_1 .po-ad__pick {
    position: absolute;
    top: 1.375rem;
    left: 1.375rem;
    z-index: 2;
    padding: 0.125rem;
    border-radius: 0.375rem;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 1px 3px rgba(29, 16, 41, 0.18);
  }
  .account_person_typ_1 .po-ad.is-bez-stat,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "img img" "main main" "state order" "act act";
    gap: 0.625rem 0.75rem;
    padding: 1rem;
    padding-left: 1rem;
  }
  .account_person_typ_1 .po-ad.is-bez-stat .ac-ad__img,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .ac-ad__img {
    grid-area: img;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border-radius: var(--radius-sm);
  }
  .account_person_typ_1 .po-ad.is-bez-stat .ac-ad__img img,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .ac-ad__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .account_person_typ_1 .po-ad.is-bez-stat .po-ad__main,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .po-ad__main {
    grid-area: main;
  }
  .account_person_typ_1 .po-ad.is-bez-stat .po-ad__state,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .po-ad__state {
    grid-area: state;
  }
  .account_person_typ_1 .po-ad.is-bez-stat .po-ad__act,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .po-ad__act {
    grid-area: act;
    flex-wrap: wrap;
    gap: 0.375rem;
    justify-content: flex-start;
    min-width: 0;
  }
  .account_person_typ_1 .po-ad.is-bez-stat > .po-ad__pick,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order > .po-ad__pick {
    grid-area: auto;
  }
  .account_person_typ_1 .po-ad.is-bez-stat > .po-order,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order > .po-order {
    grid-area: order;
    align-self: center;
    margin: 0;
    border: 1px solid var(--line-color);
    background: var(--white-color);
    flex-direction: row;
    overflow: hidden;
  }
  .account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order > .po-order .po-order__btn,
  .account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__btn + .po-order__btn,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order > .po-order .po-order__btn + .po-order__btn {
    order: 0;
    height: 2.5rem;
    border-left: 1px solid var(--line-color);
    color: var(--warm);
    visibility: visible;
  }
  .account_person_typ_1 .po-ad.is-bez-stat > .po-order .po-order__handle,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order > .po-order .po-order__handle {
    width: 2.75rem;
    height: 2.5rem;
    border-radius: 0;
    color: var(--first-color);
    background: var(--purple-50);
  }
  .account_person_typ_1 .po-ad.is-bez-stat .po-order__btn,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .po-order__btn,
  .account_person_typ_1 .po-ad.is-bez-stat .po-order__handle,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .po-order__handle {
    width: 2.5rem;
    height: 2.5rem;
  }
  .account_person_typ_1 .po-ad.is-bez-stat .po-order__handle,
  .account_person_typ_1 .po-ad.is-bez-stat.has-order .po-order__handle {
    width: 2.75rem;
  }
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat,
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat.has-order {
    grid-template-columns: 6.5rem minmax(0, 1fr);
    grid-template-areas: "img main" "img state" "act act" "order order";
    /* CTA a Viac v jednom riadku 50/50, úchyt a šípky 33/33/33 (Jozef 8. 11.) */
  }
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat .ac-ad__img,
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat.has-order .ac-ad__img {
    aspect-ratio: 4 / 3;
    align-self: start;
  }
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat .po-ad__act,
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat.has-order .po-ad__act {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
  }
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat .po-ad__act .btn,
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat.has-order .po-ad__act .btn {
    flex: 1 1 0;
    min-width: 0;
    justify-content: center;
  }
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat .po-ad__act .ac-pop,
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat.has-order .po-ad__act .ac-pop {
    left: auto;
    right: 0;
  }
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat > .po-order,
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat.has-order > .po-order {
    width: 100%;
  }
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat > .po-order > *,
  .account_person_typ_1 .po-ads.is-compact .po-ad.is-bez-stat.has-order > .po-order > * {
    flex: 1 1 0;
    width: auto !important;
  }
  .account_person_typ_1 .po-ad__state,
  .account_person_typ_1 .po-ad__stats,
  .account_person_typ_1 .po-fav__price {
    grid-column: 2 / -1;
    grid-row: auto;
  }
  .account_person_typ_1 .po-ad__act {
    grid-column: 2 / -1;
    justify-content: flex-start;
  }
  .account_person_typ_1 .po-ad__act .ac-dots {
    margin-left: auto;
  }
  .account_person_typ_1 .po-fav__act {
    grid-column: 3;
    grid-row: 1;
    align-self: start;
  }
  .account_person_typ_1 .po-fav__act .btn {
    display: none;
  }
  .account_person_typ_1 .ac-ad__img {
    width: 4rem;
    height: 3rem;
  }
  .account_person_typ_1 .po-ad__sub {
    white-space: normal;
  }
  .account_person_typ_1 .po-ad__stats {
    gap: 0.25rem 0.875rem;
  }
  .account_person_typ_1 .po-search {
    grid-template-columns: minmax(0, 1fr);
    padding: 0.875rem 1rem;
  }
  .account_person_typ_1 .po-search__act {
    justify-content: space-between;
  }
}
@media (max-width: 47.9375rem) {
  .account_person_typ_1 .po-limit {
    padding: 0.875rem 1rem;
  }
  .account_person_typ_1 .po-sort {
    width: 100%;
  }
}
/* otvorený panel / okno: stránka za ním stojí (pri sťahovaní panela sa nehýbala celá stránka - Jozef 8. 11.) */
html:has(.account_person_typ_1 .po-sheet-bg:not([style*="display: none"]):not([style*="display:none"])) {
  overflow: hidden;
}
/* ťahanie poradia: od stlačenia úchytu po pustenie sa neoznačuje text (Jozef 8. 11.) - trieda z bydo-ucet-osoba.js */
html.is-sorting,
html.is-sorting * {
  user-select: none !important;
  -webkit-user-select: none !important;
}
/* ===== karta Služby (_account_sluzby.php) - mobil najprv, širšie stĺpce v @container (pasca 7. 11. v dizajn.md) ===== */
.account_person_typ_1 {
  /* štítok úspory vnútri karty vedľa dĺžky - nad hranou prekrýval kartu nad ňou (Jozef 13. 11.) */
  /* okno doplnku širšie (Jozef 9. 11.: „veľmi úzke") a spôsoby platby vedľa seba */
  /* nedostupná voľba (kredit nestačí, karta pripravujeme) na koniec a na celú šírku - nezaberá miesto dostupným (Jozef 13. 11.) */
  /* Realitka Pro - široká karta so zoznamom */
  /* výber inzerátov pre TOP / zvýraznenie */
}
.account_person_typ_1 .ac-head--row > .sv-credit {
  flex: none;
}
.account_person_typ_1 .sv-credit {
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem 0.75rem;
  padding: 0.5rem 0.5rem 0.5rem 0.875rem;
  border: 1px solid var(--line-color);
  border-radius: 999px;
  background: var(--white-color);
  color: var(--warm);
  font-size: 0.9375rem;
  white-space: nowrap;
}
.account_person_typ_1 .sv-credit b {
  color: var(--first-color);
}
.account_person_typ_1 .sv-credit .i {
  color: var(--accent-text);
}
.account_person_typ_1 .sv-h {
  font-family: var(--first-font);
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 2rem 0 1rem;
}
.account_person_typ_1 .ac-alert + .sv-h {
  margin-top: 0.5rem;
}
.account_person_typ_1 .sv-h + .ac-text {
  margin-top: -0.5rem;
}
.account_person_typ_1 .sv {
  container-type: inline-size;
}
.account_person_typ_1 .sv-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}
.account_person_typ_1 .sv-card {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 1.25rem;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
}
.account_person_typ_1 .sv-card__ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
  color: var(--first-color);
}
.account_person_typ_1 .sv-card__ic svg {
  width: 1.5rem;
  height: 1.5rem;
}
.account_person_typ_1 .sv-card.is-top .sv-card__ic {
  background: var(--accent-color);
}
.account_person_typ_1 .sv-card.is-highlight .sv-card__ic {
  background: var(--green-50);
  color: var(--accent-text);
}
.account_person_typ_1 .sv-card__t {
  font-family: var(--first-font);
  font-size: 1.0625rem;
  font-weight: 800;
  color: var(--first-color);
  margin: 0;
}
.account_person_typ_1 .sv-card__p {
  margin: 0;
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_person_typ_1 .sv-card__price {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--mute);
}
.account_person_typ_1 .sv-opts {
  display: grid;
  gap: 0.5rem;
  margin-top: 0.25rem;
}
.account_person_typ_1 .sv-opt {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: 0.75rem 1rem;
  text-align: left;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  cursor: pointer;
  font: inherit;
  color: inherit;
  transition: border-color 0.15s, background 0.15s;
}
.account_person_typ_1 .sv-opt:hover {
  border-color: var(--first-color);
}
.account_person_typ_1 .sv-opt.is-on {
  border: 2px solid var(--first-color);
  padding: calc(0.75rem - 1px) calc(1rem - 1px);
  background: var(--cream);
}
.account_person_typ_1 .sv-opt:focus-visible {
  outline: 2px solid var(--first-color);
  outline-offset: 2px;
}
.account_person_typ_1 .sv-opt__dot {
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%;
  border: 2px solid var(--line-color);
  background: var(--white-color);
}
.account_person_typ_1 .sv-opt.is-on .sv-opt__dot {
  border-color: var(--first-color);
  box-shadow: inset 0 0 0 3px var(--white-color);
  background: var(--first-color);
}
.account_person_typ_1 .sv-opt__txt {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.account_person_typ_1 .sv-opt__txt b {
  font-size: 1rem;
  color: var(--first-color);
}
.account_person_typ_1 .sv-opt__txt small {
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_person_typ_1 .sv-opt__sum {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  line-height: 1.1;
}
.account_person_typ_1 .sv-opt__sum b {
  font-family: var(--first-font);
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--first-color);
  white-space: nowrap;
}
.account_person_typ_1 .sv-opt__sum small {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  color: var(--mute);
}
.account_person_typ_1 .sv-opt__head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25rem 0.5rem;
}
.account_person_typ_1 .sv-opt__save {
  padding: 0.125rem 0.5rem;
  border-radius: 999px;
  line-height: 1.4;
  background: var(--green-700);
  color: var(--white-color);
  font-size: 0.6875rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  white-space: nowrap;
}
.account_person_typ_1 .sv-opt + .sv-opt {
  margin-top: 0.375rem;
}
.account_person_typ_1 .sv-from {
  margin: 0.25rem 0 0;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.25rem 0.375rem;
  font-size: 0.875rem;
  color: var(--mute);
}
.account_person_typ_1 .sv-from b {
  font-family: var(--first-font);
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--first-color);
}
.account_person_typ_1 .sv-from__save {
  flex-basis: 100%;
  font-style: normal;
  font-weight: 700;
  color: var(--green-700);
}
.account_person_typ_1 .ac-addon .sv-opts {
  margin-top: 0.5rem;
}
.account_person_typ_1 .po-confirm.ac-addon {
  max-width: 34rem;
}
.account_person_typ_1 .ac-addon .la-pay__methods {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
}
.account_person_typ_1 .ac-addon .la-pay__method {
  margin: 0;
}
.account_person_typ_1 .ac-addon .la-pay__method:disabled {
  order: 9;
  grid-column: 1 / -1;
}
@media (max-width: 30rem) {
  .account_person_typ_1 .ac-addon .la-pay__methods {
    grid-template-columns: minmax(0, 1fr);
  }
}
.account_person_typ_1 .sv-run {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin: 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--accent-text);
}
.account_person_typ_1 .sv-card__act {
  margin-top: auto;
  padding-top: 0.5rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 0.75rem;
}
.account_person_typ_1 .sv-card__why {
  font-size: 0.8125rem;
  color: var(--mute);
}
.account_person_typ_1 .sv-done {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--accent-text);
}
.account_person_typ_1 .sv-card.is-soon .sv-card__ic {
  background: var(--purple-50);
}
@container (min-width: 34rem) {
  .account_person_typ_1 .sv-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@container (min-width: 52rem) {
  .account_person_typ_1 .sv-grid--soon {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.account_person_typ_1 .sv-pro {
  padding: 1.5rem;
  background: var(--white-color);
  border: 2px solid var(--first-color);
  border-radius: var(--radius-md);
}
.account_person_typ_1 .sv-pro__head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.75rem 1rem;
  align-items: start;
}
.account_person_typ_1 .sv-pro__price {
  grid-column: 1 / -1;
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
  color: var(--mute);
  font-size: 0.875rem;
}
.account_person_typ_1 .sv-pro__price b {
  font-family: var(--first-font);
  font-size: 2rem;
  font-weight: 800;
  color: var(--first-color);
}
.account_person_typ_1 .sv-pro__list {
  list-style: none;
  margin: 1.25rem 0 0.5rem;
  padding: 0;
  display: grid;
  gap: 0.5rem 1.5rem;
}
.account_person_typ_1 .sv-pro__list li {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
  font-size: 0.9375rem;
  color: var(--warm);
}
.account_person_typ_1 .sv-pro__list .i {
  flex-shrink: 0;
  margin-top: 0.125rem;
  color: var(--green-700);
}
@container (min-width: 40rem) {
  .account_person_typ_1 .sv-pro__head {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }
  .account_person_typ_1 .sv-pro__price {
    grid-column: auto;
  }
  .account_person_typ_1 .sv-pro__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.account_person_typ_1 .sv-pick__bar {
  padding: 0.25rem 0 0.75rem;
  border-bottom: 1px solid var(--line-color);
}
.account_person_typ_1 .sv-pick__list {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0;
  max-height: min(55vh, 28rem);
  overflow-y: auto;
}
.account_person_typ_1 .sv-pick__ad {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem;
  border-radius: var(--radius-sm);
  cursor: pointer;
}
.account_person_typ_1 .sv-pick__ad input {
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
  accent-color: var(--first-color);
}
.account_person_typ_1 .sv-pick__ad .ac-ad__img {
  flex-shrink: 0;
  width: 3.5rem;
  height: 2.625rem;
}
.account_person_typ_1 .sv-pick__ad.is-on {
  background: var(--cream);
}
.account_person_typ_1 .sv-pick__txt {
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.account_person_typ_1 .sv-pick__txt b {
  font-size: 0.9375rem;
  color: var(--first-color);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.account_person_typ_1 .sv-pick__txt small {
  font-size: 0.8125rem;
  color: var(--mute);
}
/* ---------------------------------------------------------------------------
   blog_typ_1 - bydo vrstva nad blogom 1b (_blog, _blog_featured, _blog_cards).
   Rozloženie a karta sú z 1b bez zmeny; tu len to, čo bydo potrebuje inak:
   - obrázok 6:5 - staré titulné obrázky bydo majú text v obrázku, 16:10 / 3:2 by ho orezali,
   - štítky nad nadpisom (.bt-chips, zdieľa článok), autor v riadku s dátumom,
   - výber štítku nad zoznamom (.bt-tags, pilulky .filter-pill), drobčeky (.cl-crumbs z článku 1b).
   --------------------------------------------------------------------------- */
.blog_typ_1 {
  background: transparent;
  /* hlavný článok: obrázok a text vedľa seba až od tabletu; obrázok 6:5 je vyšší než 16:10 v 1b,
     preto užší stĺpec obrázka, nech karta nie je vysoká ako obrazovka */
}
.blog_typ_1 .cl-crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.blog_typ_1 .cl-crumbs a {
  color: var(--warm);
  text-decoration: none;
}
.blog_typ_1 .cl-crumbs a:hover {
  color: var(--first-color);
  text-decoration: underline;
}
.blog_typ_1 .bl-head h1 {
  margin: 0 0 0.6rem;
  font-family: var(--first-font);
  font-weight: 800;
  font-size: clamp(1.9rem, calc(1.4rem + 1.6vw), 2.75rem);
  line-height: 1.12;
  color: var(--first-color);
}
.blog_typ_1 .bt-tags {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  position: relative;
  margin: -1rem 0 clamp(1.75rem, 3.5vw, 2.5rem);
  padding-bottom: 0.25rem;
  scrollbar-width: none;
}
.blog_typ_1 .bt-tags::-webkit-scrollbar {
  display: none;
}
.blog_typ_1 .bt-tags .filter-pill {
  flex: 0 0 auto;
}
.blog_typ_1 .bl-card {
  background: var(--white-color);
  border-radius: var(--radius-md);
  border: 1px solid var(--line-color);
}
.blog_typ_1 .bl-media {
  aspect-ratio: 6 / 5;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
  background: var(--cream-2);
}
.blog_typ_1 .bl-body {
  padding: 1rem 1.125rem 1.25rem;
}
.blog_typ_1 .bl-title {
  margin-top: 0.625rem;
}
.blog_typ_1 .bl-meta {
  margin-top: auto;
  padding-top: 0.875rem;
}
.blog_typ_1 .bl-perex + .bl-meta {
  padding-top: 0.875rem;
}
.blog_typ_1 .bl-featured .bl-card {
  gap: 0;
}
.blog_typ_1 .bl-featured .bl-media {
  aspect-ratio: 6 / 5;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
}
.blog_typ_1 .bl-featured .bl-body {
  padding: 1.25rem 1.25rem 1.5rem;
}
@media (min-width: 62rem) {
  .blog_typ_1 .bl-featured .bl-card {
    grid-template-columns: 5fr 6fr;
    align-items: stretch;
    gap: 0;
  }
  .blog_typ_1 .bl-featured .bl-media {
    border-radius: var(--radius-md) 0 0 var(--radius-md);
  }
  .blog_typ_1 .bl-featured .bl-body {
    padding: clamp(1.5rem, 3vw, 2.75rem);
    justify-content: center;
  }
  .blog_typ_1 .bl-featured .bl-meta {
    margin-top: 1.25rem;
  }
}
.blog_typ_1 .bt-item {
  display: flex;
}
.blog_typ_1 .bt-item > .bl-card {
  width: 100%;
}
/* štítky nad nadpisom - karta blogu aj hlavička článku */
.blog_typ_1 .bt-chips,
.article_typ_1 .bt-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.blog_typ_1 .bt-chips span,
.article_typ_1 .bt-chips span,
.blog_typ_1 .bt-chips a,
.article_typ_1 .bt-chips a {
  display: inline-flex;
  align-items: center;
  height: 1.5rem;
  padding: 0 0.5rem;
  border-radius: var(--radius-badge);
  background: var(--purple-50);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--first-color);
  text-decoration: none;
}
.blog_typ_1 .bt-chips a:hover,
.article_typ_1 .bt-chips a:hover {
  background: var(--purple-100);
}
/* ---------------------------------------------------------------------------
   article_typ_1 - bydo vrstva nad článkom 1b (_article.less, Pages/article.php).
   Z 1b ostáva: drobčeky, nadpis, perex, telo v čitateľnej šírke (.cl-body .textfield-telo).
   Bydo (Jozef 7. 11.):
   - hlavička (štítky .bt-chips z _blog_typ_1, nadpis, perex, autor, zdieľanie) a POD ňou celý obrázok (.at-cover) -
     nereže sa (1b .cl-cover reže na 21:9, staré obrázky bydo majú text v obrázku),
   - bez obsahu článku,
   - bočný stĺpec VĽAVO (.at-side): ďalšie články a najnovšie inzeráty; na mobile pod článkom,
   - výzva na pridanie inzerátu (.at-cta) pod textom.
   Bez farebných okrajov zboku. Najprv mobil (široké rozloženie v min-width) - pasca 7. 11. v docs/bydo/dizajn.md.
   --------------------------------------------------------------------------- */
body .main.article_typ_1 {
  padding: clamp(1.25rem, 3vw, 2.5rem) 0 var(--section-y-half);
  /* ---- hlavička ---- */
  /* ---- telo ---- */
  /* ---- bočný stĺpec: biele karty ako menu účtu ---- */
  /* široká obrazovka: stĺpec vľavo, článok vpravo; stĺpec ide so stránkou */
}
body .main.article_typ_1 .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
body .main.article_typ_1 .i svg {
  width: 100%;
  height: 100%;
}
body .main.article_typ_1 .at-layout {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
body .main.article_typ_1 .at-main {
  min-width: 0;
  max-width: 46rem;
}
body .main.article_typ_1 .cl-head {
  padding: 0 0 1.5rem;
}
body .main.article_typ_1 .bt-chips {
  margin-top: 1.25rem;
}
body .main.article_typ_1 .cl-title {
  margin-top: 0.625rem;
  font-weight: 800;
  font-size: clamp(2rem, calc(1.3rem + 2.2vw), 3rem);
  max-width: none;
}
body .main.article_typ_1 .cl-perex {
  color: var(--warm);
}
body .main.article_typ_1 .at-byline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1rem;
  margin-top: 1.5rem;
  font-size: 0.875rem;
  color: var(--mute);
}
body .main.article_typ_1 .at-byline__text {
  display: flex;
  flex-direction: column;
  margin-right: auto;
}
body .main.article_typ_1 .at-byline__text strong {
  color: var(--ink);
  font-weight: 700;
}
body .main.article_typ_1 .at-avatar {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  background: var(--purple-50);
  color: var(--first-color);
  font-weight: 800;
  font-size: 0.875rem;
}
body .main.article_typ_1 .at-share {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
body .main.article_typ_1 .at-share__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  height: 2.25rem;
  padding: 0 0.75rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  background: var(--white-color);
  font: inherit;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--warm);
  text-decoration: none;
  cursor: pointer;
}
body .main.article_typ_1 .at-share__btn:hover {
  border-color: var(--first-color);
  color: var(--first-color);
}
body .main.article_typ_1 .at-share__btn.is-icon {
  width: 2.25rem;
  padding: 0;
  justify-content: center;
}
body .main.article_typ_1 .at-cover {
  margin: 0 0 2rem;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: var(--cream-2);
}
body .main.article_typ_1 .at-cover img {
  display: block;
  width: 100%;
  height: auto;
}
body .main.article_typ_1 .cl-body {
  padding-bottom: 0;
}
body .main.article_typ_1 .textfield-telo h2 {
  font-family: var(--first-font);
  font-weight: 800;
  color: var(--first-color);
  font-size: clamp(1.375rem, calc(1.15rem + 0.7vw), 1.75rem);
  line-height: 1.25;
}
body .main.article_typ_1 .textfield-telo ul {
  padding-left: 1.25rem;
  margin: 0 0 1.25rem;
}
body .main.article_typ_1 .textfield-telo ul li {
  margin-bottom: 0.4rem;
}
body .main.article_typ_1 .textfield-telo ul li::marker {
  color: var(--accent-text);
}
body .main.article_typ_1 .textfield-telo strong {
  color: var(--ink);
}
body .main.article_typ_1 .at-cta {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 2.5rem;
  padding: 1.5rem;
  border-radius: var(--radius-md);
  background: var(--purple-50);
}
body .main.article_typ_1 .at-cta h2 {
  margin: 0 0 0.375rem;
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.25rem;
  color: var(--first-color);
}
body .main.article_typ_1 .at-cta p {
  margin: 0;
  color: var(--warm);
}
body .main.article_typ_1 .at-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1.25rem;
}
@media (min-width: 48rem) {
  body .main.article_typ_1 .at-cta {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  body .main.article_typ_1 .at-cta .at-cta__actions {
    flex: 0 0 auto;
  }
}
body .main.article_typ_1 .at-side {
  display: grid;
  gap: 1.25rem;
  align-content: start;
}
body .main.article_typ_1 .at-box {
  padding: 1.125rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  background: var(--white-color);
}
body .main.article_typ_1 .at-box__h {
  margin: 0 0 0.75rem;
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.125rem;
  color: var(--first-color);
}
body .main.article_typ_1 .at-box > .btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-top: 0.75rem;
  font-size: 0.875rem;
}
body .main.article_typ_1 .at-list {
  display: grid;
  gap: 0.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
body .main.article_typ_1 .at-item {
  display: grid;
  grid-template-columns: 5.5rem minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
  padding: 0.375rem;
  margin: 0 -0.375rem;
  border-radius: var(--radius-sm);
  color: inherit;
  text-decoration: none;
}
body .main.article_typ_1 .at-item:hover {
  background: var(--cream);
}
body .main.article_typ_1 .at-item:hover strong {
  color: var(--first-color);
}
body .main.article_typ_1 .at-item__img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: var(--radius-sm);
  background: var(--cream-2);
}
body .main.article_typ_1 .at-item__img.is-post {
  aspect-ratio: 6 / 5;
}
body .main.article_typ_1 .at-item__body {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
  font-size: 0.8125rem;
  color: var(--mute);
}
body .main.article_typ_1 .at-item__body strong {
  color: var(--ink);
  font-size: 0.875rem;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body .main.article_typ_1 .at-item__body > span {
  color: var(--warm);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body .main.article_typ_1 .at-item__body small {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
body .main.article_typ_1 .at-item__body small .i {
  width: 0.875rem;
  height: 0.875rem;
}
body .main.article_typ_1 .at-item__price {
  color: var(--first-color) !important;
  font-family: var(--first-font);
  font-size: 1rem !important;
}
body .main.article_typ_1 .at-item__price small {
  font-family: var(--second-font);
  font-weight: 500;
  color: var(--mute);
}
@media (min-width: 48rem) and (max-width: 74.9375rem) {
  body .main.article_typ_1 .at-side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 75rem) {
  body .main.article_typ_1 .at-layout {
    display: grid;
    grid-template-columns: 18rem minmax(0, 46rem);
    gap: clamp(2.5rem, 4vw, 4rem);
    justify-content: center;
  }
  body .main.article_typ_1 .at-side {
    order: -1;
    position: sticky;
    top: 1rem;
    align-self: start;
  }
}
/* ---------------------------------------------------------------------------
   text_page_typ_1 - informačné a právne stránky bydo (O bydo.sk, Koľko stojí inzercia, Časté otázky,
   Obchodné podmienky, GDPR, Cookies, Kontakt). Nad šablónou page.php z 1b.
   - spoločné bočné menu informácií (.tp-nav) - na mobile vodorovný pruh s posunom,
   - obsah s kotvami (.tp-toc) pre dlhú stránku,
   - číslované odseky (.tp-par: číslo v samostatnom stĺpci, text zarovnaný),
   - časté otázky = widget faq z 1b vo vnútri, bez vlastného pozadia sekcie.
   Najprv mobil, široké rozloženie v min-width.
   --------------------------------------------------------------------------- */
.text_page_typ_1 {
  padding: 1.25rem 0 3rem;
  /* bočné menu = vzhľad menu účtu (.ac-side): biela karta, aktívna položka podfarbená, žiadny okraj zboku.
     Mobil: jeden posuvný pás (skupiny sa zlejú, nadpisy skupín skryté); position: relative - pasca so .sr-only v pruhu */
  /* textové pole z 1b (text.php) bez vlastných odsadení - rozostupy robí karta */
  /* časté otázky z 1b vo vnútri karty - bez pozadia a okrajov sekcie */
}
.text_page_typ_1 .i {
  display: inline-flex;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}
.text_page_typ_1 .i svg {
  width: 100%;
  height: 100%;
}
.text_page_typ_1 .cl-crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1rem;
  font-size: 0.8125rem;
  color: var(--mute);
}
.text_page_typ_1 .cl-crumbs a {
  color: var(--warm);
  text-decoration: none;
}
.text_page_typ_1 .cl-crumbs a:hover {
  color: var(--first-color);
  text-decoration: underline;
}
.text_page_typ_1 .tp-layout {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.text_page_typ_1 .tp-nav {
  position: relative;
  min-width: 0;
  display: flex;
  gap: 0.25rem;
  padding: 0.5rem;
  overflow-x: auto;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-md);
  scrollbar-width: none;
}
.text_page_typ_1 .tp-nav::-webkit-scrollbar {
  display: none;
}
.text_page_typ_1 .tp-nav__h {
  display: none;
}
.text_page_typ_1 .tp-nav ul {
  display: contents;
  list-style: none;
}
.text_page_typ_1 .tp-nav li {
  flex: 0 0 auto;
}
.text_page_typ_1 .tp-nav a {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.5rem 0.75rem;
  border-radius: var(--radius-sm);
  white-space: nowrap;
  font-family: var(--second-font);
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--warm);
  text-decoration: none;
}
.text_page_typ_1 .tp-nav a .i {
  color: var(--accent-color);
}
.text_page_typ_1 .tp-nav a:hover {
  background: var(--cream);
  color: var(--first-color);
}
.text_page_typ_1 .tp-nav a.is-active {
  background: var(--purple-50);
  color: var(--first-color);
}
.text_page_typ_1 .tp-nav a.is-active .i {
  color: var(--first-color);
}
.text_page_typ_1 .tp-main {
  min-width: 0;
  padding: clamp(1.25rem, 4vw, 2.75rem);
  border-radius: var(--radius-md);
  background: var(--white-color);
  border: 1px solid var(--line-color);
}
.text_page_typ_1 .tp-title {
  margin: 0;
  font-family: var(--first-font);
  font-weight: 800;
  font-size: clamp(1.9rem, calc(1.4rem + 1.6vw), 2.75rem);
  line-height: 1.12;
  color: var(--first-color);
}
.text_page_typ_1 .tp-meta {
  margin: 0.625rem 0 0;
  font-size: 0.875rem;
  color: var(--mute);
}
.text_page_typ_1 .tp-lead {
  margin: 1.25rem 0 0;
  max-width: 44rem;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--warm);
}
.text_page_typ_1 .tp-lead a {
  color: var(--first-color);
  font-weight: 700;
}
.text_page_typ_1 .tp-toc {
  margin: 1.5rem 0 0;
  padding: 1.125rem 1.25rem;
  max-width: 44rem;
  border-radius: var(--radius-sm);
  background: var(--cream);
}
.text_page_typ_1 .tp-toc__h {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--mute);
}
.text_page_typ_1 .tp-toc ol {
  margin: 0;
  padding-left: 1.5rem;
  columns: 1;
  column-gap: 2rem;
  font-size: 0.9375rem;
  line-height: 1.4;
}
.text_page_typ_1 .tp-toc li {
  break-inside: avoid;
  margin-bottom: 0.375rem;
}
.text_page_typ_1 .tp-toc li::marker {
  color: var(--mute);
}
.text_page_typ_1 .tp-toc a {
  color: var(--first-color);
  text-decoration: none;
}
.text_page_typ_1 .tp-toc a:hover {
  text-decoration: underline;
}
@media (min-width: 48rem) {
  .text_page_typ_1 .tp-toc ol {
    columns: 2;
  }
}
.text_page_typ_1 .text_default {
  margin: 0;
  padding: 0;
}
.text_page_typ_1 .textfield-telo {
  max-width: 44rem;
  margin-top: 1rem;
  font-size: 1rem;
  line-height: 1.7;
  color: var(--warm);
  /* len zoznamy a odkazy textu - „Obsah" (.tp-toc) má vlastné */
  /* tabuľka (zoznam cookies, doby uchovávania) - na mobile sa posúva vo vlastnom ráme, stránka nie */
}
.text_page_typ_1 .textfield-telo h2 {
  scroll-margin-top: 6rem;
  margin: 2.25rem 0 0.875rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--line-color);
  font-family: var(--first-font);
  font-weight: 800;
  font-size: 1.25rem;
  line-height: 1.3;
  color: var(--first-color);
}
.text_page_typ_1 .textfield-telo h3 {
  margin: 1.5rem 0 0.5rem;
  font-family: var(--first-font);
  font-weight: 700;
  font-size: 1.0625rem;
  line-height: 1.35;
  color: var(--first-color);
}
.text_page_typ_1 .textfield-telo p {
  margin: 0 0 0.875rem;
}
.text_page_typ_1 .textfield-telo > ul,
.text_page_typ_1 .textfield-telo > ol {
  margin: 0 0 1rem;
  padding-left: 1.25rem;
}
.text_page_typ_1 .textfield-telo > ul li,
.text_page_typ_1 .textfield-telo > ol li {
  margin-bottom: 0.375rem;
}
.text_page_typ_1 .textfield-telo > ul ul,
.text_page_typ_1 .textfield-telo > ol ul {
  margin: 0.375rem 0 0;
}
.text_page_typ_1 .textfield-telo p a,
.text_page_typ_1 .textfield-telo td a,
.text_page_typ_1 .textfield-telo > ul a,
.text_page_typ_1 .textfield-telo > ol a {
  color: var(--first-color);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.text_page_typ_1 .textfield-telo strong {
  font-weight: 700;
  color: var(--first-color);
}
.text_page_typ_1 .textfield-telo table {
  display: block;
  overflow-x: auto;
  width: 100%;
  margin: 0.5rem 0 1.25rem;
  border-collapse: collapse;
  font-size: 0.875rem;
  line-height: 1.45;
}
.text_page_typ_1 .textfield-telo th,
.text_page_typ_1 .textfield-telo td {
  padding: 0.5rem 0.75rem;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--line-color);
}
.text_page_typ_1 .textfield-telo th {
  font-weight: 700;
  color: var(--first-color);
  background: var(--cream);
  white-space: nowrap;
}
.text_page_typ_1 .tp-par {
  display: grid;
  grid-template-columns: 3.25rem minmax(0, 1fr);
  gap: 0.5rem;
}
.text_page_typ_1 .tp-par .tp-num {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  color: var(--mute);
}
.text_page_typ_1 .tp-foot {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  max-width: 44rem;
  margin-top: 2rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--line-color);
  font-size: 0.9375rem;
  color: var(--mute);
}
.text_page_typ_1 .tp-foot a {
  color: var(--first-color);
  font-weight: 700;
}
.text_page_typ_1 .faq_section {
  background: none;
  padding: 1.5rem 0 0;
}
.text_page_typ_1 .faq_section .faq-list {
  max-width: 44rem;
  margin: 0;
}
@media (min-width: 62rem) {
  .text_page_typ_1 .tp-layout {
    display: grid;
    grid-template-columns: 16rem minmax(0, 1fr);
    gap: 2rem;
    align-items: start;
  }
  .text_page_typ_1 .tp-nav {
    position: sticky;
    top: 1rem;
    flex-direction: column;
    gap: 0;
    padding: 1rem;
    overflow: visible;
  }
  .text_page_typ_1 .tp-nav__h {
    display: block;
    padding: 0 0.625rem 0.375rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: var(--mute);
  }
  .text_page_typ_1 .tp-nav__h ~ .tp-nav__h {
    margin-top: 0.75rem;
    padding-top: 0.875rem;
    border-top: 1px solid var(--line-color);
  }
  .text_page_typ_1 .tp-nav ul {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin: 0;
    padding: 0;
  }
  .text_page_typ_1 .tp-nav a {
    padding: 0.625rem;
    white-space: normal;
  }
}
/* ---------------------------------------------------------------------------
   Bloky úvodky bydo na skutočnej stránke (docs/bydo/dizajn.md). V manuáli ich
   oddeľoval rám ukážky, na stránke im zvislý rytmus dáva tento súbor. Text bloku
   je popis widgetu z editora (odseky a h2), preto sa malý nadpis a úvodný odsek
   štýlujú podľa poradia, nie podľa tried `.eyebrow` / `.lede` z manuálu.
   --------------------------------------------------------------------------- */
.category_tiles_typ_1,
.product_list_typ_1,
.map_teaser_typ_1,
.city_cards_typ_1,
.quick_links_typ_1,
.tools_typ_1,
.blog_teaser_typ_1,
.bydo-blok {
  padding: var(--section-y-half) 0;
}
.rk_cta_typ_1 {
  padding: var(--section-y) 0;
}
/* biely blok tesne pred / za fialovým pásom - plná medzera na strane pásu, inak pri ňom ostal len polovičný kus */
.city_cards_typ_1:has(+ .rk_cta_typ_1),
.product_list_typ_1:has(+ .rk_cta_typ_1),
.map_teaser_typ_1:has(+ .rk_cta_typ_1),
.category_tiles_typ_1:has(+ .rk_cta_typ_1),
.quick_links_typ_1:has(+ .rk_cta_typ_1),
.tools_typ_1:has(+ .rk_cta_typ_1),
.blog_teaser_typ_1:has(+ .rk_cta_typ_1),
.bydo-blok:has(+ .rk_cta_typ_1) {
  padding-bottom: var(--section-y);
}
.rk_cta_typ_1 + * {
  padding-top: var(--section-y);
}
/* hlavička sekcie z popisu widgetu: <p>malý nadpis</p><h2>…</h2> */
.section-head > p:first-child {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color-hover);
  margin-bottom: 0.5rem;
  margin: 0 0 0.5rem;
}
.section-head h2 {
  margin: 0;
}
.product_list_typ_1 .head-row h2,
.blog_teaser_typ_1 .head-row h2 {
  margin: 0;
}
.product_list_typ_1 .head-row .btn-link,
.blog_teaser_typ_1 .head-row .btn-link {
  flex-shrink: 0;
}
/* text CTA blokov a mapy: <p>malý nadpis</p><h2>…</h2><p>úvod</p> */
.private_cta_typ_1 .section-text > p:first-child,
.rk_cta_typ_1 .section-text > p:first-child,
.map_teaser_typ_1 .section-text > p:first-child {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0 0 0.5rem;
}
.private_cta_typ_1 .section-text h2,
.rk_cta_typ_1 .section-text h2,
.map_teaser_typ_1 .section-text h2 {
  margin: 0;
}
.private_cta_typ_1 .section-text h2 + p,
.rk_cta_typ_1 .section-text h2 + p,
.map_teaser_typ_1 .section-text h2 + p {
  margin-top: 0.875rem;
  max-width: 34rem;
}
.private_cta_typ_1 .section-text > p:first-child,
.map_teaser_typ_1 .section-text > p:first-child {
  color: var(--accent-text);
}
.private_cta_typ_1 .section-text h2 + p,
.map_teaser_typ_1 .section-text h2 + p {
  color: var(--mute);
}
.rk_cta_typ_1 .section-text > p:first-child {
  color: var(--green-400);
}
.rk_cta_typ_1 .section-text h2 + p {
  color: rgba(255, 255, 255, 0.78);
}
/* najnovšie ponuky: widget ich dáva 8 (4 v rade od 93,75rem), pri 3 v rade len 6 - nech riadok nevisí */
@media (max-width: 93.74rem) and (min-width: 61.26rem) {
  .product_list_typ_1 .listing-grid-static > a:nth-child(n+7) {
    display: none;
  }
}
@media (max-width: 61.25rem) {
  .product_list_typ_1 .listing-grid-static > a:nth-child(n+7) {
    display: none;
  }
}
/* celé karty sú odkazy - globálne podčiarknutie odkazov (1b) v nich nepatrí */
.product_list_typ_1 .listing-grid-static > a,
.quick_links_typ_1 .quick-link,
.tools_typ_1 .tool-card,
.blog_teaser_typ_1 .blog-card,
.category_tiles_typ_1 .tile,
.city_cards_typ_1 .city-card,
.map_teaser_typ_1 .map-top a,
.map_teaser_typ_1 .city-row__name,
.map_teaser_typ_1 .city-row__types a,
.btn-link {
  text-decoration: none;
}
.product_list_typ_1 .listing-grid-static > a *,
.quick_links_typ_1 .quick-link *,
.tools_typ_1 .tool-card *,
.blog_teaser_typ_1 .blog-card *,
.category_tiles_typ_1 .tile *,
.city_cards_typ_1 .city-card *,
.map_teaser_typ_1 .map-top a *,
.map_teaser_typ_1 .city-row__name *,
.map_teaser_typ_1 .city-row__types a *,
.btn-link * {
  text-decoration: none;
}
.blog_teaser_typ_1 .blog-card h3 {
  color: var(--ink);
}
/* hero - text z popisu widgetu: <p>malý nadpis</p> nad h1 a <p>úvod</p> */
.hero_search_typ_1 {
  /* úvod je v popise widgetu nad h1 - poradím ho vizuálne pod nadpis (obal popisu sa „rozpustí") */
  /* bez tlačidla Filter (príde s filtrom výpisu): Lokalita, Typ, Cena, Vyhľadať */
}
.hero_search_typ_1 .container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.hero_search_typ_1 .hero-text {
  display: contents;
}
.hero_search_typ_1 .hero-text > p:first-child {
  order: 0;
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-color-hover);
  margin-bottom: 0.5rem;
  margin: 0 0 0.5rem;
}
.hero_search_typ_1 h1 {
  order: 1;
  margin: 0;
}
.hero_search_typ_1 .hero-text > p + p {
  order: 2;
  margin: 0.875rem auto 0;
  max-width: 34rem;
  color: var(--mute);
  font-size: 1.0625rem;
}
.hero_search_typ_1 .type-grid {
  order: 4;
  width: 100%;
}
.hero_search_typ_1 .search-title {
  order: 5;
}
.hero_search_typ_1 .hero-seg {
  order: 6;
}
.hero_search_typ_1 .search-card {
  order: 7;
  width: 100%;
}
.hero_search_typ_1 .search-grid.is-no-filter {
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1fr) auto;
}
@container (max-width: 56rem) {
  .hero_search_typ_1 .search-grid.is-no-filter {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  }
}
@media (max-width: 56.25rem) {
  .hero_search_typ_1 .search-grid.is-no-filter {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media (max-width: 40rem) {
  .hero_search_typ_1 .search-grid.is-no-filter {
    grid-template-columns: 1fr;
  }
}
/* Šírka obsahu bydo - portál s mriežkou ponúk, nie prezentačný web: 1b/Bootstrap dáva pevných 1170 px,
   na Full HD je to úzky pás v strede (Jozef 7. 11.). Postupne podľa okna, nie natvrdo jedna šírka. */
@media (min-width: 75rem) {
  .container {
    width: 100%;
    max-width: 82rem;
  }
  /* 1312 px */
}
@media (min-width: 95rem) {
  .container {
    max-width: 90rem;
  }
  /* 1440 px */
}
@media (min-width: 110rem) {
  .container {
    max-width: 96rem;
  }
  /* 1536 px - Full HD */
}
/* výpis: okno filtra nad lepkavou hlavičkou webu (z-index 1030), čipy filtra sú odkazy */
.filter-modal-backdrop {
  z-index: 1100;
}
.listing_search_typ_1 .ls-chips a.location-chip {
  text-decoration: none;
}
.listing_search_typ_1 .ls-card a.prop-card,
.listing_search_typ_1 .ls-card a.prop-card * {
  text-decoration: none;
}
/* ---- výpis na PC: hlavné voľby filtra rovno na stránke (karta ako vyhľadávanie na úvodke), mobil = lišta ---- */
.filter-desk {
  display: none;
}
/* zmenený filter: tlačidlo „Zobraziť N ponúk" dvakrát zapulzuje zeleným prstencom (Jozef 11. 11.) */
.filter-desk__submit {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
/* pevná šírka - Hľadať aj „Zobraziť 4 934 ponúk" v tej istej, riadok filtra neskáče podľa textu (Jozef 11. 11.) */
@container (min-width: 60.01rem) {
  .filter-desk__submit {
    width: 15rem;
    justify-content: center;
  }
}
.filter-desk__submit.is-zmena {
  animation: bydo-pulz 1.4s ease-out 2;
}
@keyframes bydo-pulz {
  0% {
    box-shadow: 0 0 0 0 rgba(151, 203, 68, 0.55);
  }
  100% {
    box-shadow: 0 0 0 0.75rem rgba(151, 203, 68, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .filter-desk__submit.is-zmena {
    animation: none;
  }
}
@media (min-width: 62rem) {
  .listing_search_typ_1 .filter-bar {
    display: none;
  }
  .filter-desk {
    display: block;
    /* prepínač nad kartou = .bydo-seg--karta (Jozef 11. 11.) */
  }
  .filter-desk__tabs {
    margin-bottom: 1rem;
  }
  .filter-desk__card {
    background: var(--white-color);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card-2);
    padding: 1.25rem 1.5rem 1.5rem;
    container-type: inline-size;
  }
  .filter-desk__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 0.8fr) auto auto;
    gap: 0.875rem;
    align-items: end;
  }
  .filter-desk__grid .btn {
    height: var(--control-h-m);
    white-space: nowrap;
  }
  .filter-desk__more {
    position: relative;
  }
  .filter-desk .filter-trigger-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.25rem;
    height: 1.25rem;
    padding: 0 0.35rem;
    border-radius: var(--radius-badge);
    background: var(--accent-color);
    color: var(--on-accent);
    font-size: 0.75rem;
    font-weight: 800;
  }
  @container (max-width: 60rem) {
    .filter-desk__grid {
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    }
    .filter-desk__grid > .field:first-child {
      grid-column: 1 / -1;
    }
  }
}
.location-field .location-chip button .i,
.location-field .location-chip button svg {
  width: 0.875rem;
  height: 0.875rem;
}
/* stránkovač výpisu: Načítať ďalších, pod ním čísla strán, pod nimi Hore - všetko na stred (Jozef 7. 11.) */
.listing_search_typ_1 .listing-pager-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  text-align: center;
}
.listing_search_typ_1 .listing-pager-row .listing-pager-main {
  order: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
.listing_search_typ_1 .listing-pager-row .listing-pager-nav {
  order: 2;
  justify-content: center;
  flex-wrap: wrap;
}
.listing_search_typ_1 .listing-pager-row .listing-pager-side {
  order: 3;
}
/* výpis vzdušnejšie (Jozef 7. 11.) - viac miesta medzi časťami stránky aj medzi kartami */
.listing_search_typ_1 {
  padding: 2rem 0 var(--section-y);
}
.listing_search_typ_1 .breadcrumb {
  margin-bottom: 1.75rem;
}
.listing_search_typ_1 .ls-head {
  margin-bottom: 2rem;
}
.listing_search_typ_1 .ls-chips {
  margin-top: 1.5rem;
}
.listing_search_typ_1 .ls-toolbar {
  margin: 2.25rem 0 1.75rem;
}
.listing_search_typ_1 .ls-grid {
  gap: 1.75rem;
}
.listing_search_typ_1 .listing-pager {
  margin-top: 3.5rem;
}
.listing_search_typ_1 .listing-pager-row {
  gap: 1.5rem;
}
.listing_search_typ_1 .ls-related {
  margin-top: 4.5rem;
  padding-top: 3rem;
}
.listing_search_typ_1 .ls-related__title {
  margin-bottom: 1.5rem;
}
.listing_search_typ_1 .ls-related__group {
  margin-bottom: 1.5rem;
}
.listing_search_typ_1 .ls-empty {
  margin: 1rem 0 2rem;
}
/* stránkovač výpisu: väčšie medzery, výraznejšie čísla strán a „Hore" ako orámovaná pilulka (Jozef 7. 11.) */
.listing_search_typ_1 .listing-pager-row {
  gap: 2rem;
}
.listing_search_typ_1 .listing-pager-main {
  gap: 0.75rem;
}
.listing_search_typ_1 .listing-pager-nav {
  gap: 0.625rem;
}
.listing_search_typ_1 .listing-pager .listing-pager-btn {
  min-width: 2.75rem;
  height: 2.75rem;
  font-size: 0.9375rem;
}
.listing_search_typ_1 .listing-pager-ellipsis {
  padding: 0 0.25rem;
}
.listing_search_typ_1 .listing-pager-top {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  height: var(--control-h-s);
  padding: 0 1.25rem 0 1rem;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-badge);
  background: var(--white-color);
  color: var(--first-color);
  font-weight: 700;
  font-size: 0.875rem;
  box-shadow: var(--shadow-card-1);
  cursor: pointer;
  transition: var(--trans-200);
}
.listing_search_typ_1 .listing-pager-top .listing-pager-top-icon {
  background: none;
  width: auto;
  height: auto;
  font-size: 1rem;
}
.listing_search_typ_1 .listing-pager-top .listing-pager-top-label {
  display: inline;
}
.listing_search_typ_1 .listing-pager-top:hover {
  border-color: var(--first-color);
  box-shadow: var(--shadow-card-2);
}
/* mapa na mobile (celá obrazovka) nad lepkavou hlavičkou webu */
.listing_search_typ_1.map-open-mobile .ls-map {
  z-index: 1100;
}
/* našeptávač lokality: štítok Okres / Obec / Celé mesto (rozlíšiť okres a obec rovnakého mena) */
.location-panel__tag {
  margin-left: auto;
  flex-shrink: 0;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 0.2rem 0.5rem;
  border-radius: var(--radius-badge);
  background: var(--silver-color);
  color: var(--mute);
}
.location-panel__tag.is-okres {
  background: var(--purple-50);
  color: var(--first-color);
}
.location-panel__tag.is-mesto {
  background: var(--green-50);
  color: var(--accent-text);
}
.location-panel__tag.is-kraj {
  background: var(--first-color);
  color: var(--white-color);
}
.location-panel__tag.is-krajina {
  background: var(--accent-color);
  color: var(--on-accent);
}
/* mapa vedľa výpisu (Jozef 7. 11.):
   - prilepená vpravo POD lepkavou hlavičkou webu (4,5rem + okraj), na výšku zvyšku okna
   - výsledky vedľa mapy najviac 3 karty v rade (pri 4 sa nadpisy orezávali), v užšom 2 */
.listing_search_typ_1 {
  /* len PC (mapa vedľa výsledkov) - na mobile je mapa cez celú obrazovku a zoznam ostáva po jednej karte
     (Jozef 7. 11.: po návrate z mapy 2 úzke karty vedľa seba) */
}
.listing_search_typ_1 .ls-map__inner {
  top: calc(4.5rem + 1rem);
  height: calc(100vh - 4.5rem - 2rem);
  max-height: none;
}
@media (min-width: 61.3125rem) {
  .listing_search_typ_1.has-map .ls-grid.is-view-5,
  .listing_search_typ_1.has-map .ls-grid.is-view-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @container (min-width: 50rem) {
    .listing_search_typ_1.has-map .ls-grid.is-view-5,
    .listing_search_typ_1.has-map .ls-grid.is-view-4 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .listing_search_typ_1.has-map .ls-grid.is-view-rows {
    grid-template-columns: minmax(0, 1fr);
  }
}
.listing_search_typ_1 .ls-map {
  align-self: stretch;
}
/* panel na výšku výsledkov - inak sa prilepená mapa nemá kde posúvať */
/* filter: rýchle voľby ceny a plochy nad posuvníkom / poľami */
.filter-presets {
  margin-bottom: 1rem;
}
/* posuvník ceny krajšie (Jozef 7. 11.): histogram so zaoblenými stĺpcami (v rozsahu zelené), tenká dráha,
   väčšie biele úchyty s tieňom, pod tým Minimum / Maximum v dvoch boxoch ako polia - nič sa neoreže */
.filter-modal .price-slider {
  padding-top: 0.25rem;
}
.filter-modal .price-slider__histogram {
  height: 3.5rem;
  gap: 3px;
  margin: 0 0.875rem 0.125rem;
}
.filter-modal .price-slider__histogram div {
  border-radius: 3px 3px 0 0;
  background: var(--purple-100);
  opacity: 0.55;
}
.filter-modal .price-slider__histogram div.is-active {
  background: var(--accent-color);
  opacity: 1;
}
.filter-modal .price-slider__track {
  height: 3px;
  background: var(--line-color);
  margin: 0 0.875rem;
}
.filter-modal .price-slider__progress {
  background: var(--first-color);
}
.filter-modal .price-slider__inputs {
  margin: 0 0.875rem;
}
.filter-modal .price-slider__inputs input[type="range"] {
  height: 3px;
  top: -3px;
}
.filter-modal .price-slider__inputs input[type="range"]::-webkit-slider-thumb {
  width: 1.75rem;
  height: 1.75rem;
  border: 1px solid var(--line-color);
  box-shadow: 0 0.125rem 0.5rem rgba(29, 16, 41, 0.22);
}
.filter-modal .price-slider__inputs input[type="range"]::-moz-range-thumb {
  width: 1.75rem;
  height: 1.75rem;
  border: 1px solid var(--line-color);
  box-shadow: 0 0.125rem 0.5rem rgba(29, 16, 41, 0.22);
}
.filter-modal .price-slider .price-slider__values.is-boxes {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 0.625rem;
  margin: 1.75rem 0 0;
}
.filter-modal .price-slider .price-slider__values.is-boxes .price-box {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  padding: 0.5rem 0.875rem 0.375rem;
  background: var(--white-color);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.filter-modal .price-slider .price-slider__values.is-boxes .price-box:focus-within {
  border-color: var(--focus-color);
  box-shadow: 0 0 0 0.1875rem rgba(93, 17, 123, 0.14);
}
.filter-modal .price-slider .price-slider__values.is-boxes .price-box label {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  margin: 0;
}
.filter-modal .price-slider .price-slider__values.is-boxes .price-box__sep {
  color: var(--mute);
}
.filter-modal .price-slider .price-slider__values.is-boxes .price-edit {
  width: 100%;
  margin: 0;
  padding: 0.125rem 0;
  border: 0;
  background: none;
  font-size: 1rem;
}
.filter-modal .price-slider .price-slider__values.is-boxes .price-edit:hover {
  background: none;
}
.filter-modal .price-slider .price-slider__values.is-boxes .price-edit:focus {
  border: 0;
  box-shadow: none !important;
  background: none;
}
/* rýchle voľby (cena, plocha, pozemok) v JEDNOM riadku - nezalamovať (Jozef 7. 11.): na PC rovnako široké
   vedľa seba, na mobile vodorovný pás posúvaný prstom (position: relative - pasca s vnorenými prvkami v pruhu) */
.filter-modal .filter-presets {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 0.5rem;
  flex-wrap: nowrap;
}
.filter-modal .filter-presets .filter-pill {
  justify-content: center;
  white-space: nowrap;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  font-size: 0.8125rem;
}
@media (max-width: 36rem) {
  .filter-modal .filter-presets {
    position: relative;
    grid-auto-columns: max-content;
    overflow-x: auto;
    scrollbar-width: none;
    margin-right: -1.25rem;
    padding-right: 1.25rem;
  }
  .filter-modal .filter-presets::-webkit-scrollbar {
    display: none;
  }
  .filter-modal .filter-presets .filter-pill {
    padding-left: 0.875rem;
    padding-right: 0.875rem;
  }
}
/* všetko, čo maže alebo ruší (Vymazať filter / všetko, krížik čipu a lokality), pri prejdení myšou červené (Jozef 7. 11.) */
.listing_search_typ_1 .ls-chips__clear,
.filter-modal__footer a.btn-link,
.bydo-select__panel-foot .btn-link,
.filter-desk .bydo-select__panel-foot .btn-link {
  transition: color 0.15s ease;
}
.listing_search_typ_1 .ls-chips__clear:hover,
.filter-modal__footer a.btn-link:hover,
.bydo-select__panel-foot .btn-link:hover {
  color: var(--color-error) !important;
}
.listing_search_typ_1 .ls-chips a.location-chip {
  transition: background-color 0.15s ease, color 0.15s ease;
}
.listing_search_typ_1 .ls-chips a.location-chip:hover {
  background: var(--color-error-bg);
  color: var(--color-error);
}
.location-chip button {
  transition: background-color 0.15s ease, color 0.15s ease;
}
.location-chip button:hover {
  background: var(--color-error-bg);
  color: var(--color-error);
}
/* tlačidlo „Zobraziť ponuky (N)" v jednom riadku */
.filter-modal__footer .btn-first {
  white-space: nowrap;
  gap: 0.3em;
}
/* ============================================================================
   BYDO - tokeny vrstvy nad šablónou 1b.
   Prepisuje :root premenné z `_variables.less` (1b) - PRIMITÍVA aj SÉMANTIKU,
   pretože viaceré komponenty 1b používajú primitíva priamo, nielen sémantiku
   (zoznam v docs/bydo/dizajn.md). Mená premenných nechávam rovnaké ako v 1b
   ("rebrand = zmena hodnôt, nie mien") - niektoré teraz nesú iný význam, než
   ich meno napovedá (napr. `--cream` už nie je krémová, ale svetlá modro-sivá
   plocha starého bydo) - vždy s komentárom pri riadku.

   Import: POSLEDNÝ riadok `style.less` (dôvod v docs/bydo/dizajn.md - inak by
   literálny `body{background-color:...}` zapísaný priamo v `style.less`, nie
   v partiali, prebil pozadie skôr, než by sa k nemu táto vrstva dostala).

   Zdroj hodnôt: docs/bydo/navrhy-uvodka/tokeny.md (vytiahnuté zo starého bydo.sk).
   ============================================================================ */
:root {
  /* ---- PRIMITÍVA: fialová (identita - nadpisy, logo, cena, odkazy) ---- */
  --purple-50: #F6EEFA;
  --purple-100: #EBD9F3;
  --purple-200: #D7B3E7;
  --purple-300: #BE85D6;
  --purple-400: #A35BC2;
  --purple-500: #8738AC;
  --purple-600: #6D1F8C;
  --purple-700: #5D117B;
  /* = staré --color-primary-light (hover) */
  --purple-800: #4C0E65;
  /* = staré --color-primary (hlavná fialová) */
  --purple-900: #38094A;
  /* tmavé plochy (päta), silný hover */
  --purple-line: #6B2A82;
  /* tenká čiara na tmavej fialovej ploche */
  /* ---- PRIMITÍVA: zelená (akcia - CTA, ikony kategórií, pozitívne čísla) ---- */
  --green-50: #F3FAE8;
  --green-400: #ADD66C;
  /* = staré --color-accent-light */
  --green-500: #97CB44;
  /* = staré --color-accent (hlavná zelená) */
  --green-600: #8BC035;
  /* = staré --color-accent-dark (hover) */
  --green-700: #4A6B1C;
  /* zelený TEXT na svetlom - AA 6,2:1 na bielej, 5,4:1 na --cream */
  --green-800: #3D5817;
  --green-900: #293A0F;
  /* ---- PRIMITÍVA: neutrály a plochy (zdroj: staré bydo, Bootstrap základ) ---- */
  --ink: #212529;
  /* = staré --color-text, základný text */
  --warm: #333333;
  /* = staré --color-text-soft */
  --mute: #5F6670;
  /* = staré --color-text-muted, doladené na AA 4,5:1+ na bielej aj na --cream */
  --line: #DEE2E6;
  /* okraje, čiary (dekoratívne - WCAG na okraje sa nevyžaduje) */
  --cream: #EDF1F8;
  /* POZOR: nie krémová - svetlá modro-sivá plocha stránky (staré --color-bg-page) */
  --cream-2: #EFEFF1;
  /* = staré --color-surface-alt, pásové striedanie sekcií */
  --cream-mute: #D9CBE3;
  /* tlmený text na tmavej fialovej (päta) */
  --warm-white: #FFFFFF;
  /* biele karty - Jozef: "biele karty", nie teplá biela 1b */
  --bg-blob: #EDF0F8;
  /* farba veľkých oblých SVG tvarov na pozadí (zdroj 1:1) */
  --bg-shapes: url('/modul/Custom/img/bydo-background-jemne.svg');
  /* jemnejšie tvary s prechodom (Jozef 11. 11.); pôvodné plné = bydo-background.svg */
  /* ---- SÉMANTIKA: plochy ---- */
  --white-color: var(--warm-white);
  /* biele karty */
  --dark-color: var(--warm);
  /* bežný/tlmený text, odkazy */
  --white-darken-5: var(--cream);
  /* plocha sekcie */
  --silver-color: var(--cream-2);
  /* alternujúca plocha pásu */
  --gray-color: var(--mute);
  /* vedľajší text */
  --first-color: var(--purple-800);
  /* nadpisy, logo, cena, odkazy */
  --second-color: var(--purple-700);
  /* hover / sekundárna fialová */
  --three-color: var(--cream);
  --four-color: var(--cream-2);
  --five-color: var(--cream);
  /* pozadie stránky (pod SVG tvarmi) */
  --six-color: var(--warm-white);
  /* biele karty */
  --seven-color: var(--warm);
  --eight-color: var(--mute);
  --nine-color: var(--green-500);
  --ascend-color: var(--green-500);
  --accent-color: var(--green-500);
  /* CTA, ikony kategórií, bodky, čísla ponúk */
  --accent-color-hover: var(--green-600);
  --on-accent: var(--ink);
  /* text NA zelenej ploche (zelená je svetlá - kontrast 8:1 s tmavým textom) */
  --accent-text: var(--green-700);
  /* zelený TEXT na svetlej ploche (AA-bezpečná, tmavšia než --accent-color) */
  --line-color: var(--line);
  --dark-surface: var(--purple-900);
  /* päta, tmavé pásy = tmavá fialová (identita, nie zelená) */
  --on-dark-text: var(--warm-white);
  --on-dark-text-mute: var(--cream-mute);
  --on-dark-line: var(--purple-line);
  --black-color: var(--ink);
  /* ---- Stavy (chýbajú v 1b - nový slot pre bydo) ---- */
  --color-success: #2F7A3D;
  /* AA 5,3:1 na bielej */
  --color-success-bg: #EAF6E9;
  --color-success-border: #BFE3C2;
  --color-error: #C92215;
  /* AA 5,6:1 na bielej - rovnaký odtieň ako staré --shadow-red v 1b */
  --color-error-bg: #FBEAE8;
  --color-error-border: #F1C3BE;
  --star-color: #F2A516;
  /* hviezdy hodnotenia (recenzie) - jediná žltá na webe, len pre hviezdy; text vedľa nesie číslo */
  --color-warning: #9A6400;
  /* AA 5,0:1 na bielej */
  --color-warning-bg: #FFF6E0;
  --color-warning-border: #F0DBA0;
  /* fokus oddelený od --accent-color (dôvod: docs/bydo/dizajn.md, --accent-color samotná nesplní
     3:1 kontrast pre netextové prvky na bielom pozadí) */
  --focus-color: var(--purple-700);
  /* ---- Tlačidlá (Jozef, 6. 11. 14:19) - fialová NIE JE farba tlačidla (len logo/nadpisy/cena),
     na tmavej ploche sa namiesto nej použije invertované biele tlačidlo (`.btn-three`).
     PRIMÁRNE (`.btn-first`) = zelená výplň, tmavofialový text - Pridať inzerát, Vyhľadať, Odoslať. */
  --btn-first-bg: var(--accent-color);
  --btn-first-bg-hover: var(--accent-color-hover);
  --btn-first-color: var(--first-color);
  --btn-first-color-hover: var(--first-color);
  /* SEKUNDÁRNE (`.btn-second`) = zelený obrys, tmavšia zelená text (AA), jemná zelená výplň pri hoveri. */
  --btn-second-bg: transparent;
  --btn-second-bg-hover: var(--green-50);
  --btn-second-color: var(--accent-text);
  --btn-second-color-hover: var(--accent-text);
  /* `.btn-three` = invertované biele tlačidlo LEN na tmavej/fialovej ploche (päta, rk_cta pás) -
     1b má farbu obrysu natvrdo `var(--first-color)` priamo v pravidle (nie cez token), preto má
     `.btn-three` nižšie v tomto súbore ešte vlastný plný prepis (nielen tokeny). */
  --btn-three-color: var(--white-color);
  --btn-three-color-hover: var(--first-color);
  --btn-three-bg-hover: var(--white-color);
  /* `.btn-four` (ghost) sa v bydo widgetoch nepoužíva - TERCIÁRNE je textový odkaz `.btn-link`,
     nie boxovaný ghost button (nižšie). Tokeny necháme nedotknuté (1b default), pre istotu. */
  /* Pevné výšky ovládacích prvkov (tlačidlo = pole vedľa neho, napr. vyhľadávací riadok). */
  --control-h-s: 2.5rem;
  /* 40px */
  --control-h-m: 3rem;
  /* 48px */
  --control-h-l: 3.5rem;
  /* 56px */
  /* ---- Písmo: Exo - jediné písmo na celom (starom i novom) bydo ---- */
  --first-font: "Exo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --second-font: "Exo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --three-font: "Exo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --four-font: "Exo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  /* ---- Typografická škála (rem) ---- */
  --h1: clamp(1.875rem, 4vw, 2.75rem);
  /* 30-44px */
  --h1-lh: 1.2;
  --h2: clamp(1.625rem, 2.6vw, 2rem);
  /* 26-32px */
  --h2-lh: 1.25;
  --h3: 1.375rem;
  /* 22px */
  --h3-lh: 1.3;
  --h4: 1.125rem;
  /* 18px */
  --h4-lh: 1.4;
  --h5: 1rem;
  /* 16px */
  --h5-lh: 1.5;
  --h6: 0.875rem;
  /* 14px */
  --h6-lh: 1.5;
  --p-body: 1rem;
  --p-body-lh: 1.5;
  --p-body-big: 1.125rem;
  --p-body-big-lh: 1.4;
  --p-caption: 0.8125rem;
  /* 13px */
  --p-caption-lh: 1.6;
  /* ---- Medzery (škála, rem) ---- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  /* zvislý rytmus sekcií a bočný okraj mobilu ostávajú z 1b (--section-y, --section-y-half, --page-x) */
  /* ---- Zaoblenia (staré bydo: stredné, 8-16px, nikdy hranaté ani pilulky všade) ---- */
  --radius-sm: 0.75rem;
  /* 12px - polia, tlačidlá (Jozef 6. 11.: zaoblenejšie, ladí s kartami) */
  --radius-md: 0.875rem;
  /* 14px - karty, panely */
  --radius-lg: 1rem;
  /* 16px - veľké fotky, bannery (= staré --radius-card) */
  --radius-badge: 50rem;
  /* pilulka - len malé štítky (Nový, TOP) */
  --border-radius: var(--radius-md);
  /* ---- Tiene (staré bydo - fialovkasto-sivé, nie čierne) ---- */
  --shadow-card-1: 0 1px 3px 1px rgba(160, 161, 188, 0.14);
  --shadow-card-2: 0 0.5rem 1.5rem rgba(76, 14, 101, 0.14);
}
/* Breakpointy (dokumentačné LESS premenné - zhodné s hranicami @media v style.less:
   36rem/576px, 48rem/768px, 62rem/992px, 75rem/1200px, 100rem/1600px). CSS custom
   properties sa v @media podmienkach spoliehavo nepodporujú, preto LESS @var, nie :root. */
/* ---- SVG pozadie - veľké oblé tvary, zachované 1:1 zo starého bydo ---- */
body {
  background-image: var(--bg-shapes);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  /* `background-color` sa nenastavuje tu - literálne pravidlo v style.less (var(--white-color))
     je v cascade AŽ PO tomto importe a vyhráva pre `background-color`; táto vrstva mení len
     `background-image/-repeat/-position/-size`, teda sa to neprebije. */
}
/* ---- Fokus oddelený od --accent-color (docs/bydo/dizajn.md) ----
   Jeden mäkký polopriehľadný prstenec bez bielej medzery (Jozef 6. 11. 16:30 - dvojitý rám pôsobil ťažko).
   Jemný prstenec (box-shadow), nie hranatý outline s medzerou - pôsobil ako "tlačidlo v tlačidle"
   (Jozef 6. 11. 15:25). box-shadow kopíruje border-radius prvku, takže rovnaký jemný prstenec
   funguje na tlačidle, pilulke, karte aj textovom odkaze bez osobitného pravidla pre každý tvar.
   `:focus-visible` sa v prehliadači zobrazí LEN pri ovládaní klávesnicou, nie pri kliku myšou.
   Rovnaká špecificita a `!important` ako pravidlo v 1b `_variables.less` - vyhráva, pretože
   tento súbor sa importuje neskôr. */
:focus-visible {
  outline: none !important;
}
/* Jozef 11. 11.: fokus preč z celého webu - žiadne rámiky ani prstence (box-shadow) pri kliku ani pri Tab.
   Textové pole pri písaní len stmavne okraj (pravidlo nižšie), aby bolo vidno, kam sa píše.
   :root x3 = vyššia špecificita než pravidlá fokusu v komponentoch (aj tie s !important). */
:root:root:root :is(a, button, input, select, textarea, summary, label, [tabindex], [role=tab], [role=button]):is(:focus, :focus-visible),
:root:root:root :is(.input-wrap, .bydo-select__trigger, .price-box):focus-within,
:root:root:root .bydo-select:focus-within > .bydo-select__trigger {
  outline: none !important;
  box-shadow: none !important;
}
/* Polia formulára: fokus NIE je obrys okolo samotného <input> (bol hranatý a vnútri poľa, Jozef 6. 11.) -
   zvýrazní sa celé pole: farba okraja + jemný zaoblený prstenec. Pri poli s ikonou (.input-wrap) cez :focus-within. */
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.input-wrap input:focus,
.input-wrap select:focus {
  outline: none !important;
}
input:not([type=checkbox]):not([type=radio]):focus-visible,
select:focus-visible,
textarea:focus-visible,
.input-wrap:focus-within,
.bydo-select:focus-within > .bydo-select__trigger {
  /* prstenec na zaoblenom tlačidle, nie na hranatom obale */
  border-color: var(--focus-color) !important;
  /* bez prstenca (Jozef 11. 11.), len tmavší okraj */
}
/* číselné polia bez natívnych šípok prehliadača */
input[type=number] {
  -moz-appearance: textfield;
  appearance: textfield;
}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* vnútorný <input> v poli s ikonou nikdy nedostane vlastný okraj ani prstenec - fokus nesie len .input-wrap */
/* rovnaké :not() ako pravidlo poľa vyššie - inak má pravidlo poľa vyššiu špecificitu a vnútorný input
   dostal vlastný rám (Jozef 6. 11.: rámik vnútri poľa Lokalita) */
.input-wrap input,
.input-wrap select,
.input-wrap input:not([type=checkbox]):not([type=radio]):focus,
.input-wrap input:not([type=checkbox]):not([type=radio]):focus-visible,
.input-wrap select:focus,
.input-wrap select:focus-visible {
  outline: none !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent;
}
/* ---- Pole formulára s ikonou (Lokalita, Cena...) - spoločné pre celý web (hero
   vyhľadávanie, modal filtra), nie len jeden widget (Jozef 6. 11. 14:50). Rovnaká
   explicitná výška ako `.bydo-select__trigger`/`.btn`, aby pole, vlastný select a
   tlačidlo v jednom riadku vizuálne sedeli na milimeter (Jozef 6. 11. 14:53). */
.field {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  position: relative;
  /* `> label`, nie `label` - inak by pravidlo (malé veľké písmená, tučné) prebilo aj
     vnorené <label class="fb-check"> v rozbaľovacom paneli multiselektu typu nižšie
     (Jozef 6. 11. 16:00 - položky "DOMY"/"BYTY" mali omylom štýl nadpisu poľa). */
  /* `.input-wrap input`, NIE holé `.field input` - inak by toto pravidlo (bez okraja/pozadia,
     okraj dáva .input-wrap) strhlo vizuál aj z `.fb-input` použitého priamo vo `.field` bez
     `.input-wrap` (Plocha/Poschodie/Rok výstavby vo filtri nemajú ikonu, teda ani .input-wrap -
     "Rok výstavby od" stratil okraj, Jozef 6. 11. 15:50). */
  /* jednotka za číslom („100 000 €", Jozef 7. 11.): so sumou ikona vľavo zmizne a „€" stojí za textom - pozíciu
     dáva neviditeľná kópia textu v rovnakom písme (bydo-filter.js `data-jednotka`); prázdne pole = ikona vľavo */
}
.field > label {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--mute);
  line-height: 1.2;
}
.field .input-wrap {
  display: flex;
  align-items: center;
  gap: 0.5625rem;
  height: var(--control-h-m);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  padding: 0 0.9375rem;
  background: var(--white-color);
}
.field .input-wrap .i {
  width: 1.1875rem;
  height: 1.1875rem;
  color: var(--mute);
  flex-shrink: 0;
}
.field .input-wrap input,
.field .input-wrap select {
  border: none;
  background: none;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--ink);
  width: 100%;
  outline: none;
  appearance: none;
}
.field .input-wrap[data-jednotka] {
  position: relative;
}
.field .input-wrap[data-jednotka] input {
  padding: 0;
}
.field .input-wrap[data-jednotka] .input-unit {
  position: absolute;
  left: 0.9375rem;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--mute);
  white-space: pre;
  pointer-events: none;
}
.field .input-wrap[data-jednotka] .input-unit__mirror {
  visibility: hidden;
}
.field .input-wrap[data-jednotka]:not(.is-empty) > .i {
  display: none;
}
.field .input-wrap[data-jednotka].is-empty .input-unit {
  display: none;
}
/* ---- Naseptávač lokality (Jozef 6. 11. 15:35, MULTISELEKT s čipmi 6. 11. 16:05) - vlastný
   combobox nad `.input-wrap`, zdieľaný hero aj modalom filtra. Viac čipov naraz - `.input-wrap`
   preto smie rásť na výšku (zalomenie), nie pevná `--control-h-m` ako ostatné polia. */
.location-field.input-wrap {
  height: auto;
  min-height: var(--control-h-m);
  flex-wrap: wrap;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.location-field.input-wrap > .i {
  align-self: flex-start;
  margin-top: 0.375rem;
}
.location-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  min-width: 0;
}
.location-field input {
  flex: 1 1 8rem;
  min-width: 6rem;
}
.location-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.4375rem;
  min-width: 0;
  background: var(--green-50);
  color: var(--accent-text);
  font-size: 0.875rem;
  font-weight: 700;
  padding: 0.3125rem 0.4375rem 0.3125rem 0.75rem;
  border-radius: var(--radius-badge);
}
.location-chip span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.location-chip button {
  flex-shrink: 0;
  display: inline-flex;
  width: 1.25rem;
  height: 1.25rem;
  border: 0;
  border-radius: 50%;
  background: rgba(76, 14, 101, 0.1);
  color: var(--accent-text);
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.location-chip button .i {
  width: 0.8rem;
  height: 0.8rem;
}
/* "Spresniť <okres>:" - pilulky jeho obcí/častí, pod naseptávačom (nie v paneli, ten sa
   zavrie po výbere okresu) */
.location-refine {
  margin-top: 0.625rem;
}
.location-refine__label {
  display: block;
  font-size: 0.8rem;
  color: var(--mute);
  margin-bottom: 0.4rem;
}
.location-panel {
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 0;
  min-width: max(100%, 20rem);
  /* podnadpis "okres …, … kraj" sa nesmie orezávať */
  z-index: 20;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card-2);
  padding: 0.4rem;
  max-height: min(22rem, 60vh);
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: var(--line-color) transparent;
}
.location-panel::-webkit-scrollbar {
  width: 0.375rem;
}
.location-panel::-webkit-scrollbar-thumb {
  background: var(--line-color);
  border-radius: 1rem;
}
.location-panel::-webkit-scrollbar-track {
  background: transparent;
}
.location-panel__empty {
  padding: 0.75rem 0.625rem;
  color: var(--mute);
  font-size: 0.875rem;
  text-align: center;
}
.location-panel__item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.5625rem 0.625rem;
  border-radius: 0.5rem;
  cursor: pointer;
}
.location-panel__item .i {
  width: 1.0625rem;
  height: 1.0625rem;
  color: var(--mute);
  flex-shrink: 0;
}
.location-panel__item.is-active,
.location-panel__item:hover {
  background: var(--green-50);
}
.location-panel__text {
  flex: 1;
  min-width: 0;
  display: block;
  font-size: 0.875rem;
  color: var(--ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  /* zhoda tučne, nie podfarbením - na aktívnom (zelenom) riadku podfarbenie splývalo */
}
.location-panel__text mark {
  background: none;
  color: var(--first-color);
  font-weight: 700;
  padding: 0;
}
.location-panel__text small {
  display: block;
  font-size: 0.72rem;
  color: var(--mute);
  font-weight: 400;
}
.location-panel__psc {
  flex-shrink: 0;
  font-size: 0.75rem;
  color: var(--mute);
}
/* ---- `.fb-input`/`.fb-select` - rovnaká história ako `.fb-check` nižšie: 1b ich má
   (`_form.less`), ale vnorené len pod `.form_block`. Filter (Plocha/Poschodie/Rok výstavby)
   ich potrebuje mimo formulára - globálne dostupná verzia, rovnaký vizuál. */
.fb-input {
  width: 100%;
  background: var(--white-color);
  border: 1px solid var(--line-color);
  border-radius: var(--radius-sm);
  padding: 0.875rem 1.125rem;
  font-family: var(--second-font);
  font-size: 0.9375rem;
  color: var(--ink);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.fb-input::placeholder {
  color: var(--mute);
}
.fb-input:focus {
  outline: none;
  border-color: var(--focus-color);
  box-shadow: 0 0 0 0.1875rem rgba(93, 17, 123, 0.14);
}
.fb-select {
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238A857A' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  padding-right: 2.5rem;
}
/* ---- Checkbox `.fb-check` - JEDINÁ trieda zaškrtávacieho políčka na celom webe (filter, multiselekt,
   formuláre). 1b má vlastnú verziu vnorenú pod `.form_block` (`_form.less`, fajka z rotovaného rámika
   s px posunmi - bola vyosená); tu ju prepisujeme aj tam, aby všade vyzeralo rovnako (Jozef 6. 11.).
   Použitie:
     <label class="fb-check"><input type="checkbox"><span class="fb-check-box"></span><span class="fb-check-txt">Text</span></label>
   Natívny input je skrytý, ale ostáva v poradí Tab - fokus ukáže prstenec na štvorčeku. */
.fb-check,
.form_block .fb-check {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  cursor: pointer;
  font-weight: 400;
}
.fb-check input,
.form_block .fb-check input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}
.fb-check-box,
.form_block .fb-check-box {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  border: 1.5px solid #B9BEC6;
  /* tmavšie než --line, aby bol prázdny štvorček viditeľný (3:1 netextový prvok) */
  border-radius: 0.375rem;
  background: var(--white-color) no-repeat center / 0.875rem;
  transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
  /* zruší starú fajku z 1b */
}
.fb-check-box::after,
.form_block .fb-check-box::after {
  content: none !important;
}
.fb-check:hover .fb-check-box {
  border-color: var(--focus-color);
}
.fb-check input:checked + .fb-check-box,
.form_block .fb-check input:checked + .fb-check-box {
  background-color: var(--first-color);
  border-color: var(--first-color);
  /* fajka ako SVG vycentrované pozadím */
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23FFFFFF' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E");
}
.fb-check input:focus-visible + .fb-check-box {
  box-shadow: 0 0 0 0.1875rem rgba(93, 17, 123, 0.28);
}
.fb-check input:disabled + .fb-check-box {
  opacity: 0.45;
}
.fb-check-txt {
  font-family: var(--second-font);
  font-size: 0.9375rem;
  line-height: 1.4;
  color: var(--ink);
  font-weight: 400;
}
.form_block .fb-check-txt {
  font-size: 0.8125rem;
  color: var(--mute);
}
/* GDPR riadok vo formulári ostáva drobný */
.bydo-select__panel-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.4rem;
  padding: 0.5rem 0.625rem 0;
  border-top: 1px solid var(--line-color);
}
/* ---- Tlačidlá - JEDEN tvar a JEDNA výška-škála pre celý web (Jozef, 6. 11. 14:19).
   1b base `.btn` (`_variables.less`) nemá vlastné zaoblenie ani `text-transform` - tu sa
   dopĺňa. `.btn-three` má navyše farbu obrysu natvrdo `var(--first-color)` priamo v 1b
   pravidle (nie cez token), preto ho tu prepisujem CELÝ (nielen cez --btn-three-* tokeny) -
   je to teraz invertované BIELE tlačidlo LEN pre tmavé/fialové plochy, fialová sama osebe
   nie je farba tlačidla nikde inde. */
.btn {
  border-radius: var(--radius-sm);
  text-transform: none;
  letter-spacing: normal;
  height: var(--control-h-m);
  white-space: nowrap;
  /* S/M/L - pevná výška, rovnaká ako susedné pole (napr. vyhľadávací riadok) */
}
.btn.btn-rounded,
.btn.rounded {
  /* pilulka je len pre filtre/štítky/prepínače (docs/bydo/dizajn.md) - akčné tlačidlo
       sa pilulkou nestáva ani cez `.rounded`, aby sa táto trieda omylom nepoužila na CTA */
  border-radius: var(--radius-sm);
}
.btn.btn-s {
  height: var(--control-h-s);
  padding: 0 1rem;
  font-size: 0.875rem;
  gap: 0.4rem;
}
.btn.btn-m {
  height: var(--control-h-m);
  padding: 0 1.375rem;
}
.btn.btn-l,
.btn.btn-lg {
  height: var(--control-h-l);
  padding: 0 1.75rem;
  font-size: 1.0625rem;
}
.btn:disabled,
.btn.is-disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none !important;
}
/* 1b `.btn-second` viaže farbu OBRYSU priamo na `--btn-second-bg` (`border:1px solid
   var(--btn-second-bg)`) - keď je `--btn-second-bg` priehľadná (bydo: sekundárne = obrys,
   nie výplň), obrys by bol neviditeľný. Farba obrysu sa preto prepisuje tu natvrdo. */
.btn-second {
  border-color: var(--accent-color);
}
.btn-second:hover,
.btn-second:focus,
.btn-second:visited:hover,
.btn-second:active,
.btn-second:active:focus,
.btn-second:active:hover {
  border-color: var(--accent-color);
}
.btn-second:visited {
  border-color: var(--accent-color);
}
.btn-three {
  background: transparent;
  border: 1px solid var(--white-color);
  color: var(--white-color);
  text-transform: none;
}
.btn-three:hover,
.btn-three:focus,
.btn-three:visited:hover,
.btn-three:active:focus,
.btn-three:active:hover {
  background: var(--white-color);
  color: var(--first-color);
  border-color: var(--white-color);
  box-shadow: none;
}
.btn-three:visited {
  color: var(--white-color);
  background: transparent;
  border-color: var(--white-color);
}
/* ---- TERCIÁRNE tlačidlo = textový odkaz so šípkou ("Detail ->"), NIE boxovaný `.btn`
   (žiadne pozadie/okraj/pevná výška) - rovnaký vzor, aký už má `.prop-card__detail` v 1b. */
.btn-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  background: none;
  border: 0;
  padding: 0;
  height: auto;
  color: var(--accent-text);
  font-family: var(--second-font);
  font-weight: 700;
  font-size: 0.9rem;
  text-decoration: none;
  border-radius: 0.375rem;
  /* tvar jemného prstenca pri :focus-visible (globálne pravidlo vyššie), vizuálne bez pozadia/okraja */
  transition: var(--trans-200);
  /* hover = TÁ ISTÁ tmavozelená (nie svetlejšia - svetlá zelená na bielej nemá dosť kontrastu),
     jemné podčiarknutie + šípka sa posunie (Jozef, 6. 11. 14:29) */
}
.btn-link .i,
.btn-link svg {
  width: 1em;
  height: 1em;
  transition: transform 0.2s ease;
}
.btn-link:hover,
.btn-link:focus {
  color: var(--accent-text);
  text-decoration: underline;
  text-underline-offset: 0.2em;
  /* len šípka ZA textom - ikonka pred textom (Kopírovať) by vošla do slova (Jozef 13. 11.) */
}
.btn-link:hover > .i:not(:first-child),
.btn-link:focus > .i:not(:first-child),
.btn-link:hover > svg:not(:first-child),
.btn-link:focus > svg:not(:first-child) {
  transform: translateX(0.25rem);
}
/* ---- Ikony - jediný štýl (Phosphor Regular, public/modul/Custom/img/icons/), vykreslené
   inline cez `rkIcon($name)` (app/modul/Custom/View/Layout/Widget/Menu/_rk_icon.php) - zdieľaný
   obal, podobne ako `.btn` v 1b `_variables.less`. Používa VŠETKÝCH 10 bydo widgetov. */
.i {
  display: inline-flex;
  flex-shrink: 0;
  /* veľkosť podľa písma okolo (tlačidlo, čip, text), nie pevných 24 px - v malom tlačidle a pri krížiku
     čipu boli ikony prerastené (Jozef 7. 11.); kde treba pevnú veľkosť, nastavuje ju komponent */
  width: 1.2em;
  height: 1.2em;
}
.i svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: currentColor;
}
/* ---- Štítky (stav inzerátu, "TOP") - malý štítok, pilulka, zdieľaný viacerými miestami
   (karta inzerátu, výpis) - rovnaká logika ako `.btn-*` utility v 1b `_variables.less`. */
.badge-status {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  /* ovál, nie kruh (Jozef, 6. 11. 14:19) - bočný priestor zreteľne väčší než zvislý,
     výška plynie z obsahu (žiadna pevná min-width/min-height, ktorá by krátky text "TOP" stlačila do kruhu) */
  padding: 0.25rem 0.75rem;
  border-radius: var(--radius-badge);
  line-height: 1.3;
  white-space: nowrap;
  width: fit-content;
}
.badge-status.is-new {
  background: var(--color-success-bg);
  color: var(--color-success);
}
.badge-status.is-reserved {
  background: var(--color-warning-bg);
  color: var(--color-warning);
}
.badge-status.is-sold {
  background: var(--color-error-bg);
  color: var(--color-error);
}
.badge-status.is-top {
  background: var(--accent-color);
  color: var(--on-accent);
}
/* ---- Prepínač zobrazenia výpisu - 3 možnosti ako v 1b `_toolbar_1b.php`/`.lt-view-switch`
   (mriežka 5 v rade, mriežka 4 v rade, na šírku), rovnaký vzor pilulky ako `.list-tabs`
   v `product_list_typ_1`, len bez textu, len ikony. */
.view-switch {
  display: inline-flex;
  background: var(--white-color);
  border-radius: var(--radius-badge);
  padding: 0.3rem;
  box-shadow: var(--shadow-card-1);
  gap: 0.15rem;
  /* tlačidlo (manuál) alebo odkaz (výpis - každé zobrazenie má vlastnú adresu) */
}
.view-switch button,
.view-switch a {
  background: none;
  border: none;
  width: 2.25rem;
  height: 2.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-badge);
  color: var(--mute);
  text-decoration: none;
}
.view-switch button .i,
.view-switch a .i {
  width: 1.125rem;
  height: 1.125rem;
}
.view-switch button:hover:not(.is-active),
.view-switch a:hover:not(.is-active) {
  color: var(--first-color);
  background: var(--silver-color);
}
.view-switch button.is-active,
.view-switch a.is-active {
  background: var(--first-color);
  color: var(--white-color);
}
/* malé tlačidlo a krížik v čipe - ikona menšia než písmo, nech nepôsobí ťažšie než text */
.btn-s .i {
  width: 1em;
  height: 1em;
}
.location-chip .i,
.location-chip button .i {
  width: 0.875rem;
  height: 0.875rem;
}
/* ---- Upozornenia (úspech/chyba) - samostatné od `.fb-alert` (_form.less, má vlastné
   natvrdo zapísané farby - otvorený bod v docs/bydo/dizajn.md), tu nové tokenizované. */
.alert-status {
  border-radius: var(--radius-sm);
  padding: 0.875rem 1.125rem;
  font-size: 0.9rem;
  font-weight: 600;
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  border: 1px solid transparent;
}
.alert-status .i {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  margin-top: 0.05rem;
}
.alert-status.is-success {
  background: var(--color-success-bg);
  color: var(--color-success);
  border-color: var(--color-success-border);
}
.alert-status.is-error {
  background: var(--color-error-bg);
  color: var(--color-error);
  border-color: var(--color-error-border);
}
.alert-status.is-warning {
  background: var(--color-warning-bg);
  color: var(--color-warning);
  border-color: var(--color-warning-border);
}
/* ---- Popup mapy - malá karta nad ilustráciou mapy (bod -> meno mesta + počet + odkaz).
   CELÁ karta je jeden `<a>` (Jozef, 6. 11. 14:20) - "Zobraziť ponuky" + šípka sú dekorácia
   v jednom riadku, nie samostatný podčiarknutý odkaz pod textom. */
.map-popup {
  display: block;
  background: var(--white-color);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-card-2);
  padding: 0.875rem 1rem;
  min-width: 11rem;
  text-decoration: none;
  transition: var(--trans-200);
}
.map-popup strong {
  display: block;
  color: var(--first-color);
  font-size: 0.9375rem;
}
.map-popup span {
  display: block;
  color: var(--mute);
  font-size: 0.8125rem;
  margin-top: 0.15rem;
}
.map-popup .cta {
  display: flex;
  align-items: center;
  gap: 0.3em;
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: var(--accent-text);
}
.map-popup .cta .i,
.map-popup .cta svg {
  width: 1em;
  height: 1em;
  transition: transform 0.2s ease;
}
.map-popup:hover,
.map-popup:focus-visible {
  box-shadow: var(--shadow-card-2), 0 0 0 2px var(--accent-color);
}
.map-popup:hover .cta .i,
.map-popup:focus-visible .cta .i,
.map-popup:hover .cta svg,
.map-popup:focus-visible .cta svg {
  transform: translateX(0.15em);
}
/* ---- Hlavička sekcie (eyebrow + h2) - zdieľaný vzor viacerých bydo widgetov (nie globálna
   trieda mimo widgetu - vždy `.widget_typ_1 .section-head`, aby ostal pravidlom "1 widget = 1 LESS"). */
/* Editor textu z jadra (App/js/tyrion-editor.js + Admin/js/editor5.js, App/css/tyrion-editor.css má vlastnú modrú) -
   farby a písmo bydo všade, kde je (účet realitky, pridanie inzerátu, odpoveď na recenziu). */
.t-rte {
  --t-accent: var(--first-color);
  --t-accent-dark: var(--first-color);
  --t-accent-soft: var(--purple-50);
  --t-line: var(--line-color);
  font-family: var(--second-font);
  border-radius: var(--radius-sm);
}
/* ---- Prepínač (segment) - jeden prvok pre celý web, bydoPrepinac() v _bydo.php (Jozef 11. 11.) ----
   Rovnako široké voľby, aktívna dlaždička `__thumb` sa posúva (--i = poradie aktívnej, --n = počet).
   Na farebnom podklade (úvod): biela dráha s tieňom, aktívna jemne fialová. --karta (v bielej karte: filter, okno filtra):
   sivá dráha, aktívna biela dlaždička. Pravidlo: dráha vystúpi z podkladu, aktívna voľba z dráhy. --plna = celá šírka. */
.bydo-seg {
  --n: 2;
  --i: 0;
  position: relative;
  display: inline-grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  padding: 0.25rem;
  background: var(--white-color);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card-1);
  isolation: isolate;
  /* sivá dráha a biela aktívna dlaždička s tieňom - úvod, filter výpisu aj okno filtra (Jozef 11. 11.) */
}
.bydo-seg__thumb {
  position: absolute;
  top: 0.25rem;
  bottom: 0.25rem;
  left: 0.25rem;
  width: calc((100% - 0.5rem) / var(--n));
  transform: translateX(calc(var(--i) * 100%));
  border-radius: calc(var(--radius-md) - 0.25rem);
  background: var(--purple-50);
  transition: transform 0.25s cubic-bezier(0.3, 0.7, 0.4, 1);
  z-index: -1;
}
.bydo-seg button {
  border: 0;
  background: none;
  padding: 0.5rem 1.125rem;
  font-family: var(--second-font);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--mute);
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.2s ease;
}
.bydo-seg button:hover {
  color: var(--first-color);
}
.bydo-seg button.is-active {
  color: var(--first-color);
}
.bydo-seg button:focus-visible {
  outline: 2px solid rgba(76, 14, 101, 0.35);
  outline-offset: -2px;
  border-radius: calc(var(--radius-md) - 0.25rem);
}
.bydo-seg--karta {
  background: var(--cream);
  box-shadow: none;
}
.bydo-seg--karta .bydo-seg__thumb {
  background: var(--white-color);
  box-shadow: var(--shadow-card-1);
}
.bydo-seg--plna {
  display: grid;
  width: auto;
}
.bydo-seg--plna button {
  padding: 0.625rem 0.5rem;
}
@media (prefers-reduced-motion: reduce) {
  .bydo-seg__thumb {
    transition: none;
  }
}
