.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for section, class: .elementor-element-19d1c5dd */.nova-header-bar{
  position:sticky;
  top:0;
  z-index:99999;
  width:100%;
  background:rgba(10,9,7,.94);
  border-bottom:1px solid rgba(200,168,130,.14);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  font-family:"DM Sans",sans-serif;
  transition:background .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.nova-header-bar.is-scrolled{
  background:rgba(10,9,7,.98);
  box-shadow:0 18px 45px rgba(0,0,0,.28);
  border-bottom-color:rgba(200,168,130,.22);
}

.nova-header-inner{
  max-width:1320px;
  min-height:100px;
  margin:0 auto;
  padding:0 34px;
  display:flex;
  align-items:center;
  gap:34px;
}

.nova-header-logo{
  display:flex;
  align-items:center;
  flex-shrink:0;
  text-decoration:none;
}

.nova-header-logo img{
  height: 90px;
  width:auto;
  display:block;
  filter:drop-shadow(0 8px 22px rgba(0,0,0,.38));
}

.nova-header-nav{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:34px;
}

.nova-header-nav a{
  position:relative;
  font-size:15px;
  font-weight:400;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:rgba(232,221,208,.68);
  text-decoration:none;
  padding:32px 0;
  transition:color .3s ease;
}

.nova-header-nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:24px;
  height:1px;
  background:#c8a882;
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .3s ease;
}

.nova-header-nav a:hover{
  color:#c8a882;
}

.nova-header-nav a:hover::after{
  transform:scaleX(1);
}

.nova-header-cta,
.nova-mobile-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:13px 24px;
  background:linear-gradient(90deg,#9a7a5a,#c8a882);
  color:#090806!important;
  border:1px solid rgba(200,168,130,.8);
  text-decoration:none!important;
  font-size:10px;
  font-weight:600;
  letter-spacing:2.5px;
  text-transform:uppercase;
  white-space:nowrap;
  transition:transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.nova-header-cta:hover,
.nova-mobile-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 45px rgba(200,168,130,.18);
}

.nova-header-toggle{
  display:none;
  width:44px;
  height:44px;
  padding:0;
  border:1px solid rgba(200,168,130,.22);
  background:rgba(255,255,255,.02);
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
  cursor:pointer;
  box-shadow:none;
}

.nova-header-toggle span{
  width:24px;
  height:1.5px;
  background:#c8a882;
  display:block;
  transition:transform .3s ease, opacity .3s ease, width .3s ease;
}

.nova-header-toggle span:nth-child(2){
  width:16px;
}

.nova-header-bar.is-open .nova-header-toggle span:nth-child(1){
  transform:translateY(7.5px) rotate(45deg);
}

.nova-header-bar.is-open .nova-header-toggle span:nth-child(2){
  opacity:0;
}

.nova-header-bar.is-open .nova-header-toggle span:nth-child(3){
  transform:translateY(-7.5px) rotate(-45deg);
}

.nova-mobile-panel{
  display:none;
}

body.nova-menu-open{
  overflow:hidden;
}

@media(max-width:1024px){
  .nova-header-inner{
    min-height:72px;
    padding:0 22px;
    gap:18px;
  }

  .nova-header-logo img{
    height:38px;
  }

  .nova-header-nav,
  .nova-header-cta{
    display:none;
  }

  .nova-header-toggle{
    display:flex;
    margin-left:auto;
  }

  .nova-mobile-panel{
    position:fixed;
    top:72px;
    left:0;
    right:0;
    height:calc(100dvh - 72px);
    display:flex;
    flex-direction:column;
    padding:34px 26px 28px;
    background:
      radial-gradient(circle at 80% 0%, rgba(200,168,130,.10), transparent 32%),
      #0a0907;
    border-top:1px solid rgba(200,168,130,.14);
    transform:translateY(-14px);
    opacity:0;
    pointer-events:none;
    visibility:hidden;
    transition:opacity .32s ease, transform .32s ease, visibility .32s ease;
    overflow-y:auto;
  }

  .nova-header-bar.is-open .nova-mobile-panel{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
    visibility:visible;
  }

  .nova-mobile-nav{
    display:flex;
    flex-direction:column;
  }

  .nova-mobile-nav a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:18px 0;
    border-bottom:1px solid rgba(200,168,130,.13);
    font-family:"Josefin Sans",sans-serif;
    font-size:24px;
    font-weight:300;
    letter-spacing:2.4px;
    text-transform:uppercase;
    color:#e8ddd0;
    text-decoration:none;
  }

  .nova-mobile-nav a::after{
    content:"→";
    color:#9a7a5a;
    font-family:"DM Sans",sans-serif;
    font-size:16px;
  }

  .nova-mobile-contact{
    margin-top:auto;
    padding-top:30px;
    display:flex;
    flex-direction:column;
    gap:9px;
  }

  .nova-mobile-contact a{
    color:rgba(232,221,208,.72);
    text-decoration:none;
    font-size:13px;
    letter-spacing:.8px;
  }

  .nova-mobile-cta{
    margin-top:22px;
    width:100%;
  }
}

@media(max-width:767px){
  .nova-header-inner{
    min-height:68px;
    padding:0 18px;
  }

  .nova-header-logo img{
    height:34px;
  }

  .nova-mobile-panel{
    top:68px;
    height:calc(100dvh - 68px);
  }

  .nova-mobile-nav a{
    font-size:21px;
    letter-spacing:2px;
  }
}
/* ===== NOVA HEADER — DESKTOP POLISH ===== */

@media (min-width: 1025px) {
  .nova-header-inner {
    max-width: none !important;
    width: 100% !important;
    min-height: 88px !important;
    padding-left: 64px !important;
    padding-right: 64px !important;
    gap: 46px !important;
  }

  .nova-header-logo img {
    height: 56px !important;
  }

  .nova-header-nav {
    gap: 42px !important;
  }

  .nova-header-nav a {
    font-size: 11px !important;
    letter-spacing: 3px !important;
    color: rgba(232,221,208,.78) !important;
    padding: 36px 0 !important;
  }

  .nova-header-nav a::after {
    bottom: 27px !important;
    background: linear-gradient(90deg, transparent, #c8a882, transparent) !important;
  }

  .nova-header-cta {
    min-height: 48px !important;
    padding: 15px 32px !important;
    font-size: 10px !important;
    letter-spacing: 3px !important;
    background: linear-gradient(135deg, #d8b58b 0%, #b58b62 48%, #efd0a8 100%) !important;
    border: 1px solid rgba(239,208,168,.85) !important;
    box-shadow: 0 12px 34px rgba(200,168,130,.16) !important;
    position: relative !important;
    overflow: hidden !important;
  }

  .nova-header-cta::before {
    content: "";
    position: absolute;
    top: 0;
    left: -90%;
    width: 60%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);
    transition: left .55s ease;
  }

  .nova-header-cta:hover::before {
    left: 135%;
  }

  .nova-header-cta:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 18px 48px rgba(200,168,130,.28) !important;
  }
}

/* trochę bardziej elegancki pasek */
.nova-header-bar {
  background:
    linear-gradient(180deg, rgba(15,13,10,.98), rgba(8,7,5,.96)) !important;
  border-bottom: 1px solid rgba(200,168,130,.22) !important;
}

.nova-header-bar::after {
  content: "";
  position: absolute;
  left: 64px;
  right: 64px;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(200,168,130,.55), transparent);
  pointer-events: none;
}
/* ===== LOGO BIGGER ===== */

.nova-header-logo img {
  height: 64px !important;
}

/* jeszcze większe na dużych ekranach */
@media (min-width: 1400px) {
  .nova-header-logo img {
    height: 72px !important;
  }
}

/* mobile — żeby nie było za duże */
@media (max-width: 1024px) {
  .nova-header-logo img {
    height: 42px !important;
  }
}

@media (max-width: 767px) {
  .nova-header-logo img {
    height: 36px !important;
  }
}
/* MENU BLIŻEJ LOGO + WIĘKSZE NAPISY */
@media (min-width: 1025px) {
  .nova-header-inner {
    justify-content: flex-start !important;
    gap: 34px !important;
  }

  .nova-header-nav {
    flex: 0 1 auto !important;
    justify-content: flex-start !important;
    margin-left: 18px !important;
    gap: 38px !important;
  }

  .nova-header-nav a {
    font-size: 12px !important;
    letter-spacing: 3.2px !important;
    font-weight: 500 !important;
  }

  .nova-header-cta {
    margin-left: auto !important;
  }
}/* MOBILE — hamburger bez niebieskiego tła */
@media (max-width: 1024px) {
  .nova-header-toggle,
  .nova-header-toggle:hover,
  .nova-header-toggle:focus,
  .nova-header-toggle:active {
    background: transparent !important;
    background-color: transparent !important;
    border: 1px solid rgba(200,168,130,.32) !important;
    box-shadow: none !important;
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .nova-header-toggle span {
    background: #c8a882 !important;
  }

  /* większe logo mobile */
  .nova-header-logo img {
    height: 60px !important;
    max-height: 60px !important;
  }

  .nova-header-inner {
    min-height: 90px !important;
  }

  .nova-mobile-panel {
    top: 82px !important;
    height: calc(100dvh - 82px) !important;
  }
}

/* bardzo małe ekrany */
@media (max-width: 480px) {
  .nova-header-logo img {
    height: 46px !important;
    max-height: 46px !important;
  }
}/* ===== HAMBURGER ANIMATION ===== */

/* base */
.nova-header-toggle {
  transition: all 0.3s ease;
}

/* kreski */
.nova-header-toggle span {
  transition: all 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  transform-origin: center;
}

/* hover subtle glow */
.nova-header-toggle:hover {
  border-color: #c8a882 !important;
  box-shadow: 0 0 12px rgba(200,168,130,0.25);
}

/* hover micro move */
.nova-header-toggle:hover span:nth-child(1) {
  transform: translateX(2px);
}
.nova-header-toggle:hover span:nth-child(2) {
  transform: translateX(-2px);
}
.nova-header-toggle:hover span:nth-child(3) {
  transform: translateX(2px);
}

/* ===== AKTYWNY (X) ===== */
.nova-header-bar.is-open .nova-header-toggle span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.nova-header-bar.is-open .nova-header-toggle span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}

.nova-header-bar.is-open .nova-header-toggle span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* ===== DELIKATNY CLICK EFFECT ===== */
.nova-header-toggle:active {
  transform: scale(0.92);
}/* End custom CSS */