* {
    box-sizing: border-box;
}

body {
    font-family: 'Roboto', sans-serif; /* Use the modern Roboto font */
    margin: 0;
    padding: 0;
    background-color: #f9f9f9; /* Light background */
    color: #333;
}

header {
    background: linear-gradient(135deg, #ffb3d9, #ffffff); /* Lighter pink to white gradient header */
    color: #333; /* Darker text for better contrast */
    padding: 20px;
    text-align: center;
    border-bottom: 5px solid #ffb3d9; /* Bottom border */
}

h1 {
    margin: 0;
}

input[type="text"] {
    width: 90%; /* Full width on mobile */
    max-width: 400px; /* Max width for larger screens */
    padding: 10px;
    border: none;
    border-radius: 25px; /* Rounded input */
    margin-top: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

main {
    padding: 20px;
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); /* Responsive grid */
    gap: 20px;
}

.card {
    background: linear-gradient(135deg, #ffb3d9, #ffffff); /* Lighter pink to white gradient for cards */
    padding: 15px;
    border-radius: 20px; /* Rounded corners */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    cursor: pointer; /* Change cursor to pointer */
    text-decoration: none; /* Remove underline from link */
    position: relative;
}

.card:hover {
    transform: translateY(-5px); /* Slight lift on hover */
}

.tool-logo {
    width: 80px; /* Set a fixed width for logos */
    height: auto;
    margin-bottom: 10px;
}

.tool-name {
    font-size: 1.2em;
    font-weight: 700; /* Use bold weight */
    color: #333; /* Darker text for better contrast */
}

.tool-description {
    color: #555; /* Darker color for description */
    flex-grow: 1;
    margin: 10px 0;
}

footer {
    text-align: center;
    padding: 20px;
    background: linear-gradient(135deg, #ffb3d9, #ffffff); /* Lighter pink to white gradient footer */
    color: #333; /* Darker text for better contrast */
}

/* Mobile responsiveness */
@media (max-width: 600px) {
    input[type="text"] {
        width: 90%; /* Increase width for mobile */
    }

    .tool-logo {
        width: 60px; /* Smaller logo on mobile */
    }

    .tool-name {
        font-size: 1em; /* Slightly smaller font size */
    }

    .tool-description {
        font-size: 0.9em; /* Smaller description font size */
    }

    header {
        padding: 15px; /* Reduce padding for mobile */
    }

    .grid-container {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); /* Adjust grid for smaller screens */
    }
}