/*!
Theme Name: CBD
Theme URI: https://www.cbwebsitedesign.co.uk/
Author: CreativeWeb
Author URI: https://www.cbwebsitedesign.co.uk/
Description: Bespoke theme for London Van Hire by CreativeWeb
Version: 04.12.24
Text Domain: cbd
*/
@media (min-width: 1024px) {
    .lg\:justify-end {
        justify-content: flex-end;
    }
}
/* Amends */
#swiperBenefits .swiper-slide {
    height: auto;
}
#swiperBenefits .swiper-slide article {
    height: 100%;
    display: flex;
    flex-direction: column;
}
#swiperBenefits .swiper-slide article > div:nth-child(2) {
    flex: 1;
}

.pb-\[110\%\] {
    padding-bottom: 88%;
}

@media (min-width: 62rem) {
    .menu__sublist {
        left: 50%;
        transform: translate(-50%, 10%);
    }
    body.pc .menu__list>li:hover .menu__sublist {
        transform: translate(-50%, 0);
    }
}

section:not(.bg-black):not(.bg-gray-pearl):has(.container > .py-12:not(.keep-padding)),
    section:not(.bg-black):not(.bg-gray-pearl):has(> .py-12:not(.keep-padding)) {
        margin-bottom: 4rem;
        margin-top: 4rem;
    }
    section:not(.bg-black):not(.bg-gray-pearl) .container > .py-12:not(.keep-padding),
    section:not(.bg-black):not(.bg-gray-pearl) > .py-12:not(.keep-padding) {
        padding-bottom: 0;
        padding-top: 0;
    }

@media (min-width: 768px) {
    section:not(.bg-black):not(.bg-gray-pearl):has(.container > .md\:py-16:not(.keep-padding)),
    section:not(.bg-black):not(.bg-gray-pearl):has(> .md\:py-16:not(.keep-padding)) {
        margin-bottom: 5rem;
        margin-top: 5rem;
    }
    section:not(.bg-black):not(.bg-gray-pearl) .container > .md\:py-16:not(.keep-padding),
    section:not(.bg-black):not(.bg-gray-pearl) > .md\:py-16:not(.keep-padding) {
        padding-bottom: 0;
        padding-top: 0;
    }
    section:not(.bg-black):not(.bg-gray-pearl):has(.container > .md\:py-20:not(.keep-padding)),
    section:not(.bg-black):not(.bg-gray-pearl):has(> .md\:py-20:not(.keep-padding)) {
        margin-bottom: 6rem;
        margin-top: 6rem;
    }
    section:not(.bg-black):not(.bg-gray-pearl) .container > .md\:py-20:not(.keep-padding),
    section:not(.bg-black):not(.bg-gray-pearl) > .md\:py-20:not(.keep-padding) {
        padding-bottom: 0;
        padding-top: 0;
    }
}

@media (min-width: 1024px) {
    section:not(.bg-black):not(.bg-gray-pearl):has(.container > .lg\:py-20:not(.keep-padding)),
    section:not(.bg-black):not(.bg-gray-pearl):has(> .lg\:py-20:not(.keep-padding)) {
        margin-bottom: 6rem;
        margin-top: 6rem;
    }
    section:not(.bg-black):not(.bg-gray-pearl) .container > .lg\:py-20:not(.keep-padding),
    section:not(.bg-black):not(.bg-gray-pearl) > .lg\:py-20:not(.keep-padding) {
        padding-bottom: 0;
        padding-top: 0;
    }
    section:not(.bg-black):not(.bg-gray-pearl):has(.container > .lg\:py-24:not(.keep-padding)),
    section:not(.bg-black):not(.bg-gray-pearl):has(> .lg\:py-24:not(.keep-padding)),
    section:not(.bg-black):not(.bg-gray-pearl):has(> div > .lg\:py-24:not(.keep-padding)) {
        margin-bottom: 8rem;
        margin-top: 8rem;
    }
    section:not(.bg-black):not(.bg-gray-pearl) .container > .lg\:py-24:not(.keep-padding),
    section:not(.bg-black):not(.bg-gray-pearl) > .lg\:py-24:not(.keep-padding),
    section:not(.bg-black):not(.bg-gray-pearl) > div > .lg\:py-24:not(.keep-padding) {
        padding-bottom: 0;
        padding-top: 0;
    }
}

@media (min-width: 1600px) {
    section:not(.bg-black):not(.bg-gray-pearl):has(.container > .\32xl\:py-24:not(.keep-padding)),
    section:not(.bg-black):not(.bg-gray-pearl):has(> .\32xl\:py-24:not(.keep-padding)) {
        margin-bottom: 8rem;
        margin-top: 8rem;
    }
    section:not(.bg-black):not(.bg-gray-pearl) .container > .\32xl\:py-24:not(.keep-padding),
    section:not(.bg-black):not(.bg-gray-pearl) > .\32xl\:py-24:not(.keep-padding) {
        padding-bottom: 0;
        padding-top: 0;
    }
}

@media (max-width: 599px) {
    .js-vans-filter > div {
        width: 100%;
    }
}

/* 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 */
.max-w-\[32rem\] {
    max-width: 32rem;
}

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

/* 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 */
@media (max-width: 61rem) {
    .menu__btn-box {
        align-items: center;
    }
}

/* Pagination */
.pagination .page-numbers:not(.dots) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background-color: var(--color-white);
    border-radius: 9999px;
    border-width: 1px;
    border-color: var(--color-gray-christmas-silver);
    font-weight: 400;
    font-size: 1rem;
    line-height: 1;
    color: var(--color-black);
    transition-duration: .3s;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
}

.pagination .page-numbers.prev,
.pagination .page-numbers.next {
    width: 1.25rem;
    height: 1.25rem;
    font-size: .75rem;
}

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

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

.pagination .page-numbers.current,
.pagination a.page-numbers:hover {
    background-color: var(--color-black);
    border-color: var(--color-black);
    color: var(--color-white);
}

/* 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.75rem;
    }
}

.form .gform_wrapper.gravity-theme .gfield_label {
    margin-bottom: .5rem;
    text-transform: capitalize;
    font-weight: 400;
    font-size: .9375rem;
    color: var(--color-gray-trolley);
    line-height: 1;
}

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

.form .gform_wrapper.gravity-theme .gfield input,
.form .gform_wrapper.gravity-theme .gfield textarea,
.form .gform_wrapper.gravity-theme .gfield select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: none;
    background-color: var(--input-bg-color);
    border: var(--input-border-width) var(--input-border-style) var(--input-border-color);
    border-radius: var(--input-border-radius);
    color: var(--input-text-color);
    display: block;
    font-size: var(--input-font-size, 1rem);
    font-weight: var(--input-font-weight, 400);
    line-height: var(--input-line-height, 1);
    min-height: var(--input-height);
    outline: none;
    padding: var(--input-padding-y) var(--input-padding-x);
    resize: none;
    transition: border-color var(--transition-duration-primary), box-shadow var(--transition-duration-primary);
    width: 100%;
}

@media (max-width: 641px) {
    .form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
        min-height: var(--input-height);
        line-height: var(--input-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(--input-placeholder-color, inherit);
}

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

.form .gform_wrapper.gravity-theme .gfield input:focus,
.form .gform_wrapper.gravity-theme .gfield textarea:focus,
.form .gform_wrapper.gravity-theme .gfield select:focus {
    border-color: var(--color-gray-trolley);
    box-shadow: none;
    outline: none;
}

.form .gform_wrapper.gravity-theme .gfield textarea {
    --input-border-radius: 0.3125rem;
    --input-padding-y: 0.875rem;
}

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

.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: 1.5rem;
    font-weight: 400;
    font-size: .875rem;
    line-height: inherit;
    letter-spacing: -.00875rem;
    color: var(--color-gray-trolley);
    cursor: pointer;
}

.form .gform_wrapper.gravity-theme .gchoice label:before {
    content: '';
    display: inline-block;
    min-width: 0;
    width: 1rem;
    height: 1rem;
    border: 1px solid var(--color-yellow-wheat-bread);
    border-radius: 50%;
    transition: background-color var(--transition-duration-primary), color var(--transition-duration-primary);
    position: absolute;
    top: 0.175rem;
    left: 0;
}

.form .gform_wrapper.gravity-theme .gchoice input:checked + label:before {
    background-color: var(--color-yellow-wheat-bread);
    color: var(--color-white);
}

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

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

.form .gform_wrapper.gravity-theme .gfield--type-time .ginput_complex {
    flex-flow: nowrap;
}

.form .gform_wrapper.gravity-theme .ginput_container_time {
    flex-basis: 50%;
    max-width: 100%;
    min-width: auto;
}

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-black);
    font-weight: 500;
}

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-black);
}

body .gravity-theme.ui-datepicker .ui-datepicker-calendar .ui-state-disabled .ui-state-default {
    color: var(--color-gray-trolley);
}

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

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-black);
}

.form .gform_wrapper.gravity-theme label a {
    color: var(--color-primary);
    text-decoration: underline;
}

.form .gform_wrapper.gravity-theme label a:hover {
    text-decoration: none;
}

.form .gform_wrapper.gravity-theme #field_submit {
    align-items: flex-start;
}

@media (min-width: 641px) {
    .form .gform_wrapper.gravity-theme #field_submit {
        justify-content: flex-end;
    }
}

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

.form .gform_wrapper.gravity-theme .gfield_validation_message, 
.gform_wrapper.gravity-theme .validation_message {
    border-radius: var(--input-border-radius);
}

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

.form .gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
    border: 1px solid #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.75) url(img/loader.gif) 50% / 5rem no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 25;
}
/* Extra */
@media (min-width: 1024px) {
    .lg\:leading-\[1\.3\] {
        line-height: 1.7;
    }
}
@media (min-width: 1024px) {
    .lg\:text-4xl:not([class*='2xl']) {
        font-size: 1.8rem;
    }
}

/* Phone Button */
.btn-phone-size {
    font-size: 1rem;
    transition: border-color var(--transition-duration-long),background-color var(--transition-duration-long),box-shadow var(--transition-duration-long),left var(--transition-duration-long),top var(--transition-duration-long),color var(--transition-duration-long), 0.5s filter linear;
}

.btn__phone {
    align-items: center;
    background-color: transparent;
    border: .0625rem solid;
    border-radius: var(--button-arrow-size);
    color: inherit;
    display: flex;
    flex: 0 0 var(--button-arrow-size);
    font-size: calc(var(--button-arrow-size)*.5);
    font-weight: 400;
    height: var(--button-arrow-size);
    justify-content: center;
    line-height: 1;
    width: var(--button-arrow-size);
}

.btn__phone {
    position: relative;
    z-index: 9;
}

.btn__phone:before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E");
    height: 10px;
    width: 10px;
    background-repeat: no-repeat;
    filter: invert(100%);
}

.header--white .btn__phone:before {
    filter: invert(0%);
}

.header--white .btn.btn-phone-size:hover .btn__phone:before {
    filter: invert(100%);
}

/* Changes 12/06 */
.js-vans-block .h3 {
    font-size: 1rem;
}

.group\/van,
.group\/range {
    padding-top: 5.5rem;
}
.group\/van .title,
.group\/range .title {
    top: -5.5rem;
}
.group\/van .bottom-4,
.group\/range .bottom-4 {
    bottom: 0;
}
@media (min-width: 1024px) {
    .group\/van,
    .group\/range {
        top: 4.85rem;
    }
    .group\/van .title,
    .group\/range .title {
        top: -4.85rem;
    }
}
.mobile-phone {
    display: none;
}
@media (max-width: 61rem) {
    .mobile-phone {
        display: block;
    }
    .header__menu {
        display: flex;
        align-items: center;
        gap: 1rem;
    }
    .menu__sublist {
        padding: 0;
    }
    .menu__list>li {
        width: 100%;
        position: relative;
    }
    .header--transparent .menu__sublist>li:not(:last-child) {
        border-color: var(--color-white);
    }
    .menu__sublist>li>a {
        padding: .5rem 0;
        width: 100%;
    }
    .menu__list>li>a,
    .menu__arrow {
		padding-top: 1rem;
        padding-bottom: 1rem;
    }
    .menu__arrow {
        position: absolute;
        right: 0;
    }
    .menu-item._active > a {
        color: #907749;
    }
/* 	body.touch .menu__list>li .menu__sublist:has(.current-menu-item) {
		max-height: 80vh;
		pointer-events: all;
	} */
/* 	.menu-item-has-children.current-menu-item > a,
	.menu-item-has-children:has(.current-menu-item) > a{
		color: #907749;
	} */
/* 	.current-menu-item {
		color: #fff;
		background-color: #907749;
		border-bottom: none;
	}
	.current-menu-item.menu-item._active > a {
		color: #fff;
	}
	.current-menu-item ul li:not(.current-menu-item) {
		background-color: #e5e7eb;
		color: var(--color-black);	
	}
   .menu__sublist>li:not(:last-child) {
        border-bottom: none;
    } */
}
.hero-top {
    top: 64px;
}
@media (min-width: 1024px) {
    .hero-top {
        top: 0;
    }   
    .lg\:min-h-screen {
        min-height: 100vh;
    }
}
.acf-map {
    position: relative;
    width: 100%;
    height: max(30.6vw, 400px);
}
.header._hidden {
	transform: translateY(0);
}
.header._hidden .header__wrap {
	padding: 1rem 0;
	transition: .3s all;
}
.btn--gold {
	background-color: #DDBB80;
	border-color: #DDBB80;
}
.btn--gold .btn__phone::before {
	filter: invert(100%);
}
.btn--gold:not(:disabled,._disabled):hover {
	background-color: #000;
	border-color: #DDBB80;
	color: #FFF;
}