/*
Theme Name: Blockbase Child Theme
Theme URI: https://www.edge-one.com/
Author: Edge One Media
Author URI: https://www.edge-one.com/
Template: blockbase
Description: blockbase child theme
Version: 1.4.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-image-header, featured-images, full-width-template, microformats, post-formats, sticky-post, theme-options, threaded-comments, translation-ready
Text Domain: blockbase
*/

/* ==========================================================================
   BASE STYLES
========================================================================== */

/* ROOT CALLOUTS */

:root {
    --primary: #39b54a;
    --primary-hover: #66e577;
    --secondary: #000;
    --body-font: 'Open Sans', sans-serif;
    --title-font: "Oswald", sans-serif;
  }
  
  /* END */
  
  html {
      scroll-behavior: smooth;
  }
  
  h1, h2, h3, h4, h5, h6 {
    font-family: var(--title-font);
    line-height: 1;
    margin-bottom: 2rem;
    color: var(--primary);
    font-weight: 700;
  }
  
  h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong,
  h1 em, h2 em, h3 em, h4 em, h5 em, h6 em {
      font-family: var(--title-font);
  }
  
  body, p,
  b, strong, em, i,
  blockquote p,
  blockquote cite  {
      font-family: var(--body-font);
  }
  
  body, p, li {
      font-weight: 400;
      font-size: 21px;
      color: var(--secondary);
  }
  
  h1, h2, h3, h4, h5, h6, body, p, li {
      -webkit-hyphens: none;
      -moz-hyphens: none;
      -ms-hyphens: none;
      hyphens: none;
  }
  
  h1 {
      font-size: 72px;
  }
  
  h2 {
      font-size: 72px;
  }
  
  h3 {
      font-size: 60px;
  }
  
  h4 {
      font-size: 48px;
  }
  
  h5 {
      font-size: 36px;
  }
  
  h6 {
      font-size: 24px;
  }
  
  a, a:visited {
      color: var(--primary);
      transition: 0.25s ease;
      text-decoration: underline; 
  }
  
  a:hover {
      color: var(--primary-hover);
  }
  
  /* .site-content, .container, .site-footer, .site-header,
  .wp-block-cover__inner-container, .wp-site-blocks {
      width: 100%;
      position: relative;
      overflow: initial;
      max-width: 1700px;
      margin: 0 auto;
      padding-right: 50px;
      padding-left: 50px;
  } */

  
  
  .ffw,
  .wp-site-blocks .wp-block-cover.ffw {
    width: 100vw !important;
    position: relative;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
   
  }

  .wp-block-cover {
    margin-top: 0;
  }
  
  .wp-block-media-text.alignfull {
      margin-bottom: 0 !important;
      margin-top: 0 !important;
  }
  
  .wp-block-media-text.alignfull .wp-block-media-text__content {
      max-width: 850px;
      padding-right: 50px;
      padding-top: 150px;
      padding-bottom: 150px;
      padding-left: 8%;
      margin-left: 0;
      margin-right: auto;
  }
  
  .wp-block-media-text.alignfull.has-media-on-the-right .wp-block-media-text__content {
      padding-left: 50px;
      padding-right: 8%;
      margin-right: 0;
      margin-left: auto !important;
  }
  
  .wp-block-media-text.is-image-fill .wp-block-media-text__media {
      min-height: 670px;
  }
  
  .button,
  .wp-block-button__link,
  input[type="submit"],
  .main-navigation .button a,
  .tribe-events-widget .tribe-events-widget-events-list__view-more-link ,
  .gform_button.button,
  .gallery-load-more .gallery-load-more-btn {
      display: inline-block;
      background-color: var(--primary);
      color: #FFF !important;
      font-family: var(--title-font);
      font-size: 24px;
      font-weight: 500;
      line-height: 1;
      text-align: center;
      text-decoration: none;
      padding: 15px 25px;
      text-transform: uppercase !important;
      letter-spacing: 1px;
      transition: 0.25s ease !important;
      text-shadow: none;
      border: 2px solid var(--primary) !important;
      border-radius: 0;
  }
  
  .button:hover,
  .wp-block-button__link:hover,
  input[type="submit"]:hover,
  .main-navigation .button a:hover,
  .tribe-events-widget .tribe-events-widget-events-list__view-more-link:hover,
  .gform_button.button:hover,
  .gallery-load-more .gallery-load-more-btn:hover {
      background-color: #FFF !important;
      color: var(--primary) !important;
  }

    .gform_button.button {
      display: inline-block !important;
      background-color: var(--primary) !important;
      color: #FFF !important;
      font-family: var(--title-font) !important;
      font-size: 24px !important;
      font-weight: 500 !important;
      line-height: 1 !important;
      text-align: center !important;
      text-decoration: none !important;
      padding: 15px 25px !important;
      text-transform: uppercase !important;
      letter-spacing: 1px !important;
      transition: 0.25s ease !important;
      text-shadow: none !important;
      border: 2px solid var(--primary) !important;
      border-radius: 0 !important;
      margin: auto !important;
  }

    .gform_button.button:hover {
      background-color: #FFF !important;
      color: var(--primary-hover) !important;
  }

  
  /* ==========================================================================
     HEADER
  ========================================================================== */
  
  /* NAV FUNCTIONS */

  .site-header {
    align-items: end;
  }
  
 header.nav-shrink {

 }
  
  .admin-bar .wp-site-blocks {
      top: 32px;
  }
  
  .nav-shrink #masthead.site-header {
      padding-top: 1rem;
      padding-bottom: 1rem;
  }


  nav .wp-block-navigation-item__content {
    font-weight: 700;
  }

  nav .wp-block-navigation-item__content:hover {
    color: var(--primary) !important;
  }
  
  /* ==========================================================================
     PAGE STYLES
  ========================================================================== */
  
.wp-site-blocks .entry-content .alignfull {
      width: 100vw !important;
      position: relative;
      left: 50%;
      right: 50%;
      margin-left: -50vw !important;
      margin-right: -50vw !important;
      margin-top: 50px;
      margin-bottom: 50px;
  }
  
  
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
      padding-left: 0;
  }
  
  .wp-block-media-text.has-media-on-the-left .wp-block-media-text__content {
      padding-right: 0;
  }
  
  .has-medium-font-size {
      font-size: 28px;
  }
  
  .has-large-font-size {
      font-size: 42px;
  }
  
  .has-huge-font-size {
      font-size: 72px;
  }
  
  .preheader {
      font-weight: 700;
      letter-spacing: 2px;
      text-transform: uppercase;
      font-family: var(--title-font);
      font-size: 24px;
  }

  .grecaptcha-badge,
  .cmplz-show {
    display: none;
  }

  /* GRAVITY FORMS */


  .gform-theme--foundation .gform_fields {
    row-gap: 1rem;

  }

  /* GALLERY */

  .wp-block-gallery.has-nested-images figure.wp-block-image {
    aspect-ratio: 7 / 5;
  }

  .gform-theme--foundation .gfield textarea,
  input.wp-block-search__input, input[type=text], input[type=email], input[type=url], input[type=password], input[type=search], input[type=number], input[type=tel], input[type=range], input[type=date], input[type=month], input[type=week], input[type=time], input[type=datetime], input[type=datetime-local], input[type=color], textarea, select {
    color: #000 !important;
  }

  /* Mobile Lightbox Controls */
@media (max-width: 768px) {

  /* Move arrows below the image */
  .glightbox-container .gprev.gbtn,
  .glightbox-container .gnext.gbtn {
    top: auto !important;
    bottom: 40px;
    transform: none;
    background: rgba(0,0,0,0.6);
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Position left/right arrows */
  .glightbox-container .gprev.gbtn {
    left: 30%;
  }

  .glightbox-container .gnext.gbtn {
    right: 30%;
  }

  /* Make swipe area feel natural */
  .glightbox-container .gslide-media img {
    touch-action: pan-y;
  }
}

/* Hide gallery items beyond initial limit */
.gallery-load-more .wp-block-image.is-hidden {
  display: none;
}

/* View more button */
.gallery-load-more .gallery-load-more-btn {
  display: block;
  margin: 2rem auto 0;
}

.gallery-load-more .gallery-load-more-btn:hover {
  opacity: 0.85;
}

.wp-block-image {
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.wp-block-gallery.has-nested-images figure.wp-block-image.is-hidden {
	display: none;
}

.wp-block-image {
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.wp-block-image.is-hidden {
	opacity: 0;
	transform: translateY(10px);
}



  
  /* ==========================================================================
     FRONT PAGE
  ========================================================================== */
  
  .services-container {
    position: relative;
    overflow: visible;
  }
  
#about p {
    font-size: 21px;
}

.service-area h2 {
    line-height: 1.4;
}

  /* ==========================================================================
     BLOG PAGE
  ========================================================================== */
  
  
  /* ==========================================================================
     FOOTER
  ========================================================================== */
  
  footer a {
    color: #FFF;
  }

  /* ==========================================================================
     IN VIEW / FADE IN
  ========================================================================== */
  
  .fadein {
      opacity: 0;
      transform: translateY(50px);
      transition: 0.5s ease-in-out;
  }
  
  .fadein.in-viewport {
      opacity: 1;
      transform: translateY(0);
  }
  
     
  /* ==========================================================================
     MEDIA QUERIES
  ========================================================================== */
  
  @media only screen and (max-width : 1680px) {
  
  
  
  }
  
  
  @media only screen and (max-width : 1440px) {
  
  
  
  }
  
  
  @media only screen and (max-width : 1200px) {
  
  
  
  }
  
  
  @media only screen and (max-width : 1024px) {
  
      #landing h2 {
    font-size: 72px !important;
  }

  .services-container > .wp-block-cover__inner-container > .wp-block-group {
        margin-top: -10rem !important;
  }
  

  /* MOBILE MENU */
  
  /* .wp-block-navigation__responsive-container,
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  
  .wp-block-navigation__responsive-container.is-menu-open {
    display: flex;
    flex-direction: column;
    background-color: inherit;
    animation: overlay-menu__fade-in-animation .1s ease-out;
    animation-fill-mode: forwards;
    padding: var(--wp--style--root--padding-top,2rem) var(--wp--style--root--padding-right,2rem) var(--wp--style--root--padding-bottom,2rem) var(--wp--style--root--padding-left,2rem);
    overflow: auto;
    z-index: 100000;
  }
  
  button.wp-block-navigation__responsive-container-open {
    display: flex !important;
  }
  
  header .wp-block-site-logo img {
    width: 275px;
  }
  
  .wp-site-blocks header .site-header nav .wp-block-navigation__responsive-container {
    display: none;
  }
  
  .wp-block-navigation.is-responsive:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
    display: flex;
  }
  
  .wp-site-blocks header .site-header nav {
    display: flex;
    flex-direction: unset;
    align-items: center;
    margin: unset;
    width: unset;
  }
  
  .wp-block-navigation__responsive-close, .wp-block-navigation__responsive-dialog, .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content, .wp-site-blocks header .site-header nav .wp-block-navigation__container {
    display: flex;
    flex-direction: column;
    align-items: unset;
    margin: 0 auto;
    width: 100%;
  } */
  
  }
  
  
  @media only screen and (max-width : 834px) {
  
    .site-header {
        justify-content: center;
      }
  
  
  }
  
  
  @media only screen and (max-width : 768px) {
  
  
      .site-content, .container, .site-footer, .site-header, .mobile-nav,
      .wp-block-media-text.alignfull .wp-block-media-text__content {
          padding-right: 25px;
          padding-left: 25px;
      }
      
      .wp-block-media-text.is-stacked-on-mobile {
          grid-template-columns: 100%!important;
      }
  
      .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
          grid-column: 1;
          grid-row: 1;
          min-height: 400px;
      }
  
      .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
          grid-column: 1;
          grid-row: 2;
      }

      footer .wp-block-column {
        text-align: center;
      }

      footer .wp-block-buttons {
        justify-content: center;
      }
  
  }
  
  
  @media only screen and (max-width : 667px) {
  
      .has-medium-font-size {
          font-size: 24px;
      }
  
      .has-large-font-size {
          font-size: 32px;
      }
  
      .has-huge-font-size {
          font-size: 42px;
      }

      .services-container > .wp-block-cover__inner-container > .wp-block-group {
        margin-top: -5rem !important;
  }

  .wp-site-blocks .site-header .wp-block-site-logo {
    margin: auto !important;
  }
  
  }
  
  
  @media only screen and (max-width : 568px) {
  
    h2 {
        font-size: 60px !important;
    }

    h4, h3 {
        font-size: 36px !important;
    }

    #about p {
        font-size: 21px !important;
    }

    .nav-container {
        flex-wrap: wrap !important;
        justify-content: center;
    }
  
  }
  
  
  @media only screen and (max-width : 414px) {
  
  
  
  }
  
  
  @media only screen and (max-width : 375px) {
  
  .nav-container ul {
    justify-content: center;
  }
  
  }
  
  
  @media only screen and (max-width : 320px) {
  
  
  
  }