/*
 Theme Name:   Insulation Man
 Theme URI:    https://www.energycircle.com
 Description:  Insulation Man
 Author:       Energy Circle
 Author URI:   https://www.energycircle.com
 Template:     generatepress
 Version:      0.1
*/

/* ------------------- Desktop navigation & sticky styles -------------------- */
#sticky-navigation,
#mobile-header.is_stuck {
    box-shadow: 0 5px 2px -2px rgb(0 0 0 / 20%);
}

.main-navigation.sticky-navigation-transition .main-nav > ul > li > a {
    font-size: 16px;
}

.inside-header {
	justify-content: space-between;
}

.site-logo img {
    height: 100px;
    width: auto;
}

.inside-header img {
	height: 100px;
	width: auto;
}

/* -------------------- Auxiliary menu styles -------------------- */
.secondary-navigation .menu-toggle {
    display: none;
}

#secondary-navigation {
    background: var(--global-color-1);
}

#secondary-navigation ul#menu-aux-menu li a:hover:not(ul.sub-menu li a) {
    text-decoration: underline;
}

#secondary-navigation .inside-navigation div.aux-nav-buttons {
    order: 2;
}

@media (max-width: 1024px) {
    #secondary-navigation {
        display: none;
    }
}

@media (max-width: 992px) {
    .secondary-navigation ul,
    .secondary-navigation:not(.toggled) .main-nav > ul {
        display: none;
    }
}

@media (max-width: 768px) {
    .secondary-navigation {
        text-align: center !important;
    }
    .secondary-navigation ul {
        display: block;
    }
    .secondary-navigation .sf-menu > li {
        float: none;
        display: inline-block !important;
    }
}
  
@media (min-width: 1100px) {
      #secondary-navigation .tagline {
          margin-right: 100px;
      }
}
  
@media (min-width: 1280px) {
      #secondary-navigation .tagline {
          margin-right: 250px;
      }
      
      .main-navigation .main-nav ul li a {
      padding-left: 20px !important;
      padding-right: 20px !important;
      line-height: 60px;
      }
}
  
@media (max-width: 1055px) {
      .menu-item-has-children .dropdown-menu-toggle {
      padding-right: 0px !important;
      }
}
  
@media (min-width: 768px) and (max-width: 1024px) {
      .page-hero {
          min-height: 300px;
      }
}

/* -------------------- Mobile header and hamburger menu styles -------------------- */
.mobile-header-navigation {
    box-sizing: border-box;
    padding: 10px;
}

#generate-slideout-menu .gb-button-wrapper .gb-button,
.slideout-navigation.do-overlay .inside-navigation .main-nav,
.slideout-navigation.do-overlay .inside-navigation .slideout-widget {
    width: 100%;
}

.main-navigation.slideout-navigation .main-nav > ul > li > a {
    line-height: 30px;
}

.menu-toggle .gp-icon svg,
.slideout-exit .gp-icon svg {
    fill: var(--contrast);
}

#generate-slideout-menu div.inside-navigation {
    padding-bottom: 30%;
}

@media (max-width: 1024px) {
    #generate-slideout-menu.main-navigation ul.ec_menu_ul {
        display: block !important;
    }
}

@media (max-width: 768px) {
    .slideout-navigation.do-overlay .slideout-exit {
        position: fixed !important;
    }
}

#generate-slideout-menu #menu-aux-menu-2 a:hover {
    color: var(--global-color-2);
}


.slideout-navigation, .slideout-navigation span:hover a {
    color: white;
}

.slideout-navigation .menu-item-has-children .dropdown-menu-toggle {
    float: right;
    position: absolute;
}

@media (max-width: 1024px) {
    .mobile-header-navigation.has-menu-bar-items .mobile-header-logo {
      margin-right: 10px;
      margin-left: 0;
    }
}

.menu-toggle .mobile-menu {
    display: none;
}

/* -------------------- Testimonials -------------------- */
.strong-view.wpmtst-modern .wpmtst-testimonial-field {
    text-align: center;
    font-style: italic;
    color: var(--base-1);
}

.strong-view.wpmtst-modern .wpmtst-testimonial {
    border: 0;
}

.strong-view.wpmtst-modern .wpmtst-testimonial:last-child {
    border-right: 0;
}

.strong-view.wpmtst-modern .wpmtst-testimonial .testimonial-content {
    padding: 10px;
}

.strong-view.wpmtst-modern .wpmtst-testimonial-content:before,
.strong-view.wpmtst-modern .wpmtst-testimonial-content:after {
    display: none;
    /* color: var(--base-1) !important;
    background: var(--base-1) !important; */
}

.strong-view.pager-style-buttons
    div.wpmslider-controls
    .wpmslider-pager-link.active:before {
    background: var(--global-color-1);
}

.strong-view.pager-style-buttons div.wpmslider-controls .wpmslider-pager-link.active:before {
    background: var(--global-color-2);
}

.testimonial-page .testimonial-inner {
    padding: 30px;
    border-top: 5px solid var(--global-color-2);
}

.testimonial-page .testimonial-name,
.testimonial-page .testimonial-company {
    font-size: 1.3rem;
    color: var(--contrast);
}

.testimonial-page .testimonial-name::before {
    content: "- ";
}

.strong-view.wpmtst-modern .wpmtst-testimonial-content {
    font-size: 1em !important;
}

.strong-view.wpmtst-modern .wpmtst-testimonial-content a {
color: var(--global-color-2);
}

.strong-view.wpmtst-modern .wpmtst-testimonial-inner {
padding-top: 0 !important;
}

.page-id-480 .strong-view.wpmtst-modern .wpmtst-testimonial-content:before {
	display: none;
}

@media only screen and (max-width: 480px) {
	.strong-view.wpmtst-modern .wpmtst-testimonial-content:before {
		display: none !important;
	}
}	

.page-id-480 .wpmtst-testimonial-content {
	padding-top: 40px !important;
}

/* -------------------- Distinctions -------------------- */
/* Check if all are needed */
.distinctions .wp-block-getwid-post-carousel__post-title {
    display: none;
}

.distinctions img {
    max-height: 140px;
    width: auto;
}

.distinctions .wp-post-image {
    display: flex;
    justify-content: center;
}

.distinctions.wp-block-getwid-post-carousel .slick-track {
    align-items: center;
}

/* -------------------- Footer styles -------------------- */
.ec_menu_ul {
    margin-left: 0em;
    list-style-type: none;
}

.ec_menu_ul ul.sub-menu {
    list-style-type: none;
}

.footer .ec_menu_ul li a {
    color: var(--base-1);
}

.footer .ec_menu_ul li a:hover {
    color: var(--global-color-2);
}

.footer address {
    color: var(--base-1);
    text-align: center;
}

@media (max-width: 767px) {
    .footer {
        text-align: center;
    }
}

.site-info {
    background: var(--global-color-3);
}

.site-info a:hover {
    color: var(--global-color-2);
}


/* -------------------- WP Forms styles -------------------- */
/* Submit button style */
div.wpforms-container-full .wpforms-form input[type='submit'],
div.wpforms-container-full .wpforms-form button[type='submit'],
div.wpforms-container-full .wpforms-form .wpforms-page-button {
    padding: 10px 20px !important;
    transition: all 0.5s ease 0s !important;
}

/* Submit button hover style */
div.wpforms-container-full .wpforms-form input[type='submit']:hover,
div.wpforms-container-full .wpforms-form input[type='submit']:focus,
div.wpforms-container-full .wpforms-form input[type='submit']:active,
div.wpforms-container-full .wpforms-form button[type='submit']:hover,
div.wpforms-container-full .wpforms-form button[type='submit']:focus,
div.wpforms-container-full .wpforms-form button[type='submit']:active,
div.wpforms-container-full .wpforms-form .wpforms-page-button:hover,
div.wpforms-container-full .wpforms-form .wpforms-page-button:active,
div.wpforms-container-full .wpforms-form .wpforms-page-button:focus {
    background-color: var(--contrast) !important;
}

/* Hero primary contact form styles  */
.primary-contact-form .wpforms-container {
    margin: 0;
}

.primary-contact-form h2,
.primary-contact-form h3,
.primary-contact-form h4
.primary-contact-form p {
    color: var(--base-1);
}

.primary-contact-form a {
    color: var(--global-color-2);
}

.primary-contact-form a:hover {
    color: var(--base-1);
}

.primary-contact-form:not(.not-front-cta) form {
    display: grid;
    grid-template-columns: 4fr 0 1fr;
    align-items: end;
    grid-gap: 10px;
}

.primary-contact-form:not(.not-front-cta) form div.wpforms-field-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 15px;
}

.primary-contact-form:not(.not-front-cta) form div.wpforms-field-container .cta-comment-field {
    grid-column: 3 / span 2;
}

.single-post .primary-contact-form form  {
    display: grid;
    grid-template-columns: 4fr 0 1fr;
    align-items: end;
    grid-gap: 10px;
}

.single-post .primary-contact-form form div.wpforms-field-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 15px;
}

.single-post .primary-contact-form form div.wpforms-field-container .cta-comment-field {
    grid-column: 3 / span 2;
}

.cta-comment-field textarea {
    height: calc( var(--wpforms-field-size-input-height) * 1) !important;
}

.primary-contact-form form div.wpforms-field-container div.wpforms-field {
    padding-bottom: 0;
}

.primary-contact-form form div.wpforms-field-container label {
    margin-bottom: 5px;
}

.primary-contact-form form div.wpforms-submit-container {
    margin-top: 0 !important;
    padding-top: 0;
}

.not-front-cta div.wpforms-container-full .wpforms-form .wpforms-submit-container {
    margin-top: 30px !important;
}

.primary-contact-form, .testimonial.alignfull {
  outline: 5px solid var(--global-color-2);
}

@media (max-width: 1100px) {
    .primary-contact-form:not(.not-front-cta) {
        max-width: calc(100% - 40px) !important;
    }
}

@media (max-width: 767px) {
    .primary-contact-form:not(.not-front-cta) form,
    .primary-contact-form:not(.not-front-cta) form div.wpforms-field-container {
        grid-template-columns: 1fr;
    }

    .primary-contact-form:not(.not-front-cta) form div.wpforms-field-container .cta-comment-field {
        grid-column: 1;
    }
}

@media (max-width: 500px) {
    div.wpforms-field-container .wpforms-field-name .wpforms-one-half {
        width: 100% !important;
    }

    div.wpforms-field-container
        .wpforms-field-name
        .wpforms-field-row
        > .wpforms-one-half:last-child {
        margin: 20px 0 0;
    }

    div.wpforms-container
        .wpforms-field
        .wpforms-field-row
        > .wpforms-field-row-block {
        padding: 0;
    }
}

.wpforms-field-container input {
    border-radius: 20px !important;
}

.wpforms-field-container textarea {
    border-radius: 40px !important;
}

.wpforms-submit-container button {
    border-radius: 50px !important;
}

.wpforms-submit-container button::before {
    content: " ";
	border: 5px solid var(--global-color-2);
	position: absolute;
	top: -5px;
	left: -5px;
	right: -5px;
	bottom: -5px;
	border-radius: 50px;
}

div.wpforms-container-full .wpforms-form button[type='submit']:hover {
    background-color: var(--global-color-1) !important;
    color: var(--base-1) !important;
}

@media only screen and (min-width: 768px) and (max-width: 992px) {
    div.wpforms-container-full button[type=submit]:not(:hover):not(:active) {
        font-size: 13px;
    }
}

.wpforms-container .wpforms-field {
	padding: 5px 0;
}


@media (max-width: 768px) {
	.not-front-cta.horizontal-form #wpforms-form-189 {
		display: flex;
		flex-direction: column !important;
	}

	.not-front-cta.horizontal-form .wpforms-field-container {
		display: flex !important;
		flex-direction: column !important;
		width: 100%;
	}
	
	.not-front-cta div.wpforms-container-full .wpforms-form .wpforms-submit-container {
		width: 100%;
		text-align: center;
	}	
}

.not-front-cta.horizontal-form #wpforms-form-189 div.wpforms-field-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr) !important;
    grid-gap: 10px;
}

 .not-front-cta.horizontal-form #wpforms-form-189 div.wpforms-field-container .cta-comment-field {
    grid-column: 2 / span 1;
}


#wpforms-form-293 input[type=radio]:before {
	background-color: unset !important;
}

.not-front-cta.horizontal-form .wpforms-field {
	padding: 0 !important;
}

/* -------------------- General styles -------------------- */
/* Overlapping of form on hero */
.page-hero {
    z-index: 10;
}

/* Homepage Hero custom */
#rotate {
    z-index: 100 !important;
    padding: 0px 20px;
}

#rotate h2 {
    font-size: 60px;
    text-transform: uppercase;
    margin-bottom: 20px;
    font-weight: 400;
    line-height: 1.2em;
    color: var(--base-1);
}

@media (max-width: 600px) {
    #rotate h2 {
        font-size: 40px;
    }
}

/* Full width container text */
.text-left-full-width {
    padding-left: calc(((100vw - 1280px) / 2) + 20px) !important;
}

@media (max-width: 1280px) {
    .text-left-full-width {
        padding-left: 20px !important;
    }
}

/* full cover images */
.full-cover-img figure {
    height: 100%;
}

.full-cover-img img {
    height: 100%;
    object-fit: cover;
}

/* Image sizing */
.aspect-3-2 img {
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

@media only screen and (max-width: 992px) {
    .wp-block-image figure.alignright {
        float: none;
        margin: auto auto 20px;
    }
}

/* heading orange underline */
.heading-orange-underline {
    position: relative;
}

.heading-orange-underline::after {
    content: '';
    height: 3px;
    background-color: var(--global-color-2);
    width: 130px;
    position: absolute;
    left: 0;
    bottom: 0;
}

/* triangle shapes */
.home-hero,
.page-hero,
.footer,
.page-section {
    position: relative;
}

.home-hero::before,
.page-hero::before,
.footer::before,
.page-section::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    border-top: 80px solid var(--global-color-2);
    border-right: 700px solid transparent;
    z-index: 2;
}

@media (max-width: 700px) {
    .home-hero::before,
    .page-hero::before,
    .footer::before,
    .page-section::before {
        border-top: 70px solid var(--global-color-2);
        border-right: 310px solid transparent;
    }
}

button {
    text-transform: lowercase !important;
}

.gb-button-primary-button {
    background: var(--base-1) !important;
    color: var(--global-color-1) !important;
}

.gb-button-primary-button:hover {
    background: var(--global-color-1) !important;
    color: var(--base-1) !important;
}

.testimonial-page .testimonial-name,
.testimonial-page .testimonial-company {
    color: var(--base-2) !important;
}

.page-id-944 .wp-block-post-excerpt__more-text {
    padding-top: 20px;
}

.site-logo img {
    width: 450px;
}

/* Grid tables */
.grid-table {
    justify-content: center;
}

.grid-table-head p {
        margin-bottom: 0 !important;
}

.grid-table-row ul{
    list-style: none;
    margin: unset;
    text-align: center;
    padding: 10px 0 15px 0;
}

.grid-table-row {
    border-color: var(--global-color-2) !important;
}

/* NYSERDA Form */
@media screen and (min-width: 768px) {
    form#wpforms-form-1246 {
    padding-right: 40px;
    }
}

form#wpforms-form-1246 .wpforms-one-half {
    width: 100%;
    padding-right: 0;
}

form#wpforms-form-1246 select {
    margin-top: 15px;
}

.certifications-block img {
    max-height: 150px;
    width: auto;
}


/* Mobile Sticky CTA */
.mobile-cta {
    position: sticky;
    bottom: 0;
    background: var(--global-color-1);
}

.mobile-cta a {
    margin-bottom: 0;
    width: 100%;
}

#mobile-header {
    text-align:center;
  padding-bottom: 10px;
  background:
    linear-gradient(
      to left, 
      #00AB54 0%,
      #003C59  100%
    )
    left 
    bottom
    white  
    no-repeat; 
  background-size:100% 10px ;
}

@media (max-width: 768px) {
    .mobile-header-navigation .site-logo.mobile-header-logo img {
      height: 60px;
      width: auto;
    }
    
    #mobile-header a {
        font-size: 14px;
    }
    
    #mobile-header.main-navigation.sticky-navigation-transition .site-logo img {
        height: 60px;
    }
    
    .mobile-header-navigation.has-menu-bar-items .mobile-header-logo {
        margin-right: 10px;
        margin-left: 0;
    }
}

.site-content a,
.site-content bold,
.site-content strong {
	color: var(--global-color-2);
	font-weight: 600 !important;
}

.mobile-cta {
	z-index: 1000;
}

/* Popup on homepage styling */
.pum-theme-2162, .pum-theme-default-theme {
    background-color: rgba(255, 255, 255, .75) !important;
}

div#popmake-2175 {
    background: var(--global-color-1);
    border: 10px solid white;
    border-radius: 20px;
		padding: 60px 10px;
}

div#popmake-2175 h2,
div#popmake-2175 h3,
div#popmake-2175 h4 {
	color: white;
}

div#popmake-2175 a {
	color: var(--global-color-2);
}

div#popmake-2175 a:hover {
	color: white;
}

div#popmake-2175 button.pum-close {
	background-color: var(--global-color-2);
	border-radius: 0 10px;
}
