*{
	margin:0;
	padding:0;
	box-sizing:border-box;
}

body{
	font-family:Arial, Helvetica, sans-serif;
	background:#f5f5f5;
	overflow-x:hidden;
}

html{
	scroll-behavior:smooth;
}

/* =========================
	NAVBAR
========================== */

.navbar{
	background:rgba(0,0,0,0.55);
	backdrop-filter:blur(5px);
	padding:15px 0;
}

.navbar-brand{
	color:#fff !important;
	font-weight:700;
	font-size:20px;
}

.nav-link{
	color:#fff !important;
	margin:0 12px;
	transition:0.3s;
	font-weight:500;
}

.nav-link:hover{
	color:#1e88e5 !important;
}

.call-btn{
	background:#1e88e5;
	color:#fff !important;
	padding:12px 22px;
	border-radius:50px;
	text-decoration:none;
	font-weight:600;
	transition:0.3s;
	margin-left:15px;
}

.call-btn:hover{
	background:#1565c0;
}

.logo-img { height: 60px; }

/* =========================
	HERO
========================== */

.hero{
	min-height:100vh;

	background:
	linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.55)),
	url('../images/tools-background.png');

	background-size:cover;
	background-position:center;

	display:flex;
	align-items:center;

	color:#fff;
	position:relative;
}

.hero h1{
	font-size:70px;
	font-weight:700;
	margin-bottom:25px;
}

.hero p{
	font-size:22px;
	max-width:700px;
	line-height:1.7;
	margin-bottom:35px;
}

.main-btn{
	background:#1e88e5;
	color:#fff;
	padding:15px 35px;
	border-radius:50px;
	text-decoration:none;
	font-weight:600;
	transition:0.3s;
	display:inline-block;
}

.main-btn:hover{
	background:#1565c0;
	color:#fff;
	transform:translateY(-3px);
}

/* =========================
	ABOUT
========================== */

.about{
	padding:100px 0;
	background:#fff;
	position:relative;
}

.about::before{
	content:"";
	position:absolute;
	inset:0;

	background:
	linear-gradient(rgba(255,255,255,0.93),
	rgba(255,255,255,0.93)),
	url('https://images.unsplash.com/photo-1487958449943-2429e8be8625?q=80&w=1600&auto=format&fit=crop');

	background-size:cover;
	background-position:center;

	opacity:0.2;
}

.about .container{
	position:relative;
	z-index:2;
}

.about img{
	width:100%;
	border-radius:20px;
	box-shadow:0 10px 35px rgba(0,0,0,0.2);
}

.about-text h2{
	font-size:50px;
	font-weight:700;
	margin-bottom:25px;
}

.about-text p{
	font-size:18px;
	color:#555;
	line-height:1.8;
	margin-bottom:30px;
}

/* =========================
	SERVICES
========================== */

.services{
	padding:100px 0;
	background:#f4f4f4;
	position:relative;
}

.services::before{
	content:"";
	position:absolute;
	inset:0;

	background:
	url('../images/skyline.jpg');

	background-size:cover;
	background-position:center;

	opacity:0.25;
}

.services .container{
	position:relative;
	z-index:2;
}

.section-title{
	margin-bottom:50px;
}

.section-title h2{
	font-size:50px;
	font-weight:700;
}

.service-box{
	background:#fff;
	border-radius:16px;
	padding:25px;
	display:flex;
	align-items:flex-start;
	gap:18px;
	margin-bottom:25px;
	transition:0.3s;
	box-shadow:0 5px 20px rgba(0,0,0,0.08);
}

.service-box:hover{
	transform:translateY(-5px);
}

.service-box i{
	font-size:40px;
	color:#1e88e5;
}

.service-box h4{
	font-weight:700;
	margin-bottom:8px;
}

.service-box p{
	color:#666;
	margin:0;
	line-height:1.6;
}

/* =========================
	CONTACT CARD
========================== */

.contact-card{
	background:
	linear-gradient(rgba(0,0,0,0.7),
	rgba(0,0,0,0.7)),
	url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?q=80&w=1200&auto=format&fit=crop');

	background-size:cover;
	background-position:center;

	color:#fff;
	border-radius:20px;
	padding:40px;
	height:100%;
	box-shadow:0 10px 30px rgba(0,0,0,0.15);
}

.contact-card h3{
	font-size:35px;
	margin-bottom:25px;
	font-weight:700;
}

.contact-card p{
	margin-bottom:18px;
	font-size:18px;
}

/* =========================
	CONTACT FORM
========================== */

.contact{
	padding:100px 0;

	background:
	linear-gradient(rgba(0,0,0,0.65),
	rgba(0,0,0,0.65)),
	url('https://images.unsplash.com/photo-1503387762-592deb58ef4e?q=80&w=1600&auto=format&fit=crop');

	background-size:cover;
	background-position:center;

	color:#fff;
}

.contact h2{
	font-size:50px;
	margin-bottom:35px;
	font-weight:700;
}

.form-control{
	border:none;
	padding:15px;
	border-radius:12px;
	margin-bottom:20px;
}

textarea{
	resize:none;
}

.submit-btn{
	background:#1e88e5;
	border:none;
	color:#fff;
	padding:14px 35px;
	border-radius:50px;
	font-weight:600;
	transition:0.3s;
}

.submit-btn:hover{
	background:#1565c0;
}

/* =========================
	FOOTER
========================== */

footer{
	background:#111;
	color:#fff;
	text-align:center;
	padding:20px;
}

/* =========================
COOKIE BANNER MINIMAL
========================= */

/* =========================
PREMIUM COOKIE DESIGN
========================= */

.cookie-wrap{
position:fixed;
inset:0;
display:none;
justify-content:center;
align-items:flex-end;
padding:20px;
z-index:9999;
}

.cookie-box{
width:100%;
max-width:900px;

display:flex;
align-items:center;
justify-content:space-between;
gap:20px;

padding:20px 25px;
border-radius:18px;

background:rgba(0,0,0,0.75);
backdrop-filter:blur(12px);

color:#fff;

box-shadow:0 10px 40px rgba(0,0,0,0.4);

animation:slideUp 0.5s ease;
}

/* ICON */
.cookie-icon{
font-size:32px;
background:rgba(255,255,255,0.1);
padding:12px;
border-radius:12px;
}

/* TEXT */
.cookie-text h4{
margin:0;
font-size:18px;
font-weight:700;
}

.cookie-text p{
margin:5px 0 0;
font-size:14px;
opacity:0.85;
line-height:1.5;
}

/* BUTTON */
.cookie-btn{
background:#1e88e5;
color:#fff;
border:none;
padding:10px 22px;
border-radius:50px;
font-weight:600;
cursor:pointer;
transition:0.3s;
white-space:nowrap;
}

.cookie-btn:hover{
background:#1565c0;
transform:translateY(-2px);
}

/* ANIMATION */
@keyframes slideUp{
from{
transform:translateY(40px);
opacity:0;
}
to{
transform:translateY(0);
opacity:1;
}
}

/* MOBILE */
@media(max-width:768px){
.cookie-box{
flex-direction:column;
text-align:center;
}
}

.btn-accept{
background:#1e88e5;
border:none;
color:#fff;
padding:10px 18px;
border-radius:50px;
font-weight:600;
cursor:pointer;
}

.btn-accept:hover{
background:#1565c0;
}

/* =========================
	RESPONSIVE
========================== */

@media(max-width:992px){

	.hero{
	text-align:center;
	}

	.hero h1{
	font-size:50px;
	}

	.hero p{
	font-size:18px;
	}

	.about-text{
	margin-top:40px;
	}

	.about-text h2,
	.section-title h2,
	.contact h2{
	font-size:38px;
	}

	.call-btn{
	margin-top:15px;
	display:inline-block;
	}
}

@media(max-width:768px){

	.hero{
	min-height:85vh;
	}

	.hero h1{
	font-size:38px;
	}

	.hero p{
	font-size:16px;
	}

	.about-text h2,
	.section-title h2,
	.contact h2{
	font-size:30px;
	}

	.service-box{
	flex-direction:column;
	text-align:center;
	}

	.contact-card{
	margin-top:40px;
	}
}