/*
Theme Name:     Matkajuht
Description:    "Traveler" alamteema
Theme URI:      https://travelerwp.com/
Author:         the ShineTheme
Author URI:     http://shinetheme.com
Version:        1.5
Template:       traveler
*/

body {
    font-family: 'DM sans', sans-serif;
}

/***** ELEMENTOR FIX *****/

.swiper-wrapper {
    display: inline-flex;
}
/*************************/

a.btn.btn-transparent.has-icon.radius.st-video-popup {
    border: none !important;
}
.elementor-194 .elementor-element.elementor-element-a492997 img {
	mix-blend-mode: multiply;
}
.st-highlight i.stt-icon-check.second {
    align-self: baseline;
}
#st-content-wrapper .st-video-popup span.yt-icon svg {
    height: auto;
    width: 45px;
}

#st-content-wrapper .st-gallery.style-masonry .shares.dropdown .btn-group a.st-video-popup {
    background: none;
    opacity: .8;
    padding: 0;
}

body header .header .header-right .header-search input:focus {
    border-bottom: 1px solid #dadada !important;
    border-radius: 0;
    padding: 10px 10px 10px 44px;
}
body header .header .header-right .header-search input {
	font-size: 16px;
	cursor: context-menu;
	padding-left: 22px;
}

.services-item.item-elementor .item .featured-image .st-tag-feature-sale .featured {
    font-weight: 400;
    font-size: 13px;
}
.custom-duration-filter {
    display: flex;
    justify-content: space-between; /* Ensures space between the buttons */
    align-items: center; /* Vertically align the buttons */
}

/* Optional: Ensures the reset button aligns to the left, and the apply button to the right */
.custom-duration-filter .reset-duration-filter {
    margin-right: auto; /* Pushes the reset button to the left */
}
button.btn.btn-link.reset-duration-filter {
	background: no-repeat;
    font-weight: 500;
    color: #444;
    text-decoration: none;
}
button.btn.btn-link.reset-duration-filter:hover {
	color: #e69138;
}
.custom-duration-filter .apply-duration-filter {
    margin-left: auto; /* Pushes the apply button to the right */
}
.duration-buttons {
    display: flex;
    align-self: flex-end;
    gap: 12px;
}
a.gt_switcher-popup.glink.nturl.notranslate {
    background: #f5f5f5;
    border: 1px solid #d9d9d9;
    border-radius: 5px;
    padding: 3px 4px;
}
.single-st_tours #st-content-wrapper.st-style-elementor .st-inexclude .exclude li i, .single-st_tours #st-content-wrapper.st-style-elementor .st-inexclude .include li i {
    align-self: start;
    margin-top: 4px;
}
.st-service-header2 .sub-heading .stt-icon.stt-icon-location1 {
	font-size: 16px;
	margin-left: 0;
	margin-right: 0;
}
.st-map-wrapper .stt-icon.stt-icon-location1 {
	font-size: 16px;
	margin-left: 0;
}
.st-service-header2 .d-inline-block.d-sm-flex.align-items-center {
    display: flex !important;
    gap: 6px;
}
.st-mod-style #st-content-wrapper.st-style-elementor .st-service-header2 .st-address {
    margin-left: 3px;
	font-weight: 300;
}
.taxonomy-search .first-column .item.dropdown-item:first-child, .taxonomy-search .combined-column .item.dropdown-item:first-child, .toolbar-action.d-none.d-md-flex.align-items-center.justify-content-right, 
#wp-admin-bar-customize, #wp-admin-bar-comments, #wp-admin-bar-new-e-landing-page, #wp-admin-bar-new-e-floating-buttons, #wp-admin-bar-new-elementor_library, #wp-admin-bar-new-st_template_email, #wp-admin-bar-new-st_coupon_code
{
    display: none !important;
}
.single.single-st_tours:not(#main-footer) {
    margin-bottom: -60px;
}
.single.single-st_tours .elementor-194 .elementor-element.elementor-element-4b091b86 > .elementor-element-populated {
    padding-bottom: 90px;
}
.close-sidebar .stt-icon-close {
    color: #444;
    font-size: 30px;
    display: block;
    text-align: right;
}

.hidden {
    display: none;
}
span.kuni {
    align-content: space-evenly;
}

.custom-duration-filter {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.custom-duration-filter .input-group {
    display: flex;
    gap: 10px;
    width: 100%;
}

.custom-duration-filter label {
    display: flex;
    align-items: center;
    flex: 1;
}

.custom-duration-filter input[type="number"] {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 16px;
    transition: border-color 0.3s;
}

.custom-duration-filter input[type="number"]:focus {
    border-color: #007bff;
    outline: none;
}

.custom-duration-filter select {
    padding: 8px;
    border: none;
	background: unset;
    border-radius: 4px;
    font-size: 16px;
    transition: border-color 0.3s;
    flex: 1;
}

.custom-duration-filter select:focus {
    border-color: #007bff;
    outline: none;
}

.custom-duration-filter .btn {
    background-color: #4490d3;
    color: #fff;
    padding: 8px 12px;
	margin-top: 10px;
    border: none;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.2s;
}

.custom-duration-filter .btn:hover {
    background-color: #3085cf;
}

.custom-duration-filter .btn:active {
    transform: translateY(0);
}
@media (min-width: 600px) {
	.custom-duration-filter .btn {
    padding: 6px 12px;
	font-size: 14px;
}
}
@media (max-width: 600px) {
p.value {
    font-size: 14px !important;
}
.services-item.item-elementor .item .content-item .title {
    font-size: 18px !important;
}
.tour2-price {
	font-size: 15px !important;
}
.tour2-price.disc-first {
    font-size: 12px !important;
}
.services-item.item-elementor .item .content-item .section-footer {
	padding-top: 15px !important;
}
.price-tour .price2-price {
	font-size: 18px !important;
}
}
/***** include / exlude *****/
.include-exclude-container {
    display: flex;
    flex-direction: column;
    gap: 15px; /* Space between Included and Excluded sections */
}

/* Desktop: Two-column layout */
@media (min-width: 768px) {
    .include-exclude-container {
        flex-direction: row;
        justify-content: space-between;
    }

    .include-section, .exclude-section {
        width: 48%; /* Adjust width for spacing */
    }
}

/* General Styling */
.st-inexclude {
    padding-bottom: 20px;
}
.include-title, .exclude-title {
	font-size: 24px;
    color: var(--heading-color);
    margin: 20px 0;
}

.include ul, .exclude ul {
    padding-left: 0;
    list-style: none;
}

.include li, .exclude li {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
}
.mfp-content .stt-icon-close {
	color: #222;
}
.stt-icon-check, .stt-icon-close {
    font-size: 18px;
    color: #28a745; /* Green for Included */
}

.exclude .stt-icon-close {
    color: #dc3545; /* Red for Excluded */
}

/***** Matkade kalender modal *****/

/* Link Styling */
.custom-link {
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  color: #007bff;
  text-decoration: none;
  padding: 30px 30px 10px;
  transition: color 0.3s;
  font-weight: 300;
}

.custom-link:hover {
  color: #0056b3;
}

.calendar-icon {
  margin-right: 8px; /* Space between icon and text */
  font-size: 20px; /* Adjust icon size */
}

/* Modal Styling */
.modal {
  display: none; /* Hidden by default */
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5); /* Black background with transparency */
}

.modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #ffffff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  width: 95%; /* Adjust for mobile responsiveness */
  max-width: 900px;
  text-align: center;
}

.close-button {
  position: absolute;
  top: 10px;
  right: 20px;
  color: #000;
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
}

/* Responsive Iframe */
.modal-content iframe {
  width: 100%; /* Full width for all devices */
  height: 400px; /* Adjust height for mobile */
}

.single.st-mod-style:not(.single-location) .mfp-arrow {
    opacity: .5;
    background: #fff;
    color: #000;
}
.single.st-mod-style:not(.single-location) .mfp-arrow:hover {
    opacity: .7;
}
.single.st-mod-style:not(.single-location) .mfp-content .mfp-figure .mfp-close:hover {
    opacity: 0.9;
}

@media (min-width: 768px) {
.modal-content iframe {
    height: 600px; /* Larger height for bigger screens */
}
.mfp-wrap .mfp-container {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 75%;
}
}
@media (max-width: 768px) { /* Mobile only */
.mfp-container {
    touch-action: pan-y; /* Ensure touch gestures work */
}
.single.st-mod-style:not(.single-location) .mfp-bottom-bar .mfp-counter {
    top: 20px;
    line-height: inherit;
    padding: 18px 20px;
}
.single.st-mod-style:not(.single-location) .mfp-arrow {
	display: none;
    /*opacity: 1;
    background: rgb(255 255 255 / 36%);
    width: 70px;
    height: 70px;
    font-size: 26px;
    font-weight: 600;
    line-height: 40px;
    color: #000;*/
}
.single.st-mod-style:not(.single-location) .mfp-content .mfp-figure .mfp-close {
    background: none;
}
.single.st-mod-style:not(.single-location) .mfp-content .mfp-close i {
    color: #fff;
    font-size: 30px;
}
}

/*****/
.single.st-mod-style:not(.single-location) .mfp-content .mfp-close {
    top: -30px;
}

.single .st-sent-mail-customer .st_send-mail-form .form-group textarea {
    height: auto;
}
.teade-sub {
    font-size: 13px;
    font-style: italic;
    color: #9fa3a5;
}
.mj-inquiry .teade-sub {
    padding-left: 6px;
}
.mj-inquiry label {
    color: #444;
    padding-left: 6px;
}
.single-st_tours .st-breadcrumb {
	display: none !important;
}
.price-row {
    padding-bottom: 35px;
}
.st-single-tour .st-breadcrumb.hidden-xs.d-none.d-sm-block li:nth-child(2) {
    display: none !important;
}
span.tour2-price.disc-first.min-price-form .price2-price {
    font-size: inherit;
}

span.tour2-price.disc-first.min-price-form {
    padding-top: 8px;
    padding-left: 5px;
    font-size: 14px;
}
#wpcf7-f10830-p10541-o1 label {
    padding-left: 10px;
	font-weight: 300;
}
.mets-menu {
    //font-family: "DM Sans", Sans-serif;
    font-weight: 500;
    color: #222;
}
.new-tag {
    background-color: #FF4500;
    color: white;
    font-size: 12px;
    padding: 2px 6px;
    border-radius: 3px;
    position: relative;
    top: -10px;
    margin-left: 8px;
    font-weight: bold;
}
a.twitter svg {
    width: 17px;
    padding-bottom: 4px;
    fill: #0d6efd;
}
a.twitter svg:hover {
    fill: var(--main-color);
}
.st-single-tour-8 .col-12.col-sm-12.col-md-12.col-lg-4 {
    padding-left: 30px;
}
.article-style3 .post-inner .meta {
	display: none;
}
@media only screen and (max-width: 768px) {
.blog-style3 .st-blog .sidebar-widget .wp-block-search__inside-wrapper .wp-block-search__button::after {
    display: inline-block;
    vertical-align: middle;
    margin-top: -10px;
	}
	.blog-style3 .st-blog .sidebar-widget.st_categories_new ul li a {
    font-size: 14px;
	}	
}
@media only screen and (min-width: 768px) {
.page-template-template-blog .blog-wrapper, .search.search-results .blog-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.page-template-template-blog .article-style3.post, .search.search-results .article-style3.post {
    flex: 1 1 calc(50% - 20px);
    max-width: calc(50% - 20px);
    box-sizing: border-box;
    height: 620px;
    overflow: hidden;
    margin: 0;
}
.page-template-template-blog .article-style3 .post-inner {
    max-height: 260px;
    overflow: hidden;
}
.search.search-results .article-style3 .post-inner {
	max-height: 300px;
    overflow: hidden;
    padding: 30px;
}
.page-template-template-blog .article-style3 .post-inner .post-title a, .search.search-results .article-style3 .post-inner .post-title a {
    font-size: 22px;
    line-height: inherit;
}
.page-template-template-blog .blog-style3 .st-blog .media-responsive iframe, .search.search-results .blog-style3 .st-blog .media-responsive iframe {
    max-height: 250px;
}
.page-template-template-blog .st-blog .content img, .search.search-results .content .blog-wrapper img {
    min-height: 250px;
    object-fit: cover;
}
.page-template-template-blog header.post-header, .search.search-results .article-style3 header.post-header {
    height: 250px;
}
.single-post .article-style3 .post-inner .meta ul li:first-child {
    display: none;
}
.single-post .blog-style3 .article-style3 .pagination .nav-links .box .post-title {
    font-weight: 600;
}
####
.single-post .blog-style3 .article-style3 .post-content ul li {
    color: #333;
}
.single-post .blog-style3 .article-style3 .pagination .nav-links .box {
    margin-right: 10px;
}

.header .st-list {
    flex-direction: column;
    align-items: flex-start !important;
}
#wp-block-search__input-1 {
    width: 75%;
}
.single-post .blog-style3 .article-style3 .post-content {
    margin-bottom: 80px;
}
.blog-style3 .sticky-top {
    position: unset;
}
}

.single-post .blog-style3 .article-style3 .tags {
    //display: none !important;
}
.single-post .blog-style3 .article-style3 .share {
    width: 30%;
    text-align: right;
}
.blog-style3 .st-blog .sidebar-widget .wp-block-search__inside-wrapper .wp-block-search__button {
    line-height: 45px;
}
.blog-style3 .st-blog .sidebar-widget .wp-block-search__inside-wrapper .wp-block-search__button::after {
    font-size: 18px;
}
.blog-style3 .st-blog .sidebar-widget.st_categories_new ul li a{
	padding: 15px 15px 15px 30px;
    margin: -13px -7px;
    border-radius: 14px;
	min-width: 90%;
}
.blog-style3 .st-blog .sidebar-widget.st_categories_new ul li a::before {
    left: 15px;
}
#st-content-wrapper.blog-style3 .st-breadcrumb.hidden-xs.d-none.d-sm-block, #st-content-wrapper.blog-style3 .banner {
    display: none !important;
}
@media screen and (min-width: 992px) {
    body header.header-style-10 .header #st-main-menu #main-menu > li.menu-item-has-children .menu-dropdown li a {
        padding: 12px 0 !important;
    }
}
.action-buttons {
    display: flex;             /* Use flexbox to align elements in a row */
    align-items: center;       /* Vertically center the items */
    gap: 10px;                 /* Optional: Adds space between the elements */
}

.reset-duration-selection {
    color: #e69138;
    cursor: pointer;
	font-size: 14px;
}

.reset-duration-selection:hover {
    color: #222;
}
.st-banner-search-form.style_2 .st-search-form-el{
	box-shadow: none;
	border: none;
}
.cate.category-color ul li a {
    font-weight: 500;
}
.vaataveel span.elementor-button-content-wrapper {
    align-items: self-end;
    float: right;
}
.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    display: flex;
    align-items: end;
    justify-content: center;
}
@media screen and (max-width: 991px) {
	#st-content-wrapper.st-style-elementor .st-fixed-form-booking .close-icon {
		text-align: right;
	}
	body header .header {
		border: none;
	}
		.gtranslate_wrapper {
		display: none;
	}
		.menu-item-gtranslate .gt_white_content .gt_languages {
		max-height: none;
	}
		.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .taxonomy-search.st-search-taxonomy-tour .columns-container {
		height: 360px;
		overflow: auto;
	}
		.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .taxonomy-search.st-search-taxonomy-tour .columns-container ul.column {
		margin: 0;
	}
		.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form li.item.dropdown-item {
		line-height: 30px;
	}
		input.taxonomy-checkbox, input.duration-checkbox {
		margin-right: 15px;
		width: 16px;
		height: 16px;
		vertical-align: text-bottom;
	}
	.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .st-focus {
        box-shadow: none;
        border-radius: 0;
    }
	.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .dropdown-menu.show {
		background: #FFFFFF;
		border: 1px solid #DEDEDE;
		box-sizing: border-box;
		box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.08), 0px 4px 12px rgba(0, 0, 0, 0.05);
		border-radius: 20px;
		min-height: unset !important;
		max-height: unset !important;
		//padding: 30px 15px 30px 10px;
		margin-top: 8px !important;
		min-width: auto;
	}	
	.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .st-focus, .st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search.st-search-destination-tour.st-focus {
		box-shadow: 0px 0px 11px rgba(0, 0, 0, 0.1);align-content
	}
	.search-form .stt-icon.stt-icon-category, .search-form .stt-icon.stt-icon-clock, .search-form .stt-icon.stt-icon-location1 {
		font-size: 18px;
		padding: 0 10px 0 20px;
	}
	.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .form-group {
		min-height: 78px;
		width: 100%;
	}
	.search-form .destination-search.st-search-destination-tour, .search-form .taxonomy-search.st-search-taxonomy-tour{
		border-bottom: 1px solid #eaeaea;
	}
	.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search {
		
	}
}
@media screen and (min-width: 992px) {
	.menu-item-gtranslate {
		display: none !important;
	}
}
	.st-list-service.slider.style_2 .st-blog-list-el .swiper-slide .services-item .item {
    	margin: 10px 0;
	}
	.st-blog-list-el .excerpt-wrapper{
		font-weight: 300;
		color: #333;
		padding-top: 18px;
	}
	.service-list-wrapper.st-blog-list-el .services-item.item-elementor .item .content-item {
		font-family: 'DM Sans';
		padding: 25px;
	}
	body header.header-style-10 .header #st-main-menu #main-menu > li.menu-item-mega-parent:hover > .menu-dropdown {
        //left: 75%;
		padding: 40px 60px;
        width: 1000px;
    }
	body header.header-style-10 .header #st-main-menu #main-menu > li.menu-item-has-children .menu-dropdown li.menu-item a {
        border: none !important;
        font-size: 15px;
        font-weight: 400 !important;
        text-transform: uppercase;
    }
	    body header.header-style-10 .header #st-main-menu #main-menu > li.menu-item-has-children .menu-dropdown {
        padding: 40px;
        min-width: 300px;
		transition: none;
		border-top: 1px solid #fafafa;
}
/*.sort-item.st-icheck:nth-child(2){
	display:none !important;
}*/
body header .header .header-left .logo img {
    max-height: 42px;
    max-width: none;
}
body header .header #main-menu li.menu-item-has-children .fa {
    margin-top: -6px;
    font-size: 13px;
}
@media screen and (min-width: 992px) {
    body header.header-style-10 .header #st-main-menu #main-menu li a {
        font-size: 14px;
        font-weight: 500;
    }
	body header.header-style-10 .header .header-right .st-list li a {
        font-weight: 400;
    }
	body header.header-style-10 .header .header-right .st-list li a i {
        //color: #6c757d;
		color: #df5334;
        margin-right: 9px;
    }
}
@media screen and (max-width: 1140px) {
ul.st-list.d-flex.align-items-center {
    flex-flow: column;
}
}
.st-testimonial-modern-slider .st-testimonial .service-testimonial-wrapper .item {
	display: flex;
    flex-direction: column;
    min-height: 320px;
    padding: 35px;
}
.author-meta.author-meta-lib {
    margin-top: auto;
}
.st-testimonial-modern-slider .st-testimonial .service-testimonial-wrapper .item .st-content {
    font-family: 'DM Sans';
    font-weight: 300;
    color: #444;
}
@media screen and (min-width: 992px) {
.st-banner-search-form.style_2 .st-search-form-el .button-search-wrapper .btn-search {
    height: unset;
    margin-right: -9px;
    padding: 27px 30px;
    white-space: nowrap;
}
}
	
#st-content-wrapper .faq button.accordion-button {
    font-weight: 400;
}
.service-list-wrapper.swiper-container {
	padding-bottom: 15px;
    min-height: 500px;
}
.service-list-wrapper.st-blog-list-el .services-item.item-elementor .item .content-item h3.title a {
	font-size: 18px;
}
.price2-price {
    font-style: normal;
    font-weight: 700;
    font-size: 15px;
    color: var(--link-color);
    margin-left: 8px;
}
.tour2-price {
    font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	color: var(--link-color, #1A2B48);
}
#mobile-price .tour2-price {
    font-size: 12px;
}
.tour2-price.disc-first {
    position: absolute;
    font-size: 12px;
    color: #444;
	font-weight: 300;
}
.tour2-price.disc-first .price2-price {
    font-size: 12px;
    color: #444;
}
.item-onsale2 {
    line-height: 10px;
    text-decoration: line-through;
    font-size: 14px;
    color: #b94c4c;
    font-weight: 400;
}
.land-pic img {
    padding: 3px;
    border-radius: 20px !important;
    opacity: 1;
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.land-pic img:hover {
    opacity: .8;
}
.seiklusmang {
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.08), 0px 4px 12px rgba(0, 0, 0, 0.05);
    border-radius: 15px;
    padding: 0;
}
.item.item-tours.service-border.st-border-radius {
    border: none;
    box-sizing: border-box;
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.08), 0px 4px 12px rgba(0, 0, 0, 0.05);
    border-radius: 15px;
}
.item-tours .section-footer {
    margin-top: auto;
	padding-top: 20px;
}
.item-tours .content-item {
	font-family: 'DM Sans';
    display: flex;
    flex-direction: column;
    flex-grow: 1;
	padding: 0 20px;
}
.item.item-tours.service-border.st-border-radius {
	display: flex;
    flex-direction: column;
    height: 100%;
}
.tour-description i {
    font-family: 'Font Awesome 5 Free';
    font-style: normal;
    font-size: 20px;
    color: cadetblue;
    padding-right: 8px;
    vertical-align: middle;
}
.st_tours .service-list-wrapper .item h3.title {
    font-size: 18px;
    font-weight: 700;
	min-height: 50px;
}
.st_tours .sub-title.st-address.d-flex.align-items-center {
    margin-top: 15px;
}
.tour-description {
    white-space: pre-wrap;
    color: #333;
    font-size: 14px;
    margin-top: 25px;
}
li.st-header-link {
    white-space: nowrap;
}
.st-button-popup-video button {
    padding: 27px;
}
.st-button-popup-video button span {
    font-size: 25px;
    color: #222222;
}
.meist-play-button .st-button-popup-video button:hover {
    opacity: 0.75;
}
	#st-content-wrapper.st-page-default .banner {
    display: none;
}
@media only screen and (min-width: 768px) {
.toit-slider {
    display: none !important;
}
}
/* Hinnakiri */

/* Basic Table Styles */
table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  color: #333;
}

/* Table Header Styles */
th {
  background-color: #4f9add;
  color: white;
  padding: 12px;
  text-align: left;
  font-size: 15px;
  font-weight: 600;
  text-transform: uppercase;
}

/* Table Cell Styles */
td {
  padding: 12px;
  text-align: left;
  border: 1px solid #ddd;
}

/* Zebra Striping for Table Rows */
tr:nth-child(even) {
  background-color: #f9f9f9;
}

tr:hover {
  background-color: #f1f1f1;
}

/* Responsive Design */
@media (max-width: 767px) {
  table, tbody, th, td, tr {
    height: auto !important;
  }
	thead {
		display: none;
	}

  th {
    text-align: right;
    background-color: #4CAF50;
    color: white;
    padding: 12px;
  }

  /* Make the table cells display as flex for better control on mobile */
  td {
    display: flex;
	width: 100% !important;
	height: auto !important;
    padding: 3px !important;
    border: none;
    //border-bottom: 1px solid #ddd;
    font-size: 14px;
    align-items: center;
  }

  /* Add labels to each data cell */
  td:before {
    content: attr(data-label);
    font-weight: bold;
	font-size: 12px;
    margin-right: 10px;
    text-transform: uppercase;
    //width: 40%;
  }

  /* Prevent last row from showing border */
  tr:last-child td {
    border-bottom: none;
  }

  /* Adjust text size for very small screens */
  td, th {
    font-size: 14px;
    padding: 8px;
  }
	.hinnakiri-pealkiri h3 {
    padding: 10px 0;
    //border-bottom: 1px solid #222;
    font-size: 16px;
    font-weight: 600;
    color: #222;
}
	.table-responsive h3 {
    margin: 20px 0;
}
	.subheading.subheading2 {
    font-style: italic;
    font-size: 14px;
}
	td.hinnakiri-pealkiri {
    display: block;
	background: #dddddd;
}
	span.subheading {
    color: #222;
    font-weight: 500;
}
	td.sub-extra {
    display: grid;
}
	td.sub-extra .subheading2 {
    font-weight: 400;
}
	.elementor-11126 .elementor-element.toit-hind > .elementor-widget-container {
		background: none !important;
	}
	.toit-slider .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    position: sticky;
    padding-bottom: 50px;
}
}

/* Additional Styling for Even Smaller Screens */
@media (max-width: 400px) {
  th, td {
    padding: 10px;
    font-size: 12px;
  }

  td:before {
    font-size: 12px;
    width: 50%; /* Adjust the label width for tiny screens */
  }
}

/* Styling for Links in Table Headers */
.hinnakiri-pealkiri h3 {
  font-size: 16px;
  font-weight: 600;
  padding-top: 10px;
}

span.subheading.subheading2 {
  font-style: italic;
  font-size: 14px;
}

/* Mobile-specific link styling */
.hinnakiri-link {
  color: #000;
  text-decoration: none;
}

.hinnakiri-link:hover {
  color: #007BFF;
}

/* Further optimization for readability */
.subheading {
  font-weight: 400;
  margin-left: 10px;
}
table.table-hinnakiri {
    border: none;
}

	
/* TOP SEARCH START */

/* Duration range separator (between the min and max inputs) */
.duration-range-separator {
    align-content: space-evenly;
}

/* Main container for the duration filter form */
.duration-filter-container {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Styling for the input group that holds the range inputs */
.duration-filter-container .input-group {
    display: flex;
    gap: 10px;
    width: 100%;
}

/* Labels inside the duration filter */
.duration-filter-container label {
    display: flex;
    align-items: center;
    flex: 1;
}

/* Input fields for min and max durations */
.duration-filter-container input[type="number"] {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 10px;
    font-size: 16px;
    transition: border-color 0.3s;
}

/* Focused state for the number input */
.duration-filter-container input[type="number"]:focus {
    border-color: #007bff;
    outline: none;
}

/* Wrapper for the duration unit selector */
.duration-filter-container .duration-unit {
    display: block; /* Make the select element take a full row */
    width: 100%; /* Ensure it spans the container width */
    padding-top: 10px; /* Add spacing above the row */
}

/* Duration unit select styling */
.duration-filter-container select {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    background: none;
    border-radius: 10px !important;
    color: #5E6D77;
    font-size: 16px;
    transition: border-color 0.3s;
}

/* Focused state for the select input */
.duration-filter-container select:focus {
    border-color: #007bff;
    outline: none;
}

/* Styling for the confirm button */
.duration-filter-container .btn {
    background-color: #007bff;
    color: #fff;
    padding: 8px 12px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.2s;
}

/* Button hover state */
.duration-filter-container .btn:hover {
    background-color: #0056b3;
}

/* Button active state */
.duration-filter-container .btn:active {
    transform: translateY(0);
}


/********/

.taxonomy-search .dropdown-menu{
	width: auto;
}

input.taxonomy-checkbox,
input.duration-checkbox {
    border: 1px solid #83929D;
    border-radius: 5px;
    width: 20px;
    height: 20px;
    position: relative;
    top: 3px;
}

.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search .dropdown-menu {
    margin-top: 8px !important;
	inset: 0px auto auto 0px;
    transform: translate(0px, 74px);
}

/* Common Styles for .taxonomy-search, .duration-search, .destination-search */
.taxonomy-search, .duration-search, .destination-search {
    position: relative;
    display: inline-block;
    width: auto;
}

/* Common Styles for Dropdown Toggle */
.dropdown-toggle, .duration-toggle {
    width: 100%;
    text-align: left;
    background: #fff;
    padding: 10px;
    border-radius: 4px;
    cursor: pointer;
}

/* Common Styles for Search Form Labels */
.search-form .taxonomy-search .st-form-dropdown-icon label,
.search-form .duration-search .st-form-dropdown-icon label,
.search-form .destination-search .st-form-dropdown-icon label {
    font-weight: 500;
    font-size: 16px;
    line-height: 26px;
    color: var(--heading-color);
}

/* Common Styles for Input Fields */
.search-form .taxonomy-search .st-form-dropdown-icon .render input,
.search-form .destination-search .st-form-dropdown-icon .render input,
.search-form .taxonomy-search .st-form-dropdown-icon .render input::placeholder,
.search-form .destination-search .st-form-dropdown-icon .render input::placeholder,
.search-form .taxonomy-search .st-form-dropdown-icon .render input::-ms-input-placeholder,
.search-form .destination-search .st-form-dropdown-icon .render input::-ms-input-placeholder,
.search-form form .dropdown input,
.search-form form .form-group .render {
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
    color: var(--grey-color, #5E6D77) !important;
}

/* Common Styles for Search Forms with Dropdown Menus */
.taxonomy-search .dropdown-menu,
.duration-search .dropdown-menu,
.search-form .destination-search .dropdown-menu.show {
    padding: 30px 40px;
    border-radius: 20px;
    margin-top: 8px !important;
	max-height: none;
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.08), 0px 4px 12px rgba(0, 0, 0, 0.05);
	inset: 0px auto auto 0px;
    transform: translate(0px, 74px);
}

/* Common Styles for Dropdown Items */
.dropdown-menu .item.dropdown-item,
.dropdown-menu .duration-item.dropdown-item {
    cursor: pointer;
}

/* Common Styles for Dropdown Items with Inputs */
.dropdown-menu .item.dropdown-item label input,
.dropdown-menu .duration-item.dropdown-item label input {
    cursor: pointer;
}

.taxonomy-search .dropdown-menu .dropdown-item input,
.duration-search .dropdown-menu .dropdown-item input {
    margin-right: 15px;
}

/* Common Styles for List Elements */
.taxonomy-search ul.st-scrollbar ul.column,
.taxonomy-search ul.st-scrollbar li,
.duration-search ul,
.duration-search ul li {
    padding: 0;
    margin: 0;
    list-style: none;
}

.taxonomy-search ul.st-scrollbar ul.column {
    flex: 1;
    margin-right: 10px;
}

.taxonomy-search ul.st-scrollbar li,
.duration-search ul li {
    padding: 5px 0;
}

.taxonomy-search .columns-container {
    display: flex;
    justify-content: space-between;
}

.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search .dropdown-menu li:not(.location-heading).item span:not(.stt-icon) {
	font-size: 16px;
    font-weight: 300;
}
.search-form form label {
		font-size: 16px;
    	display: flex;
    	font-weight: 300;
	}
/* Media Queries */
@media (max-width: 767px) {
    .taxonomy-search, .duration-search, .destination-search.st-search-destination-tour {
        width: 100% !important;
    }
	
	.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search .dropdown-menu li:not(.location-heading).item span:not(.stt-icon) {
    font-weight: 300;
	}
	.taxonomy-search:after, .destination-search:after {
		display: none !important;
	}

    .columns-container {
        flex-direction: column;
    }

    /*.taxonomy-search .columns-container .first-column,
    .taxonomy-search .columns-container .second-column {
        display: none;
    }*/

    .taxonomy-search .columns-container .combined-column {
        display: block;
        //max-height: 200px;
        overflow-y: auto;
    }

    .taxonomy-search:after, .destination-search:after {
        display: none;
    }

    .dropdown-menu {
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        border-radius: 0;
        top: 100%;
    }

    .search-form form .taxonomy-search .render {
        min-width: 250px;
    }
}

@media screen and (min-width: 768px) {
    .taxonomy-search .columns-container {
        display: flex;
    }

    .taxonomy-search .columns-container .column {
        max-height: none;
        overflow-y: visible;
    }

    .taxonomy-search .columns-container .combined-column {
        display: none;
    }
	.home .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal.swiper-pagination-lock {
    display: none;
	}
}

@media screen and (max-width: 991px) {
    .taxonomy-search, .duration-search, div.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search.st-search-destination-tour {
        width: 100%;
        border-bottom: 1px solid #DEDEDE;
    }
}

@media screen and (max-width: 991px) {
    .st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .st-focus {
    	border-radius: 0;
	}
	.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search.st-focus {
        box-shadow: 0px 5px 20px rgba(0, 0, 0, 0.1);
		margin-bottom: 1px;
    }
}

/* Unique Styles */
@media screen and (min-width: 991px) {
.taxonomy-search:after, .destination-search:after {
    content: "";
    height: 20px;
    width: 1px;
    display: block;
    background: #DEDEDE;
    border: none;
    position: absolute;
    right: 0;
    top: 27px;
}
}
.taxonomy-search .dropdown-menu .columns-container .column {
    padding: 0 20px;
}

.dropdown-menu.show .st-scrollbar {
    padding: 0 20px;
}

.sub-taxonomies {
    list-style: none;
    padding-left: 0;
}

.combined-column {
    display: none;
}

.search-form .destination-search .dropdown-menu.show {
    padding: 20px 40px;
}
/* TOP SEARCH END */

.search-result-page.tour-layout6 .st-results .toolbar .toolbar-action li.layout {
    display: none;
}
.sidebar-item.pag.st-icheck.st-border-radius.durations .item-content ul.child-terms {
    display: none;
}
.item-content.range-slider .irs .irs-min, .item-content.range-slider .irs .irs-max {
    display: none !important;
}
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search.st-search-destination-tour {
    width: auto;
	min-height: 80px;
    align-content: center;
}
.stt-icon.stt-icon-category, .stt-icon.stt-icon-clock, .stt-icon.stt-icon-location1 {
    font-size: 20px;
    margin-left: 12px;
    margin-right: 5px;
}
.search-form form .form-group .render, .search-form form .dropdown input, .search-form form .dropdown input::placeholder {
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
    color: var(--grey-color, #5E6D77) !important;
}
/*.price-search .range-slider .irs-line, .price-search .range-slider .irs-bar {
    height: 8px !Important;
}*/
.irs--flat .irs-bar, .irs--flat .irs-line {
    top: 27px;
}
.price-search .range-slider .irs--flat .irs-handle i:first-child {
    height: 15px;
    width: 15px;
}
.price-search {
    min-width: 220px;
    width: auto;
    padding: 0 30px;
	min-height: 82px;
    align-content: center;
}

.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .field-guest .dropdown-menu {
    min-width: 680px;
}
.search-form form .form-button:after {
    content: "";
    height: 20px;
    width: 1px;
    display: block;
    background: #DEDEDE;
    border: none;
    margin-right: 30px;
}
div.search-form form .form-button {
    height: 100%;
    border-left: none;
}
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .field-guest {
    padding-left: 30px;
    min-width: 130px;
}
.search-result-page.tour-layout6 .st-results .toolbar .search-string .btn-clear-filter{
	font-weight: 400;
}
.stt-icon-check.second {
    background: #5191fa !important;
    color: #fff !important;
}
.st-review-booking-form, .st-video {
    display: none;
}
#mobile-price .price {
    display: block;
}
.tour-sale-box .st_sale_class {
    background-color: #eb4b3d;
	font-weight: 400;
}
.services-item.item-elementor .item .featured-image .st-tag-feature-sale {
    opacity: 0.9;
}
@media only screen and (max-width: 768px) {
	body:not(.single-st_tours) div#gotop {
    bottom: 20px;
}
	.st-mod-style #st-content-wrapper.st-style-elementor .st-service-header2 .st-heading {
		font-size: 24px;
	}
	#st-content-wrapper .st-heading-section {
		font-size: 20px;
	}
	.st-contact-form.st-border-new {
		padding: 20px !important;
	}
	#wpcf7-f5-p313-o1 .st-contact-form.st-border-new .st-button-subbmit {
    	width: 100%;
	}
	#wpcf7-f5-p313-o1 .st-contact-form.st-border-new input[type=submit] {
		width: 100%;
	}
	.single-st_tours #st-content-wrapper.st-style-elementor .st-service-feature .item .icon {
		padding: 6px;
   		width: 34px;
    	height: 34px;
	}
	i.custom1 svg {
    	vertical-align: unset;
    	padding: 1px;
   		margin: -2px;
	}
	.single-st_tours .st-service-feature {
   		margin-bottom: -20px;
	}
}
@media screen and (max-width: 991px) {
    #st-content-wrapper.st-style-elementor .st-fixed-form-booking .st-form-book-wrapper {
        padding-top: 0;
    }
	#st-content-wrapper.st-style-elementor .hotel-target-book-mobile .price-wrapper #mobile-price {
		display: block;
	}
	    #st-content-wrapper .fixed-on-mobile {
        padding: 15px 5px;
    }
}
@media screen and (max-width: 767px) {
    .st-single-service-content .st-service-header2 .right {
        position: absolute;
        z-index: 9;
        right: 15px;
        margin-top: -10px;
    }
	.single-st_tours #st-content-wrapper.st-style-elementor .st-service-header2 .right .shares .share-item {
		display: block;
	}
	.single-st_tours #st-content-wrapper.st-style-elementor .item.onsale{
		font-size: 16px;
		color: #ad2f2f;
	}
	    .single #st-content-wrapper.st-style-elementor .st-relate .st-heading-section {
        text-align: left;
    }
	.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon {
		align-content: space-evenly;
	}
	body header .header #main-menu > li.menu-item-has-children.menu-item-mega-parent .menu-dropdown li {
		margin: 0;
	}
	body header.header-style-10 .header #st-main-menu #main-menu > li.menu-item-has-children .menu-dropdown li.menu-item a {
    padding-left: 0 !important;
}
	body header.header-style-10 .header #st-main-menu #main-menu > li.menu-item-has-children .menu-dropdown {
    padding: 25px !important;
}
}
.single-st_tours #st-content-wrapper.st-style-elementor .st-form-book-wrapper .form-booking-price .st_sale_class {
	width: 110px;
    height: 50px;
    top: -5px;
    line-height: 62px;
    right: -34px;
    background: #cc0033;
}
.single-st_tours #st-content-wrapper.st-style-elementor .st-form-book-wrapper .st-form-head-book {
    padding-top: 40px;
	padding-bottom: 6px;
}
.price2-price.single-price {
    padding-right: 8px;
    font-size: 18px;
}
.tour2-price.single-price-row {
    padding-right: 10px;
}
.base-price-single {
    padding-left: 8px;
}
.price2-price.grid-disc-price {
    color: #bd3829;
}
.grid-orig-price {
    padding-left: 8px;
    color: #777;
}
.base-price-single .price2-price {
    font-size: 18px;
    padding-right: 8px;
}
.item-onsale2.single-sale {
    color: #999;
    position: absolute;
	font-weight: 300;
    margin-top: -16px;
    margin-left: 9px;
}
#mobile-price .item-onsale2.single-sale {
    margin-top: -9px;
    margin-left: 9px;
    font-size: 12px;
}
.price2-price.no-disc {
    padding-right: 8px;
    font-size: 18px;
}
#mobile-price .price2-price.no-disc {
    padding-right: 4px;
    font-size: 16px;
}
.tour2-price.disc-first.single-minprice {
    position: inherit;
    display: block;
    font-size: 14px;
	color: #777;
    padding: 10px 0 0 8px;
    margin-bottom: -6px;
}
#mobile-price .tour2-price.disc-first.single-minprice {
    font-size: 13px;
    padding: 5px 0 0 8px;
}
#mobile-price {
    padding-top: 6px;
}
.tour2-price.disc-first.single-minprice .price2-price {
    font-size: 14px;
}
#mobile-price .tour2-price.disc-first.single-minprice .price2-price {
    font-size: 12px;
}
.hotel-target-book-mobile .btn-v2 {
	font-weight: 400;
	text-align: center;
}
.single-minprice-disc {
    padding-left: 6px;
}
#mobile-price .single-minprice-disc {
    position: absolute;
    font-size: 10px;
    margin-top: -12px;
    padding-left: 9px;
}
.kriips {
    color: #ad2f2f;
    font-weight: 400;
    font-size: 16px;
    text-decoration: line-through;
    font-style: italic;
    padding-right: 10px;
}
.form-booking-price {
    padding-bottom: 15px;
    background: #fafafa;
    border-bottom: 1px solid #e5e5e5;
}
.single #st-content-wrapper.st-style-4 .inquiry-v2 .st-sent-mail-customer .form-wrapper .btn-primary {
    margin-top: 35px;
    padding: 15px;
	font-size: 17px;
	background: #e69138;
}
.single #st-content-wrapper.st-style-4 .inquiry-v2 .st-sent-mail-customer .form-wrapper .btn-primary:hover {
	background: #e18525;
}
.st-form-head-book.st-service-header2.d-flex.justify-content-between.align-items-center {
    display: block !important;
	margin-bottom: 10px;
}
span.price-title {
	color: #444;
    margin-right: 5px;
    font-size: 16px;
}
span.title-price {
    font-size: 18px;
    font-weight: 600;
    color: #000;
	display: block;
	padding-bottom: 15px;
}
.price-block {
    float: left;
    padding: 10px 10px 0 0;
}
	.single .st-fixed-form-booking .st-form-head-book .st-price-origin .price{
		padding-right: 10px;
	}
.single.single-st_tours #st-content-wrapper.st-style-elementor .owner-info {
    padding: 20px 25px 0 25px;
}
form.wpcf7-form.init center {
    border-top: 1px solid #e5e5e5;
    padding-top: 30px;
	font-weight: 300;
	margin-top: -15px;
}
.single #st-content-wrapper.st-style-elementor .owner-info {
    padding: 40px 15px 0 15px;
}
i.stt-icon-check.hh {
    font-size: large;
    background: #cef2e5;
    color: #29ad6f;
    padding: 2px;
	margin-right: 10px;
    border-radius: 50%;
}
i.stt-icon-close.hh {
    font-size: large;
    background: #fad6d6;
    color: #da386b;
    padding: 2px;
	margin-left: 20px;
	margin-right: 6px;
    border-radius: 50%;
}
.services-item.item-elementor .item .content-item .sub-title {
    margin-bottom: 2px;
    color: #1e90ff;
}
.services-item.item-elementor .item .st-address span, .services-item.item-elementor .item .st-address i {
    font-weight: 300;
}
.tour-type-names {
    font-size: 13px;
    font-style: italic;
    font-variant: all-petite-caps;
}
.tour-type-container {
    margin-bottom: 10px;
    color: #444;
}
.tour-type-icon {
    padding-right: 10px;
}
.matka-pikkus-container, .tour-type-container {
    display: flex;
    align-items: flex-start; /* Ikoon ja teksti vertikaalne joondamine üles */
}
.matka-pikkus-info, .tour-type-info {
    display: flex;
    flex-wrap: wrap; /* Vajadusel ümberlülitumine reavahetusele */
}
.matka-pikkus-info > span, .tour-type-info > span {
    white-space: nowrap; /* Takistab teksti reavahetust */
    margin-right: 10px; 
}
.matka-pikkus-info > span::after, .tour-type-info > span::after {
    content: ','; /* Lisame komad atribuutide vahele */
}
.tour-type-icon, .matka-pikkus-icon {
	display: inline;
}
.additional-tour-type, .additional-matka-pikkus {
    margin-left: 30px;
}
.list-stat.list1 {
    margin-bottom: 10px;
	width: max-content;
	text-align: left;
}
.service-list-wrapper.service-tour .services-item.item-elementor .st-list-footer {
    margin-top: 20px;
}
.list-stat i.input-icon.st-border-radius.field-icon.fa svg g {
    fill: #ffffff;
}
.st-list-top.w-100 {
    font-size: 14px;
}
.list-stat {
    width: 100%;
    display: block;
    text-align: left;
}
.st-list-top.w-100 div i {
    padding: 3px;
    margin-right: 8px;
    margin-bottom: 3px;
    background: #1e90ff;
}
/*.services-item.item-elementor .item .content-item .section-footer {
    padding-right: 10px;
    width: 87%;
    display: block;
    position: absolute;
    bottom: 15px;
}
.stats {
    position: absolute;
    bottom: 90px;
}*/
.value i.input-icon.st-border-radius.field-icon.fa {
    padding: 3px;
    margin-right: 5px;
    border-radius: 6px;
    background: #4490d3;
}
span.dist {
    padding: 5px;
	display: inline-block;
}
p.value {
    display: inline;
    font-size: 13px;
	white-space: nowrap;
}
i.custom1 svg {
    vertical-align: unset;
}
.map_iframe iframe {
    width: 100%;
}
div#st-attributes, div#st-description .st-heading-section, #st-reviews .st-heading-section, .wistlist-single, .owner-info.d-none.d-sm-block.widget-box.st-border-radius {
    display: none !important;
}
h2.st-heading-section {
    margin-bottom: 20px;
}
#st-content-wrapper .st-description {
    color: #232323;
	font-size: inherit;
}
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .form-date-field.st-search-date-tour {
    min-width: 45%;
}
.service-list-wrapper.service-tour .services-item.item-elementor .item.onsale {
    font-weight: 400;
    font-size: 14px;
}
.services-item.item-elementor .item .content-item .section-footer {
    padding: 8px 0 5px 0;
    margin-top: 15px;
    min-height: 55px;
    align-content: end;
}
.services-item.item-elementor .item .content-item .price-wrapper.price-wrapper-tour {
    min-height: 50px;
    margin: 0;
}
.services-item.item-elementor .item .content-item {
	min-height: 290px;
}
.services-item.item-elementor .item .content-item .title {
	font-size: 17px;
}
.service-list-wrapper.st-blog-list-el .services-item.item-elementor .item .content-item {
    height: 350px;
    display: block;
    overflow: hidden;
    margin-bottom: 50px;
    padding-top: 20px !important;
}
li.st-header-link a {
    cursor: text;
	pointer-events: none;
}
body header.header-style-10 .header .header-right .st-list > li a:hover {
    color: #1a2b48;
}
body header.header-style-10 .header .header-right .st-list > li:nth-child(2) > a, .services-item.item-elementor a.service-avatar, .service-add-wishlist {
    display: none;
}
#st-content-wrapper .accordion.faq button {
    font-size: 20px;
    line-height: 35px;
}
.st-contact-form.st-border-new input[type=submit] {
    font-size: 18px;
    margin-right: auto;
    padding: 15px 40px;
}
.st-contact-form.st-border-new {
	padding: 50px;
    color: #333;
}
.st-contact-form.st-border-new .form-group {
    padding-bottom: 0;
}
.st-contact-form.st-border-new .st-button-subbmit::after {
    display: none;
}
.service-list-wrapper.service-tour .col-12.col-md-6.col-lg-4.item-service {
    padding: 0 10px;
}
#gotop {
    z-index: 9999;
}
	
.grecaptcha-badge { 
	visibility: hidden; 
}

/***** CF7 *****/
.cf-container {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: -10px;
	margin-left: -10px;
}
.cf-col-1, .cf-col-2, .cf-col-3, .cf-col-4, .cf-col-5, .cf-col-6, .cf-col-7, .cf-col-8, .cf-col-9, .cf-col-10, .cf-col-11, .cf-col-12 {
	position: relative;
	width: 100%;
	min-height: 1px;
	//padding-right: 10px;
	//padding-left: 10px;
}
@media ( min-width: 576px ) {
	.cf-col-1 {
		-ms-flex: 0 0 8.333333%;
		flex: 0 0 8.333333%;
		max-width: 8.333333%;
	}
	.cf-push-1 { margin-left: 8.333333%; }
	.cf-col-2 {
		-ms-flex: 0 0 16.66667%;
		flex: 0 0 16.66667%;
		max-width: 16.66667%;
	}
	.cf-push-2 { margin-left: 16.66667%; }
	.cf-col-3 {
		-ms-flex: 0 0 25%;
		flex: 0 0 25%;
		max-width: 25%;
	}
	.cf-push-3 { margin-left: 25%; }
	.cf-col-4 {
		-ms-flex: 0 0 33.33333%;
		flex: 0 0 33.33333%;
		max-width: 33.33333%;
	}
	.cf-push-4 { margin-left: 33.33333%; }
	.cf-col-5 {
		-ms-flex: 0 0 41.66667%;
		flex: 0 0 41.66667%;
		max-width: 41.66667%;
	}
	.cf-push-5 { margin-left: 41.66667%; }
	.cf-col-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
	.cf-push-6 { margin-left: 50%; }
	.cf-col-7 {
		-ms-flex: 0 0 58.33333%;
		flex: 0 0 58.33333%;
		max-width: 58.33333%;
	}
	.cf-push-7 { margin-left: 58.33333%; }
	.cf-col-8 {
		-ms-flex: 0 0 66.66667%;
		flex: 0 0 66.66667%;
		max-width: 66.66667%;
	}
	.cf-push-8 { margin-left: 66.66667%; }
	.cf-col-9 {
		-ms-flex: 0 0 75%;
		flex: 0 0 75%;
		max-width: 75%;
	}
	.cf-push-9 { margin-left: 75%; }
	.cf-col-10 {
		-ms-flex: 0 0 83.33333%;
		flex: 0 0 83.33333%;
		max-width: 83.33333%;
	}
	.cf-push-10 { margin-left: 83.33333%; }
	.cf-col-11 {
		-ms-flex: 0 0 91.66667%;
		flex: 0 0 91.66667%;
		max-width: 91.66667%;
	}
	.cf-push-11 { margin-left: 91.66667%; }
	.cf-col-12 {
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
}

/***** CF7 kinkekaart *****/
/* Üldised seaded */
.cf-container-kinkekaart {
    margin: 0 auto;
    padding: 20px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-wrap: wrap;
}

/* Veerud ja üldine paigutus */
.cf-container-kinkekaart .cf2-col-6 {
    width: calc(50% - 3px);
	display: inline-block;
    vertical-align: top;
}

.cf-container-kinkekaart .cf2-col-12 {
    width: 100%;
}

/* Sisendväljade stiil */
.cf-container-kinkekaart input,
.cf-container-kinkekaart textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 16px;
    background: #f9f9f9;
    transition: border-color 0.3s ease-in-out;
	box-sizing: border-box;
}

.cf-container-kinkekaart input:focus,
.cf-container-kinkekaart textarea:focus {
    border-color: #007bff;
    outline: none;
    background: #fff;
}

/* Tekstiala stiil */
.cf-container-kinkekaart textarea {
    height: 120px;
    resize: none;
}

/* Nupu stiil */
.cf-container-kinkekaart input.wpcf7-form-control.wpcf7-submit.has-spinner {
    width: 100%;
    background: #e69138;
    color: #fff;
    font-size: 18px;
    padding: 12px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.3s ease-in-out;
}

.cf-container-kinkekaart input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
    background: #eba050;
}

/* Mobiilisõbralik disain */
@media (max-width: 480px) {
    .cf-container-kinkekaart .cf2-col-6, .cf-container .cf-saada {
        width: 100%;
		display: block;
    }
}

/****** Kinkekaardi aktiveerimine ******/
.kinkekaart-view {
    background: #F9F9F9;
    border: 2px solid #E0E0E0;
    border-radius: 12px;
    padding: 40px;
    max-width: 400px;
    margin: 20px auto;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    text-align: left;
}
.kinkekaart-view h3 {
    font-size: 22px;
	font-weight: 600;
    color: #444;
    margin-bottom: 25px;
}

.kinkekaart-view p {
    font-size: 16px;
    color: #444;
    margin: 8px 0;
    text-align: left;
}

.kinkekaart-used {
    color: #D9534F !important;
    font-weight: bold;
    font-size: 18px;
    margin-top: 15px;
}

.kinkekaart-flex {
    display: grid;
    grid-template-columns: auto 1fr; /* Esimene tulp kohandub sisuga, teine täidab ülejäänud ruumi */
    gap: 5px 15px;
    align-items: center;
	color: #444;
}

.kinkekaart-flex > div:first-child {
    font-weight: bold;
    white-space: nowrap;
}

.kinkekaart-flex > div:last-child {
    min-width: 0; /* Väldib, et teine tulp nõuaks liiga palju ruumi */
}


/****** Kinkekaart parool modal ******/
#activate-giftcard {
    background: #A7E7A1;
    color: #385f38;
    border: 1px solid #8DC891;
    padding: 12px 20px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
    display: inline-block;
	margin-top: 20px;
    width: 100%;
}

#activate-giftcard:hover {
    background: #93d58d;
    border-color: #7FBF82;
    box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.15);
}

.kinkekaart-password-modal {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	display: flex;
	justify-content: center;
	align-items: center;
}
.kinkekaart-password-modal-content {
	background: white;
	padding: 20px;
	border-radius: 10px;
	text-align: center;
	position: relative;
	width: 300px;
}
.kinkekaart-close-modal {
	position: absolute;
	top: 10px;
	right: 15px;
	font-size: 20px;
	cursor: pointer;
}
.kinkekaart-password-container {
	display: flex;
	align-items: center;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 5px;
}
.kinkekaart-password-container input {
	flex: 1;
	border: none;
	outline: none;
	padding: 5px;
}
.kinkekaart-eye-icon {
	cursor: pointer;
	padding: 5px;
}
#kinkekaart-confirm-activation {
	width: 100%;
	margin-top: 10px;
	padding: 8px 15px;
	background: green;
	color: white;
	border: none;
	cursor: pointer;
	border-radius: 5px;
}
#kinkekaart-modal-title {
	text-align: left;
    padding: 8px;
	font-weight: 600;
}
#kinkekaart-password-error {
	color: #e54848;
    display: block;
    text-align: left;
    padding: 8px;
}
.kinkekaart-loader {
	border: 4px solid #f3f3f3;
	border-top: 4px solid #3498db;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	animation: spin 1s linear infinite;
	margin: 20px auto;
}
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}