/*!
Theme Name: CBD
Theme URI: https://www.cbwebsitedesign.co.uk/
Author: Creative Brand Design
Author URI: https://www.cbwebsitedesign.co.uk/
Description: Creative Brand Design
Version: 04.12.24
Text Domain: cbd
*/

/* Private Pages */
.post-password-form {
    height: 70vh;
    height: 70svh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.post-password-form > p {
    width: 100%;
    text-align: center;
    font-size: 115%;
}

.post-password-form label {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.post-password-form input[type=password] {
    padding: 0.75rem 1.5rem;
    background: none;
    border: 1px solid #fff;
    border-radius: 0.3rem;
}

.post-password-form input[type=submit] {
    padding: 0.75rem 1.5rem;
    background: #fff;
    border: 1px solid #fff;
    border-radius: 0.3rem;
    color: #000;
    cursor: pointer;
    font-weight: 600;
    transition: 0.3s opacity;
    margin-top: 1.5rem;
}

.post-password-form input[type=submit]:hover {
    opacity: 0.7;
}

/* Admin Bar */
.admin-bar > header {
    top: 32px;
}

.admin-bar > main {
    margin-top: 32px;
}

.admin-bar .menu-overlay {
    top: 32px;
    height: calc(100vh - 32px);
}

@media (max-width: 782px) {
    .admin-bar > header {
        top: 46px;
    }

    .admin-bar > main {
        margin-top: 46px;
    }

    .admin-bar .menu-overlay {
        top: 46px;
        height: calc(100vh - 46px);
    }
}

@media (max-width: 600px) {
    #wpadminbar {
        position: fixed;
    }
}

/* Header */
.header-search:not(.active) input {
    display: none;
}

.header-search input {
    border-color: rgba(44, 48, 76, .4);
    border-radius: 9999px;
    border-width: 1px;
    font-size: 14px;
    padding: 1.5rem 3rem;
    --tw-text-opacity: 1;
    color: rgb(87 108 154 / var(--tw-text-opacity, 1));
    line-height: 1.2;
    transition: border-color .4s ease-in-out, background-color .4s ease-in-out;
    position: absolute;
    top: 50%;
    left: -1rem;
    transform: translate(-100%, -50%);
}

@media (min-width: 1025px) {
    .header-search input {
        font-size: 16px;
    }
}

.header-search input:focus {
    --tw-border-opacity: 1;
    border-color: rgb(87 108 154 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(241 249 255 / var(--tw-bg-opacity, 1));
}

/* Post */
.technical-page-wrap img {
    vertical-align: middle;
    border-radius: 10px;
    overflow: hidden;
}
@media (min-width: 1025px) {
    .technical-page-wrap img {
        border-radius: 28px;
    }
}

.insight-tags span.btn {
    cursor: default;
}

/* Careers */
.opportunity-item .contract {
    cursor: default;
}

/* Team */
.team-member-card .labels .btn,
.team-member-labels .btn {
    cursor: default;
}

/* Gallery */
.gallery-tab:not(.active) {
    display: none;
}

/* Pagination */
.pagination-block {
    column-gap: 1rem;
}

@media (min-width: 1025px) {
    .pagination-block {
        column-gap: 1.75rem;
    }
}

.pagination-block .page-numbers:not(.dots, .prev, .next) {
    align-items: center;
    border-radius: 9999px;
    color: rgba(87, 108, 154, .4);
    display: flex;
    height: 3rem;
    justify-content: center;
    padding: .5rem;
    transition: all .5s;
    width: 3rem;
}

.pagination-block .page-numbers.current, 
.pagination-block a.page-numbers:hover {
    --tw-text-opacity: 1;
    color: rgb(87 108 154 / var(--tw-text-opacity, 1));
}

.pagination-block .page-numbers.prev {
    margin-right: 2.5rem;
}

.pagination-block .page-numbers.next {
    margin-left: 2.5rem;
}

.pagination-block .page-numbers.prev,
.pagination-block .page-numbers.next {
    align-items: center;
    border-radius: 9999px;
    border-width: 1px;
    cursor: pointer;
    display: flex;
    height: 5.3rem;
    justify-content: center;
    width: 11.7rem;
    --tw-border-opacity: 1;
    border-color: rgb(87 108 154 / var(--tw-border-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(87 108 154 / var(--tw-text-opacity, 1));
    transition: all .5s;
}

.pagination-block .page-numbers.prev svg,
.pagination-block .page-numbers.next svg {
    height: 45%;
    -o-object-fit: contain;
    object-fit: contain;
    width: 45%;
}

.pagination-block .page-numbers.prev:hover,
.pagination-block .page-numbers.next:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(87 108 154 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Gravity Forms */
.form .gform_wrapper.gravity-theme .gform_fields {
    grid-column-gap: 0;
    grid-row-gap: 2rem;
}

@media (min-width: 1025px) {
    .form .gform_wrapper.gravity-theme .gform_fields {
        grid-column-gap: 3rem;
        grid-row-gap: 2.5rem;
    }
}

.form .gform_wrapper.gravity-theme .gfield_required_text {
    display: none;
}

.form .gform_wrapper.gravity-theme .gfield_label {
    margin-bottom: 1rem;
    font-weight: 400;
    font-size: 14px;
    --tw-text-opacity: 1;
    color: rgb(87 108 154 / var(--tw-text-opacity, 1));
}

@media (min-width: 1025px) {
    .form .gform_wrapper.gravity-theme .gfield_label {
        font-size: 16px;
        margin-bottom: 1.75rem;
    }
}

@media (max-width: 1024px) {
    .form .gform_wrapper.gravity-theme .gfield:not(.gfield--width-full) {
        grid-column: 1 / -1;
    }
}

.form .gform_wrapper.gravity-theme .gfield input,
.form .gform_wrapper.gravity-theme .gfield textarea,
.form .gform_wrapper.gravity-theme .gfield select {
    border-color: rgba(44, 48, 76, .4);
    border-radius: 9999px;
    border-width: 1px;
    font-size: 14px;
    padding: 1.75rem 3rem;
    width: 100%;
    --tw-text-opacity: 1;
    color: rgb(87 108 154 / var(--tw-text-opacity, 1));
    line-height: 1.2;
    margin: 0;
    transition: border-color .4s ease-in-out, background-color .4s ease-in-out;
}

@media (max-width: 641px) {
    .form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
        line-height: 1.2;
        min-height: auto;
    }
}

@media (min-width: 1025px) {
    .form .gform_wrapper.gravity-theme .gfield input,
    .form .gform_wrapper.gravity-theme .gfield textarea,
    .form .gform_wrapper.gravity-theme .gfield select {
        font-size: 16px;
    }
}

.form .gform_wrapper.gravity-theme .gfield input::placeholder,
.form .gform_wrapper.gravity-theme .gfield textarea::placeholder,
.form .gform_wrapper.gravity-theme .gfield select::placeholder {
    color: rgba(87, 108, 154, .6);
}

.form .gform_wrapper.gravity-theme .gfield input:focus,
.form .gform_wrapper.gravity-theme .gfield textarea:focus,
.form .gform_wrapper.gravity-theme .gfield select:focus {
    --tw-border-opacity: 1;
    border-color: rgb(87 108 154 / var(--tw-border-opacity, 1));
    --tw-bg-opacity: 1;
    background-color: rgb(241 249 255 / var(--tw-bg-opacity, 1));
}

.form .gform_wrapper.gravity-theme .gfield select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: transparent;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none'%3E%3Cpath stroke='%23060708' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M19.5 9 12 16.5 4.5 9'/%3E%3C/svg%3E");
    background-position: right 1.3em top 50%;
    background-repeat: no-repeat;
    background-size: 1.3em auto;
    cursor: pointer;
    display: block;
    padding-right: 55px;
}

.form .gform_wrapper.gravity-theme .gfield textarea {
    border-radius: 10px;
}

@media (min-width: 1025px) {
    .form .gform_wrapper.gravity-theme .gfield textarea {
        border-radius: 35px;
    }
}

.form .gform_wrapper.gravity-theme .gfield textarea.medium {
    height: 167.5px;
}

@media (min-width: 1025px) {
    .form .gform_wrapper.gravity-theme .gfield textarea.medium {
        height: 190.2px;
    }
}

.form .gform_wrapper.gravity-theme .gchoice input {
    display: none;
}

.form .gform_wrapper.gravity-theme .gchoice label {
    position: relative;
    display: inline-block;
    max-width: 100%;
    padding: 3px 0 10px 40px;
    font-size: clamp(13px, 1vw, 18px);
    line-height: inherit;
    cursor: pointer;
}

.form .gform_wrapper.gravity-theme .gchoice label:before,
.form .gform_wrapper.gravity-theme .gchoice label:after {
    content: "";
    position: absolute;
    top: 50%;
}

.form .gform_wrapper.gravity-theme .gchoice label:before {
    border-width: 1px;
    --tw-border-opacity: 1;
    background: transparent;
    border-color: rgb(87 108 154 / var(--tw-border-opacity, 1));
    height: 21px;
    left: 0;
    margin: -14px 0 0;
    width: 21px;
    border-radius: 50%;
}

.form .gform_wrapper.gravity-theme .gchoice label:after {
    --tw-bg-opacity: 1;
    background-color: rgb(87 108 154 / var(--tw-bg-opacity, 1));
    height: 11px;
    left: 5px;
    margin: -9px 0 0;
    opacity: 0;
    transform: translate3d(-40px, 0, 0) scale(.5);
    transition: opacity .25s ease-in-out, transform .25s ease-in-out;
    width: 11px;
    border-radius: 50%;
}

.form .gform_wrapper.gravity-theme .gchoice input:checked + label:after {
    opacity: 1;
    transform: translateZ(0);
}

.form .gform_wrapper.gravity-theme label a {
    --tw-text-opacity: 1;
    color: rgb(87 108 154 / var(--tw-text-opacity, 1));
}

.form .gform_wrapper.gravity-theme .gform_footer {
    margin: 2.5rem 0 0;
    padding: 0;
    justify-content: flex-end;
}

.form .gform_wrapper.gravity-theme .gform_footer button {
    margin: 0;
}

.form .gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
    border: 1px solid #c02b0a;
}

.form .gform_wrapper.gravity-theme .gform_validation_errors,
.form .gform_wrapper.gravity-theme .validation_message {
    border-radius: 9999px;
}

body .gravity-theme.ui-datepicker .ui-datepicker-header select,
body .gravity-theme.ui-datepicker .ui-datepicker-calendar th span {
    font-size: 16px;
    --tw-text-opacity: 1;
    color: rgb(44 48 76 / var(--tw-text-opacity, 1));
    font-weight: 500;
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar td {
    font-size: 14px;
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-state-default {
    --tw-text-opacity: 1;
    color: rgb(44 48 76 / var(--tw-text-opacity, 1));
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-state-disabled .ui-state-default {
    --tw-bg-opacity: .15;
    background: rgb(44 48 76 / var(--tw-bg-opacity));
    --tw-text-opacity: .4;
    color: rgb(44 48 76 / var(--tw-text-opacity, 1));
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default {
    --tw-bg-opacity: 1;
    background: rgb(87 108 154 / var(--tw-bg-opacity));
    --tw-border-opacity: 1;
    border-color: rgb(87 108 154 / var(--tw-border-opacity));
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar a.ui-state-default:focus, 
body .gravity-theme.ui-datepicker .ui-datepicker-calendar a.ui-state-default:hover,
body .gravity-theme.ui-datepicker .ui-datepicker-calendar a.ui-state-default:active {
    --tw-border-opacity: 1;
    border-color: rgb(87 108 154 / var(--tw-border-opacity));
}

/* Form Steps */
.form .gform_wrapper.gravity-theme .gf_page_steps,
.form-steps .gform_wrapper.gravity-theme .gf_page_steps {
    border: none;
    margin-bottom: 3.5rem;
}

.form .gform_wrapper.gravity-theme .gf_step,
.form-steps .gform_wrapper.gravity-theme .gf_step {
    display: inline-flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 1.75rem;
    margin: 0 3.5rem 0 0;
}

.form .gform_wrapper.gravity-theme .gf_step_label,
.form-steps .gform_wrapper.gravity-theme .gf_step_label {
    font-size: inherit;
    font-weight: 500;
    line-height: inherit;
    padding-left: 0;
}

.form .gform_wrapper.gravity-theme .gf_step_number,
.form-steps .gform_wrapper.gravity-theme .gf_step_number {
    background-color: rgba(44, 48, 76, .15);
    width: 5.4rem;
    height: 4px;
    border-radius: 3px;
    border: none;
    font-size: 0;
}

.form-steps .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number:before,
.form-steps .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number:after,
.form .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number:before,
.form .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number:after {
    content: none;
}

.form-steps .gform_wrapper.gravity-theme .gf_step_active .gf_step_number,
.form-steps .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number,
.form .gform_wrapper.gravity-theme .gf_step_active .gf_step_number,
.form .gform_wrapper.gravity-theme .gf_step_completed .gf_step_number {
    background: var(--gradient);
}

.form-steps .gform_confirmation_message,
.form-steps .gform_wrapper.gravity-theme .gform_body {
    overflow: hidden;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
    padding: 1.25rem;
    border-radius: 10px;
}

@media (min-width: 1025px) {
    .form-steps .gform_confirmation_message,
    .form-steps .gform_wrapper.gravity-theme .gform_body {
        padding: 4rem;
        border-radius: 28px;
    }
}

.form-steps .gform_wrapper.gravity-theme .gfield_html label {
    position: relative;
    margin-top: 1.25rem;
    margin-bottom: 2.5rem;
    padding-left: 3.55rem;
}

@media (min-width: 1025px) {
    .form-steps .gform_wrapper.gravity-theme .gfield_html label {
        padding-left: 4.3rem;
    }
}

.form-steps .gform_wrapper.gravity-theme .gfield_html label:before {
    content: "";
    display: block;
    height: 1.8rem;
    width: 1.8rem;
    border-radius: 9999px;
    background: var(--gradient);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    
}
.form .gform_wrapper.gravity-theme .gform_page_footer,
.form-steps .gform_wrapper.gravity-theme .gform_page_footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 2rem;
    margin: 2.5rem 0 0;
    padding: 0;
}

.form .gform_wrapper.gravity-theme .gform_page_footer button,
.form-steps .gform_wrapper.gravity-theme .gform_page_footer button {
    margin: 0;
}

.form .gform_wrapper.gravity-theme .button,
.form-steps .gform_wrapper.gravity-theme .button {
    border-radius: 5rem;
    cursor: pointer;
    font-family: Open Sans, serif;
    font-size: 14px;
    padding: 1.75rem 2rem;
    text-align: center;
    text-transform: capitalize;
    width: auto;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
    line-height: 1;
    margin: 0;
    outline: none;
    text-decoration: none;
    background: linear-gradient(88deg, #86bdf7 -3.35%, #7367da 117.71%), linear-gradient(87deg, #d4d1e9 -18.54%, #8d95ca 243.71%);
    transform-origin: right;
    transition: all .5s;
}

.form .gform_wrapper.gravity-theme .gform-theme-button--secondary.button,
.form-steps .gform_wrapper.gravity-theme .gform-theme-button--secondary.button {
    background: transparent;
    border-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(44 48 76 / var(--tw-border-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(44 48 76 / var(--tw-text-opacity, 1));
}

@media (min-width: 1025px) {
    .form .gform_wrapper.gravity-theme .button,
    .form-steps .gform_wrapper.gravity-theme .button {
        border-radius: 10rem;
        font-size: 85%;
    }
}

@media (min-width: 1281px) {
    .form .gform_wrapper.gravity-theme .button,
    .form-steps .gform_wrapper.gravity-theme .button {
        font-size: 75%;
    }
}

.form .gform_wrapper.gravity-theme .button:hover,
.form-steps .gform_wrapper.gravity-theme .button:hover {
    border-color: transparent;
    --tw-bg-opacity: 1;
    background-color: rgb(87 108 154 / var(--tw-bg-opacity, 1));
    box-shadow: 0 4px 15px 0 rgba(87, 108, 154, .75);
}

.form .gform_wrapper.gravity-theme .gform-theme-button--secondary.button:hover,
.form-steps .gform_wrapper.gravity-theme .gform-theme-button--secondary.button:hover {
    background: linear-gradient(88deg, #86bdf7 -3.35%, #7367da 117.71%), linear-gradient(87deg, #d4d1e9 -18.54%, #8d95ca 243.71%);
    transform-origin: right;
    --tw-border-opacity: 1;
    border-color: rgb(122 136 229 / var(--tw-border-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.form .gform_wrapper.gravity-theme .button:active,
.form-steps .gform_wrapper.gravity-theme .button:active {
    transform: scale(.95);
}

.brands-carousel .brand-card {
    background-color: #ffffff!important;
}
.ginput_container_fileupload button.gform_button_select_files {
    background: #7367da;
}
.ginput_container_fileupload button.gform_button_select_files::after {
    opacity: 0;
}

.row-items .row-item .title p {
    margin-bottom: 1rem;
}

/* Cognito Form */
.cog-header {
    display: none;
}

form.cog-form.cog-cognito {
    max-width: 100% !important;
    width: 100% !important;
}

form.cog-form.cog-cognito .cog-form__container {
    max-width: 100% !important;
    width: 100% !important;
}

/*html .cog-form .cog-name legend, html .cog-form .cog-address legend, html .cog-form .cog-text label {*/
/*    display: none !important;*/
/*}*/

html .cog-page__navigation, :root:root:root:root:root .cog-page__navigation {
    justify-content: flex-end !important;
}

/*html .cog-form legend, :root:root:root:root:root .cog-form legend {*/
/*    display: none !important;*/
/*}*/

html .cog-field, :root:root:root:root:root .cog-field {
    min-width: 100% !important;
}

/*.cog-body .cog-name__prefix, .cog-body .cog-name__first, .cog-body .cog-name__last {*/
/*    width: 33%;*/
/*}*/

.cog-body .cog-input input, .cog-body .cog-input textarea, .cog-body .cog-input select {
    border-color: rgba(44, 48, 76, .4);
    border-radius: 9999px;
    border-width: 1px;
    padding: 1.75rem 3rem;
    --tw-text-opacity: 1;
    color: rgb(87 108 154 / var(--tw-text-opacity, 1));
    line-height: 1.2;
    margin: 0;
    transition: border-color .4s ease-in-out, background-color .4s ease-in-out;
}

.cog-body .cog-input select {
    -webkit-appearance: none;
    appearance: none;
}

.cog-body .cog-input .cog-picker {
    position: relative;
}

.cog-body .cog-input .cog-picker:after {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    top: 1.5rem;
    right: 2rem;
    position: absolute;
    height: 25px;
    width: 45px;
}

.cog-body .cog-input textarea {
    border-radius: 35px;
}

.cog-body .el-radio__input input {
    display: none;
}

.cog-body .el-radio__input .el-radio__inner {
    position: relative;
    display: inline-block;
    max-width: 100%;
    padding: 3px 0 10px 40px;
    font-size: clamp(13px, 1vw, 18px);
    line-height: inherit;
    cursor: pointer;
}

.cog-body .el-radio__input .el-radio__inner::before {
    border-width: 1px;
    --tw-border-opacity: 1;
    background: transparent;
    border-color: rgb(87 108 154 / var(--tw-border-opacity, 1));
    height: 21px;
    left: 0;
    margin: -14px 0 0;
    width: 21px;
    border-radius: 50%;
}

.cog-body .el-radio__input .el-radio__inner::after {
    --tw-border-opacity: 1;
    background-color: rgb(87 108 154 / var(--tw-bg-opacity, 1));
    height: 11px;
    left: 5px;
    margin: -9px 0 0;
    opacity: 0;
    transform: translate3d(-40px, 0, 0) scale(.5);
    transition: opacity .25s ease-in-out, transform .25s ease-in-out;
    width: 11px;
    border-radius: 50%;
}

.cog-body .el-radio__input .el-radio__inner::before, .cog-body .el-radio__input .el-radio__inner::after {
    content: "";
    position: absolute;
    top: 50%;
}

.cog-body .el-radio-group .el-radio.is-checked .el-radio__input .el-radio__inner::after {
    opacity: 1;
    transform: translateZ(0);
}

/* Changes 29/05 */

.pb-10 {
    padding-bottom: 2.5rem;
}

.team-member-card {
    cursor: pointer;
}

.river_footer p {
    font-size: 2rem;
    line-height: 1.5;
    margin-top: 5rem;
}

@media(max-width: 768px) {
    .river_footer img.logo {
        margin-top: 5rem;
    }
}

.sidebar-content .sidebar-menu ul li span {
    font-size: clamp(2.5rem, 1.8vw, 3rem);
}

.cog-form__content .cog-heading {
    font-size: 3rem;
}

.bg {
    object-fit: contain!important; /* Or use 'cover' depending on desired effect */
    object-position: center!important;
}