/*--------------------------------------------------------------
Essential CSS to be included with all pages,
regardless of WP Rocket CSS subsetting.
--------------------------------------------------------------*/


/* Menus
---------------------------------------------------------------------------------------------------- */

.site-header .bb-icon-bars:before {
    margin-left: 0;
    margin-right: 0;
}

/* Slider
---------------------------------------------------------------------------------------------------- */

/* Slider CSS
--------------------------------------------- */

.book-results .image-title .title {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 4px;
}

.image-title .author-date-publisher,
.image-title .pages {
    font-weight: 400;
    font-size: 1.3rem;
    line-height: 1.4;
    color: #777;
}

.image-title .lists-reviews,
.image-title .lists-reviews a {
    font-size: 1.3rem;
    color: #777;
    font-weight: 600;
}

.image-title .lists-reviews a:hover {
    color: #333;
}

.lists-reviews .icon {
    color: #777;
    margin-right: 6px;
}

.lists-reviews .librarian-icon {
    cursor: auto;
    margin-right: 8px;
}

.lists-reviews .separator {
    padding: 0 6px 0 4px;
}

.list-results .title-group {
    max-width: 310px;
    padding: 0 10px;
    transition: all 300ms;
    min-height: 7rem; /* necessary for vertical alignment of slides with multi-line titles */
    margin-bottom: 0;
    display: block;
    margin-top: 34px;
}

.list-results .title-group .title {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: normal;
    max-height: 7rem;
    overflow: hidden;
    margin-bottom: 2px;
}

.list-results .title-group .author-date {
    font-size: 1.3rem;
    line-height: normal;
}

.show-more {
    display: inline-block;
    width: 100%;
}

.show-more a.more {
    font-size: 1.5rem;
    float: right;
    color: #777;
    margin: 20px 10px 0;
    transition: color 200ms;
}

.show-more .more i {
    margin-left: 5px;
}

.fa-chevron-left:before {
    content: "\f053"
}

.fa-chevron-right:before {
    content: "\f054"    
}

.fa-arrow-right:before {
    content: "\f061"
}

/* Modals
---------------------------------------------------------------------------------------------------- */

/* jQuery Modal Plugin CSS
--------------------------------------------- */

.blocker {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    z-index: 999;
    padding: 60px 20px;
    box-sizing: border-box;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.4);
    text-align: center;
}

.blocker:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -0.05em;
}

.blocker.behind {
    background-color: transparent;
}

.modal {
    display: none;
    vertical-align: middle;
    position: relative;
    z-index: 10;
    max-width: 500px;
    box-sizing: border-box;
    width: 90%;
    background: #fff;
    padding: 50px 40px 40px;
    margin-left: 54px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -o-border-radius: 8px;
    -ms-border-radius: 8px;
    border-radius: 8px;
    -webkit-box-shadow: 0 3px 34px 0 rgba(94, 98, 102, 0.5);
    -moz-box-shadow: 0 3px 34px 0 rgba(94, 98, 102, 0.5);
    -o-box-shadow: 0 3px 34px 0 rgba(94, 98, 102, 0.5);
    -ms-box-shadow: 0 3px 34px 0 rgba(94, 98, 102, 0.5);
    box-shadow: 0 3px 34px 0 rgba(94, 98, 102, 0.5);
    text-align: left;
}

.modal p {
    line-height: normal;
}

.modal a.close-modal {
    position: absolute;
    top: 20px;
    right: 20px;
    display: block;
    width: 20px;
    height: 20px;
    text-indent: -9999px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('/wp-content/core-images/times-light.svg');
    border: none;
}

/* Modals
--------------------------------------------- */

.modal-form {
    display: none;
}

.sidebar-open .modal-form {
    margin-right: 250px;
}

.modal h4 {
    margin-top: 0;
    font-size: 2.2rem;
    display: flex;
    align-items: center;
}

.modal-form h4 .icon,
.membership-required h4 .icon {
    margin-right: 12px;
    font-size: 3rem;
/*    color: var(--bb-primary-color);*/
}

.upgrade-modal h4 {
    display: inline-block;
}

.modal-form form {
    margin-bottom: 0;
}

.modal-form label {
/*    display: block;*/
    margin: 10px 0 0 2px;
}

.modal-form .check-box-group label {
    display: inline;
}

.modal-form .buttons {
    margin-top: 28px;
    display: flex;
    justify-content: flex-end;
}

.upgrade-modal .buttons {
    margin: 0 0 20px;
}

.upgrade-modal .spam {
    margin-top: 25px;
}

.modal-form .buttons .right {
    display: flex;
    align-items: center;
}

.modal .save {
    background-color: var(--bb-primary-color);
}

.modal .cancel {
    margin-right: 10px;
}

.jquery-modal .message {
    font-size: 1.6rem;
    line-height: 1.5;
    background: none;
    padding: 10px 0 20px;
    margin-bottom: 10px;
}

.modal .alert-header {
    display: flex;
    align-items: center;
}

.modal .alert-message {
    margin-bottom: 30px;
    line-height: 28px;
}

.modal .help-icon {
    color: #777;
    padding: 0 10px;
}

.modal .help-link a {
    color: #777;
}

.modal-form .populate-spinner {
    justify-content: center;
    text-align: center;
    display: none;
    /*margin-top: -40px; Interferes with form height during spinner*/
}

.modal-form .populate-spinner .spinner {
    height: 40%;
}

/*.librarian-post-taxonomies-form .populate-spinner .spinner {
    height: 40%;
}*/

.modal-form .populate-spinner.submitting {
    display: flex;
}

.modal-form .populate-form {
    transition: all 1000ms;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.modal-form .help {
    color: #999;
    font-size: 1.5rem;
}

.modal-form .help .icon {
    margin-right: 8px;
}

.modal-form .help a {
    color: #999;
}

.modal .alert-message .icon {
    margin-right: 8px;
    color: var(--bb-primary-color);
}

.modal .title-area .description {
    font-size: 1.5rem;
    line-height: normal;
    margin-bottom: 0;
}

.modal-form .message a {
    border-bottom: dotted;
}

/* Start modal
--------------------------------------------- */

.start-modal .header {
    margin-top: -30px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.start-modal .icon {
    width: 50px;
    margin: 0 auto 10px auto;
}

.start-modal .title {
    font-size: 2rem;
}

.start-modal .description {
    font-size: 1.5rem;
    line-height: normal;
    margin: 0 10px 20px;
}

.start-modal li {
    margin-bottom: 2px;
}

.start-modal .buttons {
    justify-content: center;
    padding: 10px 0;
    margin: 0;
}

.start-modal .button,
.start-modal .button-hover {
    background-color: #007cff;
}

/* Add list form
--------------------------------------------- */

.add-list-form .bootstrap-tagsinput {
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 4px 10px;
    background-color: #fff !important;
}

.add-list-form .bootstrap-tagsinput:focus-within {
    border-color: #333;
}

.add-list-form select {
    width: 100%;
}

/* Add to list form
--------------------------------------------- */

.modal-form .preview {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding-bottom: 20px;
}

.modal-form .thumbnail {
    margin-right: 18px;
    flex: 0 0 72px;
}

.modal-form .thumbnail img {
    height: 108px;
    width: 72px;
    box-shadow: 0px 0px 2px 0 rgba(100,100,100,0.3);
}

.modal-form .title-area {
    flex: 1;
}

.modal-form .book-title {
    padding-right: 10%;
    margin: 0 0 5px 0;
    font-size: 2rem;
}

.add-to-list-form .form {
    transition: opacity 1000ms;
}

.add-to-list-form .list-form {
    height: 308px;
}

.add-to-list-form .add-comments {
    display: none;
}

.add-to-list-form .no-lists {
    text-align: center;
    padding-top: 20%;
}

.add-to-list-form .accordion-group {
    font-size: 1.5rem;
    border-color: #ccc;
}

.add-to-list-form label {
    margin: 0;
}

.add-to-list-form label h5 {
    margin-bottom: 5px;
}

.add-new-button {
    font-size: 2.4rem;
    line-height: 1;
}

.add-to-list-form .previous-comments {
    font-size: 1.5rem;
    line-height: 1.7;
    margin-bottom: 20px;
    color: #aaa;
}

.add-to-list-form .previous-comments h5 {
    margin-bottom: 10px;
}

.add-to-list-form .previous-comments .title {
    font-weight: 400;
}

.add-to-list-form .add-comment .select2-container {
    margin-bottom: 20px;
}

.add-to-form {
    max-width: 400px;
    position: relative;
}

/* Add to collection form
--------------------------------------------- */

.modal-tabs ul {
    display: flex;
    margin: 0;
}

.modal-tabs li {
    list-style: none;
    font-size: 1.5rem;
    font-weight: 400;
    padding: 8px 20px;
    margin-bottom: -1px;
    cursor: pointer;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background-color: #eee;
    transition: background-color 200ms;
}

.modal-tabs .catalog-tab {
    border-left: 1px solid #ddd;
}

.modal-tabs li:hover {
    background-color: #fff;
}

.modal-tabs li.selected {
    background-color: #faf9f7;
    border-bottom: 1px solid #fff;
}

.add-to-library-form .form-wrap {
    display: flex;
    justify-content: center;
}

.add-to-library-form .collection-form {
    width: 100%;
    transition: opacity 1000ms;
    height: 282px;
}

.add-to-library-form .panel {
    padding: 20px;
    border: 1px solid #ddd;
    background-color: #faf9f7;
}

.add-to-library-form .accordion-group {
    /*max-height: 200px;*/
    font-size: 1.5rem;
    overflow: auto;
}

/* Profile impressions form
--------------------------------------------- */

.profile-impressions-form .input-group {
    display: flex;
    flex-direction: column;
}

/* Librarian taxonomies form
--------------------------------------------- */

.librarian-taxonomies-form {
    max-width: 400px;
}

.librarian-book-taxonomies-form .taxonomies-form {
    height: 204px;
}

.librarian-post-taxonomies-form .taxonomies-form {
    height: 243px;
}

.librarian-taxonomies-form fieldset {
    margin: 0;
    padding: 10px 15px;
}

.librarian-taxonomies-form fieldset label {
    margin: 5px 0 0 2px;
}

.librarian-taxonomies-form .categories-label {
    margin-top: 0;
}

.librarian-taxonomies-form .buttons {
    justify-content: space-between;
}

.librarian-taxonomies-form .buttons .clear {
    background-color: #999;
}

/* Add bookshelf form
--------------------------------------------- */

.add-bookshelf-form h4 .icon {
    color: var(--bb-primary-color)
}

/* Add bookmark form
--------------------------------------------- */

.add-edit-bookmark-form {
    max-width: 400px;
}

.add-edit-bookmark-form .form-title {
    font-size: 2rem;
}

.add-edit-bookmark-form .fa-bookmark {
    color: var(--bb-primary-color);
    font-size: 2.6rem;
}

.add-edit-bookmark-form .bookmark-folder {
    width: 100%;
}

/* Refresh social images
--------------------------------------------- */

.refresh-social-images-modal .alert-header {
    margin-bottom: 40px;
}

.refresh-social-images-modal .alert-header .icon {
    color: #2f7cde;
}

/* Add edit review form
--------------------------------------------- */

.review-form {
    max-width: 1080px;
}

.edit-review-page .site-main {
    max-width: 1000px;
    margin: 0 auto;
}

.add-review-form .add-edit-review-form {
    height: 826px;
}

.edit-review-form .add-edit-review-form,
.volume-review-form .add-edit-review-form {
    height: 526px;
}

.add-edit-review-form .preview {
    margin-top: 30px;
    padding-bottom: 0;
}

.add-edit-review-form .section {
    margin-bottom: 30px;
}

.add-edit-review-form .section-title {
    margin-bottom: 10px;
}

.add-edit-review-form .title-author {
    margin-top: 20px;
}

.add-edit-review-form .title-author .title {
    font-weight: 400;
    height: 27px;
}

.add-edit-review-form .title-author .authors {
    font-size: 1.4rem;
    height: 24px;
}

.add-edit-review-form label {
    margin-left: 2px;
}

.add-edit-review-form input[type="text"],
.add-edit-review-form input[type="date"] {
    font-size: 1.5rem;
    height: 3.4rem;
    padding: 0.6rem 1rem;
    flex: 1;
}

add-edit-review-form textarea {
    font-size: 1.5rem;
}

.add-edit-review-form .subsection {
    display: flex;
    column-gap: 10px;
}

.add-edit-review-form .title {
    flex: 1;
}

.add-edit-review-form .authors-publisher-date .authors {
    flex-basis: 50%;
}

.add-edit-review-form .author-wrap-1,
.add-edit-review-form .author-wrap-2 {
    display: none;
    margin-top: 8px;
}

.add-edit-review-form .author-group {
    display: flex;
}

.add-edit-review-form .author-group .author {
    flex: 1;
}

.add-edit-review-form .author-wrap .add-author {
    font-size: 1.5rem;
    padding: 4px 12px;
    width: 40px;
    cursor: pointer;
}

.add-edit-review-form .author-wrap-2 .add-author {
    visibility: hidden;
}

.add-edit-review-form .authors-publisher-date .publisher-date {
    display: flex;
    column-gap: 10px;
    flex-basis: 50%;
}

.add-edit-review-form .authors-publisher-date .publisher {
    flex: 1;
}

.add-edit-review-form .flatpickr-calendar {
    right: 0;
}

.add-edit-review-form .flatpickr-calendar:before,
.add-edit-review-form .flatpickr-calendar:after {
    left: unset;
    right: 100px;
}

.add-edit-review-form .buttons {
    text-align: right;
}

.edit-review-form .buttons {
    justify-content: space-between;
}

.add-edit-review-form .buttons .right {
    display: flex;
}

.add-edit-review-form .buttons .delete {
    background-color: #999;
    transition: all 300ms;
}

.add-edit-review-form .buttons .delete:hover {
    box-shadow: none;
    background-color: red;
}

.add-review-form .book-search-form .google-books-match {
    margin-bottom: 0;
}

.add-review-form .book-card {
    margin-top: 40px;
}

.add-review-form .book-card .image {
    flex: 0 0 80px;
    margin-right: 20px;
}

.add-review-form .book-card .title {
    font-size: 1.6rem;
    margin-bottom: 4px;
}

.add-review-form .book-card .authors {
    font-size: 1.4rem;
}

.add-review-form .book-card .publisher-date,
.add-review-form .book-card .lists-reviews {
    font-size: 1.2rem;
}

/* View review modal
--------------------------------------------- */

.view-review-modal {
    max-height: 600px;
}

.view-review-modal .review {
    max-height: 500px;
    overflow: scroll;
}

.view-review-modal .spinner {
    height: 500px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.view-review-modal .spinner i {
    font-size: 2rem;
}

.view-review-modal .item-header {
    font-size: 13px;
    display: flex;
    margin: 20px 0 40px;
}

.view-review-modal .item-header .image {
    max-width: 70px;
    margin-right: 20px;
}

.view-review-modal .item-header .image img {
    min-width: 70px;
    min-height: 105px;
}

.view-review-modal .item-header .title {
    line-height: 1.4;
    margin: -5px 0 5px;
}

.view-review-modal #bbpress-forums#bbpress-forums .bs-forums-items {
    margin: 0;
}

.view-review-modal #bbpress-forums#bbpress-forums .bs-forums-items.bs-single-forum-list .bs-header-item.bs-item-wrap {
    padding: 0;
    border: none;
}

.view-review-modal #bbpress-forums .bs-single-forum-list > li .bs-reply-list-item {
    padding: 0;
}

.view-review-modal #bbpress-forums#bbpress-forums .bs-forums-items.view-widget li .bs-reply-list-item:hover {
    background-color: transparent;
}

.view-review-modal #bbpress-forums div.bbp-reply-content ul.stars {
    margin-left: 0;
}

.view-review-modal .bbp-meta {
    display: none;
}

/* Award modal
--------------------------------------------- */

.award-form .category-genre {
    display: flex;
    column-gap: 10px;
}

.award-form .input-group {
    flex: 1;
}

.award-book-form .buttons,
.award-admin .buttons {
    justify-content: space-between;
}

.award-book-form .buttons .delete,
.award-admin .buttons .delete {
    background-color: #999;
}

.award-book-form .buttons .delete:hover,
.award-admin .buttons .delete:hover {
    background-color: red;
}

body .award-book-form select {
    height: calc(3.2rem + 2px);
}

/* Progress bar modal
--------------------------------------------- */

.progress-bar-modal .progress-bar {
    margin: 30px 0 10px;
}

.progress-bar-modal .progress-bar .background {
    height: 6px;
    background-color: #ddd;
    position: relative;
}

.progress-bar-modal .progress-bar .progress {
    background-color: var(--bb-primary-color);
    height: 6px;
    width: 0;
}

/* Delete confirmation modal
--------------------------------------------- */

body .delete-confirmation-form button.ok {
    background-color: #ff0000;
}

.delete-confirmation-form button.cancel {
    background-color: #999;
}

/* Copy move modal
--------------------------------------------- */

.copy-move form {
    margin-bottom: 40px;
}

.copy-move-form h4 .icon {
    color: var(--bb-primary-color);
}

/* Quote collection modal
--------------------------------------------- */

.add-edit-quote-collection-form .visibility-buttons {
    display: flex;
    border: 1px solid #ddd;
    padding: 6px 12px;
}

.add-edit-quote-collection-form .visibility-buttons .radio-group {
    margin-right: 30px;
}

.add-edit-quote-collection-form .visibility-buttons label {
    line-height: 21px;
    margin: 0;
    display: inline-block;
}

/* Add volume modal
--------------------------------------------- */

.add-volume-form h4 .icon {
    color: var(--bb-primary-color);
}

.add-volume-form .search {
    margin-bottom: 10px;
}

.add-volume-form .search .submit {
    display: flex;
    justify-content: flex-end;
}

.add-volume-form .input {
    display: flex;
    align-items: center;
}

.buddypress .add-volume-form .search button {
    margin-top: 20px;
}

.add-volume-form .title-search .completed {
    font-size: 2rem;
    color: var(--bb-primary-color);
    margin-left: 12px;
    display: none;
}

.add-volume-form .google-books-match {
    flex-direction: column;
    display: none;
}

.add-volume-form .google-books-match .completed {
    font-size: 2rem;
    color: var(--bb-primary-color);
    margin-left: 12px;
    opacity: 0;
    transition: opacity 200ms;
}

.add-volume-form .buttons {
    display: none;
}

.add-volume-form .buttons-wrapper {
    display: flex;
    justify-content: flex-end;
}

/* Post delete modal
--------------------------------------------- */

.post-delete-modal .alert-title h4 .icon {
    color: var(--bb-primary-color);
}

/* Publication status modal
--------------------------------------------- */

.publication-status-modal .alert-title .icon {
    color: var(--bb-primary-color);
}

.publication-status-modal .space-buttons {
    display: flex;
    justify-content: space-between;
}

/* Edit booksellers modal
--------------------------------------------- */

.edit-booksellers-modal .header {
    margin-bottom: 40px;
}

.edit-booksellers-modal .labels {
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    margin-bottom: 10px;
}

.edit-booksellers-modal td {
    padding: 5px 10px;
    border: none;
}

.edit-booksellers-modal .type,
.edit-booksellers-modal .delete {
    font-size: 2rem;
    color: #777;
    width: 30px;
    vertical-align: middle;
} 

.edit-booksellers-modal .delete label {
    margin: 0;
}

/* Bestsellers modal
--------------------------------------------- */

.update-bestsellers-modal .title {
    font-size: 1.8rem;
    font-weight: 400;
}

.update-bestsellers-modal .progress-bar {
    margin-top: 20px;
}

.update-bestsellers-modal .label {
    font-size: 1.5rem;
    margin-bottom: 4px;
}

.update-bestsellers-modal .status-label {
    margin: 30px 0 10px;
    font-weight: 600;
}

.update-bestsellers-modal .list-status {
    font-size: 1.5rem;
    min-height: 40px;
}

/* Replace remove modal
--------------------------------------------- */

.bestsellers-replace-volume-form .icon {
    color: #ed950d;
}

.delete-volume-form .icon,
.bestsellers-remove-volume-form .icon {
    color: #de5e5e;
}

.replace-remove-form .cancel {
    background-color: #999;
}

.replace-remove-form .ok {
    background-color: #ff0000;
}

.replace-remove-form .instructions {
    margin-bottom: 10px;
}

/* Author disambiguation modal
--------------------------------------------- */

.author-disambiguation-form h4 .icon {
    color: #ed950d;
    margin-right: 20px;
}

.author-disambiguation-form .disambiguation-form {
    min-height: 200px;
}

.author-disambiguation-form .populate-spinner {
    min-height: 200px;
    padding-top: 50px;
    align-items: flex-start;
}

.author-disambiguation-form ul li {
    display: flex;
    list-style: none;
}

.author-disambiguation-form label {
    margin: 0;
}

.author-disambiguation-form .checkbox {
    margin-right: 10px;
}

.author-disambiguation-form .card {
    flex: 1;
}

.author-disambiguation-form .item-header {
    display: flex;
    margin-bottom: 20px;
}

.author-disambiguation-form .item-header .image {
    flex-basis: 80px;
}

.author-disambiguation-form .item-header .aside {
    flex: 1;
}

.author-disambiguation-form .item-header .cover-image {
    width: 60px;
}

.author-disambiguation-form .item-header .aside .title {
    font-size: 1.5rem
}

.author-disambiguation-form .exclude-all {
    margin-left: 20px;
}

/* Book curation modal
--------------------------------------------- */

.book-curation-form {
    max-width: 800px;
}

/* Iubenda
--------------------------------------------- */

.policies #iubenda_policy .iub_content {
    padding: 0;
}

.policies #iubenda_policy {
    font-family: 'soleil', sans-serif;
}

.policies #iubenda_policy h1,
.cookie-policy #iubenda_policy h2,
.policies #iubenda_policy hr,
.policies #iubenda_policy .iub_header,
.policies .simple_pp > .one_line_col h2 {
    display: none;
}

.policies #iubenda_policy .simple_pp > .one_line_col {
    padding: 0;
    border: none;
}

.policies #iubenda_policy h3,
.policies #iubenda_policy h4,
.policies #iubenda_policy.iubenda_vip_policy.iubenda_terms_policy h4 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.7;
}

.policies #iubenda_policy p {
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.7;
}

.policies #iubenda_policy.iubenda_vip_policy p,
.policies #iubenda_policy.iubenda_vip_policy ul li {
    font-size: 1.5rem;
    font-weight: 300;
}

/* Cookies
----------------------------------------- */

.cky-consent-container .cky-btn:hover {
    color: #fff !important;
    border-color: #fff !important;
    border: 2px solid;
    box-shadow: none;
    opacity: 1;
}

.cky-consent-container .cky-btn-accept:hover {
    color: #505050 !important;
    background-color: #fff !important;
}

.cky-consent-container .cky-accordion-header .cky-always-active,
.cky-consent-container .cky-preference-content-wrapper .cky-show-desc-btn,
.cky-consent-container button.cky-show-desc-btn:not(:hover):not(:active) {
    color: #eee;
}

body .cky-btn-revisit-wrapper {
    display: none;
}

/* Plugins
---------------------------------------------------------------------------------------------------- */

/* WP Forms
----------------------------------------- */

.floating-form .wpforms-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    padding: 60px;
    display: flex;
    background-color: #2d2c2a;
    opacity: 0;
    display: none;
    transition: opacity 300ms;
    z-index: 2;
}

.floating-form .wpforms-container .wpforms-form {
    max-width: 600px;
    border-radius: 10px;
    margin: auto;
    box-shadow: 0 0 40px 5px rgb(0 0 0 / 20%);
    padding: 40px;
    flex: 1;
    background-color: #faf9f7;
    position: relative;
}

.home .floating-form .wpforms-container .wpforms-form {
    transform: translateY(-10%);
}

.floating-form .wpforms-container .wpforms-form .wpforms-field-label {
    font-size: 1.7rem;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 20px;
}

.floating-form .wpforms-container .wpforms-field {
    position: unset;
}

.floating-form .wpforms-container .wpforms-form .close-button {
    font-size: 2rem;
    position: absolute;
    padding: 10px;
    top: 10px;
    right: 30px;
    color: #777;
    cursor: pointer;
    transition: color 150ms;
}

.floating-form .wpforms-container .wpforms-form .wpforms-page-indicator-steps {
    font-size: 1.4rem;
}

.floating-form .wpforms-container .wpforms-page-indicator.progress .wpforms-page-indicator-page-progress-wrap {
    height: 6px;
}

.floating-form .wpforms-container .wpforms-form .close-field,
.floating-form .wpforms-container .wpforms-form .wpforms-field-pagebreak {
    padding: 0;
}

.wpforms-container .wpforms-form .wpforms-field-label, 
.wpforms-container .wpforms-form .wpforms-field-sublabel {
    font-weight: 300;
}

.wpforms-container .wpforms-field-label-inline {
    font-size: 1.6rem;
    line-height: 1.3;
}

.wpforms-container .wpforms-form ul li {
    display: flex;
    align-items: center;
    margin-bottom: 2px;
}

.wpforms-container .wpforms-form input[type=text] {
    font-size: 1.5rem;
    height: 4rem;
    border-radius: 5px;
}

.wpforms-container .wpforms-form input[type=radio] {
    border: 2px solid #ccc;
    width: 18px;
    height: 18px;
    margin: 4px 10px;
    position: absolute;
    opacity: 0;
}

.wpforms-container input[type="radio"] + label {
    position: relative;
}

.wpforms-container input[type="radio"] + label:before {
    content: '';
    line-height: 1;
    margin-right: 10px;
    display: inline-block;
    vertical-align: text-top;
    width: 1.7rem;
    height: 1.7rem;
    background: #fff;
    border-radius: 50%;
    border: 1px solid #C9CBCA;
    vertical-align: middle;
    margin-bottom: 0.4rem;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

.wpforms-container .wpforms-selected input[type="radio"] + label:before {
    background: var(--bb-primary-color);
    border-color: var(--bb-primary-color);
}

.wpforms-container .wpforms-selected input[type="radio"] + label:after {
    content: '';
    position: absolute;
    text-align: center;
    margin: auto;
    left: 0.5rem;
    top: 0.7rem;
    border-radius: 50%;
    background-color: #fff;
    width: 0.7rem;
    height: 0.7rem;
}

.wpforms-container .wpforms-form .wpforms-pagebreak-left .wpforms-page-next {
    font-family: 'soleil', sans-serif;
    color: #fff;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1;
    padding: 0.6rem 0.7rem 0.7rem 0.6rem;
    height: 3.6rem;
    width: 3.6rem;
    background-color: var(--bb-primary-color);
    border-radius: 50%;
    border: none;
    transform: rotate(90deg);
    float: right;
}

.wpforms-container .wpforms-form .wpforms-pagebreak-left .wpforms-page-prev {
    font-family: 'soleil', sans-serif;
    color: #fff;
    font-size: 3rem;
    font-weight: 400;
    line-height: 1;
    padding: 0.6rem 0.7rem 0.7rem 0.6rem;
    height: 3.6rem;
    width: 3.6rem;
    background-color: var(--bb-primary-color);
    border-radius: 50%;
    border: none;
    transform: rotate(270deg);
    margin-top: 3px;
}

.wpforms-container .wpforms-form .last .wpforms-field-pagebreak {
    clear: none;
    float: left;
    padding: 10px 0;
}

.wpforms-container form.wpforms-form div.wpforms-submit-container {
    display: flex;
    flex-flow: row-reverse;
    clear: inherit;
    padding: 12px 0 0 0;
}

.wpforms-container .wpforms-form .wpforms-submit-container input[type=submit], 
.wpforms-container .wpforms-form .wpforms-submit-container button[type=submit] {
    font-size: 1.6rem;
    border-radius: 5px;
    /* background-color: #ffba3c; */
    /* background-color: orange; */
    background-color: var(--bb-primary-color);
    border: none;
    color: #fff;
}

.wpforms-field-container .aa-Form {
    border-color: #ddd;
    border-radius: 5px;
}

.wpforms-field-container .aa-InputWrapper input {
    font-size: 1.5rem;
    background-image: none;
    border: none;
    border-radius: 4px;
}

.aa-Form:focus-within {
    border-color: #ddd;
    outline: none;
    box-shadow: none;
}

.wpforms-container .copy-search {
    text-align: center;
    font-weight: 600;
}

/*.wpforms-container .copy-text-button {
    display: inline-block;
    line-height: 1;
    vertical-align: bottom;
    padding: 0 20px;
    width: 50px;
    height: 2.3rem;
    overflow: hidden;
}*/

.buddypress .buddypress-wrap .bp-wrap .wpforms-field-pagebreak button:focus {
    font-size: 3rem;
    line-height: 1;
}

.wpforms-container .bookseller-test-link {
    text-align: center;
    min-height: 3rem;
    opacity: 0;
    transition: opacity 200ms;
}

.wpforms-container .test-link {
    border-bottom: 1px dotted;
}

.horse-home .wpforms-container .title {
    margin: 0;
}

.wpforms-container .select {
    width: 100%;
}

.wpforms-required-label {
    display: none;
}

.wpforms-container em.wpforms-error {
    color: #e4862a;
}

.wpforms-container .note {
    font-size: 1.5rem;
}

/*
Media Queries
----------------------------------------------------------------------------------------------------*/

/* Target Nexus 7 (600x960)
------------------------------------------------------------- */

@media only screen and (max-width: 767px) {

    /* Modal
    ----------------------------------------- */

    .modal {
        margin-left: 0;
        padding: 50px 30px 30px;
        width: 100%;
    }

    /* Horse home
    ----------------------------------------- */

    .horse-home .floating-form .wpforms-container .wpforms-form {
        transform: translateY(-10%);
    }

}

/* Target iPhone Pro Max (430x932)
------------------------------------------------------------- */

@media only screen and (max-width: 599px) {

    /* Horse home
    ----------------------------------------- */

    .entry-content .floating-form .wpforms-container {
        padding: 20px;
    }

    /* BuddyPress
    ----------------------------------------- */

    .booksellers .floating-form .wpforms-container .wpforms-form {
        transform: translateY(0);
        max-height: 800px;
        overflow: scroll;
    }

    /* Lists
    ----------------------------------------- */

    .list-results .title-group {
        min-height: unset;
    }

}

/* Target iPhone SE (375x667)
------------------------------------------------------------- */

@media only screen and (max-width: 400px) {

    /* Horse home
    ----------------------------------------- */

    .horse-home .floating-form .wpforms-container .wpforms-form {
        transform: translateY(0);
    }

    /* BuddyPress
    ----------------------------------------- */

    .booksellers .floating-form .wpforms-container .wpforms-form {
        max-height: 650px;
        padding: 40px 30px;
    }

    .floating-form .wpforms-container .wpforms-form .close-button {
        right: 20px;
    }

    /* Profile
    ----------------------------------------- */

    .view-review-modal {
        max-height: 500px;
    }

    .view-review-modal .review {
        max-height: 400px;

}

/* Target iPhone SE (375x667)
------------------------------------------------------------- */

@media only screen and (max-width: 389px) {

    /* Horse home
    ----------------------------------------- */

    .floating-form .wpforms-container .wpforms-form {
        max-height: 500px;
    }

    /* BuddyPress
    ----------------------------------------- */

    .booksellers .floating-form .wpforms-container .wpforms-form {
        max-height: 450px;
    }

}


