.nav-overlay.active + header.flexi-header a.jfdleft,
.nav-overlay.active + header.flexi-header {
    z-index: 10001;
  }

.nav-overlay.active + header.flexi-header nav.nav-menu {
    display: none;
}

.nav-overlay.active ul#menu-jfd {
    gap: 26px;
    margin-bottom: 150px;
}





/* Hamburger button */
.hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 10001;
  position: relative;
  background: none;
  border: none;
  padding: 0;
  margin-left: 8px;
}

.hamburger span {
  display: block;
  width: 24px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transition: all 0.3s ease;
  transform-origin: center;
}

/* Overlay */
.nav-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.91);
      backdrop-filter: blur(10px);
  z-index: 10000;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.nav-overlay.active {
  display: flex;
  opacity: 1;
}

/* Křížek */
.nav-overlay-close {
  position: absolute;
    top: 11px;
    right: 11px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  background: none;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
}

.nav-overlay-close::before,
.nav-overlay-close::after {
  content: '';
  position: absolute;
  width: 28px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
}

.nav-overlay-close::before {
  transform: rotate(45deg);
}

.nav-overlay-close::after {
  transform: rotate(-45deg);
}

/* Menu v overlayi */
.nav-overlay ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.nav-overlay ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 1.1rem !important;
    font-weight: 300 !important;
    letter-spacing: 0.05em;
    transition: color 0.2s;
}

.nav-overlay ul li a:hover {
  color: #aaa;
}


@media only screen and (max-width:1680px){

}

@media only screen and (max-width:1320px){

.page-content h2.elementor-heading-title.elementor-size-default:first-of-type, .page-content h2 {
 
    font-size: 1.5rem;
}

    .jfd-prelative,
    .jfd-imagemap-wrapper,
    main#content > .page-content > .elementor > .elementor-element > .e-con-inner,
    footer.flexi-footer > .elementor > .elementor-element > .elementor-element > .e-con-inner > .elementor-element > .elementor-element
     {
        padding-left: 25px !important;
        padding-right: 25px !important; 
    }

.page-header {
 
    height: 142px;
}

.elementor-element.superstrong.ujfd.elementor-widget.elementor-widget-text-editor {
    max-width: calc(100% - 250px);
}

.elementor-element.e-con-full.jflogobox2.e-flex.e-con.e-child {
    max-width: 220px;
}

.logo.picture {
    margin-left: 15%;
}

.section-content h2  {
    margin-left: -10%;
}

    .section-content p {
        margin-left: -20%;
        padding: 0px 30px;
    }
 
.section-content p + a  {
    margin-left: -40%;
}




}

@media only screen and  (max-width: 1100px) {

 

.logo.picture {
    margin-left: auto;
}

.section-content h2  {
    margin-left: 0;
}

    .section-content p {
        margin-left: 0;
        padding: 0px 20px;
    }
 
.section-content p + a  {
    margin-left: 0;
}

.page-content h2.elementor-heading-title.elementor-size-default:first-of-type, .page-content h2 {
 
    font-size: 1.25rem;
}
.section {
 
    padding-bottom: 30px;
}

.section.section3 {
 
    padding-bottom: 50px;
}

.container01 {
   height: auto;
}

a.elementor-button.elementor-button-link.elementor-size-sm {
    width: 250px;
}

.section-bg {
                transform: skewY(0deg);
            }
 
  .container {
                flex-direction: column;
                transform: skewY(0deg);
                height: auto;
            }

            .section-content {
                transform: skewY(0deg);
            }

            .section-content h2 {
                font-size: 22px;
            }

            .container02 .text-content h2,
            .container03 .text-content h2,
            .container05 h2 {
                font-size: 32px;
            }

            .container02 .images-grid {
                grid-template-columns: 1fr;
            }

            .container02,
            .container03,
            .container04,
            .container05 {
                padding: 60px 20px;
            }

            .video-overlay video {
                width: 100%;
            }


}


        /* Responzivní design */
@media only screen and  (max-width: 1024px) {

nav.trp-language-switcher {
    right: auto;
    left: 200px;
}

    .elementor-element.elementor-widget__width-initial.elementor-absolute.imgkrb.elementor-widget.elementor-widget-image {
    position: relative;
    padding-left: 50px;
            top: 9px;
}

.elementor-element.ukrbu.e-flex.e-con-boxed.e-con.e-parent.e-lazyloaded .elementor-element.superstrong.elementor-widget__width-initial.elementor-widget.elementor-widget-text-editor {
    width: 100%;
}

.elementor-element.elementor-element-7d2bd02.e-con-full.jflogobox2.e-flex.e-con.e-child {
    position: relative;
    align-self: flex-end;
    margin: 10px -25px -168px 0;
    z-index: 2;
}

.elementor-element.superstrong.ujfd.elementor-widget.elementor-widget-text-editor {
    max-width: 100%;
}

    .wp-singular .page-header.animated h1.entry-title {
 
    padding-right: 22px;
}

.nav-container {
 
    padding-right: 15px;
}

ul#menu-jfd {
   gap: 15px;
}

.jfdleft {
   padding: 15px 55px 7px 40px;
}

 

            .nav-links {
                gap: 20px;
            }

            .nav-links a {
                font-size: 14px;
            }

            .container02 .content-wrapper,
            .container03 .content-wrapper {
                grid-template-columns: 1fr;
            }

            .footer-grid {
                grid-template-columns: 1fr;
                gap: 40px;
            }
        }

@media only screen and  (max-width: 968px) {

.nav-home {
margin-right: -19px;
}


.nav-container {
    padding: 0;
    flex-wrap: wrap;
    gap: 15px;
}

.nav-links {
    flex-wrap: wrap;
    gap: 15px;
    font-size: 13px;
}

          
}


@media (max-width: 768px) {

.elementor-element.jfd.mezindapis.elementor-widget.elementor-widget-heading h2 {
        line-height: 105%;
        font-size: 1.75rem;
                text-align: right;
    }

.elementor-element.jfd.mezindapis.elementor-widget.elementor-widget-heading {
   padding: 16px 30px 24px 58px;
}

    .jfd-parallaxbox-content h2 {
        font-size: 2.5rem !important;
    }

    .page-content h3.elementor-heading-title, .page-content h3,
    .page-content h2.elementor-heading-title.elementor-size-default:first-of-type, .page-content h2 {
 
    line-height: 120%;
}

    .elementor-element.jflogobox.e-flex.e-con.e-child {
    max-width: 188px;
}

.wp-singular .page-header.animated h1.entry-title {
    max-width: calc(100% - 223px);
    text-align: right;
 
}

    .page-header {
 
    height: 200px;
}

.nav-home {
        margin-right: -27px !important;
}


  .nav-menu .nav-container .flexi-menu {
    display: none;
  }

  .hamburger {
display: flex !important;
  }

    .wp-singular .page-header.animated h1.entry-title {
 
        font-size: 1.6rem;
    }

    .wp-singular .page-header.animated h1.entry-title {
 
        padding-left: 50px;
    }

.jfd-parallaxbox-content {
    padding: 40px 50px;
}

         .jfd-parallaxbox-wrapper {
 
          aspect-ratio: none; 
 
        }

.elementor-element.elementor-widget.elementor-widget-jfd_parallaxbox,
.elementor-element.elementor-widget.elementor-widget-jfd_parallaxbox .elementor-widget-container,
.elementor-element.elementor-widget.elementor-widget-jfd_parallaxbox .elementor-widget-container .jfd-parallaxbox-wrapper,
.elementor-element.elementor-widget.elementor-widget-jfd_parallaxbox .elementor-widget-container .jfd-parallaxbox-wrapper .jfd-parallaxbox-content,
.elementor-element.elementor-widget.elementor-widget-jfd_parallaxbox .elementor-widget-container .jfd-parallaxbox-wrapper .jfd-parallaxbox-bg
{
    min-height: 224px !important;
    height: 224px !important;
}

.jfd-parallaxbox-content,
.jfd-parallaxbox-content h2 {
    padding: 0 !important;
    margin: 0  !important;
        flex-direction: row;
}

        .elementor-element.e-con-full.jflogobox2.e-flex.e-con.e-child {
 
        margin-top: -102px;
    }

}



@media (max-width: 550px) {


.elementor-element.elementor-element-69d7534.elementor-widget.elementor-widget-jfd_imagemap {
    transform: scale(1.27);
    left: 1%;
    top: 0;
}


div#interier-jednim-tahem > .elementor-element.e-flex.e-con-boxed.e-con.e-child {
    height: 400px;
    overflow: hidden;
}

div#interier-jednim-tahem > .elementor-element.e-flex.e-con-boxed.e-con.e-child > .e-con-inner > .elementor-widget.elementor-widget-jfd_imagemap
{
    transform: scale(2.3);
    left: 51%;
    top: 51px;
}

.wp-singular .page-header.animated h1.entry-title {
 
    background: linear-gradient(
        to bottom,
        rgba(165, 25, 59, 0.1) 0%,
        rgba(165, 25, 59, 0.75) 20%,
        #a5193b 100%
    )
}


a.elementor-button.elementor-button-link.elementor-size-sm {
    width: auto;
}

.section.section1 .section-content {
    padding-top: 150px;
}

.section.section2 .section-content ,
.section.section3 .section-content {
    padding-top: 90px;
}

    .elementor-element.jfd.mezindapis.elementor-widget.elementor-widget-heading h2 {
        font-size: 1.5rem;
    }

    .jfd-parallaxbox-content h2 {
        font-size: 2rem !important;
    }

    .page-header {
 
    height: 230px;
}

    .wp-singular .page-header.animated h1.entry-title {
        max-width: calc(100% - 85px);
        padding-top: 64px;
        font-size: 1.6rem;
    }



    
}


@media (max-width: 390px) {

        a.elementor-button.elementor-button-link.elementor-size-sm {
     
        font-size: 15px;
    }

}



/************ HEIGHT *************/        

@media only screen and (max-height: 800px) and (min-width: 1100px) {
  .logo {
    margin-top: 80px;
  }
}

@media only screen and (max-height: 800px) {
 
    @media (max-height: 675px) {
  .logo.picture + h2 + p {
    display: none;
}
.logo.picture {
    margin-top: 1rem;
}


}

@media only screen and  (max-height: 475px) {
    
  .logo.picture + h2,
    .logo.picture + h2 + p + a {
    display: none;
}

.nav-overlay.active ul#menu-jfd {
 
    margin-bottom: -42px;
}
  }


}


