/*
Theme Name: KPOWER
Theme URI: http://localhost/kpower
Author: KPOWER
Description: Prilagođena tema za BAUCOMMERCE — rezervno napajanje (dizel agregati, UPS, EV punjači). Čista PHP tema bez Elementora, 1:1 replika originalnog dizajna.
Version: 0.2.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: kpower
*/

/* ============================================================
   DESIGN TOKENS
   ============================================================ */
:root{
  /* Brand accent (K-POWER cyan). Var names kept as --orange for backwards compat. */
  --orange:#1E9BDC;      /* ravni akcent — tekst, SVG fill, sitni elementi */
  --orange-dark:#0A72C2;
  --green:#49AB3C;

  /* ---- DARK THEME povrsine ----
     --white ostaje bijela: koristi se za tekst/ikone NA akcentnoj boji. */
  --page-bg:#0E1115;     /* pozadina stranice */
  --surface:#1C2229;     /* kartice, info-boxevi */
  --surface-2:#14181D;   /* .section--muted (suptilna izmjena ritma) */
  --surface-3:#252C35;   /* inputi, thumbovi, hover */
  --dark:#090C0F;        /* header, footer, anniv, tamni cipovi — najtamnije */
  --dark-2:#1C2229;
  --heading:#EDF1F6;     /* naslovi */
  --text:#98A3B0;        /* tekst */
  --muted-bg:#14181D;    /* zadrzano zbog kompatibilnosti */
  --divider:#2B333D;
  --white:#FFFFFF;

  /* Brand gradient — boje uzorkovane direktno sa slova K u logu */
  --grad:linear-gradient(135deg,#1593D4 0%,#0A72C2 30%,#04489B 65%,#002463 100%);
  --grad-text:linear-gradient(180deg,#3EB4E6 0%,#1183CE 45%,#0F6BBF 100%);
  --grad-hover:linear-gradient(135deg,#22A8E8 0%,#1285D6 30%,#0759B4 65%,#013080 100%);

  --font-head:'Exo', -apple-system, "Segoe UI", sans-serif;
  --font-body:'Albert Sans', -apple-system, "Segoe UI", sans-serif;

  --container:1300px;
  --radius:4px;
  --radius-lg:14px;
}

/* ============================================================
   RESET / BASE
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;}
*{-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;}
html,body{overflow-x:hidden;max-width:100%;}
/* Bez plavog highlighta na klik/tap; fokus prsten ostaje samo za tastaturu (pristupačnost) */
a:focus,button:focus{outline:none;}
a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:2px;}
body{
  margin:0;
  font-family:var(--font-body);
  font-size:1.1rem;
  line-height:1.7;
  color:var(--text);
  background:var(--page-bg);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;transition:color .2s ease;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4,h5,h6{font-family:var(--font-head);color:var(--heading);margin:0 0 .5em;line-height:1.15;font-weight:700;}
h1{font-size:3rem;}
h2{font-size:2rem;}
h3{font-size:1.5rem;}
p{margin:0 0 1rem;}
p:last-child{margin-bottom:0;}

.container{max-width:var(--container);margin:0 auto;padding:0 24px;}

/* Puna boja ispod gradienta — ako se pozadinske slike ne iscrtaju
   (forced-colors, stampa), bijeli tekst ostaje citljiv. */
.btn,.stat-box,.badge--orange,.mini-ico--orange,.feature .badge-ico--orange,
.pagination a:hover,.pagination .current,.news-dot.active,.info-ico,.step-num,
.cta-card,.contact-ico,.chevron-ico,.share-btn,.site-topbar,.footer-fb,
.site-footer h4::after,
.table-wrap .dt-paging .dt-paging-button.current,
.table-wrap .dt-paging .dt-paging-button:hover:not(.disabled){background-color:#0A72C2;}
.section{padding:90px 0;}
.section--muted{background:var(--surface-2);}
.text-center{text-align:center;}

/* Eyebrow label (UKRATKO O NAMA…) — small, gray, uppercase, spaced */
.eyebrow{
  font-family:var(--font-head);
  color:var(--text);
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.85rem;
  margin-bottom:1rem;
  display:inline-block;
}
.section-head{margin-bottom:52px;}
.section-title{font-size:2rem;margin:0;font-weight:700;color:#1183CE;
  background-image:var(--grad-text);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
/* na tamnim trakama naslov ostaje ravan da se ne gubi u pozadini */
.info-band .section-title,.section-title--dark{background-image:none;-webkit-text-fill-color:currentColor;}
.section-title--dark{color:var(--heading);}
.section-head.text-center .section-title{max-width:900px;margin:0 auto;}

/* ============================================================
   BUTTONS
   ============================================================ */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--font-head);
  font-weight:600;
  font-size:1.05rem;
  color:var(--white);
  background-image:var(--grad);
  padding:16px 32px;
  border-radius:var(--radius);
  border:0;
  cursor:pointer;
  transition:background-image .2s ease,color .2s ease;
}
.btn:hover{background-image:var(--grad-hover);color:var(--white);}
.btn--block{width:100%;justify-content:center;}
/* text link with arrow (Kontakt →) */
.btn-text{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-head);font-weight:600;font-size:1.05rem;color:var(--white);
  padding:14px 6px;
}
.btn-text:hover{color:var(--orange);}
.btn-text svg,.btn svg{width:16px;height:16px;fill:currentColor;flex:none;}
.btn-row{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:2rem;}

/* ============================================================
   HEADER — orange topbar + white nav
   ============================================================ */
.site-topbar{background-image:var(--grad);color:var(--white);font-size:.9rem;}
.site-topbar .container{display:flex;justify-content:space-between;align-items:center;min-height:44px;gap:20px;flex-wrap:wrap;}
.topbar-left{display:flex;align-items:center;gap:26px;flex-wrap:wrap;}
.topbar-item{display:inline-flex;align-items:center;gap:9px;color:var(--white);font-weight:500;}
.topbar-item svg{width:15px;height:15px;fill:var(--white);flex:none;}
.site-topbar a:hover{color:rgba(255,255,255,.8);}
.topbar-social{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:rgba(0,0,0,.18);border-radius:4px;}
.topbar-social svg{width:14px;height:14px;fill:var(--white);}

.site-header{background:var(--dark);box-shadow:0 2px 16px rgba(0,0,0,.25);position:sticky;top:0;z-index:100;}
.site-header .container{display:flex;align-items:center;justify-content:space-between;min-height:102px;gap:24px;}
.site-logo img{width:200px;height:auto;display:block;}
/* Footer logo (isti PNG, malo veci) */
.footer-logo{display:inline-block;margin-bottom:1.6rem;line-height:0;}
.footer-logo img{width:200px;height:auto;display:block;}
.main-nav ul{display:flex;align-items:center;gap:6px;}
.main-nav a{
  font-family:var(--font-head);font-weight:600;font-size:.95rem;color:var(--white);
  padding:12px 12px;display:block;position:relative;
}
.main-nav a:hover,.main-nav .current-menu-item>a,.main-nav .current_page_item>a{color:var(--orange);}
.main-nav .current-menu-item>a::after,.main-nav .current_page_item>a::after{
  content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;background:var(--orange);
}
.main-nav li{position:relative;}
.main-nav .menu-item-has-children>a{padding-right:26px;}
.main-nav .menu-item-has-children>a::before{
  content:"";position:absolute;right:10px;top:50%;width:7px;height:7px;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:translateY(-70%) rotate(45deg);transition:transform .2s ease;
}
.main-nav .sub-menu{
  position:absolute;top:100%;left:0;min-width:210px;background:var(--dark-2);
  box-shadow:0 14px 34px rgba(0,0,0,.3);border-radius:var(--radius-lg);padding:8px;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease;z-index:120;
}
.main-nav li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0);}
.main-nav .sub-menu li{width:100%;}
.main-nav .sub-menu a{padding:10px 14px;border-radius:8px;white-space:nowrap;}
.main-nav .sub-menu a:hover{background:rgba(255,255,255,.08);}
.main-nav .sub-menu a::after{display:none;}

.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px;}
.nav-toggle span{display:block;width:26px;height:2px;background:var(--white);margin:5px 0;transition:.25s;}
.nav-close{display:none;}
.nav-backdrop{display:none;}

/* ============================================================
   HERO
   ============================================================ */
.hero{
  position:relative;min-height:700px;display:flex;align-items:center;
  background-size:cover;background-position:center;color:var(--white);overflow:hidden;
}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(20,20,20,.86) 0%, rgba(20,20,20,.6) 50%, rgba(20,20,20,.25) 100%);}
.hero .container{position:relative;z-index:2;width:100%;padding-top:70px;padding-bottom:130px;}
.hero-inner{max-width:640px;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:11px;color:var(--orange);font-family:var(--font-head);font-weight:700;margin-bottom:1.4rem;font-size:1rem;}
.hero-eyebrow svg{width:22px;height:22px;fill:var(--orange);flex:none;}
.hero h1{color:var(--white);font-size:3rem;line-height:1.12;margin-bottom:1.4rem;}
.hero p{color:rgba(255,255,255,.88);font-size:1.1rem;max-width:600px;margin-bottom:0;}

/* ============================================================
   STATS (orange boxes, overlap hero)
   ============================================================ */
.stats{margin-top:-90px;position:relative;z-index:5;padding-bottom:84px;}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.stat-box{background-image:var(--grad);color:var(--white);border-radius:var(--radius-lg);padding:38px 24px;text-align:center;box-shadow:0 22px 44px rgba(10,114,194,.30);}
.stat-num{font-family:var(--font-head);font-weight:700;font-size:3rem;line-height:1;}
.stat-label{font-family:var(--font-head);font-weight:500;margin-top:.55rem;font-size:1.05rem;}

/* ============================================================
   TWO-COLUMN (about / partner)
   ============================================================ */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.two-col>*{min-width:0;}
.two-col--rev .two-col-media{order:2;}
.two-col-text .eyebrow{margin-bottom:.8rem;}
.two-col-text .section-title{margin-bottom:1.3rem;}

/* Media with floating badges */
.media-wrap{position:relative;padding:0 0 40px;}
.media-frame{border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 24px 54px rgba(0,0,0,.5);}
.media-frame img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3.4;}
.badge{position:absolute;display:flex;align-items:center;gap:14px;padding:18px 22px;border-radius:var(--radius-lg);max-width:300px;box-shadow:0 16px 36px rgba(0,0,0,.2);}
.badge svg{width:26px;height:26px;flex:none;}
.badge-ico{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;}
.badge-ico svg{width:26px;height:26px;fill:var(--white);}
.badge-ico img{width:28px;height:28px;object-fit:contain;filter:brightness(0) invert(1);}
.badge p{margin:0;font-size:.95rem;font-weight:500;line-height:1.35;}
.badge--orange{background-image:var(--grad);color:var(--white);top:34px;right:-18px;}
.badge--orange .badge-ico{background:rgba(0,0,0,.15);}
.badge--orange .badge-ico svg{fill:var(--white);}
.badge--dark{background:var(--dark);color:var(--white);right:auto;left:50%;bottom:0;transform:translateX(-50%);text-align:left;}
.badge--dark .badge-ico{background:rgba(255,255,255,.1);}
.badge--dark .badge-ico svg{fill:var(--white);}
.two-col--rev .badge--dark{left:auto;right:20px;transform:none;}

/* About mini-stats bordered box (400+ / 200+) */
.mini-stats{display:flex;gap:20px;border:1px solid var(--divider);border-radius:var(--radius-lg);padding:22px 26px;margin:26px 0;}
.mini-stat{display:flex;align-items:center;gap:14px;flex:1;}
.mini-ico{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;}
.mini-ico svg{width:26px;height:26px;fill:var(--white);}
.mini-ico--dark{background:var(--dark);}
.mini-ico--orange{background-image:var(--grad);}
.mini-num{font-family:var(--font-head);font-weight:700;font-size:1.7rem;color:var(--heading);line-height:1;flex:none;}
.mini-lbl{font-size:.92rem;line-height:1.2;max-width:110px;}

/* Feature cards */
.features{display:flex;flex-direction:column;gap:18px;margin:8px 0 6px;}
.feature{display:flex;gap:18px;background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:24px 26px;}
.feature .badge-ico{margin-top:2px;}
.feature .badge-ico--dark{background:var(--dark);}
.feature .badge-ico--orange{background-image:var(--grad);}
.feature h4{font-family:var(--font-head);color:var(--heading);font-size:1.25rem;margin:0 0 .4rem;}
.feature p{margin:0;font-size:.98rem;}

/* ============================================================
   PRODUCTS (2x2)
   ============================================================ */
.offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.product-card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:34px 34px 30px;box-shadow:0 12px 34px rgba(0,0,0,.35);display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease;}
.product-card:hover{transform:translateY(-5px);border-color:rgba(30,155,220,.45);box-shadow:0 22px 46px rgba(0,0,0,.5);}
.product-icon{width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:22px;}
/* PNG ikone su pregenerisane s brand gradientom — bez filtera */
.product-icon img{width:72px;height:72px;object-fit:contain;}
.product-card h3{font-size:1.15rem;font-weight:600;margin-bottom:.7rem;color:var(--heading);}
.product-card p{font-size:1rem;flex:1;margin-bottom:1.4rem;}
.product-card .more{color:var(--heading);font-family:var(--font-head);font-weight:600;display:inline-flex;align-items:center;gap:9px;}
.product-card .more svg{width:16px;height:16px;fill:var(--heading);transition:transform .2s ease;}
.product-card:hover .more{color:var(--orange);}
.product-card:hover .more svg{fill:var(--orange);transform:translateX(4px);}

/* ============================================================
   PARTNERS
   ============================================================ */
.partners{display:flex;align-items:center;justify-content:center;gap:70px;flex-wrap:wrap;}
.partners img{height:56px;width:auto;object-fit:contain;background:#fff;padding:12px 18px;border-radius:10px;box-sizing:content-box;}

/* ============================================================
   NEWS CAROUSEL
   ============================================================ */
.news-carousel{position:relative;}
.news-track{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x proximity;scroll-behavior:smooth;padding:14px 2px 22px;-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.news-track::-webkit-scrollbar{display:none;}
.news-media img{-webkit-user-drag:none;user-select:none;}
.news-card{flex:0 0 calc((100% - 56px)/3);scroll-snap-align:start;background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 12px 32px rgba(0,0,0,.35);display:flex;flex-direction:column;transition:box-shadow .28s ease,border-color .28s ease;}
.news-card:hover{border-color:rgba(30,155,220,.45);box-shadow:0 26px 50px rgba(0,0,0,.6);}
.news-media{display:block;aspect-ratio:16/11;background:var(--surface-3);overflow:hidden;}
.news-media img{width:100%;height:100%;object-fit:cover;display:block;}
.news-body{padding:26px;display:flex;flex-direction:column;flex:1;}
.news-card h3{font-size:1.2rem;line-height:1.3;margin-bottom:.7rem;color:var(--heading);}
.news-card h3 a{color:inherit;transition:color .2s ease;}
.news-card h3 a:hover,.news-card:hover h3 a{color:var(--orange);}
.news-card p{font-size:.98rem;flex:1;margin-bottom:1.5rem;}
.news-dots{display:flex;gap:9px;justify-content:center;margin-top:34px;}
.news-all{display:flex;justify-content:center;margin-top:40px;}

/* News grid (Novosti page) — reuses .news-card */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:48px;}
.pagination span>*{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 12px;border-radius:8px;border:2px solid var(--divider);font-family:var(--font-head);font-weight:600;color:var(--heading);transition:background .2s ease,border-color .2s ease,color .2s ease;}
.pagination a:hover{background-image:var(--grad);border-color:transparent;color:var(--white);}
.pagination .current{background-image:var(--grad);border-color:transparent;color:var(--white);}
.news-dot{width:9px;height:9px;border-radius:50%;background:#39424D;border:0;cursor:pointer;padding:0;transition:.2s;}
.news-dot.active{background-image:var(--grad);width:26px;border-radius:5px;}

/* ============================================================
   ANNIVERSARY BAND (20 godina)
   ============================================================ */
.anniv{position:relative;background:var(--dark);color:var(--white);padding:70px 0;overflow:hidden;}
.anniv::before{content:"20";position:absolute;right:-30px;top:50%;transform:translateY(-50%);font-family:var(--font-head);font-weight:800;font-size:24rem;line-height:1;color:rgba(255,255,255,.04);pointer-events:none;}
.anniv-inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:44px;flex-wrap:wrap;}
.anniv-num{
  font-family:var(--font-head);font-weight:800;font-size:8.5rem;line-height:.85;flex:none;
  background-image:var(--grad-text);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#1183CE;
}
.anniv-title{color:var(--white);text-transform:uppercase;font-size:2.1rem;letter-spacing:.05em;margin:0 0 16px;}
.anniv-title span{color:var(--orange);}
.anniv-tagline{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-family:var(--font-head);font-weight:600;text-transform:uppercase;letter-spacing:.16em;font-size:.92rem;color:rgba(255,255,255,.85);}
.anniv-sep{width:8px;height:8px;background:var(--orange);border-radius:2px;transform:rotate(45deg);flex:none;}
@media (max-width:768px){
  .anniv{padding:54px 0;}
  .anniv::before{display:none;}
  .anniv-inner{flex-direction:column;text-align:center;gap:20px;}
  .anniv-num{font-size:6rem;}
  .anniv-title{font-size:1.4rem;}
  .anniv-tagline{justify-content:center;}
}

/* ============================================================
   PAGE HERO (inner page banner)
   ============================================================ */
.page-hero{position:relative;min-height:340px;display:flex;align-items:center;justify-content:center;text-align:center;background-size:cover;background-position:center;color:var(--white);}
.page-hero::before{content:"";position:absolute;inset:0;background:rgba(20,20,20,.62);}
.page-hero .container{position:relative;z-index:2;}
.page-hero h1{color:var(--white);font-size:3rem;margin:0;}

/* ============================================================
   INFO BOX (O nama)
   ============================================================ */
.info-box{display:flex;gap:20px;background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:26px 28px;margin-top:24px;}
.info-ico{flex:none;width:52px;height:52px;border-radius:50%;background-image:var(--grad);display:flex;align-items:center;justify-content:center;}
.info-ico svg{width:24px;height:24px;fill:var(--white);}
.info-box h4{font-family:var(--font-head);color:var(--heading);font-size:1.25rem;margin:0 0 .5rem;}
.info-box p{margin:0;font-size:.98rem;}
.two-col-text>p:first-child{font-size:1.12rem;}

/* ============================================================
   COUNTERS SECTION (dark)
   ============================================================ */
.counters-section{position:relative;background-size:cover;background-position:center;background-attachment:fixed;padding:90px 0;color:var(--white);}
.counters-section::before{content:"";position:absolute;inset:0;background:rgba(20,20,20,.86);}
.counters-section .container{position:relative;z-index:2;}
.eyebrow--light{color:var(--orange);}
.counters-row{display:grid;grid-template-columns:repeat(4,1fr);margin-top:26px;}
.counter{padding:6px 32px;}
.counter:not(:first-child){border-left:1px solid rgba(255,255,255,.18);}
.counter:first-child{padding-left:0;}
.counters-row .stat-num{font-family:var(--font-head);font-weight:700;font-size:3.6rem;line-height:1;color:var(--white);display:block;margin-bottom:1rem;}
.counter p{color:rgba(255,255,255,.82);font-size:1rem;margin:0;}

/* ============================================================
   PROCESS STEPS (Kako radimo)
   ============================================================ */
.steps{margin-top:22px;display:flex;flex-direction:column;gap:22px;}
.step{display:flex;gap:20px;}
.step-num{flex:none;width:46px;height:46px;border-radius:8px;background-image:var(--grad);color:var(--white);font-family:var(--font-head);font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:center;}
.step h4{font-family:var(--font-head);color:var(--heading);font-size:1.2rem;margin:0 0 .4rem;}
.step p{margin:0;font-size:.98rem;}
.two-col-text .section-title+.eyebrow{margin-top:-.6rem;margin-bottom:1rem;}

/* CTA card over image */
.media-frame--cta{position:relative;}
.cta-card{position:absolute;left:-14px;bottom:44px;background-image:var(--grad);color:var(--white);border-radius:var(--radius-lg);padding:26px 34px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;font-family:var(--font-head);font-weight:600;font-size:1.1rem;box-shadow:0 18px 40px rgba(10,114,194,.34);transition:background-image .2s ease;}
.cta-card:hover{background-image:var(--grad-hover);color:var(--white);}
.cta-ico{width:58px;height:58px;border-radius:50%;background:var(--white);display:flex;align-items:center;justify-content:center;}
.cta-ico svg{width:26px;height:26px;fill:var(--orange);}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.two-col--top{align-items:start;}
.contact-list{margin-top:28px;display:flex;flex-direction:column;gap:24px;}
.contact-item{display:flex;gap:18px;align-items:flex-start;}
.contact-ico{flex:none;width:54px;height:54px;border-radius:10px;background-image:var(--grad);display:flex;align-items:center;justify-content:center;}
.contact-ico svg{width:22px;height:22px;fill:var(--white);}
.contact-item h4{font-family:var(--font-head);color:var(--heading);font-size:1.1rem;margin:0 0 .3rem;}
.contact-item p{margin:0;font-size:1rem;line-height:1.6;}
.contact-note{font-size:.85rem;color:var(--text);opacity:.85;}
.contact-item a:hover{color:var(--orange);}

.contact-form .form-field{margin-bottom:16px;}
.contact-form input,.contact-form textarea{width:100%;background:var(--surface-3);border:1px solid var(--divider);border-radius:10px;padding:16px 20px;font-family:var(--font-body);font-size:1rem;color:var(--heading);transition:border-color .2s ease,background .2s ease;}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#78838F;}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--orange);background:#262E38;}
.contact-form textarea{resize:vertical;min-height:150px;}
.contact-form .btn{margin-top:6px;font-size:1.1rem;padding:16px;}
.kpw-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden;}

.form-msg{padding:15px 20px;border-radius:10px;margin-bottom:20px;font-weight:500;}
.form-msg--success{background:rgba(73,171,60,.14);color:#7BD46B;border:1px solid rgba(73,171,60,.4);}
.form-msg--error{background:rgba(192,57,43,.14);color:#FF8C7A;border:1px solid rgba(192,57,43,.45);}

.contact-map{line-height:0;}
.contact-map iframe{display:block;width:100%;filter:invert(.9) hue-rotate(180deg) saturate(.7) brightness(.95);}

/* ============================================================
   GUIDE PAGE (Dizel agregati …)
   ============================================================ */
.lead{font-size:1.14rem;margin:0 0 36px;}
.calc-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-bottom:40px;}
.calc-card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:30px 28px;}
.calc-card .step-num{margin-bottom:18px;}
.calc-card p{margin:0;font-size:.98rem;}
.prose p{margin:0 0 1.2rem;}
.prose p:last-child{margin-bottom:0;}
.section-title+.lead,.section-title+.prose{margin-top:22px;}

/* Product image on a light panel */
.media-panel{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:40px;display:flex;align-items:center;justify-content:center;min-height:340px;}
.media-panel img{max-height:420px;width:auto;object-fit:contain;}
.media-frame--contain{box-shadow:none;background:transparent;border-radius:0;}
.media-frame--contain img{object-fit:contain;aspect-ratio:auto;height:auto;}

/* Dark info band (Izračun snage…) */
.info-band{position:relative;background-size:cover;background-position:center;padding:74px 0;color:var(--white);}
.info-band::before{content:"";position:absolute;inset:0;background:rgba(20,20,20,.84);}
.info-band .container{position:relative;z-index:2;}
.info-band .section-title{color:var(--orange);margin-bottom:1.1rem;}
.info-band p{color:rgba(255,255,255,.88);margin:0;}

/* TablePress product tables */
.table-wrap{overflow-x:auto;margin-top:10px;}
.table-wrap .dataTables_filter,.table-wrap .dt-search{margin-bottom:14px;text-align:right;font-family:var(--font-head);color:var(--text);}
.table-wrap .dataTables_filter input,.table-wrap .dt-search input{border:1px solid var(--divider);background:var(--surface-3);color:var(--heading);border-radius:8px;padding:8px 12px;margin-left:8px;font-family:var(--font-body);}
.table-wrap .dt-search input:focus{outline:none;border-color:var(--orange);}
.table-wrap .dt-info,.table-wrap .dataTables_info{margin-top:14px;font-family:var(--font-head);font-size:.92rem;color:var(--text);}
.table-wrap .dt-length{font-family:var(--font-head);color:var(--text);}
.table-wrap .dt-length select{background:var(--surface-3);color:var(--heading);border:1px solid var(--divider);border-radius:8px;padding:6px 10px;}
table.tablepress{width:100%;border-collapse:collapse;font-size:.98rem;margin:0;}
table.tablepress thead th{background:#0E2C38;color:var(--heading);font-family:var(--font-head);font-weight:600;text-align:left;padding:14px 16px;border:0;}
table.tablepress tbody td{padding:13px 16px;border-top:1px solid var(--divider);}
table.tablepress tbody tr:nth-child(even) td{background:rgba(255,255,255,.03);}
table.tablepress tbody tr:hover td{background:rgba(30,155,220,.14);}
table.tablepress a{color:var(--orange);font-weight:600;}
table.tablepress a:hover{color:var(--orange-dark);}
.table-wrap .dataTables_paginate,.table-wrap .dt-paging{margin-top:16px;display:flex;gap:6px;justify-content:center;flex-wrap:wrap;}
.table-wrap .dataTables_paginate .paginate_button,.table-wrap .dt-paging .dt-paging-button{padding:8px 14px;border:2px solid var(--divider);border-radius:8px;cursor:pointer;font-family:var(--font-head);font-weight:600;color:var(--heading);background:transparent;}
.table-wrap .dataTables_paginate .paginate_button.current,.table-wrap .dataTables_paginate .paginate_button:hover,
.table-wrap .dt-paging .dt-paging-button.current,.table-wrap .dt-paging .dt-paging-button:hover:not(.disabled){background-image:var(--grad);border-color:transparent;color:var(--white);}
.table-wrap .dt-paging .dt-paging-button.disabled{opacity:.4;cursor:default;}
.table-wrap--simple table.tablepress td{vertical-align:top;}
.table-wrap--simple table.tablepress td:first-child{font-weight:600;color:var(--heading);width:55%;}

/* ============================================================
   EMSA GENERATOR
   ============================================================ */
.chevron-list{margin-top:24px;display:flex;flex-direction:column;gap:20px;}
.chevron-item{display:flex;gap:16px;}
.chevron-ico{flex:none;width:44px;height:44px;border-radius:50%;background-image:var(--grad);display:flex;align-items:center;justify-content:center;}
.chevron-ico svg{width:17px;height:17px;fill:var(--white);}
.chevron-item h4{font-family:var(--font-head);color:var(--heading);font-size:1.15rem;margin:0 0 .35rem;}
.chevron-item p{margin:0;font-size:.98rem;}

.emsa-cards{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
.emsa-card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:40px;text-align:center;box-shadow:0 8px 26px rgba(0,0,0,.3);}
.emsa-card-img{height:230px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
.emsa-card-img img{max-height:230px;width:auto;object-fit:contain;}
.emsa-card h4{font-family:var(--font-head);color:var(--heading);font-size:1.4rem;margin:0 0 .8rem;}
.emsa-card p{margin:0;}

.btn--outline{background-image:none;background-color:transparent;box-shadow:inset 0 0 0 2px var(--orange);color:var(--orange);}
.btn--outline:hover{background-image:var(--grad);box-shadow:none;color:var(--white);}
.btn--outline svg{fill:var(--orange);}
.btn--outline:hover svg{fill:var(--white);}

/* ============================================================
   EV PUNJAČI
   ============================================================ */
.mini-stats--wide .mini-stat{align-items:center;}
.mini-stats--wide .mini-lbl{max-width:none;font-weight:500;line-height:1.3;}

.ev-products{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.ev-product{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:26px;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .25s ease,box-shadow .25s ease;}
.ev-product:hover{transform:translateY(-5px);border-color:rgba(30,155,220,.45);box-shadow:0 20px 44px rgba(0,0,0,.5);}
.ev-product-img{height:210px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.ev-product-img img{max-height:210px;width:auto;object-fit:contain;}
.ev-product h3{font-size:1.15rem;color:var(--heading);margin:0;}

.solution-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;}
.solution-card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:34px;box-shadow:0 8px 26px rgba(0,0,0,.3);}
.solution-ico{display:inline-flex;width:60px;height:60px;margin-bottom:18px;}
.solution-ico svg{width:60px;height:60px;fill:var(--orange);}
.solution-card h4{font-family:var(--font-head);color:var(--heading);font-size:1.2rem;margin:0 0 .6rem;}
.solution-card p{margin:0;font-size:.98rem;}

.req-list{margin-top:24px;display:flex;flex-direction:column;gap:24px;}
.req-item{display:flex;gap:18px;}
.req-ico{flex:none;width:36px;display:flex;justify-content:center;}
.req-ico svg{width:32px;height:32px;fill:var(--orange);}
.req-item h4{font-family:var(--font-head);color:var(--heading);font-size:1.15rem;margin:0 0 .4rem;}
.req-item p{margin:0;font-size:.98rem;}

/* ============================================================
   SINGLE POST (Novosti)
   ============================================================ */
.post-hero{position:relative;min-height:420px;display:flex;align-items:center;background-size:cover;background-position:center;color:var(--white);}
.post-hero::before{content:"";position:absolute;inset:0;background:rgba(20,20,20,.7);}
.post-hero .container{position:relative;z-index:2;}
.post-hero h1{color:var(--white);font-size:2.8rem;margin:0 0 1.1rem;max-width:900px;}
.post-meta{display:flex;gap:34px;flex-wrap:wrap;}
.post-meta-item{display:inline-flex;align-items:center;gap:9px;color:rgba(255,255,255,.9);font-family:var(--font-head);font-weight:500;}
.post-meta-item svg{width:16px;height:16px;fill:var(--orange);flex:none;}

.post-layout{display:grid;grid-template-columns:1fr 360px;gap:54px;align-items:start;}
.post-content>*{margin-bottom:1.2rem;}
.post-content>*:last-child{margin-bottom:0;}
.post-content img{border-radius:12px;height:auto;}
.post-content h2,.post-content h3,.post-content h4{font-family:var(--font-head);color:var(--heading);margin:1.6rem 0 .8rem;}
.post-content strong{color:var(--heading);}
.post-content a:not(.btn):not(.share-btn){color:var(--orange);}
.post-content a:not(.btn):not(.share-btn):hover{color:var(--orange-dark);}
.post-share{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-top:1px solid var(--divider);margin-top:34px;padding-top:24px;}
.post-share span{font-family:var(--font-head);font-weight:600;color:var(--heading);}
.share-btn{width:42px;height:42px;border-radius:8px;background-image:var(--grad);display:inline-flex;align-items:center;justify-content:center;}
.share-btn svg{width:16px;height:16px;fill:var(--white);}

.post-sidebar{position:sticky;top:104px;}
.sidebar-block{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:26px 26px 12px;margin-bottom:26px;}
.sidebar-block h3{font-family:var(--font-head);font-size:1.35rem;color:var(--heading);margin:0 0 18px;}
.recent-post{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--divider);}
.recent-post:last-child{border-bottom:0;}
.recent-thumb{flex:none;width:66px;height:66px;border-radius:8px;background:var(--surface-3) center/cover no-repeat;}
.recent-info{display:flex;flex-direction:column;gap:5px;}
.recent-title{font-family:var(--font-head);font-weight:600;font-size:.95rem;line-height:1.3;color:var(--heading);transition:color .2s ease;}
.recent-post:hover .recent-title{color:var(--orange);}
.recent-date{font-family:var(--font-head);font-weight:600;font-size:.82rem;color:var(--orange);}

.sidebar-cta{position:relative;border-radius:var(--radius-lg);overflow:hidden;padding:34px 30px;color:var(--white);background-size:cover;background-position:center;}
.sidebar-cta::before{content:"";position:absolute;inset:0;background:rgba(20,20,20,.78);}
.sidebar-cta>*{position:relative;z-index:2;}
.sidebar-cta h4{font-family:var(--font-head);color:var(--white);font-size:1.5rem;margin:0 0 .7rem;}
.sidebar-cta p{color:rgba(255,255,255,.86);font-size:.98rem;margin:0 0 1.3rem;}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer{background:var(--dark);color:#a9abae;padding:74px 0 0;}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px;}
.site-footer h4{color:var(--white);font-family:var(--font-head);font-size:1.15rem;margin-bottom:1.4rem;position:relative;padding-bottom:12px;display:inline-block;}
.site-footer h4::after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;background-image:var(--grad);}
.site-footer a:hover{color:var(--orange);}
.footer-contact li{display:flex;align-items:flex-start;gap:11px;margin-bottom:.85rem;}
.footer-contact li:first-child{font-weight:600;color:var(--white);margin-bottom:1.1rem;}
.footer-contact svg{width:16px;height:16px;fill:var(--orange);flex:none;margin-top:5px;}
.footer-links li,.footer-products li{margin-bottom:.85rem;}
.footer-links a,.footer-products a{display:inline-flex;align-items:center;gap:10px;}
.footer-links svg,.footer-products svg{width:13px;height:13px;fill:var(--orange);flex:none;}
.footer-fb{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background-image:var(--grad);border-radius:4px;margin-top:8px;}
.footer-fb:hover{background-image:var(--grad-hover);}
.footer-fb svg{width:15px;height:15px;fill:var(--white);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:60px;padding:24px 0;text-align:center;font-size:.9rem;color:#9a9c9f;}
.footer-bottom a{color:var(--orange);}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1024px){
  .offer-grid{grid-template-columns:repeat(2,1fr);}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:20px;}
  .two-col{grid-template-columns:1fr;gap:44px;}
  .two-col--rev .two-col-media{order:0;}
  .news-card{flex-basis:calc((100% - 28px)/2);}
  .news-grid{grid-template-columns:repeat(2,1fr);}
  .post-layout{grid-template-columns:1fr;gap:40px;}
  .post-sidebar{position:static;}
  .calc-cards{grid-template-columns:1fr;}
  .ev-products{grid-template-columns:repeat(2,1fr);}
  .solution-cards{grid-template-columns:1fr;}
  .emsa-cards{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px;}
  .partners{gap:44px;}
  .counters-row{grid-template-columns:repeat(2,1fr);gap:30px 0;}
  .counter:nth-child(3){border-left:0;padding-left:0;}
  .counters-section{background-attachment:scroll;}
}
@media (max-width:768px){
  h1,.hero h1{font-size:2.1rem;}
  .section-title{font-size:1.55rem;}
  .section{padding:60px 0;}
  .main-nav{position:fixed;inset:0 0 0 auto;width:min(82%,320px);background:var(--dark);flex-direction:column;padding:90px 24px 24px;box-shadow:-8px 0 30px rgba(0,0,0,.35);transform:translateX(100%);transition:transform .3s ease;z-index:200;}
  .main-nav.open{transform:translateX(0);}
  .main-nav ul{flex-direction:column;align-items:stretch;gap:2px;}
  .main-nav .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0 0 0 16px;min-width:0;}
  .main-nav .menu-item-has-children>a::before{display:none;}
  .nav-close{display:flex;position:absolute;top:20px;right:20px;width:42px;height:42px;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:0;border-radius:8px;cursor:pointer;}
  .nav-close svg{width:16px;height:16px;fill:var(--white);}
  .nav-close:hover{background:rgba(255,255,255,.16);}
  .nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;z-index:190;}
  .nav-backdrop.open{opacity:1;visibility:visible;}
  .nav-toggle{display:block;z-index:210;transition:opacity .2s ease,visibility .2s ease;}
  body.kpw-nav-open .nav-toggle{opacity:0;visibility:hidden;}
  .stats{margin-top:36px;}
  .stats-grid{grid-template-columns:1fr 1fr;}
  .offer-grid{grid-template-columns:1fr;}
  .news-card{flex-basis:86%;}
  .news-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .badge--orange{right:0;}
  .site-topbar{display:none;}
  .site-logo img{width:150px;}
  .site-header .container{min-height:84px;}
  .mini-stats{flex-direction:column;gap:16px;}
  .page-hero h1{font-size:2.1rem;}
  .counters-row{grid-template-columns:1fr;}
  .counter,.counter:not(:first-child){border-left:0;padding:0;}
  .counter:not(:last-child){padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.16);}
  .cta-card{left:50%;transform:translateX(-50%);bottom:-24px;}
}

/* Galerija u blog postu (nakon uklanjanja Elementora) */
.post-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:28px 0;}
.post-gallery a{display:block;border-radius:6px;overflow:hidden;line-height:0;}
.post-gallery img{width:100%;height:220px;object-fit:cover;display:block;transition:transform .35s ease;}
.post-gallery a:hover img{transform:scale(1.05);}
@media(max-width:600px){.post-gallery img{height:180px;}}
