*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

html{
scroll-behavior:smooth;
}

body{
background:#f7f8fa;
color:#222;
}

/* HEADER */

header{
position:fixed;
top:0;
width:100%;
height:80px;
background:#049CF7;
display:flex;
align-items:center;
justify-content:space-between;
padding:0 20px;
z-index:999;
}

.logo-brand{
display:flex;
align-items:center;
gap:12px;
}

.logo-brand img{
width:50px;
height:50px;
border-radius:50%;
object-fit:cover;
}

.logo-brand h2{
color:white;
font-size:24px;
font-weight:700;
}

.menu{
font-size:34px;
color:white;
cursor:pointer;
}

/* SIDEBAR */

.sidebar{
position:fixed;
top:0;
right:-100%;
width:280px;
height:100%;
background:#049CF7;
padding:30px;
transition:.3s;
z-index:1000;
}

.sidebar.active{
right:0;
}

.close{
text-align:right;
font-size:40px;
color:white;
cursor:pointer;
}

.sidebar a{
display:block;
text-decoration:none;
color:white;
font-size:18px;
margin:25px 0;
}

/* HERO */

.hero{
padding:130px 25px 90px;
background:linear-gradient(
180deg,
#049CF7,
#095CA2
);
color:white;
}

.hero-content{
animation:float 4s ease-in-out infinite;
}

@keyframes float{
0%,100%{
transform:translateY(0);
}
50%{
transform:translateY(-8px);
}
}

.hero h1{
font-size:52px;
line-height:1.1;
margin-bottom:20px;
}

.hero p{
font-size:18px;
line-height:1.8;
max-width:500px;
}

.btn{
display:inline-block;
margin-top:30px;
padding:14px 28px;
background:white;
color:#049CF7;
text-decoration:none;
border-radius:40px;
font-weight:600;
}

/* SECTION */

section{
padding:60px 20px;
}

.title{
font-size:42px;
font-weight:700;
text-align:center;
margin-bottom:40px;
}

/* WEBSITE BRAND */

.brand-grid{
display:grid;
gap:20px;
}

.card{
background:white;
border-radius:20px;
padding:25px;
box-shadow:0 5px 15px rgba(0,0,0,.08);
}

.card img{
width:100%;
height:180px;
object-fit:cover;
border-radius:15px;
margin-bottom:15px;
}

.card h3{
margin-bottom:10px;
}

.card p{
color:#666;
margin-bottom:15px;
}

.card a{
color:#049CF7;
font-weight:600;
text-decoration:none;
}

/* FOOTER */

footer{
background:white;
padding:50px 20px;
}

.footer-brand{
display:flex;
align-items:center;
gap:15px;
margin-bottom:25px;
}

.footer-brand img{
width:55px;
height:55px;
border-radius:50%;
object-fit:cover;
}

.footer-brand h2{
color:#049CF7;
}

.footer-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
}

.footer-grid h3{
margin-bottom:15px;
color:#095CA2;
}

.footer-grid a{
display:block;
margin-bottom:10px;
text-decoration:none;
color:#666;
}

.social{
display:flex;
flex-direction:column;
gap:12px;
}

.social a{
text-decoration:none;
color:#666;
font-size:16px;
}

.social i{
width:25px;
}

.copy{
margin-top:30px;
padding-top:20px;
border-top:1px solid #ddd;
color:#777;
font-size:14px;
}