/* Nakveti homepage hero focus — photographic slider and vertical region film. */
.nk-hero{
  --nk-region-film-width:clamp(118px,9vw,148px);
  height:clamp(520px,calc(100svh - 72px),680px);
  min-height:520px!important;
  max-height:680px;
  overflow:hidden;
  width:100vw!important;
  max-width:none!important;
  margin-right:0!important;
  margin-left:0!important;
}
.nk-hero:after{background:none!important}
.nk-hero-slide__image{filter:none!important;opacity:1!important}
.nk-hero-slide{transform:scale(1.008);transition:opacity .9s ease,transform 7s ease,visibility 0s linear .9s}
.nk-hero-slide.is-active{transform:scale(1);transition-delay:0s}
.nk-hero.has-region-wall .nk-hero-content{
  display:flex;
  padding:34px 24px 74px calc(var(--nk-region-film-width) + 42px);
  align-items:center;
}
.nk-hero-copy-panel{
  width:min(760px,100%);
  padding:clamp(20px,2.2vw,30px);
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  background:rgba(9,31,22,.34);
  box-shadow:0 18px 52px rgba(4,18,12,.16);
  -webkit-backdrop-filter:blur(7px) saturate(1.03);
  backdrop-filter:blur(7px) saturate(1.03);
}
.nk-hero-copy-panel>:first-child{margin-top:0}
.nk-hero-copy-panel>:last-child{margin-bottom:0}
.nk-hero-copy-panel :is(h1,.nk-hero-slide-title){
  font-size:clamp(28px,5vw,var(--nk-hero-title-size,58px))!important;
  font-weight:var(--nk-hero-title-weight,500)!important;
}
.nk-hero-copy-panel .nk-hero-text{
  font-size:clamp(12px,1.6vw,var(--nk-hero-text-size,18px))!important;
  font-weight:var(--nk-hero-text-weight,400)!important;
}
.nk-hero-copy-panel .nk-button{
  opacity:1!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  color:#fff!important;
  font-size:var(--nk-hero-button-size,14px)!important;
  font-weight:var(--nk-hero-button-weight,400)!important;
  text-shadow:none!important;
  -webkit-font-smoothing:antialiased;
}
.nk-hero-copy-panel .nk-button.is-light{
  background:#f6f2e9!important;
  color:#1f4d3a!important;
}
/* Keep the header in its own opaque row above the hero. */
body.home .nk-site-header{
  position:sticky!important;
  top:0;
  z-index:9999;
  background:var(--nk-header-bg,#fff)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
body.home .nk-site-header .nk-header-inner{
  position:relative;
  height:72px!important;
  min-height:72px!important;
  max-height:72px!important;
}
.nk-site-header .nk-brand-logo,.nk-site-header .nk-brand-logo>span{display:flex;max-height:58px!important;align-items:center;overflow:visible}
.nk-site-header .nk-brand-logo img{
  width:var(--nk-header-logo-width,190px)!important;
  max-width:min(var(--nk-header-logo-width,190px),calc(100vw - 430px))!important;
  max-height:none!important;
  height:auto!important;
  object-fit:contain;
}

.nk-region-wall{
  position:absolute;
  top:16px;
  bottom:16px;
  left:0;
  right:auto;
  z-index:5;
  width:var(--nk-region-film-width);
  padding:7px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.28);
  border-radius:0 20px 20px 0;
  background:rgba(16,42,31,.2);
  box-shadow:0 18px 50px rgba(4,20,13,.25),inset 0 0 0 1px rgba(255,255,255,.06);
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
  pointer-events:auto;
}
.nk-region-wall:before,.nk-region-wall:after{
  content:"";
  position:absolute;
  right:0;
  left:0;
  z-index:2;
  height:34px;
  pointer-events:none;
}
.nk-region-wall:before{top:0;background:linear-gradient(rgba(13,36,27,.82),transparent)}
.nk-region-wall:after{bottom:0;background:linear-gradient(transparent,rgba(13,36,27,.82))}
.nk-region-wall__track{display:flex;flex-direction:column;gap:8px;animation:nk-region-film 72s linear infinite;will-change:transform}
.nk-region-wall__set{display:grid;gap:8px;flex:0 0 auto}
.nk-region-wall__item{height:86px;flex:none;border-radius:12px;box-shadow:0 7px 18px rgba(3,17,11,.2)}
.nk-region-wall__item span{font-size:10px;line-height:1.25}
.nk-region-wall:hover .nk-region-wall__track,.nk-region-wall:focus-within .nk-region-wall__track{animation-play-state:paused}
@keyframes nk-region-film{to{transform:translateY(calc(-50% - 4px))}}

/* JS safely portals the film above both header and hero without changing the
   header/mega-menu stacking context. Inline top/height values track real layout. */
body>.nk-region-wall.is-hero-region-portal{
  position:absolute!important;
  right:auto!important;
  bottom:auto!important;
  z-index:10020;
  margin:0;
  left:0!important;
  border-left:0;
  border-radius:0 20px 20px 0;
}

.nk-hero-dots{
  left:calc(50% + var(--nk-region-film-width)/2);
  bottom:18px;
  min-height:40px;
  padding:7px 12px!important;
  gap:5px;
  border-color:rgba(255,255,255,.42)!important;
  background:rgba(9,31,22,.62)!important;
}
.nk-hero-dot{width:42px;height:24px}
.nk-hero-dot span{width:30px;height:3px;border-radius:999px;background:rgba(255,255,255,.5)}
.nk-hero-dot.is-active span{width:38px;height:4px;background:#fff}
.nk-hero-motion{width:28px;height:28px;background:rgba(255,255,255,.15)}

@media(max-width:1100px){
  .nk-hero{height:clamp(500px,calc(100svh - 68px),620px);min-height:500px!important;max-height:620px}
  .nk-hero.has-region-wall .nk-hero-content{padding-top:28px;padding-bottom:72px}
}
@media(max-width:720px){
  .nk-hero{height:600px;min-height:600px!important;max-height:600px;--nk-region-film-width:92px}
  .nk-region-wall{top:12px;bottom:12px;left:10px;padding:5px;border-radius:15px}
  body>.nk-region-wall.is-hero-region-portal{left:0!important;width:82px;border-radius:0 15px 15px 0}
  body.home.has-hero-region-portal .nk-header-inner{padding-left:80px}
  body.home .nk-site-header .nk-header-inner{height:64px!important;min-height:64px!important;max-height:64px!important}
  .nk-site-header .nk-brand-logo,.nk-site-header .nk-brand-logo>span{max-height:48px!important}
  .nk-site-header .nk-brand-logo img{max-width:min(var(--nk-header-logo-width,190px),calc(100vw - 190px))!important;max-height:none!important}
  .nk-region-wall__item{height:68px;border-radius:10px}
  .nk-region-wall__item span{right:5px;bottom:5px;left:5px;font-size:8px}
  .nk-hero.has-region-wall .nk-hero-content{padding:22px 14px 70px calc(var(--nk-region-film-width) + 22px)}
  .nk-hero-copy-panel{padding:18px;border-radius:18px}
  .nk-hero-copy-panel :is(h1,.nk-hero-slide-title){font-size:clamp(26px,8vw,var(--nk-hero-title-size,58px))!important}
  .nk-hero-dots{left:calc(50% + var(--nk-region-film-width)/2);bottom:14px;max-width:calc(100% - var(--nk-region-film-width) - 26px);overflow-x:auto}
  .nk-hero-dot{width:32px;flex:0 0 32px}
  .nk-hero-dot span{width:23px}.nk-hero-dot.is-active span{width:29px}
}
@media(prefers-reduced-motion:reduce){.nk-region-wall__track{animation:none}.nk-hero-slide{transform:none;transition:opacity .25s ease,visibility 0s linear .25s}}
