/* general css */
:root {
	--font1 : 'Montserrat', sans-serif;
	--font2 : 'Times New Roman', serif;
	--font3 : 'Satisfy', serif;
	--color1 : #4B8D2B;	
	--color2 : #61a142;
	--color3: #E0EFF4;
	--color4: #f15a29;
	--color5 : #F2F1EF;
}

body {
	font-family: var(--font1);
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-family: var(--font2);
	margin: 0 0 15px;
}

.h2, h2 {
    font-size: 2.4rem;
	line-height: 2.6rem;
	margin-bottom: 30px;
}

p, li, .nav-links, .archive article .entry-content {
	font-size: 16px;
	line-height: 28px;
}

body, button {
	font-size: 20px;
	line-height: 33px;
}

input, select, optgroup, textarea {
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
}

.grid-container {
	width: 100%;
}

.post, .page, .page-content, .entry-content, .entry-summary {
    margin: 0;
}

h1 {
    font-size: 2.5em;
    line-height: 1.2;
}

.main-navigation ul {
	display: flex !important;
}

.menu-toggle {
	display: none;
}

.site-header {
    width: 100%;
	z-index: 9;
	position: relative;
}

.desktop-nav .menu-item .sub-menu {
	display: none;
}

.desktop-nav .menu-item.open .sub-menu {
    display: block;
    position: absolute;
    list-style: none;
    margin-left: 0;
    background-color: var(--color3);
    box-shadow: 0 6px 9px 3px #616161;
}

.bottom-navi .promo-item {
    display: flex;
    align-items: center;
    column-gap: 5px;
    width: max-content;
    font-size: 16px;
    line-height: 18px;
}

.bottom-navi .icon {
	max-height: 16px;
	width: auto;
}

.bottom-navi {
    background-color: #F2F1EF;
    padding: 7px 0;
}

.bottom-navi .grid-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.bottom-navi .promo-label {
    font-weight: 800;
	color: #676765;
}

.main-navigation {
	color: white;
    display: flex;
    justify-content: flex-end;
    column-gap: 20px;
	text-transform: uppercase;
    font-size: 14px;
}

.menu-btn-wrapper {
    display: flex;
    align-items: center;
    column-gap: 10px;
    width: fit-content;
	color: black;
}

.menu-btn-wrapper:hover {
	opacity: 0.8;
	cursor: pointer;
}

#secondary-menu li a {
	color: white;
}

#secondary-menu li a {
    color: white;
    border: 2px solid white;
}

#secondary-menu li:last-child a {
    border-color: var(--color1);
    background-color: var(--color1);
	border-radius: 40px;
	font-weight: 600;
}

#secondary-menu {
    column-gap: 10px;
    align-items: center;
    flex-wrap: nowrap;
}

.menu-wrapper {
	display: none;
}
.site-header.active .menu-wrapper {
    display: flex;
    width: 100vw;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    position: absolute;
    text-align: center;
    justify-content: center;
    height: 100vh;
    z-index: 1;
    background-image: linear-gradient(140deg, var(--color1) 0%, var(--color2) 50%, var(--color1) 75%);
    align-items: center;
    padding-top: 107px;
    flex-direction: column;
}

.site-header.active .custom-logo {
	filter: brightness(0) invert(1);
}


.site-header.active .menu a {
	color: white !important;
}

.site-header.active .menu-btn-wrapper {
	color: white;
}

.top-navi .icon-wrapper a, .top-navi .contact-wrapper a {
	color: white;
	font-weight: bold;
}

.top-navi .icon-wrapper {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.top-navi .contact-wrapper {
    color: white;
    font-size: 14px;
}

.site-title, .site-description {
	display: none !important;
}

.site-branding {
	margin: 0 !important;
	z-index: 2;
}

.top-navi {
    background-color: var(--color1);
    padding-top: 3px;
    padding-bottom: 3px;
}

.site-header.active .top-navi {
	display: none;
}

.nav-wrapper {
    margin: 20px auto;
}

.main-navigation {
	z-index: 2;
}

#primary-menu {
	flex-direction: column;
}

#primary-menu a {
	color: var(--color1);
	font-weight: 600;
}

.site-header .fa-caret-up {
    color: white;
    margin-top: 20px;
    font-size: 40px;
}

.site-header .fa-caret-up:hover {
	cursor: pointer;
}

.site-header {
	width: 100%;
    transition: all 0.3s ease-in-out;
}

.site-header.scrolled {
    position: fixed;
    background-color: #fffffff2;
    top: 0;
    margin: 0;
    width: 100%;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1); /* optional for effect */
}

.site-header.scrolled .custom-logo {
    width: auto;
    max-height: 50px;
}

.desktop-nav .menu {
    flex-direction: inherit !important;
    font-size: 14px;
    font-weight: 500;
}

.site-branding {
    padding: 8px 0;
}

.site-footer {
    background-color: var(--color1);
    padding-top: 80px;
    padding-bottom: 80px;
    color: white;
    font-size: 16px;
    line-height: 26px;
}

.site-footer p {
    font-size: 14px;
    line-height: 25px;
    margin-bottom: 0;
}

.site-footer h3 {
    font-family: var(--font1);
    font-size: 20px;
    line-height: 32px;
	margin-bottom: 30px;
}

.site-footer .custom-logo {
	margin-bottom: 15px;
	filter: brightness(0) invert(1);
}

.site-footer a, .copyright-wrapper a:visited {
	color: white;
}

.site-footer a:hover {
	opacity: 0.8;
}

.site-footer .address {
    margin-bottom: 30px;
    text-align: center;
    margin-top: 4px;
}

.site-footer .follow-us {
	width: 100%;
}

.site-footer .social-wrapper {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    row-gap: 10px;
}

.site-footer .social-wrapper i {
	font-size: 20px;
}

.site-footer .icon-wrapper {
    display: flex;
    column-gap: 30px;
}

#footer-menu a:after {
    content: "\f061";
    font-family: FontAwesome;
    position: absolute;
    right: 0;
    bottom: 25%;
}

#footer-menu a {
    font-size: 20px;
    line-height: 32px;
    position: relative;
    border-bottom: 1px solid white;
    padding: 0 0 15px;
    margin-bottom: 15px;
}

#footer-menu .menu-item {
	width: 100%;
}

.site-footer a:visited {
	color: white;
}

.copyright-wrapper {
    padding: 10px 20px;
    text-align: center;
    background-color: black;
    color: white;
	font-size: 13px;
	line-height: 16px;
}

.copyright-wrapper a {
	color: white;
}

.btn-two:visited {
	color: white;
}

a:visited {
    color: var(--color1);
}

.btn, .hero-section .form-wrapper .wpcf7-submit {
    background-color: var(--color1);
    border: 2px solid var(--color1);
    color: white;
    padding: .3rem 1rem;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 18px;
    font-weight: 600;
    display: inline-block;
    border-radius: 40px;
}

.btn:hover, .hero-section .form-wrapper .wpcf7-submit:hover {
    background-color: transparent;
    color: var(--color1);
}

.hero-section .btn:visited {
	color: white;
}

.btn-two {
    background-color: var(--color1);
    border: 2px solid var(--color1);
    color: white;
    padding: .3rem 1rem;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 400;
    display: inline-block;
	margin-left: 5px;
	margin-right: 5px;
	border-radius: 40px;
}

.btn-two:hover {
	color: var(--color1);
	background-color: transparent;
}

.btn-orange {
    background-color: var(--color4);
    border: 2px solid var(--color4);
    color: white;
    padding: .3rem 1rem;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 400;
    display: inline-block;
	margin-left: 5px;
	margin-right: 5px;
	text-align: center;
}

.btn-orange:hover {
	color: var(--color4);
	background-color: transparent;
}


.overline {
    font-size: 16px;
    line-height: 18px;
    margin-bottom: 10px;
}

.hidden {
	display: none !important;
}

.scroll-top {
    position: fixed;
    bottom: 0;
    right: 20px;
    width: 50px;
    height: 50px;
    background-color: var(--color1);
    opacity: 0.8;
    color: white !important;
    font-size: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.scroll-top:hover {
	cursor: pointer;
	opacity: 0.6;
}

@media only screen and (min-width: 1024px) {
	.hide-desktop {
		display: none !important;
	}
}

@media only screen and (max-width: 1023px) {
	.top-navi .contact-wrapper {
		text-align: center;
	}
	#site-navigation {
    	display: flex;
    	justify-content: center;
    	flex-direction: row-reverse;
	}
	.site-branding, .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, p, .site-footer .address, .site-footer .phone, .site-footer .email, .site-footer .follow-us  {
    	text-align: center;
	}
	.site-footer .custom-logo-link {
		display: block;
		text-align: center;
	}
	.site-footer .icon-wrapper {
		margin-left: auto;
		margin-right: auto;
	}
	.hide-tablet {
		display: none !important;
	}
}

@media only screen and (max-width: 767px) {
	.btn {
		width: 100%;
	}
	.hide-mobile {
		display: none !important;
	}
	.top-navi .contact-wrapper {
    	color: white;
    	font-size: 10px;
    	line-height: 18px;
    	text-align: center;
	}
}

@media only screen and (max-width: 379px) {
	#secondary-menu {
        display: none !important;
	}
}



/* hero section */
.hero-section {
    background-size: cover;
    background-position: center right 51%;
    padding-top: 40px;
    padding-bottom: 40px;
    display: flex;
    align-items: center;
    min-height: 600px;
	position: relative;
}

.hero-section h1, .hero-section .description {
	color: white;
	margin-bottom: 15px;
}

.vpop-wrapper {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    align-items: center;
    justify-content: center;
    background-color: #000000f0;
    height: 100vh;
    z-index: 10;
}

.close-button {
    right: 2rem;
    top: 3.5rem;
    font-size: 18px;
    padding: 10px;
    background-color: white;
}

.vpop-wrapper iframe {
	width: 800px;
	height: 452px;
	margin: 0 20px;
}

.vpop-wrapper {
	display: none;
}

.vpop-wrapper.active {
	display: flex;
}

.yt-play-wrapper {
    color: white;
    display: flex;
    align-items: center;
    row-gap: 20px;
    column-gap: 20px;
    margin-top: 20px;
    font-size: 16px;
    line-height: 18px;
}

.play-button:hover {
	cursor: pointer;
}

.hero-section .form-wrapper {
    background-color: #ffffffe0;
    padding: 40px 4%;
}

[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea {
	margin-bottom: 0;
}

.hero-section .form-wrapper h3 {
    font-weight: 800;
    color: var(--color1);
    text-align: center !important;
    font-family: var(--font1);
    font-size: 23px;
    line-height: 25px;
    margin-bottom: 0;
}

.hero-section .form-wrapper .description {
    text-align: center;
    color: black;
    font-size: 13px;
    line-height: 24px;
    font-weight: 500;
}

.hero-section .form-wrapper input::placeholder, .hero-section .form-wrapper textarea::placeholder {
	color: #676765;
	font-size: 14px;
}

.hero-section select {
	border: 0;
	color: #676765;
	font-size: 14px;	
}

.hero-section .form-wrapper p {
	font-size: 12px;
	line-height: 18px;
}

.wpcf7 form .wpcf7-response-output {
	font-size: 24px;
	line-height: 35px;
}

.hero-section .form-wrapper input, .hero-section .form-wrapper textarea {
    border: 0;
    padding: 0 10px;
}

.hero-section .checkbox input {
	margin-bottom: 0;
}

.hero-section.template-2 .content-wrapper {
	text-align: center;
}

.hero-section.template-2 {
    background-size: inherit;
    background-repeat: no-repeat;
	background-position: top;
}

.hero-section.template-2 .form-wrapper  {
	background-color: var(--color5);
}

@media only screen and (max-width: 1023px) {
	.hero-section h1, .hero-section .description {
		text-align: center;
	}
	.yt-play-wrapper {
    	justify-content: center;
	}
}

/* blurb section */
.blurb-section {
	padding-top: 80px;
	padding-bottom: 80px;
}

.blurb-section .blurb-item {
    display: flex;
    align-items: center;
    column-gap: 20px;
    border-bottom: 1px solid gainsboro;
    margin-bottom: 20px;
}

.blurb-section .blurb-item h4 {
    font-family: var(--font1);
    font-weight: 500;
    font-size: 20px;
    line-height: 22px;
}

.blurb-section .blurb-item i {
    font-size: 28px;
    line-height: 30px;
    color: black;
}

.blurb-section .blurb-item p {
	line-height: 24px;
}

.blurb-section.template-2 .blurb-item {
	align-items: flex-start;
}

.blurb-section.template-2 .blurb-item i {
	color: gainsboro;
    font-size: 50px;
}

.blurb-section .blurb-item h4 {
	color: black;
}

.blurb-section .blurb-heading {
    margin-bottom: 20px;
    border-bottom: 1px solid gainsboro;
    padding-bottom: 15px;
    font-size: 32px;
    line-height: 36px;
}

@media only screen and (max-width: 1023px) {
	.blurb-section .blurb-item {
		display: flex;
        flex-direction: column;
        padding: 15px;
	}
	.blurb-section .featured-image {
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	.blurb-section.template-2 .blurb-item i {
		display: none;
	}
	.blurb-section .btn-two {
		display: block;
    	margin-left: auto;
    	margin-right: auto;
    	width: fit-content;
	}
}

/* cta section */
.cta-section {
    min-height: 760px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center -100px;
    display: flex;
    align-items: flex-end;
    padding: 0 20px 0;
	position: relative;
}

.cta-section.template-1 h2 {
	text-align: center;
	font-size: 2.5em;
    line-height: 1.2;
	color: black;
}

.cta-section .wrapper .item-wrapper {
    padding: 80px 4%;
    background-color: var(--color3);
    text-align: center;
}

.cta-section .cta-button-wrapper .btn:first-child {
    background-color: var(--color1);
    color: white;
}

.cta-section .cta-button-wrapper .btn:first-child:hover {
	background-color: transparent;
	color: var(--color1);
}

.cta-section.template-2 {
    padding: 0;
    min-height: auto;
    padding-bottom: 80px;
}

.cta-section.template-2 .wrapper .item-wrapper {
    padding: 0;
    background-color: transparent;
}

.cta-section.template-2 .content-wrapper {
	padding-top: 120px;
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    text-align: left;
}

.cta-section.template-2 .wrapper .item-wrapper.rev {
	 flex-direction: row-reverse;
}

.overlay {
    background: linear-gradient(to right, #0000009e 30%, transparent 70%);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
}

.cta-section .wrapper {
	z-index: 2;
}

.cta-section .description {
	margin-bottom: 20px;
}

@media only screen and (max-width: 1023px) {
	.cta-section.template-2 .overline {
		width: 100%;
		text-align: center;
	}
	.cta-section.template-2 .content-wrapper {
		padding-top: 0;
	}
	.cta-section.template-2 .cta-button-wrapper {
    	width: 100%;
    	text-align: center;
	}
}


@media only screen and (max-width: 767px) {
	.cta-section h2 {
    	font-size: 1.8em !important;
	}
	.cta-section .btn {
		margin-bottom: 10px;
	}
	.cta-section .item a:last-child {
		margin-bottom: 0;
	}
}

/* book section */

.book-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 10px;
    row-gap: 10px;
}

.book-search-wrapper {
    margin: auto;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.book-search-wrapper select {
    margin-bottom: 0 !important;
    max-width: fit-content;
}

.book-search-wrapper .search-label {
    min-width: fit-content;
}

select:hover {
	cursor: pointer;
}

.book-item iframe {
	height: 530px;
}

.book-item iframe .book.featured {
	height: 100%;
}

.book-item {
    background-color: white;
    width: 100%;
    max-width: 220px;
    padding: 15px 10px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: column;
    row-gap: 10px;
}

.button-container {
	display: none !important;
}

.book-item .button {
    display: inline-block;
    width: 100%;
    text-align: center;
    margin-top: auto;
}

.book-item h6 {
    font-weight: 100;
    border-top: 1px solid gainsboro;
    padding-top: 5px;
    margin-top: 15px;
    margin-bottom: 15px;
}

.book-item h6 {
	width: 100%;
}

.books-section {
	padding-top: 80px;
	padding-bottom: 80px;
}

.books-section h2, .books-section .description {
	text-align: center;
}

.books-section .btn-two {
    text-align: center;
    margin: auto;
    display: block;
    width: fit-content;
}

.books-section h5 {
    font-family: 'Montserrat';
    font-size: 16px;
    line-height: 21px;
    font-weight: 600;
}

/* product section */
.product-section {
	padding-top: 80px;
	padding-bottom: 80px;
}

.product-section .btn-two {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    width: fit-content;
}

.product-section .featured-image {
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
    display: block;
	max-height: 270px;
}

.product-section .item {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-content: space-between;
    flex-direction: column;
	text-align: center;
}

.product-section .item.active {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #4b8d2be8;
    text-align: center;
    margin: auto;
    height: 100vh;
    width: 100%;
    z-index: 9;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: center;
    padding: 20px;
}

.product-section .item.active .btn-two {
	display: none;
}

.product-section .item.active .product-wrapper {
    max-width: 680px;
    background-color: white;
    padding: 40px 20px;
    border-radius: 20px;
}

.product-section .item.active .product-wrapper p {
	display: block !important;
	font-size: 14px;
    line-height: 18px;
}

.product-section .item.active .featured-image {
    max-width: 180px;
    width: auto;
}

h4, h2 {
    color: var(--color1);
    line-height: normal;
}

.product-section .item .closer {
	display: none;
}

.product-section .item.active .closer {
    display: block;
    text-align: center;
    margin: auto;
}

.product-section .item.clickable:hover {
	cursor: pointer;
}

.product-section.template-2 .product-wrapper .description p:first-child, .product-section.template-2 .product-wrapper .description p {
	display: block;
}

.product-section.template-2 .featured-image {
    margin-bottom: 0;
    z-index: 1;
    position: relative;
}

.product-section.template-2 .cont-wrp p {
	font-size: 14px; 
	line-height: 20px;
}

.product-section.template-2 .cont-wrp {
    background-color: white;
    padding: 20px;
    margin: -40px 20px 0;
    border-radius: 20px;
    position: relative;
    z-index: 2;
    height: 100%;
	box-shadow: 0 8px 20px 0px #b5b5b5;
}

.product-section.template-2 .item:not(.active) .product-wrapper {
	display: contents;
}

.product-section.template-2 .item.active .cont-wrp {
	height: auto;
}

@media only screen and (max-width: 1023px) {
	.product-section .btn-two {
    	margin-left: auto;
		margin-right: auto;
	}
	.product-section .item
}

.content-image-section .conclusion {
    font-family: var(--font3);
    color: var(--color1);
    font-size: 30px;
    line-height: 32px;
}

.content-image-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

.content-image-section .item {
    background-color: var(--color5);
    text-align: center;
    padding: 40px 30px;
    border-radius: 20px;
    z-index: 2;
    margin-top: 40px;
    margin-bottom: 40px;
}

.content-image-section h3 {
	color: var(--color1);
}

.content-image-section .image-wrapper {
    z-index: 1;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    padding: 0 10px;
}

.content-image-section .item-wrapper {
	position: relative;
}

.content-image-section .image-wrapper .feature-image {
    height: 100%;
    width: auto;
    border-radius: 20px;
}

.content-image-section p {
	font-size: 14px;
	line-height: 18px;
}

.content-image-section .item-wrapper.rev {
	flex-direction: row-reverse;
}

.content-image-section .rev .image-wrapper {
	left: 0;
}

.btn:visited {
	color: white;
}

@media only screen and (max-width: 1023px) {
	.content-image-section .image-wrapper {
        width: 100%;
        text-align: center;
        position: relative;
        overflow: hidden;
        padding: 0 10px;
    }
	.content-image-section .item-wrapper {
		flex-direction: column-reverse !important;
	}
	.content-image-section .item {
		margin-top: 20px;
	}
	.content-image-section {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}

/* affiliate section */

.affiliate-section {
	padding-top: 80px;
    padding-bottom: 80px;
}

.affiliate-section .affiliate-wrapper {
    display: flex;
    justify-content: space-between;
	column-gap: 40px;
	row-gap: 40px;
	flex-wrap: wrap;	
}

.affiliate-section .affiliate-image {
	height: 100px;
	width: auto;
}

.affiliate-section h2 {
	text-align: center !important;
}

@media only screen and (max-width: 1023px) {
	.affiliate-section .affiliate-wrapper {
        justify-content: center;
	}	
	.affiliate-section .affiliate-image {
		height: 65px;
		width: auto;
	}
}

/* faq section */
.faq-section {
	padding-top: 60px;
	padding-bottom: 60px;
	background-color: #efefef;
}

.faq-section .answer {
	display: none;
}

.faq-section .faq-item.active .answer {
	display: block;
}

.faq-section .faq-item .question {
    background-color: var(--color1);
    color: white;
    padding: 17px;
    font-size: 16px;
    line-height: 22px;
    border: 1px solid var(--color1);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.faq-section .faq-item .question h4 {
    color: white;
    font-family: var(--font1);
    font-size: 16px;
    line-height: 21px;
    font-weight: 600;
    margin: 0;
}

.faq-section .faq-item .answer {
    background-color: white;
    color: var(--color1);
    padding: 20px;
    font-size: 16px;
    line-height: 22px;
    border: 1px solid var(--color1);
}

.faq-section .faq-item .answer p {
	text-align: left;
}

.faq-section .faq-item .question .fa-angle-up  {
	display: none;	
}

.faq-section .faq-item.active .question .fa-angle-up {
	display: block;
}

.faq-section .faq-item.active .question .fa-angle-down {
	display: none;
}

.faq-section .faq-item .question:hover {
	cursor: pointer;
}

.faq-section h2 {
	text-align: center;
}

/* editor-section */
.editor-section {
	padding-top: 60px;
	padding-bottom: 60px;
}

h5 {
    font-family: var(--font1);
    color: var(--color1);
    font-size: 16px;
    line-height: 18px;
	margin-bottom: 5px;
}

/* title section */
.title-section {
    padding-top: 15px;
    padding-bottom: 15px;
}

.title-section h1, .title-section h2 {
	margin-bottom: 0;
}

/* single */
.single .entry-header {
    display: block;
    padding-top: 30px;
    padding-bottom: 30px;
}

.single .entry-content h3 {
	border-bottom: 1px solid gainsboro;
	color: var(--color1);
}

.single article h1 {
    font-size: 2em;
    line-height: 1.1;
    color: var(--color1);
}

.single article .entry-meta {
    font-size: 16px;
    line-height: 28px;
    width: 100%;
    background-color: var(--color1);
    color: white;
    padding: 5px 10px;
    border: 0;
}

.single article .entry-meta time, .single article .entry-meta a {
	color: white;
}

.single article .post-thumbnail {
    margin-top: 30px;
    height: 400px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.single article .post-thumbnail img {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single article td {
	width: auto;
}

.header-cell {
    background-color: var(--color1);
    color: white;
	border: solid 1px black;	
}

.single article td {
	border: solid 1px black;
}

.single article img {
	margin-bottom: 20px;
}

.page-id-607 .editor-section {
	padding-bottom: 0;
}

.page-id-607 .hero-section.template-2 .content-wrapper {
	display: none;
}

.page-id-607 .hero-section.template-2 {
	padding-top: 0;
}

.archive .post-thumbnail {
    height: 200px;
    display: block;
    position: relative;
    overflow: hidden;
	margin-bottom: 20px;
}

.archive .post-thumbnail img {
    width: auto;
    min-width: 100%;
    height: auto;
    min-height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

.archive article h3 {
	font-size: 24px;
	line-height: 30px;
	text-align: center !important;
}

.archive article h3 a {
	color: var(--color1);
}

.archive article .btn {
    width: fit-content;
	margin: auto;
}

.archive article .btn:hover {
	color: var(--color1);
}

.archive article .entry-content {
	margin-bottom: 20px;
	text-align: center;	
}


.archive article {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
    height: 100%;
    padding: 18px;
    background-color: #f7f7f7;
    border-radius: 15px;
}

.archive .posts-navigation {
    width: 100%;
    padding: 20px;
}

.hero-section .form-wrapper .wpcf7-submit {
    margin: auto;
    display: block;
    font-weight: 700;
    font-size: 20px;
    line-height: 22px;
    letter-spacing: 3px;
}

.wpcf7-spinner {
    display: none;
    background-color: var(--color1);
    opacity: 1;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0 auto;
    position: relative;
}

.hero-section .form-wrapper .submitting .wpcf7-submit {
	display: none;
}

.hero-section .form-wrapper .submitting .wpcf7-spinner {
	display: block;
}

@media only screen and (max-width: 1023px) {
	section {
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	}
}

#secondary-menu .sub-menu {
    display: flex;
    flex-direction: column;
    background-color: var(--color3);
	margin-top: 10px;
}

#secondary-menu .sub-menu li a {
    border-radius: 0;
    background-color: transparent;
    border: 0 !important;
    color: var(--color1);
    text-transform: capitalize;
}

#secondary-menu li:first-child a {
    border: 2px solid var(--color1);
    font-weight: bold;
}

#secondary-menu li > .sub-menu {
  display: none !important;
}

#secondary-menu li.open .sub-menu {
	display: block !important;
}

@media only screen and (max-width: 767px) {
	#secondary-menu li:first-child a {
		display: none;
	}
}

.hero-section .btn {
    border-color: var(--color1);
    background-color: var(--color1);
    border-radius: 40px;
    font-weight: 600;
    padding: 10px 20px;
	text-align: center;
}

.hero-section .wrapper {
	z-index: 2;
}

.slogan-text {
    text-align: center;
    font-size: 44px;
    line-height: 49px;
    font-family: var(--font3);
    color: white;
}

.carousel-prev, .carousel-next {
    border: 0;
    background: transparent;
    border-radius: 0;
    padding: 0;
    color: white;
    font-size: 40px;
    line-height: 20px;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: var(--color1);
    display: flex;
    width: 30px;
    height: 30px;
    justify-content: center;
}

.carousel-next {
	right: 0;
	left: unset;
}

.carousel-wrapper {
	position: relative; overflow: hidden;
}
.carousel-images {
	position: relative;
}
.carousel-image {
	display: none; width: 100%; height: auto;
}
.carousel-image.active {
	display: block;
}
.carousel-prev:hover, .carousel-next:hover {
	background: rgba(0,0,0,0.6);
	cursor: pointer;
}

#post-607 .hero-section {
    background-position: center top 23%;
}

#post-607 .hero-section .overlay {
	display: none;
}

.featured-image {
  width: 470px;
  height: 470px;
  object-fit: cover; /* crop/center while preserving aspect ratio */
  display: block;
  margin: 0 auto; /* optional: center the image */
}

@media (max-width: 768px) {
  .featured-image {
    width: 100%;    /* take full screen width */
    height: 250px;  /* fixed height */
  }
	.cta-section h2 {
		width: 100%;
		text-align: center;
	}
}


@media (max-width: 1023px) {
	.cta-section h2 {
		width: 100%;
		text-align: center;
	}
}

.cta-section .carousel-wrapper, .cta-section .featured-image {
    box-shadow: 0 0 20px 8px var(--color1);
}

.product-wrapper p {
	font-size: 15px;
}

.cta-section.align-middle {
	padding-top: 80px;
}

.cta-section.align-middle .content-wrapper {
	padding-top: 0;
}

.wpcf7-response-output {
	position: fixed !important;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	color: #333;
	border: 2px solid #0073aa;
	padding: 20px 50px 20px 20px;
	box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2);
	z-index: 9999;
	max-width: 90%;
	width: 400px;
	border-radius: 10px;
	text-align: center;
	display: none; /* hidden by default */
	font-size: 16px;
}

.wpcf7-response-output.active {
	display: block !important;
	animation: fadeIn 0.3s ease;
}

.wpcf7-popup-close {
	position: absolute;
	top: 8px;
	right: 12px;
	background: none;
	border: none;
	font-size: 18px;
	cursor: pointer;
	color: #333;
}

.wpcf7-popup-close:hover {
	color: #000;
}

@keyframes fadeIn {
	from { opacity: 0; transform: translate(-50%, -48%); }
	to { opacity: 1; transform: translate(-50%, -50%); }
}

.wpcf7 form .wpcf7-response-output {
	padding: 1em;
}

.wpcf7-response-output {
  position: relative;
  padding-right: 30px; /* space for the button */
}

.wpcf7-response-output::after {
  content: '×'; /* Unicode multiplication sign = "x" */
  position: absolute;
  top: 5px;
  right: 10px;
  font-size: 30px;
  cursor: default; /* just visual, not functional */
  color: var(--color1);
}

.wpcf7-response-output:hover::after {
  font-weight: bold;
}

.crs-btn a:hover {
	color: var(--color1) !important;
	background-color: white !important;
}

.page-id-607 .product-section .item {
	height: fit-content !important;
}

.page-id-607 .product-section .featured-image {
	max-height: 270px;
}

.page-id-607 .product-section.template-2 .cont-wrp {
	min-height: 330px;
}

.site-main.scrolled {
	margin-top: 162px;
}

a {
    color: var(--color1);
}

h1, h2, h3, h4 {
	font-weight: bold;
}

@media only screen and (max-width: 1023px) {
	.footer-text-area {
		text-align: center;
	}
	.page-id-607 .product-section.template-2 .cont-wrp {
   		min-height: auto !important;
	}
	.hero-section h1 {        
        padding: 20px;
        background-color: #000000a6;
        border-radius: 15px;
		font-size: 38px;
        line-height: 42px;
    }
	.sub-menu {
		list-style: none;
		margin: 0;
	}
	.sub-menu a {
        font-weight: 400 !important;
        font-style: italic;
    }
	.site-main.scrolled {
		margin-top: 113px;
	}
	.hero-section.template-1 {
		min-height: 270px;
	}
}

@media only screen and (max-width: 767px) {
	h1, h2, h3, h4, p {
		text-align: left !important;		
	}
	ul, ol {
    	margin: 20px;
	}
	.single article .post-thumbnail {
    	height: 270px !important;
	}
	.product-section a {
		text-align: left !important;
	}
	.archive .title-section h1 {
		text-align: center !important;
	}
	.nav-previous, .nav-next, .entry-footer {
		font-size: 12px;
		line-height: 14px;
		margin-bottom: 20px;
	}
	.single article .entry-meta {
    	font-size: 12px;
    	line-height: 18px;
	}
	.hero-section.template-2 {
    	background-size: cover;
	}
	.hero-section h1 {
		text-align: center !important;
	}
	.slogan-text {
		text-align: left;
	}
}