/*!
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;
}

/* Custom */
.pt-0 {
    padding-top: 0;
}

.pb-0 {
    padding-bottom: 0;
}

@media (min-width: 1024px) {
    .flex-row-reverse {
        flex-direction: row-reverse
    }
}

.break-word {
    word-break: break-word;
}

/* Admin Bar */
.admin-bar .wrapper {
    margin-top: 32px;
    min-height: calc(100vh - 32px);
}

.admin-bar .header {
    top: 32px;
}

@media (max-width: 61rem) {
    .admin-bar .menu__body {
        top: 32px;
        height: calc(100% - 32px);
    }
}

@media (max-width: 782px) {
    .admin-bar .wrapper {
        margin-top: 46px;
        min-height: calc(100vh - 46px);
    }

    .admin-bar .header {
        top: 46px;
    }

    .admin-bar .menu__body {
        top: 46px;
        height: calc(100% - 46px);
    }
}

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

/* Header */
.menu__list > li.current-menu-item > a {
    color: var(--color-purple-candy-dreams);
}

/* CTA & Content */
.cta-content h5 {
    font-family: inherit;
}

/* Featured Properties */
.featured-properties [data-map-popup] figure img {
	height: 10rem;
}

@media (min-width: 480px) {
	.featured-properties [data-map-popup] figure img {
		height: 15rem;
	}
}

/* Properties */
.group\/property:hover {
    background-color: var(--color-white);
    color: var(--color-purple-sambucus);
}

/* Rows & Map */
@media (max-width: 1024px) {
	.rows-map ul li .group\/link:hover .group-hover\/link\:-translate-x-\[10\%\] {
		--tw-translate-x: -0;
	}
	
	.rows-map ul li .group\/link:hover .group-hover\/link\:-translate-y-\[20\%\] {
		--tw-translate-y: 0;
	}
}

/* Pagination */
.pagination .page-numbers:not(.prev, .next, .dots) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    font-weight: 400;
    color: var(--color-white);
    font-size: 1rem;
    line-height: 1;
    opacity: .4;
    transition-duration: .3s;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
}

@media (min-width: 1024px) {
    .pagination .page-numbers:not(.prev, .next, .dots) {
        width: 3rem;
        height: 3rem;
        font-size: 1.25rem;
    }
}

.pagination a.page-numbers:hover,
.pagination .page-numbers.current {
    opacity: 1;
}

.pagination .page-numbers.prev,
.pagination .page-numbers.next {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    flex-basis: 4rem;
    height: 3rem;
    padding: .25rem;
    border-width: 1px;
    border-color: var(--color-purple-candy-dreams);
    font-size: 1rem;
    line-height: 1.5rem;
    color: var(--color-white);
    transition-duration: .3s;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
}

@media (min-width: 1024px) {
    .pagination .page-numbers.prev,
    .pagination .page-numbers.next {
        height: 4rem;
        font-size: 1.125rem;
        line-height: 1.75rem;
    }
}

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

@media (min-width: 1024px) {
    .pagination .page-numbers.prev {
        margin-right: .75rem;
    }
}

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

@media (min-width: 1024px) {
    .pagination .page-numbers.next {
        margin-left: .75rem;
    }
}

.pagination .page-numbers.prev:hover,
.pagination .page-numbers.next:hover {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

/* Card Slider */
#swiperEmptyHomesBenefits .swiper-slide .figure-box {
	height: 14.5rem;
}

@media (min-width: 480px) {
	#swiperEmptyHomesBenefits .swiper-slide .figure-box {
		height: 26.125rem;
	}
}

/* Content & Overview */
@media (min-width: 1025px) {
	.content-overview .figure-box {
		height: 36.155vw;
	}
}

/* Image & Content */
@media (min-width: 1025px) {
	.image-content .figure-box {
		height: 36.155vw;
	}
}

/* Content & Image */
@media (min-width: 1025px) {
	.content-image .figure-box {
		height: 36.155vw;
	}
}

/* Content */
.text-white .prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)) {
    color: inherit;
}

.text-white .prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)) {
    color: inherit;
    transition-duration: .3s;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
}

.text-white .prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)):hover {
    color: var(--color-primary);
}

/* Gravity Form */
.form .gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: 1rem;
    grid-column-gap: 1rem;
}

@media (min-width: 1024px) {
    .form .gform_wrapper.gravity-theme .gform_fields {
        grid-row-gap: 1.75rem;
        grid-column-gap: 1.5rem;
    }
}

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

.form .gform_wrapper.gravity-theme .gfield_label {
    margin: 0 0 0.5rem;
    font-weight: 600;
    font-size: var(--body-font-size);
}

.form .gform_wrapper.gravity-theme .gfield input,
.form .gform_wrapper.gravity-theme .gfield textarea,
.form .gform_wrapper.gravity-theme .gfield select {
    width: 100%;
    background-color: transparent;
    border-width: 0;
    border-bottom-width: 1px;
    border-bottom-color: var(--color-purple-sambucus-400);
    padding: 1.5rem 0;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1;
    color: var(--color-purple-sambucus);
    transition-duration: .3s;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
}

.form-light .gform_wrapper.gravity-theme .gfield input,
.form-light .gform_wrapper.gravity-theme .gfield textarea,
.form-light .gform_wrapper.gravity-theme .gfield select {
    border-color: var(--color-white-400);
    color: var(--color-white);
}

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

.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: var(--color-purple-sambucus-800);
}

.form-light .gform_wrapper.gravity-theme .gfield input::placeholder,
.form-light .gform_wrapper.gravity-theme .gfield textarea::placeholder,
.form-light .gform_wrapper.gravity-theme .gfield select::placeholder {
    color: var(--color-white-800);
}

.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-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);
}

.form-light .gform_wrapper.gravity-theme .gfield input:hover,
.form-light .gform_wrapper.gravity-theme .gfield textarea:hover,
.form-light .gform_wrapper.gravity-theme .gfield select:hover,
.form-light .gform_wrapper.gravity-theme .gfield input:focus,
.form-light .gform_wrapper.gravity-theme .gfield textarea:focus,
.form-light .gform_wrapper.gravity-theme .gfield select:focus {
    border-color: var(--color-white);
}

.form .gform_wrapper.gravity-theme .gfield .choices__inner {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid var(--color-purple-sambucus-400);
    color: var(--color-purple-sambucus);
    font-size: 1.25rem;
    min-height: 5rem;
    padding-left: 0;
    padding-right: 1rem;
    padding-top: calc(5rem * .225);
    transition: border-color var(--transition-duration-primary);
    padding-bottom: 7.5px;
}

.form .gform_wrapper.gravity-theme .gfield .choices__list--dropdown {
	box-shadow: 0 0 0 .125rem var(--color-purple-candy-dreams);
}

.form-light .gform_wrapper.gravity-theme .gfield .choices__inner {
    border-color: var(--color-white-400);
    color: var(--color-white);
}

.form .gform_wrapper.gravity-theme .gfield .choices__placeholder {
    color: var(--color-purple-sambucus-800);
}

.form-light .gform_wrapper.gravity-theme .gfield .choices__placeholder {
    color: var(--color-white-800);
}

.form .gform_wrapper.gravity-theme .gfield .choices[data-type*=select-one]:after {
    border: none;
    content: "\e911";
    font-family: var(--font-icons);
    font-size: .5rem;
    height: auto;
    margin-top: 0;
    right: 0;
    transform: translateY(-50%);
    width: auto;
}

.form .gform_wrapper.gravity-theme .gfield textarea {
    padding-bottom: 1.5rem;
    padding-top: 1.5rem;
    resize: none;
}

.form .gform_wrapper.gravity-theme .gfield textarea.small {
    height: 168.8px;
}

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

.form .gform_wrapper.gravity-theme .gfield--type-choice {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.form .gform_wrapper.gravity-theme .gchoice {
    margin: 1rem 0 0;
}

.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-left: 3.5rem;
    font-size: var(--body-font-size);
    line-height: inherit;
    cursor: pointer;
}

.form .gform_wrapper.gravity-theme .gchoice label:before {
    content: '';
    display: inline-block;
    border: 1px solid var(--color-white);
    border-image-slice: 1;
    border-image-source: linear-gradient(90deg, #e8a8f5, #753fd5);
    border-width: .0625rem;
    display: block;
    height: 1.75rem;
    min-width: 0;
    position: relative;
    width: 1.75rem;
    position: absolute;
    top: 0;
    left: 0;
}

.form .gform_wrapper.gravity-theme .gfield_radio .gchoice label:before {
    border-radius: 50%;
    background: linear-gradient(45deg, #e8a8f5, #753fd5) border-box;
    mask: linear-gradient(#000 0 0) padding-box, linear-gradient(#000 0 0);
    mask-composite: exclude;
}

.form .gform_wrapper.gravity-theme .gchoice label:after {
    content: '';
    border: solid var(--color-purple-sambucus);
    border-width: 0 calc(1.75rem * .083) calc(1.75rem * .083) 0;
    height: calc(1.75rem * .625);
    left: calc(1.75rem * .33);
    opacity: 0;
    position: absolute;
    top: calc(1.75rem * .1);
    transform: rotate(45deg);
    transition: visibility var(--transition-duration-primary), opacity var(--transition-duration-primary);
    visibility: hidden;
    width: calc(1.75rem * .33);
}

.form-light .gform_wrapper.gravity-theme .gchoice label:after {
    border-color: var(--color-white);
}

.form .gform_wrapper.gravity-theme .gfield_radio .gchoice label:after {
    width: 0.95rem;
    height: 0.95rem;
    border-width: calc(1.75rem* .083);
    border-radius: 50%;
    top: 0.4rem;
    left: 0.4rem;
}

.form .gform_wrapper.gravity-theme .gchoice input:checked + label:after {
    visibility: visible;
    opacity: 1;
}

body .gravity-theme.ui-datepicker .ui-datepicker-header select,
body .gravity-theme.ui-datepicker .ui-datepicker-calendar th span {
    font-size: var(--body-font-size);
    color: var(--color-purple-sambucus);
    font-weight: 600;
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar td {
    font-size: .9375rem;
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-state-default {
    color: var(--color-purple-sambucus);
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-state-disabled .ui-state-default {
    color: var(--color-purple-sambucus-800);
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-datepicker-current-day .ui-state-default {
    background: var(--color-primary);
    border-color: var(--color-primary);
}

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 {
    border-color: var(--color-primary);
}

.form .gform_wrapper.gravity-theme .gfield a {
	text-decoration: underline;
	font-weight: 500;
    transition-duration: .3s;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
}

.form .gform_wrapper.gravity-theme .gfield a:hover {
    color: var(--color-primary);
}

.form .gform_wrapper.gravity-theme #field_submit {
    align-items: flex-start;
    justify-content: flex-end;
    margin: 2rem 0 0;
}

@media (max-width: 641px) {
    .form .gform_wrapper.gravity-theme #field_submit {
        justify-content: flex-start;
        margin: 0.5rem 0 0;
    }
}

@media (max-width: 641px) {
    .form .gform_wrapper.gravity-theme #field_submit button {
        width: 100%;
    }
}

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

.form .gform_wrapper.gravity-theme .gfield_error label {
    color: #c02b0a;
}

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

/* Ajax Loading */
.ajax_loading {
    position: relative;
    pointer-events: none;
}

.ajax_loading:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.5) url(img/loader.gif) 50% / 5rem no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 25;
}

/* Changes 04/06 */
.header__logo {
    --logo-width: 15rem;
}

@media(max-width: 61rem) {
    .header__logo img {
        max-height: 2.625rem;
    }
}

@media (min-width: 97.5rem) {
    .header__logo {
        --logo-width: 32.5rem;
    }
}