/*
Theme Name: Grens
Theme URI: 
Description: Divi child theme
Author: Nicole Peters
Author URI: 
Template: Divi
*/

:root {	
	--white: #FFFFFF;
	--beige: #C4BFB6;
	--light-grey: #D9D9D6;
	--medium-grey: #63666A;
	--black: #000000;
	--olive-green: #4E5B31; 
	/*--bright-green: #A4D65E;
	* --brown: 63513D; */
}

/* Skip Content Button
******************************************/
a.skip-main-content {
    left: -999px;
    position: absolute;
    top: auto;
   /* opacity: 0;*/
   /* width: 1px;
	height: 1px;*/
    overflow: hidden;
    margin: 10px 35%;
    padding: 1em 2em;
    text-align: center;
	border-radius: 5px 5px;
    z-index: -999;
	color: var(--black);
	background-color: var(--light-grey); }

a.skip-main-content:focus-visible, a.skip-main-content:active {
	left: 5%; 
	width: auto;
	height: auto;
	top: 0;
	z-index: 9999;
	opacity: 1; 
	margin-left: 0; }

/* Focus States
******************************************/
a:focus-visible, .et_pb_gallery_image a:focus-visible, .et_search_icon:focus-visible, .et_pb_toggle_item:focus-visible, span#et_search_icon:focus-within, .income-calculator-wrapper button:focus-visible, footer a:not(.footer-email):focus-visible, button#main-nav-search-button:focus-visible:after, #hamburger-menu-container:focus-visible {
    outline: 2px solid var(--black); }

a.site-button-white:focus-visible, body a.et_pb_button.site-button-white:focus-visible, span.mobile-toggle:focus-visible:after, a.footer-email:focus-visible {
	background-color: var(--white); 
	color: var(--black);
	outline: none; }

/* Fonts
******************************************/
html {
	font-size: 100%; }

body, p, .footer-toggle-item h2.quick-links, .source-sans, .search-results-wrapper article h2, .et_pb_toggle .et_pb_toggle_title, .project-info .project-title, h3.product-category, h2.project-products-heading, .project-info .project-title, .mw1680 h2.small-heading, .mw1680 h2.project-products-heading, .mw1680 h2.project-title, .mw1680 h2.source-sans-light { 
	font-family: source-sans-3, sans-serif; }

.et_pb_text h1:not(.source-sans-light), .et_pb_text h2:not(.source-sans-light), .et_pb_text_inner h1:not(.source-sans-light), .et_pb_text_inner h2:not(.source-sans-light), h1.template-h1, .et_pb_heading_container h1:not(.source-sans-light), .et_pb_fullwidth_header_container .header-content-container .header-content .et_pb_module_header, .et_pb_post_title div h1, .mw1680 h2, h2.no-projects-title {
	font-family: ivyjournal, sans-serif; }

.mw1680 h2.project-products-heading, .mw1680 h2.project-title, body, p, .et_pb_text h1:not(.source-sans-light), .et_pb_text h2:not(.source-sans-light), .et_pb_text_inner h1:not(.source-sans-light), .et_pb_text_inner h2:not(.source-sans-light), h1.template-h1, .et_pb_heading_container h1:not(.source-sans-light), .contact-info-wrapper .contact-email a, .et_pb_fullwidth_header_container .header-content-container .header-content .et_pb_module_header, .et_pb_post_title div h1, .mw1680 h2, h2.no-projects-title, h3.product-category { 
	font-weight: 400; /*regular*/
	font-style: normal; }

.footer-button, a.footer-google-map:after, body a.et_pb_button, .et_pb_posts a.more-link, input.wpcf7-form-control[type="submit"], h2.testimonial-name, .et_pb_toggle .et_pb_toggle_title, ul.page-breadcrumbs li.current-breadcrumb-page, .mw1680 h3:not(.product-category), .project-info .project-title, .project-button, .projects-filter-wrapper button, .projects-filter-wrapper select, #projects-container .pagination .current, h2.project-products-heading, .project-info a h2.project-title, .footer-toggle-item h2.quick-links, .tax-product-type #page-wrapper main .mw1680 a.secondary-button, .products-list-wrapper article a .col-content h2, a.template-button, .pagination div a, .et_pb_text_inner a, .resource-list-wrapper .resource-list li a h2, .resource-list-wrapper .resource-list li a .download-file::after {
	font-weight: 600; /*semi-bold*/
	font-style: normal; }

#site-primary-menu li .sub-menu li a, .source-sans-light, .contact-info-wrapper *, .mw1680 h2.source-sans-light, .single-product-options-grid p {
	font-weight: 300; /*light*/
	font-style: normal; }

.et_pb_text_inner h3 {
	font-size: 1.5rem;
	line-height: 2rem; }

.product-technical-details.et_pb_module div h3 {
	font-size: 1.5rem !important;
	line-height: 2rem !important; }

.footer-address p, .footer-google-map, .footer-tel, .footer-email, .footer-socials h2.small-heading, .footer-button, .product-technical-details.et_pb_module ul li, .product-technical-details.et_pb_module p, .et_pb_column.single-product-options-grid h3, .resource-list li a .download-file, .testimonial-content p, .testimonial-content * {
	font-size: 1.25rem;
	line-height: 1.75rem; }

#main-nav-search-button:after, #projects-container .pagination span, #projects-container .pagination a {
	font-size: 1.25rem;
	line-height: 1.25rem; }

.projects-filter-wrapper button, .projects-filter-wrapper select, h3.product-category, .single-product-options-grid p {
	font-size: 1rem;
	line-height: 1.25rem; }

#main-nav-search-button.opened-search-form:after {
	font-size: 2rem; }

.small-text {
    font-size: 1rem;
	line-height: 1.25rem; }

.letter-space-1, .product-item h3.product-category, .project-slider-item figcaption p {
    letter-spacing: 1px; }

.footer-privacy *, ul.page-breadcrumbs li {
	font-size: 0.875rem;
	line-height: 1.375rem; }

ul#site-primary-menu {
	line-height: normal; }

.footer-button, .et_pb_posts a.more-link, input.wpcf7-form-control[type="submit"], input.wpcf7-form-control[type="submit"]:hover, ul.page-breadcrumbs li, .project-button, h3.product-category, h2.project-products-heading, a.template-button, .project-slider-item figcaption p, .resource-list-wrapper .resource-list li a .download-file {
	text-transform: uppercase; }

.slide-text, .center-text, h2.project-products-heading, ul.project-product-list .product-item, .product-item-group {
	text-align: center; }

.grens-svg { 
	text-align: right; }

.et_button_no_icon.et_button_left a.et_pb_button:hover, .et_button_no_icon a.et_pb_button:hover, .footer-button:hover, .is-search-submit:hover, #hamburger-menu-container:hover, button#main-nav-search-button:hover, input.wpcf7-form-control[type="submit"]:hover, span.wpcf7-form-control-wrap select:hover, .wpcf7 input[type="file"]:hover, .project-info > a:hover, .project-button:hover, .projects-filter-wrapper button:hover, .projects-filter-wrapper select:hover {
  	cursor: pointer; }

.pagination .page-numbers li {
	list-style: none; }

.product-technical-details ul li, .resource-list-wrapper .resource-list li {
	list-style-type: none; }

.template-cta-wrapper div h2:not(.project-products-heading) {
	padding-bottom: 10px; }

li.product-item h3.product-category {
	padding-bottom: 1rem; }

.resource-list li a h2 {
	padding-bottom: 0.5rem; }

/* Colours
******************************************/
body a.et_pb_button.site-button-white:hover { 
	color: var(--black) !important; }

a.site-button-white:hover, .project-slider-item figcaption a.site-button-white:hover { 
	color: var(--black); }

#menu-footer-menu li a:hover, .footer-tel:hover, .footer-google-map:hover, .footer-privacy p a:hover, #main-nav-search-button.opened-search-form:after, #site-primary-menu li span:hover:after, #site-primary-menu > li .sub-menu li a:hover, #site-primary-menu > li:not(.dt-open) > a:hover, body.home .animation-container.fixed #main-nav-search-button:hover:after {
	color: var(--beige); }

.olive-green-bg, #menu-footer-menu li a, .light-grey, .footer-col a, ul#site-primary-menu li a, .olive-bg *, body:not(.home) button#main-nav-search-button:after, #site-primary-menu li span:after, #site-primary-menu li .sub-menu li a, .olive-bg.et_pb_section .et_pb_text_inner h1, .olive-bg.et_pb_section .et_pb_text_inner h2, .olive-bg.et_pb_section .et_pb_text_inner h3, .olive-bg.et_pb_section .et_pb_heading_container h1, input.wpcf7-form-control[type="submit"], .olive-green-bg h2, .animation-container.fixed button#main-nav-search-button:after, .animation-container.main-nav-wrapper button#main-nav-search-button:after  {
	color: var(--light-grey); }

.white, .slide-text p, #product-right-arrow:hover, #product-left-arrow:hover, .top-utility, a.site-button-white, body a.et_pb_button.site-button-white, .et_pb_posts a.more-link:hover, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_two:hover, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_one, .project-info > a:hover .project-button, .projects-filter-wrapper button:not(#clear-filter), .projects-filter-wrapper select:hover, .project-slider-item figcaption h2, .project-slider-item figcaption a.site-button-white, .project-slider-item figcaption p, .light-grey-bg div a.template-button:hover,

body.home .animation-container:not(.fixed) button#main-nav-search-button:after { 
	color: var(--white); }

body, .et_pb_text_inner h2, .et_pb_text_inner h3, .et_pb_text_inner h1, .footer-socials ul li a, .footer-socials ul li a:hover, h1.template-h1, .et_pb_heading_container h1, .et_pb_heading_container h2, .et_pb_heading_container h3, .search-results-wrapper article h2, .et_pb_posts a.more-link, a.footer-email.footer-button:hover, .contact-info-wrapper a, input.wpcf7-form-control[type="submit"]:hover, h2.testimonial-name, .carousel-prev, .carousel-next, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_two, .et_pb_toggle .et_pb_toggle_title, .et_pb_post_title div h1, ul.page-breadcrumbs li a, .mw1680 h3, .project-info .project-title, .project-button, .project-excerpt, .projects-filter-wrapper button:not(#clear-filter):hover, .projects-filter-wrapper button#clear-filter, .projects-filter-wrapper select, #projects-container .pagination a, #projects-container .pagination .current, h2.no-projects-title, h2.project-products-heading, ul.project-product-list .product-item a, .et_pb_toggle_content a, .products-list-wrapper article a .col-content h2, .tax-product-type #page-wrapper main .mw1680 h2, .light-grey-bg div a.template-button, .pagination div a, .et_pb_toggle .et_pb_toggle_title:before, .et_pb_text_inner a, .resource-list-wrapper .resource-list li a h2, .resource-list-wrapper .resource-list li a .download-file {
	color: var(--olive-green); }

.et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_one:hover, .search-results-wrapper article .post-content div p {
	color: var(--olive-green) !important; }

/* Dark green */
p.w-button a { 
	color: #3d4a2d; }

.footer-socials ul li a:hover {
	background-color: var(--beige); }

.et-social-icon .icon, body:not(.home) span.hamburger-line:before, body:not(.home) span.hamburger-line:after, a.footer-email:hover, .light-grey-bg, 
body.home .animation-container.fixed span.hamburger-line:before, body.home .animation-container.fixed span.hamburger-line:after {
	background-color: var(--light-grey); }

body.home .animation-container:not(.fixed) span.hamburger-line:before, body.home .animation-container:not(.fixed) span.hamburger-line:after {
	background-color: var(--white); }

body.home .animation-container:not(.fixed) .hamburger-line:not(.opened-menu) {
	border-top: 2px solid var(--white); }

.animation-container.fixed #hamburger-menu-container:hover .hamburger-line:not(.opened-menu), .animation-container.main-nav-wrapper #hamburger-menu-container:hover .hamburger-line:not(.opened-menu) {
	border-top: 2px solid var(--beige); }

div.light-grey-bg.et_pb_section {
	background-color: var(--light-grey) !important; }

.et_pb_social_media_follow li a:hover:before, p.w-button, #product-right-arrow, #product-left-arrow, .is-form-style input.is-search-submit, .is-search-icon, .footer-search form, form.is-search-form.is-form-style-3 button .is-search-icon:hover, .footer-search form button .is-search-icon:hover, .footer-search form.is-form-style input.is-search-submit:hover, form.is-search-form.is-form-style-3, form.is-form-style-3 input.is-search-submit:hover, a.site-button-white:hover, body a.et_pb_button.site-button-white:hover, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_two, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_one:hover, .project-slider-item figcaption a.site-button-white:hover, .bg-white, .project-slider .slick-dots li.slick-active button, .project-slider .slick-dots li button:hover {
	 background-color: var(--white); }

body div.et_pb_section.bg-white {
	background-color: var(--white) !important; }

.product-technical-details div h3:before,

body.home .animation-container.fixed #hamburger-menu-container:hover .hamburger-line:before, body.home .animation-container.fixed #hamburger-menu-container:hover .hamburger-line:after, .animation-container.main-nav-wrapper #hamburger-menu-container:hover .hamburger-line:before, .animation-container.main-nav-wrapper #hamburger-menu-container:hover .hamburger-line:after {
	background-color: var(--beige); }

/* Green */
.olive-bg, .menu-main-navigation-container, ul#site-primary-menu, #product-right-arrow:hover, #product-left-arrow:hover,  .et_pb_posts a.more-link:hover, input.wpcf7-form-control[type="submit"], .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_two:hover, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button.et_pb_button_one, .project-info > a:hover .project-button, .projects-filter-wrapper button:not(#clear-filter), .projects-filter-wrapper select:hover, .light-grey-bg div a.template-button:hover, .slick-dots li.slick-active button, .slick-dots li button:hover {
	background-color: var(--olive-green); }

body .olive-bg.et_pb_section, body .olive-bg.et_pb_row {
	background-color: var(--olive-green) !important; }

.black-bg {
	background-color: var(--black); }

.dark-green { 
	background: #3d4a2d; }

#hamburger-menu-container, button#main-nav-search-button, body a.et_pb_button.site-button-white, span.wpcf7-form-control-wrap input, span.wpcf7-form-control-wrap textarea, span.wpcf7-form-control-wrap select, input.wpcf7-form-control[type="submit"]:hover, .carousel-prev, .carousel-next, .projects-filter-wrapper button:not(#clear-filter):hover, .projects-filter-wrapper select, button#clear-filter, .project-content-wrapper button {
	background-color: transparent; }

.is-form-style .is-search-submit path, form button .is-search-icon path {
	fill: var(--beige); }

.is-form-style .is-search-submit:hover path, form button .is-search-icon:hover path {
	fill: var(--olive-green); }

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	border-color: var(--olive-green); }

.is-search-submit .is-search-icon, button#main-nav-search-button, span.wpcf7-form-control-wrap input:not([type="file"]), input.wpcf7-form-control[type="submit"], input.wpcf7-form-control[type="submit"]:hover, .carousel-prev, .carousel-next, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button, .et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content a.et_pb_button:hover, button#clear-filter, #projects-container .pagination ul li a.next.page-numbers, #projects-container .pagination ul li a.prev.page-numbers {
	border: none; }

form.is-search-form.is-form-style-3 label input.is-search-input {
	border: none !important; }

a.site-button-white:hover {
	border-color: var(--white); }

/*#hamburger-menu-container:hover .hamburger-line:not(.opened-menu) {
	border-color: var(--beige); }*/

body.home .animation-container:not(.fixed) #hamburger-menu-container:hover .hamburger-line:before, body.home .animation-container:not(.fixed) #hamburger-menu-container:hover .hamburger-line:after, body.home .animation-container:not(.fixed) #main-nav-search-button:hover:after {
	opacity: 0.8; }

body.home .animation-container:not(.fixed) #hamburger-menu-container:hover .hamburger-line:not(.opened-menu) {
	border-color: rgba(255, 255, 255, 0.8) !important; }

a.footer-email:hover, a.footer-email.footer-button {
	border-color: var(--light-grey); }

.wpcf7 form.sent .wpcf7-response-output {
	border-color: var(--olive-green); }

.footer-button, a.site-button-white, body a.et_pb_button.site-button-white {
	border: 1px solid; }

.project-slider-item figcaption a.site-button-white, .project-slider .slick-dots li button {
	border: 1px solid var(--white); }

span.wpcf7-form-control-wrap textarea, span.wpcf7-form-control-wrap select, label.upload-file-label .wpcf7-form-control-wrap, .light-grey-bg div a.template-button, .slick-dots li button {
	border: 1px solid var(--olive-green); }

.et_pb_posts a.more-link, input.wpcf7-form-control[type="submit"], input.wpcf7-form-control[type="submit"]:hover, .project-button, .projects-filter-wrapper button:not(#clear-filter), .projects-filter-wrapper select {
	border: 1px solid var(--olive-green); }

#site-primary-menu li.current-menu-item > a, .search-results-wrapper article, span.wpcf7-form-control-wrap input:not([type="file"]), #projects-container  .pagination .current {
	border-bottom: 1px solid; }

.et-social-icon .icon, .slick-dots li button {
	border-radius: 50% 50%; }

span.wpcf7-form-control-wrap select {
	border-radius: 0 0; }

.projects-filter-wrapper button:not(#clear-filter), .projects-filter-wrapper select {
	border-radius: 25px 25px; }

#site-primary-menu > li:not(.dt-open).link-opacity > a, #site-primary-menu > li:not(.dt-open).link-opacity > .mobile-toggle:after {
	opacity: 0.5; }

#clear-filter:hover {
	opacity: 0.8; }

#site-primary-menu > li:not(.dt-open).link-opacity > a:hover, #site-primary-menu > li:not(.dt-open).link-opacity > .mobile-toggle:hover:after {
	opacity: 1; }

p.w-button { 
	padding: 0.7em 1.5em!important;
	border-radius: 5px;
	margin-top: 10px;
	width: fit-content; }

/* Global
******************************************/ 
.et_pb_column.single-product-options-grid {
	display: -ms-grid;
	display: grid; 
	gap: 2rem 3rem; }

span.wpcf7-form-control-wrap select, .projects-filter-wrapper select {
	-webkit-appearance: none;
	-moz-appearance: none;
    appearance: none; }

.flex-wrapper, .top-utility, .form-row-wrapper.form-row-flex, .project-items-wrapper, #projects-container .pagination > ul {
	display: -webkit-box;
  	display: -ms-flexbox;  
  	display: -webkit-flex;
	display: flex; }

#projects-container .pagination > ul {
	justify-content: center;
	align-items: center; }

footer > .flex-wrapper, .form-row-wrapper.form-row-flex, .project-items-wrapper {
	flex-wrap: wrap; }

.form-row-wrapper.form-row-flex {
	gap: 2rem; }

#projects-container .pagination > ul {
	gap: 0.75rem; }

.main-nav-search-form-wrapper, .menu-main-navigation-container > ul, #site-primary-menu .menu-item-has-children .sub-menu, button.hide-clear-filter {
	display: none; }

.footer-logo-wrapper.footer-col a, #grens-product-carousel, ul#site-primary-menu li, .project-info > a, .slide-image .slide-text p.product-excerpt  {
	display: block; }

.footer-google-map, .footer-button, ul#site-primary-menu li a, .et_pb_posts a.more-link, ul.page-breadcrumbs li, .project-button, .pagination .page-numbers li, .product-category-icon, .project-slider-item figcaption a, .tax-product-type #page-wrapper main .mw1680 .secondary-button, .products-list-wrapper article a .col-content .secondary-button, a.template-button, .resource-list-wrapper .resource-list li a, .resource-list-wrapper .resource-list li a .download-file {
	display: inline-block; }

body.search #page-wrapper .post-content a.more-link {
	display: inline-block !important; }

.breadcrumbs-wrapper {
	z-index: 3; }

#grens-product-carousel, .footer-wrapper, .top-utility, .products-list-wrapper article a .col-feat-img, .project-featured-image, .products-list-wrapper article a .col-feat-img, .breadcrumbs-wrapper {
	position: relative; }

ul#site-primary-menu {
	position: fixed; }

#hamburger-menu-container, .hamburger-line, .et-social-icon .icon:before, .slide-text, .product-technical-details div h3:before {
	position: absolute; }
	
.project-featured-image img, .overlay-feat-img, .products-list-wrapper article a .col-feat-img img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0; }

.product-technical-details div h3:before {
	top: 8px;
	left: 0; }
		
.project-featured-image img, .products-list-wrapper article a .col-feat-img img {
	-o-object-fit: cover; 
	object-fit: cover; 
	object-position: center; }

.et-social-icon .icon:before, .slide-text {
    left: 0;
    right: 0;
    top: 50%;
	-webkit-transform: translateY(-50%); 
	-ms-transform: translateY(-50%); 
    transform: translateY(-50%); }

.products-list-wrapper article a .col-feat-img img, .slide-image.full, ul#site-primary-menu, .footer-logo-wrapper .footer-logo svg, .hamburger-line, .w100 {
	width: 100%; }

.et_pb_fullwidth_header .et_pb_fullwidth_header_container, .flex-wrapper.footer-wrapper.mw1680 {
	width: 90%; }

.mw1680, .et_pb_fullwidth_header .et_pb_fullwidth_header_container {
	max-width: 1680px; }

.flex-wrapper.footer-wrapper.mw1680 {
	max-width: 100%; }

.mw1200, .mw1200.et_pb_section, .mw1200.et_pb_row {
	max-width: 1200px; }

.mw1000, .et_pb_row.mw1000 {
	max-width: 1000px; }

 .et_pb_fullwidth_header .et_pb_fullwidth_header_container, .mw1680, .mw1200, .mw1200.et_pb_section, .mw1200.et_pb_row, .slide-image .slide-text p.product-excerpt {
	margin: 0 auto; }

.w100 {
	min-width: 100%; }

.slide-image, .et_pb_section section.et_pb_fullwidth_header .et_pb_fullwidth_header_container, .project-featured-image img, .overlay-feat-img, .products-list-wrapper article a .col-feat-img img {
	height: 100%; }

.footer-logo-wrapper .footer-logo svg {
	height: auto; }

.footer-search form label input.is-search-input {
	height: unset; }

span.mobile-toggle:hover, .carousel-prev:hover, .carousel-next:hover {
	cursor: pointer; }

.et_pb_text .et_pb_text_inner ul, .et_pb_text .et_pb_text_inner ol, .et_pb_toggle_content ul, .et_pb_toggle_content ol {
	padding-top: 1rem; }

body div#page-wrapper {
	overflow-x: hidden !important; /* need for testimonial carousel */ }

.parallax-image-wrapper, .project-info > a .project-featured-image, .products-list-wrapper article a .col-feat-img {
	overflow: hidden; }

.mw1680 h2 {
	padding-bottom: 10px; }

#projects-container .pagination {
	padding: 4rem 0 0 0; }

ul.page-numbers {
    margin: 0 0; }

ul.page-numbers, .product-technical-details.et_pb_module div ul li, .resource-list-wrapper .resource-list {
	padding: 0 0; } 

.product-technical-details.et_pb_module div ul, .product-technical-details.et_pb_module div p {
	padding:0 0 0 30px !important; }

/* Breadcrumbs */
ul.page-breadcrumbs {
    padding: 0.5rem 0; 
	line-height: 0; }

/* Divi Toggle modules 
******************************************/
.et_pb_toggle {
    padding: 0 0 1em 0; }

.et_pb_toggle .et_pb_toggle_title:before {
	font-size: 24px; }

/* Z-index
******************************************/
.top-utility, ul#site-primary-menu {
	z-index: 90; }

#hamburger-menu-container, .animation-container.main-nav-wrapper .logo, #animationContainer.fixed .logo {
	z-index: 91; }

/* Search form 
******************************************/
.footer-search form label input.is-search-input {
	padding: 0.75rem 0.75rem; }

.main-nav-search-form-wrapper {
    width: 300px; 
    margin-right: 0;
	transition: all 500ms ease; }

button#main-nav-search-button:not(.opened-search-form), .main-nav-search-form-wrapper {
	margin-left: auto; }

.main-nav-search-form-wrapper.show-search {
	display: block;
	animation: scale-display .5s; }

/* Search page */
.search-results-wrapper article {
	padding-bottom: 4rem; }

/* Animations
******************************************/
#menu-footer-menu li a, .footer-tel, .footer-email, .footer-google-map, .footer-privacy p a , ul.et_pb_social_media_follow li a:before, .et-social-icon .icon, .is-form-style .is-search-submit path, form button .is-search-icon path, .et_pb_posts a.more-link, input.wpcf7-form-control[type="submit"], .project-button, .tax-product-type #page-wrapper main .mw1680 a.secondary-button, a.template-button { 
	transition: color 500ms ease, background-color 500ms ease; }

#site-primary-menu li a,  #site-primary-menu li span:after {
	transition: color 500ms ease, opacity 500ms ease; }

button#main-nav-search-button:after {
	transition: opacity 500ms ease, color 500ms ease; }

#clear-filter {
	transition: opacity 500ms ease; }

#hamburger-menu-container .hamburger-line, #hamburger-menu-container .hamburger-line:after, #hamburger-menu-container .hamburger-line:before, span.is-search-icon svg path, .project-info > a .project-featured-image img, .projects-filter-wrapper select, .projects-filter-wrapper button:not(#clear-filter), .products-list-wrapper article a .col-feat-img img, .slick-dots li button,  .resource-list-wrapper .resource-list li a:hover .download-file {
	transition: all 500ms ease; }

 @keyframes scale-display {
	0% {
    	opacity: 0;
		-webkit-transform: translateY(-20px);
		-ms-transform: translateY(-20px);
    	transform: translateY(-20px); 
    	transform-origin: top;
  	}
	100% {
    	opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
    	transform: translateY(0);
    	transform-origin: top;
  	}
}

@keyframes scale-display--reversed {
	0% {
    	display: inline-flex;
    	opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0); 
    	transform: translateY(0); /* Start at normal size */
    	transform-origin: top;
  	}
 	 99% {
    	display: inline-flex;
    	opacity: 0;
		-webkit-transform: translateY(-20px);
		-ms-transform: translateY(-20px);
    	transform: translateY(-20px); /* Slide up and scale down */
    	transform-origin: top;
  	}
  	100% {
    	display: none;
    	opacity: 0;
		-webkit-transform: translateY(-20px); 
		-ms-transform: translateY(-20px);
    	transform: translateY(-20px); /* Ensure it's hidden */
    	transform-origin: top;
  	}
}

.resource-list li a:hover .download-file:after {
  -moz-animation: bounce 2s 1;
  -webkit-animation: bounce 2s 1;
  animation: bounce 2s 1; }

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
	-webkit-transform: translateY(-4px);
	-ms-transform: translateY(-4px);
    transform: translateY(-4px);
  }
  60% {
	-webkit-transform: translateY(-2px);
	-ms-transform: translateY(-2px);
    transform: translateY(-2px);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
	-webkit-transform: translateY(0);
	-ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
	-webkit-transform: translateY(-4px);
	-ms-transform: translateY(-4px);
    transform: translateY(-4px);
  }
  60% {
	-webkit-transform: translateY(-2px);
	-ms-transform: translateY(-2px);
    transform: translateY(-2px);
  }
}

.et_pb_toggle_content a, .et_pb_text_inner a, ul.page-breadcrumbs li a, ul.project-product-list .product-item a, .contact-info-wrapper p a, .pagination div a {
	transition: all 0.4s ease;
    background-image: linear-gradient(90deg, #4e5c3c, #4e5c3c);
    background-position: 0 bottom;
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 0 bottom;
    background-repeat: no-repeat;
    background-size: 0 1px; }

.et_pb_toggle_content a:hover, .et_pb_text_inner a:hover, ul.page-breadcrumbs li a:hover, ul.project-product-list .product-item a:hover, .contact-info-wrapper p a:hover, .pagination div a:hover {
    text-decoration: none;
    background-size: 100% 1px; }

/*@keyframes scale-display--reversed {
  0% {
    display: inline-flex;
    opacity: 1;
    transform: scaleY(1);
    transform-origin: top; 
  99% {
    display: inline-flex;
    opacity: 0;
    transform: scaleY(0);
    transform-origin: top;
  }
  100% {
    display: none;
    opacity: 0;
    transform: scaleY(0);
    transform-origin: top; 
  }
}*/

.project-info > a:hover .project-featured-image img, .products-list-wrapper article a:hover .col-feat-img img {
	-webkit-transform: scale(1.15); 
	-ms-transform: scale(1.15);
	transform: scale(1.15); } 

/* Icons
******************************************/
.product-technical-details div h3:before {
	content: ""; }

a.footer-google-map:after, button#main-nav-search-button:after, span.mobile-toggle:after, span.file-upload-icon:before, .resource-list-wrapper .resource-list li a .download-file:after {
    font-family: 'ETmodules'; }

#main-nav-search-button:after {
	content: "\55"; } /* magnify glass icon */

#main-nav-search-button.opened-search-form:after {
	content: "\4d"; }/* x icon */

span.mobile-toggle:after {
	content: '\4c'; }  /* plus icon */

.dt-open span.mobile-toggle:after {
	content: '\4b'; } /* minus icon */

a.footer-google-map:after {
    content: "\26"; } /* arrow right angled up icon */

.resource-list-wrapper .resource-list li a .download-file:after {
	content: "\22"; } /* arrow down icon */

.resource-list li a .download-file {
	position: relative; 
	padding-right: 20px; }

.resource-list li a .download-file:after {
	position: absolute;
	right: 0; }

a.footer-google-map:after {
    margin-left: 4px;
    font-size: 0.9rem;
    line-height: 0.9rem; }

.et-social-icon .icon {
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1.5rem; }

/* Sassy social share plugin - icons */
.heateor_sss_sharing_ul a .heateor_sss_svg  {
	transition: background-color 500ms ease; }

/* Buttons
******************************************/
.et_button_no_icon.et_button_icon_visible.et_button_left a.et_pb_button, .et_button_no_icon.et_button_left a.et_pb_button:hover, .et_button_no_icon a.et_pb_button, .et_button_no_icon a.et_pb_button:hover, .project-button, .projects-filter-wrapper button:not(#clear-filter), .projects-filter-wrapper select {
    padding: 0.5rem 1.25rem!important; }

.footer-button, .et_pb_posts a.more-link, input.wpcf7-form-control[type="submit"], input.wpcf7-form-control[type="submit"]:hover, .tax-product-type #page-wrapper main .mw1680 .secondary-button, .products-list-wrapper article a .col-content .secondary-button, a.template-button {
    padding: 0.5rem 1.25rem; }

/*Slick Carousel
******************************************/
button.slick-next.slick-arrow {
	display: none !important; }

.slick-dots {
	position: relative !important; }

.slick-dots li {
	margin: 0 10px; }

.slick-dots li button:before {
	font-size: 15px;
	background-color: transparent; 
	color: transparent;
	border: 1px solid var(--olive-green);
	border-radius: 50% 50%; 
	opacity: 1; }

.slick-dots li.slick-active button:before {
	color: var(--olive-green);
	background-color: var(--olive-green); 
	opacity: 1; }

/* Homepage - projects slick carousel 
******************************************/
div.project-slider.slick-slider.slick-dotted {
	margin-bottom: 0; }

div.project-slider.slick-slider ul.slick-dots {
	position: absolute !important;
	bottom: 2rem; 
	padding: 0 0; }

.project-slider .slick-dots li button:before  {
	border-color: var(--white); }

.project-slider .slick-dots li.slick-active button:before {
	color: var(--white);
	background-color: var(--white); }

/* Carousel
******************************************/
div.full-width-carousel div.et_pb_code { 
	margin-bottom: 0!important; }

#grens-product-carousel {
  /*Set the product carousel container to fullscreen*/
  width: 100vw;
  /*Prevent product images from wrapping */
  white-space: nowrap; 
  overflow: hidden; }

.slide-image {
	background-position: center;
	background-size: cover;
  	display: inline-block;
  	overflow: hidden; 
	transition: background-color 500ms ease-in-out; 
	/* Need this to allow slide text to position absolute - bottom of image */
	position: relative; 
    background-color: rgba(0,0,0,0.45);
    background-blend-mode: overlay; }

.slide-image:hover {
	background-color: rgba(0,0,0,0.6); 
	transition: background-color 500ms ease-in-out; }

.slide-text {
	white-space: normal;  }

.slide-text p { 
	padding-bottom: 20px!important; }

.product-slide-arrow {
    max-width: 1600px;
    position: absolute;
    top: 0;
    cursor: pointer;
    z-index: 90;
    margin: auto;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: right; }

#product-right-arrow, #product-left-arrow, .et_button_no_icon a.et_pb_button:hover { 
	transition: background 500ms ease, color 500ms ease; }

#product-right-arrow, #product-left-arrow {
    display: inline-block;
    padding: 5px 15px; }

span#product-left-arrow:before, span#product-right-arrow:before {
    font-family: 'ETmodules';
    font-size: 35px;
	position: relative;
	top: 5px; }

span#product-left-arrow:before { 
	content: "\34"; }

span#product-right-arrow:before { 
	content: "\35"; }

/* Project Slick Carousel 
******************************************/
.project-slider-item, .project-slider-item figure {
	position: relative; }

.project-slider-item figure {
    padding-top: 90vh;
	height: 90vh;
	overflow: hidden; }

.project-slider-item figure img {
    width: 100%;
	height: 100%;
	-o-object-fit: cover;
    object-fit: cover;
    object-position: center;
    position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0; }

.project-slider-item figcaption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 100;
    right: 0; }

/* Projects 
******************************************/
.projects-filter-wrapper select {
    background: no-repeat;
    background-image: url('/wp-content/themes/Grens/Images/down-chevron.svg');
    background-size: 18px;
   	background-position: center right 1em;
    padding-right: 3.5em !important; }

.projects-filter-wrapper select:hover {
	background-image: url('/wp-content/themes/Grens/Images/down-chevron-white.svg'); }

#projects-container .pagination a.prev.page-numbers, #projects-container .pagination a.next.page-numbers  {
    background-image: url(/wp-content/themes/Grens/Images/down-chevron.svg);
    background-size: 20px;
    width: 20px;
    height: 20px;
    display: inline-block;
    background-repeat: no-repeat; }

#projects-container .pagination a.prev.page-numbers {
	-webkit-transform: rotate(90deg); 
	-ms-transform: rotate(90deg);
    transform: rotate(90deg);
    margin-left: 10px;
    background-position: center left; }

#projects-container .pagination a.next.page-numbers  {
	-webkit-transform: rotate(-90deg); 
	-ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    margin-right: 10px;
    background-position: center right; }

.project-featured-image {
	padding-top: 50%;
	margin-bottom: 1rem; }
	
.project-info a:hover .project-featured-image .overlay-feat-img, .products-list-wrapper article a:hover .overlay-feat-img {
    background-color: rgba(0, 0, 0, 0.3); }
	
.project-featured-image .overlay-feat-img {
	transition: background-color 500ms ease; }

/* Product Category icon display on single Project page */
.product-category-icon {
    padding-bottom: 0.5rem; }

/* Single Product page 
******************************************/
.slide-image .slide-text p.product-excerpt {
	max-width: 600px; 
	margin-bottom: 2rem; }

.product-technical-details div h3 {
	padding-left: 30px; 
	padding-bottom: 0.25rem !important; }

.product-technical-details div h3:before {
	width: 15px;
	height: 15px; }

.product-technical-details-container div .product-technical-details {
	margin-bottom: 1.5rem !important; }

/* Contact page - contact shortcode
******************************************/
.contact-address {
	padding-bottom: 2rem; }

p.contact-tel {
    padding-bottom: 0; }

/* Contact Form 7 - forms
******************************************/
.form-row-wrapper:not(:last-of-type) {
    margin-bottom: 2rem; }

.form-row-wrapper.form-row-flex .form-col {
	width: calc(50% - 1rem); }

.form-col label, .form-col label * {
    width: 100%;
    display: inline-block; }

span.wpcf7-form-control-wrap {
    margin-top: 0.5rem; }

span.wpcf7-form-control-wrap input:not([type="file"]) {
	padding: 0.5rem 0 0.5rem 0.5rem; }

span.wpcf7-form-control-wrap select, span.wpcf7-form-control-wrap textarea {
	padding: 0.5rem 0.5rem; }

span.wpcf7-form-control-wrap select {
    background-position: center right 20px;
    background-size: 1rem;
    background-repeat: no-repeat;
    background-image: url('/wp-content/themes/Grens/Images/down-chevron.svg'); }

span.wpcf7-form-control-wrap input:not([type="file"]) {
	padding-left: 0; }

label.upload-file-label .wpcf7-form-control-wrap {
	padding: 1rem; }

/*input.wpcf7-form-control.wpcf7-file {
	visibility: hidden;
	padding: 1em 1em 2em 1em;
	text-transform: uppercase;
    font-weight: 600; }

input.wpcf7-form-control.wpcf7-file:before {
    content: "Attach file";
    position: absolute;
    left: 0;
    padding: 0.5em 1em;
    border: 1px solid var(--olive-green);
    text-align: center;
    cursor: pointer;
    visibility: visible;
    display: inline-block; } */


/* Home top banner
******************************************/
.et_pb_section.et_pb_section_0_tb_header.et_section_regular {
    display: none!important; }

div.banner-shape { 
	width:100%;
	max-width: 100%;
	padding-top: 0; }

div.g-shape {
    height: auto;
    position: absolute;
    right: 0;
    top: 0;	}

div.full-banner {     
    min-height: 620px; 
	padding-top: 0px!important; }

div.banner-shape div.et_pb_column div.et_pb_text { 
	padding-top: 20px; }

/* Homepage Product Carousel 
******************************************/		
span.slide-text h3, .search-results-wrapper article div .post-content-inner {
	padding-bottom: 2rem; }

/* Main Navigation Menu
******************************************/
body.no-scroll {
	overflow-y: hidden !important; }

#hamburger-menu-container {
	width: 44px;
	height: 44px;
	border: none;
	left: 5%;
	top: 1em; }

.hamburger-line {
    height: 2px;
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
    border-top: 2px solid var(--light-grey);
	-webkit-transform: translateY(-50%); 
	-ms-transform: translateY(-50%);
    transform: translateY(-50%); }

span.hamburger-line {
	display: block; }

span.hamburger-line:before, span.hamburger-line:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
    height: 2px;
    transition: transform 0.5s ease;
	width: 100%; }

span.hamburger-line:before {
	-webkit-transform: translateY(-12px); 
	-ms-transform: translateY(-12px); 
	transform: translateY(-12px); }

span.hamburger-line:after {
	-webkit-transform: translateY(8px);
	-ms-transform: translateY(8px); 
    transform: translateY(8px); }

span.hamburger-line.opened-menu {
	border-color: transparent; }
	
span.hamburger-line.opened-menu:before {
	-webkit-transform: rotate(50deg);
	-ms-transform: rotate(50deg); 
	transform: rotate(50deg); }
	
span.hamburger-line.opened-menu:after {
	-webkit-transform: rotate(-50deg);
	-ms-transform: rotate(-50deg); 
	transform: rotate(-50deg); }

nav#top-menu-nav {
	float: none; }

#site-primary-menu {
	overflow-y: scroll;
	overflow-x: hidden;
	height: 100%; }

/* Overflow main nav scrollbar 
******************************************/
#site-primary-menu::-webkit-scrollbar-track {
	background-color: var(--olive-green); }

#site-primary-menu::-webkit-scrollbar {
	width: 12px;
	background-color: var(--olive-green); }

#site-primary-menu::-webkit-scrollbar-thumb {
	border-radius: 10px;
	background-color: var(--light-grey); }

/* Search icon / form
******************************************/
.top-utility {
    padding-right: 5%;
    justify-content: center;
    align-items: center;
	height: 65px; 
	right: 0;
    top: 0; }

form.is-search-form.is-form-style-3, form.is-search-form.is-form-style-3 label input.is-search-input, form.is-search-form.is-form-style-3 .is-search-submit span {
	border-radius: /*20px 20px*/ 30px 30px; }

/* Footer 
******************************************/
.footer-wrapper {
    padding-top: 2rem; }

.footer-col .arrow-right {
    position: absolute;
    top: 0;
    right: 0; }

.footer-logo svg {
    max-width: 15rem; }

.footer-logo-secondary svg {
    max-width: 7rem; }

@media all and (min-width: 1601px) {
	/* Fonts
	******************************************/	
	.et_pb_text_inner h1:not(.large-font), .et_pb_text_inner h2:not(.large-font), h1.template-h1, .et_pb_heading_container h1:not(.large-font), .et_pb_fullwidth_header_container .header-content-container .header-content .et_pb_module_header, .et_pb_post_title div h1, .mw1680 h2, h2.no-projects-title, .project-slider-item figcaption h2 { 
		font-size: 3.125rem;
		line-height: 3.625rem; }
	
	.et_pb_toggle .et_pb_toggle_title, .mw1680 h3:not(.product-category), .project-info .project-title, .products-list-wrapper article a .col-content h2, .resource-list-wrapper .resource-list li a h2 {
		font-size: 1.875rem;
		line-height: 2.25rem; }
	
	html body, body p, .footer-button, .search-results-wrapper article .post-content div p, .et_pb_posts a.more-link, span.wpcf7-form-control-wrap input:not([type="file"]), span.wpcf7-form-control-wrap textarea, span.wpcf7-form-control-wrap select, input.wpcf7-form-control[type="submit"], h2.testimonial-name, .project-button, a.et_pb_button, h2.project-products-heading, .products-list-wrapper article > div.col-content .product-excerpt, a.template-button { 
		font-size: 1.5rem;
    	line-height: 2rem; }
	
	.search-results-wrapper .et_pb_row .et_pb_column article .post-content p {
		font-size: 1.5rem !important;
    	line-height: 2rem !important; }
	
	.project-slider-item figcaption p {
		font-size: 1.25rem;
		line-height: 1.625rem;
		padding-bottom: 2rem !important; }
	
	.large-font {
		font-size: 9rem;
		line-height: 10rem;	}
	
	span.slide-text h3 {
		font-size: 2.5rem;
		line-height: 3rem; }
	
	.et_pb_text .et_pb_text_inner ul, .et_pb_text .et_pb_text_inner ol, .et_pb_toggle_content ul, .et_pb_toggle_content ol {
		padding-top: 2rem; }
	
	.et_pb_text_inner ul li:not(:last-of-type), .et_pb_text_inner ol li:not(:last-of-type), .et_pb_toggle_content ul li:not(:last-of-type), .et_pb_toggle_content ol li:not(:last-of-type) {
		padding-bottom: 1.5rem; }
	
	/* Projects
	******************************************/		
	.project-content-wrapper {
		display: -webkit-box; 
		display: -ms-flexbox; 
		display: -webkit-flex;
		display: flex;
		gap: 4rem;
		justify-content: flex-start;
		align-items: flex-start; }
		
	.project-excerpt {
    	width: calc(100% - 320px); }
		
	.project-button {
		display: inline-block; }
}
@media all and (max-width: 1600px) {
	.et_pb_text_inner ul li:not(:last-of-type), .et_pb_text_inner ol li:not(:last-of-type), .et_pb_toggle_content ul li:not(:last-of-type), .et_pb_toggle_content ol li:not(:last-of-type) {
	padding-bottom: 0.75rem; }
	
	.project-slider-item figcaption p {
		font-size: 1rem;
		line-height: 1.25rem; 
		padding-bottom: 1rem !important; }
}
@media all and (max-width: 1600px) and (min-width: 768px) {
	.project-content-wrapper .project-excerpt {
		padding-right: 1.5rem; }
}
@media all and (max-width: 1600px) and (min-width: 981px) {
	/* Fonts
	******************************************/	
	.large-font {
		font-size: 6.5rem;
		line-height: 7rem; }
	
	.et_pb_text_inner h1:not(.large-font), .et_pb_text_inner h2:not(.large-font), h1.template-h1, .et_pb_heading_container h1:not(.large-font), .et_pb_fullwidth_header_container .header-content-container .header-content .et_pb_module_header, .et_pb_post_title div h1, .mw1680 h2, h2.no-projects-title, .project-slider-item figcaption h2 { 
		font-size: 2.75rem;
		line-height: 3.25rem; }
	
	.et_pb_toggle .et_pb_toggle_title, .mw1680 h3:not(.product-category), .project-info .project-title, .products-list-wrapper article a .col-content h2, .resource-list-wrapper .resource-list li a h2 {
		font-size: 1.5rem;
		line-height: 2rem; }
	
	html body, body p, .footer-button, .search-results-wrapper article .post-content div p, .et_pb_posts a.more-link, span.wpcf7-form-control-wrap input:not([type="file"]), span.wpcf7-form-control-wrap textarea, span.wpcf7-form-control-wrap select, input.wpcf7-form-control[type="submit"], h2.testimonial-name, .project-button, a.et_pb_button, h2.project-products-heading, .products-list-wrapper article > div.col-content .product-excerpt, a.template-button { 
		font-size: 1.25rem;
    	line-height: 1.75rem; }
	
	.search-results-wrapper .et_pb_row .et_pb_column article .post-content p {
		font-size: 1.25rem !important;
    	line-height: 1.75rem !important; }	
}
@media all and (min-width: 1201px) {
	.slide-image:not(.col-3) { 
		width: 25%; }
	
	.slide-image.col-3:not(.full) {
		width: 50%;	}
	
	p.product-slide-arrow:not(.show-on-desktop) { 
		display: none; }
}
@media all and (max-width: 1200px) and (min-width: 768px) {
	/* Homepage Product Carousel
	******************************************/		
	.slide-image { 
		width: /*33.33%*/ 50%; }
}
@media all and (min-width: 981px) {
	/* Fonts
	******************************************/	
	ul#site-primary-menu li a {
		font-size: 4.25rem;
		line-height: 4.75rem; }
	
	span.slide-text h3, .search-results-wrapper article h2 {
		font-size: 2rem;
		line-height: 2.5rem; }
	
	span.mobile-toggle:after {
		font-size: 40px; }
	
	.et_pb_fullwidth_header_container .header-content-container .header-content .et_pb_module_header {
		text-align: center;	}
	
	.template-cta-wrapper div h2 {
		margin-bottom: 2.75%; }
	
	/* Header 
	******************************************/	
	ul#site-primary-menu > li {
		width: 48%; }
	
	#site-primary-menu li .sub-menu {
		position: absolute;
		top: 10rem;
		right: 10%; 
		width: calc(48% - 10%); }
	
	#site-primary-menu li {
		padding-bottom: 2rem; }
	
	/* Global
	******************************************/		
	.footer-col.footer-utility, .project-product-list {
		display: -webkit-box;
		display: -ms-flexbox;  
		display: -webkit-flex;
		display: flex; }
	
	.project-product-list {
		flex-wrap: wrap; }
	
	.project-product-list {
		justify-content: center; }
	
	li.product-item-group {
		/*flex: calc(25% - 2rem);*/ 
		max-width: calc(25% - 4rem); }
	
	.footer-col.footer-utility {
		flex-direction: column;	}
	
	.et_pb_column.single-product-options-grid {
		grid-template-columns: 1fr 1fr 1fr; }
	
	.slide-image:hover .slide-text p { 
		display: block; }
	
	.slide-text p, span.breadcrumb-separator { 
		display: none; }	
	
	footer > .flex-wrapper {
		gap: 2rem; }
	
	.footer-logo-secondary, .footer-privacy {
		margin-top: auto; }	
	
	.full-banner { 	
		height: 73vh; }
	
	.full-banner .full-banner-text { 
    	position: absolute;
    	bottom: 15%;
		left: 10%; }
	
	div.banner-shape { 
		padding: 0 0 0 10%; }
	
	.section-extra-pad.et_pb_row {
		padding-left: 5rem; 
		padding-right: 5rem; }
	
	div.g-shape { 
		max-width: 150px; }
	
	#grens-product-carousel { 
		height: 700px; }
	
	.mw1680, .product-slide-arrow { 
		width: 80%; }

	.slide-text { 
		padding: 1rem 3rem; }
	
	ul#site-primary-menu {
    	padding: 10rem 10% 5rem 10%; }
	
	.mw1680:not(.breadcrumbs-wrapper):not(.footer-wrapper) {	
		padding: 6rem 0; }
	
	.project-slider-item figcaption a.site-button-white {
		margin-top: 2rem; }
	
	/* Breadcrumbs 
	******************************************/	
	ul.page-breadcrumbs li:not(:last-of-type) {
    	padding-right: 50px; }
	
	/* Full-width 2 col image section */
	.w100-2-col-img.et_pb_row .et_pb_column {
		margin-right: 1%; 
		width: 49.5%; }
	
	.w100-2-col-img.et_pb_row .et_pb_column .et_pb_image .et_pb_image_wrap, .w100-2-col-img.et_pb_row .et_pb_column .et_pb_image img {
		width: 100%; }
	
	/* Footer
	******************************************/		
	footer {
    	padding: 6rem 0; }
	
	.footer-col {
		width: calc(25% - 1.5rem); }
}
@media all and (max-width: 980px) { 	
	.et_pb_text_inner h1, h1.template-h1, .et_pb_heading_container h1, .et_pb_fullwidth_header_container .header-content-container .header-content .et_pb_module_header, .et_pb_post_title div h1 { 
		font-size: 2.5rem; 
		line-height: 3rem; }
	
	.et_pb_text_inner h2, .mw1680 h2, h2.no-projects-title, .project-slider-item figcaption h2 { 
		font-size: 2rem; 
		line-height: 2.5rem; }
	
	.et_pb_text_inner h3, span.slide-text h3 {
		font-size: 1.75rem;
		line-height: 2.25rem; }
	
	.search-results-wrapper article h2 {
		font-size: 1.75rem !important;
		line-height: 2.25rem; }
	
	html body, .search-results-wrapper article .post-content div p, .et_pb_posts a.more-link, span.wpcf7-form-control-wrap input:not([type="file"]), span.wpcf7-form-control-wrap textarea, span.wpcf7-form-control-wrap select, input.wpcf7-form-control[type="submit"], h2.testimonial-name, .project-button, a.et_pb_button, h2.project-products-heading, .products-list-wrapper article > div.col-content .product-excerpt, a.template-button { 
		font-size: 1.25rem;
		line-height: 1.75rem; }
	
	.search-results-wrapper .et_pb_row .et_pb_column article .post-content p {
		font-size: 1.25rem !important;
    	line-height: 1.75rem !important; }	
	
	#site-primary-menu li .sub-menu li a, .et_pb_toggle .et_pb_toggle_title, .mw1680 h3:not(.product-category), .project-info .project-title, .products-list-wrapper article a .col-content h2 {
		font-size: 1.5rem;
		line-height: 2rem; }
	
	.template-cta-wrapper div h2 {
		margin-bottom: 30px; }

	div.g-shape { 
		max-width: 100px; 
		width: 70%; }
	
	div.banner-shape { 
		padding: 0 0 0 5%; } 
	
	div.banner-shape div.et_pb_column { 
		display: inline-block;
    	width: 50%!important; }
	
	.full-banner .full-banner-text { 
		padding-top: 80px; }
	
	#grens-product-carousel { 
		height: 500px; }
	
	.mw1680, .product-slide-arrow { 
		width: 90%; }

	.slide-text { 
		padding: 5% 5%; }
	
	.contact-col:not(:last-child) { 
		padding-bottom: 2em; }
	
	.mw1680:not(.breadcrumbs-wrapper) {	
		padding: 4rem 0; }
	
	.project-slider-item figcaption a.site-button-white {
		margin-top: 1rem; }
	
	/* Single product page - top banner
	******************************************/		
	.top-banner-reverse {
		display: -webkit-box;
		display: -ms-flexbox;  
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		gap: 2rem; }
	
	.top-banner-reverse .et_pb_column_0 {
		order: 2; }
	
	.top-banner-reverse .et_pb_column_1 {
		order: 1; }
	
	/* Breadcrumbs
	******************************************/		
	span.breadcrumb-separator {
    	padding: 0 5px; }
	
	.et_pb_column.single-product-options-grid {
		grid-template-columns: 1fr 1fr; }
	
	/* Header
	******************************************/		
	.main-nav-search-form-wrapper {
		width: 100%; 
		margin-left: 5%; }
	
	.top-utility.mobile-search-form {
		z-index: 100; }
	
	#site-primary-menu li {
		position: relative; }
	
	#site-primary-menu li a {
		margin-right: 50px;	}
	
	#site-primary-menu li .mobile-toggle {
		position: absolute;
		top: 0;
		right: 0;
		font-size: 27px;
        line-height: 27px; 
		width: 40px;
		height: 40px; 
		text-align: right; }
	
	#site-primary-menu li ul li:last-of-type {
		border-bottom: 1px solid var(--light-grey); }
	
	/* Footer
	******************************************/		
	footer {
    	padding: 2rem 0 1.5rem 0; }
	
	.flex-wrapper.footer-wrapper.mw1680 {
		padding-bottom: 0; }
	
	.footer-privacy {
		margin-top: 2rem; }
}
@media all and (max-width: 980px) and (min-width: 768px) {
	/* Fonts 
	******************************************/	
	ul#site-primary-menu li a {
		font-size: 3.25rem;
		line-height: 3.75rem; }
	
	#site-primary-menu {
		padding: 8em 5%; }
	
	/* Header
	******************************************/	
	#site-primary-menu li ul li {
        padding-top: 1rem; }
	
	#site-primary-menu li ul li:last-of-type {
		padding-bottom: 2rem; }
	
	#site-primary-menu > li {
		padding-bottom: 1.5rem;	}
	
	#site-primary-menu > li ul li:last-of-type {
		margin-bottom: 2rem; }
	
	/* Footer
	******************************************/
	.footer-col:not(.footer-logo-wrapper) {
		width: calc(33.33% - 2rem); }
	
	/*.footer-col {
		width: calc(25% - 2.25rem); }*/
	
	.footer-logo-wrapper.footer-col {
		width: 100%; }
	
	.footer-logo-secondary.desktop-display {
		margin-top: 1rem; }
	
	footer > .flex-wrapper {
		gap: 3rem; }
}
@media all and (min-width: 768px) {	
	/* Global
	******************************************/		
	.et_pb_section section.et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content-container .header-content {
		text-align: center;	}
	
	.footer-toggle-item ul {
		display: block !important;
		height: unset !important;
		padding: unset!important;
		overflow: unset !important; }
	
	#menu-footer-menu li {
		display: block; }
	
	h2.quick-links, .footer-logo-secondary.mobile-display {
		display: none; }
	
	.resource-list-wrapper .resource-list {
		display: grid;
		gap: 3rem; }
	
	.footer-logo-wrapper.footer-col, div#next-prev-links {
		display: -webkit-box;
		display: -ms-flexbox;  
		display: -webkit-flex;
		display: flex; 	}
	
	.footer-logo-wrapper.footer-col {
		flex-direction: column;	}
	
	.project-items-wrapper {
		gap: 1% } 
	
	.project-product-list {
		gap: 4rem; }
	
	.resource-list-wrapper .resource-list {
		grid-template-columns: 1fr 1fr;	}
	
	/* Contact form 7 - submit button */
	span.wpcf7-form-control-wrap input[type="submit"] {
		min-width: 150px; }
	
	/* Icons - sassy social share plugin 
	******************************************/	
	.heateor_sss_sharing_ul a:not(:last-of-type) .heateor_sss_svg {
    	margin-right: 25px !important; }

	div.heateor_sss_horizontal_sharing div.heateor_sss_sharing_ul a {
		margin-bottom: 25px; }
	
	/* Search form - footer
	******************************************/
	.footer-search form, .footer-search form label input.is-search-input, .footer-search form .is-search-submit span {
		border-radius: 20px 20px; }
	
	/* Grens Icon - homepage 
	******************************************/
	.et_pb_row.grens-icon-bg {
		background-image: url(/wp-content/themes/Grens/Images/arrow-right-green.svg);
		background-size: 8vw auto;
		background-position: top right;
		padding-right: 10vw; }
	
	/* Projects
	******************************************/
	.project-info a h2.project-title, .project-info a .project-excerpt, .products-list-wrapper article a .col-content h2, .products-list-wrapper article > div.col-content .product excerpt {
    	padding-bottom: 2rem; }
		
	div#next-prev-links, #filtered-projects {
    	padding-top: 2rem; }
		
	div#next-prev-links > div, .project-items-wrapper article {
		width: calc(50% - 1%); }
	
	.project-items-wrapper article {
		margin-bottom: 4rem; }

	div#next-prev-links {
		gap: 1%; }	
		
	h2.project-products-heading {
		padding-bottom: 3rem; }
	
	/* Slick Carousel - testimonials 
	******************************************/	
	.testimonial-container div .slick-list {
		overflow: visible;
		padding-bottom: 2rem; }
	
	.slick-slide .testimonial-item {
		padding-right: 3rem; }
	
	/* Slick Carousel - projects 
	******************************************/		
	.project-slider-item figure {
		min-height: 700px; }
	
	.project-slider-item figcaption {
		padding: 3rem 5% 5rem 5%; }

	/* Header
	******************************************/	
	ul#site-primary-menu {
		top: 0;
		left: 0;
		right: 0; }

	/* Footer
	******************************************/	
	.flex-wrapper.footer-wrapper.mw1680 {
		background-image: url('/wp-content/themes/Grens/Images/arrow-right.svg');
		background-repeat: no-repeat;
		background-position: right top; }
	
	#menu-footer-menu li {
		padding: 0 0 0.75rem 0; }
	
	#menu-footer-menu li {
		padding-bottom: 0.5em; }
	
	.footer-logo-secondary.desktop-display {
		max-width: 7rem; }	
	
	a.footer-email.footer-button {
    	margin-top: 2rem; }
	
	.footer-search {
		margin-top: 3rem; }
}
@media all and (max-width: 767px) {
	/* Fonts
	******************************************/	
	.footer-toggle-item > h2, .footer-search form label input.is-search-input {
		font-size: 1.25rem;
		line-height: 1.75rem; }
	
	#site-primary-menu li a {
		font-size: 2rem;
		line-height: 2.5rem; }
	
	.footer-toggle-item > h2 {
		font-weight: 600; }
	
	.footer-toggle-item > h2 {
		text-transform: uppercase; }	
	
	.text-center-mobile, input.wpcf7-form-control[type="submit"] {
		text-align: center; }
	
	.footer-toggle-item > h2:hover {
		cursor: pointer; }
	
	/* Individual Project page
	******************************************/			
	h2.project-products-heading {
		padding-bottom: 2rem; }

	/* Colours
	******************************************/	
	.footer-toggle-item h2:hover, .footer-toggle-item > h2.open {
		color: var(--white); }
	
	.resource-list-wrapper .resource-list li {
		border-bottom: 1px solid var(--light-grey);	}
	
	/* Icons - sassy social share plugin icons	
	******************************************/	
	.heateor_sss_sharing_ul a .heateor_sss_svg {
		width: 40px !important; /* match width and height with footer social icons */
		height: 40px !important; }
	
	.heateor_sss_sharing_ul a:not(:last-of-type) .heateor_sss_svg {
    	margin-right: 10px !important; }

	div.heateor_sss_horizontal_sharing div.heateor_sss_sharing_ul a {
		margin-bottom: 15px; }	
	
	/* Global
	******************************************/	
	a.et_pb_button, .page-404 button, .page-404 button a, .et_pb_posts a.more-link, a.template-button, .project-content-wrapper .project-button {
		width: 100%;
		text-align: center; }
	
	.footer-toggle-item ul, .footer-logo-secondary.desktop-display {
   		display: none; }
	
	.footer-toggle-item ul.open, .footer-toggle-item > h2, #menu-footer-menu li a, .footer-button {
		display: block;	}
	
	.et_pb_section section.et_pb_fullwidth_header .et_pb_fullwidth_header_container {
		justify-content: flex-end; }
	
	.project-items-wrapper {
		flex-direction: column;
		gap: 4rem; } 
	
	.footer-toggle-item > h2 {
		position: relative;	}
	
	.footer-col, .slide-image, input.wpcf7-form-control[type="submit"] { 
		width: 100%; }
	
	div.full-banner-text div div span img { 
		max-width: 85%; }
	
	.projects-filter-wrapper, .resource-list-wrapper .resource-list li {
		margin-bottom: 2rem; }
	
	.resource-list li {
		padding-bottom: 2rem; } 
	
	/* Full-width image section - top page banners 
	******************************************/	
	.et_pb_section section.et_pb_fullwidth_header {
		padding-bottom: 1rem; }
	
	.et_pb_section section.et_pb_fullwidth_header .et_pb_fullwidth_header_container {
		align-items: flex-end; }

	.et_pb_section section.et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content-container {
		/*-webkit-align-self: flex-end !important;*/
		align-self: flex-end !important; }	
	
	.et_pb_section section.et_pb_fullwidth_header .et_pb_fullwidth_header_container .header-content-container .header-content {
		margin: 0; }
	
	/* Slick Carousel - projects 
	******************************************/		
	.project-slider-item figure {
		min-height: 300px; }
	
	.project-slider-item figcaption {
		padding: 2rem 5% 6rem 5%; }
	
	/* Projects
	******************************************/		
	.project-info a h2.project-title, .project-info a .project-excerpt {
    	padding-bottom: 1rem; }
		
	div#next-prev-links {
    	padding-top: 1rem; }
		
	div#next-prev-links > div:not(:last-of-type) {
    	padding-bottom: 3rem; }
	
	/* Header
	******************************************/			
	ul#site-primary-menu {
    	padding: 7em 5% 2em 5%; }
	
	#site-primary-menu li .sub-menu li:first-child {
		padding-top: 1rem; }
	
	#site-primary-menu li .sub-menu li {
		padding-bottom: 1rem; }
	
	#site-primary-menu li .sub-menu li:last-of-type {
		padding-bottom: 2rem; }
	
	#site-primary-menu > li {
        padding-bottom: 1.5rem; }
	
	/* Footer
	******************************************/	
	.footer-logo svg {
		max-width: 18rem; }
	
	.footer-contact-wrapper.footer-col {
		padding-top: 1rem; }
	
	a.footer-email.footer-button, .footer-search form {
		margin-top: 1rem; }
	
	.footer-search form, .footer-search form label input.is-search-input, .footer-search form .is-search-submit span {
		border-radius: 40px 40px; }
	
	.footer-socials {
		margin-top: 1rem; }
	
	.footer-privacy {
		margin-top: 4rem; }
	
	.footer-button {
		margin-bottom: 1rem; }
	
	.footer-search form button .is-search-icon {
		padding-right: 0.75rem; }
	
	.footer-toggle-item {
		border: 1px solid; }	
	
	.footer-toggle-item > h2 {
		padding: 0.75rem 50px 0.75rem 0.75rem; }	
	
	.footer-toggle-item ul, .footer-email.footer-button {
		padding: 0.75rem 0.75rem; }	
	
	#menu-footer-menu li a {
		padding: 0 0 0.75rem; }
	
	.footer-toggle-item > h2:after {
		font-family: 'ETmodules';
		content: '\4c';
		text-align: right;
		position: absolute;
		right: .75rem;
		top: 50%;
		-webkit-transform: translateY(-50%); 
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
		transition: all 500ms ease;
		font-size: 25px;
        line-height: 25px; }
	
	.footer-toggle-item > h2.open:after {
		 content: '\4b'; }
	
	.footer-logo-secondary svg {
        max-width: 6rem; }
}
@media all and (max-width: 980px) and (min-width: 577px) {
	.project-product-list {
 		display: -webkit-box;
		display: -ms-flexbox;  
		display: -webkit-flex;
		display: flex;
		flex-wrap: wrap;
		gap: 4rem;
		justify-content: center; }
	
	.product-item-group {
		/*flex: calc(50% - 2rem); */
		max-width: calc(50% - 4rem); }
}
@media all and (max-width: 576px) {
	.form-row-wrapper.form-row-flex .form-col {
		width: 100%; }
	
	.projects-filter-wrapper {
		display: -ms-grid;
		display: grid;
		gap: 1rem; }
	
	.project-product-list .product-item-group:not(:last-of-type) {
		margin-bottom: 3rem; }
}
@media print { 
	div.et_pb_section.et_pb_section_0_tb_header, body { 
		-webkit-print-color-adjust: exact; }
}