*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
background:#ffffff;
color:#0f172a;
}
.container{
    max-width:1280px;
    margin:auto;
}

.hero{

    max-width:1280px;

    margin:auto;

    padding:80px 24px;

    display:grid;

    grid-template-columns:
    1fr
    1fr;

    gap:80px;

    align-items:center;
}

.hero-label{

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    color:#2563eb;

    display:block;

    margin-bottom:20px;
}

.hero-description{

    margin-top:24px;

    color:#64748b;

    max-width:500px;
}

.btn-primary{

    display:inline-block;

    margin-top:30px;

    background:#2563eb;

    color:white;

    text-decoration:none;

    padding:14px 24px;

    border-radius:12px;
}

.hero-visual{

    height:450px;

    background:#f8fafc;

    border-radius:24px;

    display:flex;

    align-items:center;

    justify-content:center;
}

.shield-icon{

    font-size:140px;
}

.pillars{

    max-width:1280px;

    margin:auto;

    padding:0 24px 80px;

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:24px;
}

.pillar-card{

    background:#f8fafc;

    border-radius:20px;

    padding:32px;
}
.section-header{

    margin-bottom:40px;
}

.section-label{

    display:block;

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    color:#2563eb;

    margin-bottom:12px;
}

.categories-section,
.featured-section{

    max-width:1280px;

    margin:auto;

    padding:80px 24px;
}

.categories-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:24px;
}

.category-card{

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:20px;

    padding:28px;

    transition:.3s;
}

.category-card:hover{

    transform:translateY(-4px);
}

.featured-grid{

    display:grid;

    grid-template-columns:
    repeat(3,1fr);

    gap:24px;
}

.featured-card{

    background:#f8fafc;

    border-radius:20px;

    padding:32px;
}

.badge{

    display:inline-block;

    padding:8px 14px;

    background:#dbeafe;

    color:#1d4ed8;

    border-radius:999px;

    font-size:12px;

    margin-bottom:18px;
}
.founder-section{

    max-width:1280px;

    margin:auto;

    padding:100px 24px;
}

.founder-grid{

    display:grid;

    grid-template-columns:
    420px
    1fr;

    gap:60px;

    align-items:center;
}

.founder-placeholder{

    width:320px;

    height:320px;

    border-radius:50%;

    background:#e2e8f0;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:64px;

    font-weight:700;
}

.newsletter-section{

    padding:100px 24px;
}

.newsletter-box{

    max-width:900px;

    margin:auto;

    background:#f8fafc;

    border-radius:24px;

    padding:60px;
}

.newsletter-form{

    margin-top:30px;

    display:flex;

    gap:12px;
}

.newsletter-form input{

    flex:1;

    padding:16px;

    border:1px solid #d1d5db;

    border-radius:12px;
}

.newsletter-form button{

    padding:16px 24px;

    border:none;

    background:#2563eb;

    color:white;

    border-radius:12px;

    cursor:pointer;
}

.ks-footer{

    margin-top:80px;

    background:#0f172a;

    color:white;

    padding:60px 24px 30px;
}

.footer-container{

    max-width:1280px;

    margin:auto;

    display:grid;

    grid-template-columns:
    2fr
    1fr
    1fr;

    gap:40px;
}

.footer-container ul{

    list-style:none;
}

.footer-container li{

    margin-bottom:10px;
}

.footer-bottom{

    max-width:1280px;

    margin:40px auto 0;

    padding-top:20px;

    border-top:1px solid rgba(255,255,255,.15);
}