.info-box {
    padding: 1.5rem;               /* Spacing inside the box */
    text-align: center;             /* Centers both h6 and paragraph text */
    max-width: 600px;               /* Optional: constrain width */
    margin: 0 auto;                 /* Center box horizontally in parent */
}

.info-box h6 {
    /* Space between title and paragraph -------------> margin-bottom: 1rem; */
    font-size: clamp(1rem, 2.5vw, 1.25rem); /* Responsive font size */
    font-weight: 600;
}

.info-box p {
    text-align: justify;    /* Justify the paragraph text */
    margin: 0;              /* No extra margin, keeps height consistent */
}

/* Companion block animations */
.companion-block {
    animation: slideIn 0.4s ease-out forwards;
    opacity: 0;
}

.companion-block.show {
    opacity: 1;
    animation: slideIn 0.4s ease-out forwards;
}

.companion-block.removing {
    animation: slideOut 0.4s ease-out forwards;
    opacity: 0;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideOut {
    from {
        opacity: 1;
        transform: translateY(0);
    }
    to {
        opacity: 0;
        transform: translateY(-20px);
    }
}
