/* Resets */
  *{line-height:150%;box-sizing:border-box;}
  br{line-height:100%}
  html{font-size:18px;}
  @media (min-width:480px) and (max-width:1240px){html{font-size:calc(16px + 2 * ((100vw - 480px) / (1240 - 480)));}}
  @media (max-width:480px){html{font-size:16px;}}
  
  html, body{background-color:#ffffff;margin:0;padding:0;-webkit-text-size-adjust: none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}
  a{text-decoration:none;transition:0.2s all;}
  a *:not(svg):not(path){transition:0.2s all;}
  
  img{max-width:100%;height:auto;}
  
  h1,h2,h3,h4,h5,h6,
  .h1,.h2,.h3,.h4,.h5,.h6{margin-bottom:0.5em;margin-top:0.5em;line-height:120%;}
  h1 *,h2 *,h3 *,h4 *,h5 *,h6 *{line-height:100%;}
  
  p, ul, ol{margin:1rem 0;}
  
  h1,.h1{font-size:3em;}/*54px*/
  h2,.h2{font-size:2.5em;}/*45px*/
  h3,.h3{font-size:2em;}/*36px*/
  h4,.h4{font-size:1.5em;}/*27px*/
  h5,.h5{font-size:1.25em;}/*22.5px*/
  h6,.h6{font-size:1em;}/*18px*/
  
  hr{background-color:rgba(0,0,0,0.1);border:none;height:1px;margin:2em auto;}
  hr.spacer{background-color:transparent;}
  hr.thick{background-color:var(--primary-color);height:4px;width:100px;margin:2em auto;}
  
  input, textarea, select{background-color:#fff;border:2px solid var(--med-grey);color:inherit;font:inherit;box-sizing:border-box;padding:0.5rem 1.25rem;-webkit-appearance: none;-moz-appearance:none;transition:0.3s all;}
  input[type="checkbox"]{background: initial;border: initial;-webkit-appearance: auto;-moz-appearance:auto;padding: 0;height: 16px;width: 16px;}
  input[type="submit"]{border:none;cursor:pointer;transition:0.2s all;padding:calc( 0.5rem + 1px ) calc( 0.75rem + 1px );}
  ::-webkit-file-upload-button {border-radius:5px;font-size:inherit;-webkit-appearance: none;padding:0.2em 0.5em;}
  ::-webkit-input-placeholder {color: inherit;opacity:0.7;}
  ::-moz-placeholder {color: inherit;opacity:0.7;}
  :-ms-input-placeholder {color: inherit;opacity:0.7;}
  :-moz-placeholder {color: inherit;opacity:0.7;}
  input:focus, textarea:focus, select:focus{border:1px solid var(--primary-color);box-shadow:0 0 0 4px rgba(255,255,255,0.1);outline:none;}
  
  select{border:1px solid var(--med-grey);border-radius:3px;overflow:hidden; white-space:nowrap; text-overflow:ellipsis;max-width:100%;}
  select[multiple]{padding:0;height:auto;}
  select[multiple] option{padding:0.5rem 0.75rem;margin:-0.3rem 0;}
  select[multiple] option:first-child{margin-top:0;}
  select[multiple] option:last-child{margin-bottom:0;}
  
  select{background-image: url('data:image/svg+xml;urf8,<svg viewBox="0 0 27 7" xmlns="http://www.w3.org/2000/svg" width="25"><polyline fill="none" stroke="currentColor" points="1,1 6,6 11,1" stroke-linejoin="round" stroke-linecap="round"/></svg>');background-position: right 50%;background-repeat:no-repeat;padding-right:36px;}
  
  .select-container{display:inline-block;overflow: hidden;position:relative;box-sizing:border-box;}
  .select-container:before{border: 6px solid transparent;border-top-color: currentColor;content: '';position: absolute;right:0.75rem;top: 1.25em;}
  .select-container select{cursor:pointer;padding-right: 2rem;position:relative;}
  .select-container select::-ms-expand{display: none;}
  
  .embed{position: relative;height: 0;overflow: hidden;}
  .embed iframe,
  .embed object,
  .embed embed{position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index:0;}
  .embed--16-9{padding-bottom: 56.25%;}
  iframe {border: 0 !important;}
  
  .hide,
  .screen-reader-text{display:none;}
    
/* Layout */
  .sitecontainer{background-color:#fff;display:flex;flex-direction:column;margin:0 auto;max-width:100%;min-height:100vh;position:relative;}
  .main{display:flex;flex-direction:column;flex: 1 0 auto;justify-content: stretch;opacity:1;}
  .content{flex: 1 0 auto;}
  
  .wrapper{box-sizing:border-box;margin:0 auto;max-width:1260px;padding:0 25px;position:relative;width:100%;}
  .wrapper--wide{max-width:1440px;}
  .wrapper--tight{max-width:760px;}
  
  /* iPhone X safe areas */
    @supports( padding: max(0px) ) {
      div[class^="wrapper"]{padding-right:max(25px, env(safe-area-inset-right)) !important;padding-left:max(25px, env(safe-area-inset-left)) !important;}
    }
  @media(max-width:480px){
    .wrapper{padding:0 15px;}
    @supports( padding: max(0px) ) {
      div[class^="wrapper"]{padding-right:max(15px, env(safe-area-inset-right)) !important;padding-left:max(15px, env(safe-area-inset-left)) !important;}
    }
  }
  
  .flex-split{display:flex;justify-content:space-between;flex-wrap:wrap;}
  .flex-split--center{align-items:center;}
  .flex-split__item{flex:0 1 auto;}
  .flex-split__item--flow{flex:100;}/* for something that SHOULD wrap like a p or h*/
  .flex-split__item:first-child{padding-right:30px;}

  /* Item Grid */
    .grid{display: flex;flex-wrap:wrap;margin:0 -20px;}
    .grid__item{flex:1;padding:20px;box-sizing:border-box;}
    .grid__item--nopad{padding:0 20px;}
  
    .grid--top{align-items: flex-start;}
    .grid--center{align-items: center;}
    .grid--bottom{align-items: flex-end;}
  
    .grid__item--top{align-self: flex-start;}
    .grid__item--center{align-self: center;}
    .grid__item--bottom{align-self: flex-end;}
  
    /* fix width of items by item or container */
      .grid__item--half,
      .grid--halves .grid__item{flex: 0 0 50%;}
      .grid__item--third,
      .grid--thirds .grid__item{flex: 0 0 33.3333%;}
      .grid__item--fourth,
      .grid--fourths .grid__item{flex: 0 0 25%;}
      .grid__item--fifth,
      .grid--fifths .grid__item{flex: 0 0 20%;}
      
      .grid__item--350{flex:0 0 390px;}
    
    /* loners center */
      .grid--centered{justify-content: center;}
  
    /* loners spread */
      .grid--spaced{justify-content: space-between;}
    
    @media (max-width: 979px) {
      .grid{margin:0 -15px;}
      .grid--979-fulls .grid__item{flex: 0 0 100% !important;}
      .grid--979-halves .grid__item{flex: 0 0 50% !important;}
      .grid--979-thirds .grid__item{flex: 0 0 33.3333% !important;}
      
      .grid__item{padding:15px;}
      
      .grid__item--350{flex:0 0 250px;}
      
      .grid__item--979-full{flex: 0 0 100% !important;}
      .grid__item--979-half{flex: 0 0 50% !important;}
      .grid__item--979-third{flex: 0 0 33.3333% !important;}
    }
    @media (max-width: 767px) {
      .grid{margin:0 -10px;}
      .grid--767-fulls .grid__item{flex: 0 0 100% !important;}
      .grid--767-halves .grid__item{flex: 0 0 50% !important;}
      .grid--767-thirds .grid__item{flex: 0 0 33.3333% !important;}
      
      .grid__item{padding:10px;}
    
      .grid__item--767-full{flex: 0 0 100% !important;}
      .grid__item--767-half{flex: 0 0 50% !important;}
      .grid__item--767-third{flex: 0 0 33.3333% !important;}
      
      .grid__item--350{flex:0 0 100% !important;}
    }
    @media (max-width: 480px) {
      .grid__item{flex: 0 0 100% !important;}
      
      .grid__item--480-half{flex: 0 0 50% !important;}
      .grid__item--480-third{flex: 0 0 33.3333% !important;}
    }
  
  .center-text{text-align:center;}
  .left-text{text-align:left;}
  .right-text{text-align:right;}
  
  /* Visibility */
    .visible-phone {display: none !important;}
    .visible-tablet {display: none !important;}
    .hidden-desktop {display: none !important;}
    @media (min-width: 768px) and (max-width: 979px) {
      .visible-tablet,
      .hidden-desktop {display: block !important;}
      .hidden-tablet,
      .visible-desktop {display: none !important ;}
    }
    @media (max-width: 767px) {
      .visible-phone,
      .hidden-desktop {display: block !important;}
      .hidden-phone,
      .visible-desktop {display: none !important;}
    }
  
/* WP Admin Bar Fix */
  .admin-bar .navbar--fixed{top:32px;}
  @media (max-width: 782px) {.admin-bar .navbar--fixed{top:46px;}}
  @media (max-width: 600px) {.admin-bar .navbar--scrolled{top:0;}}
  
/* Template issue fix */
  #template-pre-content{flex:0 0 auto;}
  #template-post-content{flex:0 0 auto;}

/* Modal */
  .mfp-container{display:flex;}
  .mfp-container:before{display:none;}
  .mfp-content{margin:auto!important;}
  .mfp-content figcaption{margin-top:0;}
  .mfp-container .modal{margin:auto;}
  .modal .closebutton{position:fixed;top:1rem;right:1rem;font-size:36px;text-align:center;width:54px;}
  .modal .content > *{max-width:400px;overflow:hidden;}
  .modal .content >.alignfull{max-width:1024px;}
  .modal .content >.alignwide{max-width:700px;}
  .modal .content *[class$="__inner-container"] > *{max-width:100%;}
  .modal .content .wp-block-media-text,
  .modal .content .wp-block-group,
  .modal .content .wp-block-cover,
  .modal .content .wp-block-image{padding-left:0;padding-right:0}