:root{

--primary:#0057B8;
--secondary:#00AEEF;
--accent:#FFC107;

--success:#16A34A;
--danger:#DC2626;

--white:#ffffff;
--light:#F8FAFC;

--dark:#0F172A;
--text:#1E293B;
--text-light:#64748B;

--radius:18px;

--shadow:
0 10px 30px rgba(0,0,0,.08);

--transition:.35s ease;

}
*{

margin:0;
padding:0;
box-sizing:border-box;

}

body{

font-family:'Poppins',sans-serif;

background:var(--white);

color:var(--text);

overflow-x:hidden;

}
.btn-primary{

background:var(--primary);

border:none;

border-radius:50px;

padding:14px 34px;

font-weight:600;

transition:.35s;

}

.btn-primary:hover{

transform:translateY(-3px);

box-shadow:0 15px 40px rgba(0,87,184,.25);

}
.card{

border:none;

border-radius:20px;

box-shadow:var(--shadow);

transition:.35s;

overflow:hidden;

}

.card:hover{

transform:translateY(-8px);

}
/* ===================================
   HERO PREMIUM
=================================== */

.hero{

position:relative;

background:#0F172A;

color:#fff;

overflow:hidden;

}

.hero-background{

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

background:url('../images/hero-bg.webp') center center/cover;

transform:scale(1.05);

z-index:1;

}

.hero-overlay{

position:absolute;

inset:0;

background:linear-gradient(
90deg,
rgba(15,23,42,.92),
rgba(15,23,42,.55)
);

z-index:2;

}

.hero .container{

position:relative;

z-index:3;

}

.hero h1{

font-size:4rem;

font-weight:800;

line-height:1.1;

margin-bottom:30px;

}

.hero p{

font-size:1.25rem;

line-height:1.8;

opacity:.92;

margin-bottom:40px;

}

.hero-badge{

display:inline-block;

background:rgba(255,255,255,.12);

padding:12px 22px;

border-radius:50px;

margin-bottom:25px;

backdrop-filter:blur(10px);

font-weight:600;

}

.hero-buttons{

display:flex;

gap:20px;

flex-wrap:wrap;

}

.hero-image{

animation:float 6s ease-in-out infinite;

filter:drop-shadow(0 30px 50px rgba(0,0,0,.4));

}

@keyframes float{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-15px);

}

}

.scroll-indicator{

position:absolute;

left:50%;

bottom:35px;

transform:translateX(-50%);

z-index:5;

}

.scroll-indicator span{

display:block;

width:32px;

height:55px;

border:2px solid #fff;

border-radius:25px;

position:relative;

}

.scroll-indicator span::before{

content:"";

position:absolute;

left:50%;

top:10px;

width:6px;

height:6px;

background:#fff;

border-radius:50%;

transform:translateX(-50%);

animation:scroll 2s infinite;

}

@keyframes scroll{

0%{

opacity:0;

transform:translate(-50%,0);

}

50%{

opacity:1;

}

100%{

opacity:0;

transform:translate(-50%,18px);

}

}
/* =====================================
   FEATURES PREMIUM
=====================================*/

.section-subtitle{

display:inline-block;

padding:8px 18px;

background:#EAF4FF;

color:var(--primary);

border-radius:50px;

font-weight:600;

margin-bottom:15px;

}

.section-title{

font-size:2.6rem;

font-weight:700;

margin-bottom:20px;

color:var(--dark);

}

.section-description{

max-width:750px;

margin:auto;

color:var(--text-light);

font-size:1.1rem;

line-height:1.8;

margin-bottom:50px;

}

.feature-card{

background:#fff;

padding:45px 30px;

border-radius:25px;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.08);

transition:.4s;

height:100%;

}

.feature-card:hover{

transform:translateY(-12px);

box-shadow:0 30px 60px rgba(0,0,0,.12);

}

.feature-icon{

width:90px;

height:90px;

margin:auto;

border-radius:50%;

background:linear-gradient(135deg,var(--primary),var(--secondary));

display:flex;

justify-content:center;

align-items:center;

font-size:34px;

color:#fff;

margin-bottom:30px;

}

.feature-card h4{

font-weight:700;

margin-bottom:15px;

}

.feature-card p{

color:var(--text-light);

line-height:1.7;

}