:root{
  --bg:#0a0a0a;
  --card:#121212;
  --text:#f6f6f6;
  --muted:#b8b8b8;
  --accent:#ffcc00;
  --accent-ink:#1a1a1a;
  --accent-2:#ffd633;
  --stroke:#1d1d1d;
  --max:1140px;

  --headerH:80px;
  --logoH:120px;
}

*{box-sizing:border-box}
html,body{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Outfit",system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial;
  color:var(--text);
  line-height:1.6;
  background: linear-gradient(135deg,#0a0a0a 0%,#111 60%,#141414 100%);
}

body::before{
  content:"";
  position:fixed; inset:0; z-index:-2;
  background: url("bg.jpg") center/cover no-repeat fixed;
  opacity:.15;
  pointer-events:none;
}

img{max-width:100%;height:auto;display:block}
.muted{color:var(--muted)}

a,button{outline:none}
a:focus-visible,button:focus-visible{outline:2px dashed var(--accent);outline-offset:3px}

.container{width:100%;max-width:var(--max);margin:auto;padding:0 20px}
.section{padding:80px 0; position:relative; z-index:1}

.section{
  content-visibility: auto;
  contain-intrinsic-size: 800px;
}

.section + .section::before{
  content:"";
  position:absolute;
  left:0; right:0; top:-2px; height:3px;
  background: linear-gradient(90deg, var(--accent), var(--accent-2), var(--accent));
  pointer-events:none;
  z-index: 0;
}

.section--alt{
  background:#0f0f0f;
  background-blend-mode:multiply;
}
.hero{
  background:linear-gradient(120deg,#0a0a0a 0%,#111 60%);
  background-blend-mode:multiply;
}

.section__title{font-size:38px;line-height:1.15;margin:0 0 10px}
.section__subtitle{color:var(--muted);margin:0 0 32px}
.center{text-align:center}

.card, .pill, .footer, .site-header{
  background: rgba(20,20,20,.5);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(12px) saturate(1.5);
  -webkit-backdrop-filter: blur(12px) saturate(1.5);
}

.light-overlay{
  position:fixed; inset:0; z-index:0;
  background:
    radial-gradient(600px 400px at 20% 30%, rgba(255,204,0,.08), transparent 60%),
    radial-gradient(500px 350px at 80% 70%, rgba(255,255,255,.05), transparent 60%);
  animation: moveLights 12s ease-in-out infinite alternate;
  pointer-events:none;
}
@keyframes moveLights{
  0%{background-position:0% 0%, 100% 100%}
  100%{background-position:100% 100%, 0% 0%}
}

.site-header{
  position:sticky; top:0; z-index:50;
  height:var(--headerH);
  background:rgba(10,10,10,.7);
  backdrop-filter:saturate(1.2) blur(8px);
  border-bottom:1px solid var(--stroke);
  transition: box-shadow .2s ease;
}
body.scrolled .site-header{ box-shadow:0 8px 24px rgba(0,0,0,.35) }

.nav{display:flex;align-items:center;justify-content:space-between;height:100%}
.brand{display:flex;align-items:center;color:var(--text);text-decoration:none}
.brand-logo{height:var(--logoH);width:auto;object-fit:contain;display:block;margin-top:10px}
.nav-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap;z-index:51}
.nav-links a{color:var(--text);text-decoration:none;opacity:.85;transition:opacity .15s ease}
.nav-links a:hover{opacity:1}

.btn{
  background:var(--accent); color:#000;
  border:none;border-radius:12px;padding:10px 16px;
  font-weight:800;cursor:pointer;text-decoration:none;display:inline-block;
  transition:background .15s ease, transform .08s ease, box-shadow .15s ease;
  box-shadow:0 0 0 0 rgba(255,204,0,0);
}
.btn:hover{background:var(--accent-2)}
.btn:active{transform:translateY(1px)}
.btn:focus-visible{box-shadow:0 0 0 3px rgba(255,204,0,.35)}
.btn--lg{padding:14px 20px;font-size:16px}
.btn--ghost{background:transparent;border:1px solid var(--accent);color:var(--accent)}
.btn--ghost:hover{border-color:var(--accent-2);color:var(--accent-2)}
.link{color:var(--text);opacity:.85;text-decoration:none;transition:opacity .15s ease}
.link:hover{opacity:1;text-decoration:underline}

.nav .btn, .nav-links .btn{opacity:1;background:var(--accent);color:#000}
.nav .btn:hover, .nav-links .btn:hover{background:var(--accent-2);color:#000}

.hamburger{display:none;flex-direction:column;gap:5px;background:transparent;border:0;cursor:pointer}
.hamburger span{width:24px;height:2px;background:#fff;display:block;border-radius:1px}

@media (max-width:900px){
  .hamburger{display:flex}
  .nav-links{
    position:fixed;left:0;right:0;top:var(--headerH);
    background:#0c0c0c;border-top:1px solid var(--stroke);
    flex-direction:column;align-items:flex-start;padding:18px;gap:14px;
    transform:translateY(-130%);transition:transform .25s ease;
  }
  body.nav-open .nav-links{transform:translateY(0)}
}

@media (max-width: 900px){
  body::before{
    background-attachment: scroll;
  }
  .card, .pill, .footer, .site-header{
    backdrop-filter: blur(6px) saturate(1.3);
    -webkit-backdrop-filter: blur(6px) saturate(1.3);
  }
}

.hero{
  position:relative;
  padding:120px 0 80px;
  overflow:hidden;
}
.hero__bg{position:absolute; inset:0; overflow:hidden; z-index:0}
.hero__bg video{
  width:100%; height:100%; object-fit:cover;
  filter:brightness(.55) saturate(1.1);
  pointer-events:none;
}
.hero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;position:relative;z-index:1}
.hero h1{font-size:48px;line-height:1.1;margin:0 0 12px}
.hero p{color:var(--muted);margin:0 0 24px}
.hero__cta{display:flex;gap:14px;align-items:center;margin-bottom:18px}
.hero__tagline{
  display:inline-block;margin:8px 0 10px;font-weight:800;letter-spacing:.2px;
  background:var(--accent);color:#000;padding:6px 12px;border-radius:999px;
}
.proof-strip{display:flex;gap:10px;flex-wrap:wrap}
.proof-strip span{background:#141414;border:1px solid var(--stroke);padding:8px 10px;border-radius:999px;color:#e8e8e8;font-size:14px}

.hero__visual{display:grid;gap:16px}
.card{background:var(--card);border:1px solid var(--stroke);border-radius:16px;padding:18px}
.kpi{display:flex;flex-direction:column;gap:6px}
.kpi__num{font-size:42px;font-weight:700;color:var(--accent)}
.kpi__num[data-animating="true"]{ text-shadow:0 0 12px rgba(255,204,0,.25) }
.kpi__label{color:#eaeaea}
.menu-card h3{margin:0 0 8px}
.menu-card ul{margin:0;padding-left:18px;color:var(--muted)}

.trust{
  padding:22px 0;
  border-top:1px solid var(--stroke);
  border-bottom:1px solid var(--stroke);
  background:#0f0f0f !important;
}
.trust.section--alt{ background:#0f0f0f }
.trust__row{
  display:flex; justify-content:center; align-items:center;
  column-gap:52px; row-gap:12px; flex-wrap:wrap;
}
.pill{
  background:#141414; border:1px solid var(--stroke);
  border-radius:999px; padding:8px 14px; font-weight:700;
}
.pill--ghost{
  background:transparent;
  border:1px solid var(--stroke);
  color:#eaeaea;
}

.section__split{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.cards .card{transition:transform .15s ease}
.cards .card:hover{transform:translateY(-2px)}

.service .icn{font-size:28px}
.grid-3 .card.service{display:flex;flex-direction:column;height:100%}
.grid-3 .card.service .bullets{margin-top:auto}
.bullets{margin:10px 0 0;padding-left:18px;color:#dcdcdc}
.cta-row{display:flex;gap:14px;align-items:center;margin-top:24px}

.steps{margin:10px 0 18px;padding-left:18px;color:#e8e8e8}
.chart h3{margin:0 0 10px}

.bars{display:flex;gap:22px;align-items:flex-end;height:200px;padding:12px 8px;border:1px dashed var(--stroke);border-radius:14px}
.bar{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1}
.bar i{display:block;width:46px;background:#2a2a2a;border-radius:10px}
.bar--accent i{background:var(--accent)}
.bar span{font-size:14px;color:var(--muted)}

.card.mini h4{margin:0 0 6px}

.pricing .plan{position:relative}
.plan .price{font-size:28px;margin:8px 0 14px}
.plan .price span{font-size:14px;color:var(--muted)}
.plan .btn{width:100%;text-align:center}
.plan--featured{outline:2px solid var(--accent);transform:scale(1.01)}
.badge{
  position:absolute;top:-12px;right:-12px;background:var(--accent);color:var(--accent-ink);
  padding:6px 10px;border-radius:999px;font-weight:700;font-size:12px
}
.plan .price{margin:8px 0 6px}
.plan .addfee{margin:0 0 12px;font-size:14px;color:var(--muted);min-height:20px}
.plan ul.bullets{margin:0 0 16px}

.calendly-placeholder{text-align:center}
.calendly-placeholder p{margin:0}
.cal-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.btn--cal{background:#000;border:1px solid var(--accent);color:var(--accent)}
.btn--cal:hover{background:#111;border-color:var(--accent-2);color:var(--accent-2)}

.form{display:grid;gap:12px}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input,textarea{
  width:100%;background:#0f0f0f;border:1px solid var(--stroke);border-radius:12px;
  padding:12px 14px;color:var(--text);font:inherit;outline:none
}
input:focus,textarea:focus{border-color:#2b2b2b}

input[type="range"]{width:100%;accent-color:var(--accent)}

.link-card{color:inherit;text-decoration:none}
.link-card .link{color:var(--accent)}
.link-card:hover .link{text-decoration:underline}

#faq .grid-3{grid-template-columns:repeat(3,1fr)}
#faq .card.mini p{color:#dcdcdc}
#faq .card.mini h4 b{color:var(--accent)}

.footer{
  border-top:1px solid var(--stroke);
  padding:26px 0;
  background:#0c0c0c;
  text-align:center;
}
.footer__row{
  display:flex; flex-direction:column; align-items:center; gap:16px;
}
.footer__links{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
.footer__links a{color:#ddd;text-decoration:none;opacity:.85}
.footer__links a:hover{opacity:1}
.footer__legal small{color:var(--muted)}
.footer__legal a{color:var(--accent);text-decoration:none}
.footer__legal a:hover{text-decoration:underline}

.floating-cta{
  position:fixed;right:16px;bottom:16px;z-index:60;
  background:var(--accent);color:#000;padding:12px 16px;
  border-radius:999px;font-weight:700;text-decoration:none;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  animation:pulse 2.8s ease-in-out infinite;
}
@keyframes pulse{
  0%{transform:translateY(0) scale(1)}
  60%{transform:translateY(0) scale(1.05)}
  100%{transform:translateY(0) scale(1)}
}
@media(min-width:900px){.floating-cta{display:none}}

#cookie{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:70;
  background:#111;border:1px solid #222;padding:12px 14px;border-radius:10px
}
#cookie[hidden]{display:none}
#cookie small{color:#ccc}
#cookie button{margin-left:12px}
#cookie button.btn{padding:8px 12px}

.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 16px}
.tab{
  background:#141414;border:1px solid var(--stroke);color:#eaeaea;
  padding:10px 14px;border-radius:999px;font-weight:700;cursor:pointer;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.tab:hover{border-color:#2a2a2a}
.tab.is-active{
  background:var(--accent);color:#000;border-color:var(--accent);
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.panels{display:grid;gap:16px}
.panel[hidden]{display:none}
.contact-header{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap
}
.contact-header h3{margin:0 0 4px}
.contact-header p{margin:0;color:var(--muted)}
.contact-header .btn{background:#25D366;color:#fff;font-weight:700;white-space:nowrap}
.contact-header .btn:hover{background:#2fe678}

@media (max-width:1000px){
  .hero__grid,.section__split,.grid-3,.footer__row{grid-template-columns:1fr}
  .form__row{grid-template-columns:1fr}
  .footer__row{gap:12px}
}
@media (max-width:900px){
  :root{--logoH:110px}
  .hero{padding-top:100px}
  #faq .grid-3{grid-template-columns:1fr}
}
@media (max-width:420px){
  :root{--logoH:100px}
  .section{padding:64px 0}
  .section__title{font-size:32px}
  .hero h1{font-size:40px}
}

.case-study-row{
  display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:stretch;
}
.case-study-row > div{display:flex; flex-direction:column}
.case-study-row > div:first-child > .card:last-child,
.case-study-row > div:first-child .testi{margin-top:auto}
.case-study-row > div:last-child .chart{display:flex;flex-direction:column;height:100%;margin:0}

.chart .chart-viewport{
  flex:1; min-height:260px; max-width:420px; width:100%; margin:0 auto; display:flex;
  aspect-ratio: 16/9;
}
.chart .chart-viewport canvas{width:100% !important; height:100% !important; display:block}

@media (prefers-reduced-motion: reduce){
  html,body{scroll-behavior:auto}
  .floating-cta{animation:none}
  .light-overlay{animation:none}
}
.guarantee {
  background: var(--accent);
  color: #000;
  text-align: center;
  padding: 20px;
  border-radius: 16px;
  font-weight: 700;
}
.guarantee p {margin:0;font-size:16px}
.guarantee div {font-size:22px;margin-bottom:8px}
.guarantee-more summary::before {
  content: "▶ ";
  color: var(--accent);
  font-weight: 700;
}
.guarantee-more[open] summary::before {
  content: "▼ ";
}

.guarantee-more summary::marker {
  content: none;
}
.hero { position: relative; }
.hero__bg::after{
  content:""; position:absolute; inset:-10px; z-index:0;
  backdrop-filter: blur(2.5px); -webkit-backdrop-filter: blur(2.5px);
}
.hero__bg img{
  width:100%; height:100%; object-fit:cover; object-position:center;
  filter: brightness(.6) saturate(1.05);
}
.hero .card{ background: rgba(12,12,12,.78); }
.hero h1{ text-shadow: 0 1px 12px rgba(0,0,0,.45); }

@media (max-width: 640px){
  .hero__visual .kpi{ display:none; }
  .hero__bg img{ object-position:center 35%; }
}
#about .grid-2 {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 2rem;
  align-items: center;
}

#about img {
  border-radius: 0;
  box-shadow: 0 0 20px rgba(0,0,0,0.3);
  max-width: 100%;
  height: auto;
}


@media (max-width: 768px) {
  #about .grid-2 {
    grid-template-columns: 1fr;
    text-align: center;
  }
  
  #about img {
    margin: 0 auto 1.5rem auto;
  }
}
#about {
  position: relative;
  padding-top: 4rem;
  padding-bottom: 4rem;
  background: var(--bg);
}


.footer::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--accent), var(--accent-2), var(--accent));
}
.footer { position: relative; }
.hero::before {
  content: "";
  position: absolute;
  top: 0; 
  left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--accent), var(--accent-2), var(--accent));
  z-index: 2;
}
.hero {
  position: relative;
  padding:120px 0 80px;
  overflow:hidden;
}
.whatsapp-float {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #25D366;
  border-radius: 50%;
  width: 56px;
  height: 56px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
  z-index: 100;
  transition: transform .2s ease;
}
.whatsapp-float:hover {
  transform: scale(1.08);
}

.whatsapp-float img {
  width: 28px;
  height: 28px;
  filter: invert(1);
}
@media (max-width: 768px) {
  .whatsapp-float {
    bottom: 75px;
  }
}

.whatsapp-float .tooltip {
  position: absolute;
  right: 70px;
  background: #111;
  color: #fff;
  padding: 6px 10px;
  border-radius: 6px;
  font-size: 14px;
  white-space: nowrap;
  opacity: 0;
  transform: translateY(4px);
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
}
.whatsapp-float:hover .tooltip {
  opacity: 1;
  transform: translateY(0);
}
.process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(320px, 1fr));
  gap: 40px;
  justify-content: center;
}

.process-grid .step {
  min-height: 200px;
  color: #fff;
}

.process-grid .step h4 {
  margin-bottom: 1rem;
  font-size: 1.2rem;
  color: #fff;
}

.process-grid .step .bullets {
  list-style: disc;
  padding-left: 1.2rem;
  margin: 0;
}

.process-grid .step .bullets li {
  margin-bottom: 0.5rem;
  color: #fff;
  font-size: 1rem;
  line-height: 1.4;
}

@media (max-width: 900px) {
  .process-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
#process .section__title {
  margin-bottom: 3.5rem; 
}

.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .6s ease, transform .6s ease;
  will-change: opacity, transform;
}
.reveal.from-left  { transform: translateX(-28px); }
.reveal.from-right { transform: translateX( 28px); }
.reveal.visible    { opacity: 1; transform: translate(0,0); }

#benefits .step {
  min-height: 200px; 
}

.step.card {
  transition: transform 0.25s ease, 
              box-shadow 0.5s ease, 
              border-color 0.5s ease;
}

.step.card:hover {
  transform: translateY(-8px);
  box-shadow: 0 8px 20px rgba(255, 204, 0, 0.3);
  border-color: var(--accent);
}
#fit .step {
  min-height: 220px;
}
.hero-benefits {
  margin: 1.5rem 0 2rem;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem 2rem;
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
}

.hero-benefits li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

@media (max-width: 640px){
  .hero-benefits{ grid-template-columns: 1fr; }
}
.card {
  transition: transform 0.25s ease-out,
              box-shadow 0.5s ease,
              border-color 0.5s ease;
}

.card:hover {
  transform: translateY(-8px);
  box-shadow: 0 8px 20px rgba(255,204,0,.3);
  border-color: var(--accent);
}
.footer {
  padding: 2rem 0;
  background: var(--card);
  color: var(--muted);
  font-size: 0.9rem;
}

.footer__row {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  text-align: center;
}

.footer__links {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.footer__links a,
.footer__legal a {
  color: var(--muted);
  transition: color 0.3s ease;
}

.footer__links a:hover,
.footer__legal a:hover {
  color: var(--accent);
}
.num-input {
  display: flex;
  align-items: center;
  gap: 4px;
}

.num-input input[type=number] {
  -moz-appearance: textfield;
  appearance: textfield;
  width: 80px;
  padding: 6px;
  text-align: center;
  border: 1px solid var(--muted);
  border-radius: 6px;
  background: #1a1a1a;
  color: var(--text);
}

.num-input input::-webkit-outer-spin-button,
.num-input input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.num-input button {
  background: var(--accent);
  color: var(--accent-ink);
  border: none;
  padding: 6px 10px;
  font-size: 18px;
  line-height: 1;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s;
}

.num-input button:hover {
  background: var(--accent-2);
}
@media (max-width: 900px){
  .case-study-row{
    grid-template-columns: 1fr; /* stack umesto 1fr 1fr */
    gap: 20px;
  }
  .case-study-row > div{ min-width: 0; } /* spreči prelivanje */
  .chart .chart-viewport{
    max-width: 100%;   /* skini limit 420px */
    min-height: 220px; /* malo niži na fonu */
  }
  .chart h3{ font-size: 18px; }
}
html, body {
  min-height: 100%;
  background: #0a0a0a !important;
  color: var(--text);
}
html, body {
  background-color: #0a0a0a !important;
  min-height: 100%;
  overscroll-behavior: none; /* da ne vuče “ispod” */
}

:root {
  color-scheme: dark;
}
