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

/* =========================================
   Base reset
   ========================================= */
*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	background: #ffffff;
	color: #14201b;
	font-family: 'Instrument Sans', 'Helvetica Neue', Arial, sans-serif;
	font-size: 17px;
	line-height: 1.55;
}

img {
	max-width: 100%;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
}

p {
	margin: 0;
}

a {
	color: #1a5c44;
}

a:hover {
	color: #0f3b2c;
}

/* =========================================
   Mobile nav toggle (CSS-only)
   ========================================= */
.navt {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
	pointer-events: none;
}

.burger {
	display: none;
}

/* =========================================
   Mobile breakpoint
   ========================================= */
@media (max-width: 760px) {
	.burger {
		display: flex;
		width: 44px;
		height: 44px;
		align-items: center;
		justify-content: center;
		border: 1.5px solid #14201b;
		border-radius: 8px;
		cursor: pointer;
		color: #14201b;
	}

	.navt:focus-visible + .burger {
		outline: 3px solid #1a5c44;
		outline-offset: 2px;
	}

	.hnav,
	.hcta {
		display: none !important;
		flex: 1 1 100%;
	}

	.navt:checked ~ .hnav {
		display: flex !important;
		flex-direction: column;
		align-items: center;
		gap: 0 !important;
		border-top: 1px solid #dfe5e0;
		padding-top: 8px;
	}

	.navt:checked ~ .hcta {
		display: flex !important;
		justify-content: center;
		padding-bottom: 8px;
	}

	.navt:checked ~ .hcta a {
		flex: 1 1 100%;
		justify-content: center;
	}

	section,
	footer {
		text-align: center;
	}

	section > div {
		padding-top: 56px !important;
		padding-bottom: 56px !important;
	}

	section [style*="flex-wrap: wrap"],
	footer [style*="flex-wrap: wrap"] {
		justify-content: center;
	}

	section [style*="max-width"]:not([style*="1200px"]) {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.btns > a {
		flex: 1 1 100%;
		justify-content: center;
	}

	.slider {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: flex-start !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		margin-left: -24px;
		margin-right: -24px;
		padding: 0 24px 12px;
		scroll-padding-left: 24px;
		gap: 16px !important;
	}

	.slider > * {
		flex: 0 0 84% !important;
		scroll-snap-align: start;
		text-align: left;
	}

	.slider [style*="flex-wrap: wrap"] {
		justify-content: flex-start;
	}

	form {
		text-align: left;
	}

	footer [style*="gap: 40px 64px"] > * {
		flex: 1 1 100% !important;
	}

	footer [style*="max-width: 340px"] {
		margin-left: auto;
		margin-right: auto;
	}

	footer a {
		justify-content: center;
	}
}
