/* ==================================
   NIKHIL MORANKAR PERSONAL BRAND
   PREMIUM DESIGN SYSTEM
=================================== */

:root{

--primary:#ff197d;
--secondary:#7a00ff;
--accent:#b026ff;

--dark:#0e0e15;
--dark2:#161b22;

--white:#ffffff;

--gray:#a4a7b0;

--glass:rgba(255,255,255,0.08);

--gradient:
linear-gradient(
135deg,
#ff197d,
#7a00ff
);

}

/* RESET */

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

html{
scroll-behavior:smooth;
}

body{

font-family:'Inter',sans-serif;

background:var(--dark);

color:white;

overflow-x:hidden;

line-height:1.7;

}

/* SCROLLBAR */

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-track{
background:#111;
}

::-webkit-scrollbar-thumb{
background:var(--gradient);
border-radius:20px;
}

/* CONTAINER */

.container{

width:90%;

max-width:1300px;

margin:auto;

}

/* PARTICLES BG */

#particles-js{

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

z-index:-1;

background:
radial-gradient(circle at top right,
rgba(122,0,255,.2),
transparent 30%),

radial-gradient(circle at bottom left,
rgba(255,25,125,.2),
transparent 30%),

#0e0e15;

}

/* HEADER */

header{

position:fixed;

top:0;

left:0;

width:100%;

z-index:999;

backdrop-filter:blur(15px);

background:
rgba(14,14,21,.7);

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

}

nav{

height:90px;

display:flex;

align-items:center;

justify-content:space-between;

}

.logo img{

height:55px;

}

.nav-links{

display:flex;

gap:40px;

list-style:none;

}

.nav-links a{

color:white;

text-decoration:none;

font-weight:500;

transition:.4s;

}

.nav-links a:hover{

color:var(--primary);

}

/* BUTTONS */

.btn-primary{

background:var(--gradient);

padding:14px 30px;

border-radius:50px;

text-decoration:none;

color:white;

font-weight:600;

display:inline-block;

transition:.4s;

box-shadow:
0 10px 25px
rgba(255,25,125,.35);

}

.btn-primary:hover{

transform:translateY(-4px);

box-shadow:
0 15px 35px
rgba(122,0,255,.45);

}

.btn-secondary{

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

padding:14px 30px;

border-radius:50px;

text-decoration:none;

color:white;

display:inline-block;

transition:.4s;

}

.btn-secondary:hover{

background:white;

color:black;

}

/* HERO */

.hero{

min-height:100vh;

display:flex;

align-items:center;

padding-top:120px;

}

.hero-content{

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:60px;

}

.hero-tag{

display:inline-block;

padding:10px 18px;

border-radius:50px;

background:var(--glass);

backdrop-filter:blur(10px);

margin-bottom:30px;

font-size:14px;

letter-spacing:1px;

}

.hero h1{

font-family:'Space Grotesk',sans-serif;

font-size:72px;

line-height:1.1;

margin-bottom:25px;

}

.hero h1 span{

background:var(--gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.hero p{

font-size:20px;

color:var(--gray);

max-width:700px;

margin-bottom:35px;

}

.hero-buttons{

display:flex;

gap:20px;

margin-bottom:50px;

}

.hero-right{

text-align:center;

position:relative;

}

.hero-right img{

width:100%;

max-width:500px;

filter:
drop-shadow(0 0 40px rgba(255,25,125,.3));

animation:float 5s ease infinite;

}

@keyframes float{

0%{
transform:translateY(0px);
}

50%{
transform:translateY(-15px);
}

100%{
transform:translateY(0px);
}

}

/* STATS */

.hero-stats{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

}

.hero-stats div{

background:var(--glass);

padding:25px;

border-radius:20px;

backdrop-filter:blur(15px);

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

text-align:center;

}

.hero-stats h2{

font-size:36px;

font-weight:800;

background:var(--gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.hero-stats p{

font-size:14px;

margin-top:8px;

}

/* SECTION */

section{

padding:120px 0;

}

.section-title{

text-align:center;

margin-bottom:80px;

}

.section-title h2{

font-size:52px;

font-family:'Space Grotesk';

margin-bottom:15px;

}

.section-title p{

color:var(--gray);

}

/* ABOUT */

.about-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:center;

}

.about-grid img{

width:100%;

border-radius:30px;

}

.about-grid h3{

font-size:42px;

margin-bottom:25px;

}

.about-grid p{

color:var(--gray);

margin-bottom:20px;

}

/* ECOSYSTEM */

.ecosystem-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.eco-card{

background:var(--glass);

padding:50px;

border-radius:30px;

text-align:center;

backdrop-filter:blur(15px);

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

transition:.5s;

}

.eco-card:hover{

transform:translateY(-15px);

border-color:var(--primary);

box-shadow:
0 20px 40px
rgba(255,25,125,.15);

}

.eco-card h3{

font-size:30px;

margin-bottom:20px;

}

.eco-card p{

color:var(--gray);

}

/* ==================================
TIMELINE SECTION
================================== */

.timeline-wrapper{

max-width:1000px;

margin:auto;

position:relative;

}

.timeline-wrapper::before{

content:"";

position:absolute;

left:50%;

top:0;

width:4px;

height:100%;

background:var(--gradient);

transform:translateX(-50%);

}

.timeline-item{

width:45%;

padding:30px;

background:var(--glass);

backdrop-filter:blur(15px);

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

border-radius:25px;

margin-bottom:50px;

position:relative;

}

.timeline-item:nth-child(odd){

margin-right:auto;

}

.timeline-item:nth-child(even){

margin-left:auto;

}

.timeline-item span{

display:inline-block;

padding:8px 18px;

background:var(--gradient);

border-radius:50px;

font-weight:700;

margin-bottom:15px;

}

.timeline-item h3{

font-size:24px;

}

/* ==================================
SERVICES
================================== */

.services-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.service-card{

background:var(--glass);

padding:45px;

border-radius:25px;

text-align:center;

backdrop-filter:blur(15px);

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

transition:.4s;

cursor:pointer;

}

.service-card:hover{

transform:translateY(-10px);

border-color:var(--primary);

box-shadow:
0 15px 35px rgba(255,25,125,.15);

}

.service-card i{

font-size:50px;

margin-bottom:25px;

background:var(--gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.service-card h3{

font-size:24px;

}

/* ==================================
CASE STUDIES
================================== */

.case-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.case-card{

background:
linear-gradient(
145deg,
rgba(255,255,255,.05),
rgba(255,255,255,.02)
);

padding:40px;

border-radius:25px;

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

transition:.5s;

}

.case-card:hover{

transform:translateY(-12px);

box-shadow:
0 25px 50px rgba(122,0,255,.2);

}

.case-card h3{

font-size:28px;

margin-bottom:25px;

}

.case-card ul{

list-style:none;

}

.case-card li{

padding:10px 0;

color:var(--gray);

font-size:17px;

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

}

/* ==================================
TESTIMONIALS
================================== */

.testimonials{

overflow:hidden;

}

.testimonial-slider{

display:flex;

gap:30px;

}

.testimonial-card{

min-width:380px;

padding:40px;

background:var(--glass);

border-radius:25px;

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

}

.testimonial-card p{

color:var(--gray);

margin-bottom:20px;

}

.testimonial-card h4{

font-size:20px;

}

/* ==================================
BLOG
================================== */

.blog-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.blog-card{

overflow:hidden;

border-radius:25px;

background:var(--glass);

transition:.4s;

}

.blog-card:hover{

transform:translateY(-10px);

}

.blog-card img{

width:100%;

height:250px;

object-fit:cover;

}

.blog-content{

padding:30px;

}

.blog-content h3{

font-size:24px;

margin-bottom:15px;

}

.blog-content p{

color:var(--gray);

margin-bottom:20px;

}

/* ==================================
CONTACT
================================== */

.contact-box{

max-width:850px;

margin:auto;

padding:60px;

border-radius:35px;

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

backdrop-filter:blur(15px);

text-align:center;

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

}

.contact-box h2{

font-size:50px;

margin-bottom:15px;

}

.contact-box p{

color:var(--gray);

margin-bottom:40px;

}

.contact-box form{

display:flex;

flex-direction:column;

gap:20px;

}

.contact-box input,
.contact-box textarea{

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

border:none;

outline:none;

padding:18px 20px;

border-radius:15px;

color:white;

font-size:16px;

}

.contact-box textarea{

height:180px;

resize:none;

}

.contact-box button{

background:var(--gradient);

padding:18px;

border:none;

border-radius:50px;

font-size:18px;

font-weight:600;

color:white;

cursor:pointer;

transition:.4s;

}

.contact-box button:hover{

transform:translateY(-3px);

}

/* ==================================
FOOTER
================================== */

footer{

padding:80px 0;

text-align:center;

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

}

footer h3{

font-size:32px;

margin-bottom:15px;

}

footer p{

color:var(--gray);

margin-bottom:30px;

}

.social-links{

display:flex;

justify-content:center;

gap:20px;

}

.social-links a{

width:55px;

height:55px;

display:flex;

align-items:center;

justify-content:center;

background:var(--glass);

border-radius:50%;

color:white;

font-size:20px;

text-decoration:none;

transition:.4s;

}

.social-links a:hover{

background:var(--gradient);

transform:translateY(-5px);

}

/* ==================================
WHATSAPP
================================== */

.whatsapp{

position:fixed;

right:25px;

bottom:25px;

width:70px;

height:70px;

display:flex;

align-items:center;

justify-content:center;

background:#25D366;

border-radius:50%;

font-size:35px;

color:white;

text-decoration:none;

z-index:999;

box-shadow:
0 10px 30px rgba(37,211,102,.4);

animation:pulse 2s infinite;

}

@keyframes pulse{

0%{
transform:scale(1);
}

50%{
transform:scale(1.08);
}

100%{
transform:scale(1);
}

}

/* ==================================
RESPONSIVE
================================== */

@media(max-width:991px){

.hero-content,
.about-grid,
.services-grid,
.case-grid,
.blog-grid,
.ecosystem-grid{

grid-template-columns:1fr;

}

.hero h1{

font-size:48px;

}

.hero-stats{

grid-template-columns:repeat(2,1fr);

}

.timeline-wrapper::before{

left:20px;

}

.timeline-item{

width:100%;

margin-left:40px !important;

}

.nav-links{

display:none;

}

.contact-box{

padding:40px;

}

}

@media(max-width:600px){

.hero{

padding-top:140px;

}

.hero h1{

font-size:38px;

}

.section-title h2{

font-size:36px;

}

.contact-box h2{

font-size:34px;

}

.hero-stats{

grid-template-columns:1fr;

}

}

/* ACTIVE MENU */

.nav-links a.active{

color:#ff197d;

}

/* MOUSE GLOW */

.mouse-glow{

position:fixed;

width:350px;

height:350px;

background:
radial-gradient(
circle,
rgba(255,25,125,.15),
transparent 70%
);

pointer-events:none;

transform:
translate(-50%,-50%);

z-index:-1;

}

/* BACK TO TOP */

.back-to-top{

position:fixed;

bottom:110px;

right:30px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:
linear-gradient(
135deg,
#ff197d,
#7a00ff
);

color:white;

font-size:24px;

cursor:pointer;

opacity:0;

transition:.4s;

z-index:999;

}

/* LOADER */

.loader{

position:fixed;

width:100%;

height:100%;

background:#0e0e15;

display:flex;

align-items:center;

justify-content:center;

z-index:9999;

}

.loader::after{

content:"";

width:60px;

height:60px;

border:5px solid #333;

border-top:
5px solid #ff197d;

border-radius:50%;

animation:
spin 1s linear infinite;

}

@keyframes spin{

100%{
transform:rotate(360deg);
}

}

/* PORTFOLIO HERO */

.page-hero{

padding-top:180px;

text-align:center;

}

.page-hero h1{

font-size:72px;

margin-bottom:20px;

font-family:'Space Grotesk';

}

.page-hero p{

max-width:700px;

margin:auto;

color:var(--gray);

font-size:20px;

}

/* PORTFOLIO GRID */

.portfolio-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:30px;

}

.portfolio-card{

padding:40px;

background:var(--glass);

border-radius:25px;

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

transition:.4s;

}

.portfolio-card:hover{

transform:translateY(-10px);

border-color:var(--primary);

}

.portfolio-card h3{

margin-bottom:10px;

}

.portfolio-card span{

display:block;

margin-bottom:15px;

color:var(--primary);

}

/* INDUSTRY */

.industry-grid{

display:grid;

grid-template-columns:
repeat(4,1fr);

gap:20px;

}

.industry-grid div{

padding:20px;

text-align:center;

background:var(--glass);

border-radius:15px;

}

/* SKILLS */

.skills-grid{

display:grid;

grid-template-columns:
repeat(4,1fr);

gap:20px;

}

.skill{

padding:20px;

text-align:center;

background:var(--glass);

border-radius:15px;

font-weight:600;

}

/* ABOUT PAGE EXTRA */

.about-grid ul{

margin-top:20px;

padding-left:20px;

}

.about-grid ul li{

margin-bottom:12px;

color:var(--gray);

}

.portfolio-card h3{

font-size:42px;

background:var(--gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.page-hero{

padding-top:180px;

padding-bottom:100px;

text-align:center;

}

.page-hero h1{

font-size:72px;

font-family:'Space Grotesk';

margin-bottom:20px;

}

.page-hero p{

max-width:800px;

margin:auto;

color:var(--gray);

font-size:20px;

}

/* BLOG PAGE */

.blog-hero{

text-align:center;

padding-top:180px;

padding-bottom:100px;

}

.search-box{

max-width:700px;

margin:auto;

display:flex;

background:var(--glass);

border-radius:60px;

overflow:hidden;

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

}

.search-box input{

flex:1;

padding:18px 25px;

background:none;

border:none;

outline:none;

color:white;

font-size:16px;

}

.search-box button{

width:80px;

background:var(--gradient);

border:none;

color:white;

cursor:pointer;

}

.featured-post{

display:grid;

grid-template-columns:1fr 1fr;

gap:40px;

align-items:center;

background:var(--glass);

padding:40px;

border-radius:30px;

}

.featured-image img{

width:100%;

border-radius:20px;

}

.featured-content h2{

font-size:42px;

margin:20px 0;

}

.featured-content p{

color:var(--gray);

margin-bottom:25px;

}

.category{

color:var(--primary);

font-weight:600;

}

.category-grid{

display:grid;

grid-template-columns:
repeat(3,1fr);

gap:25px;

}

.category-card{

padding:40px;

text-align:center;

background:var(--glass);

border-radius:25px;

transition:.4s;

cursor:pointer;

}

.category-card:hover{

transform:translateY(-10px);

border:
1px solid var(--primary);

}

.category-card i{

font-size:45px;

margin-bottom:20px;

background:var(--gradient);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.post-category{

display:inline-block;

padding:6px 15px;

background:
rgba(255,25,125,.15);

color:var(--primary);

border-radius:50px;

margin-bottom:15px;

font-size:13px;

font-weight:600;

}

.blog-content a{

color:var(--primary);

font-weight:600;

text-decoration:none;

}

.blog-content a:hover{

color:white;

}

@media(max-width:991px){

.featured-post{

grid-template-columns:1fr;

}

.category-grid{

grid-template-columns:1fr;

}

}

/* BLOG DETAILS PAGE */

.blog-post-hero{

padding-top:180px;
padding-bottom:80px;
text-align:center;

}

.blog-post-hero h1{

font-size:68px;
max-width:900px;
margin:auto;

}

.blog-meta{

display:flex;
justify-content:center;
gap:20px;
margin-bottom:25px;

}

.blog-meta span{

padding:8px 18px;
border-radius:50px;
background:var(--glass);

}

.featured-blog-image{

width:100%;
border-radius:30px;

}

.blog-layout{

display:grid;
grid-template-columns:300px 1fr;
gap:50px;

}

.blog-sidebar{

position:sticky;
top:120px;
height:fit-content;

}

.toc-card,
.share-card{

background:var(--glass);
padding:25px;
border-radius:20px;
margin-bottom:20px;

}

.toc-card ul{

list-style:none;
margin-top:15px;

}

.toc-card li{

margin-bottom:12px;

}

.toc-card a{

color:white;
text-decoration:none;

}

.blog-article{

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

}

.blog-article h2{

margin:40px 0 20px;

font-size:36px;

}

.blog-article ul{

padding-left:25px;

}

.author-box{

display:flex;
gap:30px;
align-items:center;

background:var(--glass);

padding:40px;

border-radius:25px;

}

.author-box img{

width:120px;
height:120px;
border-radius:50%;

object-fit:cover;

}

.faq-item{

background:var(--glass);

padding:25px;

margin-bottom:20px;

border-radius:20px;

}

@media(max-width:991px){

.blog-layout{

grid-template-columns:1fr;

}

.blog-sidebar{

position:relative;

}

.blog-post-hero h1{

font-size:42px;

}

}