/*
custom style
*/

#wpforms-form-114 {
    max-width: 540px;
}
.mobile-links-container .mobile-menu-links a:hover::after {
  width: 100%;
}
.landing-sec {
  height: 100vh;
  width: 100%;
}
@media only screen and (min-width: 1100px) {
.landing-sec {
  height: 70vh;
}
/* Homepage: slider je fullscreen (výška = výška okna), proto hero sekce
   musí být 100vh, jinak slider přeteče přes sekci pod ním (info-sec).
   Platí JEN pro homepage – detailu bytu (.single) se to netýká. */
body.home .landing-sec {
  height: 100vh;
}
}
body {
    background: #f5f8f0;
    }
 .inner-container {
	       width: 100%;
   /* display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    max-width: 1600px;
    margin: 0 auto;
    display: block;
    box-sizing: border-box;*/
 }
 .home-slider p#custom-font-slider {
     font-family: Montserrat, sans-serif !important;
     text-transform: uppercase !important;
     letter-spacing: 0.3em !important;
     font-size: clamp(0.9rem, 1.3vw, 1.05rem) !important;
     font-weight: 600 !important;
     color: #fff !important;
     line-height: 1.5 !important;
     text-indent: 0.3em;
     text-shadow: 0 1px 14px rgba(0, 0, 0, 0.35);
 }
 .prosekko-standardy .btn-left {
	 float: left;
	     display: inline-block;
    width: 100%;
    margin-top: 30px;
 }
 .prosekko-standardy .btn-left .more-st.btn{
	 text-transform: uppercase;
	 margin-left: 10px;
 }
  .single .pudorys-single {
	  margin: 0 auto;
	  text-align: center;
  }
 .single .pudorys-single .single-thumbnail {
	 max-width: 700px;
	 width: auto;
	 height: auto;
	 margin: 0 auto;
         max-height: 600px;
 }
.prosekko-standardy   .standardy-popis {
	   margin: 30px 0px;
	   color: white;
	   font-size: 1.6rem;
}
#tab-sec {
   	background-color: #f5f8f0;
	    position: relative;
 margin: 0;
    padding: 5rem 15rem 10rem 15rem;
}
.single-about#single-about-sec {
	background-color: #717f8d;
	    position: relative;
 margin: 0;
 padding: 10rem 15rem 10rem 15rem;
}
.single-about .single-popis-container .parametry {
	color: white; 
	text-align: center;
}
.single-about .single-popis-container table {
width: 100%;	
}
.single-about .single-popis-container table td {
	font-size: 28px;
	padding: 7px 0;
	vertical-align: middle;
}
/* Sjednocení hodnot – podlaží je v <p>, ostatní ve <span>; ať mají stejnou velikost */
.single-about .single-popis-container table td.value p,
.single-about .single-popis-container table td.value span {
	margin: 0;
	font-size: inherit;
	line-height: 1.3;
}
.single-about .leaf-one {
    position: absolute;
    top: 0;
    left: 10%;
    width: 8rem;
    height: auto;
    -webkit-transform: rotate(200deg);
    transform: rotate(200deg);
}
.single-about .single-popis-container table td.name {
	color: #27283b;
}
.single-about .single-popis-container table td.value {
	text-align: left;
	color: white;
}
.single-about .single-popis-container .name-product {
	margin-top: 40px;
}
.single-about .single-popis-container .avaible-product {
	color: #27283b;
	margin-top: 20px;
	margin-bottom: 50px;
}
.single-about .single-popis-container .big-font {
	font-size: 34px;
}
.single-about .single-popis-container .total-price {
	margin-top: 50px;
	text-align: center;
	margin-bottom: 50px;
}
.single-about .single-popis-container .total-price .name {
	color: white;
	font-size: 30px;
}
.single-about .single-popis-container .total-price .value {
	color: white;
	font-size: 30px;
}
.single-about .hr-title {
      position: relative;
    height: auto;
    width: 100%;
    z-index: 1;
    margin: 2rem auto;
    text-align: center;
    background-color: #717F8C;
    max-width: 300px;
}
.single-about .hr-title .title {
    font-size: 2rem;
    color: #27283b;
    z-index: 3;
    background-color: #717F8C;
    padding: 5px 20px;
}
.single-about .hr-title .title h1 {
	display: inline-block;
	color: #27283b;
	font-size: 4rem;
}
.single-about .hr-title .hr-border {
    height: 2px;
    width: 15rem;
    width: 100%;
    z-index: -1;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 49%;
}

/* Tabs */
#tab-sec .tabs {
  width: 100%;
display: inline-block;
margin: 30px auto;
}
#tab-sec ul#tabs-nav {
  list-style: none;
  margin: 0;
  padding: 5px;
  overflow: visible;            /* aby stín tlačítek nebyl useknutý */
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
#tab-sec ul#tabs-nav li {
  float: none;
  font-weight: bold;
  margin-right: 2px;
  padding: 10px;
  /*border: 1px solid #d5d5de;
  border-bottom: none;*/
  cursor: pointer;
}
/* Akční tlačítka – ikony + rozlišení primární / sekundární */
#tab-sec #tabs-nav .tab-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.6em;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1;
  padding: 16px 30px;
  border-radius: 50px;
  border: 1.5px solid transparent;
  transition: background-color .25s ease, color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
  cursor: pointer;
}
#tab-sec #tabs-nav .tab-btn .tab-btn-ico {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  display: inline-flex;
}
#tab-sec #tabs-nav .tab-btn .tab-btn-ico svg { width: 100%; height: 100%; display: block; }
#tab-sec #tabs-nav .tab-btn--secondary {
  background: transparent;
  color: #27283b;
  border-color: rgba(39, 40, 59, 0.28);
}
#tab-sec #tabs-nav .tab-btn--secondary:hover {
  background: #717f8d;
  border-color: #717f8d;
  color: #fff;
}
#tab-sec #tabs-nav .tab-btn--primary {
  background: #27283b;
  color: #fff;
  border-color: #27283b;
}
#tab-sec #tabs-nav .tab-btn--primary:hover {
  background: #717f8d;
  border-color: #717f8d;
  color: #fff;
}
/* Jednotný hover pro VŠECHNA tlačítka (lift + stín jako u Karty/Standardů) */
#tab-sec #tabs-nav .tab-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(39, 40, 59, 0.16);
}
#tab-sec .tab-content {
  padding: 30px 10px;
  border: 0px solid #27283b;
}
#tab-sec .tab-content  {
   text-align: center;
}
#tab-sec .tab-content h2 {
   text-align: center;
}
#tab-sec .hr-title-single {
    margin: 3rem auto;
    opacity: 1 !important;
}
#tab-sec .wpforms-form .wpforms-field-label {
	color: #27283b;
}
#tab-sec .wpforms-form .wpforms-field-label-inline {
	color: #27283b;
}
#tab-sec .wpforms-form #wpforms-114-field_1, #tab-sec .wpforms-form #wpforms-114-field_0, #tab-sec .wpforms-form #wpforms-114-field_0-last, #wpforms-114-field_2, #tab-sec .wpforms-form textarea {
	    background-color: #fff;
    color: #333;
        border: 1px solid #ccc;
}
#tab-sec  #wpforms-submit-114 {
    background-color: white;
    border: none;
    padding: 1rem 2rem;
    border-radius: 50px;
    font-size: 1.6rem;
    font-weight: bold;
    background: #717f8d;
    color: #fff;
}
#tab-sec  #wpforms-submit-114:hover {
	background: #27283b;
    color: #fff;
}
#tab-sec #wpforms-114 {
    padding: 5rem 0;
    text-align: left;
  }  
.single .landing-sec .main-carousel {
    margin: 0;
    position: relative;
    height: 100%;
}
.single .landing-sec .left-fixed {
	z-index: 11;
        display: none;
}
.single .landing-sec .left-fixed a.back {
margin:  15px 0;
	color: black;
}
.single .landing-sec .left-fixed a.back:hover {
	opacity: 0.6;
}
.site-footer .site-info {padding: 10px 0;}
.site #masthead {
    position: fixed;
    right: 0;
    top: 0;
    z-index: 7;
    width: 100%;
}
.right-fixed {
    right: auto;
    left: 3rem;
}
.site #masthead.fixed-header {
	    background-color: rgba(255, 255, 255, 0.5);
	        backdrop-filter: blur(12px);
}
.site #masthead.fixed-header #site-custom-navigation li a {
	color: black;
}
.site #masthead.fixed-header #site-custom-navigation li a:hover {
	opacity: 0.6;
}
#masthead .navigation-menu {
	float: right;
	padding: 20px;
	display: none;
}
#masthead #site-custom-navigation {
	float: right;
	margin: 40px;
}
.site #masthead.fixed-header #site-custom-navigation {
    margin: 20px 40px;
}
#masthead #site-custom-navigation ul {
	    display: block;
}
#masthead #site-custom-navigation  li {
list-style: none;
display: inline-block;
margin: 10px 0;
padding: 0 10px;
}
#masthead #site-custom-navigation  li a {
	color: white;
}
#masthead #site-custom-navigation  li a:hover {
	opacity: 0.6;
}
h3 {
    font-size: 2.5rem;
    color: #374a5e;
}
h4 {
    font-size: 2rem;
    color: #374a5e;
}
#info-sec.info-sec .wine-img {
	margin-top: 2rem
}
#info-sec.info-sec .info-text .container-obsah h3 {
	line-height: 1.5;
}
#info-sec.info-sec {
   	background-color: #f5f8f0;
	    position: relative;
 margin: 0;
     padding: 5rem 15rem 10rem 15rem;
}
#info-sec.info-sec .citat-container {
	text-align: left;
}
#info-sec.info-sec .citat-container a {
	color: #374a5e;
}
#info-sec.info-sec .info-container .info-text p {
    padding: 5rem 5rem 0 0rem;
}
#singles-sec.prosekko-singles {
    position: relative;
    margin: 20rem 10rem 10rem 25rem;
}
#singles-sec.prosekko-singles h2 {
	text-align: left;
}
#singles-sec.prosekko-singles p {
	text-align: left;
}
#singles-sec.prosekko-singles .hr-title {
    margin: 3rem 0;
}
#singles-sec.prosekko-singles {
	background-color: #f5f8f0;
	padding: 10rem 15rem 15rem 10rem;
	margin: 0;
}
#singles-sec.prosekko-singles .wine-img {
    height: auto;
    margin: 1rem auto;
    margin-top: 10rem;
}
#singles-sec.prosekko-singles .singles-container {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    grid-gap: 4rem;
}
#lokalita-sec.prosekko-lokalita {
	padding: 10rem 15rem 15rem 0rem;
	margin: 0;
/*	background: url(/wp-content/uploads/2023/06/mapa-bg.jpg) no-repeat center bottom;*/
background: url(/wp-content/uploads/2023/06/lokalita-1.jpg) no-repeat center bottom;
background-size: cover;
	position: relative;
}
#lokalita-sec.prosekko-lokalita:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #374a5e;
	opacity: 0.7;
	z-index: 1;
}
#lokalita-sec.prosekko-lokalita .container-obsah {
	z-index: 2;
	     color: white;
	     width: 100%;
}
#lokalita-sec.prosekko-lokalita .container-obsah p {
    width: 100%;
    margin: 0 auto 1rem auto;
     color: white;
}
#lokalita-sec.prosekko-lokalita .container-obsah .citat-container a {
	color: white;
}
#lokalita-sec.prosekko-lokalita .container-obsah h2 {
	color: white;
	text-align: left;
}
#lokalita-sec.prosekko-lokalita .info-image {
	z-index: 2;
	    flex-basis: 50%;
    width: 100%;
    position: relative;
}
#lokalita-sec.prosekko-lokalita .info-image .lokalita-image {
    display: block;
    width: 55rem;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.45));
    }

/* Mapa – wrapper (kotva pro pin) + klikací pin s odkazem na Google Maps */
#lokalita-sec.prosekko-lokalita .info-image .lokalita-map-wrap {
    position: relative;
    display: inline-block;
    line-height: 0;
}
#lokalita-sec.prosekko-lokalita .lokalita-pin {
    position: absolute;
    left: 31%;
    top: 58%;
    width: clamp(34px, 3.4vw, 48px);
    height: auto;
    transform: translate(-50%, -100%);
    transform-origin: bottom center;
    z-index: 4;
    line-height: 0;
    filter: drop-shadow(0 6px 7px rgba(0, 0, 0, 0.5));
    animation: prosekkoPinDrop .6s cubic-bezier(.2, .7, .2, 1) both;
    transition: transform .25s ease;
}
#lokalita-sec.prosekko-lokalita .lokalita-pin svg {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 2;
}
#lokalita-sec.prosekko-lokalita .lokalita-pin:hover {
    transform: translate(-50%, -100%) scale(1.12);
}
#lokalita-sec.prosekko-lokalita .lokalita-pin-pulse {
    position: absolute;
    left: 50%;
    bottom: 1px;
    width: 12px;
    height: 12px;
    transform: translate(-50%, 50%);
    border-radius: 50%;
    background: rgba(39, 40, 59, 0.55);
    z-index: 1;
    animation: prosekkoPinPulse 2.4s ease-out infinite;
}
@keyframes prosekkoPinDrop {
    0% { transform: translate(-50%, -185%) scale(.8); opacity: 0; }
    60% { transform: translate(-50%, -92%) scale(1.06); opacity: 1; }
    100% { transform: translate(-50%, -100%) scale(1); opacity: 1; }
}
@keyframes prosekkoPinPulse {
    0% { box-shadow: 0 0 0 0 rgba(39, 40, 59, 0.5); }
    70% { box-shadow: 0 0 0 18px rgba(39, 40, 59, 0); }
    100% { box-shadow: 0 0 0 0 rgba(39, 40, 59, 0); }
}
.prosekko-motion-reduce #lokalita-sec.prosekko-lokalita .lokalita-pin { animation: none; }
.prosekko-motion-reduce #lokalita-sec.prosekko-lokalita .lokalita-pin-pulse { display: none; }
.prosekko-galerie .hr-title {
    border: none;
    height: 2px;
    width: 15rem;
    background-color: #575757;
    margin: 1rem 0;
}
.prosekko-galerie h4 {
	    font-size: 1.6rem;
    color: #374a5e;
    font-weight: 400;
}
.prosekko-galerie .leaf-one {
	position: absolute;
bottom: 0;
    width: 6rem;
    height: auto;
    /*-webkit-transform: rotate(30deg);
    transform: rotate(30deg);*/
}
.prosekko-galerie {
	background-color: #f5f8f0;
	    position: relative;
    padding: 15rem 10rem 10rem 25rem;
     padding: 10rem 15rem 20rem 15rem;
} 
.prosekko-galerie .ngg-galleryoverview.default-view .ngg-gallery-thumbnail img {
	width: 100%;
}
.prezentace-container .title-table {
	width: 100%;
}
.prezentace-container .title-table .title-item {
	display: inline-block;
	box-sizing: border-box;
	width: auto;
	padding: 10px 20px;
	font-size: 15px;
	font-weight: bold;
	width: 12.2%
}
.prezentace-container .prezentace-item {
	width: 100%;
	border-bottom: 1px solid black;
}
.prezentace-container .prezentace-item:hover {
	opacity: 0.5;
}
.prezentace-container .prezentace-item .item {
	display: inline-block;
	box-sizing: border-box;
	width: auto;
	padding: 10px 20px;
	font-size: 16px;
	width: 12.2%;
	color: black;
}
/* Ceník – rovnoměrné sloupce flexně (sedí i po přidání sloupce Cena) */
.prezentace-container .title-table{display:flex;flex-wrap:nowrap;align-items:stretch;}
.prezentace-container .title-table .title-item{flex:1 1 0;width:auto;min-width:0;}
.prezentace-container .prezentace-item .prezentace-href{display:flex;flex-wrap:nowrap;width:100%;align-items:center;}
.prezentace-container .prezentace-item .item{flex:1 1 0;width:auto;min-width:0;padding-left:12px;padding-right:12px;}
.prosekko-standardy {
	background-color: #8c8d93;
	background-color: #717f8d;
	    position: relative;
    padding: 10rem 15rem 10rem 15rem;
} 
.prosekko-standardy .hr-title {
    border: none;
    height: 2px;
    width: 15rem;
    background-color: #fff;
    margin: 1rem 0px;
}
.prosekko-standardy h2 {
	color: white;
	    font-size: 2.5rem;
}
.prosekko-standardy h3 {
	color: white;
	margin-top: 20px;
	 font-size: 1.7rem;
	 margin-bottom: 20px;
	 padding: 0 10px;	
}
.prosekko-standardy h3 a {
		color: white;
	margin-top: 20px;
	 font-size: 1.7rem;
	 margin-bottom: 20px;
}
.standardy-container {
	width: 100%;
     display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    max-width: 1600px;
        margin: 0 auto;
}
.standardy-container > .info-box {
    width: 100%;
    overflow: hidden;
}
.standardy-container > .info-box img {
	max-height: 750px;
}
#contact-sec.contact-section {
		padding: 10rem 15rem 15rem 10rem;
	margin: 0;
	background-color: #717f8d;
	position: relative;
}
#contact-sec.contact-section  .leaf-one {
	position: absolute;
top: 0;
right: 10%;
    width: 8rem;
    height: auto;
    -webkit-transform: rotate(200deg);
    transform: rotate(200deg);
}
.contact-section .footer-column .columns p.address{
	    font-size: 2rem;
	    line-height: 1.6;
	    margin-bottom: 30px;
	    margin-top: 40px;
}
.contact-section .footer-column .columns p.phone {
	font-weight: bold;
}
.contact-section .footer-column .columns a {
    color: #fff;
    border-bottom: 1px solid #fff;
}
.contact-section .footer-column .columns a:hover {
    color: #3d3d4e;
    border-bottom: 0px solid #fff;
}
.contact-section .footer-column {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px;
    justify-content: center;
}
 .contact-section .footer-column .wpforms-form input[type=text] {
    color: white;
    background: transparent;
    border: unset;
    border-bottom: 2px solid rgba(255, 255, 255, 0.5);
}
 .contact-section .footer-column .wpforms-form .wpforms-field-label {
	color: #3c3d4e;
	font-weight: 400;
}
 .contact-section .footer-column .wpforms-form  #wpforms-submit-114 {
	background: #3c3d4e;
	color: white;
	text-transform: uppercase;
	font-size: 2rem;
	padding: 2rem 3rem;
	min-width: 200px;
	border-radius: 50px;
}
 .contact-section .footer-column .wpforms-form  #wpforms-submit-114:hover {
	 background: #717f8d;
 }
#contact-sec.contact-section h2 {
    text-align: left;
    color: white;
        font-size: 2.4rem;
}
#contact-sec.contact-section .form-container {
	margin-top: 0px;
}
#contact-sec.contact-section  div.wpforms-container-full {
	margin-top: 0px;
	padding-top: 0px;
}
#contact-sec.contact-section .dovozce {
	    font-size: 2rem;
	    font-weight: bold;
	    margin-bottom: 7%;
}
#contact-sec.contact-section .hr-title {
	position: relative;
	height: auto;
    width: 100%;
    z-index: 1;
    margin: 2rem 0;
    text-align: center;
        background-color: #717F8C;
}
#contact-sec.contact-section .hr-title.top-footer {
	background-color: #fff;
	height: 1px;
	max-width: 200px;
}
#contact-sec.contact-section .hr-title .title {
	font-size: 2rem;
	color: white;
	z-index: 3;
	    background-color: #717F8C;
	    padding: 5px 20px;
}
#contact-sec.contact-section .hr-title .hr-border {
	height: 2px;
    width: 15rem;
    width: 100%;
    z-index: -1;
    background-color: #fff;
position: absolute;
left: 0;
top: 49%;
}
#contact-sec.contact-section .image-f-title {
	display: inline-block;
	    margin: 30px auto;
    width: 100%;
    text-align: center;
}
#contact-sec.contact-section .footer-column .columns p {
	color: white;
}
#contact-sec.contact-section .footer-column .columns.first p {
	color: white;
	text-align: left;
}
#contact-sec.contact-section .footer-column .columns p.citat-form {
	color: #3c3d4e;
	text-align: left;
	font-weight: bold;
	    padding: 2rem;
	    padding-top: 0;
}
#colophon.site-footer {
    width: 100%;
    text-align: center;
    position: relative;
        background-color: #717f8d;
        margin: 0;
        left: 0;
        bottom: 0;
}
/*** MEDIA ***/
.single .bottom-single {
	display: none;
}

@media (max-width: 1500px) {

    .prezentace-container .prezentace-item .item {
        font-size: 15px;
        width: 11.2%;
    }
    .prezentace-container .title-table .title-item {
        font-size: 15px;
        width: 11.2%;
    }
}


    @media (max-width: 1200px) {

        .prezentace-container .prezentace-item .item {
            font-size: 13px;
            width: 11.2%;
        }

        #contact-sec.contact-section .footer-column .columns p.citat-form {
            margin-top: 30px;
        }
        #info-sec.info-sec,
        #lokalita-sec.prosekko-lokalita,
        #singles-sec.prosekko-singles,
        .prosekko-standardy,
        .prosekko-galerie,
        #contact-sec.contact-section {
            padding: 4rem 7rem 4rem 7rem;
        }

        .single-about#single-about-sec {
            padding: 4rem 7rem 4rem 7rem;
        }

        #tab-sec {
            padding: 4rem 7rem 4rem 7rem;
        }
    }
    @media (max-width: 1024px) {
        
        body #lokalita-sec.prosekko-lokalita {
            padding: 30px 15px;
        }
        #info-sec.info-sec .info-container {
             flex-direction: column;
        }
        #lokalita-sec.prosekko-lokalita .info-container {
           flex-direction: column;
        }
        #lokalita-sec.prosekko-lokalita .container-obsah {
            margin-top: 4rem;
        }
        #lokalita-sec.prosekko-lokalita .info-image .lokalita-image {
    width: 100%;
}
.prezentace-container .title-table .title-item {
        font-size: 10px
} 
    }
@media (max-width: 767px) {  
	.single-about .leaf-one {
		z-index: 4;
	}
	
            .prezentace-container .title-table .title-item {
        font-size: 8px;
        display: inline-flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center;
        align-content: center;
    }
	.single-about#single-about-sec .single-popis-container {
    max-width: 90%;
}
	
	#info-sec.info-sec,
	#lokalita-sec.prosekko-lokalita,
	#singles-sec.prosekko-singles,
	 .prosekko-standardy,
	 .prosekko-galerie,
	 #contact-sec.contact-section {
		padding: 30px 15px;
		box-sizing: border-box;
	}
.single-about#single-about-sec {
	padding: 30px 15px;
}
#tab-sec {
	padding: 30px 15px;
}
#tab-sec ul#tabs-nav li {
	width: 100%;
	float: none;
	margin: 0 auto;
	text-align: center;
}
#tab-sec ul#tabs-nav {
	overflow: visible;
}
.single-about .leaf-one {
    width: 3rem;
    }
    #contact-sec.contact-section .leaf-one {
	  width: 4rem;  
    }
    .prosekko-galerie .leaf-one {
        width: 4rem;
    }
    .prezentace-container .title-table .title-item {
        font-size: 8px;
    }
    .prezentace-container .prezentace-item .item {
        font-size: 10px;
        padding: 5px 10px;
        width: 11.2%;
    }
    .single .pudorys-single .single-thumbnail {
        width: 100%;
    }
}

@media (min-width: 768px) {


}

@media (max-width: 820px) {
    #masthead #site-custom-navigation {
        display: none;
    }
}




@media (min-width: 992px) {

    #contact-sec.contact-section .footer-column .columns p.citat-form {
        padding: 5rem;
    }


    #tab-sec ul#tabs-nav {
        padding: 5px;
        overflow: visible;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        text-align: center;
        margin: 0 auto;
        margin-bottom: 40px;
        width: 100%;
    }

    #tab-sec ul#tabs-nav li {
        float: none;
        margin-right: 2px;
        padding: 10px;
        display: inline-block;
    }
    #tab-sec #tabs-nav li a {
        border-radius: 50px;
        padding: 22px 28px;
    }

    #info-sec.info-sec .info-image {
        -ms-flex-preferred-size: 50%;
        flex-basis: 45%;
        margin-top: 119px;
    }

    .contact-section .footer-column .columns {
        flex: 1 1 25%;
        margin: 15px;
    }
    .contact-section .footer-column .columns.second {
        flex: 1 1 40%;
        margin: 15px;
    }
    #lokalita-sec.prosekko-lokalita .info-image .lokalita-image {
        display: block;
        width: 80rem;
    }

    #lokalita-sec.prosekko-lokalita .container-obsah {
        padding-left: 6%;
        max-width: 600px;
    }

    .prosekko-standardy h2 {
        margin-left: 15px;
    }
    .prosekko-standardy .standardy-popis {
        margin: 40px 0px;
    }
    .prosekko-standardy .hr-title {
        margin-left: 15px;
        margin-left: 0px;
    }
    .prosekko-standardy .more-st.btn {
        color: white;
        margin: 15px 0;
        padding: 10px;
    }
    .standardy-container > .info-box {
        flex: 1 1 30%;
        margin: 15px;
    }
    .info-container .info-text .container-obsah {
        text-align: left;
    }
}
/* ===== Tabulka místností na detailu bytu ===== */
.mistnosti-wrap {
    max-width: 560px;
    margin: 3rem auto 1rem;
    font-family: Montserrat, sans-serif;
    font-size: 1.2rem;
    color: #27283b;
}
.mistnosti-table {
    width: 100%;
}
.mistnosti-row {
    display: flex;
    align-items: center;
    padding: 0.95rem 0.3rem;
    border-top: 1px solid rgba(39, 40, 59, 0.18);
}
.mistnosti-row.mistnosti-head {
    border-top: none;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.mistnosti-row .mt-num {
    flex: 0 0 4.5rem;
}
.mistnosti-row .mt-name {
    flex: 1 1 auto;
    text-align: left;
    padding-right: 1rem;
}
.mistnosti-row .mt-area {
    flex: 0 0 auto;
    min-width: 5.5rem;
    text-align: right;
}
.mistnosti-row.mistnosti-total {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.mistnosti-row.mistnosti-total .mt-name {
    flex: 1 1 auto;
}
.mistnosti-row.mistnosti-total--last {
    border-bottom: 2px solid rgba(39, 40, 59, 0.55);
}
.mistnosti-note {
    margin: 0.75rem 0 0;
    font-size: 0.9rem;
    color: #717f8d;
    text-align: left;
}
@media (max-width: 520px) {
    .mistnosti-wrap {
        max-width: 100%;
        padding: 0 1.25rem;
    }
}

/* ===== Logo ve fixní hlavičce (proklik na úvod) ===== */
.fixed-header-logo {
    display: none;
}
.site-header.fixed-header .fixed-header-logo {
    display: block;
    position: absolute;
    left: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 8;
    line-height: 0;
}
.fixed-header-logo a,
.fixed-header-logo img.custom-logo {
    display: block;
}
.fixed-header-logo img.custom-logo {
    height: 45px;
    width: auto;
    max-width: none;
}
@media (max-width: 768px) {
    /* na mobilu logo uz je v mobilnim menu, ve fixni hlavicce ho neduplikujeme */
    .site-header.fixed-header .fixed-header-logo {
        display: none;
    }
}

/* ===== Galerie na konci detailu bytu (NextGen) ===== */
.galerie-single {
    background-color: #f5f8f0;
    padding: 5rem 2rem 7rem;
    text-align: center;
}
.galerie-single .galerie-single-inner {
    max-width: 1200px;
    margin: 0 auto;
}
.galerie-single .galerie-single-eyebrow {
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.35em;
    font-size: 0.8rem;
    font-weight: 600;
    color: #717f8d;
    margin-bottom: 0.75rem;
}
.galerie-single .galerie-single-nadpis {
    color: #27283b;
    font-size: 3rem;
    font-weight: 300;
    margin: 0 0 3rem;
}
/* NextGen náhledy -> velká responzivní mřížka s hover efektem */
.galerie-single .ngg-galleryoverview {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 14px;
    margin: 0 !important;
}
.galerie-single .ngg-gallery-thumbnail-box,
.galerie-single .ngg-gallery-thumbnail {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}
.galerie-single .ngg-gallery-thumbnail a {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
}
.galerie-single .ngg-gallery-thumbnail img {
    width: 100% !important;
    height: 260px !important;
    object-fit: cover;
    display: block;
    border: none !important;
    margin: 0 !important;
    transition: transform 0.5s ease;
}
.galerie-single .ngg-gallery-thumbnail a:hover img {
    transform: scale(1.06);
}
.galerie-single .ngg-gallery-thumbnail a::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(39, 40, 59, 0);
    transition: background 0.4s ease;
}
.galerie-single .ngg-gallery-thumbnail a:hover::after {
    background: rgba(39, 40, 59, 0.12);
}
@media (max-width: 782px) {
    .galerie-single {
        padding: 4rem 1.25rem 5rem;
    }
    .galerie-single .galerie-single-nadpis {
        font-size: 2.2rem;
        margin-bottom: 2rem;
    }
    .galerie-single .ngg-galleryoverview {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
        gap: 8px;
    }
    .galerie-single .ngg-gallery-thumbnail img {
        height: 180px !important;
    }
}

/* === Kompaktnejsi kontaktni formular v paticce === */
/* mensi vnitrni padding formulare (puvodne 5rem) */
#contact-sec.contact-section #wpforms-114 {
    padding: 1rem 1.75rem;
}
/* stlaceni mezer mezi poli */
#contact-sec.contact-section .wpforms-field {
    padding: 2px 0 !important;
    margin: 0 !important;
}
#contact-sec.contact-section .wpforms-field-row {
    margin-bottom: 0 !important;
}
#contact-sec.contact-section div.wpforms-container-full .wpforms-form .wpforms-field {
    padding: 2px 0 !important;
}
/* mensi pole a text */
#contact-sec.contact-section .wpforms-form input[type=text],
#contact-sec.contact-section .wpforms-form input[type=email],
#contact-sec.contact-section .wpforms-form input[type=tel],
#contact-sec.contact-section .wpforms-form select,
#contact-sec.contact-section .wpforms-form textarea {
    font-size: 1.25rem;
    padding: 3px 0;
}
#contact-sec.contact-section .wpforms-form textarea {
    min-height: 40px;
}
#contact-sec.contact-section .wpforms-form .wpforms-field-label {
    font-size: 1.15rem;
    margin-bottom: 1px;
    font-weight: 400;
    line-height: 1.2;
}
/* mensi a kompaktnejsi tlacitko */
#contact-sec.contact-section .footer-column .wpforms-form #wpforms-submit-114 {
    font-size: 1.3rem;
    padding: 0.7rem 2rem;
    min-width: 130px;
    margin-top: 0.5rem;
}
/* jemnejsi a mensi tmavy box za formularem */
#contact-sec.contact-section .form-container .form-overlay {
    opacity: 0.6;
    border-radius: 12px;
}

/* === Vzhled potvrzeni po odeslani formulare === */
#contact-sec.contact-section .wpforms-confirmation-container-full,
#contact-sec.contact-section div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 12px;
    color: #fff;
    padding: 2.5rem 2rem;
    margin: 0 auto;
    text-align: center;
}
#contact-sec.contact-section .wpforms-confirmation-container-full p {
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.5;
    margin: 0;
}

/* === Progressbar pri skrolovani (nahore pres celou sirku) === */
.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0;
    height: 3px;
    background: #27283b;
    z-index: 100000;
    pointer-events: none;
    transition: width 0.1s ease-out;
}

/* ===== Detail bytu – hlavička (gallery styl) + parametry s ikonami ===== */
.single-about .single-popis-container {
    text-align: center;
}
.single-about .detail-header {
    text-align: center;
    margin-bottom: 4.55rem;
}
.single-about .detail-eyebrow {
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.35em;
    font-size: 1.04rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.55);
    margin-bottom: 1.17rem;
}
.single-about .detail-unit {
    font-size: 4.42rem;
    font-weight: 300;
    color: #fff;
    line-height: 1;
    margin: 0 0 1.82rem;
    display: inline-block;
}
.single-about .detail-sub {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.17rem;
    flex-wrap: wrap;
}
.single-about .detail-typ {
  font-size: 1.95rem;
  font-weight: 400;
  color: #fff;
}
.single-about .detail-status {
  font-size: 0.94rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
  padding: 0.4em 1em;
  border-radius: 50px;
  color: #fff;
  line-height: 1;
}
.single-about .detail-status.is-ok { background: #3f8f5f; }
.single-about .detail-status.is-no { background: #b0555f; }

.single-about .detail-params {
  list-style: none;
  max-width: 494px;
  margin: 0 auto 3.9rem;
  padding: 0;
  text-align: left;
}
.single-about .detail-params li {
  display: flex;
  align-items: center;
  gap: 1.24rem;
  padding: 1.17rem 0.33rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}
.single-about .detail-params li:first-child { border-top: 1px solid rgba(255, 255, 255, 0.18); }
.single-about .detail-params .dp-ico {
  flex: 0 0 auto;
  width: 29px;
  height: 29px;
  color: rgba(255, 255, 255, 0.7);
  display: inline-flex;
}
.single-about .detail-params .dp-ico svg { width: 100%; height: 100%; display: block; }
.single-about .detail-params .dp-label {
  flex: 1 1 auto;
  font-size: 1.37rem;
  color: rgba(255, 255, 255, 0.82);
}
.single-about .detail-params .dp-val {
  flex: 0 0 auto;
  font-size: 1.5rem;
  font-weight: 600;
  color: #fff;
}
.single-about .detail-price {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 0.52rem;
}
.single-about .detail-price .dp-price-label {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 0.94rem;
  color: rgba(255, 255, 255, 0.55);
}
.single-about .detail-price .dp-price-val {
  font-size: 2.6rem;
  font-weight: 600;
  color: #fff;
}
@media (max-width: 782px) {
  .single-about .detail-unit { font-size: 3.25rem; }
  .single-about .detail-typ { font-size: 1.63rem; }
  .single-about .detail-params { max-width: 100%; }
  .single-about .detail-params .dp-label { font-size: 1.24rem; }
  .single-about .detail-params .dp-val { font-size: 1.37rem; }
}

/* ===== Homepage CTA odkazy .lok-a – sjednoceno s tlačítky detailu ===== */
.lok-a {
  display: inline-flex !important;
  align-items: center;
  gap: 0.55em;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 1rem !important;
  font-weight: 700;
  line-height: 1;
  padding: 15px 32px;
  border-radius: 50px;
  border: 1.5px solid rgba(39, 40, 59, 0.3) !important;
  color: #27283b !important;
  background: transparent !important;
  transition: background-color .25s ease, color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
}
.lok-a::after {
  content: '\2192'; /* → */
  font-size: 1.15em;
  line-height: 1;
  transition: transform .25s ease;
}
.lok-a:hover {
  background: #27283b !important;
  color: #fff !important;
  border-color: #27283b !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(39, 40, 59, 0.16);
}
.lok-a:hover::after { transform: translateX(4px); }
/* skrytá „zpět" varianta na detailu – bez pravé šipky */
.lok-a.back::after { content: none; }

/* ===== FÁZE 1: jednotné nadpisy sekcí (eyebrow + nadpis) ===== */
.section-eyebrow {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: 0.9rem;
  color: #717f8d;
}
.prosekko-standardy .section-eyebrow,
.prosekko-lokalita .section-eyebrow,
#contact-sec.contact-section .section-eyebrow {
  color: rgba(255, 255, 255, 0.6);
}
/* jednotná velikost + váha nadpisů sekcí */
#info-sec .container-obsah h1,
#info-sec .container-obsah h2,
#info-sec .container-obsah h3,
.prosekko-lokalita .container-obsah h1,
.prosekko-lokalita .container-obsah h2,
.prosekko-lokalita .container-obsah h3,
.prosekko-singles .inner-container > h2,
.prosekko-standardy .inner-container > h2,
.prosekko-galerie .galerie-obsah h1,
.prosekko-galerie .galerie-obsah h2,
.prosekko-galerie .galerie-obsah h3,
#contact-sec.contact-section > h2 {
  font-size: clamp(2rem, 3.4vw, 2.8rem) !important;
  font-weight: 300 !important;
  line-height: 1.15 !important;
  margin: 0 0 1.3rem !important;
}
/* barvy nadpisů podle pozadí */
#info-sec .container-obsah h1,
#info-sec .container-obsah h2,
#info-sec .container-obsah h3,
.prosekko-singles .inner-container > h2,
.prosekko-galerie .galerie-obsah h1,
.prosekko-galerie .galerie-obsah h2,
.prosekko-galerie .galerie-obsah h3 {
  color: #27283b !important;
}
.prosekko-standardy .inner-container > h2,
.prosekko-lokalita .container-obsah h1,
.prosekko-lokalita .container-obsah h2,
.prosekko-lokalita .container-obsah h3,
#contact-sec.contact-section > h2 {
  color: #fff !important;
}

/* Podnadpisy galerií (názvy NextGen galerií) – kategorie label */
.prosekko-galerie .galerie-obsah h4,
.galerie-single .galerie-single-obsah h4 {
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #717f8d !important;
  margin: 3.5rem 0 1.5rem !important;
}

/* ===== FÁZE 2: jednotný rytmus a šířka sekcí ===== */
#info-sec.info-sec { padding: clamp(4rem, 7vw, 8rem) clamp(1.5rem, 7vw, 9rem); }
#singles-sec.prosekko-singles { padding: clamp(4rem, 7vw, 8rem) clamp(1.5rem, 7vw, 9rem); }
#lokalita-sec.prosekko-lokalita { padding: clamp(4rem, 7vw, 8rem) clamp(1.5rem, 7vw, 9rem) clamp(4rem, 7vw, 8rem) 0; }
.prosekko-galerie { padding: clamp(4rem, 7vw, 8rem) clamp(1.5rem, 7vw, 9rem); }
.prosekko-standardy { padding: clamp(4rem, 7vw, 8rem) clamp(1.5rem, 7vw, 9rem); }
#contact-sec.contact-section { padding: clamp(4rem, 7vw, 8rem) clamp(1.5rem, 7vw, 9rem) clamp(4rem, 7vw, 8rem) clamp(1.5rem, 7vw, 9rem); }

/* kontejner obsahu – ať se na širokých monitorech neroztahuje donekonečna */
.prosekko-singles .inner-container,
.prosekko-standardy .inner-container { max-width: 1400px; margin-left: auto; margin-right: auto; }

/* ===== FÁZE 3: tlačítka standardů + odeslání formuláře ===== */
.prosekko-standardy .more-st.btn {
  display: inline-flex !important;
  align-items: center;
  gap: 0.55em;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  line-height: 1;
  padding: 13px 28px !important;
  border-radius: 50px !important;
  border: 1.5px solid rgba(255, 255, 255, 0.5) !important;
  color: #fff !important;
  background: transparent !important;
  margin: 1.6rem 0 0 !important;
  transition: background-color .25s ease, color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
}
.prosekko-standardy .more-st.btn::after {
  content: '\2192';
  font-size: 1.15em;
  transition: transform .25s ease;
}
.prosekko-standardy .more-st.btn:hover {
  background: #fff !important;
  color: #27283b !important;
  border-color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}
.prosekko-standardy .more-st.btn:hover::after { transform: translateX(4px); }

/* Odeslání kontaktního formuláře – plné tmavé CTA na slate pozadí */
#contact-sec.contact-section .footer-column .wpforms-form #wpforms-submit-114 {
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  padding: 14px 40px !important;
  border-radius: 50px !important;
  border: none !important;
  background: #27283b !important;
  color: #fff !important;
  transition: background-color .25s ease, transform .2s ease, box-shadow .25s ease !important;
}
#contact-sec.contact-section .footer-column .wpforms-form #wpforms-submit-114:hover {
  background: #374a5e !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.28) !important;
}

/* ===== Sekce Lokalita – fakta s ikonami + kontrast na světlé mapě ===== */
.prosekko-lokalita .section-eyebrow { color: rgba(255, 255, 255, 0.65) !important; }
.prosekko-lokalita .container-obsah h1,
.prosekko-lokalita .container-obsah h2,
.prosekko-lokalita .container-obsah h3 { color: #fff !important; }
.lokalita-fakta {
  list-style: none;
  margin: 2.2rem 0 2.5rem;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem 2rem;
}
.lokalita-fakta .lok-fakt {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  font-size: 1.1rem;
  font-weight: 500;
  color: #fff;
}
.lokalita-fakta .lok-fakt-ico {
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  color: rgba(255, 255, 255, 0.8);
  display: inline-flex;
}
.lokalita-fakta .lok-fakt-ico svg { width: 100%; height: 100%; display: block; }
@media (max-width: 600px) {
  .lokalita-fakta { gap: 0.75rem 1.25rem; }
  .lokalita-fakta .lok-fakt { font-size: 1rem; }
}

/* Tlačítko v sekci Lokalita – světlá varianta (slate pozadí) */
.prosekko-lokalita .lok-a {
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.55) !important;
}
.prosekko-lokalita .lok-a:hover {
  background: #fff !important;
  color: #27283b !important;
  border-color: #fff !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}

/* ===== Standardy – sjednocení nadpisu (bez staré linky) + odsazení tlačítka ===== */
.prosekko-standardy .inner-container .hr-title,
.prosekko-singles .inner-container .hr-title { display: none !important; }
.prosekko-standardy .inner-container { text-align: left; }
.prosekko-standardy .btn-left {
  float: none !important;
  width: auto !important;
  display: flex !important;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 16px;
  clear: both;
  margin: 3.5rem 0 2rem !important;
  text-align: left;
  height: auto;
}

/* Jednotná tlačítka sekce Standardy – ghost pill se šipkou (bez ikony) */
.prosekko-standardy .btn-left .std-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.7em;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1;
  padding: 15px 34px;
  border-radius: 50px;
  border: 1.5px solid rgba(255, 255, 255, 0.5);
  background: transparent;
  color: #fff !important;
  cursor: pointer;
  transition: background-color .25s ease, color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
}
.prosekko-standardy .btn-left .std-btn .std-btn-arrow {
  font-size: 1.15em;
  line-height: 1;
  transition: transform .25s ease;
}
.prosekko-standardy .btn-left .std-btn:hover {
  background: #fff;
  color: #27283b !important;
  border-color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}
.prosekko-standardy .btn-left .std-btn:hover .std-btn-arrow { transform: translateX(4px); }


/* =====================================================
   FÁZE 4A — moderní UX prvky (decentní / prémiová poloha)
   ===================================================== */

/* 1) Ukazatel průběhu scrollu */
.prosekko-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:100001;
	transform:scaleX(0);transform-origin:0 50%;pointer-events:none;
	background:linear-gradient(90deg,#8a5a86,#4a2a55);
	will-change:transform;transition:transform .05s linear;}

/* 2) Plovoucí tlačítko "nahoru" */
.prosekko-totop{position:fixed;right:22px;bottom:22px;z-index:100001;
	width:46px;height:46px;border:none;border-radius:50%;
	background:#2a2130;color:#fff;cursor:pointer;
	display:flex;align-items:center;justify-content:center;
	opacity:0;visibility:hidden;transform:translateY(12px);
	box-shadow:0 8px 24px rgba(20,20,40,.28);
	transition:opacity .3s,transform .3s,background .2s,visibility .3s;}
.prosekko-totop.is-visible{opacity:1;visibility:visible;transform:none;}
.prosekko-totop:hover{background:#4a2a55;color:#fff;}
.prosekko-totop svg{width:20px;height:20px;}
@media(max-width:600px){.prosekko-totop{right:16px;bottom:16px;width:42px;height:42px;}}

/* 3) Lazy + spinner + blur-up "focus-in" obrázků */
.prosekko-img{opacity:0;filter:blur(14px);transform:scale(1.03);
	will-change:opacity,filter,transform;
	transition:opacity .8s ease,filter .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);}
.prosekko-img.pk-ready{opacity:1;filter:none;transform:none;}
/* Spinner nad načítaným obrázkem */
.prosekko-spinner{position:absolute;top:50%;left:50%;width:34px;height:34px;margin:-17px 0 0 -17px;
	border-radius:50%;border:3px solid rgba(39,40,59,.16);border-top-color:#717f8d;
	animation:prosekkoSpin .8s linear infinite;pointer-events:none;z-index:2;
	opacity:1;transition:opacity .35s ease;}
.prosekko-spinner.is-done{opacity:0;}
@keyframes prosekkoSpin{to{transform:rotate(360deg);}}
/* Preloader vypnutý – ať je vidět efekt načítání obrázků (reverzibilní: smaž tento řádek) */
.preloader{display:none !important;}

/* 4) Postupné naskakování prvků (opt-in přes data-reveal) */
[data-reveal]{opacity:0;transform:translateY(22px);
	transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);}
[data-reveal].is-revealed{opacity:1;transform:none;}

/* 5) Hover "lift" na kartách bytů */
.prezentace-item{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease;}
.prezentace-item:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(20,20,40,.16);}

/* 6) Animované podtržení odkazů v navigaci */
#masthead #site-custom-navigation li a{position:relative;}
#masthead #site-custom-navigation li a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;
	height:1px;background:currentColor;opacity:.85;
	transform:scaleX(0);transform-origin:left center;transition:transform .3s ease;}
#masthead #site-custom-navigation li a:hover::after,
#masthead #site-custom-navigation li a:focus-visible::after{transform:scaleX(1);}

/* 8) Hero efekty — decentní aurora + světlo za kurzorem (Fáze 4B) */
.prosekko-hero-fx{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden;}
.prosekko-hero-fx .prosekko-aurora{position:absolute;inset:-25%;opacity:.32;mix-blend-mode:soft-light;
	background:
		radial-gradient(38% 48% at 22% 32%, rgba(138,90,134,.9), transparent 62%),
		radial-gradient(42% 52% at 78% 26%, rgba(96,126,168,.85), transparent 62%),
		radial-gradient(48% 58% at 62% 78%, rgba(205,168,120,.7), transparent 62%);
	filter:blur(34px);animation:prosekkoAurora 20s ease-in-out infinite alternate;}
@keyframes prosekkoAurora{
	0%{transform:translate3d(-4%,-2%,0) scale(1.05) rotate(0deg);}
	50%{transform:translate3d(3%,2%,0) scale(1.16) rotate(2deg);}
	100%{transform:translate3d(-2%,3%,0) scale(1.09) rotate(-1deg);}}
.prosekko-hero-fx .prosekko-spotlight{position:absolute;inset:0;--mx:50%;--my:38%;opacity:.5;mix-blend-mode:screen;
	background:radial-gradient(320px 320px at var(--mx) var(--my), rgba(255,248,232,.22), transparent 68%);}

/* 7) Klidná verze pro prefers-reduced-motion */
.prosekko-motion-reduce .prosekko-img{opacity:1 !important;filter:none !important;transform:none !important;transition:none !important;}
.prosekko-motion-reduce .prosekko-hero-fx{display:none !important;}
.prosekko-motion-reduce .prosekko-spinner{display:none !important;}
.prosekko-motion-reduce [data-reveal]{opacity:1 !important;transform:none !important;transition:none !important;}
.prosekko-motion-reduce .prezentace-item{transition:background .2s !important;}
.prosekko-motion-reduce .prezentace-item:hover{transform:none !important;}
.prosekko-motion-reduce #masthead #site-custom-navigation li a::after{transition:none !important;}
.prosekko-motion-reduce .prosekko-progress{transition:none !important;}
.prosekko-motion-reduce .prosekko-totop{transition:opacity .2s,visibility .2s !important;transform:none !important;}

/* === Mobilni horni lista: vzdy prilepena nahore (fix mizeni pri scrollu) === */
@media only screen and (max-width: 820px) {
	.mobile-nav {
		top: 0;
		left: 0;
		right: 0;
	}
}

/* === Mobilni menu – spolehlivy CSS toggle (nezavisly na GSAP) === */
.mobile-menu .mobile-span-one,
.mobile-menu .mobile-span-two {
	transition: transform 0.35s ease, background-color 0.3s ease;
}
.mobile-links-container {
	transition: height 0.4s ease;
}
html.mnav-open .mobile-links-container {
	height: 100vh;
}
html.mnav-open .mobile-menu-links li {
	opacity: 1;
}
html.mnav-open .mobile-menu .mobile-span-one {
	transform: translateY(0.6rem) rotate(45deg);
	background-color: #fff;
}
html.mnav-open .mobile-menu .mobile-span-two {
	transform: translateY(-0.6rem) rotate(-45deg);
	background-color: #fff;
}

/* ===== Řádek nabídky bytů – čistý hover (bez blednutí a nadskakování) ===== */
.prezentace-container .prezentace-item {
  transition: background-color .2s ease, color .2s ease !important;
}
.prezentace-container .prezentace-item:hover {
  opacity: 1 !important;
  transform: none !important;
  box-shadow: none !important;
  background-color: rgba(39, 40, 59, 0.05);
}
.prezentace-container .prezentace-item:hover .item {
  color: #27283b;
}

/* === Detail bytu: hero na mobilu max na vysku obrazovky === */
@media only screen and (max-width: 820px) {
	.single .landing-sec {
		height: 100vh;
		height: 100dvh;
		overflow: hidden;
	}
	.single .landing-sec .main-carousel {
		margin: 0;
		height: 100vh;
		height: 100dvh;
	}
	.single .landing-sec .main-carousel img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}
}


/* =====================================================
   Podstránky (page.php) – moderní hlavička + container
   ===================================================== */
.prosekko-subpage .prosekko-page-hero{
	background:#717f8d;
	padding:170px 20px 68px;
	text-align:center;
	position:relative;
	overflow:hidden;
}
.prosekko-subpage .prosekko-page-hero-inner{max-width:900px;margin:0 auto;position:relative;z-index:1;}
.prosekko-subpage .prosekko-page-hero .section-eyebrow{
	color:rgba(255,255,255,.82);
	letter-spacing:.28em;
}
.prosekko-subpage .prosekko-page-title{
	color:#fff;
	font-size:clamp(2rem,4vw,3.4rem);
	font-weight:400;
	letter-spacing:1px;
	margin:.5rem 0 0;
	line-height:1.15;
}
.prosekko-subpage .prosekko-page-body{
	background:#f5f8f0;
	padding:64px 20px 90px;
}
.prosekko-subpage .prosekko-page-container{
	max-width:820px;
	margin:0 auto;
	color:#27283b;
	font-size:1.05rem;
	line-height:1.75;
}
.prosekko-subpage .prosekko-page-container h2{font-size:1.7rem;font-weight:500;color:#27283b;margin:2.4rem 0 .8rem;}
.prosekko-subpage .prosekko-page-container h3{font-size:1.3rem;font-weight:500;color:#27283b;margin:1.8rem 0 .6rem;}
.prosekko-subpage .prosekko-page-container p{margin:0 0 1.15rem;}
.prosekko-subpage .prosekko-page-container a{color:#4a2a55;text-decoration:underline;}
.prosekko-subpage .prosekko-page-container a:hover{opacity:.75;}
.prosekko-subpage .prosekko-page-container ul,
.prosekko-subpage .prosekko-page-container ol{margin:0 0 1.25rem 1.4rem;}
.prosekko-subpage .prosekko-page-container li{margin:.35rem 0;}
.prosekko-subpage .prosekko-page-container hr{border:none;border-top:1px solid rgba(39,40,59,.15);margin:2.2rem 0;}
.prosekko-subpage .entry-footer.prosekko-page-container{margin-top:2rem;font-size:.9rem;opacity:.7;}
@media (max-width:600px){
	.prosekko-subpage .prosekko-page-hero{padding:128px 16px 44px;}
	.prosekko-subpage .prosekko-page-body{padding:40px 16px 60px;}
	.prosekko-subpage .prosekko-page-container{font-size:1rem;}
}
.prosekko-subpage .prosekko-page-container li{font-size:1.05rem;line-height:1.7;}
@media (max-width:600px){ .prosekko-subpage .prosekko-page-container li{font-size:1rem;} }


/* Podstránka SE sidebarem (šablona „Stránka se sidebarem") */
.page-template-page-sidebar .prosekko-page-inner{
	display:flex;
	gap:48px;
	max-width:1160px;
	margin:0 auto;
	align-items:flex-start;
}
.page-template-page-sidebar .prosekko-page-container{max-width:none;margin:0;flex:1 1 auto;min-width:0;}
.page-template-page-sidebar #secondary{flex:0 0 280px;width:280px;box-sizing:border-box;}
.page-template-page-sidebar #secondary .widget{margin:0 0 2rem;font-size:.98rem;}
.page-template-page-sidebar #secondary .widget-title,
.page-template-page-sidebar #secondary h2{font-size:1.15rem;font-weight:500;color:#27283b;margin:0 0 .7rem;}
.page-template-page-sidebar #secondary ul{list-style:none;margin:0;padding:0;}
.page-template-page-sidebar #secondary li{margin:.35rem 0;}
.page-template-page-sidebar #secondary a{color:#4a2a55;text-decoration:none;}
.page-template-page-sidebar #secondary a:hover{text-decoration:underline;}
@media (max-width:900px){
	.page-template-page-sidebar .prosekko-page-inner{flex-direction:column;gap:36px;}
	.page-template-page-sidebar #secondary{width:100%;flex:none;}
}


/* Standardy – obrázky jako proklik na PDF + hover efekt */
.prosekko-standardy .info-box .std-img-link{
	position:relative;
	display:block;
	overflow:hidden;
	cursor:pointer;
}
.prosekko-standardy .info-box .std-img-link img{
	display:block;
	width:100%;
	height:750px;
	object-fit:cover;
	transition:transform .55s cubic-bezier(.2,.7,.2,1);
}
@media (max-width:1200px){ .prosekko-standardy .info-box .std-img-link img{height:600px;} }
@media (max-width:767px){ .prosekko-standardy .info-box .std-img-link img{height:70vw;max-height:520px;} }
.prosekko-standardy .info-box .std-img-link:hover img,
.prosekko-standardy .info-box .std-img-link:focus-visible img{transform:scale(1.06);}
.prosekko-standardy .info-box .std-img-link::after{
	content:"";position:absolute;inset:0;
	background:rgba(39,40,59,0);
	transition:background .4s ease;
	pointer-events:none;
}
.prosekko-standardy .info-box .std-img-link:hover::after,
.prosekko-standardy .info-box .std-img-link:focus-visible::after{background:rgba(39,40,59,.30);}
.prosekko-standardy .info-box .std-img-badge{
	position:absolute;left:50%;top:50%;
	transform:translate(-50%,-50%) translateY(10px);
	opacity:0;transition:opacity .4s ease,transform .4s ease;
	background:#fff;color:#27283b;
	padding:11px 22px;border-radius:50px;
	font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
	white-space:nowrap;z-index:2;pointer-events:none;
	box-shadow:0 8px 22px rgba(20,20,40,.25);
}
.prosekko-standardy .info-box .std-img-link:hover .std-img-badge,
.prosekko-standardy .info-box .std-img-link:focus-visible .std-img-badge{
	opacity:1;transform:translate(-50%,-50%);
}
.prosekko-motion-reduce .prosekko-standardy .info-box .std-img-link img{transition:none !important;}
.prosekko-motion-reduce .prosekko-standardy .info-box .std-img-link:hover img{transform:none !important;}


/* Detail bytu: hero obrázek vždy vyplní hero a je vycentrovaný (desktop i mobil) */
.single .landing-sec .main-carousel { overflow: hidden; }
.single .landing-sec .main-carousel img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}
