/* Reset */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    font-size:16px;
}

body{
    min-height:100%;
    width:100%;
    overflow-x:hidden;
}

/* Responsive container */
.container{
    width:min(92%,1200px);
    margin:auto;
    padding:clamp(20px,4vw,60px);
}

/* Responsive typography */
.logo{
    font-size:clamp(2rem,6vw,4rem);
}

h1{
    font-size:clamp(2rem,5vw,4.5rem);
}

h2{
    font-size:clamp(1.2rem,3vw,2rem);
}

p{
    font-size:clamp(1rem,2vw,1.2rem);
    line-height:1.8;
}

/* Feature cards */
.features{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:20px;
    margin-top:40px;
}

.feature{
    padding:20px;
    border-radius:16px;
}

/* Responsive button */
.btn{
    padding:16px 32px;
    font-size:clamp(1rem,2vw,1.1rem);
}

/* Large Desktop */
@media (min-width:1600px){
    .container{
        max-width:1400px;
    }
}

/* Tablet */
@media (max-width:768px){
    .features{
        grid-template-columns:repeat(2,1fr);
    }
}

/* Mobile */
@media (max-width:480px){
    .features{
        grid-template-columns:1fr;
    }

    .btn{
        width:100%;
    }
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    min-height: 100%;
    overflow-x: hidden;
}

body {
    min-height: 100vh;
}