
html{scroll-behavior:smooth}
:root{
--bg:#080b12;
--card:#10151f;
--text:#f5f7fb;
--muted:#9aa4b2;
--accent:#5b7cff;
--accent-mid:#746dff;
--accent-pink:#9367ff;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,sans-serif;line-height:1.6}

.card,.bento-card,.floating-card,.cta,.tech-pills span{cursor:default}
a,button{cursor:pointer}

.bg-glow{
position:fixed;inset:0;pointer-events:none;
background:
radial-gradient(circle at 40% 8%, rgba(91,124,255,.18), transparent 45%),
radial-gradient(circle at 65% 12%, rgba(116,109,255,.12), transparent 40%),
radial-gradient(circle at 78% 15%, rgba(147,103,255,.05), transparent 35%);
}

.container{width:min(1200px,92%);margin:auto}

.header-wrapper{
position:sticky;
top:0;
z-index:999;
backdrop-filter:blur(12px);
border-bottom:1px solid rgba(255,255,255,.05);
}

.nav{display:flex;justify-content:space-between;align-items:center;padding:20px 0}
.logo{text-decoration:none;color:white;font-size:1.2rem;font-weight:700}

nav{display:flex;gap:24px;align-items:center}
nav a{color:var(--muted);text-decoration:none;transition:.3s;position:relative;padding:10px 0px;}
nav a:hover{color:white}

nav a:not(.contact-btn)::after{
content:"";position:absolute;left:0;bottom:-4px;height:2px;width:0;
background:linear-gradient(90deg,#5b7cff,#746dff,#9367ff);
transition:.3s;
}
nav a:not(.contact-btn):hover::after{width:100%}

.contact-btn,.btn-primary{
background:linear-gradient(135deg,#5b7cff,#746dff,#9367ff);
color:white;
text-decoration:none;
display:inline-flex;
align-items:center;
justify-content:center;
min-height:55px;
padding:0 22px;
border-radius:14px;
transition:.3s;
}

.contact-btn:hover,.btn-primary:hover{

filter:brightness(1.08);
box-shadow:0 0 30px rgba(91,124,255,.25),0 10px 35px rgba(91,124,255,.25);
}

.hero{padding:100px 0 120px}
.hero-content{display:grid;grid-template-columns:2fr 1fr;gap:40px;align-items:center}

.badge{
display:inline-block;padding:10px 16px;border-radius:999px;
border:1px solid rgba(91,124,255,.3);
background:rgba(91,124,255,.08);
}

h1{font-size:clamp(3rem,8vw,5.5rem);line-height:1;margin:20px 0}
h1 span{
background:linear-gradient(90deg,#fff,#5b7cff,#746dff,#9367ff);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.hero p,.card p,.bento-card p,.cta-intro,.contact-details p{color:var(--muted)}
.hero-actions{display:flex;gap:16px;margin:32px 0}

.btn-secondary{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:55px;
padding:0 22px;border-radius:14px;
border:1px solid rgba(255,255,255,.08);
color:white;text-decoration:none;
}

.tech-pills{display:flex;gap:10px;flex-wrap:wrap}
.tech-pills span{
background:var(--card);
border:1px solid rgba(255,255,255,.08);
padding:10px 14px;
border-radius:999px;
transition:.3s;
}
.tech-pills span:hover{
transform:translateY(-6px);
background:linear-gradient(135deg,rgba(91,124,255,.12),rgba(116,109,255,.09),rgba(147,103,255,.05)),#10151f;
box-shadow:0 18px 50px rgba(91,124,255,.18);
}

.section-label{font-size:12px;letter-spacing:2px;color:#7d89a7;margin-bottom:8px}

section{padding:60px 0}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.large,.wide{grid-column:span 2}

.card,.bento-card,.floating-card,.cta{
position:relative;background:var(--card);padding:32px;border-radius:24px;overflow:hidden;transition:.35s;
}

.card::before,.bento-card::before,.floating-card::before,.cta::before{
content:"";position:absolute;inset:0;padding:1px;border-radius:24px;
background:linear-gradient(135deg,rgba(91,124,255,.6),rgba(116,109,255,.45),rgba(147,103,255,.25));
-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
-webkit-mask-composite:xor;mask-composite:exclude;
opacity:.4;
pointer-events:none;
}

.card:hover,.bento-card:hover,.floating-card:hover,.cta:hover,.btn-secondary:hover{

background:linear-gradient(135deg,rgba(91,124,255,.12),rgba(116,109,255,.09),rgba(147,103,255,.05)),#10151f;
box-shadow:0 18px 50px rgba(91,124,255,.18);
}

.cta{
margin-left:auto;
margin-right:auto;
}

.contact-details{
width:100%;

position:relative;
z-index:5;
margin-top:48px;
padding-top:28px;
border-top:1px solid rgba(255,255,255,.08);
}

.contact-details a{color:#cfd8ff;text-decoration:none}
.contact-details a:hover{color:white}

@media(max-width:900px){
nav{display:none}
.hero-content,.bento{grid-template-columns:1fr}
.large,.wide{grid-column:span 1}
}

.contact-details{
width:100%;
text-align:center;}

.cta{
    text-align:center;
}

.contact-btn{
    min-height:46px !important;
}
