/* Maintain normal margins for headers */
.info-content h1,
.info-content h2,
.info-content h3,
.info-content h4,
.info-content h5 {
    margin: 1em 0;
}

/* Reduce margins for all other elements */
.info-content p,
.info-content ul,
.info-content ol,
.info-content li,
.info-content strong,
.info-content em {
    margin: 0.5em 0;
}

/* Adjust nested list margins */
.info-content ul ul,
.info-content ul ol,
.info-content ol ul,
.info-content ol ol {
    margin: 0.25em 0;
}

/* Adjust list item spacing */
.info-content li {
    margin: 0.25em 0;
}

/* Maintain paragraph spacing after headers */
.info-content h1 + p,
.info-content h2 + p,
.info-content h3 + p,
.info-content h4 + p,
.info-content h5 + p {
    margin-top: 0.5em;
}

.info-content br {
    display: block;
    margin: 0.5em 0; /* Half of the default 1em spacing */
    content: "";
}

/* Style for collapsible sections */
.collapsible-section {
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background-color: #f8f9fa;
}

.collapsible-header {
    padding: 0.5em 1em;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #f1f3f4;
}

.collapsible-header:hover {
    background-color: #e8eaed;
}

.collapsible-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out, padding 0.3s ease-in-out;
    padding: 0 1em;
}

.collapsible-content.expanded {
    max-height: 4000px; /* Large enough to contain content */
    padding: 1em;
}

.collapsible-icon {
    font-size: 1.2em;
    transition: transform 0.3s ease;
}

.collapsible-icon.expanded {
    transform: rotate(180deg);
}