@font-face {
    font-family: 'Figtree';
    src: url('assets/fonts/static/Figtree-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Figtree';
    src: url('assets/fonts/static/Figtree-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Figtree';
    src: url('assets/fonts/Figtree-VariableFont_wght.ttf') format('truetype');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --clr-yellow: hsl(47, 88%, 63%);
    --clr-white: hsl(0, 0%, 100%);
    --clr-gray-500: hsl(0, 0%, 42%);
    --clr-gray-950: hsl(0, 0%, 7%);

    --font-body: 'Figtree', sans-serif;
    --font-size-body: 16px;
    --fw-medium: 500;
    --fw-bold: 800;
}

* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    font-family: var(--font-body), sans-serif;
}

body {
    padding: 1em;
    background-color: var(--clr-yellow);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    font-size: var(--font-size-body);
    color: var(--clr-gray-950);
}

main {
    padding: 1em;
    display: flex;
    flex-direction: column;
    gap: 1em;
    background-color: var(--clr-white);
    border-radius: 2em;
    max-width: 24em;
    border: 1px solid var(--clr-gray-950);
    box-shadow: 8px 8px 0 var(--clr-gray-950);
}

.main-image img {
    width: 100%;
    border-radius: 1em;
}

.type {
    background-color: var(--clr-yellow);
    padding: 0.5em;
    border-radius: 0.5em;
    width: fit-content;
    font-weight: var(--fw-bold);
}

.h {
    margin: 0.5em 0;
    font-weight: var(--fw-bold);
    cursor: pointer;
    width: fit-content;
    font-size: calc(1.3 * var(--font-size-body));
}

.h:hover {
    color: var(--clr-yellow);
}

.p {
    color: var(--clr-gray-500);
}

.publisher {
    display: flex;
    flex-direction: row;
    font-weight: var(--fw-bold);
    align-items: center;
}

.avatar {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 0.5em;
}

.attribution {
    margin: 1em 0;
}