*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Poppins',sans-serif;
background:#050816;
color:#fff;
overflow-x:hidden;
width:100%;
position:relative;
}

/* Background Glow */

body::before{
content:'';
position:fixed;
width:700px;
height:700px;
background:radial-gradient(circle,#2563eb33 0%,transparent 70%);
top:-200px;
right:-150px;
z-index:-1;
pointer-events:none;
}

body::after{
content:'';
position:fixed;
width:600px;
height:600px;
background:radial-gradient(circle,#06b6d433 0%,transparent 70%);
bottom:-200px;
left:-150px;
z-index:-1;
pointer-events:none;
}

/* Global */

*,
*::before,
*::after{
max-width:100%;
}

img{
max-width:100%;
display:block;
height:auto;
}

section{
padding:80px 0;
position:relative;
z-index:2;
}

.container{
width:92%;
max-width:1400px;
margin:auto;
position:relative;
z-index:2;
}

/* Header */

header{
position:fixed;
top:0;
left:0;
width:100%;
z-index:999;
background:rgba(5,8,22,0.78);
backdrop-filter:blur(14px);
border-bottom:1px solid rgba(255,255,255,0.05);
}

nav{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px 0;
gap:20px;
}

.logo{
font-size:28px;
font-weight:800;
background:linear-gradient(to right,#38bdf8,#2563eb);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
white-space:nowrap;
}

.nav-links{
display:flex;
gap:35px;
flex-wrap:wrap;
}

.nav-links a{
color:#cbd5e1;
text-decoration:none;
font-size:15px;
transition:0.3s ease;
}

.nav-links a:hover{
color:#38bdf8;
}

/* Hero Section */

.hero{
min-height:100vh;
display:flex;
align-items:center;
padding-top:140px;
padding-bottom:60px;
}

.hero-grid{
display:grid;
grid-template-columns:1.05fr 0.95fr;
gap:70px;
align-items:center;
}

.hero h1{
font-size:72px;
line-height:1.05;
font-weight:800;
margin-bottom:25px;
word-break:break-word;
}

.gradient-text{
background:linear-gradient(to right,#38bdf8,#2563eb);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.hero p{
font-size:18px;
line-height:1.9;
color:#94a3b8;
max-width:680px;
margin-bottom:35px;
}

/* Buttons */

.btn-wrap{
display:flex;
gap:18px;
flex-wrap:wrap;
}

.btn{
padding:15px 32px;
border-radius:14px;
font-weight:600;
text-decoration:none;
transition:0.35s ease;
display:inline-flex;
align-items:center;
justify-content:center;
gap:10px;
}

.btn-primary{
background:linear-gradient(to right,#2563eb,#38bdf8);
color:#fff;
box-shadow:0 10px 30px rgba(37,99,235,0.35);
}

.btn-primary:hover{
transform:translateY(-4px);
}

.btn-outline{
border:1px solid rgba(255,255,255,0.15);
color:#fff;
}

.btn-outline:hover{
background:#fff;
color:#000;
}

/* Hero Image */

.hero-card{
background:linear-gradient(145deg,#111827,#0f172a);
padding:22px;
border-radius:32px;
border:1px solid rgba(255,255,255,0.07);
overflow:hidden;
position:relative;
box-shadow:0 20px 60px rgba(0,0,0,0.45);
animation:float 5s ease-in-out infinite;
}

.hero-card::before{
content:'';
position:absolute;
inset:0;
background:linear-gradient(120deg,transparent,rgba(255,255,255,0.05),transparent);
transform:translateX(-100%);
animation:shine 5s linear infinite;
}

.hero-card img{
width:100%;
max-width:500px;
margin:auto;
border-radius:24px;
object-fit:cover;
}

/* Animation */

@keyframes float{
0%,100%{
transform:translateY(0);
}
50%{
transform:translateY(-10px);
}
}

@keyframes shine{
100%{
transform:translateX(200%);
}
}

/* Section Titles */

.section-title{
text-align:center;
margin-bottom:50px;
}

.section-title span{
color:#38bdf8;
font-size:14px;
letter-spacing:2px;
text-transform:uppercase;
}

.section-title h2{
font-size:56px;
margin-top:10px;
line-height:1.2;
word-break:break-word;
}

.section-title p{
font-size:17px;
color:#94a3b8;
margin-top:15px;
line-height:1.8;
}

/* Platforms */

.platforms{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
}

.platform-card{
background:rgba(17,24,39,0.85);
padding:35px;
border-radius:28px;
border:1px solid rgba(255,255,255,0.08);
transition:0.4s;
overflow:hidden;
position:relative;
backdrop-filter:blur(12px);
min-width:0;
}

.platform-card:hover{
transform:translateY(-10px);
border-color:#38bdf8;
}

.platform-card h3{
font-size:28px;
margin-bottom:15px;
line-height:1.3;
}

.platform-card p{
color:#94a3b8;
line-height:1.8;
}

/* Gradient Numbers */

.platform-count,
.highlight-number{
font-size:56px;
font-weight:800;
margin-bottom:10px;
background:linear-gradient(to right,#38bdf8,#2563eb);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.platform-card:nth-child(2) .platform-count,
.case-study-card:nth-child(2) .highlight-number{
background:linear-gradient(to right,#8b5cf6,#ec4899);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.platform-card:nth-child(3) .platform-count,
.case-study-card:nth-child(3) .highlight-number{
background:linear-gradient(to right,#06b6d4,#14b8a6);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.platform-card:nth-child(4) .platform-count{
background:linear-gradient(to right,#f59e0b,#ef4444);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

/* Projects */

.project-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:35px;
}

.project-card{
background:rgba(17,24,39,0.85);
border-radius:30px;
overflow:hidden;
border:1px solid rgba(255,255,255,0.07);
transition:0.4s;
min-width:0;
}

.project-card:hover{
transform:translateY(-10px);
box-shadow:0 20px 60px rgba(0,0,0,0.45);
}

.project-image{
height:240px;
overflow:hidden;
}

.project-image img{
width:100%;
height:100%;
object-fit:cover;
transition:0.5s;
}

.project-card:hover img{
transform:scale(1.08);
}

.project-content{
padding:30px;
}

.project-content h3{
font-size:28px;
margin-bottom:12px;
line-height:1.4;
word-break:break-word;
}

.project-content p{
color:#94a3b8;
line-height:1.8;
margin-bottom:22px;
}

.tags{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-bottom:25px;
}

.tag{
padding:9px 14px;
border-radius:999px;
background:#38bdf81a;
color:#38bdf8;
font-size:13px;
}

.live-btn{
display:inline-block;
padding:13px 24px;
border-radius:12px;
background:linear-gradient(to right,#2563eb,#38bdf8);
color:#fff;
text-decoration:none;
font-weight:600;
transition:0.3s;
}

.live-btn:hover{
transform:translateY(-3px);
}

/* Case Studies */

.case-study-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:35px;
align-items:stretch;
}

.case-study-card{
background:linear-gradient(145deg,#0f172a,#111827);
padding:40px;
border-radius:32px;
border:1px solid rgba(255,255,255,0.08);
transition:0.4s;
min-width:0;
}

.case-study-card:hover{
transform:translateY(-10px);
box-shadow:0 25px 60px rgba(0,0,0,0.4);
}

.case-study-label{
font-size:13px;
letter-spacing:2px;
text-transform:uppercase;
color:#38bdf8;
margin-bottom:15px;
font-weight:600;
line-height:1.5;
}

.case-study-card h3{
font-size:30px;
line-height:1.4;
margin-bottom:18px;
word-break:break-word;
}

.case-study-card p{
color:#cbd5e1;
line-height:1.9;
margin-bottom:22px;
}

.case-study-points{
display:flex;
flex-direction:column;
gap:12px;
margin-bottom:25px;
}

.case-study-points div{
padding:14px 18px;
background:rgba(255,255,255,0.04);
border-radius:14px;
color:#cbd5e1;
font-size:14px;
line-height:1.6;
}

/* About */

.about-box{
background:linear-gradient(145deg,#0f172a,#111827);
padding:55px;
border-radius:35px;
border:1px solid rgba(255,255,255,0.07);
text-align:center;
}

.about-box h2{
font-size:52px;
margin-bottom:20px;
line-height:1.2;
}

.about-box p{
max-width:950px;
margin:auto;
font-size:17px;
line-height:2;
color:#94a3b8;
}

/* Contact */

.contact-box{
text-align:center;
padding:60px 40px;
background:linear-gradient(145deg,#111827,#0f172a);
border-radius:35px;
border:1px solid rgba(255,255,255,0.08);
}

.contact-box h2{
font-size:58px;
margin-bottom:20px;
line-height:1.2;
}

.contact-box p{
font-size:18px;
color:#94a3b8;
margin-bottom:35px;
line-height:1.8;
}

/* Footer */

footer{
padding:35px 0;
text-align:center;
color:#94a3b8;
border-top:1px solid rgba(255,255,255,0.06);
line-height:1.8;
}

/* WhatsApp */

.whatsapp{
position:fixed;
right:25px;
bottom:25px;
width:68px;
height:68px;
border-radius:50%;
background:linear-gradient(to right,#25D366,#1ebc59);
display:flex;
justify-content:center;
align-items:center;
font-size:30px;
text-decoration:none;
box-shadow:0 15px 40px rgba(0,0,0,0.4);
z-index:999;
animation:pulse 2s infinite;
}

@keyframes pulse{
0%{
box-shadow:0 0 0 0 rgba(37,211,102,0.7);
}
70%{
box-shadow:0 0 0 20px rgba(37,211,102,0);
}
100%{
box-shadow:0 0 0 0 rgba(37,211,102,0);
}
}

/* Responsive */

@media(max-width:992px){

.hero-grid{
grid-template-columns:1fr;
text-align:center;
}

.hero h1{
font-size:54px;
}

.hero p{
margin:auto auto 35px;
}

.btn-wrap{
justify-content:center;
}

.hero-card{
max-width:650px;
margin:auto;
}

.section-title h2,
.about-box h2,
.contact-box h2{
font-size:46px;
}
}

@media(max-width:768px){

.nav-links{
display:none;
}

section{
padding:60px 0;
}

.container{
width:94%;
}

.hero{
padding-top:130px;
}

.hero h1{
font-size:42px;
line-height:1.2;
}

.hero p,
.about-box p,
.contact-box p{
font-size:16px;
}

.section-title h2,
.about-box h2,
.contact-box h2{
font-size:34px;
}

.project-grid,
.platforms,
.case-study-grid{
grid-template-columns:1fr;
}

.btn{
width:100%;
}

.about-box,
.contact-box,
.case-study-card,
.platform-card,
.project-content{
padding:30px 24px;
}

.platform-count,
.highlight-number{
font-size:42px;
}

.case-study-card h3,
.project-content h3{
font-size:24px;
line-height:1.4;
}
}

@media(max-width:480px){

.hero h1{
font-size:34px;
}

.logo{
font-size:22px;
}

.section-title h2{
font-size:28px;
}

.hero-card{
padding:15px;
border-radius:24px;
}

.contact-box,
.about-box{
padding:30px 20px;
}
}