p, em, ul {
    margin: 0;
}

.header h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: 0;
    line-height: 1.2;
}

.header.title {
    margin-bottom: 1.5rem;
}

.header.title::before {
    content: "";
    display: block;
    height: 6px;
    border: 0;
    border-top: 6px solid black; /* Specify the color */
    margin: .25em 0 .125em 0;
    padding: 0;
    opacity: 1.0;
    width: 100%; /* Ensure it spans the width of the parent */
}

.header.title h1 {
    font-weight: bolder !important;
    font-size: calc(1.375rem + 1.5vw);
}

@media (min-width: 1200px) {
    .header.title h1 {
        font-weight: bolder !important;
        font-size: 2.5rem;
    }
}

.header.section {
    margin-top: 3rem;
    margin-bottom: 1.5rem;
}

.header.section::before {
    content: "";
    display: block;
    height: 4px;
    border: 0;
    border-top: 4px solid black;
    margin: .25em 0 .125em 0;
    padding: 0;
    opacity: 1.0;
    width: 100%; /* Ensure it spans the width of the parent */
}

.header.section h2 {
    font-weight: bold !important;
    font-size: calc(1.275rem + 0.3vw);
}

@media (min-width: 1200px) {
    .header.section h2 {
        font-size: 1.5rem;
    }
}

.header.subsection {
    margin-top: 3rem;
    margin-bottom: 1.5rem;
}

.header.subsection::before {
    content: "";
    display: block;
    height: 2px;
    border: 0;
    border-top: 2px solid black;
    margin: .25em 0 .125em 0;
    padding: 0;
    opacity: 1.0;
    width: 100%; /* Ensure it spans the width of the parent */
}

.header.subsection h3 {
    font-weight: bold !important;
    font-size: 1.25rem;
}

.accordion-body {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

hr.horizontal-rule-extraheavy {
    display: block;
    height: 6px;
    border: 0;
    border-top: 6px solid;
    margin: .25em 0 .125em 0;
    padding: 0;
    opacity: 1.0;
}

hr.horizontal-rule-heavy {
    display: block;
    height: 4px;
    border: 0;
    border-top: 4px solid;
    margin: .25em 0 .125em 0;
    padding: 0;
    opacity: 1.0;
}

hr.horizontal-rule-medium {
    display: block;
    height: 2px;
    border: 0;
    border-top: 2px solid;
    margin: .25em 0 .125em 0;
    padding: 0;
    opacity: 1.0;
}