.page-portal header,
.single-review header,
.page-reviews header,
.page-services header,
.page-intelligence header {
    display: none;
}

.page-portal .site-main,
.single-review .site-main,
.page-reviews .site-main,
.page-services .site-main,
.page-intelligence .site-main {
    display: flex;
    min-height: 100vh;
}

.page-portal .site-footer,
.single-review .site-footer,
.page-reviews .site-footer,
.page-services .site-footer,
.page-intelligence .site-footer {
    margin: 0;
}

.portal {
    display: flex;
    flex: 1 1 0;
}

.portal .portal__menu {
    background-color: #fff;
    width: 16rem;
    border-right: 1px solid var(--line-grey);
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: column;
}

.portal .portal__header {
    padding: var(--space-m);
}

.portal .portal__header h1 {
    font-size: var(--fs-2);
}

.portal .portal__nav {
    display: flex;
    flex-direction: column;
    justify-content: space-between;    
    height: 100%;
}

.portal nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    border-top: 1px solid var(--line-grey);
}

.portal nav ul li {
    border-bottom: 1px solid var(--line-grey);
}

.portal nav ul li:hover {
    background-color: var(--bg-blue);
}

.portal nav ul li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    padding: var(--space-xs) var(--space-m);
    font-size: var(--fs--1);
}

.portal nav ul li a.portal-current {
    background-color: var(--bg-blue);
}

/* Portal Content */

.portal__wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--space-m);
}

.portal__content {
    padding: var(--space-l) var(--space-xl);
    flex: 1 1 0;
}

.portal__overview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--space-m);
}

.portal-tile {
    background: #fff;
    border: 1px solid var(--line-grey);
    border-radius: .5rem;
    box-shadow: var(--shadow);
    padding: var(--space-m);
}

.portal-tile p {
    margin: 0;
}

.portal__overview .portal-tile .portal-tile__data {
    font-size: var(--fs-2);
    margin-block: var(--space-m);
    color: var(--primary);
}

.portal__overview .portal-tile a {
    display: flex;
    justify-content: space-between;
    align-items: center ;
    font-size: var(--fs--1);
    width: 100%;
    padding: var(--space-2xs) 0;
    transition: .2s;
    text-decoration: none;
}

.portal__overview .portal-tile a:hover {
    background-color: var(--bg-blue);
    border-radius: .25rem;
    padding-inline: var(--space-xs);
}

/* Reviews Table */

.reviews-table,
.services-table {
    border-collapse: collapse;
    width: 100%;
    text-align: left;
    font-size: var(--fs--1);
    margin-top: var(--space-s);
}

.reviews-table tr,
.services-table tr {
    border-bottom: 1px solid var(--line-grey);
}

.reviews-table td,
.services-table td {
    padding-block: var(--space-xs);
}

.sentiment-positive span,
.sentiment-neutral span,
.sentiment-negative span {
    padding: var(--space-3xs) var(--space-2xs);
    border-radius: 999px;
}

.sentiment-positive span {
    background-color: rgb(220 252 231 / 1);
    color: rgb(21 128 61 / 1);
}

.sentiment-neutral span {
    background-color: rgb(243 244 246 / 1);
    color: rgb(55 65 81 / 1);
}

.sentiment-negative span {
    background-color: rgb(254 226 226 / 1);
    color: rgb(185 28 28 / 1);
}

/* Single Review Page */

.review-meta {
    background: var(--bg-blue);
    padding: var(--space-xs);
    border-radius: .5rem;
    display: flex;
    gap: var(--space-m);
}

.review-data__question {
    padding-block: var(--space-s);
    border-bottom: 1px solid var(--line-grey);
}

.review-content__questions p {
    margin-bottom: var(--space-s);
}

.review-summary {
    background-color: var(--bg-blue);
    padding: var(--space-s);
    border-radius: .5rem;
}

.review-summary ol li {
    margin-bottom: 1rem;
}

.summary-disclaimer {
    font-size: var(--fs--1);
    line-height: var(--space-s);
    padding-top: var(--space-m);
}

/* Reviews Page */

.portal-pagination {
    font-size: var(--fs--1);
    display: flex;
    align-items: center;
    gap: var(--space-2xs);
}

.portal-pagination span,
.portal-pagination a {
    display: block;
    border: 1px solid var(--line-grey);
    border-radius: .25rem;
    padding-inline: var(--space-2xs);
    text-decoration: none;

}

.review-table-buttons {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.reviews-table-container .btn-group {
    justify-content: flex-end;
}

/* Portal Search */

.portal__search {
    display: block;
}

.portal__form {
    border-radius: .5rem;
    margin-bottom: var(--space-m);
    background-color: #fff;
}

.portal__filters {
    display: flex;
    gap: var(--space-s);
    align-items: center;
}

.portal__filters > div {
    flex: 1 1 0;
}

.portal__filters > .search-filter-field--control-type-submit {
    flex: 0 1 0;
}

.search-filter-field__input {
    border: 1px solid var(--line-grey);
}

.search-filter-field__input:hover,
.search-filter-field__input:focus,
.search-filter-field__input:active {
    border-color: var(--body);  
}