.shg-box {
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  flex-direction: column;
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  /**
   * While `flex: 1` is enough here, we need to supply the rest
   * of the parameters (`1 auto`) to keep compatibility with IE11.
   * Otherwise, IE11 flex would break.
   */
  flex: 1 1 auto;
}

.shg-box > .shg-box-content {
  z-index: 4;
  position: relative;
}

.shg-box-vertical-align-wrapper, .shg-box-vertical-center-wrapper {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.shg-box-vertical-align-top {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

.shg-box-vertical-align-center, .shg-box-vertical-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.shg-box-vertical-align-bottom {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}

.shg-box-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  pointer-events: none;
}

.shg-box-video-wrapper {
  /*
    It's very important we don't create a new containing block for shg-box-video-wrapper
    Jarallax uses transforms + position: fixed to achieve it's parallaxing effect

    https://developer.mozilla.org/en-US/docs/Web/CSS/position

    position: fixed
    The element is removed from the normal document flow, and no space is created for the element in the page layout. 
    It is positioned relative to the initial containing block established by the viewport, 

    *
      except when one of its ancestors has a transform, perspective, or filter property set to something other than none 
      (see the CSS Transforms Spec), or the will-change property is set to transform, 
      in which case that ancestor behaves as the containing block. 
    *
  */

  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 {
  background-repeat: no-repeat;
background-size: contain;
padding-top: 0px;
padding-bottom: 100px;
min-height: 1006px;
background-position: center center;
}
@media (min-width: 1200px){#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 {
  margin-top: -2px;
margin-left: 0%;
margin-bottom: 0px;
margin-right: 0%;
padding-top: 4px;
padding-bottom: 168px;
min-height: 820px;
max-width: 5000px;
}
}@media (min-width: 992px) and (max-width: 1199px){#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 {
  margin-top: 0px;
margin-bottom: 0px;
padding-top: 80px;
padding-bottom: 80px;
min-height: 1000px;
}
}@media (min-width: 768px) and (max-width: 991px){#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 {
  min-height: 480px;
}
}@media (max-width: 767px){#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 {
  min-height: 600px;
display: none;
}
#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6, #wrap-s-3b7e75ea-0693-4063-a203-9ba2b420d1a6, #wrap-content-s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 { display: none !important; }}
#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 {
  background-image: url(https://i.shgcdn.com/1f4f9846-f255-4dd0-b046-3cacc138e049/);
}








#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6 > .shg-box-overlay {
  background-color: #fff;
  opacity: 0;
  display: block;
}#s-3b7e75ea-0693-4063-a203-9ba2b420d1a6.shg-box.shg-c {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.shg-row {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  min-height: inherit;
  max-height: inherit;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.shg-row > * {
  min-height: inherit;
  max-height: inherit;
}

[class*=shg-c-xs],
[class*=shg-c-sm],
[class*=shg-c-md],
[class*=shg-c-lg] {
  position: relative;
}

/* 
  Shopify base css adds display none to empty divs
  This causes items in the second column position to shift when
  the first column is empty. In order to overwrite that style,
  we have to manually set empty divs in the column to display block 
  so the whole element holds its positioning on published pages.
*/

.shg-row > div:empty {
  display: block;
}

#s-8da5c8f6-4e89-4949-a1d7-da53df1c094b {
  margin-left: 0%;
margin-right: 0%;
padding-left: 10%;
padding-right: 10%;
}
@media (min-width: 992px) and (max-width: 1199px){#s-8da5c8f6-4e89-4949-a1d7-da53df1c094b {
  padding-left: 0%;
padding-right: 0%;
}
}@media (min-width: 768px) and (max-width: 991px){#s-8da5c8f6-4e89-4949-a1d7-da53df1c094b {
  padding-left: 5%;
padding-right: 5%;
}
}@media (max-width: 767px){#s-8da5c8f6-4e89-4949-a1d7-da53df1c094b {
  background-image: url(https://i.shgcdn.com/0947d114-d98d-434e-88cc-3fd68c34b270/);
background-repeat: no-repeat;
background-size: cover;
padding-left: 20px;
padding-right: 20px;
background-position: center center;
}
}
@media (min-width: 0px) {
[id="s-8da5c8f6-4e89-4949-a1d7-da53df1c094b"] > .shg-row > .shg-c-xs-12 {
  width: 100%;
}

}

@media (min-width: 768px) {
[id="s-8da5c8f6-4e89-4949-a1d7-da53df1c094b"] > .shg-row > .shg-c-sm-6 {
  width: calc(50.0% - 15.0px);
}

}

@media (min-width: 992px) {
[id="s-8da5c8f6-4e89-4949-a1d7-da53df1c094b"] > .shg-row > .shg-c-md-6 {
  width: calc(50.0% - 15.0px);
}

}

@media (min-width: 1200px) {
[id="s-8da5c8f6-4e89-4949-a1d7-da53df1c094b"] > .shg-row > .shg-c-lg-6 {
  width: calc(50.0% - 15.0px);
}

}

.shg-btn.shg-cse, .shg-btn.shg-cse:hover, .shg-btn.shg-cse:focus {
  color: #FFF;
}

.shg-btn {
  cursor: pointer;
  box-sizing: border-box;
}

.shg-btn-text {
  font-weight: ;
  font-family: ;
}

.shg-btn.shg-btn-stretch {
  display: block;
}

.shg-btn:not(.shg-btn-stretch) {
  display: inline-block;
}

.shg-btn-wrapper.shg-align-left {
  text-align: left;
}

.shg-btn-wrapper.shg-align-center {
  text-align: center;
}

.shg-btn-wrapper.shg-align-right {
  text-align: right;
}

#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e {
  padding-top: 15px;
padding-left: 30px;
padding-bottom: 15px;
padding-right: 30px;
border-radius: 0px;
background-color: rgba(0, 0, 0, 1);
text-align: left;
text-decoration: none;
}
#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e:hover {background-color: rgba(51, 51, 51, 1) !important;
text-decoration: none !important;
background-image: none !important;
hover-type: color !important;}#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e:active {background-color: rgba(102, 102, 102, 1) !important;
text-decoration: none !important;
background-image: none !important;
hover-type: color !important;}@media (min-width: 1200px){#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e {
  margin-top: 300px;
margin-left: -12%;
margin-bottom: 3px;
margin-right: -7%;
padding-top: 11px;
padding-bottom: 14px;
padding-right: 30px;
background-color: rgba(151, 221, 211, 1);
}
}

  #s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e-root {
    text-align: left;
  }


#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e.shg-btn {
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  
  font-family: Poppins;
  display:  inline-block ;
}
@media (min-width: 1200px){
  #s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e-root {
    text-align: left;
  }


#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e.shg-btn {
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  
  font-family: Poppins;
  display:  inline-block ;
}
}@media (min-width: 992px) and (max-width: 1199px){
  #s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e-root {
    text-align: left;
  }


#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e.shg-btn {
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  
  font-family: Poppins;
  display:  inline-block ;
}
}@media (min-width: 768px) and (max-width: 991px){
  #s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e-root {
    text-align: left;
  }


#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e.shg-btn {
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  
  font-family: Poppins;
  display:  inline-block ;
}
}@media (max-width: 767px){
  #s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e-root {
    text-align: left;
  }


#s-625c1930-95ae-45a9-8a47-1bb8b4b9fc4e.shg-btn {
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  
  font-family: Poppins;
  display:  inline-block ;
}
}
#s-2f2b471a-36bd-4c16-9984-caedebd30078 {
  padding-top: 0px;
padding-bottom: 100px;
min-height: 1006px;
}
@media (min-width: 1200px){#s-2f2b471a-36bd-4c16-9984-caedebd30078 {
  margin-bottom: 2px;
padding-top: 0px;
padding-bottom: 170px;
min-height: 900px;
display: none;
}
#s-2f2b471a-36bd-4c16-9984-caedebd30078, #wrap-s-2f2b471a-36bd-4c16-9984-caedebd30078, #wrap-content-s-2f2b471a-36bd-4c16-9984-caedebd30078 { display: none !important; }}@media (min-width: 992px) and (max-width: 1199px){#s-2f2b471a-36bd-4c16-9984-caedebd30078 {
  margin-top: 0px;
margin-bottom: 0px;
padding-top: 80px;
padding-bottom: 80px;
min-height: 1000px;
display: none;
}
#s-2f2b471a-36bd-4c16-9984-caedebd30078, #wrap-s-2f2b471a-36bd-4c16-9984-caedebd30078, #wrap-content-s-2f2b471a-36bd-4c16-9984-caedebd30078 { display: none !important; }}@media (min-width: 768px) and (max-width: 991px){#s-2f2b471a-36bd-4c16-9984-caedebd30078 {
  min-height: 480px;
display: none;
}
#s-2f2b471a-36bd-4c16-9984-caedebd30078, #wrap-s-2f2b471a-36bd-4c16-9984-caedebd30078, #wrap-content-s-2f2b471a-36bd-4c16-9984-caedebd30078 { display: none !important; }}@media (max-width: 767px){#s-2f2b471a-36bd-4c16-9984-caedebd30078 {
  padding-bottom: 0px;
min-height: 0px;
}
}







#s-2f2b471a-36bd-4c16-9984-caedebd30078 > .shg-box-overlay {
  background-color: #fff;
  opacity: 0;
  display: block;
}#s-2f2b471a-36bd-4c16-9984-caedebd30078.shg-box.shg-c {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

#s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01 {
  margin-left: 0%;
margin-right: 0%;
padding-left: 10%;
padding-right: 10%;
}
@media (min-width: 992px) and (max-width: 1199px){#s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01 {
  padding-left: 0%;
padding-right: 0%;
}
}@media (min-width: 768px) and (max-width: 991px){#s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01 {
  padding-left: 5%;
padding-right: 5%;
}
}@media (max-width: 767px){#s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01 {
  background-image: url(https://i.shgcdn.com/c7fd5bb5-421c-425c-a000-308708825679/);
background-repeat: no-repeat;
background-size: contain;
margin-top: -49px;
margin-bottom: 0px;
padding-top: 0px;
padding-left: 32px;
padding-bottom: 0px;
padding-right: 32px;
min-height: 325px;
background-position: center center;
}
}
@media (min-width: 0px) {
[id="s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01"] > .shg-row > .shg-c-xs-12 {
  width: 100%;
}

}

@media (min-width: 768px) {
[id="s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01"] > .shg-row > .shg-c-sm-6 {
  width: calc(50.0% - 15.0px);
}

}

@media (min-width: 992px) {
[id="s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01"] > .shg-row > .shg-c-md-6 {
  width: calc(50.0% - 15.0px);
}

}

@media (min-width: 1200px) {
[id="s-ffb5bb95-8fe9-40fd-bb3f-7c639d373d01"] > .shg-row > .shg-c-lg-6 {
  width: calc(50.0% - 15.0px);
}

}

#s-8ad48035-825e-41e6-9156-448c1fd9ea4d {
  margin-left: auto;
margin-right: auto;
padding-top: 10px;
padding-left: 20px;
padding-bottom: 10px;
padding-right: 20px;
border-radius: 2px;
background-color: #252525;
text-align: center;
text-decoration: none;
}
#s-8ad48035-825e-41e6-9156-448c1fd9ea4d:hover {background-color: #424242 !important;
text-decoration: none !important;}#s-8ad48035-825e-41e6-9156-448c1fd9ea4d:active {background-color: #000000 !important;
text-decoration: none !important;}@media (max-width: 767px){#s-8ad48035-825e-41e6-9156-448c1fd9ea4d {
  margin-top: 216px;
margin-left: 0%;
padding-top: 7px;
padding-left: 11px;
padding-bottom: 7px;
padding-right: 11px;
background-color: rgba(148, 220, 209, 1);
}
}

  #s-8ad48035-825e-41e6-9156-448c1fd9ea4d-root {
    text-align: center;
  }


#s-8ad48035-825e-41e6-9156-448c1fd9ea4d.shg-btn {
  color: #ffffff;
  font-size: 14px;
  
  
  
  display:  inline-block ;
}
@media (min-width: 1200px){
  #s-8ad48035-825e-41e6-9156-448c1fd9ea4d-root {
    text-align: center;
  }


#s-8ad48035-825e-41e6-9156-448c1fd9ea4d.shg-btn {
  color: #ffffff;
  font-size: 14px;
  
  
  
  display:  inline-block ;
}
}@media (min-width: 992px) and (max-width: 1199px){
  #s-8ad48035-825e-41e6-9156-448c1fd9ea4d-root {
    text-align: center;
  }


#s-8ad48035-825e-41e6-9156-448c1fd9ea4d.shg-btn {
  color: #ffffff;
  font-size: 14px;
  
  
  
  display:  inline-block ;
}
}@media (min-width: 768px) and (max-width: 991px){
  #s-8ad48035-825e-41e6-9156-448c1fd9ea4d-root {
    text-align: center;
  }


#s-8ad48035-825e-41e6-9156-448c1fd9ea4d.shg-btn {
  color: #ffffff;
  font-size: 14px;
  
  
  
  display:  inline-block ;
}
}@media (max-width: 767px){
  #s-8ad48035-825e-41e6-9156-448c1fd9ea4d-root {
    text-align: center;
  }


#s-8ad48035-825e-41e6-9156-448c1fd9ea4d.shg-btn {
  color: #ffffff;
  font-size: 11px;
  font-weight: 800;
  
  font-family: Poppins;
  display:  inline-block ;
}
}
/*
  $vgutter : 20px
  $hgutter : 10px;
*/

.shg-c:before,
.shg-c:after {
  content: " ";
  display: table;
}

/**
  Ref:
  https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
  https://dnf.slack.com/archives/C0514HB79/p1538741509000100
**/
.shogun-root {
  z-index: 1;
  position: relative;
  isolation: isolate;
}

.shogun-root iframe {
  display: initial;
}

#mc_embed_signup .clear {
  width: auto !important;
  height: auto !important;
  visibility: visible !important;
}

.shg-clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.shogun-image {
  max-width: 100%;
  min-height: inherit;
  max-height: inherit;
  display: inline !important;
  border: 0;
  vertical-align: middle;
}

.shg-fw {
  margin-left: calc(50% - 50vw);
  width: 100vw;
}

.shg-fw .shg-fw {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

div[data-shg-lightbox-switch] {
  cursor: pointer;
}

.shg-lightbox {
  position: fixed;
  z-index: 999999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.85);
}

.shg-lightbox.hidden {
  display: none !important;
}

.shg-lightbox .shg-lightbox-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
}

.shg-lightbox .shg-lightbox-close {
  position: absolute;
  right: 0;
  padding: 5px 0;
  color: #fff;
  font-size: 45px;
  margin-right: 10px;
  line-height: 30px;
  user-select: none;
  cursor: pointer;
  z-index: 1;
}

.shg-lightbox .shg-lightbox-image-container {
  padding: 25px;
}

.shg-lightbox .shg-lightbox-image {
  margin: auto;
  max-height: 90vh;
  max-width: 100%;
}

.shg-lightbox .shg-lightbox-close:hover,
.shg-lightbox .shg-lightbox-close:focus {
  color: #a2a2a2;
  text-decoration: none;
  cursor: pointer;
}

.shg-lightbox .shg-lightbox-nav {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: 35px;
  height: 100px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translate(0%, -50%);
  z-index: 1;
}

.shg-lightbox .shg-lightbox-nav.hidden {
  display: none !important;
}

.shg-lightbox .shg-lightbox-nav.shg-nav-left {
  left: 0;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHdpZHRoPSIxNzkyIiBoZWlnaHQ9IjE3OTIiIHZpZXdCb3g9IjAgMCAxNzkyIDE3OTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgZmlsbD0id2hpdGUiPjxwYXRoIGQ9Ik0xMjAzIDU0NHEwIDEzLTEwIDIzbC0zOTMgMzkzIDM5MyAzOTNxMTAgMTAgMTAgMjN0LTEwIDIzbC01MCA1MHEtMTAgMTAtMjMgMTB0LTIzLTEwbC00NjYtNDY2cS0xMC0xMC0xMC0yM3QxMC0yM2w0NjYtNDY2cTEwLTEwIDIzLTEwdDIzIDEwbDUwIDUwcTEwIDEwIDEwIDIzeiIvPjwvc3ZnPg==);
}

.shg-lightbox .shg-lightbox-nav.shg-nav-right {
  right: 0;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHdpZHRoPSIxNzkyIiBoZWlnaHQ9IjE3OTIiIHZpZXdCb3g9IjAgMCAxNzkyIDE3OTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgZmlsbD0id2hpdGUiPjxwYXRoIGQ9Ik0xMTcxIDk2MHEwIDEzLTEwIDIzbC00NjYgNDY2cS0xMCAxMC0yMyAxMHQtMjMtMTBsLTUwLTUwcS0xMC0xMC0xMC0yM3QxMC0yM2wzOTMtMzkzLTM5My0zOTNxLTEwLTEwLTEwLTIzdDEwLTIzbDUwLTUwcTEwLTEwIDIzLTEwdDIzIDEwbDQ2NiA0NjZxMTAgMTAgMTAgMjN6Ii8+PC9zdmc+);
}

@media screen and (min-width: 769px) {
  .shg-lightbox .shg-lightbox-image-container {
    padding: 50px;
  }
}

.shogun-lazyload:not([src]),
.shogun-lazyloading:not([src]) {
  opacity: 0;
}

.shogun-lazyloaded {
  opacity: 1;
  transition: opacity 300ms;
}

.shogun-root a:empty,
.shogun-root article:empty,
.shogun-root dl:empty,
.shogun-root h1:empty,
.shogun-root h2:empty,
.shogun-root h3:empty,
.shogun-root h4:empty,
.shogun-root h5:empty,
.shogun-root h6:empty,
.shogun-root p:empty,
.shogun-root section:empty,
.shogun-root ul:empty {
  display: unset;
}

.shogun-root div:empty:not(.shopify-section *):not([id^="wistia"]) {
  display: inline-block;
}

/* User Content Animations --> */
[data-animations*="enterviewport"][data-animations*="fadeIn"],
[data-animations*="enterviewport"][data-animations*="zoomIn"] {
  opacity: 0;
}

/* <-- User Content Animations */

.shogun-form-error-msg,
.shogun-form-field-error-msg {
  display: flex;
  align-items: center;
  color: #dc143c;
}

.shogun-badge {
  margin-bottom: 50px;
}

.shogun-badge-container {
  position: fixed;
  right: 0;
  bottom: 0;
  margin-bottom: -10px;
}
