/* local font */
@font-face {
	font-family: 'Satoshi';
	src: url('assets/fonts/Satoshi-Black.ttf') format('ttf'),
		url('assets/fonts/Satoshi-Black.woff') format('woff');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Satoshi';
	src: url('assets/fonts/Satoshi-Bold.ttf') format('ttf'),
		url('assets/fonts/Satoshi-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Satoshi';
	src: url('assets/fonts/Satoshi-Medium.ttf') format('ttf'),
		url('assets/fonts/Satoshi-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Satoshi';
	src: url('assets/fonts/Satoshi-MediumItalic.ttf') format('ttf'),
		url('assets/fonts/Satoshi-MediumItalic.woff') format('woff');
	font-weight: 500;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Satoshi';
	src: url('assets/fonts/Satoshi-Regular.ttf') format('ttf'),
		url('assets/fonts/Satoshi-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}


@font-face {
	font-family: 'Satoshi';
	src: url('assets/fonts/Satoshi-Light.ttf') format('ttf'),
		url('assets/fonts/Satoshi-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

/* NULL*/

*,
p,
.entry-content p {
	padding: 0;
	margin: 0;
	border: 0;
	font-family: inherit !important;
}

*,
*::after,
*::before {
	box-sizing: border-box
}

*::after,
*::before {
	display: inline-block
}

body,
html {
	height: 100%;
	min-width: 320px;
}

body {
	font-family: 'Satoshi', sans-serif !important;
	padding-top: 34px;
	line-height: 1;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

input,
textarea {
	width: 100%
}

label {
	display: inline-block
}

button,
option,
select {
	cursor: pointer
}

a {
	display: inline-block;
	color: inherit;
	text-decoration: none
}

ul li {
	list-style: none;
}

img {
	vertical-align: top
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: inherit;
	font-size: inherit;

}

h1,
h2,
h3 {
	/* font-family: 'Satoshi-Light', sans-serif !important;
	font-weight: 300; */
}

h1 strong,
h2 strong,
h3 strong,
h4 strong {
	font-weight: 700;
}

.lock body {
	overflow: hidden;
	touch-action: none;
	-ms-scroll-chaining: none;
	overscroll-behavior: none
}

[class*=__container] {
	max-width: 1472px !important;
	margin: 0 auto
}

body::after {
	content: "";
	background-color: rgba(0, 0, 0, .5);
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0;
	transition: opacity .8s ease 0s;
	pointer-events: none;
	z-index: 149
}

p.uagb-heading-text a,
ul.wp-block-list li a {
	text-decoration:underline;
}

ul.wp-block-list li {
	list-style: disc;
	line-height:1.6em
}

ol.wp-block-list li {
	line-height:1.6em
}


/* header */

.header {
	position: relative;
	z-index: 10;
	background-color: transparent;
}

.header__container {
	display: grid;
	grid-template-columns: 1fr 1000px 1fr;
	align-items: center;
}

.header__logo {
	position: relative;
	width: 100px;
	height: 100px;
}

.header__logo>img,
.header__logo>picture {
	z-index: 2;
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.header__logo picture img,
.header__logo picture source {
	z-index: 2;
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: contain;
}


/* menu */

.menu__body div {
	display: flex;
	align-items: center;
	justify-content: center;
}

.menu nav div>ul {
	display: flex;
	align-items: center;
	margin: 0;
	backdrop-filter: blur(8px);
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.15);
	background: rgba(255, 255, 255, 0.8);
	width: fit-content;
	padding: 0px 50px;
	border-radius: 30px;
	column-gap: 50px;
}

.menu nav ul li a {
	position: relative;
	font-weight: 500;
	padding: 15px 0px;
}

.icon-menu {
	display: none
}

.menu-item-has-children {
	position: relative;
}

.sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: -16px;
	padding: 0px 16px;
	min-width: 140px;
	z-index: 100;
	backdrop-filter: blur(4px);
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid #f7f7f7;
	border-radius: 16px;
	margin: 0;
}

.menu nav ul.sub-menu li a {
	padding: 0;
}

.sub-menu:first-of-type li {
	padding-top: 15px;
}

.sub-menu:last-of-type li {
	padding-bottom: 15px;
}

.sub-menu.submenu-open {
	display: flex;
	flex-direction: column;
}

.current-menu-item {
	color: #e6501b;
}

/* footer */

.footer__boottom {
	display: flex;
	flex-direction: column;
	row-gap: 35px;
	font-size: 16px !important;
}

.footer__bottom-center {
	display: flex;
	align-items: center;
	gap: 20px;
}

.footer__bottom-center a {
	width: 40px;
	height: 40px;
}

.footer__bottom-center a img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.footer__bottom-top {
	display: flex;
	justify-content: space-around;
	align-items: center;
	gap: 30px;
	color: #ccc !important;
}

.footer__bottom-copy {
	color: #717171 !important;
}

.footer__bottom-left,
.footer__bottom-copy {
	line-height: 162%;
}


.footer__bottom-right {
	display: flex;
	align-items: center;
}

.footer__bottom-right span:first-of-type {
	padding-right: 15px;
	border-right: 1px solid #cccccc;
}

.footer__bottom-right span:last-of-type {
	padding-left: 15px;
}

/* Custom styles for classes */

.custom-f-w-300 h1 {
	font-family: 'Satoshi-Light', sans-serif;
}

.custom-f-w-700 h1 {
	font-family: 'Satoshi-Bold', sans-serif;
}

.custom-width-335 {
	flex: 0 0 335px;
}

.custom-main-hero-block {
	border-radius: 40px;
	overflow: hidden;
	margin-top: -114px;
}

.custom-container-trust {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 37px;
	margin: 0 auto;
}

.custom-img-size img {
	width: 100% !important;
	height: 100%;
	object-fit: cover;
	  display: block;
  max-width: 100%;
  -webkit-transform: translateZ(0);
}

@supports (-webkit-touch-callout: none) {
  .custom-img-size img {
    width: 100vw !important;
  }
}

.custom-flex-grow {
	flex-grow: 1;
}

.custom-flex-grow>* {
	height: 100%;
}

.custom-image-decor figure,
.custom-image-decor-2 figure {
	position: relative;
}

.custom-image-decor figure::before,
.custom-image-decor-2 figure::before {
	content: '';
	position: absolute;
	left: 100%;
	top: calc(50% - 15px);
	width: 300px;
	height: 30px;
}

.custom-image-decor figure::before {
	background: center / cover url('../../uploads/2025/10/line.svg') no-repeat;
}

.custom-image-decor-2 figure::before {
	background: center / cover url('../../uploads/2025/10/line-2.svg') no-repeat;
}

.custom-list .wp-block-uagb-icon-list-child {
	padding: 22px 0px;
	border-top: 1px dashed #d7d7d7;
	width: 100%;
}

.custom-list .uagb-icon-list__wrap>div:last-of-type {
	border-bottom: 1px dashed #d7d7d7;
}

.custom-list-offers .uagb-icon-list__source-wrap {
	padding-top: 12px !important;
}

.custom-button-email-icon a::before {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	background-image: url('http://campervans/wp-content/uploads/2025/10/envelope.svg');
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 15px;
	vertical-align: middle;
	z-index: 2;
}

.custom-block-for-video {
	position: relative;
}

.custom-icon-play>span {
	backdrop-filter: blur(4px);
}

.video-wrapper {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100%;
}

.video-wrapper iframe {
	width: 100%;
	height: 100%;
}

.custom-posts article,
.custom-slider-block article {
	display: flex !important;
	flex-direction: column;
}

.custom-posts .uagb-post__title,
.custom-slider-block .uagb-post__title {
	flex: 1 1 auto;
}

.custom-posts .wp-block-button,
.custom-block-camparers .custom-width-fit-content,
.custom-slider-block .wp-block-button {
	width: fit-content !important;
}

/* filter */

.cars-filter {
	width: 100%;
	display: flex;
	align-items: center;
	column-gap: 40px;
	row-gap: 16px;
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
	background: #fff;
	border-radius: 16px;
	padding: 15px 40px;
	justify-content:space-around;
}

.filter-group {
	flex: 0 0 auto;
	position: relative;
}

.filter-group label,
.filter-group span {
	font-weight: 400;
	font-size: 18px;
	color: #848484;
}

.filter-group select {
	padding: 0;
	border: 1px solid #e1e1e1;
	border-radius: 16px;
	padding: 16px;
	width: 138px;
	height: 54px;
}

.filter-group div {
	display: flex;
	align-items: center;
	gap: 5px;
}

.filter-group label,
#filter-transmission span {
	display: block;
	margin-bottom: 5px;
}

#filter-spots {
	display: flex;
	flex-direction:column;
	align-items: flex-start;
	gap: 5px;
}

.filter-group input[type="radio"] {
	display: none;
}

#filter-transmission label,
#filter-spots label {
	display: inline-block;
	border: 1px solid #e1e1e1;
	border-radius: 16px;
	padding: 16px;
	font-weight: 400;
	font-size: 16px;
	color: #121212;
	cursor: pointer;
	font-size: 16px;
	transition: all 0.2s ease;
	white-space: nowrap;
	margin: 0;
	height: 54px;
}

#filter-transmission input[type="radio"]:checked+label,
#filter-spots input[type="radio"]:checked+label {
	border: 1px solid #121212;
	font-weight: 700;
}

#filter-category,
#filter-brand {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;

	border: 1px solid #e1e1e1;
	border-radius: 16px;
	padding: 16px;
	font-weight: 400;
	font-size: 16px;
	color: #121212;
	cursor: pointer;
	transition: all 0.2s ease;
}

.select-arrow {
	position: absolute;
	pointer-events: none;
	right: 16px;
	bottom: 11px;
	transform: translateY(-50%);
	transition: transform 0.2s ease;
}

/* .filter-group select:focus+.select-arrow, */
.filter-group.open .select-arrow {
	transform: translateY(-50%) rotate(180deg);
}


@media (max-width:1200px) {

	.custom-image-decor figure::before,
	.custom-image-decor-2 figure::before {
		width: 250px;
	}

	.cars-filter {
		padding: 12px;
		column-gap: 20px;
	}
}

@media (max-width:992px) {
	.header__container {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 20px;
		padding: 0px 32px;
	}
	
	.header__logo {
		margin-left:16px;
	}

	.menu__body {
		position: fixed;
		width: 100%;
		height: 100%;
		left: -100%;
		top: 0;
		overflow: auto;
		padding: 1.25rem;
		transition: left .3s;
		background-color: #fff
	}

	.menu-open .menu__body {
		left: 0
	}

	.menu nav div>ul {
		padding: 0;
		width: 100%;
		box-shadow: none;
		align-items: flex-start;
	}

	.menu nav ul li {
		width: 100%;
		text-align: left;
		border-bottom: 1px solid #d7d7d7;
	}

	.menu nav div ul:last-of-type li:last-of-type {
		border: none
	}

	.menu nav ul li a {
		width: 100%;
		font-size: 18px;
	}

	.menu nav ul {
		flex-direction: column;
	}

	.menu nav {
		padding-top: 190px;
		z-index: -1
	}

	.menu {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-right:16px;
	}

	.icon-menu {
		display: block;
		position: relative;
		z-index: 5;
		padding: 0;
		width: 40px;
		height: 40px;
		border-radius: 5px;
		backdrop-filter: blur(8px);
		box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.15);
		background: rgba(255, 255, 255, 0.8);
		border: none;
	}

	.icon-menu span,
	.icon-menu::after,
	.icon-menu::before {
		content: "";
		transition: all .3s ease 0s;
		right: 12px;
		position: absolute;
		width: 18px;
		height: 1px;
		background-color: #121212
	}

	.icon-menu::before {
		top: 14px
	}

	.icon-menu::after {
		bottom: 14px
	}

	.icon-menu span {
		top: 19px
	}

	.menu-open .icon-menu span {
		width: 0
	}

	.menu-open .icon-menu::before {
		top: 20px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg)
	}

	.menu-open .icon-menu::after {
		bottom: 19px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg)
	}

	.menu-item-has-children {
		position: static;
	}

	.sub-menu {
		border: none;
	}

	.header__menu .menu-item-has-children .sub-menu {
		position: static;
		box-shadow: none;
		display: none;
	}

	.header__menu .menu-item-has-children>a {
		justify-content: space-between;
		display: flex;
	}

	.header__menu .sub-menu.submenu-open {
		display: block;
	}

	.header__menu .menu-item-has-children ul li a {
		font-size: 16px;
		position: relative;
		padding-left: 12px !important;
	}

	.header__menu .menu-item-has-children ul li a::before {
		content: '';
		position: absolute;
		left: -6px;
		top: 6px;
		width: 4px;
		height: 4px;
		border-radius: 50%;
		background: #121212;
	}

	.custom-image-decor figure::before,
	.custom-image-decor-2 figure::before {
		display: none;
	}

	.footer__bottom-top {
		flex-direction: column;
	}

	.footer__bottom-left {
		order: 1;
	}

	.footer__bottom-center {
		order: 3;
	}

	.footer__bottom-right {
		order: 2;
	}

	.custom-width-fit-content {
		width: fit-content !important;
	}

	.cars-filter {
		flex-wrap: wrap;
		justify-content:flex-start;
	}
}

@media (max-width:920px) {
	.header__menu .menu-item-has-children>a {
		flex-direction: row-reverse;
	}
}

@media (max-width:768px) {
	.wp-block-uagb-container.custom-container-trust.uagb-block-625614a7.default.uagb-is-root-container {
		max-width: calc(100% - 60px) !important;
		bottom: 22px;
	}
}

@media (max-width:500px) {

	.footer__bottom-right {
		flex-direction: column;
		row-gap: 10px;
	}

	.footer__bottom-right span:first-of-type {
		padding: 0;
		order: 0;
	}

	.footer__bottom-right span:last-of-type {
		padding: 0;
	}

	#filter-spots {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (any-hover:hover) {
	.icon-menu {
		cursor: default
	}

	.menu nav ul li a:hover::before {
		width: 3.125rem;
		transition: all .3s ease 0s
	}

	.custom-button-email-icon a:hover::before {
		background-image: url('http://campervans/wp-content/uploads/2025/10/envelope-white.svg');
	}
	
	p.uagb-heading-text a:hover,
	ul.wp-block-list li a:hover {
		text-decoration:none;
		color:inherit;
	}

	#filter-transmission label:hover,
	#filter-spots label:hover,
	#filter-category:hover,
	#filter-brand:hover {
		border: 1px solid #121212;
	}
}