body{
  background-color: #F3F4F6;
} 

 .preloader {
   position: fixed;
   inset: 0;
   background: #fff;
   display: flex;
   align-items: center;
   justify-content: center;
   z-index: 9999;
   transition: opacity .4s ease;
 }

.div-block-18{
    background: white;
  box-shadow: none;
  backdrop-filter: blur(15px);
   -webkit-backdrop-filter: blur(15px);
   border-radius: 18px;
   box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    padding: 20px;
    color: #002366;
    text-align: center;
    border: none;
}
 .div-block-18 img {
    width: 100%;
    height: auto;
    border-radius: 14px;
    margin-bottom: 18px;
    transition: transform 0.3s ease;
  }
  .div-block-18 h3{
    font-size: 1.2rem;
    margin-bottom: 12px;
    font-weight: 700;
    color: #003366;
  }
.div-block-18:hover {
   transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0, 50, 130, 0.4);
}
 .logo-wrap {
   width: 400px;
   position: relative;
 }


 /* BASE LOGO – uvek tu sa 50% opacity */
 .logo-base {
   width: 100%;
   opacity: 0.5;
   display: block;
   animation: baseFade 1.6s cubic-bezier(.22, .9, .26, 1) forwards;
 }
/* ===== PREMIUM SPEC TABLE ===== */

table {
    width: 80%;
    padding: 20px;
    border-collapse: separate;
    border-spacing: 0 20px; /* razmak između redova */
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Svaki red postaje kartica */
table tr {
    background: #ffffff;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.05);
    border-radius: 14px;
    transition: all 0.25s ease;
}

table tr:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(30, 136, 229, 0.15);
}

/* Ćelije */
table td {
    padding: 20px 28px;
    font-size: 15px;
}

/* Leva kolona */
table td:first-child {
    font-weight: 500;
    color: #6b7280;
    border-radius: 14px 0 0 14px;
}

/* Desna kolona */
table td:last-child {
    text-align: right;
    font-weight: 700;
    font-size: 16px;
    color: #111827;
    border-radius: 0 14px 14px 0;
}

/* Elegantna linija sa leve strane */
table td:first-child::before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 20px;
    background: linear-gradient(180deg, #1e88e5, #42a5f5);
    border-radius: 4px;
    margin-right: 12px;
    vertical-align: middle;
}

/* ===== MOBILE PREMIUM ===== */

@media (max-width: 768px) {

    table {
        border-spacing: 0 10px;
    }

    table tr {
        display: block;
        padding: 16px;
    }

    table td {
        display: block;
        padding: 6px 0;
        text-align: left !important;
    }

    table td:first-child {
        font-size: 13px;
        color: #9ca3af;
        margin-bottom: 4px;
    }

    table td:last-child {
        font-size: 17px;
        font-weight: 700;
        color: #111827;
    }

    table td:first-child::before {
        display: none;
    }
}
.block{
  background-color: white;
  
  box-shadow: 0 2px 15px 0px #0003;
  margin-top: 20px;
  margin-bottom: 40px;
  border-radius: 20px;
}
.block h2::before{
  display: block;
  content: "";
    height: 4px;
    width: 60px;
    background: linear-gradient(90deg, #1e88e5, #42a5f5);
    border-radius: 4px;
    margin-bottom: 25px;
}
.specifikacije {
    background: #ffffff;
    padding: 45px;
    border-radius: 20px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.05);
    margin-top: 40px;
}

/* Paragraf kao grid */
.specifikacije p {
    display: grid;
    row-gap: 14px;
    font-size: 16px;
    line-height: 1.6;
    color: #374151;
}

/* Svaki red (razbijamo vizuelno) */
.specifikacije p br {
    display: none;
}

/* Pretvaramo strelice u lep indikator */
.specifikacije p {
    white-space: pre-line;
}

/* Stil za svaku stavku */
.specifikacije p {
    counter-reset: item;
}

/* Vizuelni efekat reda */
.specifikacije p::before {
    content: "";
    display: block;
    height: 4px;
    width: 60px;
    background: linear-gradient(90deg, #1e88e5, #42a5f5);
    border-radius: 4px;
    margin-bottom: 25px;
}

/* Stilizujemo strelice */
.specifikacije p {
    font-weight: 400;
}

.specifikacije p span,
.specifikacije p {
    letter-spacing: 0.2px;
}

/* Strelica modernija */
.specifikacije p {
    color: #4b5563;
}

.specifikacije p::after {
    content: "";
}

/* Hover efekat (suptilan) */
.specifikacije {
    transition: 0.3s ease;
}

.specifikacije:hover {
    box-shadow: 0 20px 60px rgba(30, 136, 229, 0.12);
}

/* ===== MOBILE ===== */

@media (max-width: 768px) {

    .specifikacije {
        padding: 25px;
    }

    .specifikacije p {
        font-size: 15px;
    }
}

 /* FILL LAYER - puni se s leva na desno sa 100% opacity */
 /* FILL LAYER - koristi SVG wave mask; sporija i glatkija animacija */
 .logo-fill {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   pointer-events: none;
   display: block;
 }


 .fill-svg {
   width: 100%;
   height: 100%;
   display: block;
 }


 @keyframes waveScale {
   from {
     transform: scaleX(0);
   }

   to {
     transform: scaleX(1);
   }
 }


 @keyframes baseFade {
   from {
     opacity: 0.5;
   }

   to {
     opacity: 0;
   }
 }


 .wave-group {
   transform-box: fill-box;
   transform-origin: 0 0;
   animation: waveScale 1.6s cubic-bezier(.22, .9, .26, 1) forwards;
 }


 /* Reveal rect ensures full logo is visible at animation end */
 .reveal-rect {
   transform-box: fill-box;
   transform-origin: 0 0;
   transform: scaleX(0);
   animation: reveal 1.6s cubic-bezier(.22, .9, .26, 1) forwards;
 }


 @keyframes reveal {
   from {
     transform: scaleX(0);
   }

   to {
     transform: scaleX(1);
   }
 }


 .logo-fill image {
   filter: brightness(0) saturate(100%) invert(39%) sepia(89%) saturate(1356%) hue-rotate(191deg) brightness(95%) contrast(101%);
 }

 .kontejner {
   width: 60%;
   margin-left: 20%;
 }

 .kontejner {
   padding-bottom: 50px;
 }

 .filterDiv {
   display: none;
 }

 .show {
   display: block;
 }

 .buttonbtu.active {
   box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
 }

 .gallery-container {
   max-width: 760px;
   margin: 40px auto;
   padding: 0 16px
 }

 .gallery {
   position: relative;
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   gap: 12px
 }

 .gallery img {
   display: block;
   border-radius: 6px;
   object-fit: cover;
   transition: all .2s ease
 }

 .gallery img.big {
   width: 90%;
   max-width: 100%;
   height: auto;
 }

 .gallery img.small {
   width: 25%;
   max-width: 100%;
   height: auto;
   cursor: pointer;
   opacity: .9
 }

 .gallery img.small:hover {
   opacity: 1
 }

 @media screen and (max-width:480px) {
  
   .gallery img.small {
     width: 20%
   }
 }
 .background-video{
  height: 50vh;
  position: relative;
 }
 .overlay{
     height:50vh;
 }
 .home .overlay {
  position: relative;
  min-height: 100vh;
}
 .left{
  position: absolute !important;
  left: 110px !important;
  bottom: 60px;
  z-index: 5;
  display: none;
 }

 .right{
    margin-right: 10%;
    display: none;
 }
.page-hero {
    position: relative;
    min-height: 230px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.page-hero::before {
    content: "";
    position: absolute;
    inset: 0;
}

.page-hero .hero-content {
  
    position: relative;
    z-index: 2;
    background: rgba(255,255,255,0.08);
    backdrop-filter: blur(8px);
    padding: 20px 40px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.15);
}

.page-hero h1 {
    margin: 0;
    color: #fff;
    font-size: 42px;
    font-weight: 800;
}




 .home .background-video{
  position: relative;
  min-height: 100vh;
  text-align: left;
 }
 .home .left1{
  margin-left: 15%;
  margin-bottom: 10%;
  display: block;
  position: absolute;
  bottom: 60px;
  z-index: 5;
 }
 .home .right{
  display: block;
  position: absolute;
  right: 80px;
  bottom: 200px;
  z-index: 5;
 }
 .image-2{
  height: 100%;
 }
 .section-3{
  height: 60vh;
 }
 .w-nav-link.w--current {
  color: white;
}
.navlink{
  color: white;
}

td{
  padding: 10px;
}

.kontejner .w-button{
    background-color: #003366;
    color: white;
    border-radius: 25px;
    text-transform: uppercase;
    transition: background-color 0.3s ease;
    text-decoration: none;
    user-select: none;
}
.buttonbtu{
  
  border-radius: 25px;
      text-transform: uppercase;
    transition: background-color 0.3s ease;
}

.w-button:hover {
  background-color: #0a4d8c;
  color: white;
}
/* Osnovni stil tabele */
table {
    width: 100%;
    border-collapse: collapse;
    background-color: #ffffff;
}

/* Header */
table thead {
    background-color: #f4f6f8;
}

table thead th {
    text-align: left;
    padding: 14px 16px;
    font-weight: 600;
    border-bottom: 2px solid #e5e7eb;
}

.heading-18{
         font-size: 36px;
  font-weight: 900;
  background: linear-gradient(90deg, #003366, #0a4d8c);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-transform: uppercase;
  letter-spacing: 3px;
  text-shadow: 0 2px 5px rgba(30, 136, 229, 0.4);
    }
/* Ćelije */
table tbody td {
    padding: 12px 16px;
    border-bottom: 1px solid #eeeeee;
    transition: background-color 0.2s ease;
}

/* Hover efekat */
table tbody tr:hover td {
    background-color: #f9fafb;
}

/* Poslednji red bez donje linije */
table tbody tr:last-child td {
    border-bottom: none;
}
.heading-7{
  font-size: 36px;
  font-weight: 900;
  background: linear-gradient(90deg, #003366, #0a4d8c);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-transform: uppercase;
  letter-spacing: 3px;
  text-shadow: 0 2px 5px rgba(30, 136, 229, 0.4);
}
/* Responsivnost */
@media (max-width: 768px) {
  .heading-7{
  font-size: 36px;
  font-weight: 900;
  background: linear-gradient(90deg, #003366, #0a4d8c);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-transform: uppercase;
  letter-spacing: 3px;
  text-shadow: 0 2px 5px rgba(30, 136, 229, 0.4);
}
  .heading-18{
         font-size: 36px;
  font-weight: 900;
  background: linear-gradient(90deg, #003366, #0a4d8c);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-transform: uppercase;
  letter-spacing: 3px;
  text-shadow: 0 2px 5px rgba(30, 136, 229, 0.4);
    }
    table thead {
        display: none;
    }

    table, 
    table tbody, 
    table tr, 
    table td {
        display: block;
        width: 100%;
    }

    table tr {
        margin-bottom: 15px;
        border: 1px solid #eeeeee;
        border-radius: 8px;
        overflow: hidden !important;
    }

    table td {
        text-align: right;
        padding-left: 50%;
        position: relative;
    }

    table td::before {
        content: attr(data-label);
        position: absolute;
        left: 16px;
        width: 45%;
        text-align: left;
        font-weight: 600;
    }
}
 @media only screen and (max-width: 991px){
.overlay{
     height:50vh;
 }
   .w-nav {
    position: relative !important;
    z-index: 2147483646 !important;
  }

 .w-nav-overlay {
    overflow: visible !important;
    background: rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border-radius: 16px;
  box-shadow: 0 25px 60px rgba(0,0,0,0.2);
  margin-top:10px;
  padding-top:0px;
  }

  .w-nav-overlay .w-nav-menu {
    margin-top:0px;
    display: inline-block !important;
    width: 100% !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    background: #fff !important;
     border-radius: 16px;
    
  }

  .hero,
  .hero-section,
  .section,
  .header,
  .navbar,
  .banner,
  .home-hero,
  .hero-wrapper,
  .container,
  .w-nav {
    overflow: visible !important;
    transform: none !important;
    filter: none !important;
    perspective: none !important;
  }

   .left{
    margin-left: 0%;
   }
.navlink{
  color: black;
}
.w-nav-link.w--current {
  color: black;
}
 }
 @media only screen and (max-width: 480px){
    .left{
      margin-left: 5%;
    }
}
.container{
  width: 70%;
  margin-left: 15%;
}
.div-block-2 .a{
  width: 140px;
  height: 140px;
  margin-top: 5px; 
  align-items: center;
  padding-top: 20px;
  margin-right: 15px;
}
.a h3{
  font-size: 16px;
}
.a img{
  width: 70px;
  height: 70px;
}
 .toplotne{
  background-image: url(images/heatpump.webp);
}
@media screen and (min-width: 991px) {
  .div-block-2 .a img{
    margin-left: 35px;
  }
}
@media screen and (max-width: 1100px) {
  .home .right{
    display: none;
  }
  
}
@media screen and (max-width: 1410px) {
    .section-3{
        height: 75vh;
    }
  .home .left1{
    
  margin-bottom: 5%;
  }
  .home .right{
    bottom: 100px;
  }
    .navlink{
      font-size: 12px;
    }
    .w-nav-brand img{
      width: 80px;
      padding-top: 40px;
    }
    .left .heading{
      font-size: 40px;
    }
    .div-block-2 .a{
  width: 120px;
  height: 120px;
  margin-top: 5px; 
  align-items: center;
  padding-top: 10px;
  margin-right: 15px;
}
.a h3{
  font-size: 13px;
}
}
@media screen and (max-width: 1145px) {
  .container{
    width: 80%;
    margin-left: 10%;
}
}
.big:hover{
 transform: scale(1.2);
}
@media screen and (max-width: 766px) {
  .div-block-20{
    width: 90%;
    margin-left: 5%;
  }
  .div-block-21{
    width: 90%;
    margin-left: 5%;
    text-align: center;
  }
}
@media screen and (max-width:935px){
  .div-block-18{
    width: 45%;
  }
}
@media screen and (max-width:700px){
  .div-block-18{
    width: 100%;
  }
  .kontejner{
    width: 90%;
    margin-left: 5%;
  }
  .section-3{
    height: 80vh;
  }
  .div-block-16 h3{
    font-size: 35px;
  }
}


@media screen and (min-width: 990px) and (max-width: 1868px){
  .div-block2{
    margin-top: 5px;
  }
}
@media screen and (max-width:450px) {
  .div-block2{
    align-items: center;
    margin-left: 15px;
  }
}
@media screen and (max-width: 480px) {
  .home .left1{
    margin-left: 0px;
  }
}
@media screen and (max-width: 991px) {
  *{
      overflow:visible !important;
  }
}