/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Navigation
# Content
## Custom Element
### Accordion
# Gravity Forms
# Footer
# Media - Max
# Media - Min
--------------------------------------------------------------*/
:root {
  --white: #fff;
  --black: #2b2b2b;
  --grey: #f0f0f0;
  --yellow: #f8b726;
  --ice: #99e5df;
  --light-ice: #f9fdfd;
  --light-teal: #E7F9F7;
  --teal: #008d8e;
  --blue: #005d64;
  --shadow: rgba(16, 24, 40, 0.05) 0px 6px 15px -2px;
  --radius: 18px;
}

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
.screenreader-only {
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
.width-container {
  max-width: 1300px;
  margin-left: auto!important;
  margin-right: auto!important;
  padding-left: 25px!important;
  padding-right: 25px!important;
  float: unset!important;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
html{
  font-size: 16px;
}
.text-white,
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white a {
  color: var(--white);
}
.text-teal,
.text-teal h1,
.text-teal h2,
.text-teal h3,
.text-teal h4,
.text-teal h5,
.text-teal h6,
.text-teal p,
.text-teal a {
  color: var(--teal);
}
.text-blue,
.text-blue h1,
.text-blue h2,
.text-blue h3,
.text-blue h4,
.text-blue h5,
.text-blue h6,
.text-blue p,
.text-blue a {
  color: var(--blue);
}
.text-center,
.text-center h1,
.text-center h2,
.text-center h3,
.text-center h4,
.text-center h5,
.text-center h6,
.text-center p,
.text-center a {
  text-align: center;
}
h1,
.elementor-widget-container h1{
  color: var(--blue);
}
strong a,
a strong{
  letter-spacing: .5px;
}
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol{
  margin: 0;
  padding-left: 30px;
}
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
#masthead .ast-container,
.ast-site-identity{
  padding: 0;
}

.ast-header-button-1 a .ast-custom-button::after{
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  padding-left: 10px;
}



@media only screen and (min-width: 993px) {
  .ast-header-button-1[data-section="section-hb-button-1"]{
    padding-right: 0!important;
  }
  .main-navigation ul.main-header-menu > li:not(:first-child){
    padding-left: 1rem;
  }
  #primary-site-navigation-desktop ul.sub-menu li{
    padding-top: 10px;

    & a.menu-link{
      padding-left: 10px!important;
      padding-right: 10px!important;
    }

    &:last-child{
      padding-bottom: 10px;
    }
  }
}

@media only screen and (min-width: 993px) and (max-width: 1415px) {
  .site-header-primary-section-left {
    grid-column: 1;
    grid-row: 1;
  }
  .site-header-primary-section-center {
    grid-column: 1 / -1;
    grid-row: 2;
    padding-top: 1rem;
  }
  .site-header-primary-section-right{
    grid-column: 3;
    grid-row: 1;
  }
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.btn{
  position: relative;
  display: inline-block;
  padding: 13px 20px 12px 20px;
  font-size: 16px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: .5px;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
  text-align: center;
  box-shadow: unset !important;
  text-decoration: unset !important;
  color: var(--black);
  background-color: var(--yellow);
  border: 2px solid var(--yellow);
  border-radius: 80px;

  &:hover,
  &:focus{
    color: var(--white);
    background-color: var(--blue);
    border-color: var(--blue);
  }
}
.btn.secondary{
  color: var(--white);
  background-color: var(--blue);
  border: 2px solid var(--blue);

  &:hover,
  &:focus{
    color: var(--blue);
    background-color: var(--ice);
    border-color: var(--teal);
  }
}
.btn.white-blue{
  color: var(--blue);
  background-color: var(--white);
  border: 2px solid var(--teal);

  &:hover,
  &:focus{
    color: var(--blue);
    background-color: var(--ice);
    border: 2px solid var(--blue);
  }
}
.btn.white-yellow{
  color: var(--blue);
  background-color: var(--white);
  border: 2px solid var(--teal);

  &:hover,
  &:focus{
    color: var(--black);
    background-color: var(--yellow);
    border-color: var(--yellow);
  }
}
.underline a,
#primary-site-navigation-desktop a.menu-link{
  position: relative;
  padding: 0!important;
}
.underline a::after,
#primary-site-navigation-desktop a.menu-link::after{
  content: '';
  width: 0%;
  height: 2px;
  background: var(--ice);
  position: absolute;
  bottom: -2px;
  left: 0;
  right: 0;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
}

.underline a:hover::after,
#primary-site-navigation-desktop a.menu-link:hover::after,
#primary-site-navigation-desktop a.menu-link:focus::after{
  width: 100%;
}
#primary-site-navigation-desktop .current-menu-item a.menu-link::after{
  width: 100%;
  background-color: var(--teal);
}

.no-click > .menu-link{
  cursor: default;

  &::after{
    display: none!important;
  }
}

.sub-menu li a::after{
  display: none!important;
}
.sub-menu li a:hover,
.sub-menu li a:focus{
  background-color: #F5FAFA;
}
nav.breadcrumbs .trail-begin {
    display: none;
}

/*--------------------------------------------------------------
## Blog
--------------------------------------------------------------*/
.ast-separate-container #content .ast-container{
  padding-left: 25px;
  padding-right: 25px;
}
.ast-blog-layout-4-grid .ast-article-inner, .ast-blog-layout-5-grid .ast-article-inner{
  padding: 0;
  box-shadow: none;
  border: 0;
}
.blog-layout-4 .post-thumb img{
    border-radius: var(--radius);
    aspect-ratio: 16/9;
    object-fit: cover;
}
.blog-layout-4 .post-content,
.blog-layout-4 .entry-title a,
.blog-layout-4 .ast-read-more{
  color: var(--blue);
}
.blog-layout-4 .entry-title a:hover,
.blog-layout-4 .entry-title a:focus,
.blog-layout-4 .ast-read-more:hover,
.blog-layout-4 .ast-read-more:focus{
  color: var(--teal);
}
.blog-layout-4 .ast-read-more{
  position: relative;
  text-decoration: none!important;
  margin-top: 10px;
  font-weight: 500;
  display: inline-block;
}
.ast-pagination-circle .ast-pagination .page-numbers{
  border-color: var(--teal);
  border-width: 2px;
  color: var(--blue);
}
.ast-pagination .page-numbers.current, 
.ast-pagination .page-numbers:focus, 
.ast-pagination .page-numbers:hover{
  background-color: var(--teal);
  color: var(--white);
}
.ast-pagination-circle .ast-pagination .prev, 
.ast-pagination-circle .ast-pagination .next{
  color: var(--blue);
  font-weight: 500;
  border: 0;
  padding: 0;
  background-color: var(--white);

  &:hover,
  &:focus{
    color: var(--teal);
    background-color: var(--white);
  }
}
/*---- Filter----*/
a.ast-post-filter-single{
  position: relative;
  padding: 0 5px 0!important;
  margin-left: 5px;
  margin-right: 5px;
}
a.ast-post-filter-single::after {
  content: '';
  width: 0%;
  height: 2px;
  background: var(--yellow);
  position: absolute;
  bottom: 0px;
  left: 0;
  right: 0;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
}
a.ast-post-filter-single:hover::after,
a.ast-post-filter-single:focus::after,
a.ast-post-filter-single.active::after{
  width: 100%;
}

/*--------------------------------------------------------------
### Single Post
--------------------------------------------------------------*/
.single-post #primary blockquote{
  border-color: var(--ice);
}
.custom-single-navigation{
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 2rem;

  & a{
    padding: 20px;
    color: var(--blue);
    font-weight: 500;

    &:hover,
    &:focus{
      color: var(--teal);
    }
  }
}
.single-post #primary article{
  padding: 0!important;
}
.single-post #primary .post-thumb-img-content{
    margin: 3rem auto 2rem;

  & img{
    border-radius: var(--radius);
    max-width: 600px;
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
  }
}
.single-post #primary p a,
.single-post #primary ol a,
.single-post #primary ul a{
  text-decoration: underline!important;
}
.single-post #primary .wp-block-button a{
  position: relative;
  display: inline-block;
  padding: 13px 20px 12px 20px;
  font-size: 16px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: .5px;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
  text-align: center;
  box-shadow: unset !important;
  text-decoration: unset !important;
  border-radius: 80px;
  margin-top: 10px;

  &::after{
    content: "\f061";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-left: 10px;
  }
}
.ast-related-posts-title-section,
.ast-related-posts-title{
  margin-bottom: 0;
  padding-bottom: 0;
}
#primary .ast-related-posts-wrapper .ast-related-post-link {
  position: relative;
  text-decoration: none!important;
  margin-top: 10px;
  font-weight: 500;

    &::after {
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding-left: 10px;
  }
}

/*--------------------------------------------------------------
## Custom Element
--------------------------------------------------------------*/
.careers-list-single{
  display: flex;
  align-items: center;
  justify-content: space-between; 
  padding: 16px 20px;
  background-color: #E7F0F0;
  color: var(--blue);
  font-weight: 700;
  font-size: 20px;
  line-height: normal;
  width: 100%;
  margin-bottom: 20px;
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
}
.careers-list-single:hover,
.careers-list-single:focus{
  background-color: var(--blue);
  color: var(--white);
}

.solutions-row a{
    position: relative;
    font-weight: 500;
    
    &::after{
        content: "\f054";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        padding-left: 10px;
    }
    &::before{
        content: '';
        width: 0%;
        height: 2px;
        background: var(--ice);
        position: absolute;
        bottom: -2px;
        left: 0;
        right: 0;
        -webkit-transition: all .5s;
        -o-transition: all .5s;
        transition: all .5s;
    }
}
.solutions-row a:hover::before,
.solutions-row a:focus::before{
    width: 100%;
}
/*--------------------------------------------------------------
### ROI Calculator
--------------------------------------------------------------*/
.roi-stats,
.roi-inputs{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
}
.input-container{
  margin-top: 1rem;
}
.pill-box{
  background-color: var(--white);
  border-radius: var(--radius);
  padding: 2rem;
}
.pill-box span{
  font-size: 20px;
  line-height: normal;
  font-weight: 500;
}
/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-above-footer-wrap,
.site-primary-footer-wrap,
.site-below-footer-wrap{
  padding-left: 25px;
  padding-right: 25px;
}
.site-above-footer-wrap[data-section="section-above-footer-builder"] .ast-builder-grid-row,
.site-below-footer-wrap[data-section="section-below-footer-builder"] .ast-builder-grid-row,
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row{
  padding: 0;
}
.ast-footer-social-1-wrap .ast-builder-social-element{
  border: 1px solid var(--white);
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;

  & svg{
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
  }
}
.site-above-footer-wrap a,
.site-primary-footer-wrap a,
.site-below-footer-wrap a{
  color: var(--white);

  &:hover,
  &:focus{
    color: var(--ice);
  }
}
.site-below-footer-wrap{
  position: relative;

  &::before{
    content: '';
    width: 100%;
    height: 1px;
    background-color: var(--white);
    position: relative;
    top: -20px;
  }
}

.widget{
  margin-bottom: 0;
}
.widget h1,
.widget h2,
.widget h3,
.widget h4,
.widget h5,
.widget h6 {
  margin-bottom: 5px;
}

.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"],
.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"]{
  display: grid;
  grid-template-columns: repeat(3,1fr);
  column-gap: 20px;
  row-gap: 0;
}
.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] ul li{
  padding-top: 15px;
}

.ast-header-break-point .site-footer-primary-section-2{
  margin-top: 25px;
}
/*--------------------------------------------------------------
# Media - MAX
@media only screen and (min-width: 769px) and (max-width: 992px) {}
--------------------------------------------------------------*/
@media only screen and (max-width: 992px) {
  .ast-mobile-header-wrap .ast-button-wrap .menu-toggle.main-header-menu-toggle{
    padding: 0!important;
  }
  #ast-hf-mobile-menu{
    margin-left: 25px;
    margin-right: 25px;
    border-top: 1px solid #e7f0f0;
  }
  #ast-hf-mobile-menu .ast-menu-toggle {
    width: 100%;
    text-align: right;
    box-shadow: none;
    border: none;
    outline: none;
    padding: 0 !important;
    right: 0px !important;
    color: var(--blue);
    background: transparent;
  }
  .ast-header-break-point .ast-icon.icon-arrow svg{
    margin: auto 0;
    margin-bottom: auto;
    top: 5px;
    width: 20px;
    height: 20px;
    color: var(--blue);
  }
  .sub-menu li{
    padding-left: 1rem;

    & .ast-icon{
      display: none!important;
    }
  }
  .ast-header-button-2{
    padding-top: 0!important;
  }
  /*---- Tab ----*/
  .e-n-tabs-heading .e-n-tab-title{
    color: var(--white);
    background-color: var(--blue)!important;
  }
  .e-n-tabs-heading .e-n-tab-title .e-n-tab-title-text{
    color: var(--white);

    &::after{
      content: '\f078';
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      padding-left: 5px;
    }
  }
  .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text::after{
    content: '\f077';
  }
  /*---- ROI ----*/
  .roi-stats,
  .roi-inputs{
    grid-template-columns: 1fr;
  }
}

@media only screen and (max-width: 768px) {
  .ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"]{
    grid-template-columns: 1fr;
  }
}
/*--------------------------------------------------------------
# Media - MIN
--------------------------------------------------------------*/
@media only screen and (min-width: 993px) {
  /*---- Tab ----*/
  .e-n-tab-title .e-n-tab-title-text{
    position: relative;
    padding-bottom: 10px;
  }
  .e-n-tab-title .e-n-tab-title-text::after {
    content: '';
    width: 0%;
    height: 2px;
    background: var(--yellow);
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
  }

  .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text::after,
  .e-n-tab-title:hover .e-n-tab-title-text::after,
  .e-n-tab-title:focus .e-n-tab-title-text::after{
    width: 100%;
  }

  /*---- Footer ----*/
  .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"]{
    max-width: 750px;
    width: 100%;
  }
  
}