*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;

background:
radial-gradient(circle at top,#10241b 0%,#08111d 40%,#050816 100%);

color:#ffffff;

overflow-x:hidden;

text-rendering:optimizeSpeed;
-webkit-font-smoothing:antialiased;
}

/* MAIN */

.main{
min-height:100vh;

display:flex;

align-items:flex-start;
justify-content:center;

padding:18px 18px 40px;
}

/* CARD */

.card{
width:100%;
max-width:420px;

background:
linear-gradient(
180deg,
rgba(17,24,39,.98),
rgba(7,12,22,.98)
);

border:1px solid rgba(255,255,255,.05);

border-radius:34px;

padding:18px 20px 28px;

box-shadow:
0 30px 90px rgba(0,0,0,.45);

backdrop-filter:blur(10px);

position:relative;

overflow:hidden;
}

.card::before{
content:'';

position:absolute;

width:280px;
height:280px;

background:rgba(22,195,91,.09);

border-radius:50%;

filter:blur(90px);

top:-130px;
right:-120px;
}

/* HERO IMAGE */

.hero-image{
position:relative;
z-index:2;

width:100%;

aspect-ratio:1/1;

border-radius:28px;

overflow:hidden;

margin:0 0 20px;

background:#000;

border:1px solid rgba(255,255,255,.06);
}

.hero-image img{
width:100%;
height:100%;

display:block;

object-fit:cover;
}

/* TITLE */

.title{
position:relative;
z-index:2;

font-size:42px;

line-height:1.05;

font-weight:900;

text-align:center;

letter-spacing:-1px;

margin-bottom:12px;
}

.title span{
color:#16c35b;
}

/* DESC */

.desc{
position:relative;
z-index:2;

text-align:center;

font-size:15px;

line-height:1.8;

color:#aeb6c4;

max-width:330px;

margin:0 auto 20px;
}

/* BUTTON */

.btn{
position:relative;
z-index:2;

display:flex;

align-items:center;
justify-content:center;

width:100%;
height:60px;

border-radius:18px;

background:
linear-gradient(
135deg,
#16c35b,
#0fa64d
);

color:#ffffff;

font-size:17px;

font-weight:800;

text-decoration:none;

transition:.3s ease;

box-shadow:
0 18px 50px rgba(22,195,91,.28);

margin-bottom:16px;
}

.btn:hover{
transform:translateY(-3px);

box-shadow:
0 24px 60px rgba(22,195,91,.36);
}

/* MINI */

.mini{
position:relative;
z-index:2;

margin-top:10px;

text-align:center;

font-size:13px;

color:#7f8796;
}

/* SECTIONS */

.section{
padding:28px 18px;
}

.container{
width:100%;
max-width:860px;

margin:auto;
}

/* HEADINGS */

.section h2{
font-size:30px;

font-weight:900;

margin-bottom:18px;

text-align:center;

letter-spacing:-.5px;
}

/* TEXT */

.section p{
font-size:15px;

line-height:1.9;

color:#b8c0cc;

margin-bottom:14px;

text-align:center;
}

/* GRID */

.grid{
display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:18px;

margin-top:22px;
}

/* SERVICE CARD */

.service-card{
padding:22px;

border-radius:24px;

background:
linear-gradient(
180deg,
rgba(255,255,255,.04),
rgba(255,255,255,.02)
);

border:1px solid rgba(255,255,255,.05);

transition:.3s ease;
}

.service-card:hover{
transform:translateY(-4px);

border-color:rgba(22,195,91,.25);
}

.service-card h3{
font-size:18px;

margin-bottom:10px;

font-weight:800;
}

.service-card p{
text-align:left;

font-size:14px;

margin:0;

line-height:1.8;
}

/* LIST */

.list{
margin-top:20px;

display:grid;

gap:14px;

list-style:none;
}

.list li{
padding:16px 18px;

border-radius:18px;

background:rgba(255,255,255,.03);

border:1px solid rgba(255,255,255,.05);

font-size:15px;

font-weight:600;

color:#d9dee7;
}

/* TESTIMONIAL */

.testimonial{
padding:22px;

margin-top:18px;

border-radius:24px;

background:
rgba(255,255,255,.03);

border:1px solid rgba(255,255,255,.05);
}

.testimonial p{
margin:0;

font-style:italic;
}

/* CTA */

.cta-box{
padding:32px;

border-radius:30px;

background:
linear-gradient(
135deg,
rgba(22,195,91,.12),
rgba(15,166,77,.06)
);

border:1px solid rgba(22,195,91,.18);

text-align:center;
}

/* FOOTER */

.footer{
padding:34px 18px 40px;

border-top:1px solid rgba(255,255,255,.06);

text-align:center;
}

.footer-links{
display:flex;

justify-content:center;

flex-wrap:wrap;

gap:16px;

margin-bottom:14px;
}

.footer-links a{
text-decoration:none;

color:#9ca3af;

font-size:13px;

transition:.25s ease;
}

.footer-links a:hover{
color:#ffffff;
}

.copy{
font-size:13px;

color:#6b7280;
}

/* LINKS */

.link{
color:#ffffff;

text-decoration:none;

font-weight:600;

transition:.25s ease;
}

.link:hover{
opacity:.8;
}

.link:visited{
color:#ffffff;
}

/* MOBILE */

@media(max-width:768px){

.main{
padding:14px 14px 34px;
}

.card{
border-radius:28px;

padding:14px 14px 22px;
}

.hero-image{
margin-bottom:18px;
}

.title{
font-size:34px;
}

.desc{
font-size:14px;

margin-bottom:18px;
}

.btn{
height:56px;

font-size:16px;

margin-bottom:14px;
}

.section{
padding:24px 14px;
}

.section h2{
font-size:25px;
}

.grid{
grid-template-columns:1fr;
}

.service-card{
padding:18px;
}

.cta-box{
padding:24px 18px;
}

}




/* SECTION SPACING FIX */

.section{
padding:34px 22px;
}

.container{
width:100%;
max-width:860px;
margin:auto;
padding:0 6px;
}

/* ALL BLOCKS */

.service-card,
.testimonial,
.cta-box,
.feature,
.about-box,
.info-box{
padding:24px;
}

/* ABOUT TEXT */

.section p{
padding:0 8px;

font-size:15px;
line-height:1.9;

color:#b8c0cc;
}

/* MOBILE FIX */

@media(max-width:768px){

.section{
padding:28px 18px;
}

.container{
padding:0;
}

.service-card,
.testimonial,
.cta-box,
.feature,
.about-box,
.info-box{
padding:18px;
}

.section p{
padding:0 4px;

font-size:14px;
line-height:1.8;
}

}