/*
Theme Name: Colibri WP Child
Theme URI: https://colibriwp.com/
Description: Child theme for Colibri WP
Author: Your Name
Template: colibri-wp
Version: 1.0.0
*/

/* @import url("../colibri-wp/style.css"); */






/*START wp css tema*/

.topovanehore {
	margin-top: -50px;
}



/* ==========================================================================
   1. GLOBAL & CORE STYLES
   ========================================================================== */
:root {
  --borderColor: #FAFAFA;
}

body, body p {
 /* font-family: 'Open Sans', sans-serif;*/
	font-family: 'Coda';
}

body p {
  margin: 16px 0;
	
}

.content.colibri-main-content-single .main-section,
.content.colibri-main-content-archive .main-section {
  padding-top: 0;
}

.entry-content, .otazkadopytstlpy{
  /*width: 98%;*/
  /*max-width: 900px;*/
  margin: 0 auto;
}
.entry-content, .otazkadopytstlpy, .badge {
	font-family: 'Coda';
}

#primary .site-content .entry-content {
  margin: 0 auto;
}

.h-section-global-spacing {
  padding-top: 0px;
  padding-bottom: 90px;
}

/* Accessibility & Focus Reset */
*:hover {
  text-decoration: none !important;
  text-decoration-style: unset !important;
  text-decoration-skip-ink: none;
}

*:focus { 
  outline: 0 !important;
  box-shadow: 0 0 0 .2rem #fff, 0 0 0 .35rem #069 !important;
}

*:focus:not(:focus-visible) {
  outline: 0 !important;
  box-shadow: none !important;
}

/* Hidden Elements & Typography Utility */
#footer-hidden,
#copyright,
#Footers,
.colibri-post-category,
.h-blog-meta,
.h-logo__image,
.grecaptcha-badge,
.dgwt-jg-item-desc,
.jp-carousel-info,
.properties_pagination {
  display: none !important;
  visibility: hidden;
}

.site-title { color: #12354e; }
.site-description { color: #e9cb3b; }

.idamodifikacia, 
.contelt, 
.page, 
.typNehn,
.wpp_the_content p, 
.property-title, 
.entry-title, 
ul#property_stats.list, 
ul.wpp_property_stats.list {
  text-align: left;
}

.style-543 {
  clip-path: polygon(0 0, 100% 2vw, 100% 100%, 0 calc(100% - 2vw));
}

.style-553 {
  clip-path: polygon(0 0, 100% 2vw, 100% 100%, 0 calc(100% - 2vw));
  padding: 60px 30px;
}

.style-552 {
  clip-path: polygon(95% 2vw, 1vw 1vw, 0 100%, 100% calc(100% - 1vw));
}

/* ==========================================================================
   2. HEADER, NAVIGATION & COLIBRI OVERRIDES
   ========================================================================== */
.primary-navigation {
  z-index: 1000;
}

.primary-navigation .sub-menu {
  border: none;
}

.menu-separator,
.menu-separator a {
  background: none !important;
  color: #f79007 !important;
  cursor: default !important;
}

.h-blog-title h6 {
  color: #f79007 !important;
  text-align: left;
}

ul.sub-menu li:hover > a svg,
ul.sub-menu li:hover > a i {
  fill: #ffffff !important;
  color: #ffffff !important;
}

.h-menu-accordion > div > .colibri-menu-container > ul.colibri-menu li > ul {
  background: none;
}

#colibri .style-542 {
  background-position: 70% 0%;
}

#colibri .style-1153, 
#colibri .style-1138, 
#colibri .style-1161 {
  text-align: left;
}

#colibri .style-1124, 
#colibri .style-1172, 
#colibri .style-1254, 
#colibri .style-1619, 
#colibri .style-1648 {
  padding: 0 20px;
}

#colibri .style-local-13-c8-outer {
    padding: 20px;
}

#colibri .style-547 {
  box-shadow: none;
  z-index: 9;
  pointer-events: none !important;
}

#colibri .style-548, 
#colibri .style-1562 {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 999 !important;
}

#colibri .style-local-6762-c10-outer, 
.style-local-6762-c10-outer {
  pointer-events: none;
  z-index: 1;
}

#colibri .style-549 {
  position: relative;
  z-index: 99999;
}

#colibri .style-550 {
  height: auto;
  margin: -55px 0 0 0;
  z-index: 0;
  min-height: unset;
  padding-top: 0;
  padding-bottom: 0px;
}

#colibri .h-navigation_sticky.style-35 {
  background-color: rgba(0, 0, 0, 0.7);
}

#colibri .style-42 > div > .colibri-menu-container > ul.colibri-menu > li:hover > a, 
#colibri .style-42 > div > .colibri-menu-container > ul.colibri-menu > li.hover > a {
  color: #fff;
}

#colibri .style-42 > div > .colibri-menu-container > ul.colibri-menu li > ul {
  background-color: rgba(0, 0, 0, .1);
  background-image: none;
  margin-right: 5px;
  margin-left: 5px;
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.04);
}

#colibri .style-449 h6, 
#colibri .style-42 > div > .colibri-menu-container > ul.colibri-menu > li > a, 
#colibri .h-navigation_sticky .style-42 > div > .colibri-menu-container > ul.colibri-menu > li > a, 
#colibri .h-navigation_sticky.style-42 > div > .colibri-menu-container > ul.colibri-menu > li > a, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu > li > a, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu li > ul > li > a {
  color: #f79007;
}

#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu > li.current_page_item > a, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu > li.current_page_item > a:hover, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu li > ul > li.current_page_item > a, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu li > ul > li.current_page_item > a:hover {
  background: #f79007;
}

#colibri .style-42 > div > .colibri-menu-container > ul.colibri-menu li > a > svg, 
#colibri .style-42 > div > .colibri-menu-container > ul.colibri-menu li > a > .arrow-wrapper, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu li > a > svg, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu li > a > .arrow-wrapper,
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu li > ul li > a > svg, 
#colibri .style-50 > div > .colibri-menu-container > ul.colibri-menu li > ul li > a > .arrow-wrapper {
  padding-right: 5px;
  padding-left: 5px;
  color: #f79007;
}

#colibri .style-705 > div > .colibri-menu-container > ul.colibri-menu > li.current_page_item > a, 
#colibri .style-705 > div > .colibri-menu-container > ul.colibri-menu > li.current_page_item > a:hover,
#colibri .style-726 > div > .colibri-menu-container > ul.colibri-menu > li.current_page_item > a, 
#colibri .style-726 > div > .colibri-menu-container > ul.colibri-menu > li.current_page_item > a:hover {
  padding: 12px 0 12px 40px;
  border-top: 0 solid #808080;
  border-right: 0 solid #808080;
  border-bottom: 1px solid rgba(23, 37, 42, 0.2);
  border-left: 0 solid #808080;
  background-color: rgb(70, 112, 127);
  background-image: none;
  font-size: 14px;
  color: #FFFFFF;
}

/* ==========================================================================
   3. REAL ESTATE PROPERTIES & LISTINGS (WP PROPERTY)
   ========================================================================== */
.all-properties {
  display: grid;
}

.lokul {
  width: 100%;
  display: inline-block;
  font-size: 0.85rem !important;
  color: #4a5568 !important;
  margin-bottom: 4px !important;
}

.property_title {
  display: inline-block;
  position: relative;
  margin-bottom: 0;
  padding: 2px 2px 0 5px;
  font-weight: 400;
  color: #12354e;
  line-height: 1;
  max-width: 90%; 
  font-size: 110%;
  transition: all .3s ease-out;
}

.property_title:hover {
  color: #f79007;
  text-decoration: none;
}

.property_image {
  display: inline-block;
  float: left;
  max-width: 10%;
}

.property-title {
  font-size: 1.3rem !important;
font-family: 'Coda';
  font-weight: 400 !important;
 /* border-bottom: 0;*/
  width: 100%;
  display: inline-block;
  color: green;
}

.building_title_wrapper {
margin: 0 10px;
}

.AktNEH, .AktNEHhore {
color: green;
	font-weight: 400;
	font-family: 'Coda';
	text-transform:uppercase;
}

.AktNEH {
  float: left;
  text-align: left;
}

.AktNEHhore {
	float:right;
	margin-right: 5px;
}

.nahoda {
	float:left;
	font-family: 'Coda';
	margin-left: 5px;
}

.NEAktNEH, .RezNEH, .neaktnehndole {
  font-weight: 400;
	font-family: 'Coda';
  float: left;
  text-align: left;
}

b.NEAktNEH, .neaktnehndole,
.byt_zruseny_container .property-title,
.dom_zruseny_container .property-title,
.pozemok_zruseny_container .property-title,
.kancelaria_zrusena_container .property-title,
.nebytovy_priestor_zruseny_container .property-title,
.rekreacne_domy_zrusene_container .property-title {
  color: #ad3e0e;
  font-weight: 400;
	font-family: 'Coda';
	margin-left: 5px;
}

.neakt {
  z-index: 999;
  color: rgba(247, 144, 7, 0.8);
  position: absolute;
  bottom: 15%;
  right: 20px;
  font-size: 14px;
  background: white;
  padding: 2px;
  border-radius: 5px;
	font-family: 'Coda';
}

.wpp_overview_left_column {
  display: table;
  line-height: 1;
  margin: 0;
}

.wpp_overview_right_column {
  display: inline-block;
  vertical-align: bottom;
  bottom: 1px;
  position: absolute;
  right: 1px;
  background-color: white;
  padding: 0 0 0 5px;
  border-radius: 5px;
}

.property_div {
  background-color: transparent;
}

.wpp_row_view .property_div div.wpp_overview_right_column, 
.wpp_row_view .property_div div.wpp_overview_left_column {
  vertical-align: top;
}

.wpp_row_view .property_image img {
  border: 0;
  margin: 0 10px 0 0;
}

.wpp_row_view .property_overview_thumb {
  color: black;
  display: block;
  text-align: left;
  text-decoration: none;
  vertical-align: middle;
}

.wpp_row_view div.property_div:hover {
  border-image-slice: 0;
  border-radius: 5px;
  cursor: pointer;
  border-color: #f79007;
  transition: .3s linear;
  background: rgba(255,255,255,.3);
}

.wpp_the_content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;  
}

.wpp_the_content ul li {
  margin: 0 0 0 25px;
  text-align: left;
}

.wpp_the_content p, .idamodifikacia, .nahodneneh p, .property_stats .attribute {
  margin-left: 10px;
  margin-right: 10px;
	    font-weight: inherit;
}

ul.property_stats {
  padding-left: 0;
}

ul#property_stats.list li.alt, 
ul.wpp_property_stats.list li.alt, 
ul#property_stats.list li, 
ul.wpp_property_stats.list li {
  /*padding: 5px;*/
}

ul#property_stats.list li .attribute, 
ul.wpp_property_stats.list li .attribute {
  padding-left: 0px;
  width: 110px;
	    font-weight: inherit;
}

.predaj, .najom { color: green; }
.kupa, .najomhl { color: #ad3e0e; }

/* Grid Layout Pre Prehľad Nehnuteľností */
.wpp_row_view .all-properties {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
  gap: 20px !important;
  max-width: 1200px !important;
  margin: 0px auto !important;
  width: 100% !important;
}

.wpp_row_view div.property_div,
.wpp_row_view .property_div,
.wpp_row_view .wpp_property_object_structure,
div[class*="property_div"] {
  display: flex !important;
  flex-direction: column !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
  overflow: hidden !important;
  position: relative !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  transition: all 0.25s ease-in-out !important;
  text-align: left;
  box-sizing: border-box !important;
  cursor: pointer !important;
}

.wpp_row_view .property_div:hover,
.wpp_row_view .wpp_property_object_structure:hover,
div[class*="property_div"]:hover {
  border-color: #f79007 !important;
  box-shadow: 0 8px 20px rgba(247, 144, 7, 0.8) !important;
  transform: translateY(-4px) !important;
}

.wpp_row_view .property_image,
.wpp_row_view div.property_div .property_image,
.wpp_row_view div.property_div .property_image a,
.wpp_property_image_wrapper {
  order: 1 !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 290px !important;
  float: none !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  border-radius: 7px;
}

.wpp_row_view .property_image img,
.wpp_row_view div.property_div img,
.wpp_property_image_wrapper img {
  width: 100% !important;
  max-width: 100% !important;
  height: 240px !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto !important;
}

.wpp_row_view .property_div:hover img,
div[class*="property_div"]:hover img {
  transform: scale(1.02) !important;
  transition: transform 0.25s ease-in-out !important;
}

.wpp_row_view .property_title {
  order: 2 !important;
  font-size: 0.95rem !important;
  font-weight: 400 !important;
  color: #12354e !important;
  padding: 10px 12px 5px 12px !important;
  margin: 0 !important;
  border: none !important;
  max-width: 100% !important;
  line-height: 1.35 !important;
  height: auto !important;
  max-height: none !important;
  min-height: 2.7em !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.property_title::after {
  display: none !important;
}

.wpp_row_view .wpp_overview_left_column {
  order: 3 !important;
  padding: 5px 12px 12px 12px !important;
  width: 100% !important;
  display: block !important;
  clear: both !important;
  position: relative !important;
  float: none !important;
}

.wpp_row_view .wpp_overview_right_column {
  order: 4 !important;
  position: static !important;
  margin-top: auto !important;
  padding: 10px 12px !important;
  background: #f8fafc !important;
  border-top: 1px solid #edf2f7 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  border-radius: 0 !important;
}

.property_price {
  font-size: 1.2rem !important;
  color: #f79007 !important;
}

.wpp_row_view .property_div a {
  position: static !important;
}

.wpp_row_view .property_div a::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 10 !important;
}

/* Custom Grid Pre Šablónu */
.property-overview-page, 
.archive .site-main,
.theme-property-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 15px !important;
  justify-content: flex-start !important;
}

.property-overview-page > div,
.theme-property-card,
.property-item {
  flex: 0 0 calc(25% - 12px) !important;
  max-width: calc(25% - 12px) !important;
  box-sizing: border-box !important;
  border: 2px solid #e07a2a !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  padding: 10px !important;
  overflow: hidden !important;
}

.property-item img,
.theme-property-card img {
  width: 100% !important;
  height: 180px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
}

/* Specific Image Fix */
img[src*="reality-kosice-2-scaled.png"] {
  max-width: 350px !important;
  height: auto !important;
  display: block !important;
  margin: 0 auto !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
  transition: transform 0.2s ease !important;
}

img[src*="reality-kosice-2-scaled.png"]:hover {
  transform: scale(1.02);
}

/* ==========================================================================
   4. BUTTONS & UI COMPONENTS
   ========================================================================== */
.btn {
  padding: 12px 24px;
  border: none;
  border-radius: 6px;
  font-weight: bold;
  font-size: 10pt;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.2s;
}

.btn-primary { background-color: var(--primary); color: white; }
.btn-primary:hover { background-color: #2c5282; }

.btn-secondary { background-color: #38a169; color: white; }
.btn-secondary:hover { background-color: #2f855a; }

.pridat, .pridatdopyt {
  position: relative;
  color: #12354e;
  font-weight: bold;
  font-size: 84%;
  width: 46%;
  vertical-align: top;
  min-height: 50px;
  line-height: 1;
  text-decoration: none;
  transition: 1s ease;
  padding: 5px 0 0 0;
  display: inline-block;
  text-align: center;
  margin: 0 30px 0 0;
  max-width: 400px;
  border: 2px solid #f79007;
  background: transparent;
  border-radius: 5px;
}

.pridatdopyt {
  color: #e9cb3b;
  margin: 0;
}

.pridatdopytakt, .pridatponukuakt {
  cursor: not-allowed;
  pointer-events: all !important;
  animation: none;
  border-color: green;
  background: none;
  color: green;
}

.bipridat, .bipridatdopyt {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  color: #12354e;
  font-size: 70%;
}

.pridop {
  text-align: center;
  display: flex;
  margin: 0 auto;
  width: 100%;
  padding: 0;
  vertical-align: top;
  align-content: center;
  justify-content: center;
}

.bdpp {
  text-align: center;
  margin: 30px 0;
  font-size: 120%;
}

.bdpp a, a.pridat, a.pridatdopyt {
  text-align: center;
 /* font-family: 'Open Sans', sans-serif;*/
/*  font-weight: 600;*/
  text-transform: uppercase;
  font-size: 12px;
  line-height: 1;
  letter-spacing: -1px;
  color: #f79007;
  border: 2px solid #f79007;
  border-radius: 5px;
  padding: 12px 24px;
  box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.5);
  transition: .5s;
}

.bdpp a {
  background-color: rgba(255,255,255,.8);
  position: relative !important;
  pointer-events: auto !important;
}

.bdpp a:hover, a.pridat:hover, a.pridatdopyt:hover {
  color: rgb(70, 112, 127);
  border-color: rgb(70, 112, 127);
}

.pridatponukutl, .pridatdopyttl {
  color: #f79007;
}

.hladameNEHN a, .pridajponuku {
  color: #12354e;
  text-align: center;
}

.zdarma a { color: #ad3e0e; }

a.TelC, .otazkadopyt a.TelC {
  display: table;
  margin: 0px auto;
}

a.TelC img, a.TelCr img {
  max-height: 22px;
  margin-top: 5px;
  vertical-align: top;
}

.type-property a.TelCr { float: right; }

.hladame .TelC, 
.post-13 div a.TelC, 
.post-176 div a.TelC {
  width: 100%;
  display: inline-block;
  text-align: center;
}

/* Element Plugins Utility */
.picpoints-wrapper,
div[id^="picpoints-"] {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 100% !important;
}

.picpoints-wrapper svg,
.picpoints-wrapper canvas,
.picpoints-wrapper img {
  max-width: 100% !important;
  height: auto !important;
  margin: 0 auto !important;
}

.post-272 {
  white-space: pre-line !important;
  padding: 0 10px;
}

.asl_w_container,
#ajaxsearchlite1 {
  margin: 10px auto !important;
  z-index: 1;
  position: relative;
  background: transparent;
  pointer-events: auto !important;
}

.hladame, .klucoves {
  width: 70%;
  padding: 30px;
  font-style: italic;
  font-size: 80%;
  text-align: center;
  background: rgba(255, 255, 255, .5);
  border: dashed 1px green;
  margin: 0 auto 30px auto;
  border-radius: 5px;
}

.ipridaj {
  display: block;
  margin: 0 auto;
  text-align: center;
}

.element-is-sticky {
  background: rgba(255,255,255,.7);
  transition: 1s linear;
}

.riadok {
  float: left;
  margin-right: 5px;
  vertical-align: bottom;
}

.hladameNEHN { text-align: center; }

/* Text Carousel Animation */
.flip5 {
  list-style-type: none;
  margin-bottom: 250px;
  padding: 0;
  animation: flip5 9s cubic-bezier(0.23, 1, 0.32, 1.2) infinite;
}

.wordCarousel span {
  overflow: hidden;
  position: relative;
  display: block;
  float: none;
  height: 25px;
  padding-top: 1px;
}

.wordCarousel span li {
  padding: 0 10px;
  height: 45px;
  margin-bottom: 45px;
  display: block;
  overflow: hidden;
}

.flip2 { animation: flip2 1s cubic-bezier(0.23, 1, 0.32, 1.2) infinite; }
.flip3 { animation: flip3 3s cubic-bezier(0.23, 1, 0.32, 1.2) infinite; }
.flip4 { animation: flip4 6s cubic-bezier(0.23, 1, 0.32, 1.2) infinite; }

@keyframes flip2 {
  0% { margin-top: -180px; }
  5%, 50% { margin-top: -90px; }
  55%, 99.99% { margin-top: 0px; }
  100% { margin-top: -180px; }
}

@keyframes flip3 {
  0% { margin-top: -270px; }
  5%, 33% { margin-top: -180px; }
  38%, 66% { margin-top: -90px; }
  71%, 99.99% { margin-top: 0px; }
  100% { margin-top: -270px; }
}

@keyframes flip4 {
  0% { margin-top: -360px; }
  5%, 25% { margin-top: -270px; }
  30%, 50% { margin-top: -180px; }
  55%, 75% { margin-top: -90px; }
  80%, 99.99% { margin-top: 0px; }
  100% { margin-top: -360px; }
}

@keyframes flip5 {
  0% { margin-top: -450px; }
  5%, 20% { margin-top: -360px; }
  25%, 40% { margin-top: -270px; }
  45%, 60% { margin-top: -180px; }
  65%, 80% { margin-top: -90px; }
  85%, 99.99% { margin-top: 0px; }
  100% { margin-top: -450px; }
}

.chatux { color: #0e6bad; }
.pozemokx { color: #4ead0e; }
.domx { color: #ad3e0e; }
.bytx { color: #93ad0e; }
.nehnx { color: #12354e; }

/* ==========================================================================
   5. FORMS & CONTACT SECTIONS
   ========================================================================== */
.card {
  background: var(--card-bg);
  border-radius: 8px;
  box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1);
  padding: 25px;
  margin-bottom: 25px;
  border: 1px solid var(--border-color);
}

.card-title {
  font-size: 13pt;
  font-weight: bold;
  color: var(--primary);
  border-bottom: 2px solid var(--primary-light);
  padding-bottom: 8px;
  margin-bottom: 18px;
  text-transform: uppercase;
}

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}

.form-group {
  display: flex;
  flex-direction: column;
  margin-bottom: 12px;
}

.form-group.full-width {
  grid-column: 1 / -1;
}

label {
  font-size: 9pt;
  font-weight: bold;
  color: #4a5568;
  margin-bottom: 5px;
  text-transform: uppercase;
}

input[type="text"], 
input[type="email"], 
input[type="date"], 
select, 
textarea {
  padding: 10px;
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  font-size: 10pt;
  transition: border-color 0.2s;
}

input[type="radio"], 
input[type="checkbox"] {
  padding: 0 !important;
}

input:focus, 
select:focus, 
textarea:focus {
  outline: none;
  border-color: var(--primary-light);
  box-shadow: 0 0 0 3px rgba(66, 153, 225, 0.2);
}

.radio-option {
  border: 1px solid var(--border-color);
  border-radius: 6px;
  padding: 12px;
  margin-bottom: 10px;
  cursor: pointer;
  transition: background-color 0.2s;
  display: block;
}

.radio-option:hover {
  background-color: #f8fafc;
}

.radio-header {
  display: flex;
  align-items: center;
  font-weight: bold;
  color: var(--primary);
}

.radio-header input {
  margin-right: 10px;
}

.radio-desc {
  font-size: 9pt;
  color: #718096;
  margin-top: 5px;
  margin-left: 23px;
}

.actions-bar {
  display: block;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 20px;
}

.actions-bar .wpcf7-submit {
  max-width: 80%;
}

.instructions-box {
  background-color: #ebf8ff;
  border-left: 4px solid var(--primary-light);
  padding: 15px;
  margin-top: 20px;
  border-radius: 4px;
  font-size: 9.5pt;
}

.instructions-box h4 {
  margin: 0 0 8px 0;
  color: var(--primary);
}

.success-banner {
  display: none;
  background-color: #c6f6d5;
  color: #22543d;
  padding: 12px;
  border-radius: 6px;
  margin-bottom: 15px;
  text-align: center;
  font-weight: bold;
}

.wpcf7-spinner, 
.wpcf7-list-item {
  margin: 0 auto 20px auto;
}

.wpcf7-submit {
  display: block;
  width: 100%;
  margin: 0 auto;
  color: #f79007;
  border-radius: 5px;
  min-height: 40px;
  max-width: 300px;
  transition: all .3s ease-out;
}

.wpcf7-submit:hover {
  cursor: pointer;
  color: green;
  border-color: green;
}

.wpcf7, 
.wpcf7-form, 
.otazkadopyt, 
.codedropz-upload-wrapper {
  text-align: center;
  font-size: 80%;
  max-width: 450px;
  margin: 0 auto;
}

.otazkadopyt {
  margin-top: 80px;
}

.wpcf7-form p label input, 
.wpcf7-form p textarea, 
.codedropz-upload-handler {
  margin: 5px 0;
  border: 2px solid #f79007;
  background: transparent;
  border-radius: 5px;
  transition: all .5s ease-out;
  max-width: 400px;
  padding: 10px;
}

.wpcf7-form p textarea {
  line-height: 15px;
}

.wpcf7-form p label input:hover, 
.wpcf7-form p textarea:hover, 
.pridat:hover, 
.pridatdopyt:hover, 
.codedropz-upload-handler:hover {
  color: green;
  background: rgba(255,255,255,.3);
  border-color: green;
  background-color: rgba(247, 144, 7, 0.1) !important;
  transition: transform 0.2s ease;
}

.wpcf7-acceptance input {
  border: 0 !important;
  background: none;
}

/* Contact Form Container Override */
.wpp_property_object_structure, 
form.wpcf7-form, 
.property-contact-form {
  max-width: 550px;
  margin: 30px auto;
  padding: 30px 25px;
  border: 1px solid #f79007;
  border-radius: 10px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.wpp_property_object_structure:hover, 
form.wpcf7-form:hover, 
.property-contact-form:hover {
  box-shadow: 0 8px 20px rgba(247, 144, 7, 0.8);
}

strong {
  font-weight: 400;
	text-decoration: underline solid #f79007;
}

#colibri .style-2637 p, #colibri .style-2638 p, #colibri .style-2639 p, #colibri .style-2640 p, #colibri .style-2641 p {
  font-weight: normal;
}

.topovanenehnutelnosti {
  padding: 0 0 0 5px;
}

form strong, 
.wpp_property_object_structure strong {
  font-size: 1.3rem !important;
  color: #f79007 !important;
  display: inline-block !important;
  margin: 8px 0 !important;
}

form label, 
.wpp_property_object_structure label {
  font-weight: 400 !important;
  color: #12354e !important;
  margin-bottom: 6px !important;
  display: block !important;
  font-size: 0.95rem !important;
  text-align: left !important;
}

form input[type="text"], 
form input[type="email"], 
form input[type="tel"], 
form textarea,
.wpp_property_object_structure input[type="text"], 
.wpp_property_object_structure input[type="email"], 
.wpp_property_object_structure textarea {
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 12px 15px !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 6px !important;
  background-color: #f8fafc !important;
  font-size: 0.95rem !important;
  color: #1e293b !important;
  transition: all 0.2s ease-in-out !important;
  outline: none !important;
  margin-bottom: 15px !important;
}

form input[type="text"]:focus, 
form input[type="email"]:focus, 
form input[type="tel"]:focus, 
form textarea:focus {
  border-color: #f79007 !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(247, 144, 7, 0.15) !important;
}

form input[type="checkbox"] {
  transform: scale(1.1) !important;
  margin-right: 8px !important;
  cursor: pointer !important;
}

form input[type="submit"], 
.wpp_property_object_structure input[type="submit"], 
#colibri .style-1172 .h-contact-form-shortcode [type="submit"], 
#colibri .style-1172 .h-contact-form-shortcode .forminator-row .forminator-col .forminator-button-submit {
  text-align: center;
  background-color: #f79007;
  background-image: none;
 /* font-family: Open Sans;*/
  font-weight: 400;
  text-transform: uppercase;
  font-size: 20px;
  line-height: 1;
  letter-spacing: -1px;
  color: #fff;
  border: 2px solid #f79007;
  border-radius: 5px;
  padding: 15px 30px;
  box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.5);
}

form input[type="submit"]:hover, 
.wpp_property_object_structure input[type="submit"]:hover, 
#colibri .style-1172 .h-contact-form-shortcode [type="submit"]:hover, 
#colibri .style-1172 .h-contact-form-shortcode .forminator-row .forminator-col .forminator-button-submit:hover, 
#colibri .style-1254 .h-contact-form-shortcode [type="submit"]:hover, 
#colibri .style-1254 .h-contact-form-shortcode .forminator-row .forminator-col .forminator-button-submit:hover, 
#colibri .style-1124 .h-contact-form-shortcode [type="submit"]:hover, 
#colibri .style-1124 .h-contact-form-shortcode .forminator-row .forminator-col .forminator-button-submit:hover {
  background-color: rgb(70, 112, 127);
  border-color: rgb(70, 112, 127);
  color: #fff;
}

.wpp_property_contact_form,
div[class*="contact_form"] {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08) !important;
  padding: 30px 20px !important;
  max-width: 550px !important;
  margin: 30px auto !important;
  text-align: center !important;
}

.wpp_property_contact_form p,
.wpp_property_contact_form span,
div[class*="contact_form"] p {
  background-color: transparent !important;
  color: #2d3748 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  margin-bottom: 12px !important;
}

.wpp_property_contact_form h3,
.wpp_property_contact_form strong {
  font-size: 20px !important;
  color: #1a202c !important;
  display: block !important;
  margin-bottom: 15px !important;
}

.wpp_property_contact_form a[href^="tel:"],
a[href*="0918"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #f79007 !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: bold !important;
  padding: 10px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(247, 144, 7, 0.3) !important;
  transition: all 0.2s ease-in-out !important;
  margin: 10px 0 !important;
}

.wpp_property_contact_form a[href^="tel:"]:hover,
a[href*="0918"]:hover {
  background-color: #e08200 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(247, 144, 7, 0.4) !important;
}

.wpp_property_contact_form input[type="text"],
.wpp_property_contact_form input[type="email"],
.wpp_property_contact_form input[type="tel"],
.wpp_property_contact_form textarea {
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  background-color: #f8fafc !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.wpp_property_contact_form input:focus,
.wpp_property_contact_form textarea:focus {
  border-color: #f79007 !important;
  background-color: #ffffff !important;
  outline: none !important;
}

.otazkadopytstlpy {
  display: flex;
  flex-wrap: wrap;
  margin: 30px auto;
  background: #fff;
}

.lavystlp {
  flex: 1;
  min-width: 300px;
  background: transparent;
  color: #000;
  padding: 0 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.lavystlp1 {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 14px;
  margin-bottom: 20px;
}

.lavystlph {
  color: #000;
  margin-bottom: 25px;
  font-size: 20px;
}

.telCstlp {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.lavystlptel {
  width: 50px;
  height: 50px;
  border: 2px solid #f79007;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 5px;
}

.lavystlpspan {
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  font-family: sans-serif;
  margin: 0 20px 0 0;
}

.lavystlpformular {
  margin-top: 30px;
  font-size: 18px;
  color: #000;
}

.pravystlp {
  background-color: transparent !important;
  flex: 1.2;
  min-width: 320px;
  padding: 0 10px;
  background: #fff;
}

#wpcf7-f19009-p19015-o1,
.page-id-267 form.wpcf7-form {
  max-width: 700px !important;
  width: 100% !important;
}

#wpcf7-f19009-p19015-o1 > form,
.page-id-267 .wpcf7,
.page-id-267 .wpcf7-form {
  width: 100% !important;
  max-width: 100% !important;
  text-align: left;
}

#wpcf7-f19009-p19015-o1 > form > div.container > div.actions-bar > p > input {
  width: 100% !important;
  max-width: 100% !important;
}

/* ==========================================================================
   6. PRINT MEDIA STYLES
   ========================================================================== */
@media print {
  body { 
    background-color: #fff; 
    padding: 0; 
  }
  
  .property_div, 
  .h-section-grid-container, 
  .h-section-boxed-container {
    max-width: none;
    width: 100%;
  }
  
  .property_image {
    width: 100px;
    height: 100px;
  }
  
  .property_title {
    font-size: 16px;
  }
  
  .card { 
    box-shadow: none; 
    border: 1px solid #ccc; 
    margin-bottom: 15px; 
    padding: 15px; 
  }
  
  input, 
  textarea { 
    border: none !important; 
    border-bottom: 1px solid #000 !important; 
    border-radius: 0; 
  }

  .no-print, 
  .grecaptcha-badge, 
  .page-header, 
  .bdpp, 
  .pridop, 
  .otazkadopyt, 
  .hladame, 
  .klucoves, 
  .asl_w_container, 
  .page-footer,
  .actions-bar, 
  .instructions-box, 
  .header p, 
  .success-banner,
	.floating-action-menu,
	.wpcf7_hp_field,
	.wpcf7-response-output {
    display: none !important;
    visibility: hidden !important;
  }
}


/* ==========================================================================
   7. FLOATING ACTION MENU (+) - FIXED BOTTOM & SLIDE UP WITH 'X' ROTATION
   ========================================================================== */
.floating-action-menu {
  position: fixed !important;
  bottom: 20px !important;
  left: 20px !important;
  z-index: 9999999 !important;
  width: 60px !important;
  height: 60px !important;
}

.fam-toggle-btn {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 55px !important;
  height: 55px !important;
  border-radius: 50% !important;
  background-color: #f79007 !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 32px !important;
  font-weight: bold !important;
  line-height: 1 !important;
  z-index: 2 !important;
  transition: background-color 0.3s ease, transform 0.3s ease !important;
}

.fam-toggle-btn span {
  display: inline-block !important;
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

.fam-toggle-btn:hover {
  background-color: #e07b00 !important;
}

.floating-action-menu.active .fam-toggle-btn {
  background-color: #d9534f !important;
}

.floating-action-menu.active .fam-toggle-btn span {
  transform: rotate(135deg) !important;
}

.fam-options {
  position: absolute !important;
  bottom: 65px !important;
  left: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.fam-item {
  background-color: #ffffff !important;
  color: #333333 !important;
  text-decoration: none !important;
  padding: 10px 16px !important;
  border-radius: 8px !important;
  font-weight: bold !important;
  font-size: 14px !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
  border-left: 4px solid #f79007 !important;
  
  opacity: 0 !important;
  transform: translateY(30px) !important;
  transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.floating-action-menu.active .fam-options {
  pointer-events: auto !important;
}

.floating-action-menu.active .fam-item {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.floating-action-menu.active .fam-item:nth-child(1) { transition-delay: 0.05s !important; }
.floating-action-menu.active .fam-item:nth-child(2) { transition-delay: 0s !important; }

.fam-item:hover {
  background-color: #f8f8f8 !important;
  transform: translateX(4px) !important;
  color: #f79007 !important;
}



/* ==========================================================================
   8. RESPONSIVE MEDIA QUERIES
   ========================================================================== */





/* keneh */
@keyframes keneh {
    0% {
        transform: scale(1.30) translate(0%, 0%);
    }
    6% {
        transform: scale(1.20) translate(-6%, 0%);
    }
    35% {
        transform: scale(1.10) translate(2%, 0%);
    }
    70% {
        transform: scale(1.32) translate(-5.5%, 0%);
    }
    88% {
        transform: scale(1.11) translate(-1%, 0%);
    }
    100% {
        transform: scale(1.30) translate(0%, 0%);
    }
}




@media (max-width: 600px) {
	
#background-video-6767-h24-mobile,
    .cp-video-bg.visible {
        animation: keneh 120s ease-in-out infinite !important;
        will-change: transform;
        transform-origin: center center !important;
    }
	
	
	
h3.dalsievnasejponuke	 { 
 font-size: 90%;
}
	
	
	
	
  .form-grid { 
    grid-template-columns: 1fr; 
  }
}

@media only screen and (max-width: 576px) {
  .lokul { font-size: 80%; }    
  .property_title { max-width: 70%; font-size: 100%; }
  .property_image { max-width: 30%; }
    
  .bdpp {
    margin: -150px 0 0 0;
    position: relative;
  }
  
  .topovanehore .bdpp {
    margin: -50px 0 0 0;
    position: relative;
  }  
	
	 .bdpphore {
    margin: -10px 0 0 0;
    position: relative;
  }
    
  .bdpp a {
    margin: 0 5px;
    padding: 10px;
    font-size: 80%;
    border-radius: 5px;
    z-index: 9;
    position: relative;
    background: rgba(255, 255, 255, .5);
  }
    
  .asl_w_container {
    width: 96%;
    max-width: 365px;
	margin: 20px auto !important;
  }

  .pridat, .pridatdopyt {
    margin: 0 2px;
    font-size: 77%;
    padding: 5px 0 0 0;
    max-height: 75px;
  } 

  .pridatdopyt { margin: 0 0 0 10px; }

  .property-overview-page > div,
  .theme-property-card,
  .property-item {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

@media only screen and (min-width: 576px) {
  .lokul { font-size: 81%; }  
  .property_title { max-width: 80%; font-size: 90%; }
  .property_image { max-width: 20%; }
  
  a.TelC img { max-height: 25px; }
  .bdpp { text-align: center; }
  .bdpp a { 
    margin: 0 10px;
    font-size: 90%;
  }  

  .post-thumbnail, 
  .entry-content .wp-audio-shortcode, 
  .default-max-width, 
  .wp-block-search, 
  hr.wp-block-separator, 
  .author-bio, 
  .search-form {
    max-width: 842px;
  }
}






/* Mobil */
@media (max-width: 768px) {
    .wpp_row_view, 
    .wpp_property_list, 
    .wpp_property_object_structure {
       padding-left: 0px;
        padding-right: 0px;
			/*  padding-left: 15px;
        padding-right: 15px;*/
        box-sizing: border-box;
    }

    .wpp_row_view div.property_div {
        border: 2px solid #f79007;
        border-radius: 10px;
        box-shadow: 0 4px 15px rgba(247, 144, 7, 0.15);
        margin-bottom: 25px;
        background: #ffffff;
        overflow: hidden;
        width: 100%;
    }

    .wpp_row_view div.property_div img {
        height: 200px;
    }

    .wpp_row_view .property_price {
        color: #f79007;
        font-weight: 700;
    }

}

@media (max-width: 768px) {
  .wpp_row_view, 
  .wpp_property_list, 
  .wpp_property_object_structure {
       padding-left: 0px !important;
    padding-right: 0px !important;
		/* padding-left: 15px !important;
    padding-right: 15px !important;*/
    box-sizing: border-box !important;
  }

  .wpp_row_view div.property_div {
    border: 2px solid #f79007 !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 15px rgba(247, 144, 7, 0.15) !important;
    margin-bottom: 25px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    width: 100% !important;
  }

  .wpp_row_view div.property_div img {
    height: 200px !important;
  }

  .wpp_row_view .property_price {
    color: #f79007 !important;
    font-weight: 400 !important;
  }
}

@media only screen and (min-width: 992px) {
  .lokul { font-size: 83%; }  
  .property_title { max-width: 120%; }
  .property_image { max-width: 10%; }

  .property-overview-page > div,
  .theme-property-card,
  .property-item {
    flex: 0 0 calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
  }
}

@media only screen and (min-width: 1024px) {
  #colibri .style-541 {
    margin-top: -60px;
  }	

  .lokul { font-size: 83%; }  
  .property_title { max-width: 85%; }
  .property_image { max-width: 10%; }
  .asl_w_container { width: 58%; max-width: 400px; }  
}

@media only screen and (min-width: 1081px) {
  .lokul { font-size: 84%; }  
  .property_title { max-width: 90%; }
  .property_image { max-width: 10%; }

  .widget-area, 
  .pagination, 
  .site-footer, 
  .site-header, 
  .alignwide {
    max-width: 980px;
  }
}

@media only screen and (min-width: 1220px) {
  .asl_w_container { width: 78%; max-width: 500px; margin: 15px auto;} 
  .lokul { font-size: 85%; }  
  .property_title { max-width: 85%; font-size: 130%; }
  .property_image { max-width: 15%; }
  .pridat, .pridatdopyt { max-width: 235px; }
  .bdpp a { font-size: 95%; } 
}

@media only screen and (min-width: 1481px) {
  .lokul { font-size: 110%; }
  .property_title { max-width: 85%; font-size: 140%; }
  .flip5 { padding: 0; } 
  .bdpp a { font-size: 100%; padding: 10px; } 

  .post-thumbnail, 
  .entry-content .wp-audio-shortcode {
    max-width: 880px;
  }
}











/* ==========================================================================
   REAL ESTATE GRID - CERNAN REALITY STYLE (FIXED)
   ========================================================================== */

/* Kontejner pre všetky karty */
.wpp_row_view .all-properties {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap: 20px !important;
    padding: 0px 0 !important;
}

/* Samotná karta nehnuteľnosti - plné pokrytie obrázkom */
.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    /*height: 340px !important;*/
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15) !important;
    cursor: pointer !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    background-color: transparent !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    border: none !important;
}

.wpp_row_view div.property_div:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3) !important;
}

/* Obrázok na pozadí karty - rozťiahnutý na celú kartu */
.wpp_row_view .property_image,
.wpp_row_view div.property_div .property_image {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1 !important;
    max-width: 100% !important;
    float: none !important;
}

.wpp_row_view .property_image img,
.wpp_row_view div.property_div img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
}

/* Stmavujúci filter cez celý obrázok pre lepšiu čitateľnosť textu */
.wpp_row_view div.property_div::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 40%, rgba(0,0,0,0.75) 100%) !important;
    z-index: 2 !important;
    pointer-events: none !important;
}

/* ==========================================================================
   HORNÁ ČASŤ (ODZNAKY A CENA)
   ========================================================================== */
.property_overlay_top {
    position: relative !important;
    z-index: 3 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    padding: 12px !important;
    gap: 10px !important;
}

/* Skupina odznakov vľavo */
.left-badges {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    max-width: 65% !important;
}

/* Štýlovanie odznakov */
.left-badges .badge {
    font-size: 12px;
    font-weight: 400 !important;
    padding: 4px 4px 3px 4px !important;
    border-radius: 4px !important;
    color: #ffffff !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3) !important;
}

.badge-predaj { background-color: #d9534f !important; }
.badge-kupa   { background-color: #f0ad4e !important; }
.badge-najom  { background-color: #0275d8 !important; }

.badge-dark { 
    background-color: rgba(0, 0, 0, 0.75) !important; 
    backdrop-filter: blur(2px) !important;
}

.badge-rezervovane { background-color: #f0ad4e !important; }
.badge-zrusene     { background-color: #c2410c !important; }

/* Modrá pilulka pre cenu vpravo */
.property_price_badge {
    background-color: #0088cc !important;
    color: #ffffff !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    padding: 6px 12px 4px 12px !important;
    border-radius: 15px !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3) !important;
    white-space: nowrap !important;
}

/* ==========================================================================
   SPODNÁ ČASŤ (NÁZOV NEHNUTEĽNOSTI) - BEZ VEĽKÉHO ČIERNEHO BOXU
   ========================================================================== */
.property_overlay_bottom {
    position: relative !important;
    z-index: 3 !important;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.25), transparent) !important;
    padding: 20px 15px 12px 15px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.property_overlay_bottom .property_title,
.wpp_row_view .property_title {
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    background: transparent !important;
    border: none !important;
    min-height: unset !important;
}

/* Prepis starých stĺpcov, aby nevytvárali čierne pozadie */
.wpp_row_view .wpp_overview_left_column,
.wpp_row_view .wpp_overview_right_column {
    display: none !important;
}

/* ==========================================================================
   RESPONZIVITA FOR MOBILES
   ========================================================================== */
@media (max-width: 480px) {
    .wpp_row_view .all-properties {
        grid-template-columns: 1fr !important;
    }
    .wpp_row_view div.property_div {
        height: 300px !important;
    }
}




/* ==========================================================================
   FINÁLNA OPRAVA: CERNAN REALITY LOOK (BEZ PRÁZDNEHO PRIESTORU)
   ========================================================================== */

/* 1. Hlavná karta - nastavenie presnej výšky a pozicionovania */
.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
   /* height: 320px !important;*/
    border-radius: 12px !important;
    overflow: hidden !important;
    background-color: transparent !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
    border: none !important;
}

/* 2. Rozťiahnutie obrázka na 100% výšky karty */
.wpp_row_view .property_image,
.wpp_row_view div.property_div .property_image {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1 !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.wpp_row_view .property_image img,
.wpp_row_view div.property_div img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
}

/* 3. Vypnutie starého obsahu pod obrázkom */
.wpp_row_view .wpp_overview_left_column,
.wpp_row_view .wpp_overview_right_column {
    display: none !important;
}

/* 4. Horná časť s odznakmi */
.property_overlay_top {
    position: relative !important;
    z-index: 3 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    padding: 10px !important;
}

/* 5. Spodná časť - Tmavý pásik prichytený na spodok obrázka */
.property_overlay_bottom {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 3 !important;
    background: rgba(0, 0, 0, 0.25) !important;
    backdrop-filter: blur(3px) !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* 6. Text nadpisu nehnuteľnosti */
.property_overlay_bottom .property_title,
.wpp_row_view .property_title {
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    background: transparent !important;
    border: none !important;
    min-height: unset !important;
    max-width: 100% !important;
}




/* ==========================================================================
   OPRAVA MIN-HEIGHT A PRISPÔSOBENIE VÝŠKY
   ========================================================================== */

/* 1. Odstránenie obmedzení výšky pre hlavnú kartu */
.wpp_row_view div.property_div,
div[class*="property_div"] {
    min-height: unset !important;
    max-height: none !important;
   /* height: 320px !important;*/ /* Jednotná výška pre všetky karty */
}

/* 2. Zrušenie min-height pre nadpisy a vnútorné kontajnery */
.wpp_row_view .property_title,
.property_overlay_bottom .property_title,
.property_overlay_bottom,
.wpp_row_view .property_image {
    min-height: 0 !important;
    min-height: unset !important;
    max-height: none !important;
}

/* 3. Obrázok sa prispôsobí plnej výške 320px karty */
.wpp_row_view .property_image img,
.wpp_row_view div.property_div img {
    height: 100% !important;
    max-height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
}


/* ==========================================================================
   OPRAVA PRE MASONRY MRIEŽKU A ZOBRAZENIE CELÉHO OBRÁZKA
   ========================================================================== */

/* 1. Uvoľnenie výšky karty pre Masonry prepočet */
.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    height: auto !important;          /* Odstránená pevná výška (napr. 320px) */
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;        /* Pre korektné fungovanie Masonry mriežky */
    border-radius: 12px !important;
    overflow: hidden !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

/* 2. Zobrazenie CELÉHO obrázka v pôvodnom pomere strán */
.wpp_row_view .property_image,
.wpp_row_view div.property_div .property_image {
    position: relative !important;    /* Obrázok určuje prirodzenú výšku karty */
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.wpp_row_view .property_image img,
.wpp_row_view div.property_div img {
    width: 100% !important;
    height: auto !important;          /* Zabezpečí zobrazenie celého obrázka */
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;    /* Zabráni orezaniu obrázka */
    display: block !important;
}

/* 3. Prekrytie horných odznakov (Cena, Typ) */
.property_overlay_top {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 3 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    padding: 10px !important;
    pointer-events: none !important;
}

.property_overlay_top * {
    pointer-events: auto !important;
}

/* 4. Prekrytie spodného popisu (Názov nehnuteľnosti) */
.property_overlay_bottom {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 3 !important;
    background: rgba(0, 0, 0, 0.25) !important;
    backdrop-filter: blur(3px) !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* 5. Nadpis nehnuteľnosti bez obmedzenia výšky */
.property_overlay_bottom .property_title,
.wpp_row_view .property_title {
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    border: none !important;
    background: transparent !important;
    min-height: 0 !important;
    min-height: unset !important;
    max-height: none !important;
    display: block !important;
}













/* ==========================================================================
   9. MASONRY GRID & REAL ESTATE CARDS (OPRAVENÉ)
   ========================================================================== */

/* Odznaky vľavo / vpravo */
.left-badges {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    max-width: 65% !important;
}

.left-badges .badge {
    font-size: 12px;
    font-weight: 400 !important;
    padding: 4px 4px 3px 4px !important;
    border-radius: 4px !important;
    color: #ffffff !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3) !important;
}

.left-badges .badge-predaj, .left-badges .badge-najom, .left-badges .badge-kupa {
    font-size: 14px;
}

/* Farebné rozlíšenie nových odznakov */
.badge-predane {
    background-color: #28a745 !important; /* Zelená farba */
    color: #ffffff !important;
}

.badge-prenajate {
    background-color: #17a2b8 !important; /* Tyrkysová / modrá farba */
    color: #ffffff !important;
}

.left-badges .badge-topovane {
	 color: #000 !important;
	background-color: none !important;
	box-shadow: none !important;
  background-color: #ff9800 !important; /* Výrazná oranžová/zlatá farba */
   color: #ffffff !important;
}


.badge-predaj { background-color: #d9534f !important; }
.badge-kupa   { background-color: #f0ad4e !important; }
.badge-najom  { background-color: #0275d8 !important; }

.badge-dark { 
    background-color: rgba(0, 0, 0, 0.75) !important; 
    backdrop-filter: blur(2px) !important;
}

.badge-rezervovane { background-color: #f0ad4e !important; }
.badge-zrusene     { background-color: #c2410c !important; }

.property_price_badge {
    background-color: #0088cc !important;
    color: #ffffff !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    padding: 6px 12px 4px 12px !important;
    border-radius: 15px !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.3) !important;
    white-space: nowrap !important;
	position: absolute;
	right: 5px;
}

/* Oprava karty nehnuteľnosti: Odstránený display: block !important */
.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    box-sizing: border-box !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    background-color: transparent !important;
    cursor: pointer !important;
}

.wpp_row_view div.property_div:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3) !important;
}

/* Obrázok v karte */
.wpp_row_view .property_image,
.wpp_row_view div.property_div .property_image {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.wpp_row_view .property_image img,
.wpp_row_view div.property_div img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: contain !important;
    display: block !important;
}

/* Vypnutie starých stĺpcov WP Property */
.wpp_row_view .wpp_overview_left_column,
.wpp_row_view .wpp_overview_right_column {
    display: none !important;
}

/* Overlay pre hornú časť (Cena, Typ) */
.property_overlay_top {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 3 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    padding: 10px !important;
    pointer-events: none !important;
}

.property_overlay_top * {
    pointer-events: auto !important;
}

/* Overlay pre spodnú časť (Názov) */
.property_overlay_bottom {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 3 !important;
    background: rgba(0, 0, 0, 0.25) !important;
    backdrop-filter: blur(3px) !important;
    padding: 10px 12px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* Nadpis nehnuteľnosti */
.property_overlay_bottom .property_title,
.wpp_row_view .property_title {
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    border: none !important;
    background: transparent !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    max-width: 100% !important;
}





/* ==========================================================================
   VERTIKÁLNE AJ HORIZONTÁLNE CENTROVANIE OBRÁZKOV
   ========================================================================== */

/* 1. Kontajner obrázka - natiahnutie na plnú výšku karty */
.wpp_row_view .property_image,
.wpp_row_view div.property_div .property_image,
.wpp_property_image_wrapper {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  height: 290px !important; /* Pevná výška obalu */
  float: none !important;
  overflow: hidden !important;
  position: relative !important;
}

/* 2. Obrázok - vyplnenie celej plochy a vycentrovanie bez skreslenia */
.wpp_row_view .property_image img,
.wpp_row_view div.property_div img,
.wpp_property_image_wrapper img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}














/* ==========================================================================
   VERTIKÁLNE AJ HORIZONTÁLNE CENTROVANIE OBRÁZKOV
   ========================================================================== */

/* 1. Kontajner obrázka - natiahnutie na plnú výšku karty */
.wpp_row_view .property_image,
.wpp_row_view div.property_div .property_image,
.wpp_property_image_wrapper {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  height: 290px !important; /* Pevná výška obalu */
  float: none !important;
  overflow: hidden !important;
  position: relative !important;
}

/* 2. Obrázok - vyplnenie celej plochy a vycentrovanie bez skreslenia */
.wpp_row_view .property_image img,
.wpp_row_view div.property_div img,
.wpp_property_image_wrapper img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}







.wpp_row_view div.property_div {
  padding: 0;
}

.wpp_row_view {
    margin-top: 10px;
    margin-left: 5px;
    margin-right: 5px;
}

.style-2775-outer .h-px-2, #colibri .style-1790 {
    padding-left: 0;
    padding-right: 0px;
}


#property_stats.overview_stats, .wpp_property_stats.overview_stats {
    border: 0;
}








/* (Hover Off) */
.wpp_row_view .property_image img,
.wpp_row_view div.property_div img {
    transition: transform 0.4s ease-in-out !important; /* Plynulý prechod tam aj späť */
}

/* Hover */
.wpp_row_view div.property_div:hover .property_image img,
.wpp_row_view div.property_div:hover img {
    transform: scale(1.08) !important;
}

/*END wp css tema*/





/* ==========================================================================
   JEDNOTNÁ ŠTRUKTÚRA KARTY NEHNUTEĽNOSTI
   ========================================================================== */
.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    background-color: transparent !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    border: none !important;
}

.wpp_row_view div.property_div:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3) !important;
}

/* Kontajner obrázka a plynulý hover efekt */
.wpp_row_view .property_image img,
.wpp_row_view div.property_div img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
    transition: transform 0.4s ease-in-out !important;
}

.wpp_row_view div.property_div:hover .property_image img,
.wpp_row_view div.property_div:hover img {
    transform: scale(1.08) !important;
}



/* ==========================================================================
   DETAIL NEHNUTEĽNOSTI - VZHĽAD PODĽA VZORU (cernan-reality.sk)
   ========================================================================== */

#property_stats_list, 
.property_stats_overview_stats_list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
    border: 1px solid #dcdcdc !important;
    background: #fff !important;
    border-radius: 4px !important;
    overflow: hidden !important;
}

#property_stats_list li, 
.property_stats_overview_stats_list li {
    display: flex !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #e5e5e5 !important;
	text-align: left;
}

#property_stats_list li:last-child, 
.property_stats_overview_stats_list li:last-child {
    border-bottom: none !important;
}

/* Ľavý stĺpec (Atribút) - sivé pozadie ako na cernan-reality */
#property_stats_list li .attribute,
.property_stats_overview_stats_list li .attribute {
    background-color: #f1f1f1 !important;
    color: #333 !important;
    /*font-weight: bold !important;*/
    width: 38% !important;
    padding: 10px 15px !important;
    border-right: 1px solid #e5e5e5 !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

/* Pravý stĺpec (Hodnota) - biele pozadie */
#property_stats_list li .value,
.property_stats_overview_stats_list li .value {
    background-color: #ffffff !important;
    color: #555 !important;
    width: 62% !important;
    padding: 10px 15px !important;
    /*display: flex !important;*/
    align-items: center !important;
    box-sizing: border-box !important;
}

.wpp_the_content p, .idamodifikacia, .nahodneneh p /*, .property_stats .attribute */ {
   /* margin-left: 0 !important;*/
}

.property_stats .attribute {
   margin-left: 0 !important;
}

/* ==========================================================================
   DOPLNENIE PRE CENU ZA M2 A ID NEHNUTEĽNOSTI (Vzhľad cernan-reality)
   ========================================================================== */

.wpp_feature_list_formatted-attribute,
.idamodifikacia {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 15px 0 !important;
    border: 1px solid #dcdcdc !important;
    background: #fff !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    display: flex !important;
}

/* Ľavý stĺpec (Label) - sivé pozadie */
.wpp_feature_list_formatted-attribute .attribute-label,
.idamodifikacia .attribute-label {
    background-color: #f1f1f1 !important;
    color: #333 !important;
    font-weight: bold !important;
    width: 38% !important;
    padding: 10px 15px !important;
    border-right: 1px solid #e5e5e5 !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

/* Pravý stĺpec (Value) - biele pozadie */
.wpp_feature_list_formatted-attribute .attribute-value,
.idamodifikacia .attribute-value {
    background-color: #ffffff !important;
    color: #555 !important;
    width: 62% !important;
    padding: 10px 15px !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}


.wpp_property_overview_shortcode, .wpp_slider_pagination {
    position: inherit !important;
}

.top_price_per_m2_badge {
    float: left;
}



.left-badges .badge i.fa {
    display: inline-block;
    width: 14px;
    text-align: center;
    margin-right: 0;
}



.byt_prenajaty_container .property-title, .dom_rezervovany_container .property-title, .chalupa_predana_container .property-title {
    color: #ad3e0e;
    font-weight: 400;
    font-family: 'Coda';
    margin-left: 5px;
}





/* Jemný prechod zhora, ktorý začína pozvoľna a dole prechádza do pevného panela */
.byt_property_div .property_overlay_bottom,
.wpp_row_view .property_overlay_bottom {
    background: rgba(0, 0, 0, 0.28) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border-radius: 0 0 12px 12px;
	padding: 38px 14px 8px 14px !important;
    
    /* Prechod začína skôr a plynulejšie (od 0% do 65%), takže zvrchu je menej rozmazaný a dole drží štandard) */
    -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 35%, rgba(0,0,0,1) 65%, rgba(0,0,0,1) 100%);
    mask-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 35%, rgba(0,0,0,1) 65%, rgba(0,0,0,1) 100%);
}

/* Ostrý biely text s jemným tieňom */
.byt_property_div .property_overlay_bottom .property_title,
.byt_property_div .property_overlay_bottom h2,
.byt_property_div .property_overlay_bottom h3,
.byt_property_div .property_overlay_bottom p,
.wpp_row_view .property_overlay_bottom .property_title {
    color: #ffffff !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.9) !important;
    margin-bottom: 0 !important;
}















/* ==========================================================================
   DECENTNÉ PRIBLIŽOVANIE KARTY V STREDE DISPLEJA
   ========================================================================== */
.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    border-radius: 12px !important;
    overflow: hidden !important; /* Drží rohy pohromade, aby nevytečal border-radius */
    transform: translateZ(0); /* Hardvérová akcelerácia pre plynulosť */
}

.wpp_row_view .property_image,
div[class*="property_div"] .property_image {
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
}

.wpp_row_view div.property_div .property_image img,
div[class*="property_div"] .property_image img {
    transform: scale(1) !important;
    transition: transform 0.5s ease-in-out !important;
}

/* AUTOMATICKÝ ZOOM LEN NA MOBILOCH (1 stĺpec, do 767px) */
@media (max-width: 767px) {
    .wpp_row_view div.property_div.in-focus .property_image img,
    div[class*="property_div"].in-focus .property_image img {
        transform: scale(1.03) !important; 
        transition: transform 0.5s ease-in-out !important;
    }
}

/* NA PC (nad 768px) NECHÁME KLASICKÝ HOVER MYŠOU */
@media (min-width: 768px) {
    .wpp_row_view div.property_div:hover .property_image img,
    div[class*="property_div"]:hover .property_image img {
        transform: scale(1.03) !important;
        transition: transform 0.3s ease !important;
    }
}

.wpp_colon {
    display: contents;
}


/* ==========================================================================
   EFEKT ŽIVÉHO POHĽADU / DÝCHANIA (IDLE SWAY) PRE MOBILY AJ PC HOVER
   ========================================================================== */

.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    border-radius: 12px !important;
    overflow: hidden !important; /* Drží rohy pohromade, aby nevytečal border-radius */
    transform: translateZ(0); /* Hardvérová akcelerácia pre plynulosť */
}

.wpp_row_view .property_image,
div[class*="property_div"] .property_image {
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
}

/* Základný stav obrázka */
.wpp_row_view div.property_div .property_image img,
div[class*="property_div"] .property_image img {
    transform: scale(1) translate(0px, 0px) !important;
    transition: transform 0.5s ease-in-out !important;
}

/* ==========================================================================
   ŽIVÉ DÝCHANIE / IDLE CAMERA SWAY (MOBIL aj PC HOVER)
   ========================================================================== */

.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    border-radius: 12px !important;
    overflow: hidden !important; /* Drží rohy pohromade, aby nevytečal border-radius */
    transform: translateZ(0); /* Hardvérová akcelerácia pre plynulosť */
}

.wpp_row_view .property_image,
div[class*="property_div"] .property_image {
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
}

/* ==========================================================================
   ŽIVÉ DÝCHANIE / IDLE CAMERA SWAY (MOBIL AJ PC HOVER)
   ========================================================================== */

.wpp_row_view div.property_div,
div[class*="property_div"] {
    position: relative !important;
    border-radius: 12px !important;
    overflow: hidden !important; /* Drží rohy pohromade, aby nevytečal border-radius */
    transform: translateZ(0); /* Hardvérová akcelerácia pre plynulosť */
}

.wpp_row_view .property_image,
div[class*="property_div"] .property_image {
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
}

/* Základný stav obrázka */
.wpp_row_view div.property_div .property_image img,
div[class*="property_div"] .property_image img {
    transform: scale(1) translate(0px, 0px) !important;
    transition: transform 0.5s ease-in-out !important;
}

/* 1. MOBIL (do 767px): Automatické dýchanie, keď je karta v strede (.in-focus) */
@media (max-width: 767px) {
    .wpp_row_view div.property_div.in-focus .property_image img,
    div[class*="property_div"].in-focus .property_image img {
        animation: idleCameraSway 5s ease-in-out infinite alternate !important;
        transition: transform 0.5s ease-in-out !important;
    }
}

/* 2. PC (nad 768px): Živé dýchanie pri prejdení myšou (:hover) */
@media (min-width: 768px) {
    .wpp_row_view div.property_div:hover .property_image img,
    div[class*="property_div"]:hover .property_image img {
        animation: idleCameraSway 5s ease-in-out infinite alternate !important;
        transition: transform 0.4s ease-in-out !important;
    }
}

/* Definícia výrazného a plynulého organického pohybu (Idle Sway) */
@keyframes idleCameraSway {
    0% {
        transform: scale(1.04) translate(0px, 0px) !important;
    }
    50% {
        transform: scale(1.08) translate(2px, -2px) !important; /* Výraznejší zoom + posun vpravo-hore */
    }
    100% {
        transform: scale(1.06) translate(-2px, 2px) !important; /* Jemné vyváženie vľavo-dole */
    }
}

.wpp_colon {
    display: contents;
}












/* Plynulý prelínací efekt pre obrázky v kartách */
.wpp_row_view .property_image img,
div[class*="property_div"] .property_image img {
    transition: opacity 0.4s ease-in-out, transform 0.5s ease-in-out !important;
    opacity: 1 !important;
}

/* Trieda pre plynulý fade-out */
.wpp_row_view .property_image img.fade-out,
div[class*="property_div"] .property_image img.fade-out {
    opacity: 0 !important;
}

/* ==========================================================================
   UNIVERZÁLNY CROSSFADE PRE VŠETKY TYPY NEHNUTEĽNOSTÍ (Dom, Byt, Pozemok atď.)
   ========================================================================== */

.wpp_row_view > div .property_image,
.all-properties > div .property_image,
div[class*="property_div"] .property_image {
    position: relative !important;
    overflow: hidden !important;
}

/* Obidva obrázky v prechode musia byť absolútne nad sebou pre všetky typy */
.wpp_row_view > div .property_image img.property-slide-img,
.all-properties > div .property_image img.property-slide-img,
div[class*="property_div"] .property_image img.property-slide-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transition: opacity 0.8s ease-in-out !important;
    will-change: opacity;
}

/* Aktívny (viditeľný) obrázok pre všetky typy */
.wpp_row_view > div .property_image img.active-img,
.all-properties > div .property_image img.active-img,
div[class*="property_div"] .property_image img.active-img {
    opacity: 1 !important;
    z-index: 2 !important;
}

/* Neaktívny (skrytý) obrázok v pozadí */
.wpp_row_view > div .property_image img.next-img,
.all-properties > div .property_image img.next-img,
div[class*="property_div"] .property_image img.next-img {
    opacity: 0 !important;
    z-index: 1 !important;
}

