/* globais */

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --amarelo:hsl(47, 88%, 63%);
    --branco:hsl(0, 0%, 100%);
    --cinza-medio:hsl(0, 0%, 42%);
    --cinza-escuro:hsl(0, 0%, 7%);

    /* fontes */

    --fs-xl: clamp(1.25rem, 2vw, 1.5rem);
    --fs-lg: clamp(0.875rem, 2vw, 1rem);
    --fs-md: clamp(0.75rem, 2vw, 0.875rem);

}

body {
    background-color: var(--amarelo);
    font-family: "Figtree", sans-serif;
    max-width: 90rem;
    margin: 0 auto;
}

/* textos */

.g-text {
    font-size: var(--fs-xl);
}

.m-text {
    font-size: var(--fs-lg);
}

.p-text {
    font-size: var(--fs-md);
}

/* mobile-first */

.sr-only {
    position: absolute;
    width: 0.625rem;
    height: 0.625rem;
    padding: 0;
    margin: -0.625rem;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

article {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

.container-card {
    max-width: 20.31rem;
    background-color: var(--branco);
    display: flex;
    flex-direction: column;
    padding: 1.5625rem;
    gap: 0.9375rem;
    border-radius: 20px;
    border: 1px solid var(--cinza-escuro);
    box-shadow: 8px 8px 0 var(--cinza-escuro);  
}

.img-principal {
    max-height: 12.5rem;
    width: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.caption-2{
    background-color: var(--amarelo);
    color: var(--cinza-escuro);
    font-weight: 800;
    padding: 0.375rem 0.75rem;
    border-radius: 4px;
    width: fit-content;
}

.data {
    font-weight: 500;
    color: var(--cinza-escuro);
}


.link-card{
    font-weight: 800;
    color: var(--cinza-escuro);
    text-decoration: none;
    cursor: pointer;
}

.link-card:hover{
    color: var(--amarelo);
}

.link-card:focus{
    color: var(--amarelo);
}

.link-card:focus-visible{
    outline: 0.125rem solid var(--amarelo);
    outline-offset: -0.125rem;
}






.description-card{
    color: var(--cinza-medio);
    font-weight: 500;
    line-height: 1.6;
}

.tech {
    display: flex;
    gap: 0.625rem;
    align-items: center;
}

.img-tech {
    width: 2rem;
    height: 2rem;
}

.span-tech {
    font-weight: 800;
    color: var(--cinza-escuro);
}

/* telas maiores entre 768 e 1440px */

@media (min-width: 48rem)  {

    .container-card {
        max-width: 25rem;
    }


}








