*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:'Montserrat',sans-serif;
  scroll-behavior:smooth;
}

body{
  background:#f4f7fb;
  color:#111827;
  overflow-x:hidden;
}





/* =========================================================
   NAVBAR
========================================================= */

.navbar{
  position:fixed;
  top:0;
  width:100%;

  height:82px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  padding:0 42px;

  background:rgba(255,255,255,0.82);

  backdrop-filter:blur(18px);

  border-bottom:1px solid rgba(255,255,255,0.7);

  box-shadow:
    0 10px 30px rgba(15,23,42,0.05);

  z-index:9999;
}

.logo img{
  height:92px;
  width:auto;
}

/* MENU */

.navbar nav{
  display:flex;
  align-items:center;
  gap:34px;
}

.navbar nav a{
  position:relative;

  color:#111827;
  text-decoration:none;

  font-size:15px;
  font-weight:700;
  letter-spacing:0.3px;

  transition:0.3s;
}

.navbar nav a::after{
  content:"";

  position:absolute;
  left:0;
  bottom:-8px;

  width:0%;
  height:3px;

  border-radius:20px;

  background:linear-gradient(90deg,#2563eb,#38bdf8);

  transition:0.3s;
}

.navbar nav a:hover{
  color:#2563eb;
}

.navbar nav a:hover::after{
  width:100%;
}

/* HAMBURGER */

.hamburger{
  display:none;

  font-size:32px;
  cursor:pointer;
  color:#111827;
}

/* =========================================================
   HERO
========================================================= */

.hero{
  position:relative;

  min-height:100vh;

  display:flex;
  align-items:center;
  justify-content:center;

  text-align:center;

  overflow:hidden;

  background:
    linear-gradient(
      135deg,
      rgba(10,20,40,0.58),
      rgba(15,40,80,0.42)
    ),
    url("images/sarlah1.jpg");

  background-size:cover;
  background-position:center;
}

.hero::before{
  content:"";

  position:absolute;
  inset:0;

  background:
    radial-gradient(circle at top right,
    rgba(37,99,235,0.22),
    transparent 32%);

  z-index:1;
}

.hero::after{
  content:"";

  position:absolute;
  bottom:-220px;
  left:-120px;

  width:520px;
  height:520px;

  border-radius:50%;

  background:
    rgba(255,255,255,0.08);

  filter:blur(100px);
}

.hero-content{
  position:relative;
  z-index:5;

  display:flex;
  flex-direction:column;
  align-items:center;

  padding:120px 20px 80px;
}

.hero-logo{
  width:500px;
  max-width:90vw;

  margin-bottom:16px;

  animation:
    logoIntro 1.8s cubic-bezier(.16,1,.3,1),
    floatingLogo 5s ease-in-out infinite;

  filter:
    drop-shadow(0 0 25px rgba(255,255,255,0.18))
    drop-shadow(0 0 50px rgba(255,255,255,0.08));
}

.hero h1{
  font-size:68px;
  line-height:1.05;

  font-weight:900;

  color:white;

  margin-bottom:14px;

  text-shadow:
    0 12px 35px rgba(0,0,0,0.35);
}

.hero-line{
  width:120px;
  height:4px;

  border-radius:30px;

  margin:0 auto 20px;

  background:
    linear-gradient(90deg,#60a5fa,#ffffff);
}

.hero p{
  max-width:760px;

  color:rgba(255,255,255,0.95);

  font-size:23px;
  line-height:1.7;

  text-shadow:
    0 6px 20px rgba(0,0,0,0.3);
}

/* HERO BUTTON */

.btn{
  margin-top:38px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:18px 38px;

  border-radius:22px;

  background:
    linear-gradient(135deg,#2563eb,#1d4ed8);

  color:white;
  text-decoration:none;

  font-size:15px;
  font-weight:800;
  letter-spacing:1px;

  box-shadow:
    0 18px 45px rgba(37,99,235,0.32);

  transition:0.35s ease;
}

.btn:hover{
  transform:
    translateY(-5px)
    scale(1.03);

  box-shadow:
    0 24px 55px rgba(37,99,235,0.42);
}

/* =========================================================
   SECTIONS
========================================================= */

.section{
  position:relative;
  padding:120px 24px;
}

.section h2{
  text-align:center;

  font-size:52px;
  line-height:1.1;

  font-weight:900;

  color:#0f172a;

  margin-bottom:26px;
}

.section h2::after{
  content:"";

  display:block;

  width:120px;
  height:4px;

  border-radius:30px;

  margin:20px auto 0;

  background:
    linear-gradient(90deg,#2563eb,#38bdf8);
}






/* =========================================================
   O NAMA
========================================================= */

.about-section{
  position:relative;

  overflow:hidden;

  background:
    linear-gradient(
      rgba(245,249,255,0.94),
      rgba(255,255,255,0.97)
    ),
    url("images/pozadina.jpg");

  background-size:cover;
  background-position:center;

  padding:140px 24px;
}

/* glow pozadine */

.about-section::before{
  content:"";

  position:absolute;

  top:-120px;
  left:-120px;

  width:420px;
  height:420px;

  border-radius:50%;

  background:
    rgba(37,99,235,0.10);

  filter:blur(90px);
}

.about-section::after{
  content:"";

  position:absolute;

  bottom:-180px;
  right:-180px;

  width:460px;
  height:460px;

  border-radius:50%;

  background:
    rgba(14,165,233,0.08);

  filter:blur(110px);
}

/* ================= TOP ================= */

.about-top{
  position:relative;
  z-index:2;

  text-align:center;

  max-width:900px;

  margin:0 auto 70px auto;
}

.about-badge{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  padding:12px 22px;

  border-radius:40px;

  background:
    rgba(37,99,235,0.08);

  border:
    1px solid rgba(37,99,235,0.18);

  color:#2563eb;

  font-weight:700;
  font-size:14px;

  letter-spacing:0.5px;

  margin-bottom:24px;
}

.about-top h2{
  font-size:58px;

  font-weight:900;

  color:#0f172a;

  margin-bottom:18px;

  line-height:1.05;
}

.about-lead{
  font-size:22px;

  line-height:1.8;

  color:#334155;

  font-weight:500;
}

/* ================= WRAPPER ================= */

.about-wrapper{
  position:relative;
  z-index:2;

  max-width:1320px;

  margin:auto;

  display:grid;

  grid-template-columns: 1.4fr 0.8fr;

  gap:34px;

  align-items:start;
}

/* ================= TIMELINE ================= */

.about-timeline{
  display:flex;
  flex-direction:column;
  gap:26px;
}

/* kartice */

.timeline-card{
  position:relative;

  display:flex;
  gap:28px;

  padding:38px;

  border-radius:34px;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.96),
      rgba(255,255,255,0.88)
    );

  backdrop-filter:blur(18px);

  border:
    1px solid rgba(255,255,255,0.9);

  box-shadow:
    0 20px 60px rgba(15,23,42,0.08);

  overflow:hidden;

  transition:0.35s ease;
}

.timeline-card:hover{
  transform:translateY(-8px);

  box-shadow:
    0 28px 70px rgba(37,99,235,0.14);
}

.timeline-card::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:5px;

  background:
    linear-gradient(
      90deg,
      #2563eb,
      #38bdf8
    );
}

/* godine */

.timeline-year{
  min-width:110px;
  height:110px;

  border-radius:28px;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:28px;
  font-weight:900;

  color:white;

  background:
    linear-gradient(
      135deg,
      #16a34a,
      #22c55e
    );

  box-shadow:
    0 18px 40px rgba(0,0,0,0.14);
}

.timeline-year.blue{
  background:
    linear-gradient(
      135deg,
      #2563eb,
      #3b82f6
    );
}

.timeline-year.dark{
  background:
    linear-gradient(
      135deg,
      #0f172a,
      #1e293b
    );
}

.timeline-year.gold{
  background:
    linear-gradient(
      135deg,
      #d97706,
      #f59e0b
    );
}

/* ikonice */

.timeline-icon{
  position:absolute;

  top:32px;
  right:32px;

  width:62px;
  height:62px;

  border-radius:18px;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:24px;

  color:white;

  background:
    linear-gradient(
      135deg,
      #16a34a,
      #22c55e
    );
}

.timeline-icon.blue{
  background:
    linear-gradient(
      135deg,
      #2563eb,
      #60a5fa
    );
}

.timeline-icon.dark{
  background:
    linear-gradient(
      135deg,
      #0f172a,
      #334155
    );
}

.timeline-icon.gold{
  background:
    linear-gradient(
      135deg,
      #d97706,
      #f59e0b
    );
}

/* tekst */

.timeline-content{
  flex:1;
}

.timeline-content h3{
  font-size:30px;

  font-weight:800;

  color:#0f172a;

  margin-bottom:18px;

  padding-right:90px;
}

.timeline-content p{
  font-size:18px;

  line-height:2;

  color:#334155;

  margin-bottom:18px;
}

.timeline-content strong{
  color:#2563eb;
  font-weight:800;
}

/* river highlight */

.timeline-highlight{
  display:inline-flex;

  align-items:center;
  gap:12px;

  padding:16px 22px;

  border-radius:18px;

  background:
    linear-gradient(
      135deg,
      rgba(22,163,74,0.10),
      rgba(34,197,94,0.08)
    );

  color:#15803d;

  font-weight:700;

  margin-top:10px;
}

/* RESULT BOX */

.result-box{
  display:flex;
  align-items:center;
  gap:24px;

  padding:28px;

  margin:28px 0;

  border-radius:26px;

  background:
    linear-gradient(
      135deg,
      #eff6ff,
      #ffffff
    );

  border:
    1px solid rgba(37,99,235,0.15);
}

.result-percent{
  font-size:62px;

  font-weight:900;

  line-height:1;

  color:#2563eb;
}

.result-info h4{
  font-size:26px;

  color:#0f172a;

  margin-bottom:10px;
}

.result-info p{
  margin:0;

  color:#475569;

  font-weight:600;
}

.mandates{
  font-size:20px !important;

  font-weight:700;
}

.sad-note{
  opacity:0.82;

  font-style:italic;
}

/* ================= STATS ================= */

.about-stats{
  display:flex;
  flex-direction:column;
  gap:26px;

  position:sticky;
  top:110px;
}

.stats-card{
  padding:40px;

  border-radius:34px;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.97),
      rgba(255,255,255,0.90)
    );

  box-shadow:
    0 20px 60px rgba(15,23,42,0.08);

  border:
    1px solid rgba(255,255,255,0.9);
}

.stats-card h3{
  font-size:30px;

  color:#0f172a;

  margin-bottom:18px;
}

.stats-card p{
  color:#475569;

  line-height:1.9;

  font-size:17px;
}

/* chart */

.chart-wrap{
  margin-top:30px;

  display:flex;
  flex-direction:column;
  gap:26px;
}

.chart-row span{
  display:block;

  margin-bottom:10px;

  font-weight:800;

  color:#0f172a;
}

.chart-bar{
  height:58px;

  border-radius:20px;

  display:flex;
  align-items:center;
  justify-content:flex-end;

  padding-right:22px;

  color:white;

  font-weight:900;

  font-size:22px;
}

.chart-bar.small{
  width:38%;

  background:
    linear-gradient(
      135deg,
      #2563eb,
      #60a5fa
    );
}

.chart-bar.large{
  width:100%;

  background:
    linear-gradient(
      135deg,
      #0f172a,
      #2563eb
    );
}

/* mandates */

.mandates-card{
  text-align:center;
}

.mandate-numbers{
  display:flex;
  align-items:center;
  justify-content:space-between;

  margin-top:30px;
}

.big-number{
  font-size:72px;

  font-weight:900;

  line-height:1;

  color:#0f172a;
}

.blue-number{
  color:#2563eb;
}

.arrow{
  font-size:40px;

  color:#94a3b8;

  font-weight:900;
}

/* ================= MOBILE ================= */

@media (max-width: 1100px){

  .about-wrapper{
    grid-template-columns:1fr;
  }

  .about-stats{
    position:relative;
    top:0;
  }
}

@media (max-width: 768px){

  .about-section{
    padding:100px 18px;
  }

  .about-top h2{
    font-size:40px;
  }

  .about-lead{
    font-size:18px;
    line-height:1.7;
  }

  .timeline-card{
    padding:28px 24px;

    flex-direction:column;

    gap:22px;
  }

  .timeline-year{
    width:92px;
    height:92px;

    font-size:24px;
  }

  .timeline-icon{
    position:relative;

    top:auto;
    right:auto;
  }

  .timeline-content h3{
    font-size:24px;

    padding-right:0;
  }

  .timeline-content p{
    font-size:16px;

    line-height:1.9;
  }

  .result-box{
    flex-direction:column;

    text-align:center;

    padding:24px;
  }

  .result-percent{
    font-size:54px;
  }

  .result-info h4{
    font-size:22px;
  }

  .stats-card{
    padding:28px 24px;
  }

  .big-number{
    font-size:56px;
  }

  .arrow{
    font-size:28px;
  }

  .mandate-numbers{
    gap:10px;
  }
}







/* =========================================================
   PROGRAM
========================================================= */

.program-section{
  background:
    linear-gradient(to bottom,#f8fbff,#eef4ff);
}

.program-intro{
  max-width:980px;

  margin:0 auto 70px;

  text-align:center;

  font-size:19px;
  line-height:2;

  color:#334155;
}

.program-intro strong{
  color:#2563eb;
}

/* GRID */

.program-grid{
  max-width:1180px;

  margin:auto;

  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:24px;
}

/* KARTICE */

.program-card{
  position:relative;

  overflow:hidden;

  min-height:190px;

  display:flex;
  align-items:flex-end;

  padding:34px;

  border-radius:30px;

  text-decoration:none;

  color:white;

  isolation:isolate;

  transition:0.35s ease;

  box-shadow:
    0 18px 45px rgba(15,23,42,0.12);
}

.program-card::before{
  content:"";

  position:absolute;
  inset:0;

  background:
    linear-gradient(
      rgba(0,0,0,0.12),
      rgba(0,0,0,0.68)
    );

  z-index:-1;
}

.program-card::after{
  content:"Погледај програм";

  position:absolute;

  top:24px;
  right:24px;

  padding:10px 14px;

  border-radius:30px;

  background:rgba(255,255,255,0.18);

  backdrop-filter:blur(10px);

  font-size:12px;
  font-weight:800;
  letter-spacing:1px;

  color:white;
}

.program-card:hover{
  transform:
    translateY(-8px)
    scale(1.02);

  box-shadow:
    0 28px 60px rgba(15,23,42,0.18);
}

.program-card{
  font-size:25px;
  line-height:1.45;
  font-weight:800;
}

/* SLIKE ZA SVAKU KARTICU */

.program-card:nth-child(1){
  background:
    url("images/decentralizacija.jpg");
  background-size:cover;
  background-position:center;
}

.program-card:nth-child(2){
  background:
    url("images/coruption1.jpg");
  background-size:cover;
  background-position:center;
}

.program-card:nth-child(3){
  background:
    url("images/ekok.jpg");
  background-size:cover;
  background-position:center;
}

.program-card:nth-child(4){
  background:
    url("images/obraz.jpg");
  background-size:cover;
  background-position:center;
}

.program-card:nth-child(5){
  background:
    url("images/ai.jpg");
  background-size:cover;
  background-position:center;
}

/* AI CARD */

.program-card.highlight{
  grid-column:1/-1;

  min-height:240px;

  font-size:34px;

  justify-content:center;
  text-align:center;

  border:
    2px solid rgba(96,165,250,0.35);
}

/* =========================================================
   VIDEO SEKCIJA
========================================================= */

.video-section{
  background:#ffffff;
}

.video-subtitle{
  text-align:center;

  margin-bottom:60px;

  font-size:18px;
  color:#64748b;
}

/* GRID */

.video-grid{
  max-width:1200px;

  margin:auto;

  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:24px;
}

/* VIDEO CARD */

.video-card{
  position:relative;

  display:flex;
  align-items:center;

  min-height:130px;

  padding:28px 30px 28px 105px;

  border-radius:28px;

  background:
    linear-gradient(145deg,#ffffff,#f8fbff);

  border:1px solid rgba(37,99,235,0.08);

  text-decoration:none;

  color:#0f172a;

  font-size:17px;
  font-weight:700;
  line-height:1.7;

  box-shadow:
    0 14px 40px rgba(15,23,42,0.06);

  transition:0.35s ease;
}

.video-card::before{
  content:"▶";

  position:absolute;

  left:28px;
  top:50%;

  transform:translateY(-50%);

  width:56px;
  height:56px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:18px;

  background:
    linear-gradient(135deg,#2563eb,#38bdf8);

  color:white;

  font-size:22px;
  font-weight:900;

  box-shadow:
    0 12px 30px rgba(37,99,235,0.28);
}

.video-card::after{
  content:"Погледај видео";

  position:absolute;

  bottom:18px;
  right:24px;

  font-size:12px;
  font-weight:800;

  letter-spacing:1px;

  color:#2563eb;

  opacity:0.85;
}

.video-card:hover{
  transform:
    translateY(-8px)
    scale(1.02);

  border-color:rgba(37,99,235,0.22);

  box-shadow:
    0 24px 55px rgba(37,99,235,0.12);
}

/* =========================================================
   DRUSTVENE MREZE
========================================================= */

.social-section{
  background:
    linear-gradient(135deg,#eef4ff,#f8fbff);
}

.social-subtitle{
  text-align:center;

  margin-bottom:55px;

  font-size:18px;

  color:#64748b;
}

.social-grid{
  max-width:1100px;

  margin:auto;

  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:28px;
}

.social-card{
  position:relative;

  overflow:hidden;

  display:flex;
  align-items:center;
  gap:24px;

  padding:34px;

  border-radius:30px;

  text-decoration:none;

  background:white;

  border:1px solid rgba(255,255,255,0.8);

  box-shadow:
    0 18px 45px rgba(15,23,42,0.08);

  transition:0.35s ease;
}

.social-card:hover{
  transform:
    translateY(-8px)
    scale(1.02);
}

.social-icon{
  width:84px;
  height:84px;

  border-radius:24px;

  display:flex;
  align-items:center;
  justify-content:center;

  flex-shrink:0;

  font-size:34px;

  color:white;
}

.social-info h3{
  font-size:28px;
  font-weight:800;

  margin-bottom:6px;

  color:#111827;
}

.social-info span{
  color:#64748b;

  font-size:15px;
  font-weight:600;
}

/* BOJE */

.tiktok .social-icon{
  background:#111;
}

.instagram .social-icon{
  background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);
}

.facebook .social-icon{
  background:#1877f2;
}

.youtube .social-icon{
  background:#ff0000;
}






/* =========================================================
   KONTAKT
========================================================= */

/* =========================
   KONTAKT SEKCIJA
========================= */

.contact-section{

  position:relative;

  overflow:hidden;

  padding:140px 24px;

  background:
    linear-gradient(
      180deg,
      #f8fbff 0%,
      #eef4ff 100%
    );
}

/* BLUR EFEKTI */

.contact-blur{

  position:absolute;

  border-radius:50%;

  filter:blur(90px);

  z-index:1;
}

.blur-one{

  top:-180px;
  left:-180px;

  width:420px;
  height:420px;

  background:
    rgba(37,99,235,0.10);
}

.blur-two{

  bottom:-180px;
  right:-180px;

  width:380px;
  height:380px;

  background:
    rgba(245,158,11,0.10);
}

/* CONTAINER */

.contact-container{

  position:relative;
  z-index:2;

  max-width:1280px;

  margin:auto;

  display:grid;

  grid-template-columns:
    1.1fr
    0.9fr;

  gap:70px;

  align-items:center;
}

/* ================= LEFT ================= */

.contact-tag{

  display:inline-flex;

  align-items:center;

  gap:10px;

  padding:12px 20px;

  border-radius:999px;

  background:
    rgba(37,99,235,0.10);

  color:#2563eb;

  font-size:14px;

  font-weight:800;

  margin-bottom:28px;

  letter-spacing:0.5px;
}

.contact-left h2{

  font-size:64px;

  line-height:1.05;

  color:#0f172a;

  font-weight:900;

  margin-bottom:28px;
}

.contact-description{

  max-width:620px;

  font-size:20px;

  line-height:1.9;

  color:#475569;

  margin-bottom:50px;
}

/* KARTICE */

.contact-cards{

  display:flex;

  flex-direction:column;

  gap:24px;
}

.contact-card{

  position:relative;

  display:flex;

  align-items:center;

  gap:24px;

  padding:32px;

  border-radius:32px;

  overflow:hidden;

  text-decoration:none;

  background:
    rgba(255,255,255,0.82);

  backdrop-filter:blur(18px);

  border:
    1px solid rgba(255,255,255,0.9);

  box-shadow:
    0 20px 55px rgba(15,23,42,0.08);

  transition:0.4s;
}

.contact-card::before{

  content:"";

  position:absolute;

  inset:0;

  background:
    linear-gradient(
      135deg,
      rgba(37,99,235,0.04),
      transparent 60%
    );

  opacity:0;

  transition:0.4s;
}

.contact-card:hover{

  transform:
    translateY(-8px);

  box-shadow:
    0 28px 65px rgba(37,99,235,0.14);
}

.contact-card:hover::before{

  opacity:1;
}

/* IKONICE */

.contact-icon{

  width:78px;
  height:78px;

  border-radius:24px;

  display:flex;

  align-items:center;
  justify-content:center;

  font-size:30px;

  color:white;

  flex-shrink:0;

  box-shadow:
    0 14px 35px rgba(0,0,0,0.12);
}

.contact-icon.blue{

  background:
    linear-gradient(
      135deg,
      #2563eb,
      #3b82f6
    );
}

.contact-icon.gold{

  background:
    linear-gradient(
      135deg,
      #f59e0b,
      #fbbf24
    );
}

/* SADRZAJ */

.contact-card-content{

  flex:1;
}

.contact-card-content span{

  display:block;

  font-size:13px;

  font-weight:800;

  color:#64748b;

  text-transform:uppercase;

  letter-spacing:1px;

  margin-bottom:10px;
}

.contact-card-content h3{

  font-size:24px;

  line-height:1.4;

  color:#0f172a;

  font-weight:800;

  margin-bottom:8px;
}

.contact-card-content p{

  font-size:16px;

  line-height:1.7;

  color:#64748b;
}

/* STRELICA */

.contact-arrow{

  width:54px;
  height:54px;

  border-radius:18px;

  background:
    rgba(37,99,235,0.08);

  display:flex;

  align-items:center;
  justify-content:center;

  color:#2563eb;

  font-size:18px;

  flex-shrink:0;

  transition:0.35s;
}

.contact-card:hover .contact-arrow{

  transform:
    rotate(8deg)
    scale(1.08);

  background:
    rgba(37,99,235,0.14);
}

/* ================= DESNO ================= */

.contact-right{

  display:flex;

  justify-content:center;
}

.contact-visual{

  position:relative;

  width:100%;

  max-width:440px;

  padding:70px 40px;

  border-radius:42px;

  overflow:hidden;

  text-align:center;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,0.95),
      rgba(255,255,255,0.86)
    );

  backdrop-filter:blur(20px);

  border:
    1px solid rgba(255,255,255,0.9);

  box-shadow:
    0 30px 80px rgba(15,23,42,0.10);
}

.visual-glow{

  position:absolute;

  top:-120px;
  right:-120px;

  width:260px;
  height:260px;

  border-radius:50%;

  background:
    rgba(37,99,235,0.12);

  filter:blur(80px);
}

.contact-visual img{

  position:relative;
  z-index:2;

  width:150px;

  margin-bottom:30px;

  filter:
    drop-shadow(0 15px 30px rgba(37,99,235,0.15));
}

.visual-line{

  width:90px;
  height:5px;

  border-radius:999px;

  margin:0 auto 26px;

  background:
    linear-gradient(
      90deg,
      #2563eb,
      #60a5fa
    );
}

.contact-visual h3{

  position:relative;
  z-index:2;

  font-size:34px;

  color:#0f172a;

  font-weight:900;

  margin-bottom:16px;
}

.contact-visual p{

  position:relative;
  z-index:2;

  font-size:18px;

  line-height:1.9;

  color:#475569;
}

/* ================= MOBILE ================= */

@media (max-width: 1100px){

  .contact-container{

    grid-template-columns:1fr;

    gap:60px;
  }

  .contact-left{

    text-align:center;
  }

  .contact-description{

    margin-left:auto;
    margin-right:auto;
  }
}

@media (max-width: 768px){

  .contact-section{

    padding:100px 18px;
  }

  .contact-left h2{

    font-size:42px;
  }

  .contact-description{

    font-size:17px;

    line-height:1.8;
  }

  .contact-card{

    padding:24px;

    align-items:flex-start;
  }

  .contact-icon{

    width:64px;
    height:64px;

    border-radius:20px;

    font-size:24px;
  }

  .contact-card-content h3{

    font-size:18px;
  }

  .contact-card-content p{

    font-size:15px;
  }

  .contact-arrow{

    display:none;
  }

  .contact-visual{

    padding:55px 28px;
  }

  .contact-visual img{

    width:120px;
  }

  .contact-visual h3{

    font-size:28px;
  }

  .contact-visual p{

    font-size:16px;
  }
}



/* =========================================================
   FOOTER
========================================================= */

footer{
  padding:32px;

  text-align:center;

  background:#dbe7ff;

  color:#1e293b;

  font-weight:700;
}

/* =========================================================
   ANIMATIONS
========================================================= */

@keyframes logoIntro{
  0%{
    opacity:0;
    transform:scale(0.75) translateY(50px);
    filter:blur(8px);
  }

  100%{
    opacity:1;
    transform:scale(1) translateY(0);
    filter:blur(0);
  }
}

@keyframes floatingLogo{
  0%{ transform:translateY(0px); }
  50%{ transform:translateY(-10px); }
  100%{ transform:translateY(0px); }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width:768px){

  .navbar{
    padding:0 20px;
    height:74px;
  }

  .logo img{
    height:72px;
  }

  .hamburger{
    display:block;
  }

  .navbar nav{
    display:none;

    position:absolute;

    top:82px;
    right:14px;

    flex-direction:column;
    align-items:flex-start;

    gap:20px;

    padding:24px;

    width:260px;

    border-radius:24px;

    background:white;

    box-shadow:
      0 18px 50px rgba(15,23,42,0.15);
  }

  .navbar nav.active{
    display:flex;
  }

  .hero{
    min-height:92vh;
  }

  .hero-content{
    padding-top:120px;
  }

  .hero-logo{
    width:310px;
  }

  .hero h1{
    font-size:38px;
  }

  .hero p{
    font-size:17px;
    line-height:1.8;
    padding:0 10px;
  }

  .btn{
    width:100%;
    max-width:320px;
  }

  .section{
    padding:90px 18px;
  }

  .section h2{
    font-size:36px;
  }

  .about-box{
    padding:34px 24px;
    border-radius:26px;
  }

  .about-text{
    font-size:16px;
    line-height:2;
    text-align:left;
  }

  .program-grid,
  .video-grid,
  .social-grid{
    grid-template-columns:1fr;
  }

  .program-card{
    min-height:180px;
    font-size:22px;
    padding:24px;
  }

  .program-card.highlight{
    min-height:210px;
    font-size:26px;
  }

  .video-card{
    padding:
      95px 22px 28px 22px;

    text-align:center;

    justify-content:center;

    min-height:180px;
  }

  .video-card::before{
    top:28px;
    left:50%;

    transform:translateX(-50%);
  }

  .video-card::after{
    position:static;

    display:block;

    margin-top:18px;
  }

  .social-card{
    flex-direction:column;
    text-align:center;
  }

  .social-info h3{
    font-size:24px;
  }

  input,
  textarea,
  button{
    border-radius:18px;
  }
}



/* ================= DECENTRALIZACIJA PAGE ================= */
/* ================= GLOBAL ================= */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Montserrat', sans-serif;
}

.page {
  position: relative;

  background:
    radial-gradient(circle at top left, rgba(0,102,255,0.12), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0,200,255,0.12), transparent 35%),
    linear-gradient(180deg, #07111f 0%, #101826 100%);

  color: white;

  overflow-x: hidden;
}

/* ================= BACKGROUND EFFECTS ================= */

.bg-circle {
  position: fixed;
  border-radius: 50%;
  filter: blur(140px);
  z-index: 0;
  opacity: 0.35;
}

.bg-circle-1 {
  width: 320px;
  height: 320px;

  background: #0b63f3;

  top: -80px;
  left: -80px;
}

.bg-circle-2 {
  width: 280px;
  height: 280px;

  background: #00c6ff;

  bottom: -60px;
  right: -60px;
}

/* ================= HERO ================= */

.page-hero {
  position: relative;

  min-height: 82vh;

  background:
    linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.72)),
    url("images/sarlah.jpg");

  background-size: cover;
  background-position: center;

  display: flex;
  align-items: center;
  justify-content: center;

  text-align: center;

  overflow: hidden;
}

.page-hero-overlay {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(circle at center,
    rgba(0,120,255,0.18),
    transparent 55%);
}

/* animated grid */
.hero-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);

  background-size: 40px 40px;

  mask-image: linear-gradient(to bottom, transparent, black, transparent);

  animation: moveGrid 18s linear infinite;
}

@keyframes moveGrid {

  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(40px);
  }

}

.page-hero-content {
  position: relative;
  z-index: 2;

  max-width: 980px;
  padding: 20px;
}

.hero-badge {
  display: inline-block;

  padding: 12px 22px;

  border-radius: 999px;

  border: 1px solid rgba(255,255,255,0.14);

  background: rgba(255,255,255,0.08);

  backdrop-filter: blur(12px);

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;

  margin-bottom: 28px;
}

.page-hero-content h1 {
  font-size: 72px;
  font-weight: 900;
  line-height: 1.05;

  text-shadow:
    0 15px 45px rgba(0,0,0,0.45);
}

.hero-line {
  width: 150px;
  height: 5px;

  border-radius: 999px;

  margin: 30px auto;

  background:
    linear-gradient(90deg,
    #0b63f3,
    #00c6ff);
}

.page-hero-content p {
  font-size: 22px;
  line-height: 1.8;

  color: rgba(255,255,255,0.88);

  max-width: 760px;
  margin: auto;
}

/* ================= CONTAINER ================= */

.page-container {
  position: relative;
  z-index: 2;

  max-width: 1180px;

  margin: -100px auto 120px auto;

  padding: 0 20px;
}

/* ================= GLASS CARD ================= */

.glass-card {
  position: relative;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.10),
      rgba(255,255,255,0.04)
    );

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(18px);

  border-radius: 34px;

  overflow: hidden;

  box-shadow:
    0 25px 70px rgba(0,0,0,0.35);
}

.card-glow {
  position: absolute;

  width: 260px;
  height: 260px;

  background: rgba(0,140,255,0.16);

  filter: blur(90px);

  top: -120px;
  right: -100px;
}

/* ================= INTRO ================= */

.page-intro {
  padding: 55px;
}

.intro-top {
  display: flex;
  align-items: center;
  gap: 24px;

  margin-bottom: 34px;
}

.intro-icon {
  width: 90px;
  height: 90px;

  border-radius: 26px;

  display: flex;
  align-items: center;
  justify-content: center;

  background:
    linear-gradient(135deg,
    #0b63f3,
    #00c6ff);

  font-size: 38px;

  box-shadow:
    0 20px 50px rgba(0,100,255,0.35);
}

.intro-heading span {
  display: inline-block;

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 2px;

  opacity: 0.75;

  margin-bottom: 10px;
}

.intro-heading h2 {
  font-size: 40px;
  font-weight: 800;
}

.intro-content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
}

.intro-content p {
  font-size: 17px;
  line-height: 2;

  color: rgba(255,255,255,0.9);
}

/* ================= SECTION ================= */

.section-heading {
  text-align: center;

  margin-top: 70px;
  margin-bottom: 42px;
}

.section-mini-title {
  display: inline-block;

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 2px;

  opacity: 0.75;

  margin-bottom: 12px;
}

.section-title {
  font-size: 44px;
  font-weight: 900;
}

.title-line {
  width: 100px;
  height: 4px;

  border-radius: 999px;

  margin: 22px auto 0 auto;

  background:
    linear-gradient(90deg,
    #0b63f3,
    #00c6ff);
}

/* ================= GRID ================= */

.principles-grid {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 24px;
}

/* ================= CARD ================= */

.principle-card {
  position: relative;

  padding: 34px;

  border-radius: 30px;

  overflow: hidden;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.09),
      rgba(255,255,255,0.04)
    );

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(16px);

  transition: 0.35s ease;

  box-shadow:
    0 18px 45px rgba(0,0,0,0.28);
}

.principle-card:hover {
  transform: translateY(-10px);

  box-shadow:
    0 28px 60px rgba(0,120,255,0.25);
}

.principle-card::before {
  content: "";

  position: absolute;

  width: 180px;
  height: 180px;

  border-radius: 50%;

  background: rgba(255,255,255,0.04);

  top: -90px;
  right: -90px;
}

.card-number {
  position: absolute;

  top: 20px;
  right: 24px;

  font-size: 54px;
  font-weight: 900;

  opacity: 0.08;
}

.card-icon {
  width: 78px;
  height: 78px;

  border-radius: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  background:
    linear-gradient(135deg,
    #0b63f3,
    #00c6ff);

  font-size: 34px;

  margin-bottom: 24px;

  box-shadow:
    0 16px 40px rgba(0,100,255,0.28);
}

.principle-card p {
  font-size: 16px;
  line-height: 1.9;

  color: rgba(255,255,255,0.92);

  position: relative;
  z-index: 2;
}

/* ================= CTA ================= */

.cta-wrapper {
  text-align: center;
}

.pdf-btn {
  margin: 70px auto 0 auto;

  max-width: 520px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 18px;

  padding: 24px 28px;

  border-radius: 24px;

  text-decoration: none;

  color: white;

  background:
    linear-gradient(135deg,
    #0b63f3,
    #00c6ff);

  box-shadow:
    0 22px 55px rgba(0,120,255,0.32);

  transition: 0.35s ease;
}

.pdf-btn:hover {
  transform: translateY(-7px) scale(1.02);

  box-shadow:
    0 30px 70px rgba(0,120,255,0.42);
}

.pdf-btn span {
  font-size: 17px;
  font-weight: 800;
}

.btn-arrow {
  width: 48px;
  height: 48px;

  border-radius: 14px;

  background: rgba(255,255,255,0.18);

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 24px;
  font-weight: 700;
}

/* ================= MOBILE ================= */

@media (max-width: 900px) {

  .page-hero-content h1 {
    font-size: 46px;
  }

  .page-hero-content p {
    font-size: 18px;
  }

  .page-container {
    margin-top: -60px;
  }

  .intro-content,
  .principles-grid {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 768px) {

  .page-intro {
    padding: 30px;
  }

  .intro-top {
    flex-direction: column;
    align-items: flex-start;
  }

  .intro-heading h2 {
    font-size: 28px;
  }

  .section-title {
    font-size: 32px;
  }

  .principle-card {
    padding: 28px;
  }

  .pdf-btn {
    flex-direction: column;
  }

}

/* ================= MOBILE FIX ================= */

@media (max-width: 768px) {

  .page-hero {
    min-height: 72vh;
    padding: 40px 20px;
  }

  .page-hero-content {
    width: 100%;
    max-width: 100%;
    padding: 0 10px;
  }

  .hero-badge {
    font-size: 10px;
    line-height: 1.6;
    letter-spacing: 1px;

    padding: 10px 16px;

    max-width: 100%;
  }

  .page-hero-content h1 {
    font-size: 34px;
    line-height: 1.2;

    word-break: break-word;
    overflow-wrap: break-word;

    padding: 0 5px;
  }

  .page-hero-content p {
    font-size: 16px;
    line-height: 1.7;

    padding: 0 10px;
  }

  .hero-line {
    width: 90px;
    margin: 22px auto;
  }

  .page-container {
    margin-top: -45px;
    padding: 0 14px;
  }

  .page-intro {
    padding: 26px 22px;
    border-radius: 24px;
  }

  .intro-top {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }

  .intro-icon {
    width: 72px;
    height: 72px;
    font-size: 30px;
  }

  .intro-heading h2 {
    font-size: 26px;
    line-height: 1.3;
  }

  .intro-content {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .intro-content p {
    font-size: 15.5px;
    line-height: 1.9;
  }

  .section-heading {
    margin-top: 55px;
    margin-bottom: 30px;
  }

  .section-title {
    font-size: 30px;
    line-height: 1.25;
    padding: 0 10px;
  }

  .principles-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .principle-card {
    padding: 26px 22px;
    border-radius: 24px;
  }

  .card-number {
    font-size: 42px;
    top: 14px;
    right: 18px;
  }

  .card-icon {
    width: 68px;
    height: 68px;

    font-size: 28px;

    margin-bottom: 18px;
  }

  .principle-card p {
    font-size: 15px;
    line-height: 1.8;
  }

  .pdf-btn {
    flex-direction: row;

    padding: 18px 20px;

    border-radius: 20px;

    gap: 14px;
  }

  .pdf-btn span {
    font-size: 14px;
    line-height: 1.5;
  }

  .btn-arrow {
    min-width: 42px;
    height: 42px;

    font-size: 20px;
  }

}

/* EXTRA SMALL DEVICES */

@media (max-width: 480px) {

  .page-hero-content h1 {
    font-size: 28px;
  }

  .page-hero-content p {
    font-size: 15px;
  }

  .hero-badge {
    font-size: 9px;
  }

  .intro-heading h2 {
    font-size: 22px;
  }

  .section-title {
    font-size: 26px;
  }

  .principle-card p,
  .intro-content p {
    font-size: 14.5px;
  }

  .pdf-btn {
    flex-direction: column;
    text-align: center;
  }

}

/* BACK BUTTON */

.back-button{
  position:fixed;
  top:25px;
  left:25px;

  z-index:9999;

  display:flex;
  align-items:center;
  gap:10px;

  padding:14px 22px;

  border-radius:18px;

  text-decoration:none;
  color:white;

  font-weight:700;
  font-size:14px;

  background:rgba(255,255,255,0.08);

  border:1px solid rgba(255,255,255,0.15);

  backdrop-filter:blur(14px);

  box-shadow:0 10px 30px rgba(0,0,0,0.25);

  transition:0.3s ease;
}

.back-button:hover{
  transform:translateY(-3px);

  background:rgba(255,255,255,0.14);
}

.back-button i{
  font-size:15px;
}

@media (max-width:768px){

  .back-button{
    top:15px;
    left:15px;

    padding:12px 18px;

    font-size:12px;
  }

}





/* =========================
   KORUPCIJA FINAL FIX
========================= */

/* ================= GLOBAL ================= */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Montserrat', sans-serif;
}

.korupcija-page {
  position: relative;

  background:
    radial-gradient(circle at top left, rgba(255,0,0,0.08), transparent 30%),
    radial-gradient(circle at bottom right, rgba(255,120,0,0.08), transparent 35%),
    linear-gradient(180deg, #050505 0%, #111217 100%);

  color: white;

  overflow-x: hidden;
}

/* ================= BACKGROUND GLOWS ================= */

.bg-glow {
  position: fixed;
  border-radius: 50%;
  filter: blur(140px);
  z-index: 0;
  opacity: 0.4;
}

.glow-1 {
  width: 350px;
  height: 350px;
  background: #ff2b2b;

  top: -100px;
  left: -100px;
}

.glow-2 {
  width: 300px;
  height: 300px;
  background: #ff9800;

  bottom: -80px;
  right: -80px;
}

/* ================= HERO ================= */

.korupcija-hero {
  position: relative;

  min-height: 85vh;

  background:
    linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.82)),
    url("images/coruption.jpg");

  background-size: cover;
  background-position: center;

  display: flex;
  align-items: center;
  justify-content: center;

  text-align: center;

  overflow: hidden;
}

/* overlay */
.korupcija-overlay {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(circle at center,
    rgba(255,40,40,0.2),
    transparent 55%);
}

/* particles */
.hero-particles::before,
.hero-particles::after {
  content: "";

  position: absolute;

  width: 600px;
  height: 600px;

  border-radius: 50%;

  border: 1px solid rgba(255,255,255,0.08);

  animation: pulse 8s infinite linear;
}

.hero-particles::before {
  top: -200px;
  left: -120px;
}

.hero-particles::after {
  bottom: -240px;
  right: -150px;

  animation-delay: 3s;
}

@keyframes pulse {

  0% {
    transform: scale(1);
    opacity: 0.4;
  }

  50% {
    transform: scale(1.08);
    opacity: 0.15;
  }

  100% {
    transform: scale(1);
    opacity: 0.4;
  }

}

.korupcija-hero-content {
  position: relative;
  z-index: 2;

  max-width: 950px;
  padding: 20px;
}

.hero-badge {
  display: inline-block;

  padding: 12px 20px;

  border: 1px solid rgba(255,255,255,0.18);

  background: rgba(255,255,255,0.08);

  backdrop-filter: blur(10px);

  border-radius: 999px;

  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2px;

  margin-bottom: 28px;
}

.korupcija-hero-content h1 {
  font-size: 72px;
  font-weight: 900;
  line-height: 1.05;

  text-shadow:
    0 10px 40px rgba(0,0,0,0.5);
}

.korupcija-line {
  width: 140px;
  height: 5px;

  border-radius: 999px;

  margin: 28px auto;

  background:
    linear-gradient(90deg,
    #ff2b2b,
    #ff9800);
}

.korupcija-hero-content p {
  font-size: 22px;
  line-height: 1.8;

  color: rgba(255,255,255,0.88);

  max-width: 760px;
  margin: auto;
}

/* ================= WRAPPER ================= */

.korupcija-wrapper {
  position: relative;
  z-index: 2;

  max-width: 1200px;

  margin: -100px auto 120px auto;

  padding: 0 20px;

  display: flex;
  flex-direction: column;
  gap: 42px;
}

/* ================= GLASS CARD ================= */

.glass-card {
  position: relative;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.09),
      rgba(255,255,255,0.04)
    );

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(18px);

  border-radius: 30px;

  overflow: hidden;

  box-shadow:
    0 20px 60px rgba(0,0,0,0.35);
}

.section-glow {
  position: absolute;

  width: 250px;
  height: 250px;

  background: rgba(255,40,40,0.12);

  filter: blur(80px);

  top: -100px;
  right: -100px;
}

/* ================= INTRO ================= */

.korupcija-intro {
  padding: 55px;
}

.korupcija-intro h2 {
  font-size: 34px;
  font-weight: 800;

  margin-bottom: 24px;
}

.intro-box p {
  font-size: 18px;
  line-height: 2;

  color: rgba(255,255,255,0.88);
}

/* ================= TIMELINE ================= */

.korupcija-timeline {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;

  gap: 22px;
}

.year {
  position: relative;

  width: 240px;

  padding: 34px 24px;

  border-radius: 28px;

  text-align: center;

  overflow: hidden;

  transition: 0.4s ease;

  backdrop-filter: blur(12px);

  box-shadow:
    0 18px 45px rgba(0,0,0,0.3);
}

.year:hover {
  transform: translateY(-10px) scale(1.03);
}

.year-ring {
  position: absolute;

  width: 180px;
  height: 180px;

  border-radius: 50%;

  border: 1px solid rgba(255,255,255,0.1);

  top: -60px;
  right: -60px;
}

.year span {
  display: block;

  font-size: 42px;
  font-weight: 900;

  margin-bottom: 12px;
}

.year p {
  font-size: 15px;
  line-height: 1.7;
}

/* COLORS */

.year.white {
  background:
    linear-gradient(135deg,
    rgba(255,255,255,0.15),
    rgba(255,255,255,0.05));

  color: white;
}

.year.orange {
  background:
    linear-gradient(135deg,
    #ff9800,
    #ff6b00);

  color: white;
}

.year.red {
  background:
    linear-gradient(135deg,
    #7a0000,
    #ff2b2b);

  color: white;
}

/* arrow */

.arrow {
  width: 60px;
  height: 3px;

  border-radius: 999px;

  background:
    linear-gradient(90deg,
    #ff2b2b,
    #ff9800);

  position: relative;
}

.arrow::after {
  content: "";

  position: absolute;

  right: -2px;
  top: -5px;

  border-left: 12px solid #ff9800;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
}

/* ================= IMPACT ================= */

.korupcija-impact {
  display: grid;

  grid-template-columns: repeat(3, 1fr);

  gap: 20px;
}

.impact {
  position: relative;

  padding: 38px 26px;

  border-radius: 28px;

  overflow: hidden;

  background:
    linear-gradient(135deg,
    rgba(255,50,50,0.15),
    rgba(255,120,0,0.12));

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(14px);

  text-align: center;

  transition: 0.35s ease;
}

.impact:hover {
  transform: translateY(-8px);
}

.impact::before {
  content: "";

  position: absolute;

  width: 180px;
  height: 180px;

  border-radius: 50%;

  background: rgba(255,255,255,0.04);

  top: -90px;
  right: -90px;
}

.impact-icon {
  width: 85px;
  height: 85px;

  margin: 0 auto 22px auto;

  border-radius: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  background:
    linear-gradient(135deg,
    #ff2b2b,
    #ff9800);

  font-size: 24px;
  font-weight: 800;

  box-shadow:
    0 12px 35px rgba(255,50,50,0.35);
}

.impact p {
  font-size: 17px;
  line-height: 1.7;

  color: rgba(255,255,255,0.92);
}

/* ================= TEXT ================= */

.korupcija-text {
  padding: 48px;
}

.korupcija-text p {
  font-size: 18px;
  line-height: 2;

  color: rgba(255,255,255,0.9);
}

/* ================= CTA ================= */

.korupcija-cta {
  text-align: center;
}

.korupcija-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 20px 34px;

  border-radius: 20px;

  background:
    linear-gradient(135deg,
    #ff2b2b,
    #ff9800);

  color: white;
  text-decoration: none;

  font-size: 15px;
  font-weight: 800;
  letter-spacing: 1px;

  box-shadow:
    0 18px 45px rgba(255,80,0,0.35);

  transition: 0.35s ease;
}

.korupcija-cta a:hover {
  transform: translateY(-6px) scale(1.04);

  box-shadow:
    0 25px 60px rgba(255,80,0,0.45);
}

/* ================= MOBILE ================= */

@media (max-width: 768px) {

  .korupcija-hero {
    min-height: 72vh;
  }

  .korupcija-hero-content h1 {
    font-size: 42px;
  }

  .korupcija-hero-content p {
    font-size: 18px;
  }

  .korupcija-wrapper {
    margin-top: -60px;
    gap: 28px;
  }

  .korupcija-intro,
  .korupcija-text {
    padding: 30px;
  }

  .korupcija-impact {
    grid-template-columns: 1fr;
  }

  .korupcija-timeline {
    flex-direction: column;
  }

  .arrow {
    width: 3px;
    height: 40px;
  }

  .arrow::after {
    top: auto;
    bottom: -10px;
    right: -5px;

    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 12px solid #ff9800;
    border-bottom: none;
  }

}





/*Ekokomunalno i od. razvoj */

/* ================= GLOBAL ================= */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Montserrat', sans-serif;
}

/* ================= PAGE ================= */

.eco-page {
  position: relative;

  background:
    radial-gradient(circle at top left, rgba(0,255,140,0.10), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0,180,255,0.08), transparent 35%),
    linear-gradient(180deg, #06110b 0%, #0d1712 100%);

  color: white;

  overflow-x: hidden;
}

/* ================= BACKGROUND EFFECTS ================= */

.eco-bg {
  position: fixed;

  border-radius: 50%;

  filter: blur(140px);

  z-index: 0;

  opacity: 0.35;
}

.eco-bg-1 {
  width: 320px;
  height: 320px;

  background: #00c853;

  top: -100px;
  left: -100px;
}

.eco-bg-2 {
  width: 260px;
  height: 260px;

  background: #00b0ff;

  bottom: -80px;
  right: -80px;
}

/* ================= HERO ================= */

.eco-hero {
  position: relative;

  min-height: 90vh;

  background:
    linear-gradient(rgba(0,0,0,0.45), rgba(0,0,0,0.72)),
    url("images/razvoj.jpg");

  background-size: cover;
  background-position: center;

  display: flex;
  align-items: center;
  justify-content: center;

  text-align: center;

  overflow: hidden;
}

/* overlay */
.eco-overlay {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(circle at center,
    rgba(0,255,150,0.16),
    transparent 55%);
}

/* animated grid */
.eco-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);

  background-size: 42px 42px;

  mask-image: linear-gradient(to bottom, transparent, black, transparent);

  animation: moveGrid 18s linear infinite;
}

@keyframes moveGrid {

  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(42px);
  }

}

/* floating circles */
.eco-floating {
  position: absolute;

  border-radius: 50%;

  border: 1px solid rgba(255,255,255,0.08);

  animation: pulse 8s infinite linear;
}

.eco-floating-1 {
  width: 500px;
  height: 500px;

  top: -180px;
  left: -120px;
}

.eco-floating-2 {
  width: 420px;
  height: 420px;

  bottom: -180px;
  right: -120px;

  animation-delay: 3s;
}

@keyframes pulse {

  0% {
    transform: scale(1);
    opacity: 0.4;
  }

  50% {
    transform: scale(1.06);
    opacity: 0.15;
  }

  100% {
    transform: scale(1);
    opacity: 0.4;
  }

}

/* hero content */
.eco-hero-content {
  position: relative;
  z-index: 2;

  max-width: 1050px;

  padding: 20px;
}

.eco-badge {
  display: inline-block;

  padding: 12px 24px;

  border-radius: 999px;

  border: 1px solid rgba(255,255,255,0.14);

  background: rgba(255,255,255,0.08);

  backdrop-filter: blur(14px);

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;

  margin-bottom: 28px;
}

.eco-hero-content h1 {
  font-size: 76px;
  font-weight: 900;
  line-height: 1.05;

  text-shadow:
    0 18px 45px rgba(0,0,0,0.45);
}

.eco-line {
  width: 150px;
  height: 5px;

  border-radius: 999px;

  margin: 30px auto;

  background:
    linear-gradient(90deg,
    #00c853,
    #00b0ff);
}

.eco-hero-content p {
  font-size: 22px;
  line-height: 1.8;

  color: rgba(255,255,255,0.9);

  max-width: 760px;
  margin: auto;
}

/* ================= CONTAINER ================= */

.eco-container {
  position: relative;
  z-index: 2;

  max-width: 1180px;

  margin: -100px auto 120px auto;

  padding: 0 20px;
}

/* ================= GLASS CARD ================= */

.glass-card {
  position: relative;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.10),
      rgba(255,255,255,0.04)
    );

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(18px);

  border-radius: 34px;

  overflow: hidden;

  box-shadow:
    0 25px 70px rgba(0,0,0,0.35);
}

.card-glow {
  position: absolute;

  width: 260px;
  height: 260px;

  background: rgba(0,255,120,0.12);

  filter: blur(90px);

  top: -120px;
  right: -100px;
}

/* ================= INTRO ================= */

.eco-intro {
  padding: 55px;
  margin-bottom: 45px;
}

.intro-top {
  display: flex;
  align-items: center;
  gap: 24px;

  margin-bottom: 34px;
}

.intro-icon {
  width: 90px;
  height: 90px;

  border-radius: 26px;

  display: flex;
  align-items: center;
  justify-content: center;

  background:
    linear-gradient(135deg,
    #00c853,
    #00b0ff);

  font-size: 38px;

  box-shadow:
    0 20px 50px rgba(0,255,120,0.28);
}

.intro-title span {
  display: inline-block;

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 2px;

  opacity: 0.75;

  margin-bottom: 10px;
}

.intro-title h2 {
  font-size: 40px;
  font-weight: 800;
}

.intro-content p {
  font-size: 17px;
  line-height: 2;

  color: rgba(255,255,255,0.9);

  margin-bottom: 24px;
}

/* highlight */
.intro-highlight {
  position: relative;

  margin-top: 10px;

  padding: 24px 24px 24px 34px;

  border-radius: 24px;

  background:
    linear-gradient(
      135deg,
      rgba(0,255,120,0.10),
      rgba(0,180,255,0.08)
    );

  border: 1px solid rgba(255,255,255,0.06);
}

.highlight-line {
  position: absolute;

  left: 0;
  top: 20px;
  bottom: 20px;

  width: 5px;

  border-radius: 999px;

  background:
    linear-gradient(
      180deg,
      #00c853,
      #00b0ff
    );
}

/* ================= IMAGE ================= */

.eco-image-block {
  position: relative;

  border-radius: 34px;

  overflow: hidden;

  margin-bottom: 45px;

  box-shadow:
    0 25px 70px rgba(0,0,0,0.35);
}

.eco-image-block img {
  width: 100%;
  height: 520px;

  object-fit: cover;

  display: block;

  transform: scale(1.03);
}

.image-overlay {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(rgba(0,0,0,0.15), rgba(0,0,0,0.55));

  z-index: 1;
}

.image-text {
  position: absolute;

  left: 40px;
  bottom: 40px;

  z-index: 2;
}

.image-text span {
  display: inline-block;

  padding: 14px 20px;

  border-radius: 16px;

  background: rgba(255,255,255,0.10);

  backdrop-filter: blur(12px);

  border: 1px solid rgba(255,255,255,0.10);

  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2px;
}

/* ================= TEXT SECTION ================= */

.eco-text {
  padding: 55px;
}

.text-header {
  margin-bottom: 36px;
}

.mini-title {
  display: inline-block;

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 2px;

  opacity: 0.75;

  margin-bottom: 12px;
}

.text-header h2 {
  font-size: 42px;
  font-weight: 900;
}

/* paragraph blocks */
.eco-paragraphs {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.eco-paragraph {
  display: flex;
  align-items: flex-start;
  gap: 22px;

  padding: 28px;

  border-radius: 26px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.06),
      rgba(255,255,255,0.03)
    );

  border: 1px solid rgba(255,255,255,0.05);

  transition: 0.35s ease;
}

.eco-paragraph:hover {
  transform: translateY(-6px);

  background:
    linear-gradient(
      135deg,
      rgba(0,255,120,0.10),
      rgba(0,180,255,0.08)
    );
}

.paragraph-icon {
  min-width: 72px;
  height: 72px;

  border-radius: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  background:
    linear-gradient(
      135deg,
      #00c853,
      #00b0ff
    );

  font-size: 20px;
  font-weight: 800;

  box-shadow:
    0 16px 40px rgba(0,255,120,0.22);
}

.eco-paragraph p {
  font-size: 16px;
  line-height: 1.95;

  color: rgba(255,255,255,0.92);
}

.eco-paragraph.important {
  border: 1px solid rgba(0,255,120,0.20);

  background:
    linear-gradient(
      135deg,
      rgba(0,255,120,0.12),
      rgba(0,180,255,0.08)
    );
}

/* ================= CTA ================= */

.eco-cta {
  text-align: center;
}

.eco-btn {
  margin-top: 65px;

  display: inline-flex;
  align-items: center;
  justify-content: space-between;

  gap: 18px;

  width: 100%;
  max-width: 620px;

  padding: 24px 28px;

  border-radius: 28px;

  text-decoration: none;

  color: white;

  background:
    linear-gradient(
      135deg,
      #00c853,
      #00b0ff
    );

  box-shadow:
    0 25px 65px rgba(0,255,120,0.25);

  transition: 0.35s ease;
}

.eco-btn:hover {
  transform: translateY(-8px) scale(1.02);

  box-shadow:
    0 32px 80px rgba(0,255,120,0.35);
}

.eco-btn span {
  font-size: 17px;
  font-weight: 800;

  text-align: left;
}

.btn-circle {
  min-width: 52px;
  height: 52px;

  border-radius: 16px;

  background: rgba(255,255,255,0.18);

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 24px;
  font-weight: 700;
}

/* ================= TABLET ================= */

@media (max-width: 900px) {

  .eco-hero-content h1 {
    font-size: 48px;
  }

  .eco-hero-content p {
    font-size: 18px;
  }

  .eco-container {
    margin-top: -60px;
  }

}

/* ================= MOBILE ================= */

@media (max-width: 768px) {

  .eco-hero {
    min-height: 78vh;
    padding: 40px 20px;
  }

  .eco-hero-content {
    width: 100%;
    max-width: 100%;
  }

  .eco-badge {
    font-size: 10px;
    line-height: 1.6;

    padding: 10px 16px;

    letter-spacing: 1px;
  }

  .eco-hero-content h1 {
    font-size: 34px;
    line-height: 1.18;

    word-break: break-word;
  }

  .eco-hero-content p {
    font-size: 16px;
    line-height: 1.7;
  }

  .eco-line {
    width: 90px;
    margin: 22px auto;
  }

  .eco-container {
    margin-top: -40px;

    padding: 0 14px;
  }

  .eco-intro,
  .eco-text {
    padding: 28px 22px;
  }

  .intro-top {
    flex-direction: column;
    align-items: flex-start;

    gap: 18px;
  }

  .intro-icon {
    width: 72px;
    height: 72px;

    font-size: 30px;
  }

  .intro-title h2,
  .text-header h2 {
    font-size: 28px;
    line-height: 1.3;
  }

  .intro-content p,
  .eco-paragraph p {
    font-size: 15px;
    line-height: 1.9;
  }

  .eco-image-block img {
    height: 320px;
  }

  .image-text {
    left: 20px;
    bottom: 20px;
  }

  .image-text span {
    font-size: 11px;
    letter-spacing: 1px;
  }

  .eco-paragraph {
    flex-direction: column;

    padding: 22px;
  }

  .paragraph-icon {
    min-width: 60px;
    width: 60px;
    height: 60px;

    border-radius: 18px;
  }

  .eco-btn {
    flex-direction: column;

    padding: 20px;

    border-radius: 22px;

    text-align: center;
  }

  .eco-btn span {
    font-size: 14px;
    text-align: center;
    line-height: 1.6;
  }

}

/* ================= SMALL MOBILE ================= */

@media (max-width: 480px) {

  .eco-hero-content h1 {
    font-size: 28px;
  }

  .eco-hero-content p {
    font-size: 15px;
  }

  .intro-title h2,
  .text-header h2 {
    font-size: 24px;
  }

  .eco-paragraph p,
  .intro-content p {
    font-size: 14.5px;
  }

}

/* BACK BUTTON */

.back-button{
  position:fixed;
  top:25px;
  left:25px;

  z-index:9999;

  display:flex;
  align-items:center;
  gap:10px;

  padding:14px 22px;

  border-radius:18px;

  text-decoration:none;
  color:white;

  font-weight:700;
  font-size:14px;

  background:rgba(255,255,255,0.08);

  border:1px solid rgba(255,255,255,0.15);

  backdrop-filter:blur(14px);

  box-shadow:0 10px 30px rgba(0,0,0,0.25);

  transition:0.3s ease;
}

.back-button:hover{
  transform:translateY(-3px);

  background:rgba(255,255,255,0.14);
}

.back-button i{
  font-size:15px;
}

@media (max-width:768px){

  .back-button{
    top:15px;
    left:15px;

    padding:12px 18px;

    font-size:12px;
  }

}









/* ================= REFORM PAGE ================= */

/* ================= RESET ================= */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Montserrat', sans-serif;
}

/* ================= PAGE ================= */

.reform-page {
  position: relative;

  background:
    radial-gradient(circle at top left, rgba(43,108,255,0.14), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0,255,180,0.10), transparent 35%),
    linear-gradient(180deg, #07111d 0%, #0b1623 100%);

  color: white;

  overflow-x: hidden;
}

/* ================= BACKGROUND ================= */

.reform-bg {
  position: fixed;

  border-radius: 50%;

  filter: blur(140px);

  opacity: 0.25;

  z-index: 0;
}

.reform-bg-1 {
  width: 300px;
  height: 300px;

  background: #2b6cff;

  top: -80px;
  left: -100px;
}

.reform-bg-2 {
  width: 260px;
  height: 260px;

  background: #00c853;

  bottom: -80px;
  right: -60px;
}

/* ================= HERO ================= */

.reform-hero {
  position: relative;

  min-height: 92vh;

  background:
    linear-gradient(rgba(0,0,0,0.45), rgba(0,0,0,0.78)),
    url("images/edukacijazdravstvo.jpg");

  background-size: cover;
  background-position: center;

  display: flex;
  align-items: center;
  justify-content: center;

  text-align: center;

  overflow: hidden;
}

.reform-overlay {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(circle at center,
    rgba(43,108,255,0.18),
    transparent 55%);
}

/* animated grid */
.hero-grid {
  position: absolute;
  inset: 0;

  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);

  background-size: 44px 44px;

  mask-image: linear-gradient(to bottom, transparent, black, transparent);

  animation: moveGrid 18s linear infinite;
}

@keyframes moveGrid {

  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(44px);
  }

}

/* glow circles */
.hero-glow {
  position: absolute;

  border-radius: 50%;

  border: 1px solid rgba(255,255,255,0.06);

  animation: pulse 8s linear infinite;
}

.hero-glow-1 {
  width: 500px;
  height: 500px;

  top: -160px;
  left: -160px;
}

.hero-glow-2 {
  width: 420px;
  height: 420px;

  bottom: -160px;
  right: -140px;

  animation-delay: 3s;
}

@keyframes pulse {

  0% {
    transform: scale(1);
    opacity: 0.4;
  }

  50% {
    transform: scale(1.06);
    opacity: 0.12;
  }

  100% {
    transform: scale(1);
    opacity: 0.4;
  }

}

/* content */
.reform-hero-content {
  position: relative;
  z-index: 2;

  max-width: 1100px;

  padding: 20px;
}

.hero-badge {
  display: inline-block;

  padding: 12px 24px;

  border-radius: 999px;

  background: rgba(255,255,255,0.08);

  border: 1px solid rgba(255,255,255,0.12);

  backdrop-filter: blur(12px);

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;

  margin-bottom: 28px;
}

.reform-hero-content h1 {
  font-size: 74px;
  font-weight: 900;
  line-height: 1.05;

  text-shadow:
    0 20px 50px rgba(0,0,0,0.45);
}

.hero-line {
  width: 150px;
  height: 5px;

  border-radius: 999px;

  margin: 30px auto;

  background:
    linear-gradient(
      90deg,
      #2b6cff,
      #00c853
    );
}

.reform-hero-content p {
  font-size: 22px;
  line-height: 1.8;

  color: rgba(255,255,255,0.92);

  max-width: 700px;
  margin: auto;
}

/* ================= CONTAINER ================= */

.reform-container {
  position: relative;
  z-index: 2;

  max-width: 1250px;

  margin: -90px auto 120px auto;

  padding: 0 20px;
}

/* ================= GLASS CARD ================= */

.glass-card {
  position: relative;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.10),
      rgba(255,255,255,0.04)
    );

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(18px);

  border-radius: 34px;

  overflow: hidden;

  box-shadow:
    0 30px 80px rgba(0,0,0,0.35);
}

.card-glow {
  position: absolute;

  width: 260px;
  height: 260px;

  background: rgba(43,108,255,0.18);

  filter: blur(100px);

  top: -120px;
  right: -80px;
}

/* ================= INTRO ================= */

.reform-intro {
  padding: 55px;

  margin-bottom: 45px;
}

.intro-top {
  display: flex;
  align-items: center;
  gap: 24px;

  margin-bottom: 28px;
}

.intro-icon {
  width: 92px;
  height: 92px;

  border-radius: 28px;

  display: flex;
  align-items: center;
  justify-content: center;

  background:
    linear-gradient(
      135deg,
      #2b6cff,
      #00c853
    );

  font-size: 38px;

  box-shadow:
    0 20px 55px rgba(43,108,255,0.35);
}

.intro-heading span {
  display: inline-block;

  font-size: 13px;
  font-weight: 700;

  letter-spacing: 2px;

  opacity: 0.7;

  margin-bottom: 10px;
}

.intro-heading h2 {
  font-size: 40px;
  line-height: 1.2;

  font-weight: 900;
}

.intro-content p {
  font-size: 18px;
  line-height: 2;

  color: rgba(255,255,255,0.9);

  max-width: 900px;
}

/* ================= GRID ================= */

.topics-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  gap: 24px;
}

/* ================= CARD ================= */

.topic-card {
  position: relative;

  padding: 36px;

  border-radius: 34px;

  overflow: hidden;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.10),
      rgba(255,255,255,0.04)
    );

  border: 1px solid rgba(255,255,255,0.08);

  backdrop-filter: blur(18px);

  box-shadow:
    0 25px 70px rgba(0,0,0,0.28);

  transition: 0.4s ease;
}

.topic-card:hover {
  transform: translateY(-10px);

  box-shadow:
    0 35px 90px rgba(0,0,0,0.45);
}

/* top */
.card-top {
  display: flex;
  align-items: center;

  gap: 18px;

  margin-bottom: 30px;
}

/* icon */
.card-icon {
  width: 78px;
  height: 78px;

  border-radius: 24px;

  display: flex;
  align-items: center;
  justify-content: center;

  color: white;

  font-size: 30px;

  flex-shrink: 0;
}

.card-heading span {
  display: inline-block;

  font-size: 12px;
  font-weight: 700;

  letter-spacing: 2px;

  opacity: 0.75;

  margin-bottom: 6px;
}

.card-heading h2 {
  font-size: 28px;
  line-height: 1.2;

  font-weight: 800;
}

/* divider */
.mini-divider {
  width: 70px;
  height: 3px;

  border-radius: 999px;

  margin: 20px 0;
}

/* paragraphs */
.card-content p {
  font-size: 15.8px;
  line-height: 1.95;

  color: rgba(255,255,255,0.92);
}

/* highlight */
.highlight-box {
  position: relative;

  margin-top: 26px;

  padding: 22px 20px 22px 28px;

  border-radius: 24px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.08),
      rgba(255,255,255,0.04)
    );
}

.highlight-line {
  position: absolute;

  left: 0;
  top: 18px;
  bottom: 18px;

  width: 5px;

  border-radius: 999px;
}

/* ================= COLORS ================= */

/* education */
.topic-card.edu .card-icon {
  background:
    linear-gradient(
      135deg,
      #00c853,
      #00e676
    );
}

.topic-card.edu .mini-divider,
.topic-card.edu .highlight-line {
  background:
    linear-gradient(
      90deg,
      #00c853,
      #00e676
    );
}

/* health */
.topic-card.health .card-icon {
  background:
    linear-gradient(
      135deg,
      #2b6cff,
      #4fa3ff
    );
}

.topic-card.health .mini-divider,
.topic-card.health .highlight-line {
  background:
    linear-gradient(
      90deg,
      #2b6cff,
      #4fa3ff
    );
}

/* media */
.topic-card.media .card-icon {
  background:
    linear-gradient(
      135deg,
      #ffb300,
      #ffd54f
    );
}

.topic-card.media .mini-divider,
.topic-card.media .highlight-line {
  background:
    linear-gradient(
      90deg,
      #ffb300,
      #ffd54f
    );
}

/* ================= CTA ================= */

.reform-cta {
  text-align: center;
}

.reform-btn {
  margin-top: 65px;

  display: inline-flex;
  align-items: center;
  justify-content: space-between;

  gap: 18px;

  width: 100%;
  max-width: 720px;

  padding: 24px 28px;

  border-radius: 30px;

  text-decoration: none;

  color: white;

  background:
    linear-gradient(
      135deg,
      #2b6cff,
      #00c853
    );

  box-shadow:
    0 25px 70px rgba(43,108,255,0.30);

  transition: 0.35s ease;
}

.reform-btn:hover {
  transform: translateY(-8px) scale(1.02);

  box-shadow:
    0 35px 90px rgba(43,108,255,0.45);
}

.reform-btn span {
  font-size: 17px;
  font-weight: 800;

  text-align: left;
}

.btn-arrow {
  min-width: 54px;
  height: 54px;

  border-radius: 18px;

  background: rgba(255,255,255,0.18);

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 24px;
  font-weight: 700;
}

/* ================= TABLET ================= */

@media (max-width: 1100px) {

  .topics-grid {
    grid-template-columns: 1fr;
  }

  .reform-hero-content h1 {
    font-size: 54px;
  }

}

/* ================= MOBILE ================= */

@media (max-width: 768px) {

  .reform-hero {
    min-height: 80vh;

    padding: 40px 20px;
  }

  .hero-badge {
    font-size: 10px;
    line-height: 1.6;

    letter-spacing: 1px;

    padding: 10px 16px;
  }

  .reform-hero-content h1 {
    font-size: 34px;
    line-height: 1.18;

    word-break: break-word;
  }

  .reform-hero-content p {
    font-size: 16px;
    line-height: 1.7;
  }

  .hero-line {
    width: 90px;
    margin: 22px auto;
  }

  .reform-container {
    margin-top: -45px;

    padding: 0 14px;
  }

  .reform-intro {
    padding: 28px 22px;
  }

  .intro-top {
    flex-direction: column;
    align-items: flex-start;

    gap: 18px;
  }

  .intro-icon {
    width: 72px;
    height: 72px;

    border-radius: 22px;

    font-size: 28px;
  }

  .intro-heading h2 {
    font-size: 28px;
    line-height: 1.3;
  }

  .intro-content p {
    font-size: 15px;
    line-height: 1.9;
  }

  .topics-grid {
    gap: 18px;
  }

  .topic-card {
    padding: 26px 22px;

    border-radius: 26px;
  }

  .card-top {
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;
  }

  .card-icon {
    width: 68px;
    height: 68px;

    border-radius: 20px;

    font-size: 26px;
  }

  .card-heading h2 {
    font-size: 24px;
  }

  .card-content p {
    font-size: 14.8px;
    line-height: 1.9;
  }

  .highlight-box {
    padding: 20px 18px 20px 24px;
  }

  .reform-btn {
    flex-direction: column;

    padding: 20px;

    border-radius: 22px;

    text-align: center;
  }

  .reform-btn span {
    font-size: 14px;
    line-height: 1.6;

    text-align: center;
  }

}

/* ================= SMALL MOBILE ================= */

@media (max-width: 480px) {

  .reform-hero-content h1 {
    font-size: 28px;
  }

  .reform-hero-content p {
    font-size: 15px;
  }

  .intro-heading h2 {
    font-size: 24px;
  }

  .card-heading h2 {
    font-size: 22px;
  }

  .card-content p,
  .intro-content p {
    font-size: 14.5px;
  }

}

/* BACK BUTTON */

.back-button{
  position:fixed;
  top:25px;
  left:25px;

  z-index:9999;

  display:flex;
  align-items:center;
  gap:10px;

  padding:14px 22px;

  border-radius:18px;

  text-decoration:none;
  color:white;

  font-weight:700;
  font-size:14px;

  background:rgba(255,255,255,0.08);

  border:1px solid rgba(255,255,255,0.15);

  backdrop-filter:blur(14px);

  box-shadow:0 10px 30px rgba(0,0,0,0.25);

  transition:0.3s ease;
}

.back-button:hover{
  transform:translateY(-3px);

  background:rgba(255,255,255,0.14);
}

.back-button i{
  font-size:15px;
}

@media (max-width:768px){

  .back-button{
    top:15px;
    left:15px;

    padding:12px 18px;

    font-size:12px;
  }

}







/* ================= AI PAGE ================= */
/* ================= GLOBAL ================= */

/* ================= RESET ================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Montserrat',sans-serif;
}

/* ================= PAGE ================= */

.ai-page{
  position:relative;

  background:
    radial-gradient(circle at top left, rgba(43,108,255,0.15), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0,224,255,0.12), transparent 35%),
    linear-gradient(180deg,#07111d 0%,#0b1523 100%);

  color:white;

  overflow-x:hidden;
}

/* ================= BACKGROUND ================= */

.ai-bg{
  position:fixed;
  border-radius:50%;
  filter:blur(140px);
  opacity:0.22;
  z-index:0;
}

.ai-bg-1{
  width:320px;
  height:320px;

  background:#2b6cff;

  top:-100px;
  left:-100px;
}

.ai-bg-2{
  width:260px;
  height:260px;

  background:#00e0ff;

  bottom:-100px;
  right:-80px;
}

/* ================= HERO ================= */

.ai-hero{
  position:relative;

  min-height:95vh;

  background:
    linear-gradient(rgba(0,0,0,0.45),rgba(0,0,0,0.78)),
    url("images/ai.jpg");

  background-size:cover;
  background-position:center;

  display:flex;
  align-items:center;
  justify-content:center;

  text-align:center;

  overflow:hidden;

  padding:40px 20px;
}

.ai-overlay{
  position:absolute;
  inset:0;

  background:
    radial-gradient(circle at center,
    rgba(43,108,255,0.25),
    transparent 50%);
}

/* GRID EFFECT */

.hero-grid{
  position:absolute;
  inset:0;

  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);

  background-size:48px 48px;

  mask-image:linear-gradient(to bottom, transparent, black, transparent);

  animation:gridMove 18s linear infinite;
}

@keyframes gridMove{

  0%{
    transform:translateY(0);
  }

  100%{
    transform:translateY(48px);
  }

}

/* RINGS */

.hero-ring{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(255,255,255,0.06);

  animation:pulse 9s linear infinite;
}

.hero-ring-1{
  width:520px;
  height:520px;

  top:-180px;
  left:-180px;
}

.hero-ring-2{
  width:420px;
  height:420px;

  bottom:-140px;
  right:-140px;

  animation-delay:3s;
}

@keyframes pulse{

  0%{
    transform:scale(1);
    opacity:0.4;
  }

  50%{
    transform:scale(1.08);
    opacity:0.12;
  }

  100%{
    transform:scale(1);
    opacity:0.4;
  }

}

/* HERO CONTENT */

.ai-hero-content{
  position:relative;
  z-index:5;

  max-width:1100px;
}

.hero-badge{
  display:inline-block;

  padding:12px 24px;

  border-radius:999px;

  background:rgba(255,255,255,0.08);

  border:1px solid rgba(255,255,255,0.12);

  backdrop-filter:blur(14px);

  font-size:12px;
  font-weight:700;
  letter-spacing:2px;

  margin-bottom:28px;
}

.ai-hero-content h1{
  font-size:72px;
  line-height:1.05;
  font-weight:900;

  color:white;

  text-shadow:
    0 20px 50px rgba(0,0,0,0.45);
}

.hero-line{
  width:150px;
  height:5px;

  border-radius:999px;

  margin:32px auto;

  background:
    linear-gradient(
      90deg,
      #2b6cff,
      #00e0ff
    );
}

.ai-hero-content p{
  max-width:760px;
  margin:auto;

  font-size:22px;
  line-height:1.8;

  color:rgba(255,255,255,0.92);
}

/* ================= CONTAINER ================= */

.ai-container{
  position:relative;
  z-index:2;

  max-width:1280px;

  margin:-90px auto 120px auto;

  padding:0 20px;
}

/* ================= GLASS ================= */

.glass-card,
.ai-card{
  position:relative;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.10),
      rgba(255,255,255,0.04)
    );

  border:1px solid rgba(255,255,255,0.08);

  backdrop-filter:blur(18px);

  box-shadow:
    0 25px 70px rgba(0,0,0,0.30);

  overflow:hidden;
}

/* ================= INTRO ================= */

.ai-intro{
  padding:55px;
  border-radius:34px;

  margin-bottom:40px;
}

.intro-glow{
  position:absolute;

  width:260px;
  height:260px;

  background:rgba(43,108,255,0.18);

  filter:blur(100px);

  top:-120px;
  right:-80px;
}

.intro-top{
  display:flex;
  align-items:center;
  gap:24px;

  margin-bottom:28px;
}

.intro-icon{
  width:90px;
  height:90px;

  border-radius:28px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:
    linear-gradient(
      135deg,
      #2b6cff,
      #00e0ff
    );

  font-size:36px;

  box-shadow:
    0 20px 50px rgba(43,108,255,0.35);
}

.intro-heading span{
  display:inline-block;

  font-size:13px;
  font-weight:700;

  letter-spacing:2px;

  opacity:0.75;

  margin-bottom:10px;
}

.intro-heading h2{
  font-size:40px;
  line-height:1.2;

  font-weight:900;
}

.ai-intro p{
  font-size:18px;
  line-height:2;

  color:rgba(255,255,255,0.92);

  max-width:950px;
}

/* ================= GRID ================= */

.ai-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:24px;
}

/* ================= CARD ================= */

.ai-card{
  border-radius:32px;
  padding:38px;

  transition:0.4s ease;
}

.ai-card:hover{
  transform:translateY(-10px);

  box-shadow:
    0 35px 90px rgba(0,0,0,0.42);
}

/* large cards */
.large-card{
  grid-column:span 2;
}

.full-width{
  grid-column:1/-1;
}

/* pattern */

.card-pattern{
  position:absolute;
  inset:0;

  background-image:
    radial-gradient(rgba(255,255,255,0.03) 1px, transparent 1px);

  background-size:22px 22px;

  opacity:0.5;

  pointer-events:none;
}

/* HEADER */

.card-header{
  position:relative;

  display:flex;
  align-items:center;

  gap:18px;

  margin-bottom:28px;
}

.card-icon{
  width:78px;
  height:78px;

  border-radius:24px;

  display:flex;
  align-items:center;
  justify-content:center;

  color:white;

  font-size:30px;

  flex-shrink:0;
}

.card-title span{
  display:inline-block;

  font-size:12px;
  font-weight:700;

  letter-spacing:2px;

  opacity:0.75;

  margin-bottom:6px;
}

.card-title h2{
  font-size:30px;
  line-height:1.2;

  font-weight:800;
}

/* CONTENT */

.card-content{
  position:relative;
  z-index:2;
}

.ai-card p{
  font-size:16px;
  line-height:2;

  color:rgba(255,255,255,0.92);
}

.mini-line{
  width:80px;
  height:3px;

  border-radius:999px;

  margin:24px 0;
}

/* ================= CRITICAL BOX ================= */

.critical-box{
  position:relative;

  margin-top:28px;

  padding:28px;

  border-radius:28px;

  background:
    linear-gradient(
      135deg,
      rgba(255,43,43,0.22),
      rgba(255,43,43,0.08)
    );

  border:
    1px solid rgba(255,80,80,0.25);

  overflow:hidden;

  box-shadow:
    0 20px 45px rgba(255,43,43,0.18);
}

.critical-box::before{
  content:"";

  position:absolute;
  inset:0;

  background:
    linear-gradient(
      120deg,
      transparent,
      rgba(255,255,255,0.06),
      transparent
    );

  transform:translateX(-100%);

  animation:shine 6s infinite;
}

@keyframes shine{

  100%{
    transform:translateX(100%);
  }

}

.critical-top{
  display:flex;
  align-items:center;
  gap:14px;

  margin-bottom:18px;
}

.critical-top i{
  color:#ff5b5b;
  font-size:24px;
}

.critical-top span{
  font-size:13px;
  font-weight:800;

  letter-spacing:2px;

  color:#ff9d9d;
}

.critical-box p{
  font-size:17px;
  line-height:2;

  font-weight:600;

  color:white;
}

/* ================= HIGHLIGHT ================= */

.highlight-box{
  position:relative;

  margin-top:26px;

  padding:22px 20px 22px 28px;

  border-radius:24px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,0.08),
      rgba(255,255,255,0.04)
    );
}

.highlight-line{
  position:absolute;

  left:0;
  top:18px;
  bottom:18px;

  width:5px;

  border-radius:999px;
}

.highlight{
  font-weight:600;
}

/* ================= SPLIT ================= */

.split-content{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}

/* ================= COLORS ================= */

.ai-card.blue .card-icon{
  background:
    linear-gradient(
      135deg,
      #2b6cff,
      #4f8cff
    );
}

.ai-card.green .card-icon{
  background:
    linear-gradient(
      135deg,
      #00a86b,
      #00d084
    );
}

.ai-card.red .card-icon{
  background:
    linear-gradient(
      135deg,
      #ff2b2b,
      #ff5b5b
    );
}

.ai-card.purple .card-icon{
  background:
    linear-gradient(
      135deg,
      #7b2cff,
      #a259ff
    );
}

.ai-card.cyan .card-icon{
  background:
    linear-gradient(
      135deg,
      #00b7ff,
      #00e0ff
    );
}

.ai-card.blue .mini-line,
.ai-card.blue .highlight-line{
  background:#2b6cff;
}

.ai-card.green .mini-line,
.ai-card.green .highlight-line{
  background:#00d084;
}

.ai-card.red .mini-line,
.ai-card.red .highlight-line{
  background:#ff2b2b;
}

.ai-card.purple .mini-line,
.ai-card.purple .highlight-line{
  background:#a259ff;
}

.ai-card.cyan .mini-line,
.ai-card.cyan .highlight-line{
  background:#00e0ff;
}

/* ================= CTA ================= */

.ai-cta{
  text-align:center;
}

.ai-btn{
  margin-top:65px;

  display:inline-flex;
  align-items:center;
  justify-content:space-between;

  gap:18px;

  width:100%;
  max-width:760px;

  padding:24px 28px;

  border-radius:30px;

  text-decoration:none;

  color:white;

  background:
    linear-gradient(
      135deg,
      #2b6cff,
      #00e0ff
    );

  box-shadow:
    0 25px 70px rgba(43,108,255,0.35);

  transition:0.35s ease;
}

.ai-btn:hover{
  transform:translateY(-8px) scale(1.02);

  box-shadow:
    0 35px 90px rgba(43,108,255,0.48);
}

.ai-btn span{
  font-size:17px;
  font-weight:800;

  text-align:left;
}

.btn-arrow{
  min-width:54px;
  height:54px;

  border-radius:18px;

  background:rgba(255,255,255,0.18);

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:24px;
  font-weight:700;
}

/* ================= TABLET ================= */

@media (max-width:1100px){

  .ai-grid{
    grid-template-columns:1fr;
  }

  .large-card,
  .full-width{
    grid-column:span 1;
  }

  .split-content{
    grid-template-columns:1fr;
  }

  .ai-hero-content h1{
    font-size:54px;
  }

}

/* ================= MOBILE ================= */

@media (max-width:768px){

  .ai-hero{
    min-height:82vh;
    padding:40px 18px;
  }

  .hero-badge{
    font-size:10px;
    line-height:1.6;

    letter-spacing:1px;

    padding:10px 16px;
  }

  .ai-hero-content h1{
    font-size:34px;
    line-height:1.2;

    word-break:break-word;
  }

  .hero-line{
    width:90px;
    margin:22px auto;
  }

  .ai-hero-content p{
    font-size:16px;
    line-height:1.7;
  }

  .ai-container{
    margin-top:-45px;

    padding:0 14px;
  }

  .ai-intro{
    padding:28px 22px;
  }

  .intro-top{
    flex-direction:column;
    align-items:flex-start;

    gap:18px;
  }

  .intro-icon{
    width:72px;
    height:72px;

    border-radius:22px;

    font-size:28px;
  }

  .intro-heading h2{
    font-size:28px;
    line-height:1.3;
  }

  .ai-intro p{
    font-size:15px;
    line-height:1.9;
  }

  .ai-card{
    padding:26px 22px;

    border-radius:26px;
  }

  .card-header{
    flex-direction:column;
    align-items:flex-start;

    gap:16px;
  }

  .card-icon{
    width:68px;
    height:68px;

    border-radius:20px;

    font-size:26px;
  }

  .card-title h2{
    font-size:24px;
    line-height:1.3;
  }

  .ai-card p{
    font-size:14.8px;
    line-height:1.9;
  }

  .critical-box{
    padding:22px 20px;
    border-radius:22px;
  }

  .critical-box p{
    font-size:15px;
  }

  .highlight-box{
    padding:20px 18px 20px 24px;
  }

  .ai-btn{
    flex-direction:column;

    padding:20px;

    border-radius:22px;

    text-align:center;
  }

  .ai-btn span{
    font-size:14px;
    line-height:1.6;

    text-align:center;
  }

}

/* ================= SMALL MOBILE ================= */

@media (max-width:480px){

  .ai-hero-content h1{
    font-size:28px;
  }

  .ai-hero-content p{
    font-size:15px;
  }

  .intro-heading h2{
    font-size:24px;
  }

  .card-title h2{
    font-size:22px;
  }

  .ai-card p,
  .critical-box p{
    font-size:14.5px;
  }

}

/* BACK BUTTON */

.back-button{
  position:fixed;
  top:25px;
  left:25px;

  z-index:9999;

  display:flex;
  align-items:center;
  gap:10px;

  padding:14px 22px;

  border-radius:18px;

  text-decoration:none;
  color:white;

  font-weight:700;
  font-size:14px;

  background:rgba(255,255,255,0.08);

  border:1px solid rgba(255,255,255,0.15);

  backdrop-filter:blur(14px);

  box-shadow:0 10px 30px rgba(0,0,0,0.25);

  transition:0.3s ease;
}

.back-button:hover{
  transform:translateY(-3px);

  background:rgba(255,255,255,0.14);
}

.back-button i{
  font-size:15px;
}

@media (max-width:768px){

  .back-button{
    top:15px;
    left:15px;

    padding:12px 18px;

    font-size:12px;
  }

}







/* ================= PRISTUPNICA ================= */

.membership-section{

  position: relative;

  overflow: hidden;

  background:
    linear-gradient(
      180deg,
      #f8fbff 0%,
      #eef4ff 100%
    );

  padding: 130px 24px;
}

/* POZADINA */

.membership-bg{

  position: absolute;

  inset: 0;

  background:
    radial-gradient(circle at top right,
    rgba(37,99,235,0.10),
    transparent 35%),

    radial-gradient(circle at bottom left,
    rgba(59,130,246,0.08),
    transparent 40%);
}

/* HEADER */

.membership-top{

  position: relative;
  z-index: 2;

  text-align: center;

  margin-bottom: 60px;
}

.membership-badge{

  display: inline-flex;

  align-items: center;
  justify-content: center;

  padding: 10px 22px;

  border-radius: 999px;

  background:
    rgba(37,99,235,0.10);

  color: #2563eb;

  font-size: 14px;
  font-weight: 800;

  letter-spacing: 1px;

  margin-bottom: 22px;

  text-transform: uppercase;
}

.membership-top h2{

  font-size: 54px;

  font-weight: 900;

  color: #0f172a;

  margin-bottom: 18px;

  line-height: 1.1;
}

.membership-subtitle{

  max-width: 760px;

  margin: auto;

  font-size: 20px;

  line-height: 1.9;

  color: #475569;
}

/* BOX */

.membership-box{

  position: relative;
  z-index: 2;

  max-width: 1300px;

  margin: auto;

  padding: 55px;

  border-radius: 40px;

  background:
    rgba(255,255,255,0.92);

  backdrop-filter: blur(18px);

  border:
    1px solid rgba(255,255,255,0.85);

  box-shadow:
    0 30px 80px rgba(15,23,42,0.10);
}

/* GRID */

.membership-grid{

  display: grid;

  grid-template-columns: repeat(2,1fr);

  gap: 24px;
}

/* INPUT */

.input-group{

  display: flex;

  flex-direction: column;
}

.input-group.full{
  grid-column: 1 / -1;
}

.input-group label{

  margin-bottom: 10px;

  font-size: 14px;

  font-weight: 700;

  color: #1e293b;
}

.input-group input,
.input-group textarea{

  width: 100%;

  padding: 18px 20px;

  border-radius: 18px;

  border:
    1px solid rgba(148,163,184,0.30);

  background:
    rgba(255,255,255,0.92);

  font-size: 15px;

  color: #0f172a;

  transition: 0.3s;

  outline: none;
}

.input-group textarea{

  min-height: 160px;

  resize: vertical;
}

.input-group input:focus,
.input-group textarea:focus{

  border-color: #2563eb;

  box-shadow:
    0 0 0 5px rgba(37,99,235,0.10);

  transform: translateY(-2px);
}

/* BUTTON */

.membership-btn{

  margin-top: 38px;

  width: 100%;

  display: flex;

  align-items: center;
  justify-content: center;

  gap: 14px;

  padding: 22px;

  border: none;

  border-radius: 22px;

  background:
    linear-gradient(
      135deg,
      #2563eb,
      #0b63f3
    );

  color: white;

  font-size: 17px;

  font-weight: 800;

  cursor: pointer;

  transition: 0.35s;

  box-shadow:
    0 20px 40px rgba(37,99,235,0.25);
}

.membership-btn:hover{

  transform:
    translateY(-4px)
    scale(1.01);

  box-shadow:
    0 28px 60px rgba(37,99,235,0.30);
}

.membership-btn i{

  font-size: 18px;
}

/* MOBILE */

@media (max-width: 768px){

  .membership-section{
    padding: 90px 16px;
  }

  .membership-top h2{
    font-size: 38px;
  }

  .membership-subtitle{
    font-size: 16px;
    line-height: 1.8;
  }

  .membership-box{

    padding: 28px 20px;

    border-radius: 28px;
  }

  .membership-grid{
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .input-group.full{
    grid-column: auto;
  }

  .input-group input,
  .input-group textarea{

    padding: 16px;

    border-radius: 16px;

    font-size: 14px;
  }

  .membership-btn{

    padding: 18px;

    border-radius: 18px;

    font-size: 15px;
  }

}






/* =========================================================
   LOCAL PROBLEMS — ULTRA MODERN REDESIGN
========================================================= */

html{
  scroll-behavior:smooth;
}

.local-problems-section{
  position:relative;
  padding:120px 0;
  margin-top:100px;
  overflow:hidden;
  background:
    radial-gradient(circle at top left, rgba(255,0,0,0.12), transparent 30%),
    radial-gradient(circle at bottom right, rgba(0,153,255,0.10), transparent 30%),
    #050505;
}

/* BACKGROUND GRID */

.local-problems-section::before{
  content:"";
  position:absolute;
  inset:0;

  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);

  background-size:50px 50px;

  mask-image:linear-gradient(to bottom, transparent, black 15%, black 85%, transparent);

  pointer-events:none;
}

/* GLOW */

.lp-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(140px);
  opacity:.25;
  pointer-events:none;
}

.lp-glow-1{
  width:420px;
  height:420px;
  background:#ff1b1b;
  top:-120px;
  left:-150px;
}

.lp-glow-2{
  width:380px;
  height:380px;
  background:#0066ff;
  right:-120px;
  bottom:-120px;
}

/* HEADER */

.local-header{
  position:relative;
  z-index:5;
  text-align:center;
  max-width:920px;
  margin:0 auto 70px auto;
  padding:0 20px;
}

.local-mini-title{
  display:inline-flex;
  align-items:center;
  gap:10px;

  padding:10px 20px;

  border-radius:999px;

  background:rgba(255,255,255,0.05);

  border:1px solid rgba(255,255,255,0.08);

  color:#ff5b5b;

  font-size:12px;
  font-weight:800;
  letter-spacing:2px;
  text-transform:uppercase;

  backdrop-filter:blur(14px);

  margin-bottom:28px;
}

.local-mini-title i{
  color:#ff2b2b;
}

.local-header h2{
  font-size:72px;
  line-height:1;
  font-weight:900;
  color:white;
  margin-bottom:24px;

  letter-spacing:-2px;

  text-shadow:
    0 10px 30px rgba(0,0,0,.55);
}

.local-header h2 span{
  color:#ff2b2b;
}

.local-line{
  width:130px;
  height:5px;
  border-radius:999px;
  margin:0 auto 26px auto;

  background:linear-gradient(
    90deg,
    #ff2b2b,
    #ff7b7b
  );

  box-shadow:
    0 0 25px rgba(255,43,43,.7);
}

.local-header p{
  font-size:19px;
  line-height:1.8;
  color:#d9dce5;
  max-width:760px;
  margin:auto;
}

/* GRID */

.local-grid{
  position:relative;
  z-index:2;

  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px;
}

/* CARD */

.problem-card{
  position:relative;

  padding:28px;

  border-radius:30px;

  overflow:hidden;

  background:
    linear-gradient(
      145deg,
      rgba(15,15,18,.96),
      rgba(8,8,10,.96)
    );

  border:1px solid rgba(255,255,255,.06);

  transition:.35s ease;

  box-shadow:
    0 20px 60px rgba(0,0,0,.45);

  backdrop-filter:blur(18px);
}

/* BORDER EFFECT */

.problem-card::before{
  content:"";

  position:absolute;
  inset:0;

  border-radius:inherit;

  padding:1px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.12),
      transparent,
      rgba(255,255,255,.03)
    );

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);

  -webkit-mask-composite:xor;

  mask-composite:exclude;
}

/* HOVER */

.problem-card:hover{
  transform:translateY(-8px);

  border-color:rgba(255,255,255,.12);

  box-shadow:
    0 30px 80px rgba(0,0,0,.65);
}

/* TOP BORDER COLORS */

.problem-card.red{
  border-top:3px solid #ff2b2b;
}

.problem-card.blue{
  border-top:3px solid #2b6cff;
}

.problem-card.yellow{
  border-top:3px solid #ffbb00;
}

.problem-card.purple{
  border-top:3px solid #a259ff;
}

.problem-card.cyan{
  border-top:3px solid #00d9ff;
}

/* TOP */

.problem-top{
  display:flex;
  align-items:flex-start;
  gap:18px;
  margin-bottom:22px;
}

/* ICON */

.problem-icon{
  width:68px;
  height:68px;
  min-width:68px;

  border-radius:22px;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:28px;
  color:white;

  position:relative;

  overflow:hidden;

  box-shadow:
    0 15px 35px rgba(0,0,0,.4);
}

.problem-icon::before{
  content:"";

  position:absolute;
  inset:0;

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.25),
      transparent
    );

  opacity:.5;
}

.problem-card.red .problem-icon{
  background:linear-gradient(135deg,#ff2b2b,#ff5b5b);
}

.problem-card.blue .problem-icon{
  background:linear-gradient(135deg,#2b6cff,#00a2ff);
}

.problem-card.yellow .problem-icon{
  background:linear-gradient(135deg,#ffb300,#ffd84d);
}

.problem-card.purple .problem-icon{
  background:linear-gradient(135deg,#7b2cff,#b16cff);
}

.problem-card.cyan .problem-icon{
  background:linear-gradient(135deg,#00b7ff,#00f0ff);
}

/* TAG */

.problem-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;

  padding:6px 12px;

  border-radius:999px;

  background:rgba(255,255,255,.05);

  border:1px solid rgba(255,255,255,.06);

  color:#ff8f8f;

  font-size:10px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;

  margin-bottom:12px;
}

.problem-tag i{
  color:#ff2b2b;
}

/* TITLE */

.problem-top h3{
  font-size:28px;
  line-height:1.2;
  color:white;
  font-weight:900;
  margin:0;
}

/* CONTENT */

.problem-content p{
  font-size:16px;
  line-height:1.9;
  color:#eef2ff;
  font-weight:500;
}

/* IMPORTANT BOX */

.problem-box{
  margin-top:22px;

  padding:20px;

  border-radius:22px;

  background:
    linear-gradient(
      135deg,
      rgba(255,43,43,.10),
      rgba(255,255,255,.03)
    );

  border:1px solid rgba(255,43,43,.15);

  position:relative;
}

.problem-box::before{
  content:"⚠";
  position:absolute;
  top:18px;
  right:18px;

  font-size:18px;
  color:#ff2b2b;
}

/* BUTTON */

.problem-btn{
  margin-top:24px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:14px;

  padding:16px 18px;

  border-radius:18px;

  text-decoration:none;

  color:white;

  font-size:14px;
  font-weight:700;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.06),
      rgba(255,255,255,.03)
    );

  border:1px solid rgba(255,255,255,.06);

  transition:.3s ease;
}

.problem-btn:hover{
  transform:translateY(-4px);

  background:
    linear-gradient(
      135deg,
      #ff2b2b,
      #ff5b5b
    );

  box-shadow:
    0 15px 45px rgba(255,43,43,.35);
}

/* FINAL WARNING */

.final-warning{
  position:relative;

  margin-top:80px;

  padding:45px;

  border-radius:34px;

  overflow:hidden;

  background:
    linear-gradient(
      145deg,
      rgba(18,18,22,.96),
      rgba(8,8,8,.98)
    );

  border:1px solid rgba(255,43,43,.12);

  box-shadow:
    0 25px 80px rgba(0,0,0,.55);
}

.final-warning::before{
  content:"";

  position:absolute;
  inset:0;

  background:
    radial-gradient(
      circle at top right,
      rgba(255,43,43,.18),
      transparent 35%
    );

  pointer-events:none;
}

.warning-icon{
  width:84px;
  height:84px;

  border-radius:24px;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:36px;

  color:white;

  margin-bottom:24px;

  background:
    linear-gradient(
      135deg,
      #ff2b2b,
      #ff5b5b
    );

  box-shadow:
    0 20px 45px rgba(255,43,43,.35);
}

.warning-content h3{
  font-size:42px;
  line-height:1.15;
  color:white;
  font-weight:900;
  margin-bottom:20px;
}

.warning-content h3 span{
  color:#ff2b2b;
}

.warning-content p{
  font-size:17px;
  line-height:1.9;
  color:#eef2ff;
}

.warning-box{
  margin-top:24px;

  padding:22px;

  border-radius:22px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.05),
      rgba(255,255,255,.02)
    );

  border-left:4px solid #ff2b2b;
}

/* EMAIL BUTTON */

.mail-btn{
  margin-top:30px;

  display:inline-flex;
  align-items:center;
  gap:12px;

  padding:18px 24px;

  border-radius:20px;

  text-decoration:none;

  color:white;

  font-size:15px;
  font-weight:800;

  background:
    linear-gradient(
      135deg,
      #0066ff,
      #00cfff
    );

  box-shadow:
    0 18px 50px rgba(0,102,255,.35);

  transition:.3s ease;
}

.mail-btn:hover{
  transform:translateY(-4px) scale(1.02);
}

.anonymous-note{
  margin-top:18px;

  font-size:14px;
  font-weight:700;

  color:#8dffd3;
}

/* RESPONSIVE */

@media(max-width:950px){

  .local-grid{
    grid-template-columns:1fr;
  }

  .local-header h2{
    font-size:52px;
  }

}

@media(max-width:768px){

  .local-problems-section{
    padding:90px 0;
  }

  .local-header{
    margin-bottom:50px;
  }

  .local-header h2{
    font-size:38px;
  }

  .local-header p{
    font-size:16px;
  }

  .problem-card{
    padding:22px;
    border-radius:24px;
  }

  .problem-top{
    flex-direction:column;
  }

  .problem-top h3{
    font-size:24px;
  }

  .problem-content p{
    font-size:15px;
    line-height:1.8;
  }

  .final-warning{
    padding:28px 22px;
  }

  .warning-content h3{
    font-size:30px;
  }

  .warning-content p{
    font-size:15px;
  }

  .mail-btn{
    width:100%;
    justify-content:center;
  }

}

/* FIX ZA LINKOVE I VIDEO DUGMAD */

.problem-card *{
  position:relative;
  z-index:2;
}

.problem-card::before,
.problem-card::after,
.final-warning::before{
  pointer-events:none;
}

.problem-btn,
.problem-btn a,
.video-btn,
.video-link,
iframe,
video{
  position:relative;
  z-index:50;
  pointer-events:auto;
}

/* AKO I DALJE NE RADI */

.problem-card{
  overflow:visible;
}

/* UKLANJA TACKE IZ NAVIGACIJE */

nav ul,
nav li{
  list-style:none;
  margin:0;
  padding:0;
}

.problems-link{
  list-style:none;
}

@media (max-width: 950px){

  .hamburger{
    display:block;
    z-index:10001;
  }

  .navbar nav{
    position:fixed;

    top:82px;
    left:0;

    width:100%;

    background:rgba(255,255,255,0.96);
    backdrop-filter:blur(20px);

    flex-direction:column;
    align-items:flex-start;

    padding:30px;

    gap:24px;

    transform:translateY(-120%);
    opacity:0;

    pointer-events:none;

    transition:0.4s ease;

    border-bottom:1px solid rgba(0,0,0,0.05);
  }

  .navbar nav.active{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }

}