/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

:root {
	--color-accent: #FFE102;
	--color-text: #6C6C6C;
	--color-grey-light:#F4F4F4;
	--color-black: #000;
	--radius: 30px;
	--font-size-base: 16px;
}

body {
	font-family: 'Lexend', sans-serif;
	margin:0;
	padding:0;
	line-height:1.5em;
}

* {box-sizing:border-box;font-weight:initial;}
strong, b {font-weight:700;}
figure {margin:0;padding:0;}
.mb-0 {margin-bottom:0 !important;}

.grecaptcha-badge {display:none !important;}

ul.contacts {list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5em;width:fit-content;}
ul.contacts a,
ul.contacts p {text-decoration:none;color:#FFF;display:flex;align-items:center;gap:0.5em;}

span.icon {display:flex;width:16px;height:16px;align-items:center;justify-content:center;}
span.icon svg {width:100%;height:auto;}

.wp-block-heading {margin-top:1.75em;}

.align-items-center {align-items:center;}
.space-between {justify-content:space-between;}

/* FORM POPUP */
#formbook {
	display: none;
	align-items: center;
	justify-content: center;
	position: fixed;
 	top: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
  	background:rgba(0,0,0,0.75);
	z-index: 999;
	pointer-events: none;
}

#formbook > .elementor-container {
	pointer-events: all!important;
	background:#FFF;
	padding:30px;
	border-radius:30px;
}

#formbook.active {display:flex;}

#formbook #close-btn-wrapper {display:flex;justify-content:flex-end;}
#formbook #close-btn-wrapper .close-btn {width:40px;height:40px;display:flex;align-items:center;justify-content:center;padding:0!important;}

/* CF7 */
.wpcf7-form {
	display:flex;
	flex-flow:row wrap;
	gap:16px;
}

.wpcf7-form .field {width:100%;}
.wpcf7-form .field > p {margin:0!important;}

.wpcf7-form .field input[type="text"],
.wpcf7-form .field input[type="email"],
.wpcf7-form .field input[type="tel"],
.wpcf7-form .field input[type="date"] {
	border-radius:48px;	
}

.wpcf7-form .field textarea {border-radius:16px;}

.wpcf7-form .field-half {width:calc(50% - 8px);}
.wpcf7-form .field-full {width:100%;}
.wpcf7-form .field-full.field-submit {display:flex;justify-content:flex-end;}
.wpcf7-form .field-full.field-submit .wpcf7-spinner {order:-1;}
/* .wpcf7-form .field-submit .wpcf7-submit {width:100%;} */

.wpcf7-form .field .wpcf7-list-item {margin:0 0 8px 0!important;cursor:pointer;}
.wpcf7-form .field .wpcf7-list-item .wpcf7-list-item-label {font-size:15px;line-height:1.4em;}

.wpcf7-form .wpcf7-not-valid-tip {font-size:14px;text-transform:uppercase;}

.wpcf7-form .wpcf7-submit {
	border:none;
	outline:none;
	padding:10px 30px;
}


/* LANDING PAGE */
.lp-section {padding:100px 0;}
.lp-section.lp-section-cta {text-align:center;color:#000;}
.lp-section.lp-section-cta .btn {margin-top:1.5em;}

.lp-wrapper {max-width:1300px;margin:0 auto;padding:0 20px;}
.elementor-section.elementor-section-boxed > .elementor-container {max-width:1300px!important;}
.lp-section-title {max-width:1400px;margin:0 auto;padding:0 20px;margin-bottom:80px;}
.lp-section-title.center {text-align:center;}

.lp-site-logo {max-width:100px;height:auto;}

.elementor-button,
.custom-btn,
.wpcf7-submit {
	display:inline-block;
	padding:1em 2em!important;
	background:var(--color-accent);
	color:#000!important;
	font-size:16px!important;
	font-weight:700!important;
	line-height:1em!important;
	text-decoration:none!important;
	text-transform:uppercase!important;
	border:solid 2px var(--color-accent)!important;
	border-radius:96px!important;
	transition:all 300ms;
}

.elementor-button:hover,
.custom-btn:hover,
.wpcf7-submit:hover {
	background:#000!important;
	color:#FFF!important;
	transition:all 300ms;
}

.elementor-button span {font-size:inherit!important;color:inherit!important;font-weight:inherit!important;line-height:inherit!important;}

.title-1 {font-size:5rem!important;line-height:1.2!important;margin-top:0;margin-bottom:.5em;display:block;} /* 80px */
.title-2 {font-size:3rem!important;line-height:1.2!important;margin-top:0;margin-bottom:.5em;display:block;} /* 48px */
.title-3 {font-size:2.25rem!important;line-height:1.2!important;margin-top:0;margin-bottom:.5em;display:block;} /* 36px */
.title-4 {font-size:1.875rem!important;line-height:1.2!important;margin-top:0;margin-bottom:.5em;display:block;} /* 30px */
.title-5 {font-size:1.5rem!important;line-height:1.2!important;margin-top:0;margin-bottom:.5em;display:block;} /* 24px */

.text-xl {font-size:1.5rem;line-height:1.2;margin-top:0;margin-bottom:.5em;} /* 24px */

.notice {padding:40px;font-style:italic;text-align:center;color:var(--color-text);}

.tags-row {display:flex;flex-wrap:wrap;justify-content:center;gap:0 1em;}
.tag {
	display:inline-block;
	padding:0.5em 1em;
	color:var(--color-black);
	background:rgba(255,255,255,0.1);
	border:solid 1px var(--color-black);
	border-radius:100px;
	font-size:1rem;
	line-height:1.2;
	margin-bottom:1rem;
}
.bg-black .tag {background-color:#000;border-color:#fff;color:#fff;}

.floating-widgets {position:fixed;bottom:20px;right:20px;z-index:999;display:flex;justify-content:flex-end;gap:15px;width:fit-content;}
.floating-widgets .widget {border-radius:100%;width:42px;height:42px;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.floating-widgets .widget svg,
.floating-widgets .widget svg path {fill:inherit;}
.floating-widgets .widget.whatsapp {background:#5CD720;color:#fff;fill:#FFF;}
.floating-widgets .widget.tel {background:var(--color-accent);color:var(--color-black);fill:var(--color-black);}

.card .tag {border:unset;color:#FFF;}

.image-block {position:relative;overflow:hidden;display:block;border-radius:var(--radius);}
.image-block img {width:100%;height:100%;object-fit:cover;object-position:center;}

.bg-black {background:#000;color:#FFF;}
.color-text {color:var(--color-text);}
.color-white {color:#FFF;}

.star-rating {display:flex;align-items:center;gap:0.5em;}
.star-rating .star {width:1.5em;height:1.5em;display:inline-block;background:url('/wp-content/uploads/star.svg') no-repeat center center;}

.has-filter {position:relative;overflow:hidden;}
.has-filter .filter {position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.4);z-index:1;}
.has-filter > *:not(.filter) {position:relative;z-index:2;}

.card {position:relative;border-radius:var(--radius);padding:2rem;overflow:hidden;}
.card .card-bg {position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;}
.card .card-bg .filter {z-index:3;}
.card figure {margin:0;padding:0;width:100%;height:100%;}
.card figure > img {width:100%;height:100%;object-fit:cover;object-position:center;}
.card .card-inner {position:relative;z-index:2;}


.text-block p {margin-bottom:1rem;}

section#landing-header {position:absolute;top:0;left:0;width:100%;z-index:99;}
section#landing-header .inner {display:flex;align-items:center;justify-content:center;padding:20px 0;}

section#hero {padding:64px 0 16px 0;background-position:center;background-size:cover;background-repeat:no-repeat;}
section#hero .text-block {max-width:700px;}
section#hero .lp-wrapper {height:75vh;display:flex;flex-direction:column;justify-content:center;}

section#form {position:relative;z-index:2;margin-top:-64px;}
section#form .inner {background:#FFF;border-radius:var(--radius);padding:2rem;box-shadow:0 0 20px rgba(0,0,0,0.1);}


section#destinations .destinations-row .card {min-width:0;height:450px;color:#FFF;margin-bottom:1.5em;}
section#destinations .destinations-row .card .card-inner {display:flex;flex-direction:column;justify-content:space-between;height:100%;}
section#destinations .destinations-row .card .card-inner .card-head {display:flex;align-items:center;justify-content:flex-end;}
section#destinations .destinations-row .card .card-inner p strong {margin-bottom:8px;}
section#destinations .destinations-row .card .card-inner .price {font-weight:700;}

section#about .text-block {margin-bottom:40px;}

section#fleet .car-fleet-row .card {width:100%;border-radius:unset;padding:0;margin-bottom:2em;}
section#fleet .car-fleet-row .card-head {height:350px;background:var(--color-grey-light);width:100%;margin-bottom:1.5em;border-radius:var(--radius);overflow:hidden;}
section#fleet .car-fleet-row .card-body .title {font-weight:700;}

#plus {text-align:center;}
#plus .title {font-weight:700;margin:40px 0;}

.reviews-row .card {border:solid 1px #000;width:100%;min-height:200px;margin-bottom:1.5em;}
.reviews-row .card .card-inner,
.reviews-row .card .card-body {display:flex;flex-direction:column;height:100%;}
.reviews-row .card .card-head {height:fit-content;}
.reviews-row .card .card-body > .review-content {flex-grow:1;height:auto;margin-top:1em;}
.reviews-row .card .card-body > .review-content p {font-size:16px;line-height:1.5;color:#000;}
.reviews-row .card .card-body > .review-author {padding-top:20px;color:#000;}

.bg-black .reviews-row .card {border-color:#FFF;}
.bg-black .reviews-row .card .card-body > .review-content p {color:#FFF;}
.bg-black .reviews-row .card .card-body > .review-author {color:#FFF;}

footer.lp-section-footer {background:#000;color:#FFF;padding:48px 0;}
footer.lp-section-footer .col {padding:24px 0;}

footer.lp-section-footer a,
footer.lp-section-footer p {color:#FFF;transition:all 300ms;}
footer.lp-section-footer a:hover {color:var(--color-accent);transition:all 300ms;}
footer.lp-section-footer a:hover svg path {fill:var(--color-accent);transition:all 300ms;}

#colophon {background:#000;color:#FFF;padding:8px 0;font-size:14px;}
#colophon a {color:#FFF;font-size:14px;transition:all 300ms;}
#colophon a:hover {color:var(--color-accent);transition:all 300ms;}

#colophon .columns .col {width:fit-content;}

.services-row {display:flex;gap:30px;}
.services-row .card {width:100%;}

.card.service {color:#fff;height:500px;}
.card.service .card-inner {display:flex;flex-direction:column;justify-content:space-between;height:100%;}
.card.service .card-inner .card-head {display:flex;align-items:center;justify-content:flex-end;}
.card.service ul {padding-left:20px;}

/* OVERRIDES */
.lp-wrapper .wpcf7-form .wpcf7-list-item-label a {
  color: #000 !important;
  font-weight: bold;
}

@media only screen and (min-width:768px) {
	.columns {display:flex;gap:40px;}
	.columns > .col {width:100%;}
	.columns > .col.left {display:flex;flex-direction:column;align-items:flex-start;}
	.columns > .col.center {display:flex;flex-direction:column;align-items:center;}
	.columns > .col.right {display:flex;flex-direction:column;align-items:flex-end;}

	section#form .columns .col.text {width:25%;}
	section#form .columns .col.form {width:75%;}

	section#destinations .destinations-row {display:flex;gap:1.2em;}
	section#destinations .destinations-row .card {cursor:pointer;transition:all 300ms;}
	section#destinations .destinations-row .card .card-inner {opacity:0;transition:all 300ms;}
	section#destinations .destinations-row .card.active {min-width:40%;cursor:default;transition:all 300ms;}
	section#destinations .destinations-row .card.active .card-inner {opacity:1;transition:all 300ms;}

	section#fleet .car-fleet-row {display:flex;}
	section#fleet .car-fleet-row .card {padding:0 .75em;}

	section#reviews .reviews-row {display:flex;gap:1.5em;}
}

@media only screen and (max-width:768px) {
	.title-1 {font-size:2.25rem!important;}
	.title-2 {font-size:2rem!important;}
	.title-3 {font-size:1.8rem!important;}
	.title-4 {font-size:1.5rem!important;}
	.title-5 {font-size:1.2rem!important;}
	.text-xl {font-size:1.1rem!important;}
	
	.wpcf7-form .field {width:100%!important;}
	
	/* OVERRIDES */
	h2.elementor-heading-title {font-size:28px!important;line-height:1.2em!important;}

	
	.lp-section {padding:80px 0;}
	
	section#hero .lp-wrapper {max-height:520px;}

	.columns > .col.left,
	.columns > .col.center,
	.columns > .col.right {width:100%;align-items:center;text-align:center;}
	
	ul.contacts a,
	ul.contacts p {justify-content:center;}

	ul.contacts {width:100%;}

	.services-row {flex-direction:column;}
	.card.service {height:auto;}
	.card.service .card-bg::after {content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:3;background:rgba(0,0,0,0.4);}
	.card.service .card-inner .card-head {display:none;}
}