/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.7
*/

.button,
.button:hover{ 
	color: #000 !important;
}

/*=================================== HOMEPAGE CONTACT FORM 7 - Start =========================================*/
/*=================================== HOMEPAGE CONTACT FORM 7 - Start =========================================*/
/*=================================== HOMEPAGE CONTACT FORM 7 - Start =========================================*/
.homepage-contact-form {
	min-height: 100vh; 
    background-size: cover;
}
.homepage-contact-form form { 
	max-width: 420px;
	padding: 20px;
	margin: 52px auto;
}
.logo-contact-form {
	max-width: 250px;
	text-align: center;
}
.homepage-contact-form label { 
	color: #fff;
	font-weight: 300;
}
.homepage-contact-form input {
	background: transparent;
    border-bottom: 1px solid #757575 !important;
    border: 0;
}
.homepage-contact-form input:focus {
	background: transparent;
	box-shadow: none;
}
.homepage-contact-form input{
	text-align: center;
}
.homepage-contact-form input::placeholder{
    text-align: center;
	color: #757575;
}
.homepage-contact-form input,
.homepage-contact-form input:focus{
	color: #000;
	box-shadow: none;
}
.homepage-contact-form input[type="submit"]{
	clip-path: polygon(0% 0%, 100% 0%, 90% 100%, 10% 100%);
    margin: 0;
    background: #ae9b63;
    border: 0;
    color: #fff;
    line-height: 50px;
    padding: 0px 40px;
}
.homepage-contact-form .wpcf7-spinner {
	position: absolute;
}
.homepage-contact-form a {
	color: #757575;
}
.homepage-contact-form .wpcf7 .wpcf7-not-valid-tip {
	color: #ae9b63;
	background-color: transparent;
}
.homepage-contact-form .wpcf7 .wpcf7-not-valid-tip:after {
	display: none;
}
.vyber-bytu-contact-form {
	margin: 32px 0;
}
.vyber-bytu-contact-form > p:first-child {
	margin-bottom: 22px;
}
/* Skryť pôvodný checkbox */
.vyber-bytu-contact-form input[type="checkbox"] {
    display: none;
}
/* Každý item nech je pekný blok vedľa seba */
.vyber-bytu-contact-form span.wpcf7-list-item {
    display: inline-block;
    margin: 6px 4px;
}
/* Viditeľná časť – tu ide clip-path */
.vyber-bytu-contact-form .wpcf7-list-item-label {
    display: block;
    padding: 6px 16px;
    background: #f3f6fd;
    color: #000;
    font-size: 12px;
    text-align: center;
    transition: 0.25s ease;
    border: 1px solid #ae9b63;
}
/* Hover efekt */
.vyber-bytu-contact-form .wpcf7-list-item label:hover .wpcf7-list-item-label {
    border-color: #ae9b63;
}
/* Keď je checkbox zaškrtnutý → zvýrazni rámček a pozadie */
.vyber-bytu-contact-form input[type="checkbox"]:checked + .wpcf7-list-item-label {
    border-color: #ae9b63 !important;
    background: #ae9b63 !important;
    color: #fff !important;
}
.homepage-contact-form .wpcf7 form.invalid .wpcf7-response-output,
.homepage-contact-form .wpcf7 form.unaccepted .wpcf7-response-output,
.homepage-contact-form .wpcf7 form.payment-required .wpcf7-response-output,
.homepage-contact-form form.sent .wpcf7-response-output{
	border-color: #ae9b63;
	border-radius: 0;
	color: #000;
}
/* VŠETKY textové inputy vo formulári + autofill stav */
.homepage-contact-form input[type="text"]:-webkit-autofill,
.homepage-contact-form input[type="email"]:-webkit-autofill,
.homepage-contact-form input[type="tel"]:-webkit-autofill,
.homepage-contact-form input[type="password"]:-webkit-autofill,
.homepage-contact-form input[type="text"]:-webkit-autofill:hover,
.homepage-contact-form input[type="email"]:-webkit-autofill:hover,
.homepage-contact-form input[type="tel"]:-webkit-autofill:hover,
.homepage-contact-form input[type="password"]:-webkit-autofill:hover,
.homepage-contact-form input[type="text"]:-webkit-autofill:focus,
.homepage-contact-form input[type="email"]:-webkit-autofill:focus,
.homepage-contact-form input[type="tel"]:-webkit-autofill:focus,
.homepage-contact-form input[type="password"]:-webkit-autofill:focus {
    background: yellow !important;
    -webkit-box-shadow: 0 0 0px 1000px red inset !important;
    box-shadow: 0 0 0px 1000px #f3f6fd inset !important;
    border: 0 !important;
    border-bottom: 1px solid #757575 !important;
    -webkit-text-fill-color: #000 !important;
    text-align: center;
}
/*=================================== HOMEPAGE CONTACT FORM 7 - End =========================================*/
/*=================================== HOMEPAGE CONTACT FORM 7 - End =========================================*/
/*=================================== HOMEPAGE CONTACT FORM 7 - End =========================================*/






/*************** ADD CUSTOM CSS HERE.   ***************/
 

/* =================== Tabulka - stylovacka START =================== */
.villa-table-wrap {
    overflow-x: auto;
  }

  .villa-table {
    width: 100%;
    border-collapse: collapse;
    font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 14px;
  }

  .villa-table thead tr {
    background-color: #3d3835; 
    color: #ffffff;
  }

  .villa-table th,
  .villa-table td {
    padding: 10px 14px;
    text-align: left;
    border-bottom: 1px solid #e5e5e5;
    white-space: nowrap;
  }

  .villa-table tbody tr:nth-child(even) {
    background-color: #f4f6f8; /* jemné striedanie riadkov */
  }

  .villa-table tbody tr:nth-child(odd) {
    background-color: #ffffff;
  }

  .villa-table .status-sold {
    color: #d00000;
    font-weight: 700;
  }

  .villa-table .status-reserved {
    color: #333333;
    font-weight: 700;
  }

  .villa-table .status-free {
    color: #0b8f2b;
    font-weight: 700;
  }
/* =================== Tabulka - stylovacka END =================== */


.homepage-main-section {
	border-radius: 0 0 48px 48px;
}
.homepage-main-section .img-inner.image-cover img {
	border-radius: 24px;
	border: 6px solid #fff;
}
.img-rounded img{
	border-radius: 48px;
}
.homepage-icons-wrapper {
	display: flex;
    max-width: 1300px;
}
.homepage-icons-wrapper img {
	max-width: 50%;
}
.homepage-icons-wrapper h3 {
	font-weight: 700;
}
.homepage-icons-wrapper > .col-inner > .row > .col > .col-inner {
	padding: 40px 20px 30px 20px;
}
#footer {
	background: #fff;
}
  
.jr-footer-contacts a {
	padding: 20px;
	color: #fff;
	font-size: 30px;
}
@media(max-width:830px){
	 
	.jr-footer-contacts a {
		font-size: 24px;
	}
}
@media(max-width:640px){
	 
	.jr-footer-contacts a {
		font-size: 20px;
	}
}
 
.accordion-title.active {
	color: #3d3835;
}
.scroll-to-bullets a {
	background: #3d3835;
}
.scroll-to-bullets a.active,.scroll-to-bullets a:hover {
	border-color: #3d3835;
	background: #fff;
}
.accordion .toggle {
	left: 35px;
}
.logo a img {
	height: 60px;
}
@media(max-width: 849px){
	#logo img {
		margin-left: 0;
	}
}



.btn-arrow{
  position: relative;
  padding-right: 62px !important;
	animation: btnPulseScale 2.8s ease-in-out infinite;
	
}
@keyframes btnPulseScale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.02);
  }
  100% {
    transform: scale(1);
  }
}

.btn-arrow:hover {
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
  transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}
.btn-arrow span {
	line-height: 1;
}

/*
.btn-arrow::after{
  content:"→";
  position:absolute;
  top:50%;
  right:10px;
  transform:translateY(-50%);
  width:44px;height:44px;border-radius:999px;
  display:flex;align-items:center;justify-content:center;
  background:#2f4b3a;color:#fff;font-size:20px;
  pointer-events:none;
	transition: transform 0.3s ease;
}*/
.btn-arrow::after{
content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    border-radius: 999px;
    background-color: rgb(47, 75, 58);

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px;

    transition: transform 0.3s;
}
/* underline efekt – default stav */
.btn-arrow span {
  position: relative;
}

.btn-arrow span::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;

  width: 100%;
  height: 1px;

  background: rgba(61, 56, 53, 0.25); /* rovnaká farba ako máš */
  transform: scaleX(0);
  transform-origin: bottom right;
  transition: transform 0.3s ease-out;
}

.btn-arrow:hover span::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}

.btn-arrow:hover::after {
  transform: translateY(-50%)  rotate(45deg) !important;
}

.header-wrapper.stuck > .header-main {
	display: flex;
    align-items: center; 
}
.header-wrapper.stuck > .header-main > .header-inner {
	background: #f8f5f3;
    border-radius: 16px;
    height: 80px;
	box-shadow:
    0 8px 10px -6px rgba(86, 76, 69, 0.1),
    0 20px 25px -5px rgba(86, 76, 69, 0.1);
}
.header-shadow .header-wrapper, .header-wrapper.stuck, .layout-shadow #wrapper {
	box-shadow: none;
}
#header .btn-arrow { 
	padding-left: 16px;
}
.box-overlay.dark .box-text, .box-shade.dark .box-text {
	display: none;
}
.box-image {
	border-radius: 16px;
}
.sticker-hero-baner-img {
	z-index: 1;
}
.sticker-hero-baner .sticker-hero-baner-img{
	position: absolute;
    bottom: -70px;
    right: 0;
	width: 200px !important;
}
.sticker-hero-baner .sticker-hero-baner-img {
	    transform: rotate(7deg);
	
}
 
.domov-s-vyhladom-baner {
	    margin-top: -120px;
    background: #9C27B0;
}
.domov-s-vyhladom {
	z-index: 0 !important;
}
.domov-s-vyhladom .row > .col > .col-inner {
	    background: #f3eeed;
    margin-top: -100px;
    border-radius: 16px;
}
.footer-1, .footer-2 {
	border-top: 0;
}
#hotspots-map-container-180 {
	border-radius: 16px;
}
.byt-sekcia-udaje {
	background: #f3eeed;
	border-radius: 16px;
}
.page-byt-image-column {
	padding: 20px;
}
.page-byt-image-column img {
	border-radius: 16px;
}
.border-radius-16 {
	border-radius: 16px;
}
.page-byt-kompas-sekcia > .col-inner{
	display: flex;
	flex-direction: row;
}
.page-byt-kompas-sekcia > .col-inner img {
	height: 150px;
}

.rozlozenie-riadok {
	padding-bottom: 10px;
}
.rozlozenie-riadok > .col-inner {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	border-bottom: 1px solid #0000001a;
}
.rozlozenie-riadok:last-child {
	padding-bottom: 0;
}
.rozlozenie-riadok:last-child > .col-inner {
	border-bottom: 0;
}
.rozlozenie-riadok:last-child p {
	margin-bottom: 0;
}
.rozlozenie-bytu-text p,
.rozlozenie-bytu-cislo p {
	margin-bottom: 10px;
	font-size: 14px;
}
.rozlozenie-bytu-text p {
	color: #3d383599;
}
.rozlozenie-bytu-cislo p {
	font-weight: bold;
	color: #3d3835;
}
.byt-pdf-na-stiahnutie-wrapper > .col-inner {
	display: flex;
	justify-content: space-between;
	flex-direction: column;
}
.byt-pdf-na-stiahnutie-wrapper > .col-inner .button {
	margin-bottom: 0;
}
.btn-arrow {
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
	text-transform: math-auto;
    font-weight: bold;
}
.margin-bottom-18-lg > h2{
	margin-bottom: 18px;
}
@media(max-width: 768px){
	.sticker-hero-baner .sticker-hero-baner-img {
		width: 160px !important;
	}
	.mobile-nav > li > .btn-arrow {
		font-size: 12px !important;
		padding-right: 36px !important;
		padding-left: 12px !important;
	}
	.mobile-nav > li > .btn-arrow:after {
		width: 22px;
    	height: 22px;
		background-size: 14px;
	}
	.mobile-nav > li > .btn-arrow > span {
		width: 90px;
		margin-top: 2px;
	}
}
@media(max-width: 550px){
	.sticker-hero-baner .sticker-hero-baner-img {
		width: 100px !important;
		bottom: -80px;
    	right: -18px;
	}
	header #logo img {
		max-width: 104px;
	}
	.homepage-icons-wrapper > .col-inner > .row > .col > .col-inner {
		padding: 20px 20px 10px 20px
	}
}
#masthead {
	padding: 0 5px;
}
section .btn-arrow span {
	margin-top: 14px;
}
.slider > .flickity-viewport {
	border-radius: 16px;
}