:root{

--bg-primary:#0f172a;
--bg-secondary:#1e293b;
--border:#334155;

--text-primary:#ffffff;
--text-secondary:#94a3b8;

--accent:#2563eb;

--font-system:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;

--text-sm:14px;
--text-md:16px;
--text-lg:20px;
--text-xl:32px;
--text-hero:56px;

--space-1:8px;
--space-2:12px;
--space-3:16px;
--space-4:24px;
--space-5:40px;
--space-6:60px;

--radius-md:12px;
--radius-lg:16px;

--container-width:1200px;
}

/* BASE */

body{
margin:0;
background:var(--bg-primary);
color:var(--text-primary);
font-family:var(--font-system);
line-height:1.6;
padding-top:60px;
}

/* CONTAINER */

.container{
max-width:var(--container-width);
margin:auto;
padding:0 var(--space-4);
}

/* SECTIONS */

.section{
padding:60px 0;
}

.section-title{
font-size:var(--text-lg);
color:var(--text-secondary);
margin-bottom:var(--space-4);
}

/* GRID */

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:20px;
}

/* CARDS */

.card{
background:var(--bg-secondary);
border:1px solid var(--border);
padding:26px;
border-radius:var(--radius-lg);
text-decoration:none;
color:white;
transition:.25s;
}

.card:hover{
transform:translateY(-6px);
background:#334155;
}

.card-title{
font-size:18px;
font-weight:700;
margin-bottom:6px;
}

.card-desc{
font-size:14px;
color:var(--text-secondary);
}

/* HERO */

.hero{
text-align:center;
padding:120px 20px 60px;
}

.hero h1{
font-size:var(--text-hero);
margin-bottom:12px;
}

.hero p{
color:var(--text-secondary);
}

/* LOGO */

.logo{
width:140px;
display:block;
margin:auto;
margin-bottom:20px;
}

/* NAV (DESKTOP SAFE) */

.nav{
position:fixed;
top:0;
width:100%;
background:rgba(15,23,42,.85);
backdrop-filter:blur(10px);
border-bottom:1px solid var(--border);
z-index:10;
}

.nav-inner{
max-width:1200px;
margin:auto;
padding:14px 20px;
display:flex;
justify-content:space-between;
align-items:center;
}

/* IMPORTANT: keep desktop layout intact */

.nav-links a{
color:var(--text-secondary);
text-decoration:none;
margin-left:20px;
font-size:14px;
white-space:nowrap;
}

.nav-links a:hover{
color:white;
}

/* FOOTER */

.footer{
text-align:center;
padding:60px 20px;
color:#64748b;
font-size:13px;
}

/* ========================= */
/* MOBILE ONLY (SAFE LAYER) */
/* ========================= */

@media (max-width:768px){

/* NAV FIX */
.nav-inner{
flex-direction:column;
align-items:center;
gap:8px;
}

.nav-links{
display:flex;
flex-wrap:wrap;
justify-content:center;
}

.nav-links a{
margin:6px 10px;
font-size:13px;
}

/* HERO FIX */
.hero{
padding:100px 16px 50px;
}

.hero h1{
font-size:32px;
line-height:1.25;
}

.hero p{
font-size:14px;
}

/* SECTION */
.section{
padding:50px 0;
}

/* GRID */
.grid{
gap:16px;
}

}
