/* ===== RESPONSIVE ===== */
@media(max-width:1200px){

    .tools-inner{
        padding:80px 50px;
    }

    .tools_list{
        grid-template-columns:repeat(2,1fr);
        gap:50px;
    }

}
@media (max-width: 1024px) {
	.fullscreen-menu {
		width: 100%
	}

	.container {
		width: 100%;
	}

	#mainHero .banner-title {
		font-size: 42px;
	}

	.section-description {
		font-size: 26px;
	}

	.image_container {
		grid-template-columns: repeat(2, 1fr);
	}

	.featured_product {
		grid-template-columns: repeat(2, 1fr);
	}

	.featured_content,
	.featured_content_right {
		min-height: 500px;
	}

	.featured_content_left {
		padding: 55px 80px;
	}

	.footer-col h3 {
		line-height: 27px
	}

	.core_content {
		padding: 50px
	}

	.signature_escapes .right .core_content {
		padding-left: 0;
	}

	.signature_escapes .left .core_content {
		padding-right: 0;
	}

	.button_wrapper {
		flex-direction: column
	}

	.button_wrapper a {
		text-align: center
	}

	.accomodation_list_cat.left .acc_content {
		padding-left: 100px;
	}

	.acc-nav {
		left: 99px;
	}

	.other-accomodation-item .feature_img {
		height: 400px
	}
}

@media (max-width: 992px) {
	.featured_content {
		flex-direction: column;
	}

	.featured_content_left,
	.featured_content_right {
		width: 100%;
	}

	.featured_content_left {
		padding: 60px 30px;
	}

	.featured_content_right {
		min-height: 400px;
	}

	.icon_box_item {
		width: 45%;
	}

	.booking-wrapper .single-product-accomodations .accomodation_list_items {
		grid-template-columns: 1fr;
	}

	.booking-wrapper .single-product-accomodations .acc_image {
		height: 240px;
	}

	.booking-wrapper .single-product-accomodations .title-list-acc h3 {
		font-size: 32px;
	}

	.booking-wrapper .single-product-accomodations .acc_content .title {
		font-size: 30px;
	}

	.mindcare-access-inner {
		min-height: 520px;
		padding: 54px 18px;
	}

	.mindcare-access-copy {
		font-size: 28px;
		line-height: 1.35;
	}

	.mindcare-access-btn {
		font-size: 24px;
		min-height: 52px;
	}

	.footer-container {
		grid-template-columns: 1fr 1fr;
		gap: 40px;
	}
}


@media (max-width: 768px) {
	#mainHero {
		height: 80vh;
	}

	#mainHero .banner-title {
		font-size: 32px;
		max-width: 500px;
	}

	#mainHero .banner-button {
		flex-direction: column;
		gap: 15px;
	}

	#mainHero .banner-button a {
		width: 100%;
		max-width: 250px;
	}

	#mainHero .heroi-content {
		transform: translateY(39px);
	}

	.custom-section {
		padding: 80px 20px;
	}

	.custom-section h3 {
		font-size: 28px;
	}

	.section-description {
		font-size: 20px;
	}

	.content-wrapper {
		text-align: center;
		margin: 0 auto;
	}

	.content-wrapper a {
		margin: 10px 5px 0;
	}

	.featured_product {
		grid-template-columns: 1fr;
	}

	.product_item {
		height: 380px;
	}

	.product_item h3 {
		font-size: 26px;
	}

	.begin_coversations {
		padding: 80px 20px;
	}

	.begin_conversation_wrapper h3 {
		font-size: 34px;
	}

	.begin_conversation_wrapper .desc {
		font-size: 16px;
	}

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

	.two-column-container .column {
		width: 100%;
	}

	.other-accomodation-items {
		grid-template-columns: 1fr;
	}

	.other-accomodation-item .feature_img {
		height: 240px;
	}

	.acc_item {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.acc_content {
		padding-left: 30px !important;
		padding-right: 30px;
	}

	.accomodation_list_cat.left .acc_item {
		direction: ltr;
	}

	.acc-nav {
		left: 29px;
		bottom: 56px;
	}

	.accomodation_list_cat.left .acc_content {
		min-height: 247px;
		padding-left: inherit
	}

	.custom-login-wrapper {
		flex-direction: column;
	}

	.login-image {
		display: none;
	}

	.login-form-wrapper {
		width: 100%;
		padding: 40px 20px;
	}

	.form-row-password-group {
		flex-direction: column;
	}

	.form-row-password-group .form-col {
		width: 100%;
	}

	.woocommerce-account .woocommerce {
		flex-direction: column;
	}

	.woocommerce-MyAccount-navigation {
		width: 100%;
	}

	.form-row-first,
	.form-row-last {
		width: 100%;
		float: none;
	}

	.email-row {
		flex-direction: column;
	}

	.featured_content_overview {
		display: block;
	}

	.featured_overview_content_left {
		height: 500px
	}

	.information_item_content {
		padding-left: 0px;
	}

	.confirm-wrapper {
		margin: 40px auto;
	}

	.confirm-lead {
		margin: -50px auto 24px;
		font-size: 14px;
	}

	.confirm-wrapper .grid {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.confirm-wrapper .confirm-bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 18px;
	}

	.consent-popup-inner {
		padding: 24px 16px;
	}

	.practice-grid {
		grid-template-columns: 1fr !important;
	}
	
	.consent-meta-grid {
		grid-template-columns: 1fr;
	}

	.ofw-order-received {
		padding: 48px 16px 80px;
	}

	.ofw-thankyou-header h2 {
		font-size: 28px;
	}

	.ofw-order-bar__item {
		flex-basis: 50%;
		border-bottom: 1px solid #e5e0d6;
	}

	.ofw-booking-details {
		grid-template-columns: 1fr;
	}

	.ofw-detail-row {
		border-right: none;
	}

	.quizModal{
        padding:15px;
    }

    .quizModal .quiz-box{
        padding:30px 22px;
    }

    .quizModal h2{
        font-size:28px;
        margin-bottom:35px;
    }

    .quizModal .question label{
        width:calc(50% - 10px);
        margin:0 0 12px;
        text-align:left;
    }

    .quizModal input[type="submit"]{
        width:100%;
    }

	.tailor_myescape {
        padding: 40px 20px 60px;
    }

    .tailor_myescape .row-2 {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-bottom: 40px;
    }

    .tailor_myescape .row-full {
        margin-bottom: 40px;
    }

    .tailor_myescape textarea {
        min-height: 110px;
    }

    .tailor_myescape input[type="submit"] {
        width: 100%;
        min-width: auto;
    }
	
	.tools-modal{
        padding:15px;
    }

    .tools-inner{
        padding:60px 25px;
        margin:20px auto;
    }

    .popup-close{
        top:20px;
        right:20px;
        font-size:30px;
    }

    .tools-inner h3{
        font-size:32px;
        margin-bottom:30px;
    }

    .tools-inner h4,
    .desc_popup{
        font-size:16px;
    }

    .tools_list{
        margin-top:60px;

        grid-template-columns:1fr;

        gap:35px;
    }

    .tool_link h5{
        font-size:22px;
    }

    .tool_item p{
        font-size:16px;
    }
}

@media (max-width: 600px) {
	h3 {
		font-size: 24px;
		line-height: 35px;
	}

	.image_item {
		min-height: 350px;
	}

	.image_grid_title {
		flex-direction: column;
		align-items: flex-start;
	}

	.image_grid_title hr {
		width: 100%;
	}
	
	.desktop-header-actions {
		display: none;
	}

	.mobile-header-actions {
		display: flex;
		align-items: center;
		gap: 12px;
		margin-right: 12px
	}

	.mobile-header-icon {
		display: flex;
		align-items: center;
		justify-content: center;
		color: #C8A063;
		text-decoration: none;
	}

	.mobile-header-icon svg {
		width: 30px;
		height: 30px;
	}
	
	.sticky-enquiry-btn{
		display: flex;
	}
	
	.icon_box_item {
		width: 100%;
	}

	.footer-container {
		grid-template-columns: 1fr;
	}

	.footer-bottom {
		flex-direction: column;
		gap: 10px;
		text-align: center;
	}

	.header-container {
		padding: 0
	}

	.header-center img {
		max-height: 30px;
	}

	.newsletter_wrapper {
		display: block;
		padding-bottom: 74px;
	}

	#mainHero .banner-title {
		font-size: 30px
	}

	#mainHero .banner-button a {
		padding: 8px 20px
	}

	button.menu-toggle {
		padding: 12px 24px;
	}

	button.menu-close{
		padding: 12px 0;
	}

	.fullscreen-main li{
		list-style: none !important;
	}

	.fullscreen-main .sub-menu{
		padding-left: 0;
    	margin-top: 21px;
	}
	
	.menu-content{
		display: block;
	}

	.menu-left{ 
		width: 100%;
	}

	.custom-section h3,
	.image_grid_title h3,
	.title_core_feature h3 {
		font-size: 20px;
		line-height: 25px;
	}

	.container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.image_grid,
	.core_features {
		padding: 0
	}

	.image_grid_title,
	.title_core_feature,
	.information_item_title,
	.title-list-acc {
		gap: 0;
		margin: 0;
	}

	.image_grid_title hr,
	.title_core_feature hr,
	.information_item_title hr,
	.title-list-acc hr {
		flex: auto
	}

	.image_container {
		padding-left: 20px;
		padding-right: 20px
	}

	.featured_contents .container,
	.featured_product_wrapper .container {
		padding: 0px;
	}

	.featured_content_left {
		padding: 10px 20px;
	}

	.featured_content_right {
		margin-top: 30px;
		height: 500px;
	}

	p {
		font-size: 16px
	}

	.featured_content_left a {
		margin-top: 0
	}

	.featured_contents {
		padding-bottom: 0
	}

	.featured_content_overview_wrapper {
		margin-top: 0;
		margin-bottom: 0
	}

	.featured_overview_content_left {
		display: none
	}

	.featured_overview_content_right h3 {
		text-align: center
	}

	.featured_product {
		gap: 0
	}

	.testimonial_wrapper {
		margin-top: 0;
		padding-bottom: 60px;
	}

	.featured_content_lists {
		margin-top: 70px
	}

	.list_feature {
		padding-left: 50px;
		padding-right: 50px;
	}

	.testimonial_item {
		border-right: 0;
		padding: 0px;
	}

	.star_rating,
	.testimonial_title {
		text-align: center;
	}

	.site-footer {
		padding: 0
	}

	.newsletter_wrapper h3,
	.footer-col {
		text-align: center
	}

	.newsletter_wrapper p {
		font-size: 16px;
		text-align: center;
		padding-left: 20px;
		padding-right: 20px;
		margin-top: 20px;
		margin-bottom: 50px;
	}

	.newsletter_wrapper a {
		display: block;
		text-align: center
	}

	.footer-logo {
		text-align: centre;
	}

	.footer-widget p {
		margin-bottom: 0
	}

	.wp-container-core-social-links-is-layout-fdcfc74e {
		justify-content: center !important;
	}

	.core_feature_items .container,
	.call_to_action .container {
		padding: 0
	}

	.core_content {
		max-width: 100%;
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 10px;
	}

	.core_feature_item {
		display: block;
		margin-bottom: 0;
	}

	.core_feature_image {
		height: 326px;
	}

	.item_contents h5 br {
		display: none
	}

	.information_item_title {
		display: block;
		padding-top: 35px;
	}

	.information_items h5 {
		margin-top: 0
	}

	.information_items p {
		margin-bottom: 0
	}

	.information_item {
		padding-bottom: 30px
	}

	.information_item_title h3 {
		margin-top: 0
	}

	.title-list-acc {
		display: block
	}

	.acc_item .acc_image {
		order: 2
	}

	.accomodation-list {
		margin-top: 50px;
		padding-left: 20px;
        padding-right: 20px;
	}

	.acc-nav {
		top: 148px;
	}

	.accomodation_list_cat .acc-nav {
		left: 26px;
	}

	.other-accomodations {
		margin-top: 0;
		padding-top: 40px
	}

	.other-accomodation-items-list,
	.ofw-blog-grid,
	.blog-wrapper {
		grid-template-columns: repeat(1, 1fr);
	}

	.hiw_wrapper {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.hiw_item {
		display: block;
	}

	.items_text {
		width: 100%;
		padding: 0
	}

	.items_text:not(:last-child):after {
		display: none
	}

	.content-call-to-action {
		align-items: end
	}

	.cta-buttons {
		justify-content: center;
	}

	.information_items.default.padding-top-80 {
		padding-top: 0
	}

	.signature_escapes .right .core_content {
		padding-left: 20px
	}

	.signature_escapes .core_feature_item {
		display: grid;
		margin-bottom: 80px;
	}

	.signature_escapes .core_content {
		order: 2
	}

	.signature_escapes .core_content {
		padding-left: 20px !important;
		padding-right: 20px !important
	}

	.content-wrapper-custom-post,
	.newsletter-form input {
		width: 100%
	}

	.image_grid_title h3,
	.title_core_feature h3,
	.information_item_title h3,
	.title-list-acc h3 {
		white-space: wrap
	}

	.popup-inner {
		padding: 50px 20px;
		width: 90%
	}

	 .wpcf7-form .wpcf7-checkbox{
        grid-template-columns:1fr;
        gap:10px;
        margin-bottom:20px;
    }

	.practice-grid{
		gap: 4px 0;
	}

	.bespoke-form input[type="submit"]{
		text-align: center;
		display: block;
		margin: 0 auto;
	}
	
	.popup-close{
        right: 9px;
    	padding: 0;
    	top: 4px;
    }
	
	.custom-section a, .newsletter_wrapper a,
	.button_wrapper a, .btn, .content-wrapper a.outline_button{
		font-size: 16px
	}
	
	.content-wrapper a.outline_button{
		padding: 12px 14px;
	}
	
	.blog-title a{
		line-height: 30px
	}
	
	.wp-block-social-links.has-large-icon-size{
		justify-content: center
	}
	
	body.woocommerce .sticky-enquiry-btn,
	body.woocommerce-page .sticky-enquiry-btn {
		display: none !important;
	}
	
	.shop-categories {
        flex-direction: column;
        height: auto;
        min-height: 400px;
    }
	
	.category-item h3{
		line-height: 28px;
    	margin-bottom: 20px;
	}
	
	.category-item p{
		margin-bottom: 21px
	}
	
	.category-item .overlay{
		background: rgba(77, 61, 25, 0.3);
	}
	
	.custom-section {
        padding: 57px 20px;
    }
	
	.products-grid > * {
        flex: 1 1 100%; /* 1 column */
    }
	
	.custom-section h3{
		margin-bottom: 17px;
	}
	
	.product-item h3, .consent_content h3, .collapsible_item h3{
		line-height: 29px;
	}
	
	form.booking-form .booking-field label,
	form.booking-form .booking-field input{
		padding-left: 20px;
		padding-right: 20px
	}
	
	form.booking-form .booking-field input{
		width: 90%;
		margin-left: 20px;
	}
	
	span.flatpickr-weekday,
	.flatpickr-day{
		font-size: 14px
	}
	
	.dayContainer{
		height: 63%;
		min-width: 250px;

	}
	
	.flatpickr-calendar.open, .flatpickr-calendar.inline{
		max-height: 516px;
	}
	
	.guest-wrapper {
		margin-top:0;
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
        padding-right: 20px;
    }
	
	.guest-options {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
	
	.booking-wrapper .single-product-accomodations .title-list-acc h3{
		font-size: 30px
	}
	
	.booking-wrapper .single-product-accomodations .acc_content .meta{
		margin-bottom: 24px;
	}
	
	.booking-wrapper .single-product-accomodations .acc_content .title{
		margin: 0 0 29px;
		line-height: 35px;
	}
	
	.booking-wrapper .single-product-accomodations .acc-nav{
		margin-top: 26px;;
		margin-left: 28px;
	}
	
	.booking-wrapper{
		padding-top: 0
	}
	
	.confirm-wrapper{
		padding-left: 20px;
        padding-right: 20px;
	}
	
	.mindcare-pricing  > .confirm-wrapper{
		padding-left: 0;
        padding-right: 0;
	}
	
	.pricing-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: left;
    }
	
	.custom-radio{
		padding-left:0
	}
	
	 .mindcare-form {
        padding-left: 20px;
        padding-right: 20px;
    }
	
	.mindcare-form .form-grid {
        display: flex;
        flex-direction: column;
        gap: 24px !important;
    }

    .mindcare-form .form-grid > * {
        width: 100%;
        max-width: 100%;
    }
	
	.session-options{
		    display: flex;
		flex-direction: column;
    	padding-left: 20px;
    	padding-right: 20px;
	}
	
	.step-3 .confirm-wrapper,
	.step-3 .pricing-grid{
		padding-left: 20px;
		padding-right: 20px
	}
	
	.collapse_content ul {
        grid-template-columns: 1fr;
        gap: 10px;
    }
	
	.contact_information {
        grid-template-columns: 1fr;
        gap: 32px;
		padding-left: 20px;
        padding-right: 20px;
		margin-bottom: 80px
    }
	
	.contact_form_footer {
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 12px;
	}
	
	.contact_details_column{
		text-align: center
	}
	
	.contact_info_block h4{
		line-height: 30px
	}
	
	 .contact_info_grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
	
	.contact_info_content {
        justify-content: center;
        text-align: center;
    }
	
	.contact_info_item h4{
		margin-bottom:10px
	}
	
	.quizModal .question label{
		width: 100%
	}
	
	.quizModal .question{
		text-align:left
	}
	
	.quizResult .category-item{
		width: 100%
	}
	
}