/*
Theme Name: Most Eco Friendly
Theme URI: https://hulmastudio.com
Author: Hulma Studio
Author URI: https://hulmastudio.com
Description: Theme for Most Eco Friendly website
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mef
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
 a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/* Base root font size (for rem scaling) */
html {
    font-size: 16px; /* 1rem = 16px */
}

/* Global line height for readability */
body {
    font-family: 'RocGrotesk';
    line-height: 1.6;
	color: #012B1D;
}

img {
	width: 100%;
	height: auto;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
	font-family: 'BentonSans', sans-serif;
	text-transform: uppercase;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 0.5em;
}

h1 {
    font-size: 3.5rem; 
    line-height: 1.2;
}

h2 {
    font-size: 2.5rem;    /* 32px */
    line-height: 1.25;
}

h3 {
    font-size: 2rem; /* 28px */
    line-height: 1.3;
}

h4 {
    font-size: 1.5rem;  /* 24px */
    line-height: 1.35;
}

h5 {
    font-size: 1.25rem; /* 20px */
    line-height: 1.4;
}

h6 {
    font-size: 1rem;    /* 16px */
    line-height: 1.5;
}

.font-m {
	font-size: 16px;
	line-height: 22px;
}

.font-bold {
	font-family: 'RocGrotesk-Bold';
}

.color-beige {
	color: #fff0ec;
}

@media (min-width: 768px) {		
	.font-m {
		font-size: 20px;
		line-height: 26px;
	}	
}


/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}
@media (min-width: 1400px) {
	.container {
		width: 960px;
		margin: 0 auto;
	}
}

.navbar-brand {
	max-width: 200px;

}
@media (min-width: 1024px) {
	.navbar-brand {
		max-width: none;
	}
}

.bg-pink {
	background-color: #FFEFEB;
}
.bg-pink-darker {
	background-color: #f9aee7;
}
.bg-orange {
	background-color: #f39b97;
}
.bg-green {
	background-color: #00f99f;
}
.bg-yellow {
	background-color: #d7e88e;
}
.border-bottom-black {
	border-bottom: 1px solid #161616;
}

/* Buttons */
.button {
	padding: 8px 30px;
	border-radius: 14px;
	font-family: 'BentonSans';
	text-decoration: none;
	text-transform: uppercase;
	color: #161616;
}
.button-green {
	background: #00F99F;
}
input[type="submit"] {
    background: #00462c;
    color: #fff;
    padding: 15px 35px;
    border-radius: 20px;
    font-size: 18px;
    line-height: 1;
    font-family: 'BentonSans', sans-serif;
    letter-spacing: 1px;
    text-transform: uppercase;
}

/* Helper classes */
.section-spacer {
	padding: 30px 0;
}

@media (min-width: 768px) {		
	.section-spacer {
		padding: 50px 0;
	}
}
.pt-30 {
	padding-top: 30px!important;
}
.pt-60 {
	padding-top: 60px!important;
}
.pb-0 {
	padding-bottom: 0;
}
.pb-30 {
	padding-bottom: 30px;
}
.pb-60 {
	padding-bottom: 60px;
}
.mt-30 {
	margin-top: 30px;
}
.mt-40 {
	margin-top: 40px;
}
.mt-60 {
	margin-top: 60px;
}
.mb-20 {
	margin-bottom: 20px;
}
.mb-30 {
	margin-bottom: 30px;
}
.mb-40 {
	margin-bottom: 40px;
}
.color-white {
	color: #fff;
}
.text-left {
	text-align: left;
}
.text-black {
	color: #282223;
}
.text-bold {
    font-family: 'RocGrotesk-Bold';
}
.bg-bright-green {
	background: #00f89e;
}

/* Fonts */
@font-face {
    font-family: 'BentonSans';
    src: url('./assets/fonts/bentonsanscomp-black.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'RocGrotesk-Bold';
    src: url('./assets/fonts/rocgrotesk-bold.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'RocGrotesk-Medium';
    src: url('./assets/fonts/rocgrotesk-medium.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'RocGrotesk';
    src: url('./assets/fonts/rocgrotesk-regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
.heading {
	font-family: 'BentonSans', sans-serif;
}

strong {
	font-family: 'RocGrotesk-Bold';
}

/* Menu */
#main-menu > ul > li a {
	font-family: 'RocGrotesk', sans-serif;
}
#main-menu > ul > li.current-menu-item a {
	font-family: 'RocGrotesk-Medium', sans-serif;
}

.review-title {
	text-transform: uppercase;
	font-size: 2rem; 
	line-height: 1.1;
	color: #00462D;
	padding-top: 60px;
	padding-bottom: 20px;
}

@media (min-width: 768px) {		
	.review-title {
		font-size: 4.4rem; 
		line-height: 1.2;
	}
}

.single-product .short-title {	
	display: inline-block;
    font-family: 'RocGrotesk';
    font-size: 1.2rem; 
	font-weight: 400;
    line-height: 1.3;
	text-transform: none;
	color: #D4EF70;
	background: #00462D;
	border-radius: 14px;
	padding: 5px 14px;
}
@media (min-width: 768px) {	
	.single-product .short-title {	
		font-size: 1.7rem; 
		line-height: 1.2;
	}
}

.hero-container {
	background-color: #FFEFEB;
}
.hero-inner {
	position: relative;
}
.hero-inner .orange-star,
.hero-inner .sun-smiling,
.hero-inner .pink-plant,
.hero-inner .pink-candies,
.hero-inner .yellow-ellipse-2,
.hero-inner .red-globe,
.hero-inner .green-pants,
.hero-inner .pink-heart,
.section.green-blob {
	position: absolute;
	background-size: cover;    
	display: flex;
	align-items: center;
	justify-content: center;
}
.hero-inner .sun-smiling {
	background-image: url(./assets/images/sun-smiling.svg);	
    top: -80px;
    left: 50%;
    margin-left: -50px;
    width: 100px;
    height: 100px;
}
.hero-inner .orange-star {
	background-image: url(./assets/images/orange-star.svg);
    top: -90px;
    left: 10px;
    width: 84px;
    height: 79px;
}
.hero-inner .pink-plant {
	background-image: url(./assets/images/pink-plant.svg);
    top: -90px;
    right: 0;
    width: 74px;
    height: 59px;
}
.hero-inner .red-globe {
	background-image: url(./assets/images/red-globe.svg);
    top: 0px;
    right: 30px;
    width: 74px;
    height: 74px;
}
.hero-inner .green-pants {
	background-image: url(./assets/images/green-pants.svg);
	bottom: -70px;
    left: 50%;
    margin-left: -70px;
    width: 90px;
    height: 83px;
}
.hero-inner .pink-heart {
	background-image: url(./assets/images/pink-heart.svg);
    bottom: -100px;
    left: 174px;
    width: 84px;
    height: 74px;
}
.be-part-of-solution .pink-candies {
	background-image: url(./assets/images/pink-candies.svg);
    bottom: -310px;
    right: 0;
    width: 134px;
    height: 550px;
    background-repeat: no-repeat;
    position: absolute;
}

.be-part-of-solution .yellow-ellipse-2 {
	background-image: url(./assets/images/yellow-ellipse-2.svg);
    bottom: -610px;
    left: -370px;
    width: 584px;
    height: 754px;
    background-repeat: no-repeat;
    position: absolute;
}

.section.green-blob {
	background-image: url(./assets/images/green-blob.svg);
	background-repeat: no-repeat;
}

.section.green-blob.right {
	top: -130px;
    right: 0;
    width: 394px;
    height: 494px;
}

.section.yellow-ellipse-2 {
	background-image: url(./assets/images/yellow-ellipse-2.svg);
	top: 30px;
    left: -574px;
    width: 814px;
    height: 1224px;
    background-repeat: no-repeat;
    position: absolute;
}

.single-product .product-thumbnail {
	position: relative;
	margin: 20px auto 0;
}
.single-product .product-thumbnail img {
	margin-bottom: -80px;
	width: auto;
	max-width: 420px;
}

.single-product .brand-title {
    text-transform: uppercase;
    font-family: 'BentonSans';
    font-size: 2.5rem;
    margin-bottom: 10px;
    line-height: 1.1;
    color: #00462D;
}

.single-product .overview {
	background-color: white;
}
.single-product .hero-container {
	position: relative;
	background-image: url(./assets/images/bg-pattern-01.svg);
    background-repeat: no-repeat;
    background-position: center 210px;
    background-size: 1300px 750px;
    display: block;
	z-index: 1;
}
.single-product .hero-container:after {
	content: '';
}
.single-product .hero-caption {
	background: #00462D;
	position: absolute;
	bottom: 30px;
	left: 20px;
	min-width: 280px;
	height: auto;
	color: #fff;
	padding: 40px;
	border-radius: 15px;
	font-size: 14px;
	line-height: 19px;
	max-width: 307px;
}
.single-product .hero-caption p {
	color: #d9d9d9;
}
.single-product .hero-caption p strong {
	color: #fff;
}
section.overview {
	position: relative;
    padding-top: 160px;
}
section.overview h2,
section.overview h3,
section.overview p {
	text-align: center;
}
section.overview h2 {
	margin-bottom: 30px;
}
section.overview h3 {
    font-family: 'RocGrotesk';
	text-transform: none;
	border-bottom: 1px solid #00462D; 	
	color: #00462D;
	font-size: 1.3rem; 
	line-height: 1.1;
	font-weight: 400;
	padding-bottom: 15px;
}
section.overview p {	
    text-transform: uppercase;
    font-family: 'BentonSans';
	font-size: 2rem; 
	line-height: 1.1;
}

section.overview p .small {	
	font-size: 2.4rem; 
	line-height: 1.1;
	
}

@media (min-width: 768px) {	
	section.overview p {
		font-size: 4.4rem; 
		line-height: 1.2;
	}
}

.overview-row {
	margin-bottom: 40px;
}

.single-product .score-cloud {
	position: absolute;
    top: 0;
    right: 80px;
	width: 220px;
	height: 220px;
	background-image: url(./assets/images/score-bg.svg);
	background-size: cover;    
	display: flex;
	align-items: center;
	justify-content: center;
}

.single-product .score-cloud .overall-score {
}
.single-product .score-cloud .score {
    font-family: 'BentonSans';
	font-size: 2rem; 
	line-height: 1.1;
}

@media (min-width: 768px) {	
	.single-product .score-cloud .score {
		font-size: 4.6rem; 
		line-height: 1.2;
	}
}
.single-product .score-cloud .out-of {
    font-family: 'BentonSans';
	font-size: 2rem; 
	line-height: 1.1;
}
.single-product .score-cloud .text {
	display: block;
    font-family: 'RocGrotesk-Bold';
	font-size: 0.9rem; 
	line-height: 1.1;
}
.single-product .left-icons,
.single-product .right-icons {
	display: none;
	position: absolute;
}
.single-product .left-icons {
	top: -80px;
	left: -100px;
}
.single-product .left-icons div {
	width: 190px;
	height: 190px;
	background-image: url(./assets/images/plant-pants.svg);
	background-repeat: no-repeat;
}
.single-product .right-icons {
	top: -80px;
	right: -100px;
}
.single-product .right-icons div {
	width: 90px;
	height: 90px;
	background-image: url(./assets/images/globe.svg);
	background-repeat: no-repeat;
}


@media (min-width: 768px) {	
	.single-product .right-icons,
	.single-product .left-icons {
		display: block;
	}

.score-breakdown-section {
	background: #fff0eb;
	padding: 40px 0;
}}

@media (min-width: 768px) {	
	.score-breakdown-section {
		padding: 60px 0;
	}
}

/* Score list */
.score-list {
	list-style: none;
	column-count: 2;
	margin: 0;
	padding: 0;
}

.score-list li {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid;
	padding: 6px 0;

	font-size: 16px;
	line-height: 22px;
}
@media (min-width: 768px) {		
	.score-list li {
		font-size: 19px;
		line-height: 24px;
		margin-bottom: 10px;
	}
}
.score-list-value {
	font-family: 'BentonSans', sans-serif;
}

.site-footer {
	background-color: #012b1d;
	color: #f5ebe9;
	margin-top: 0;
}
.site-footer ul li a {
	color: #f5ebe9;
    padding-bottom: 5px;
    display: block;
}
.site-footer a i.bi {
	background: #fff;
    color: #012b1d;
    padding: 5px 5px 2px;
    border-radius: 6px;
}
.site-footer .footer-logo img {
	max-width: 100%;
    width: 410px;
	margin-top: 30px;
}

.homepage-hero {
	background-image: url(./assets/images/hero-hp-bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 480px;
	display: flex;
	align-items: center;	
}

.single-comparison .hero-container h1 {
	font-size: 2.5rem;
	line-height: 3.2rem;
}
.single-comparison .hero-inner .sun-smiling {
	bottom: -20px;
    top: auto;
    left: 30px;
    margin-left: -10px;
}
.single-comparison .hero-inner .pink-heart {
    bottom: -20%;
    top: auto;
    right: 70px;
    left: auto;
    margin-right: -10px;
}
.single-comparison .hero-inner .red-globe {
    bottom: 50%;
    top: auto;
    right: 0;
    left: auto;
    margin-bottom: -40px;
    margin-right: -30px;
}
@media (min-width: 768px) {	
	.single-comparison .hero-container h1 {
		font-size: 5.5rem;
		line-height: 5.2rem;
	}
}
.single-comparison .hero-container {
	padding: 30px 0;
}

@media (min-width: 1500px) {	
	.homepage-hero {
    	background-position-y: 110px;
	}
}

@media (min-width: 1900px) {	
	.homepage-hero {
    	background-position-y: 80px;
	}
}
.homepage-hero h1 {
	text-transform: uppercase;
	color: #032f1f;
	font-size: 32px;
	line-height: 37px;
}
@media (min-width: 768px) {
	.homepage-hero h1 {
		font-size: 74px;
		line-height: 68px;
	}
}

section.intro-set {
	padding: 70px 0;
}

section.intro-set-sm {
	padding: 50px 0;
	min-height: 100px;
}

.intro-text-paragraph {
	max-width: 710px;
    margin: 0 auto;
}

.intro-set p {
	text-align: center;
	font-size: 18px;
    line-height: 24px;
}

@media (min-width: 768px) {
	.intro-set p {
		text-align: center;
		font-size: 22px;
		line-height: 30px;
	}	
}

.intro-set {
		background-image: url(./assets/images/intro-bg.png);
		background-repeat: no-repeat;
		background-size: cover;
		min-height: 480px;
		display: flex;
		align-items: center;	
		background-position-y: 330px;
}

.browse-by-category {
	background-color: #00462c;
	padding: 80px 0;

}

.green-bg {
	background-color: #00462c;
}

.browse-by-category h2 { 
	color: white;
}

.cat-card.bg-green {
	background-color: #00f99f;
}
.cat-card.bg-pink {
	background-color: #faafe8;
}
.cat-card.bg-orange {
	background-color: #f39b98;
}
.cat-card.bg-yellow {
	background-color: #d3ed6e;
}
.cat-card .card-meta {
	text-align: center;
	padding: 25px 20px;
}

.cat-card .card-meta > div {
	line-height: 1.3;
}
.be-part-of-solution {
	background-color: #feefea;
	padding: 60px 0;
}

.be-part-of-solution h2 {	
}
.be-part-of-solution p {
	font-size: 22px;
	line-height: 30px;
	color: #012b1d;
}

.be-part-of-solution a {
	color: #012b1d;
	display: block;
	text-decoration: none;
	font-size: 22px;
	line-height: 26px;
}
h2.big-text {
	font-size: 22px;
	line-height: 30px;
	color: #012b1d;
}

@media (min-width: 768px) {
	h2.big-text {
		font-size: 72px;
		line-height: 70px;	
	}
}
.community-reviews-carousel {
	margin: 0;
}
.key-point-row {
	display: flex; 
	flex-wrap: wrap; 
	margin-bottom: 0;
}

.key-point-row.mb-30 {
	margin-bottom: 30px;
}
.key-point-image {
	flex: 1; 
	text-align: center;
}
.key-point-text {
	flex: 1; 
	display: flex; 
	flex-direction: column; 
	align-items: center; 
	justify-content: center; 
	text-align: center;
}
.key-point-text.text-left {
	align-items: start;
}
.key-point-row h3 {
	font-size: 2.5rem;
	line-height: 3rem;
}

.key-point-row .desc {
	font-size: 0.6rem;
	line-height: 1rem;
}
.key-point-text {
	padding: 30px;
}
.recommended-carousel .owl-item .carousel-slide img {
    max-width: 260px;
    margin: 0 auto;
}
@media (min-width: 768px) {
	.key-point-row h3 {
		font-size: 3.5rem;
		line-height: 4rem;
	}
	.key-point-row .desc {
		font-size: 1rem;
		line-height: 1.2rem;
	}
	.key-point-text {
		padding: 40px;
		flex: 0 0 50%;
	}
	.key-point-image {
		flex: 0 0 50%;		
	}
}

/* Optional: To ensure the modal image fits properly */
#modalImage {
    max-width: 100%;
    height: auto;
}
.featured-similar-products {
	margin-bottom: 10px;
}
.featured-product {
	margin-bottom: 40px;
}
.featured-product .brand {
	font-family: 'RocGrotesk-Bold';
	margin: 0;
	font-size: 1.4rem;
}
.featured-product .product-main-img {
	padding: 20px 30px;
}
.featured-product .price {
	font-size: 2rem;
	line-height: 2.2rem;
}
.featured-product .overall-score {
    font-size: 2.5rem;
    line-height: 1;
    font-family: 'BentonSans';
	margin-bottom: 10px;
}
.featured-product h2 {
	font-family: 'RocGrotesk';
    font-size: 1.8rem;
    text-transform: none;
}
.featured-product h2 a {
    text-decoration: none;
    color: #00462c;
    background: #ddf27d;
    padding: 0.4rem 0.7rem;
    font-family: 'RocGrotesk';
    border-radius: 15px;
    line-height: 1;
}
.featured-product .gallery-images {
	margin-top: 3px;
}
.featured-product .gallery-thumbnail {
	cursor: pointer;
	width: 100%;
    height: 80px;
    background-size: cover;
}
.featured-product .btn-primary {
	background: #00f99f;
	color: #00462c;	
	font-family: 'BentonSans', sans-serif;
	border: 0;
	text-transform: uppercase;
	padding: 10px 40px;
}
.featured-product .hero-caption p {
	line-height: 1.4;
}
.similar-products .product-item {
	margin-bottom: 20px;
}
.similar-products .product-item img {
    max-width: 310px;
	margin: 0 auto;
	display: block;
}
.similar-products .product-details {
	display: flex;
	width: 100%;
    padding: 30px 40px 0;
}
.similar-products .overall-score {
    font-size: 2rem;
    font-family: 'BentonSans';
	display: flex;
	justify-content: end;
}
.similar-products .overall-score .score {
    font-size: 3.5rem;
    font-family: 'BentonSans';
}
.product-details .product-details-inner, .product-details .overall-score {
    flex: 0 0 50%;
}
.product-item {
	padding-top: 40px;
}
.product-item .product-details-buttons {
	padding: 0 40px 40px;
}
.product-main-img {
	margin-bottom: 3px;
}
.product-main-img img {
    max-width: 300px;
    margin: 0 auto;
    display: block;
}
.product-item .product-details-buttons a {
    background: transparent;
    color: #00462c;
    font-family: 'BentonSans';
    border-color: #022b1d;
    text-transform: uppercase;
}
@media (min-width: 768px) {
	.featured-product .product-main-img {
		padding: 30px 50px;
	}
	.featured-product .overall-score .score {
		font-size: 4.5rem;
		line-height: 1;
	}
}

.single-post-sidebar ul.recent-posts-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.single-post-sidebar ul.recent-posts-list li a {
    color: #00462c;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid;
    text-decoration: none;
    display: block;
}

.about-us-page .hero-container {
	overflow: hidden;
}
.about-us-page .hero-container h1 {
	color: #00462c;
	font-size: 2.5rem;
    line-height: 3.2rem;
	margin-bottom: 0;
	padding: 30px 0 40px;
}
.main-h1 {
	font-size: 2.5rem;
    line-height: 3.2rem;
}

.cover-bg-02 {
	background-image: url(./assets/images/cover-bg-02.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	height: 500px;
}
.intro-set-about .intro-text-paragraph {
	font-size: 1.2rem;
	line-height: 1.1;
}
@media (min-width: 768px) {
	.about-us-page .hero-container {
	}
	.intro-set-about .intro-text-paragraph {
		font-size: 1.5rem;
    	line-height: 1.2;
		max-width: 650px;
	}

	.cover-bg-02 {
		height: 550px;
	}

	.about-us-page .hero-container h1 {
        font-size: 5.5rem;
        line-height: 5.2rem;
		padding: 100px 0;
    }

	.main-h1 {
		font-size: 5.5rem;
		line-height: 5.2rem;
	}

	.about-us-page .hero-container .hero-inner .sun-smiling {
		bottom: 20px;
		top: auto;
		right: 110px;
		left: auto;
		width: 120px;
		height: 120px;
	}
	.about-us-page .hero-container .hero-inner .pink-plant {
		top: 50%;
		right: 0;
		margin-top: -115px;
		width: 104px;
		height: 89px;
	}
	.about-us-page .hero-container .hero-inner .orange-star {
		top: 50%;
		margin-top: -45px;
		left: 60px;
		width: 104px;
		height: 97px;
	}
}


/* ======================
# Mobile > 767
=========================*/

@media (max-width: 767px){
	.homepage-hero{
		background-position: 45% 100%;
		min-height: 500px;
	}
}