:root{

    --color-primary: oklch(65% 0.15 240);
    --color-secondary: oklch(25% 0.05 240);
    --color-text: oklch(20% 0.02 0);
    --color-light: oklch(95% 0.01 0);
    --color-cards: oklch(0.3874 0 27.11);
    --line-height: 1.6;
}




@media (min-width: 600px) {


    header{
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .header-info {
        margin-block-end: 0;
    }

    header nav ul{
        flex-direction: row;
        gap: 1.5rem;
    }

    .cards li{
        flex: 1 1 18rem;

        .my-image {
            width: 20rem;
        }
    }

    @media (min-width: 1200px) {
        .container {
                max-width: 80rem;
                margin: 0 auto;
                padding-inline: 1rem;
        }
    }



    *{
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }


    body{
        font-family: Book Antiqua, sans-serif;
        line-height: var(--line-height);
        color: var(--color-text);
        background-color: var(--color-light);


    }

    .container{
        max-width: 80rem;
        margin: 0 auto;
        padding-inline: 1rem;
    }


    header{
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding-block: 1rem;
        background-color: var(--color-secondary);
        color: var(--color-light);
    }

    .header-info {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        margin-block-end: 1rem;
    }

    .header-logo{
        height: 3rem;
    }

    header nav ul{
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 1rem;
        padding: 0;
    }

    header nav a{
        color: var(--color-light);
        text-decoration: none;
        font-weight: bold;
        transition: color 0.3s ease;
    }

    header nav a:hover{
        color: var(--color-primary);
    }

    main section{
        padding-block: 2rem;
    }

    .button {
        display: inline-block;
        padding: 0.75rem 1.5rem;

        background-color: var(--color-light);
        color: var(--color-text);
        border: 2px solid var(--color-text);

        border-radius: 0.5rem;
        cursor: pointer;
        text-align: center;
        text-decoration: none;
        font-weight: bold;
        transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, transform 0.1s ease, box-shadow 0.3s ease;


        font-size: 1rem;
        margin-block-start: 1rem;
    }


    .button:hover,
    .button:focus {
        background-color: var(--color-secondary);
        color: var(--color-light);
        border-color: var(--color-secondary);

        transform: translateY(-2px);
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }

    .button:active {
        transform: translateY(0);
        box-shadow: none;
    }

    h1, h2, h3{
        color: rebeccapurple;
        margin-block-end: 0.5rem;
    }

    h1{
        font-size: 2.5rem;
        font-weight: normal;
    }

    h2{
        font-size: 1.5rem;
    }

    h3{
        font-size: 1.2rem;
        color: var(--color-text);
        font-weight: bold;
    }


    .my-image {
        min-width: 30rem;
        width: 80rem;
        height: auto;
        display: block;
        margin-block-start: 1rem;
        margin-inline: auto;
    }


    .my-image{
        height: 50rem;
        width: 20%;
    }

    .read-more {
        display: inline-block;
        margin-block-start: 1rem;
        color: var(--color-secondary);
        text-decoration: none;
        font-weight: bold;
    }

    .read-more:hover{
        text-decoration: underline;
    }


    .social-media{
        text-align: center;
    }

    .social-links{
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 2rem;
        margin-block-start: 1rem;
    }

    .social-item{
        display: flex;
        flex-direction: column;
        align-items: center;
        text-decoration: none;
        color: var(--color-text);
    }

    .social-item img{
        height: 2rem;
        width: 2rem;
        margin-block-end: 0.2rem;
        transition: transform 0.3s ease;
    }

    .social-item:hover img{
        transform: scale(1.1);
    }




    .cards{
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap:wrap;
        gap: 2rem;
    }

    .cards li{
        background-color: lightslategrey;
        border-radius: 1rem;
        position: relative;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        flex: 1 1 18rem;
        box-shadow: 0 0 .2rem oklch(0 0 0 / .2), 0 0 2rem oklch(0 0 0 / .1);
        transition: background-color 0.3s ease, box-shadow 0.3s ease;
    }


    .cards li:hover{
        background-color: oklch(0.95 0.05 250);
        box-shadow: 0 0 20px oklch(0.40 0.14 12 / 0.5);
    }

    .cards img{
        display: block;
        width: 100%;
        height: 200px;
        border-radius: 1rem 1rem 0 0;
        object-fit: cover;
    }

    .cards .content{
        padding: 1rem;
        flex-grow: 1;
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .cards h3{
        display: block;
        font-size: 1.25rem;
    }

    .cards p {
        flex-grow: 1;
        margin: 0;
    }

    .cards a{
        text-decoration: underline;
    }

    .cards .overlay-link {
        position: absolute;
        inset: 0;
        z-index: 1;
        opacity: 0;
    }

    .cards a:not(.overlay-link) {
        color: black;
        text-decoration: underline;
    }
}



footer{
    text-align: center;
    padding: 1rem;
    background-color: var(--color-secondary);
    color: var(--color-light);
    margin-block-start: 2rem;
}



@media (min-width: 600px) {


    header {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .header-info {
        margin-block-end: 0;
    }

    header nav ul {
        flex-direction: row;
        gap: 1.5rem;
    }

    .cards li {
        flex: 1 1 18rem;

        .my-image {
            width: 20rem;
        }
    }

    @media (min-width: 1200px) {
        .container {
            padding-inline: 0;
        }
    }
}