main > div {
    max-width: 100%;
    width: 100%;
}

#my_button > div > img {
    border-radius: var(--border-radius);
}

#buttons {
    margin-top: var(--padding-big);
    flex-grow: 1;
    height: min-content;
}

#buttons,
#my_button > div {
    display: grid;
    gap: var(--padding-big);
    grid-template-columns: repeat(3, 1fr);
}

main a {
    position: relative;
    display: block;
    box-sizing: border-box;
    text-decoration: none;
    overflow: hidden;
    border-radius: var(--border-radius);
    color: var(--prismite-fg) !important;
}

main a > .icon > div {
    width: 1em;
    height: 1em;
    background-color: var(--prismite-fg);
    mask-image: url("/assets/svg/external.svg");
    mask-size: cover;
}

main a > img,
#my_button > div > img {
    width: 100%;
    display: block;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: -moz-crisp-edges;
    image-rendering: crisp-edges;
}

main a > .icon,
main a > .link {
    --color: var(--prismite-bg);
    background-color: var(--color);
    position: absolute;
    transition: transform 0.4s var(--easing);
}

main a > .link {
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 100%);
    font-size: 0.8em;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    border: var(--prismite-border) solid var(--border-width);
    border-bottom: none;
    padding: var(--padding);
}

main a > .icon {
    top: 50%;
    right: -0.5px;
    transform: translate(100%, -50%);
    padding: var(--padding-big);
    border-radius: var(--border-radius) 0 0 var(--border-radius);
    border: var(--prismite-border) solid var(--border-width);
    border-right: none;
}

@media (hover: hover) {
    main a:hover > .link {
        transform: translate(-50%, 0);
    }

    main a:hover > .icon {
        transform: translate(0, -50%);
    }
}
