.plant-array {
    max-width: 1100px;
    margin-inline: auto;
    padding: 1.25rem 1rem 2rem;
    border: 0;
    box-shadow: none;
}

.array-title {
    text-align: center;
    font-size: clamp (1.25rem, 2.2vw 1.6rem);
    margin: .25rem 0 .25rem;
}

.array-title span {
    margin-right: .4rem;
}

.intro-text {
    text-align: center;
    opacity: .85;
    margin: 0 0 1.25rem;
}

.card {
    background: var(--card);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: .9rem 9rem 1rem;
    width: 100%;
    max-width: 210px;
    text-align: center;
    font-family: monospace;
    color: var(--text);
    transition: transform .15s ease, box-shadow .15s ease;
}

.card-image {
    width: 84px;
    display: block;
    margin-inline: auto;
    margin-bottom: 0.5rem;
    image-rendering: pixelated;
    image-rendering: crisp-edges;
    display: block;
    margin-inline: auto;
}

.card-title {
    font-size: .96rem;
    line-height: 1.25;
    color: var(--soft);
    margin: 0.25rem 0;
}

.card-details {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0;
    text-align: center;
    font-size: 0.85rem;
    color: var(--soft);
    line-height: 1.5;
}

.card-details li {
    margin-bottom: 0.25rem;
}

.card-grid {
    display: flex;
    flex-wrap: wrap;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.5rem;
    justify-items: center;
    margin: 2rem auto;
    max-width: 1000px;
}

.tag {
    padding: 0.2rem 0.6rem;
    border-radius: 8px;
    font-size: 0.75rem;
    margin: 0.2rem;
    color: var(--text);
}

.tag.indoors {
    background: var(pink);
}

.tag.outdoors {
    background: var(--sage);
}

.tag.easy {
    background: var(--coral);
}

.tag.annual {
    background: var(--sage);
}

.tag.nightshade {
    background: var(--soft)
}


@media (max-width: 520px) {
    .card-grid {
        grid-template-columns: 1fr;
        justify-items: center;
    }
}
