
/* ==========================================
   SOFTLINK TECHNOLOGY PORTFOLIO
   Foundation - Part 1
========================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

:root{

--primary:#2563eb;
--secondary:#10b981;
--accent:#f59e0b;

--dark:#081120;
--dark2:#0f172a;

--white:#ffffff;
--text:#dbeafe;

--transition:.35s ease;

}

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

html{
scroll-behavior:smooth;
}

body{

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

background:
linear-gradient(135deg,#081120,#0f172a);

color:#fff;

overflow-x:hidden;

line-height:1.8;

}

/* ==========================
   Animated Background
========================== */

body::before{

content:"";

position:fixed;

top:-20%;

left:-20%;

width:140%;

height:140%;

background:

radial-gradient(circle,#2563eb33 0%,transparent 60%),

radial-gradient(circle,#10b98122 0%,transparent 70%),

radial-gradient(circle,#f59e0b22 0%,transparent 60%);

animation:bgMove 18s linear infinite;

z-index:-2;

}

@keyframes bgMove{

0%{
transform:rotate(0deg) scale(1);
}

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

}

/* ==========================
   Loader
========================== */

#loader{

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

background:#081120;

display:flex;

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

z-index:9999;

transition:.6s;

}

#loader h2{

font-size:38px;

font-weight:800;

background:linear-gradient(90deg,#ffffff,#f59e0b);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

/* ==========================
   Navigation
========================== */

.navbar{

position:fixed;

top:0;

left:0;

width:100%;

padding:18px 8%;

display:flex;

justify-content:space-between;

align-items:center;

background:rgba(8,17,32,.85);

backdrop-filter:blur(20px);

z-index:999;

}

.logo{

font-size:28px;

font-weight:800;

color:#fff;

}

.logo span{

color:var(--accent);

}

.nav-links{

display:flex;

gap:35px;

list-style:none;

}

.nav-links a{

color:#fff;

text-decoration:none;

font-weight:600;

transition:.3s;

}

.nav-links a:hover{

color:var(--accent);

}

.menu-btn{

display:none;

font-size:28px;

cursor:pointer;

}

/* ==========================
   Hero
========================== */

.hero{

min-height:100vh;

display:flex;

justify-content:center;

align-items:center;

padding:140px 8% 80px;

}

.hero-content{

display:flex;

align-items:center;

justify-content:space-between;

gap:80px;

width:100%;

max-width:1300px;

}

.hero-text{

flex:1;

}

.hero-badge{

display:inline-block;

padding:10px 20px;

border-radius:40px;

background:rgba(16,185,129,.15);

border:1px solid rgba(16,185,129,.4);

color:#10b981;

font-weight:700;

margin-bottom:25px;

}

.hero-text h4{

font-size:24px;

font-weight:500;

color:#f59e0b;

margin-bottom:10px;

}

.hero-text h1{

font-size:62px;

font-weight:800;

line-height:1.1;

margin-bottom:20px;

background:linear-gradient(90deg,#ffffff,#3b82f6,#f59e0b);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.hero-text h2{

font-size:30px;

color:#93c5fd;

margin-bottom:25px;

}

.hero-text p{

font-size:18px;

color:#dbe4ef;

max-width:650px;

line-height:1.9;

margin-bottom:35px;

}

/* ==========================
   Buttons
========================== */

.hero-buttons{

display:flex;

gap:20px;

margin-bottom:35px;

}

.btn-primary{

padding:15px 34px;

border-radius:40px;

background:linear-gradient(90deg,#2563eb,#10b981);

color:#fff;

text-decoration:none;

font-weight:700;

transition:.35s;

}

.btn-primary:hover{

transform:translateY(-5px);

}

.btn-secondary{

padding:15px 34px;

border-radius:40px;

border:2px solid #fff;

color:#fff;

text-decoration:none;

transition:.35s;

}

.btn-secondary:hover{

background:#fff;

color:#081120;

}

/* ==========================
   Social
========================== */

.hero-social{

display:flex;

gap:20px;

}

.hero-social a{

width:52px;

height:52px;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

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

color:#fff;

text-decoration:none;

font-size:20px;

transition:.35s;

}

.hero-social a:hover{

background:linear-gradient(135deg,#2563eb,#10b981);

transform:translateY(-6px);

}

/* ==========================
   Avatar
========================== */

.hero-image{

flex:1;

display:flex;

justify-content:center;

}

.avatar-card{

width:420px;

height:420px;

padding:18px;

border-radius:30px;

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

backdrop-filter:blur(18px);

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

box-shadow:0 25px 60px rgba(0,0,0,.35);

animation:floatCard 6s ease-in-out infinite;

}

.avatar-card img{

width:100%;

height:100%;

object-fit:cover;

border-radius:20px;

}

@keyframes floatCard{

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

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

}

/* ==========================
   Responsive
========================== */

@media(max-width:992px){

.hero-content{

flex-direction:column-reverse;

text-align:center;

}

.hero-buttons,
.hero-social{

justify-content:center;

}

.hero-text p{

margin:auto auto 35px;

}

.avatar-card{

width:320px;

height:320px;

}

}

@media(max-width:768px){

.nav-links{

display:none;

}

.menu-btn{

display:block;

}

.hero{

padding-top:120px;

}

.hero-text h1{

font-size:36px;

}

.hero-text h2{

font-size:22px;

}

.hero-text p{

font-size:16px;

}

.avatar-card{

width:260px;

height:260px;

}

.hero-buttons{

flex-direction:column;

}

.btn-secondary{

margin-left:0;

}

}
/* ==========================================
   ABOUT SECTION
========================================== */

.container{

width:90%;

max-width:1200px;

margin:auto;

}

.section-title{

text-align:center;

margin-bottom:60px;

}

.section-title h2{

font-size:42px;

font-weight:800;

margin-bottom:15px;

background:linear-gradient(90deg,#ffffff,#f59e0b);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.section-title p{

color:#dbeafe;

font-size:18px;

}

.about{

padding:110px 0;

}

.about-content{

display:grid;

grid-template-columns:2fr 1fr;

gap:60px;

align-items:center;

padding:45px;

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

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

backdrop-filter:blur(18px);

border-radius:30px;

}

.about-text h3{

font-size:38px;

margin-bottom:15px;

color:#ffffff;

}

.about-text h4{

font-size:22px;

color:#f59e0b;

margin-bottom:25px;

}

.about-text p{

color:#dbe4ef;

font-size:17px;

line-height:1.9;

margin-bottom:18px;

}

.about-image{

display:flex;

justify-content:center;

}

.about-image img{

width:320px;

border-radius:25px;

box-shadow:0 25px 50px rgba(0,0,0,.35);

}

@media(max-width:900px){

.about-content{

grid-template-columns:1fr;

text-align:center;

}

.about-image img{

width:260px;

}

}
/* ==========================================
   VISION & MISSION
========================================== */

.vision-mission{

padding:110px 0;

}

.vm-grid{

display:grid;

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

gap:35px;

}

.vm-card{

padding:45px;

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

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

border-radius:28px;

backdrop-filter:blur(18px);

transition:.35s ease;

text-align:center;

}

.vm-card:hover{

transform:translateY(-10px);

border-color:#2563eb;

box-shadow:0 20px 45px rgba(37,99,235,.25);

}

.vm-icon{

font-size:55px;

margin-bottom:20px;

}

.vm-card h3{

font-size:30px;

margin-bottom:18px;

color:#f59e0b;

}

.vm-card p{

font-size:17px;

line-height:1.9;

color:#dbe4ef;

}

@media(max-width:900px){

.vm-grid{

grid-template-columns:1fr;

}

}
/* ==========================================
   CORE VALUES
========================================== */

.values{

padding:110px 0;

}

.values-grid{

display:grid;

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

gap:30px;

}

.value-card{

padding:35px;

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

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

border-radius:25px;

backdrop-filter:blur(18px);

transition:.35s ease;

}

.value-card:hover{

transform:translateY(-10px);

border-color:#10b981;

box-shadow:0 20px 45px rgba(16,185,129,.25);

}

.value-card h3{

font-size:24px;

margin-bottom:18px;

color:#f59e0b;

}

.value-card p{

color:#dbe4ef;

line-height:1.8;

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

.services{

padding:110px 0;

}

.services-grid{

display:grid;

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

gap:30px;

}

.service-card{

padding:40px;

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

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

border-radius:25px;

backdrop-filter:blur(18px);

transition:.35s;

text-align:center;

}

.service-card:hover{

transform:translateY(-10px);

border-color:#2563eb;

box-shadow:0 20px 45px rgba(37,99,235,.25);

}

.service-icon{

font-size:55px;

margin-bottom:20px;

}

.service-card h3{

font-size:24px;

margin-bottom:18px;

color:#f59e0b;

}

.service-card p{

color:#dbe4ef;

line-height:1.8;

}
/* ==========================================
   PROJECTS
========================================== */

.projects{

padding:110px 0;

}

.projects-grid{

display:grid;

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

gap:30px;

}

.project-card{

padding:35px;

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

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

border-radius:25px;

backdrop-filter:blur(18px);

transition:.35s;

}

.project-card:hover{

transform:translateY(-10px);

border-color:#2563eb;

box-shadow:0 20px 45px rgba(37,99,235,.25);

}

.project-card h3{

font-size:28px;

margin:20px 0;

color:#ffffff;

}

.project-card p{

color:#dbe4ef;

line-height:1.8;

margin-bottom:25px;

}

.project-tags{

display:flex;

flex-wrap:wrap;

gap:10px;

margin-bottom:25px;

}

.project-tags span{

padding:8px 16px;

border-radius:20px;

background:#2563eb;

font-size:14px;

font-weight:600;

}

.project-status{

display:inline-block;

padding:8px 16px;

border-radius:20px;

font-size:14px;

font-weight:700;

margin-bottom:15px;

}

.active{

background:#10b981;

color:#fff;

}

.planning{

background:#f59e0b;

color:#081120;

}
/* ================= SKILLS ================= */

.skills{

padding:110px 0;

}

.skills-grid{

display:grid;

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

gap:20px;

}

.skill-card{

padding:25px;

text-align:center;

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

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

border-radius:20px;

font-weight:700;

font-size:18px;

transition:.35s;

}

.skill-card:hover{

background:linear-gradient(135deg,#2563eb,#10b981);

transform:translateY(-8px);

}
/* ================= WHY CHOOSE US ================= */

.why-us{

padding:110px 0;

}

.why-grid{

display:grid;

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

gap:30px;

}

.why-card{

padding:35px;

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

border-radius:25px;

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

transition:.35s;

}

.why-card:hover{

transform:translateY(-10px);

border-color:#2563eb;

box-shadow:0 20px 45px rgba(37,99,235,.25);

}

.why-card h3{

margin-bottom:18px;

font-size:24px;

color:#f59e0b;

}

.why-card p{

color:#dbe4ef;

line-height:1.8;

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

.contact{

padding:110px 0;

}

.contact-grid{

display:grid;

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

gap:30px;

}

.contact-card{

padding:40px;

text-align:center;

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

border-radius:25px;

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

transition:.35s;

}

.contact-card:hover{

transform:translateY(-10px);

border-color:#10b981;

}

.contact-card h3{

font-size:24px;

margin-bottom:15px;

color:#f59e0b;

}

.contact-card p{

font-size:18px;

color:#dbe4ef;

word-break:break-word;

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

footer{

padding:60px 20px;

text-align:center;

background:#050b17;

margin-top:80px;

}

footer h2{

font-size:34px;

margin-bottom:15px;

background:linear-gradient(90deg,#ffffff,#f59e0b);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

footer p{

color:#cbd5e1;

margin-top:10px;

}
