/*=========================================
AKHLAS PORTFOLIO
STYLE.CSS PART-1
==========================================*/

:root{

--primary:#0A192F;
--secondary:#112240;
--gold:#FFD166;
--white:#ffffff;
--gray:#C5C5C5;
--dark:#050B16;
--glass:rgba(255,255,255,.08);
--shadow:0 20px 50px rgba(0,0,0,.35);
--radius:18px;
--transition:.4s ease;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;
background:linear-gradient(135deg,#06101f,#091b33,#0b2744);
color:#fff;
overflow-x:hidden;

}

/* Scrollbar */

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:#08111e;

}

::-webkit-scrollbar-thumb{

background:var(--gold);
border-radius:30px;

}

/* Loader */

#loader{

position:fixed;
inset:0;
background:#06101f;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
z-index:99999;

}

.spinner{

width:70px;
height:70px;
border:6px solid rgba(255,255,255,.1);
border-top:6px solid var(--gold);
border-radius:50%;
animation:spin 1s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}

#loader h2{

margin-top:25px;
letter-spacing:2px;
font-weight:600;
color:white;

}

/* Navbar */

header{

position:fixed;
top:0;
left:0;
width:100%;
z-index:999;

backdrop-filter:blur(18px);

background:rgba(5,15,35,.70);

border-bottom:1px solid rgba(255,255,255,.05);

}

.navbar{

max-width:1300px;
margin:auto;

display:flex;
justify-content:space-between;
align-items:center;

padding:18px 35px;

}

.logo{

font-size:34px;
font-weight:800;
letter-spacing:2px;
color:var(--gold);

}

.menu{

display:flex;
gap:35px;
list-style:none;

}

.menu li a{

text-decoration:none;
color:white;
font-size:16px;
font-weight:500;
transition:.35s;

}

.menu li a:hover{

color:var(--gold);

}

.mobile-menu{

display:none;
font-size:28px;
cursor:pointer;

}

/* Hero */

.hero{

min-height:100vh;

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

max-width:1300px;

margin:auto;

padding:120px 40px 60px;

gap:60px;

}

.hero-left h4{

font-size:22px;
color:var(--gold);

margin-bottom:15px;

}

.hero-left h1{

font-size:70px;
line-height:1.1;
font-weight:800;

}

.hero-left h1 span{

color:var(--gold);

}

#typing-text{

height:55px;

font-size:32px;

margin:25px 0;

font-weight:700;

color:#7FE0FF;

}

.hero-left p{

font-size:18px;

line-height:34px;

color:#d5d5d5;

max-width:650px;

}

/* Buttons */

.hero-buttons{

margin-top:35px;

display:flex;

gap:20px;

flex-wrap:wrap;

}

.btn{

background:var(--gold);

padding:16px 40px;

text-decoration:none;

border-radius:50px;

color:#111;

font-weight:700;

transition:.4s;

box-shadow:0 15px 30px rgba(255,209,102,.35);

}

.btn:hover{

transform:translateY(-6px);

}

.btn-outline{

border:2px solid var(--gold);

padding:15px 40px;

border-radius:50px;

text-decoration:none;

font-weight:700;

color:white;

transition:.4s;

}

.btn-outline:hover{

background:var(--gold);

color:#111;

}

/* Social */

.social-icons{

display:flex;

gap:20px;

margin-top:35px;

}

.social-icons a{

width:55px;

height:55px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

background:rgba(255,255,255,.05);

color:white;

font-size:22px;

transition:.4s;

backdrop-filter:blur(12px);

}

.social-icons a:hover{

background:var(--gold);

color:#111;

transform:translateY(-8px);

}

/* Right Image */

.hero-right{

display:flex;

justify-content:center;

align-items:center;

}

.profile-card{

position:relative;

width:420px;

height:520px;

border-radius:30px;

background:rgba(255,255,255,.05);

backdrop-filter:blur(15px);

border:1px solid rgba(255,255,255,.10);

display:flex;

justify-content:center;

align-items:center;

box-shadow:var(--shadow);

overflow:hidden;

}

.profile-card img{

width:92%;

height:92%;

object-fit:cover;

border-radius:22px;

z-index:10;

}

.circle1{

position:absolute;

width:230px;

height:230px;

background:#FFD166;

border-radius:50%;

top:-60px;

right:-60px;

opacity:.25;

animation:float1 6s infinite;

}

.circle2{

position:absolute;

width:260px;

height:260px;

background:#00B4FF;

border-radius:50%;

bottom:-80px;

left:-80px;

opacity:.20;

animation:float2 8s infinite;

}

@keyframes float1{

50%{

transform:translateY(25px);

}

}

@keyframes float2{

50%{

transform:translateX(35px);

}

}

/* Stats */

.quick-info{

max-width:1300px;

margin:40px auto 100px;

padding:0 40px;

display:grid;

grid-template-columns:repeat(5,1fr);

gap:25px;

}

.info-box{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.06);

backdrop-filter:blur(16px);

padding:35px;

border-radius:20px;

text-align:center;

transition:.4s;

}

.info-box:hover{

transform:translateY(-10px);

box-shadow:0 20px 40px rgba(0,0,0,.35);

}

.info-box h2{

font-size:42px;

color:var(--gold);

margin-bottom:10px;

}

.info-box p{

color:#ddd;

font-size:16px;

}

/* Section Title */

section{

padding:90px 40px;

}

.section-title{

text-align:center;

margin-bottom:70px;

}

.section-title h2{

font-size:48px;

color:white;

margin-bottom:15px;

}

.section-title p{

font-size:18px;

color:#bbbbbb;

}

/*=========================================
ABOUT SECTION
=========================================*/

.about-grid{

max-width:1300px;

margin:auto;

display:grid;

grid-template-columns:420px 1fr;

gap:70px;

align-items:center;

}

.about-image{

display:flex;

justify-content:center;

}

.about-image img{

width:100%;

max-width:400px;

border-radius:25px;

border:5px solid rgba(255,255,255,.08);

box-shadow:0 30px 60px rgba(0,0,0,.35);

transition:.5s;

}

.about-image img:hover{

transform:scale(1.03);

}

.about-content h3{

font-size:38px;

margin-bottom:25px;

color:var(--gold);

}

.about-content p{

font-size:18px;

line-height:34px;

color:#d9d9d9;

margin-bottom:35px;

}

.about-content ul{

list-style:none;

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

}

.about-content li{

padding:18px;

background:rgba(255,255,255,.05);

border-radius:15px;

border:1px solid rgba(255,255,255,.06);

}

.about-content strong{

color:var(--gold);

}

/*=========================================
EXPERIENCE
=========================================*/

.timeline{

max-width:1000px;

margin:auto;

position:relative;

padding-left:50px;

}

.timeline::before{

content:"";

position:absolute;

left:18px;

top:0;

width:4px;

height:100%;

background:linear-gradient(var(--gold),#00c6ff);

border-radius:20px;

}

.timeline-item{

position:relative;

margin-bottom:70px;

}

.timeline-icon{

position:absolute;

left:-3px;

width:44px;

height:44px;

background:var(--gold);

color:#111;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:20px;

font-weight:bold;

box-shadow:0 10px 25px rgba(255,209,102,.35);

}

.timeline-content{

margin-left:60px;

padding:35px;

border-radius:20px;

background:rgba(255,255,255,.05);

backdrop-filter:blur(15px);

border:1px solid rgba(255,255,255,.06);

transition:.4s;

}

.timeline-content:hover{

transform:translateY(-8px);

box-shadow:0 20px 50px rgba(0,0,0,.35);

}

.timeline-content .year{

display:inline-block;

margin-bottom:15px;

color:var(--gold);

font-weight:700;

}

.timeline-content h3{

font-size:28px;

margin-bottom:8px;

}

.timeline-content h4{

font-size:20px;

color:#9fd8ff;

margin-bottom:20px;

}

.timeline-content p{

line-height:30px;

color:#d8d8d8;

}

/*=========================================
SKILLS
=========================================*/

.skill-grid{

max-width:1300px;

margin:auto;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:28px;

}

.skill-card{

background:rgba(255,255,255,.05);

padding:35px;

border-radius:22px;

text-align:center;

border:1px solid rgba(255,255,255,.06);

backdrop-filter:blur(12px);

transition:.4s;

cursor:pointer;

}

.skill-card:hover{

transform:translateY(-10px);

background:rgba(255,209,102,.10);

}

.skill-card i{

font-size:52px;

color:var(--gold);

margin-bottom:20px;

}

.skill-card h3{

font-size:22px;

font-weight:600;

}

/*=========================================
CERTIFICATIONS
=========================================*/

.certificate-grid{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:30px;

}

.certificate-card{

padding:35px;

text-align:center;

border-radius:20px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.06);

transition:.4s;

}

.certificate-card:hover{

transform:translateY(-10px);

border-color:var(--gold);

}

.certificate-card h3{

font-size:28px;

color:var(--gold);

margin-bottom:15px;

}

.certificate-card p{

color:#ddd;

line-height:28px;

}

/*=========================================
RESEARCH
=========================================*/

.research-card{

max-width:1000px;

margin:auto;

padding:45px;

background:rgba(255,255,255,.05);

border-radius:25px;

border:1px solid rgba(255,255,255,.06);

text-align:center;

transition:.4s;

}

.research-card:hover{

transform:translateY(-8px);

box-shadow:0 20px 40px rgba(0,0,0,.35);

}

.research-card h3{

font-size:30px;

margin-bottom:25px;

color:var(--gold);

}

.research-card p{

font-size:18px;

line-height:34px;

color:#d8d8d8;

}
/*=========================================
PROJECTS
=========================================*/

.project-grid{

max-width:1300px;
margin:auto;

display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:30px;

}

.project-card{

background:rgba(255,255,255,.05);

padding:35px;

border-radius:22px;

border:1px solid rgba(255,255,255,.08);

backdrop-filter:blur(16px);

transition:.45s;

position:relative;

overflow:hidden;

}

.project-card::before{

content:"";

position:absolute;

top:0;
left:-100%;

width:100%;
height:4px;

background:linear-gradient(90deg,#FFD166,#00C2FF);

transition:.6s;

}

.project-card:hover::before{

left:0;

}

.project-card:hover{

transform:translateY(-12px);

box-shadow:0 25px 50px rgba(0,0,0,.35);

}

.project-card i{

font-size:60px;

color:var(--gold);

margin-bottom:25px;

}

.project-card h3{

font-size:28px;

margin-bottom:18px;

}

.project-card p{

line-height:30px;

color:#d8d8d8;

}

/*=========================================
ACHIEVEMENTS
=========================================*/

.achievement-grid{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:25px;

}

.achievement-box{

padding:40px;

text-align:center;

background:rgba(255,255,255,.05);

border-radius:20px;

border:1px solid rgba(255,255,255,.06);

transition:.4s;

}

.achievement-box:hover{

transform:translateY(-10px);

background:rgba(255,209,102,.10);

}

.achievement-box h2{

font-size:50px;

color:var(--gold);

margin-bottom:12px;

}

.achievement-box p{

font-size:18px;

color:#ddd;

}

/*=========================================
CONTACT
=========================================*/

.contact-wrapper{

max-width:1300px;

margin:auto;

display:grid;

grid-template-columns:1fr 1fr;

gap:40px;

}

.contact-info{

padding:40px;

background:rgba(255,255,255,.05);

border-radius:22px;

border:1px solid rgba(255,255,255,.06);

}

.contact-info h3{

font-size:34px;

margin-bottom:30px;

color:var(--gold);

}

.contact-info p{

margin:20px 0;

font-size:18px;

display:flex;

align-items:center;

gap:15px;

}

.contact-info i{

color:var(--gold);

font-size:22px;

}

.social-contact{

display:flex;

gap:18px;

margin-top:30px;

}

.social-contact a{

width:50px;

height:50px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

background:rgba(255,255,255,.08);

color:#fff;

transition:.35s;

}

.social-contact a:hover{

background:var(--gold);

color:#111;

}

.contact-form{

padding:40px;

background:rgba(255,255,255,.05);

border-radius:22px;

border:1px solid rgba(255,255,255,.06);

}

.contact-form form{

display:flex;

flex-direction:column;

gap:20px;

}

.contact-form input,

.contact-form textarea{

padding:18px;

border:none;

outline:none;

border-radius:14px;

background:rgba(255,255,255,.08);

color:white;

font-size:16px;

}

.contact-form textarea{

resize:none;

}

.contact-form button{

padding:18px;

border:none;

border-radius:50px;

background:var(--gold);

font-size:18px;

font-weight:700;

cursor:pointer;

transition:.35s;

}

.contact-form button:hover{

transform:translateY(-5px);

}

/*=========================================
FOOTER
=========================================*/

footer{

margin-top:100px;

padding:70px 20px;

text-align:center;

background:#040B16;

border-top:1px solid rgba(255,255,255,.06);

}

.footer-content h2{

font-size:42px;

color:var(--gold);

margin-bottom:20px;

}

.footer-content p{

max-width:800px;

margin:15px auto;

line-height:32px;

color:#cfcfcf;

}

.footer-social{

display:flex;

justify-content:center;

gap:18px;

margin:30px 0;

}

.footer-social a{

width:50px;

height:50px;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

background:rgba(255,255,255,.08);

color:#fff;

transition:.35s;

}

.footer-social a:hover{

background:var(--gold);

color:#111;

}

.copyright{

margin-top:25px;

font-size:15px;

color:#9e9e9e;

}

/*=========================================
SCROLL TOP
=========================================*/

#scrollTop{

position:fixed;

right:25px;

bottom:25px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:var(--gold);

color:#111;

font-size:22px;

cursor:pointer;

display:none;

box-shadow:0 10px 25px rgba(0,0,0,.35);

transition:.35s;

z-index:999;

}

#scrollTop:hover{

transform:translateY(-6px);

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:992px){

.hero{

grid-template-columns:1fr;

text-align:center;

}

.hero-left{

order:2;

}

.hero-right{

order:1;

}

.profile-card{

width:320px;

height:420px;

}

.quick-info{

grid-template-columns:repeat(2,1fr);

}

.about-grid{

grid-template-columns:1fr;

}

.contact-wrapper{

grid-template-columns:1fr;

}

.menu{

display:none;

}

.mobile-menu{

display:block;

}

}

@media(max-width:768px){

.hero-left h1{

font-size:46px;

}

#typing-text{

font-size:24px;

}

.section-title h2{

font-size:36px;

}

.quick-info{

grid-template-columns:1fr;

}

.about-content ul{

grid-template-columns:1fr;

}

.timeline{

padding-left:35px;

}

.timeline-content{

margin-left:45px;

padding:25px;

}

.project-grid,

.skill-grid,

.certificate-grid,

.achievement-grid{

grid-template-columns:1fr;

}

}

@keyframes fadeUp{

0%{

opacity:0;

transform:translateY(40px);

}

100%{

opacity:1;

transform:translateY(0);

}

}

.fade-up{

animation:fadeUp .8s ease forwards;

}