/* RESET */
*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
margin:0;
font-family:Arial, sans-serif;
color:white;
text-align:center;
overflow-x:hidden;

/* GLOBALNI BACKGROUND */
background:
linear-gradient(rgba(0,0,0,0.20), rgba(0,0,0,0.10)),
url('images/bg.jpg');

background-size:cover;
background-position:center;
background-attachment:fixed;
} 

body::after{
content:"";
position:fixed;
top:0;
left:0;
width:100%;
height:100%;

background-image: radial-gradient(rgba(255,255,255,0.03) 1px, transparent 1px);
background-size:25px 25px;

pointer-events:none;
} 

/* HERO */

.hero{
height:65vh;
display:flex;
justify-content:center;
align-items:center;
position:relative;
overflow:hidden;
}




/* CONTENT */

.hero-content{
position:relative;
z-index:2;
max-width:600px;
}

/* LOGO */

.logo{
width:350px;
max-width:90%;
animation: glow 4s infinite alternate;
}
/* atm logo */

.powered{
margin-top:20px;
font-size:14px;
color:#aaa;
}

.atm-badge{
filter:drop-shadow(0 0 20px red);
} 

.powered img{
height:25px;
vertical-align:middle;
margin-left:5px;
opacity:0.8;
} 
/* GLOW ANIMATION */
@keyframes glow{
from{filter:drop-shadow(0 0 10px #00c8ff);}
to{filter:drop-shadow(0 0 20px #00c8ff);}
}

.fallback{
margin-top:5px;
font-size:28px;
letter-spacing:2px;
}

.subtitle{
margin-top:5px;
color:#ccc;
font-size:16px;
}

/* BUTTONS */

.cta{
margin-top:10px;
}

.btn{
padding:12px 20px;
margin:5px;
text-decoration:none;
display:inline-block;
border-radius:5px;
transition:0.3s;
font-weight:bold;
}

.primary{
background:#00c8ff;
color:black;
box-shadow:0 0 15px rgba(0,200,255,0.5);
}

.primary:hover{
background:white;
transform:scale(1.05);
}

.secondary{
border:1px solid #00c8ff;
color:#00c8ff;
}

.secondary:hover{
background:#00c8ff;
color:black;
}

/* SERVICES */

.services{
padding:30px 10px;
}

.services h2{
font-size:28px;
margin-bottom:10px;
}

/* GRID */

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:20px;
margin-top:20px;
padding:0 20px;
}

/* CARDS */

.card{
background:#111;
padding:30px;
border-radius:10px;
border:1px solid #222;
transition:0.4s;
cursor:pointer;
position:relative;
overflow:hidden;
}

/* HOVER EFEKAT */

.card:hover{
transform:translateY(-10px) scale(1.05);
border-color:#00c8ff;
box-shadow:0 0 25px rgba(0,200,255,0.4);
}

/* LIGHT SWEEP */

.card::after{
content:"";
position:absolute;
top:0;
left:-100%;
width:100%;
height:100%;
background:linear-gradient(120deg, transparent, rgba(255,255,255,0.15), transparent);
transition:0.5s;
}

.card:hover::after{
left:100%;
}

/* FADE ANIMATION */

.fade{
opacity:0;
transform:translateY(40px);
transition:1s ease;
}

.fade.show{
opacity:1;
transform:translateY(0);
}

/* STICKY CALL */

.call-btn{
position:fixed;
bottom:20px;
right:20px;
background:#00c8ff;
color:black;
padding:15px;
border-radius:50%;
font-size:20px;
text-decoration:none;
box-shadow:0 0 20px #00c8ff;
transition:0.3s;
z-index:999;
}

.call-btn:hover{
transform:scale(1.1);
}

/* FOOTER */

footer{
padding:30px;
background:#000;
color:#777;
font-size:14px;
} 

/* LOADER */

#loader{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:#000;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
z-index:9999;
transition:opacity 0.8s ease;
}

/* LOGO */

.loader-logo{
width:300px;
max-width:80%;
animation: loaderGlow 2s infinite alternate;
}

/* TEXT */

.loader-text{
margin-top:15px;
letter-spacing:3px;
font-size:20px;
color:#aaa;
}

/* GLOW */

@keyframes loaderGlow{
from{filter:drop-shadow(0 0 10px #00c8ff);}
to{filter:drop-shadow(0 0 40px #00c8ff);}
}

/* HIDE */

#loader.hidden{
opacity:0;
pointer-events:none;
} 

/* CARD subtitle */

.card-subtitle{
	font-size: 0.7rem;
	color: #adb5bd;
	margin-bottom: 15px;
	}
	