:root{
  --bg:#0a0a0a;
  --text:#f3f3f3;
  --muted: rgba(255,255,255,.75);
  --card: rgba(255,255,255,.70);
  --ink:#111;
  --accent:#ffcf00;
  --shadow: 0 20px 60px rgba(0,0,0,.35);
  --radius: 10px;
}

/* ---------------------------
   RESET / BASE
--------------------------- */
*{ box-sizing:border-box; }
html, body{ height:100%; }

a{ text-decoration: none; }

body{
  margin:0;
  font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: var(--bg);
  color: var(--text);
}

/* Form reset */
button, input, textarea, select{
  font: inherit;
  letter-spacing: inherit;
  color: inherit;
}
button{
  background:none;
  border:0;
  padding:0;
}
input, textarea, select, button{
  appearance:none;
  -webkit-appearance:none;
}
input::placeholder, textarea::placeholder{
  color: rgba(0,0,0,.45);
}

a{ color: inherit; }

.container{
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
}

/* ---------------------------
   TOPBAR / NAV
--------------------------- */
.topbar{
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 16px 24px;
  background: linear-gradient(to bottom, rgba(0,0,0,.70), rgba(0,0,0,.05));
  backdrop-filter: blur(6px);
}

.brand img{
  height: 42px;
  display:block;
}

.nav{
  display:flex;
  gap: 18px;
}
.nav a{
  text-decoration:none;
  font-size: 14px;
  padding: 10px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
}
.nav a:hover{ background: rgba(255,255,255,.14); }

/* Hamburger */
.nav-toggle{
  display:none;
  width:44px;
  height:44px;
  border-radius:12px;
  background: rgba(255,255,255,.08);
  align-items:center;
  justify-content:center;
  gap:5px;
  cursor:pointer;
}
.nav-toggle:hover{ background: rgba(255,255,255,.14); }

.nav-toggle-bar{
  width:20px;
  height:2px;
  background:#fff;
  border-radius:2px;
  transition:.18s;
}

.topbar.is-open .nav-toggle-bar:nth-child(1){
  transform: translateY(7px) rotate(45deg);
}
.topbar.is-open .nav-toggle-bar:nth-child(2){
  opacity:0;
}
.topbar.is-open .nav-toggle-bar:nth-child(3){
  transform: translateY(-7px) rotate(-45deg);
}

/* ---------------------------
   SECTIONS
--------------------------- */
.section{
  min-height:100vh;
  display:flex;
  align-items:center;
  position:relative;
  background-size:cover;
  background-position:center;
}

.overlay{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.35);
}
.overlay-soft{ background: rgba(0,0,0,.18); }

.hero{ background:none; }
.about{ background-image:url("2.jpg"); }
.contact{ background-image:url("3.jpg"); }

/* ---------------------------
   HERO
--------------------------- */
.hero-inner{
  padding: 92px 0 56px;
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:18px;
  align-items:center;
}

.hero-copy{
  max-width:720px;
  z-index:2;
}

.hero-media{
  min-height:340px;
  background:url("1.gif") no-repeat right center;
  background-size:120%;
  filter: drop-shadow(0 16px 40px rgba(0,0,0,.35));
  z-index:2;
}

.hero h1{
  margin:0;
  font-weight:800;
  font-size: clamp(42px, 6vw, 92px);
  line-height:1.02;
  letter-spacing:-.02em;
  text-shadow:0 10px 60px rgba(0,0,0,.55);
}

/* Portrait phones */
@media (max-width: 900px) and (orientation: portrait){
  .hero-inner{
    grid-template-columns:1fr;
    gap:22px;
    padding-bottom:64px;
  }
  .hero-media{
    background-position:center;
    background-size:contain;
    min-height:260px;
  }
}

/* ---------------------------
   ABOUT + CONTACT (IDENTICAL CARD)
--------------------------- */
.about-inner{
  padding:120px 0 80px;
  z-index:2;
}

.contact-inner{
  padding:120px 0 56px;
  z-index:2;
}

.card{
  max-width: 640px;
  margin: 0;                 /* ← KLJUČNO */
  padding: 52px 56px;
  background: var(--card);
  color: var(--ink);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.card h2{
  margin:0 0 18px;
  font-weight:800;
  font-size: clamp(28px, 3.2vw, 52px);
}
.card p{
  font-size:20px;
  line-height:1.55;
  margin:0 0 16px;
}
.card p:last-child{ margin:0; }
.muted{ opacity:.8; }

/* ---------------------------
   CONTACT FORM
--------------------------- */
.field{ margin-bottom:12px; }

label{
  font-size:14px;
  color:rgba(0,0,0,.72);
  margin-bottom:6px;
  display:block;
}

input, textarea{
  width:100%;
  padding:12px;
  font-size:16px;
  border-radius:6px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  color:#111;
}
textarea{ min-height:140px; resize:vertical; }

.btn{
  width:100%;
  padding:12px 14px;
  background:#111;
  color:#fff;
  border-radius:6px;
  font-weight:700;
  cursor:pointer;
}
.btn:hover{ filter:brightness(1.05); }

.status{
  margin-top:12px;
  font-size:14px;
  color:rgba(0,0,0,.75);
}

.hp{ display:none !important; }

/* ---------------------------
   MOBILE
--------------------------- */
@media (max-width: 700px){
  .nav-toggle{ display:inline-flex; }

  .nav{
    display:none;
    position:absolute;
    top:100%;
    left:14px;
    right:14px;
    margin-top:10px;
    flex-direction:column;
    gap:10px;
    padding:12px;
    border-radius:14px;
    background:rgba(0,0,0,.95);
    box-shadow:var(--shadow);
  }
  .topbar.is-open .nav{ display:flex; }

  .card{
    padding:28px 24px;
  }

  .contact-inner{
    padding-top:92px;
    padding-bottom:64px;
  }
}

/* ---------------------------
   COMPANY DETAILS
--------------------------- */
.company-details{
  margin-top:22px;
  text-align:center;
  font-size:16px;
  line-height:1.6;
  color:rgba(255,255,255,.92);
}
.company-logo{
  height:52px;
  margin:0 auto 10px;
}
.company-name{
  font-weight:400;
  margin-bottom:4px;
}
