.cb--results-page.details .choices {
    flex: 0.73;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px 0;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    padding: 30px 0 0;
    border-style: solid;
    border-width: 1px;
    border-color: var(--cb-color-2-lighter);
    border-radius: var(--cb-border-radius-large);
    background-color: var(--cb-white);
}

.cb--results-page.details .summary {
    position: relative;
    flex: 0.29;
    display: flex;
    flex-direction: column;
    align-self: stretch;
    gap: 15px 0;
    color: var(--cb-color-3);
}

@container cb--results (max-width: 1150px) {
    .cb--results-page.details .choices {
        flex: 1;
    }
    .cb--results-page.details .summary {
        flex: 0 0 327px;
    }
}
@container cb--results (max-width: 900px) {
    .cb--results-page.details .choices {
        flex: 1;
        padding: 20px 0;
    }
    .cb--results-page.details .summary {
        flex: 1;
    }
}

/* ------------------------------- */
/* ------ choices & answers ------ */
/* ------------------------------- */

.cb--results-page.details .choice {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0 0 20px;
    padding: 0 25px;
    color: var(--cb-color-3);
}
.cb--results-page.details .choice h3 {
    font-size: var(--font-size-medium);
}
.cb--results-page.details .choice .explainer {
    margin: 0 0 10px;
    color: var(--cb-link-color-1);
    font-size: var(--font-size-smaller);
    text-decoration: underline;
    cursor: pointer;
    transition: color .2s ease;
}
.cb--results-page.details .choice .holder {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 5px;
    width: 100%;
}
.cb--results-page.details .answer {
    overflow: hidden;
    box-sizing: border-box;
    width: 100%;
    padding: 0;
    border-style: solid;
    border-width: 1px;
    border-color: var(--cb-color-2-lighter);
    border-radius: var(--cb-border-radius-medium);
    font-size: var(--font-size-small);
    transition: border-color .2s linear, height 0.2s ease-out, max-height 0.2s ease-out;
}
.cb--results-page.details .answer.small {
    height: auto;
    flex: 0 0 calc((100% - 10px) / 2);
}
.cb--results-page.details .answer:not(.not-editable):has(.label:hover) {
    border-color: var(--cb-cta-btn-color-1-light);
}
.cb--results-page.details .answer.selected {
    border-width: 2px;
    border-color: var(--cb-cta-btn-color-1);
}
.cb--results-page.details .answer.selected:not(.not-editable):has(.label:hover) {
    border-color: var(--cb-cta-btn-color-1-dark);
}
.cb--results-page.details .answer.not-editable {
    border-color: var(--cb-grey-extra-lighter);
}
.cb--results-page.details .choice.packages .answer.not-editable {
    max-height: 50px;
}
.cb--results-page.details .answer.included {
    border-color: var(--cb-cta-btn-color-1-lighter);
}
.cb--results-page.details .answer .label-holder {
    margin: 0;
    padding: 0;
    background-color: var(--cb-white);
    transition: background-color .2s linear;
}
.cb--results-page.details .answer.not-editable .label-holder {
    background-color: var(--cb-grey-extra-lighter);
}
.cb--results-page.details .answer.included .label-holder {
    background-color: var(--cb-cta-btn-color-1-lighter);
}
.cb--results-page.details .answer .label {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 0 3px;
    margin: 0 20px;
    padding: 19px 0;
    border-style: solid;
    border-width: 0 0 0;
    border-color: var(--cb-color-2-lighter);
    cursor: pointer;
    user-select: none;
    transition: border-color .2s linear;
}
.cb--results-page.details .answer:not(.small):not(.not-editable):not(.included) .label {
    border-width: 0 0 1px;
}
.cb--results-page.details .answer.selected:not(.not-editable) .label {
    font-weight: bold;
}
.cb--results-page.details .answer.not-editable .label {
    cursor: auto;
}
.cb--results-page.details .choice.packages .answer.not-editable .label {
    padding: 14px 0;
}
.cb--results-page.details .answer.small .label {
    padding: 14px 0;
}
.cb--results-page.details .answer.full-height .label {
    padding: 12px 0;
}
.cb--results-page.details .answer .label > div {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0 10px;
}
.cb--results-page.details .answer .label > div.right {
    position: absolute;
    right: 0;
}
.cb--results-page.details .answer .label .tick {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 16px;
    min-height: 16px;
    max-height: 16px;
    width: 16px;
    min-width: 16px;
    max-width: 16px;
    margin: 2px 0;
    border-style: solid;
    border-color: var(--cb-color-3-lighter);
    border-width: .5px;
}
.cb--results-page.details .answer[answer-type="single"] .label .tick {
    border-radius: 50%;
}
.cb--results-page.details .answer[answer-type="multiple"] .label .tick {
    border-radius: var(--cb-border-radius-mini);
}
.cb--results-page.details .answer.selected .label .tick {
    border-color: var(--cb-cta-btn-color-1);
    background-color: var(--cb-cta-btn-color-1);
}
.cb--results-page.details .answer.selected.not-editable .label .tick {
    border-color: var(--cb-grey-lighter);
    background-color: var(--cb-grey-lighter);
}
.cb--results-page.details .answer.selected.included .label .tick {
    border-color: var(--cb-cta-btn-color-1-light);
    background-color: var(--cb-cta-btn-color-1-light);
}
.cb--results-page.details .answer .label .tick svg {
    display: none;
    width: 12px;
    fill: var(--cb-white);
}
.cb--results-page.details .answer.selected .label .tick svg {
    display: block;
}
.cb--results-page.details .answer .label .price {
    font-size: var(--font-size-small);
}
.cb--results-page.details .answer.included .label .price {
    color: var(--cb-cta-btn-color-1);
    font-weight: bold;
}
.cb--results-page.details .answer svg.chevron {
    display: none;
    width: 12px;
    fill: var(--cb-color-3);
}
.cb--results-page.details .answer.description-available svg.chevron {
    display: flex;
}
.cb--results-page.details .answer.opened svg.chevron {
    transform: rotate(180deg);
}
.cb--results-page.details .choice.packages .answer.answer.not-editable svg.chevron {
    display: none;
}
.cb--results-page.details .answer:not(:has(.information)) svg.chevron {
    display: none;
}
.cb--results-page.details .answer .information {
    padding: 7.5px 20px 15px;
}
.cb--results-page.details .answer h4 {
    margin: 10px 0 5px;
}

.cb--results-page.details .choice.pickup-office .answer,
.cb--results-page.details .choice.return-office .answer {
    height: 150px;
}
.cb--results-page.details .choice.pickup-office .answer .text,
.cb--results-page.details .choice.return-office .answer .text {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: 2.5px 8px;
}
.cb--results-page.details .choice.pickup-office .answer .text div,
.cb--results-page.details .choice.return-office .answer .text div {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0 5px;
}
.cb--results-page.details .choice.pickup-office .answer .text div > span,
.cb--results-page.details .choice.return-office .answer .text div > span {
    font-size: var(--font-size-smaller);
}
.cb--results-page.details .choice.pickup-office .answer .text div > span:nth-of-type(1),
.cb--results-page.details .choice.return-office .answer .text div > span:nth-of-type(1) {
    font-weight: bold;
}
.cb--results-page.details .choice.pickup-office .answer .text svg,
.cb--results-page.details .choice.return-office .answer .text svg {
    width: 28px;
    fill: var(--cb-color-3-light);
}

.cb--results-page.details .choice.packages .answer .text div {
    display: flex;
    flex-direction: row;
    font-weight: bold;
}
.cb--results-page.details .choice.packages .answer .text ul {
    margin: 2px 0;
    list-style-type: disc;
}
.cb--results-page.details .choice.packages .answer.not-editable .text ul {
    display: none;
}
.cb--results-page.details .choice.packages .full-coverage-label,
.cb--results-page.details .choice.packages .free-driver-label,
.cb--results-page.details .choice.packages .free-fuel-label {
    margin-left: 10px;
    padding: 2px 8px;
    border-radius: var(--cb-border-radius-medium);
    font-size: var(--font-size-smaller);
    font-weight: normal !important;
}
.cb--results-page.details .choice.packages .full-coverage-label {
    background-color: var(--cb-cta-btn-color-1);
    color: var(--cb-white);
}
.cb--results-page.details .choice.packages .free-driver-label {
    background-color: var(--cb-color-3);
    color: var(--cb-white);
}
.cb--results-page.details .choice.packages .free-fuel-label {
    background-color: var(--cb-color-gold-dark);
    color: var(--cb-white);
}

.cb--results-page.details .choice .answer-add {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px 0;
    width: 100%;
    padding: 4px 10px;
    border-style: solid;
    border-width: 1px;
    border-color: var(--cb-color-2-lighter);
    border-radius: var(--cb-border-radius-medium);
    cursor: pointer;
    user-select: none;
    transition: border-color .2s linear, height 0.2s ease-out;
}
.cb--results-page.details .choice .answer-add:hover {
    border-color: var(--cb-cta-btn-color-1-light);
}
.cb--results-page.details .choice .answer-add svg {
    width: 18px;
}
.cb--results-page.details .choice .answer-add span {
    font-size: var(--font-size-smaller);
}

.cb--results-page.details .choice .no-answers {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 5px 0;
    width: 100%;
    padding: 10px 10px;
    border-style: solid;
    border-width: 1px;
    border-color: var(--cb-grey-extra-lightest);
    border-radius: var(--cb-border-radius-medium);
    background-color: var(--cb-grey-extra-lightest);
    user-select: none;
}
.cb--results-page.details .choice .no-answers span {
    font-size: var(--font-size-smaller);
}

.cb--results-page.details .choice .answer-placeholder {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 35px 20px;
    box-sizing: border-box;
    border-style: solid;
    border-width: 1px;
    border-color: var(--cb-color-2-lighter);
    border-radius: var(--cb-border-radius-medium);
    background: repeating-linear-gradient(
        135deg,
        var(--cb-color-2-lightest),
        var(--cb-color-2-lightest) 6px,
        transparent 10px,
        transparent 20px
    );
    user-select: none;
}
.cb--results-page.details .choice .answer-placeholder div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px 0;
    width: 500px;
    max-width: 80%;
    padding: 25px;
    background-color: var(--cb-white);
    border-radius: var(--cb-border-radius-small);
}
.cb--results-page.details .choice .answer-placeholder svg {
    width: 50px;
    fill: var(--cb-color-3-light);
}
.cb--results-page.details .choice .answer-placeholder span {
    font-size: var(--font-size-smaller);
    text-align: center;
}

@container cb--results (max-width: 900px) {
    .cb--results-page.details .choice {
        padding: 0 15px;
    }
    .cb--results-page.details .answer .label {
        margin: 0 10px;
        padding: 13px 0;
    }
}
@container cb--results (max-width: 575px) {
    .cb--results-page.details .choice.packages .answer .right {
        align-self: flex-start;
        font-weight: bold;
    }
    .cb--results-page.details .answer.small {
        flex: 0 0 100%;
    }
    .cb--results-page.details .answer.small .label {
        padding: 8px 0;
    }
}


/* ------------------------------- */
/* ------ price & cta button ----- */
/* ------------------------------- */

.cb--results-page.details .book {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 25px 0 0;
    padding: 30px;
    background-color: var(--cb-color-2-lightest);
    color: var(--cb-color-3);
}
.cb--results-page.details .book .title,
.cb--results-page.details .book .price {
    display: flex;
    flex-direction: column;
}
.cb--results-page.details .book .title {
    flex: 1;
}
.cb--results-page.details .book .main {
    font-size: var(--font-size-larger);
    font-weight: bold;
}
.cb--results-page.details .book .cancellation {
    color: var(--cb-cta-btn-color-1);
    font-size: var(--font-size-smaller);
}
.cb--results-page.details .book .action .sub {
    font-size: var(--font-size-smaller);
    text-align: right;
}
.cb--results-page.details .book .action {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0 20px;
    max-width: 280px;
}
.cb--results-page.details .book .action .button {
    padding: 15px 25px;
    border-width: 0;
    border-radius: var(--cb-border-radius-medium);
    background-color: var(--cb-cta-btn-color-1);
    color: var(--cb-white);
    font-size: var(--font-size-smaller);
    font-weight: bold;
    cursor: pointer;
    transition: background-color .2s ease;
}
.cb--results-page.details .book .action .button:hover {
    background-color: var(--cb-cta-btn-color-1-dark);
}
.cb--results-page.details .book .action .button.disabled {
    background-color: var(--cb-color-2-lighter);
}
.cb--results-page.details .book .action .button.disabled:hover {
    background-color: var(--cb-grey-light);
}
.cb--results-page.details .book .improve {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px 0;
    margin: 15px 0 0;
    width: 100%;
    font-size: var(--font-size-smaller);
}
.cb--results-page.details .book .mobile {
    display: none;
}

@container cb--results (max-width: 900px) {
    .cb--results-page.details .book {
        z-index: 2;
        position: fixed;
        flex-direction: column;
        flex-wrap: unset;
        justify-content: flex-start;
        align-items: center;
        gap: 10px 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: 0;
        padding: 15px 10px;
    }
    .cb--results-page.details .book .title {
        display: none;
    }
    .cb--results-page.details .book .action {
        justify-content: space-between;
        width: 100%;
        max-width: 450px;
    }
    .cb--results-page.details .book .price {
        flex: .65;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 2px 5px;
    }
    .cb--results-page.details .book .button {
        flex: .35;
    }
    .cb--results-page.details .book .price .total {
        width: 100%;
        font-size: var(--font-size-medium-small);
        text-decoration: underline;
    }
    .cb--results-page.details .book .price .main {
        font-size: var(--font-size-medium-small);
    }
    .cb--results-page.details .book .price .sub {
        font-size: var(--font-size-smaller);
    }
    .cb--results-page.details .book .mobile {
        display: flex;
    }
    .cb--results-page.details .book .cancellation {
        max-width: 420px;
        text-align: center;
    }
}


/* ------------------------------- */
/* ----------- summary ----------- */
/* ------------------------------- */

.cb--results-page.details .shopping-summary {
    box-sizing: border-box;
    width: 100%;
    padding: 25px 20px;
    border-radius: var(--cb-border-radius-large);
    background-color: var(--cb-white);
}

.cb--results-page.details .vehicle {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0 0;
    margin: 0 0 15px;
}
.cb--results-page.details .vehicle .agency {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.cb--results-page.details .vehicle .agency h2 {
    display: flex;
    align-items: center;
    margin: 0 0 2.5px;
    font-size: var(--font-size-larger);
    font-weight: bold;
    text-align: left;
    color: var(--cb-color-2-dark);
}
.cb--results-page.details .vehicle .agency img {
    position: absolute;
    right: 0;
    max-width: 75px;
}
.cb--results-page.details .vehicle .cb--rating {
    width: 100%;
}
.cb--results-page.details .vehicle .model {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}
.cb--results-page.details .vehicle .model h2 {
    font-size: var(--font-size-larger);
    font-weight: bold;
}
.cb--results-page.details .vehicle .model h2::first-letter {
    text-transform: uppercase;
}
.cb--results-page.details .vehicle .model span {
    font-size: var(--font-size-smaller);
}
.cb--results-page.details .vehicle .vehicle-info {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
}
.cb--results-page.details .vehicle .image {
    width: 70%;
}
.cb--results-page.details .vehicle .image img {
    width: 100%;
}
.cb--results-page.details .vehicle .capacity {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 0 5px;
    margin: 0 0 10px;
    color: var(--cb-color-3);
    font-size: var(--font-size-smallest);
    font-weight: bold;
}
.cb--results-page.details .vehicle .capacity > * {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 3px 5px;
}
.cb--results-page.details .vehicle .capacity svg {
    margin-right: 5px;
    width: 14px;
    fill: var(--cb-color-3);
}
.cb--results-page.details .vehicle .specs {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 0 5px;
    font-size: var(--font-size-smallest);
    font-weight: bold;
}
.cb--results-page.details .vehicle .spec {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 3px 5px;
    border-radius: var(--cb-border-radius-mini);
    background-color: var(--cb-color-2-lightest);
}
.cb--results-page.details .vehicle .spec.ac::before {
    content: "";
    position: absolute;
    width: 25px;
    height: 2px;
    background: red;
    top: 50%;
    left: 2px;
    transform: rotate(-45deg);
}
.cb--results-page.details .vehicle .spec.ac:has(.ac)::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
}
.cb--results-page.details .vehicle .spec svg {
    width: 18px;
    margin-right: 5px;
    fill: var(--cb-color-3);
}

.cb--results-page.details .shopping-list {
    margin: 25px 0;
    color: var(--cb-color-3);
}
.cb--results-page.details .shopping-list .list-specifics,
.cb--results-page.details .shopping-list .list-items,
.cb--results-page.details .shopping-list .list-total {
    display: flex;
    flex-direction: column;
    gap: 0 0;
    margin: 0 0;
    padding: 5px 0;
}
.cb--results-page.details .shopping-list .list-items {
    border-style: solid;
    border-color: var(--cb-color-3-lighter);
    border-width: 0 0 1px;
}
.cb--results-page.details .shopping-list .list-item {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 10px 0 0;
    font-size: var(--font-size-small);
}
.cb--results-page.details .shopping-list .list-item div::first-letter {
    text-transform: capitalize;
}
.cb--results-page.details .shopping-list .list-item.payment-total {
    font-weight: bold;
}
.cb--results-page.details .shopping-list .list-item.payment-online,
.cb--results-page.details .shopping-list .list-item.payment-local {
    margin: 4px 0 0;
    font-size: var(--font-size-smaller);
}
.cb--results-page.details .shopping-list .list-specifics .list-item {
    flex-direction: column;
}
.cb--results-page.details .shopping-list .list-specifics .list-item > div:nth-of-type(1) {
    margin-bottom: 2px;
    font-weight: bold;
}
.cb--results-page.details .shopping-list .list-item .office {
    display: flex;
    flex-direction: column;
}

.cb--results-page.details .shopping-summary .actions {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: center;
}
.cb--results-page.details .shopping-summary .actions p {
    margin: 0 0 5px;
    color: var(--cb-cta-btn-color-1);
    font-size: var(--font-size-smaller);
}
.cb--results-page.details .shopping-summary .actions .btn {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 0 0 5px;
    padding: 12px 0;
    border-style: solid;
    border-width: 1px;
    border-radius: var(--cb-border-radius-small);
    border-color: var(--cb-cta-btn-color-1);
    background-color: var(--cb-white);
    color: var(--cb-cta-btn-color-1);
    font-size: var(--font-size-smaller);
    font-weight: bold;
    cursor: pointer;
    user-select: none;
    transition: border-color .2s linear, background-color .2s linear, color .2s linear;
}
.cb--results-page.details .shopping-summary .actions .btn.main {
    padding: 11px 0;
    border-color: var(--cb-cta-btn-color-1);
    background-color: var(--cb-cta-btn-color-1);
    color: var(--cb-white);
    font-size: var(--font-size-small);
}
.cb--results-page.details .shopping-summary .actions .btn:not(.main):hover {
    border-color: var(--cb-cta-btn-color-1-dark);
    color: var(--cb-cta-btn-color-1-dark);
}
.cb--results-page.details .shopping-summary .actions .btn.main:hover {
    border-color: var(--cb-cta-btn-color-1-dark);
    background-color: var(--cb-cta-btn-color-1-dark);
}
.cb--results-page.details .shopping-summary .actions .btn.main.disabled {
    border-color: var(--cb-color-2-lighter);
    background-color: var(--cb-color-2-lighter);
}
.cb--results-page.details .shopping-summary .actions .btn.main.disabled:hover {
    border-color: var(--cb-grey-light);
    background-color: var(--cb-grey-light);
}

@container cb--results (max-width: 900px) {
    .cb--results-page.details .summary {
        width: 100%;
        max-width: 400px;
        margin: 0 0 80px;
    }
    .cb--results-page.details .vehicle .vehicle-info {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
    .cb--results-page.details .vehicle .vehicle-info .image {
        width: 100%;
        max-width: 150px;
    }
    .cb--results-page.details .vehicle .vehicle-data {
        flex: 1;
        margin-left: 8%;
    }
    .cb--results-page.details .vehicle .capacity {
        justify-content: flex-start;
    }
    .cb--results-page.details .vehicle .specs {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 5px 0;
    }
}

/* ------------------------------- */
/* ------- loading element ------- */
/* ------------------------------- */

.cb--results .details-loader {
    position: relative;
    align-self: center;
    margin: 100px 0;
}