/* 
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
*/


.container { max-width: 1300px; width: 100%; padding: 0 10px; margin: 0 auto; }
a.green-btn { background-color: #22BF98; font-family: "Work Sans", Sans-serif; font-size: 16px; font-weight: 400; color: #FFFFFF; padding: 15px 40px; display: inline-block; transition: 0.5s all; margin-bottom: 20px; }
a.green-btn:hover { background-color: #000000; }
.elementor-post__text h3.elementor-post__title a { transition: 0.5s all; }
.elementor-post__text h3.elementor-post__title a:hover { color: #22BF98 !important; }
.elementor-post__card { overflow: visible !important; }
.elementor-posts .elementor-post .elementor-post__card .elementor-post__badge { top: -30px; left: -30px; right: auto; }


/*Home Section 1 */
.elementor-element.home-sec1 { position: relative; }
.elementor-element.home-sec1:after { background: url(images/img-after.png) no-repeat right bottom; width: 100%; height: 106px; content: ""; position: absolute; bottom: 0; right: 0; }



/*Home Image Box*/
.elementor-element.highlights-section .elementor-image-box-wrapper figure.elementor-image-box-img { position: relative; }
.elementor-element.highlights-section .elementor-image-box-wrapper figure.elementor-image-box-img:after { background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 36%, rgba(0, 0, 0, 0.70) 91%); position: absolute; content: ""; bottom: 0; width: 100%; height: 100%; left: 0; }
.elementor-element.highlights-section .elementor-image-box-wrapper .elementor-image-box-content { position: absolute; bottom: 10px; padding: 30px; z-index: 99; }


/*Home Section Image Caption*/
.elementor-element.footer-insta .elementor-widget-image figure.wp-caption { position: relative; overflow: hidden; }
.elementor-element.footer-insta .elementor-widget-image figure.wp-caption .wp-caption-text { pointer-events: none; flex-flow: column; position: absolute; inset: 0; padding: 20px; background: rgba(0, 0, 0, 0.8); display: flex; align-items: center; justify-content: center; text-align: center; color: #fff; flex-direction: column; opacity: 0; visibility: hidden; transition: 0.5s all; }
.elementor-element.footer-insta .elementor-widget-image figure.wp-caption:hover .wp-caption-text { opacity: 1; visibility: visible; }


/*Footer Wrapper*/
.elementor-element.footer-wrapper li.elementor-icon-list-item a { width: auto; }
.elementor-element.footer-wrapper li.elementor-icon-list-item a span:hover { color: #22BF98; }
.elementor-element.footer-wrapper .elementor-widget-text-editor a { color: #777777; transition: 0.5s all; }
.elementor-element.footer-wrapper .elementor-widget-text-editor a:hover { color: #22BF98; }


/*Newsletter Form*/
.gform_wrapper.newsletter-form_wrapper { max-width: 520px; margin: 0 auto; }
.gform_wrapper.newsletter-form_wrapper form { display: flex; align-items: center; }
.gform_wrapper.newsletter-form_wrapper form .gform-body { width: 70%; }
.gform_wrapper.newsletter-form_wrapper form .gform_footer { width: 30%; margin: 0; }
.gform_wrapper.newsletter-form_wrapper form .gform-body .gfield input { border: 1px solid #CBC9C8; border-radius: 0; box-shadow: none; padding: 8px 20px; height: auto; font-size: 16px; color: #757575; }
.gform_wrapper.newsletter-form_wrapper form .gform-body .gfield input:focus { outline: none; }
.gform_wrapper.newsletter-form_wrapper form .gform_footer input[type="submit"] { line-height: 23px !important; padding: 15px 40px !important; background: #22BF98 !important; color: #FFF !important; font-size: 16px !important; font-weight: 500 !important; text-transform: capitalize !important; border-radius: 0 !important; box-shadow: none !important; transition: 0.5s all !important; }
.gform_wrapper.newsletter-form_wrapper form .gform_footer input[type="submit"]:hover { background: #111111 !important; }


/*Contact Form*/
.elementor-element.cnt-form .gform_wrapper h2.gform_title { margin: 0; font-size: 24px; font-weight: 600; }
.elementor-element.cnt-form p.gform_required_legend { display: none; }
.elementor-element.cnt-form .gform-body { margin-top: 30px; }
.elementor-element.cnt-form .gform-body .gform_fields { row-gap: 25px; }
.elementor-element.cnt-form .gform-body .gfield label.gfield_label { font-size: 16px; font-weight: 400; }
.elementor-element.cnt-form .gform-body .gfield input { border: 1px solid rgba(158, 188, 206, 0.40); border-radius: 0; box-shadow: none; padding: 10px 20px; height: auto; font-size: 16px; color: #757575; }
.elementor-element.cnt-form .gform-body .gfield textarea { border: 1px solid rgba(158, 188, 206, 0.40); border-radius: 0; box-shadow: none; padding: 10px; min-block-size: auto; resize: none; }
.elementor-element.cnt-form .gform-body .gfield .ginput_container_consent { align-items: center; }
.elementor-element.cnt-form .gform-body .gfield .ginput_container_consent input { padding: 0; border-radius: 2.5px; border: 1px solid #767676; width: 13px; height: 13px; }
.elementor-element.cnt-form .gform-body .gfield .ginput_container_consent label.gform-field-label { margin: 0; font-size: 13px; }
.elementor-element.cnt-form .gform_footer input[type="submit"] { padding: 15px 40px !important; background: #22BF98 !important; color: #FFF !important; font-size: 16px !important; font-weight: 500 !important; text-transform: capitalize !important; border-radius: 0 !important; box-shadow: none !important; transition: 0.5s all !important; }
.elementor-element.cnt-form .gform_footer input[type="submit"]:hover { background: #111111 !important; }
.elementor-element.cnt-form .gform_wrapper .gform_validation_errors { display: none; }


/*Eco Accommodation Hotels Page*/
.eco-wrapper { margin: 100px 0; }
.eco-wrapper div#eco-countries { display: flex; justify-content: flex-start; overflow-x: scroll; }
.eco-wrapper div#eco-countries button.eco-country-btn { padding: 15px; align-items: center; border: 1px solid #22BF98; background: #FAF7F6; color: #22BF98; margin-right: 10px; width: 200px; }
.eco-wrapper div#eco-countries button.eco-country-btn.active { background: #22BF98; color: #ffffff; }
.eco-wrapper div#eco-countries button.eco-country-btn:hover { background: #22BF98; color: #ffffff; }

.eco-wrapper h3#eco-category-title { margin: 100px 0 50px; text-align: center; }
.eco-wrapper .eco-tab-wrapper { display: flex; justify-content: space-between; align-items: center; }
.eco-wrapper .eco-tab-wrapper div#eco-tabs { display: flex; }
.eco-wrapper .eco-tab-wrapper div#eco-tabs button.eco-tab { border-bottom: 1px solid #22BF98; background: #FAF7F6; border-width: 0 0 1px 0; color: #22BF98; }
.eco-wrapper .eco-tab-wrapper div#eco-tabs button.eco-tab.active { background: #22BF98; color: #ffffff; }
.eco-wrapper .eco-tab-wrapper div#eco-tabs button.eco-tab:hover { background: #22BF98; color: #ffffff; }


.eco-wrapper .hotel-wrapper { background: #FAF7F6; padding: 30px; }
.eco-wrapper .hotel-wrapper .hotel-details { display: flex; gap: 30px; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-image { flex: 0 0 auto; }
.eco-wrapper .hotel-wrapper .hotel-image .img-wrapper img { width: 245px; height: 300px; object-fit: cover; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content { flex: 1 1 auto; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content span.hotel-title { display: flex; align-items: center; justify-content: space-between; margin: 0 0 30px; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content .hotel-inner-content { display: flex; align-items: flex-end; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content .hotel-inner-content span.hotel-data { flex: 5; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content .hotel-inner-content span.hotel-tier { flex: 1; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content span.hotel-title h2 { font-size: 24px; margin: 0; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content span.hotel-title a { background: #22BF98; transition: 0.5s all; color: #ffffff; display: inline-block; padding: 10px 20px; border-radius: 5px; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content span.hotel-title a:hover { background: #111111; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content h5.label { color: #22BF98; font: 600 16px Work Sans; margin: 0 0 5px; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-content ul.hotel-facilities { padding: 0 0 0 17px; }
.eco-wrapper .hotel-wrapper .hotel-description { background: #ffffff; padding: 30px; margin: 30px 0 0; }
.eco-wrapper .hotel-wrapper .hotel-description p:last-child { margin: 0; }
.eco-wrapper .hotel-wrapper .hotel-description h5.label { color: #22BF98; font: 600 16px Work Sans; margin: 0 0 5px; }
.eco-wrapper .hotel-wrapper .hotel-details .hotel-image .img-wrapper.hotel-carousel { max-width: 245px; overflow: hidden; }
.eco-wrapper .hotel-wrapper .hotel-details .img-wrapper.hotel-carousel ul.slick-dots { padding: 0; display: flex; align-items: center; position: absolute; bottom: 10px; margin: 0 auto; width: 100%; justify-content: center; }
.eco-wrapper .hotel-wrapper .hotel-details .img-wrapper.hotel-carousel ul.slick-dots li { padding: 0; margin-right: 5px; list-style: none; }
.eco-wrapper .hotel-wrapper .hotel-details .img-wrapper.hotel-carousel ul.slick-dots li button { font-size: 0; padding: 0; width: 10px; height: 10px; border-radius: 50%; border: none; background: #ffffff; }
.eco-wrapper .hotel-wrapper .hotel-details .img-wrapper.hotel-carousel ul.slick-dots li.slick-active button { background: #22BF98; }
.eco-wrapper .hotel-wrapper .hotel-details .img-wrapper.hotel-carousel ul.slick-dots li button:hover { background: #22BF98; }
.eco-wrapper .hotel-wrapper .hotel-details .img-wrapper.hotel-carousel ul.slick-dots li:last-child { margin-right: 0; }


/*Map Page*/
.eco-map { position: relative; }
.eco-map img { width: 100%; display: block; }
.eco-map .eco-map-pins { position: absolute; inset: 0; }
.eco-map .eco-map-pins a.eco-pin { position: absolute; color: #000000; font-weight: 500; font-size: 13px; padding-left: 22px; }
.eco-map .eco-map-pins a.eco-pin:before { background: url(images/map-pointer.svg) no-repeat; content: ""; position: absolute; left: 0; width: 18px; height: 24px; }
.eco-map .eco-map-pins a.eco-pin-united-kingdom:before { right: 0; left: auto; }
.eco-map .eco-map-pins a.eco-pin.eco-pin-united-kingdom { padding-left: 0; padding-right: 22px; }



/* Eco Planner */
.eco-planner-container .destination label { font-size: 18px; color: #244A7B; margin-bottom: 20px; }
.eco-planner-container .destination input#destination { border: 1px solid rgba(158, 188, 206, 0.40); background: #FFF; padding: 20px; border-radius: 0; }
.eco-planner-container .destination { margin-bottom: 24px; }
.eco-planner-container .intrested-in { margin-bottom: 24px; }
.eco-planner-container .intrested-in label { font-size: 18px; color: #244A7B; }
.eco-planner-container .intrested-in .checkbox-group label { margin-right: 24px; }
.eco-planner-container .intrested-in .checkbox-group { margin-top: 24px; }
.eco-planner-container .intrested-in .checkbox-group label input[type="checkbox"] { margin-right: 5px; }
.eco-planner-container button.submit-btn { background: #244A7B; border: none; font-weight: 500; }
.eco-planner-container button.submit-btn:hover { background: #111111; }
.eco-planner-container .card.result-card { margin: 50px 0 0; background: #ffffff; padding: 30px; border-radius: 10px; }


.elementor-element.services-sec .elementor-image-box-wrapper figure.elementor-image-box-img { position: relative; }
.elementor-element.services-sec .elementor-image-box-wrapper figure.elementor-image-box-img:after { z-index: -1; background: url(images/strip.png) no-repeat; width: 0; height: 52px; position: absolute; content: ""; left: -35px; margin: 0 auto; top: 15px; visibility: hidden; opacity: 0; transition: 0.5s all; transform: skewX(15deg); }
.elementor-element.services-sec .elementor-image-box-wrapper:hover figure.elementor-image-box-img:after { visibility: visible; opacity: 1; width: 150px; }


/*Popup Form*/
.gform_wrapper.pdf-form_wrapper .gform-body input { border-radius: 0; border: 1px solid rgba(158, 188, 206, 0.40); padding: 5px 15px; height: auto; font-size: 18px; color: #244A7B; }
.gform_wrapper.pdf-form_wrapper .gform-footer { margin-top: 20px; position: relative; }
.gform_wrapper.pdf-form_wrapper .gform-footer:after { position: absolute; right: 110px; content: ""; background: url(images/download-icon.svg) no-repeat; width: 20px; height: 20px; top: 11px; pointer-events: none; }
.gform_wrapper.pdf-form_wrapper .gform-footer input[type="submit"] { background: #244A7B !important; width: 100% !important; display: block !important; border-radius: 0 !important; font-size: 16px !important; font-weight: 500 !important; padding: 15px 20px !important; }
.gform_wrapper.pdf-form_wrapper .gform-footer input[type="submit"]:hover { background: #000000 !important; }
.gform_wrapper.pdf-form_wrapper .gform_validation_errors { display: none; }



/*Eco-Friendly Travel Hacks*/
.elementor-element.travel-hacks.elementor-widget-text-editor ol { counter-reset: item; list-style: none; padding-left: 0; }
.elementor-element.travel-hacks.elementor-widget-text-editor ol li { counter-increment: item; margin: 0 0 20px 50px; font: 18px / 30px "Playfair Display", Sans-serif; background: url(images/li-bg.png) no-repeat; background-size: 100%; background-position: center; background-repeat: no-repeat; position: relative; }
.elementor-element.travel-hacks.elementor-widget-text-editor ol li:before { content: counter(item) " "; font-weight: bold; border: 1px solid #22BF98; width: 30px; height: 30px; position: absolute; left: -48px; right: 0; text-align: center; line-height: 24px; border-radius: 5px; color: #22BF98; top: 50%; transform: translateY(-50%); }

body .gform_wrapper .gform_ajax_spinner { position: absolute !important; }