/* ============================================================
   TORQUE, "Industrial Utility"
   Grafit + signalna narandzasta. Monospace za brojeve i cene.
   Servisni-nalog estetika: tehnicke linije, ostri uglovi,
   zuto-crna sigurnosna traka, sablonske oznake.
   ============================================================ */
:root{
  --bg:#121417;          /* grafit */
  --bg2:#191c21;
  --card:#1e2228;
  --steel:#2a2f37;       /* ivice / metal */
  --line:rgba(255,255,255,.075);
  --txt:#eceef1;
  --mut:#8a929f;
  --sig:#ff5b12;         /* signalna narandzasta */
  --sig2:#ffb703;        /* zuta */
  --grad:linear-gradient(100deg,#ff5b12,#ffb703);
  --ok:#3ddc84;
  --r:3px;               /* skoro ostro */
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--txt);font-family:'Inter',sans-serif;
     overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,h3,.brand{font-family:'Sora',sans-serif;letter-spacing:-.025em}
.pr,.b,.n,.tag b,.k,.band .b{font-family:'Roboto Mono',monospace}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{max-width:1220px;margin:0 auto;padding:0 26px}
::selection{background:var(--sig);color:#0d0f12}
.gr{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ikonice */
.mini{width:1em;height:1em;display:inline-block;vertical-align:-.12em;fill:none;
      stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* sigurnosna traka, potpis ovog pravca */
.hazard{height:7px;background:repeating-linear-gradient(45deg,
        var(--sig2) 0 12px,#121417 12px 24px)}

/* ---------- dugmad ---------- */
.btn{display:inline-flex;align-items:center;gap:8px;border-radius:var(--r);
     padding:14px 26px;font-size:13px;font-weight:700;letter-spacing:.1em;
     text-transform:uppercase;cursor:pointer;border:1px solid transparent;transition:.2s;
     font-family:'Inter',sans-serif}
.btn.g{background:var(--sig);color:#160c05}
.btn.g:hover{background:var(--sig2);color:#160c05}
.btn.o{border-color:var(--steel);color:var(--txt);background:transparent}
.btn.o:hover{border-color:var(--sig);color:var(--sig)}
.cta .btn{background:#121417;color:var(--txt)}
.cta .btn:hover{background:#000}

/* ---------- nav ---------- */
nav{position:sticky;top:0;z-index:100;background:rgba(18,20,23,.94);
    backdrop-filter:blur(12px);border-bottom:1px solid var(--steel)}
nav .in{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:22px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;
       letter-spacing:.02em}
.brand .d{width:32px;height:32px;border-radius:var(--r);background:var(--sig);color:#160c05;
          display:grid;place-items:center}
.brand .d svg{width:19px;height:19px}
.nlinks{display:flex;gap:26px;font-size:12px;color:var(--mut);font-weight:600;
        letter-spacing:.12em;text-transform:uppercase}
.nlinks a:hover{color:var(--sig)}
@media(max-width:900px){.nlinks{display:none}}

/* ---------- hero, dijagonalni presek ---------- */
.hero{position:relative;padding:82px 0 96px;overflow:hidden;
      border-bottom:1px solid var(--steel)}
.hero .wrap{display:grid;grid-template-columns:1.08fr .92fr;gap:52px;align-items:center}
.blob{position:absolute;border-radius:50%;filter:blur(90px);opacity:.2;pointer-events:none;
      background:var(--sig)}
.tag{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--steel);
     border-radius:var(--r);padding:7px 14px;font-size:12px;color:var(--mut);
     background:var(--bg2)}
.tag .mini{color:var(--sig2)}
.tag b{color:var(--txt);font-weight:700}
.hero h1{font-size:clamp(34px,5.2vw,66px);font-weight:800;line-height:1.04;margin:20px 0 0}
.hero p{color:var(--mut);font-size:16.5px;line-height:1.7;max-width:50ch;margin:20px 0 30px}
.acts{display:flex;gap:12px;flex-wrap:wrap}
.trust{display:flex;gap:26px;margin-top:34px;padding-top:24px;
       border-top:1px solid var(--line);flex-wrap:wrap}
.trust .n{font-size:23px;font-weight:700;color:var(--sig2)}
.trust p,.trust>div>span{display:block;font-size:10.5px;letter-spacing:.18em;
       text-transform:uppercase;color:var(--mut);margin-top:5px}
.hero-img{position:relative}
.hero-img img{width:100%;border-radius:var(--r);border:1px solid var(--steel);
              filter:contrast(1.05) saturate(.94)}
.badge{position:absolute;left:-14px;bottom:22px;background:var(--card);
       border:1px solid var(--steel);border-left:3px solid var(--sig);
       border-radius:var(--r);padding:14px 18px;display:flex;align-items:center;gap:12px;
       max-width:270px}
.badge .ic{width:38px;height:38px;border-radius:var(--r);background:var(--bg2);
           color:var(--sig);display:grid;place-items:center;flex:none}
.badge .ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;
               stroke-linecap:round;stroke-linejoin:round}
.badge b{display:block;font-size:13.5px;font-weight:700}
.badge span{display:block;font-size:11.5px;color:var(--mut);margin-top:2px}
@media(max-width:920px){.hero .wrap{grid-template-columns:1fr;gap:34px}
  .badge{left:12px}}

/* ---------- sekcije ---------- */
section{padding:92px 0}
.head{max-width:640px;margin-bottom:46px}
.head .k{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.22em;
         text-transform:uppercase;color:var(--sig);border:1px solid var(--steel);
         border-radius:var(--r);padding:5px 12px;background:var(--bg2)}
.head h2{font-size:clamp(27px,3.7vw,44px);font-weight:800;line-height:1.1;margin-top:16px}
.head p{color:var(--mut);font-size:16px;line-height:1.7;margin-top:12px}

/* ---------- usluge kao servisni nalozi ---------- */
.svcs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--steel);
      border:1px solid var(--steel)}
.svc{background:var(--card);padding:28px;position:relative;transition:.22s;
     counter-increment:svc}
.svc::before{content:"SVC-" counter(svc,decimal-leading-zero);
             position:absolute;top:14px;right:16px;font-family:'Roboto Mono',monospace;
             font-size:10px;letter-spacing:.1em;color:#5b636f}
.svcs{counter-reset:svc}
.svc:hover{background:var(--bg2)}
.svc .ic{width:46px;height:46px;border-radius:var(--r);background:var(--bg2);
         border:1px solid var(--steel);color:var(--sig);display:grid;place-items:center;
         margin-bottom:18px}
.svc .ic svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;
             stroke-linecap:round;stroke-linejoin:round}
.svc .ic svg .a{stroke:var(--sig2)}
.svc:hover .ic{border-color:var(--sig)}
.svc h3{font-size:17.5px;font-weight:700}
.svc p{color:var(--mut);font-size:14px;line-height:1.65;margin-top:8px}
.svc .pr{display:inline-block;margin-top:16px;font-size:15px;font-weight:700;
         color:var(--sig2);letter-spacing:.02em}
@media(max-width:920px){.svcs{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.svcs{grid-template-columns:1fr}}

/* ---------- koraci ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{border:1px solid var(--steel);border-top:3px solid var(--sig);border-radius:var(--r);
      padding:26px;background:var(--card)}
.step .n{font-family:'Roboto Mono',monospace;font-size:12px;letter-spacing:.14em;
         color:var(--sig)}
.step h3{font-size:17px;font-weight:700;margin-top:12px}
.step p{color:var(--mut);font-size:14px;line-height:1.65;margin-top:8px}
@media(max-width:860px){.steps{grid-template-columns:1fr}}

/* ---------- band ---------- */
.band{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--steel);
      border:1px solid var(--steel);text-align:center}
.band>div{background:var(--card);padding:34px 18px}
.band .b{font-size:clamp(28px,3.6vw,44px);font-weight:700;letter-spacing:-.02em}
.band p{color:var(--mut);margin-top:8px;font-size:10.5px;letter-spacing:.2em;
        text-transform:uppercase}
@media(max-width:860px){.band{grid-template-columns:1fr 1fr}}

/* ---------- recenzije ---------- */
.tests{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.test{background:var(--card);border:1px solid var(--steel);border-radius:var(--r);
      padding:26px}
.test .stars{display:flex;gap:3px;color:var(--sig2);margin-bottom:14px}
.test .stars svg{width:15px;height:15px;fill:currentColor;stroke:none}
.test p{font-size:14.5px;line-height:1.7;color:#cfd4dc}
.who{display:flex;align-items:center;gap:11px;margin-top:18px;padding-top:16px;
     border-top:1px solid var(--line)}
.av{width:38px;height:38px;border-radius:50%;background:var(--bg2);border:1px solid var(--steel);
    display:grid;place-items:center;font-weight:700;font-size:13px;color:var(--sig);flex:none}
.who b{display:block;font-size:13.5px}
.who span{display:block;font-size:11.5px;color:var(--mut);margin-top:2px}
@media(max-width:920px){.tests{grid-template-columns:1fr}}

/* ---------- CTA ---------- */
.cta{background:var(--grad);border-radius:var(--r);padding:52px 34px;text-align:center;
     color:#160c05;margin-bottom:92px}
.cta h2{font-size:clamp(25px,3.4vw,40px);font-weight:800;line-height:1.1}
.cta p{font-size:16px;margin:12px 0 26px;opacity:.82}

/* ---------- footer ---------- */
footer{border-top:1px solid var(--steel);padding:34px 0;background:var(--bg2)}
footer .in{display:flex;align-items:center;justify-content:space-between;gap:20px;
           flex-wrap:wrap;color:var(--mut);font-size:13px}
footer .fl{display:flex;gap:22px}
footer .fl a:hover{color:var(--sig)}

/* ---------- dvojezicnost, HR i EN ----------
   Oba jezika stoje u HTML-u, prebacuje se preko data-lang na <html>.
   Radi i bez JavaScripta. display:contents znaci da omotac ne dira raspored. */
i.en,i.hr{display:contents;font-style:inherit}
html[data-lang="en"] i.hr,
html[data-lang="hr"] i.en{display:none}

.lang{display:flex;border:1px solid currentColor;opacity:.85;margin:0 12px}
.lang button{background:none;border:0;color:inherit;cursor:pointer;
  font:500 12px/1 inherit;letter-spacing:.1em;padding:8px 11px;font-family:inherit}
.lang button[aria-pressed="true"]{background:currentColor}
.lang button[aria-pressed="true"]{color:inherit;filter:invert(1)}

/* Nav mora podnijeti duze hrvatske rijeci i prekidac jezika.
   Bez ovoga se brend i prva stavka dodiruju. */
nav > div, header > div, #nav > div{gap:26px;flex-wrap:wrap}
.lang{flex:none}
