
/* ############################ */
/* ########## Misc ########## */
/* ############################ */

@font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-Light.ttf') format('truetype');
     font-weight: 300;
     font-style: normal;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-LightItalic.ttf') format('truetype');
     font-weight: 300;
     font-style: italic;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-Regular.ttf') format('truetype');
     font-weight: 400;
     font-style: normal;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-Italic.ttf') format('truetype');
     font-weight: 400;
     font-style: italic;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-SemiBold.ttf') format('truetype');
     font-weight: 600;
     font-style: normal;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-SemiBoldItalic.ttf') format('truetype');
     font-weight: 600;
     font-style: italic;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-Bold.ttf') format('truetype');
     font-weight: 700;
     font-style: normal;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-BoldItalic.ttf') format('truetype');
     font-weight: 700;
     font-style: italic;
 }
 @font-face {
     font-family: 'Titillium Web';
     src: url('../fonts/TitilliumWeb-Black.ttf') format('truetype');
     font-weight: 900;
     font-style: normal;
 }
 

.img-responsive { display: inline-block; }

.sidebar-starter + * { overflow: hidden; }

/* ########################################## */
/* ################# Footer ################# */
/* ########################################## */

.site-footer { background-color: #012957; color: #FFF; }

.site-footer h3 { font-size: 1.2em; font-weight: 400; }

.site-footer h3 .line:after { background-color: #FFF; height: 1px; margin: 15px 0 0; width: 100%; }

.site-footer h3, .site-footer a { color: #FFF; }

.site-footer .upper-footer { padding: 40px 0; }

.site-footer .footer-text { font-size: 0.725em; line-height: 1.5em; margin: 0 0 30px; }

.site-footer .footer-links { display: block; margin: 0 0 30px -5px; }
.site-footer .footer-link { display: inline-block; margin: 0 5px; }

.site-footer .social-media-links { display: inline-block; list-style: none; margin: 0 10px 30px -5px; padding: 0; }
.site-footer .social-media-links li { display: inline-block; list-style: none; margin: 0 5px; padding: 0; }
.site-footer .social-media-links li a { background-color: transparent; border: 1px solid #FFF; color: #FFF; display: block; height: 40px; line-height: 40px; text-align: center; width: 40px; }

.site-footer .lower-footer { border-top: 1px solid #FFF; padding: 10px 0; }

.site-footer .footer-support-menu { text-align: center; }
.site-footer .footer-support-menu ul { list-style: none; display: inline-block; margin: 0; padding: 0; }
.site-footer .footer-support-menu ul li { list-style: none; display: inline-block; margin: 0 5px; padding: 0; }
.site-footer .footer-support-menu ul li a { background-color: transparent; font-size: 0.875em; }
.site-footer .footer-support-menu ul li a:hover, footer .footer-support-menu ul li a:focus { color: #FFF; text-decoration: underline; }

.footer-twitter-code { background-color: #FFF; margin: 0 0 30px; }
.footer-facebook-code { margin: 0 0 30px; overflow: hidden; }
.footer-facebook-code iframe { display: block; }

.site-footer .copyright { font-size: 0.725em; text-align: center; }

.site-footer .additional { font-size: 0.725em; text-align: center; }

@media screen and (min-width: 992px) {
     .site-footer .copyright { text-align: left; }
     .site-footer .additional { text-align: right; }
}

/* ############################## */
/* ############ Misc ############ */
/* ############################## */

ul.benefits { list-style: none; padding: 0; }
ul.benefits li { color: #332E77; font-size: 1.2em; font-weight: 600; line-height: 1.4em; list-style: none; padding: 0 0 40px 97px; position: relative; }
ul.benefits li:before { background: url('/wp-content/themes/SATPE2/assets/images/satpe-tick.png') no-repeat; content: ''; height: 57px; left: 0; position: absolute; top: 5px; width: 64px; }

.smaller-text { color: #012957; font-size: 0.875em; line-height: 1.2em; }
.larger-text { color: #012957; font-size: 1.25em; }

/* ########################################## */
/* ############ Category Filters ############ */
/* ########################################## */

.category-filters { text-align: center; }
.category-filters .category-introduction-text { font-size: 1.5em; margin-bottom: 45px; }
.category-filters .category-introduction-text p { line-height: 1.125em; }
.category-filters .category-filter { background-color: #012957; color: #FFF; display: inline-block; font-weight: 600; margin: 0 5px 15px; padding: 12px 20px; }
.category-filters .category-filter.current, .category-filters .category-filter:hover { background-color: #CDDFF6; color: #012957;
          transition: background-color 0.2s linear, color 0.2s linear;
     -moz-transition: background-color 0.2s linear, color 0.2s linear;
      -ms-transition: background-color 0.2s linear, color 0.2s linear;
       -o-transition: background-color 0.2s linear, color 0.2s linear;
  -webkit-transition: background-color 0.2s linear, color 0.2s linear; text-decoration: none; }

/* ########################################## */
/* ############## Post Listing ############## */
/* ########################################## */

.post-listings {  }

.post-listings .page-title { color: #012957; margin: 0 0 35px; padding: 0 0 35px; position: relative; text-align: center; }
.post-listings .page-title:after { background-color: #012957; border-radius: 2px; bottom: 0; content: ''; display: block; height: 5px; left: 50%; margin: 0 0 0 -52px; position: absolute; width: 105px; }

/* ########################################## */
/* ########## Post Listing Article ########## */
/* ########################################## */

article.content-excerpt { background-color: #FFF; margin: 0 0 30px; overflow: hidden; }

article.content-excerpt .post-thumbnail { background-color: #0661D1; width: 100%; }
article.content-excerpt .post-thumbnail .post-thumbnail-inner { display: block; width: 100%; }
article.content-excerpt .post-thumbnail .post-thumbnail-inner.no-image { padding: 35px 0; text-align: center; }
article.content-excerpt .post-thumbnail .post-thumbnail-inner.has-image .featured-image { height: 202px; width: 100%; }

article.content-excerpt .entry-wrapper { padding: 20px 20px 10px; }

article.content-excerpt .entry-header .entry-title { font-size: 1.2em; margin: 0; padding: 0 0 10px; }
article.content-excerpt .entry-header .entry-title .line { display: none; }
article.content-excerpt .entry-header .entry-title a { color: #342E78; }

article.content-excerpt .entry-header .entry-content { font-weight: 500; }

article.content-excerpt .entry-date { color: #342E78; font-size: 1em; margin: 0; padding: 0 0 10px; }

article.content-excerpt .entry-date i { font-size: 0.875em; line-height: 1em; margin-right: 5px; position: relative; 
             transform: translateY(-2px);
        -moz-transform: translateY(-2px);
         -ms-transform: translateY(-2px);
          -o-transform: translateY(-2px);
     -webkit-transform: translateY(-2px); vertical-align: middle; }
article.content-excerpt .entry-date a { color: #342E78; }

article.content-excerpt .entry-content .entry-content-text { color: #000; font-size: 0.875em; line-height: 1.25em; margin: 0 0 10px; }

article.content-excerpt .entry-content .entry-content-link { margin: 0; padding: 20px 0; text-align: center; }

article.content-excerpt .entry-footer .cat-links, article.content-excerpt .entry-footer .edit-links { display: block; }

article.content-excerpt .entry-footer a { background-color: #E3E6EF; color: #000; display: inline-block; font-size: 0.75em; font-weight: 700; margin: 0 0 10px; padding: 3px 10px; }
article.content-excerpt .entry-footer a:hover { background-color: #C1C4CD; text-decoration: none; }

/* ########################################## */
/* ############## Post Article ############## */
/* ########################################## */

.post-article article { background-color: #FFF; margin: 0 0 30px; padding: 40px 25px 30px; overflow: hidden; }

.post-article article .entry-content { margin: 0 0 30px; }

.post-article article .references { background-color: #E3E6EF; font-size: 0.875em; margin: 0 0 30px; padding: 30px 30px 10px; }
.post-article article .references h4 { color: #000; font-size: 1.5em; margin: 0 0 20px; }

.post-article article .entry-footer a { background-color: #E3E6EF; color: #000; display: inline-block; font-size: 0.75em; font-weight: 700; line-height: 1.25em; margin: 0 0 10px; padding: 7px 10px; position: relative; }
.post-article article .entry-footer a:hover, .post-article article .entry-footer a:focus { background-color: #C1C4CD; text-decoration: none; }

.post-article article .nav-links:after { clear: both; content: ''; display: table; }

.post-article article .nav-links i { margin: -5px 0 0; position: absolute; top: 50%; }

.post-article article .nav-links .nav-previous { float: right; max-width: 40%; }
.post-article article .nav-links .nav-previous a { padding-right: 20px; }
.post-article article .nav-links .nav-previous a i { right: 8px; }

.post-article article .nav-links .nav-next { float: left; max-width: 40%; }
.post-article article .nav-links .nav-next a { padding-left: 20px; }
.post-article article .nav-links .nav-next a i { left: 8px; }

.post-article article .entry-footer .cat-links, .post-article article .entry-footer .edit-links { display: block; }


/* ########################################## */
/* ############## Standard Page ############# */
/* ########################################## */

.standard-template .standard-page-content { background-color: #FFF; margin: 0 0 30px; padding: 40px 25px 30px; overflow: hidden; }

/* ########################################## */
/* ############## Post Resource ############# */
/* ########################################## */

.post-resource .resource-title { color: #000; font-size: 1.5em; font-weight: 700; margin: 0 0 30px; }
.post-resource .resource-description { margin: 0 0 30px; }
.post-resource .resource-description *:last-child { margin: 0; }

/* Attributes */
.post-resource .resource-details { margin: 0 -15px 30px; }

.post-resource .resource-details .resource-attributes { display: block; margin: 0 0 30px; padding: 0 15px; width: 100%; }
.post-resource .resource-details .resource-image { display: block; padding: 0 15px; width: 100%; }

.post-resource .resource-details .resource-attributes.show-full, .post-resource .resource-details .resource-image.show-full { width: 100%; }

.post-resource .resource-details .resource-attributes .attributes-title { border-bottom: 1px solid #000; font-size: 0.875em; font-weight: 700; line-height: 1.375em; margin: 0 0 20px; padding: 0 0 10px; }

.post-resource .resource-details .resource-attributes .resource-attribute { display: block; font-size: 0.875em; margin: 0 0 5px; }
.post-resource .resource-details .resource-attributes .attribute-name { display: inline; font-weight: 700; }
.post-resource .resource-details .resource-attributes .attribute-value { display: inline; }

/* Recommendation */
.post-resource .recommendation { background-color: #CDDFF6; margin: 0 0 30px; padding: 25px 25px 0 25px; }
.post-resource .recommendation .recommendation-content { display: block; float: left; margin: 0 0 25px; padding: 0 40px 0 0; width: calc(100% - 220px); }
.post-resource .recommendation .recommendation-author { display: block; float: left; margin: 0 0 25px; width: 220px; }

.post-resource .recommendation .recommendation-content .recommendation-title { font-size: 1.125em; font-weight: 700; margin: 0 0 20px; }
.post-resource .recommendation .recommendation-content .recommendation-text { color: #000; font-size: 0.75em; }
.post-resource .recommendation .recommendation-content .recommendation-text p { line-height: 1.5em; }

.post-resource .recommendation .recommendation-author .recommendation-author-image { margin: 0 0 10px; }
.post-resource .recommendation .recommendation-author .recommendation-author-name { font-weight: 700; }

/* Order Form */
.post-resource .order-form h3 { font-size: 1.375em; margin: 0 0 15px; }
.post-resource .order-form h3 .line { display: none; }
.post-resource .order-form .order-button { font-size: 1.25em; font-weight: 700; margin: 0 0 30px; text-align: center; width: 100%; }
.post-resource .order-form .order-form-hidden { display: none; margin: 0 0 30px; }
.post-resource .order-form .order-form-hidden.active { display: block; }

/* Resource Links */
.post-resource .resource-links { margin: 0 0 30px; }
.post-resource .resource-links h3 { font-size: 1.375em; margin: 0 0 15px; }
.post-resource .resource-links h3 .line { display: none; }

.post-resource .resource-links .resource-links-text p { font-size: 0.875em; }
.post-resource .resource-links .resource-links-text *:last-child { margin: 0 0 15px; }

.post-resource .resource-links .resource-link { color: #000; display: inline-block; font-size: 0.875em; font-weight: 600; line-height: 1.25em; margin-bottom: 15px; max-width: 100%; padding: 0 30px 0 0; position: relative; width: auto; vertical-align: middle; }
.post-resource .resource-links .resource-link:hover, .post-resource .resource-links .resource-link:focus { text-decoration: none; }

.post-resource .resource-links .resource-link .resource-link-wrapper { display: inline-block; padding: 10px 3px 10px 35px; position: relative; }
.post-resource .resource-links .resource-link .resource-link-wrapper:after { background-color: #FBD357; bottom: 0; content: ''; display: block; height: 2px; left: 50%; position: absolute; 
          transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
          transition: width 0.2s ease;
     -moz-transition: width 0.2s ease;
      -ms-transition: width 0.2s ease;
       -o-transition: width 0.2s ease;
  -webkit-transition: width 0.2s ease; width: 0; }
.post-resource .resource-links .resource-link:hover .resource-link-wrapper:after, .post-resource .resource-links .resource-link:focus .resource-link-wrapper:after { width: 100%; }

.post-resource .resource-links .resource-link i { color: #012957; font-size: 1.5em; position: absolute; left: 3px; top: 50%;
          transform: translateY(-50%);
     -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
  -webkit-transform: translateY(-50%); }

/* Footer Info */
.post-resource .resource-footer-info { border-top: 1px solid #666199; color: #000; padding: 30px 0; font-size: 0.75em; }
.post-resource .resource-footer-info p { line-height: 1.5em; }

/* Membership Required */
.post-resource .membership-required, .post-article .membership-required { background-color: #FFF; margin: 0 -15px 30px; padding: 30px; }
.post-resource .membership-required h2,  .post-article .membership-required h2 { color: #000; font-size: 1.5em; padding: 0 15px; text-align: center; }
.post-resource .membership-required h2 .line,  .post-article .membership-required h2 .line { display: none; }

@media screen and (min-width: 768px) {
     .post-resource .resource-details .resource-attributes { float: left; margin: 0; width: 35%; }
     .post-resource .resource-details .resource-image { float: left; width: 65%; }
}

@media screen and (min-width: 992px) {
}

/* ########################################## */
/* ############## Links Panel ############### */
/* ########################################## */

.links-panel { background-color: #FFF; margin: 0 0 5px; }
.links-panel .links-panel-title { background-color: #012957; color: #FFF; font-size: 1.25em; font-weight: 700; padding: 20px 30px; }
.links-panel .links-panel-content { padding: 20px 30px; }
.links-panel .links-panel-content > a { color: #000; display: block; padding: 10px 0; text-decoration: underline; }


/* ########################################## */
/* ############### Icon List ################ */
/* ########################################## */

.icon-list-control { }

.icon-list-control .icon-list-header { text-align: center; }

.icon-list-control .icon-list { display: flex; flex-wrap: wrap;   }
.icon-list-control .icon-list .il-item { display: flex; flex-direction: column; text-align: center; }
.icon-list-control .icon-list .il-item .il-item-icon { flex: 0; margin: 0 0 20px; }
.icon-list-control .icon-list .il-item .il-item-icon i { font-size: 3em; padding: 30px; }
.icon-list-control .icon-list .il-item .il-item-title { flex: 0; }
.icon-list-control .icon-list .il-item .il-item-title h4 { margin: 0; }

.icon-list-control .icon-list-link { display: block; padding: 30px 0; text-align: center; width: 100%;  }

/* Original Layout */
.icon-list-control.original .icon-list { margin: 0 -15px;  }
.icon-list-control.original .icon-list .il-item { margin: 0; padding: 0 15px 30px; width: 100%; }
.icon-list-control.original .icon-list .il-item .il-item-icon.with-circle { background-color: #CDDFF6; border-radius: 50%; height: 115px; line-height: 115px; margin: 0 auto 20px; padding: 0 30px; width: 115px; }
.icon-list-control.original .icon-list .il-item .il-item-icon.with-circle i { color: #FFF; padding: 0; }
.icon-list-control.original .icon-list .il-item .il-item-title { margin: 0 0 15px; }
.icon-list-control.original .icon-list .il-item .il-item-text { flex: 1; font-weight: 400; margin: 0 0 30px; }

@media screen and (min-width: 480px) {
     .icon-list-control.original .icon-list .il-item { width: 50%; }
}

@media screen and (min-width: 768px) {
     .icon-list-control.original .icon-list .il-item { width: 33.3333%; }
}

@media screen and (min-width: 992px) {
     .icon-list-control.original .icon-list .il-item { width: 25%; }
}

/* Blocks Layout */
.icon-list-control.blocks .icon-list { margin: 0 0 30px;  }
.icon-list-control.blocks .icon-list .il-item { background-color: #012957; margin: 0 1px 2px; padding: 20px 15px; transition: background-color 0.2s linear; width: 100%; }
.icon-list-control.blocks .icon-list .il-item:hover { background-color: #023C7F; text-decoration: none; }
.icon-list-control.blocks .icon-list .il-item .il-item-icon i { color: #FFF; padding: 0; }
.icon-list-control.blocks .icon-list .il-item .il-item-title { margin: 0; }
.icon-list-control.blocks .icon-list .il-item .il-item-title h4 { color: #FFF;  }
.icon-list-control.blocks .icon-list .il-item .il-item-title h4 .line { display: none; }

@media screen and (min-width: 480px) {
     .icon-list-control.blocks .icon-list .il-item { padding: 30px 15px; width: calc(50% - 2px); }
     .icon-list-control.blocks .icon-list .il-item .il-item-icon i { padding: 15px; }
}

@media screen and (min-width: 768px) {
     .icon-list-control.blocks .icon-list .il-item { padding: 40px 15px; width: calc(33.3333% - 2px); }
     .icon-list-control.blocks .icon-list .il-item .il-item-icon i { padding: 30px; }
}


/* ########################################### */
/* ############### Video List ################ */
/* ########################################### */

.video-list h3 { font-size: 1.2em; padding-bottom: 15px; text-align: center; }

.video-list h3 .line:after { display: none; }

.video-list .vl-item { background-color: #FFF; border-radius: 10px; box-shadow: 0 0 10px rgba(0,0,0,0.1); display: block; margin: 0 0 30px; padding: 15px; overflow: hidden; text-decoration: none; }

.video-list .vl-item .vl-item-image { margin: 0 0 20px; position: relative; width: 100%; }

.video-list .vl-item .vl-item-image .video-length { background-color: rgba(0,0,0,0.8); bottom: 0; color: #FFF; font-size: 12px; left: 0; padding: 0px 8px; position: absolute; }

.video-list .vl-item .vl-item-title { text-align: center; }

.video-list .vl-item .vl-item-text { color: #000; font-weight: 500; margin: 0 0 20px; text-align: center; }

@media screen and (min-width: 768px) {
}

@media screen and (min-width: 992px) {
}

/* ########################################## */
/* ############## Video Panel ############### */
/* ########################################## */

.video-panel { align-items: center; display: block; display: flex; flex-wrap: wrap; padding: 0; }
.video-panel.reversed { flex-direction: row-reverse; }
.video-panel .video-code { margin: 0 0 30px; }
.video-panel .video-code iframe { aspect-ratio: 16 / 9; height: auto; width: 100%; }
.video-panel .video-content { margin: 0 0 30px; padding: 0 80px 0 0; }

@media screen and (min-width: 768px) {
}

@media screen and (min-width: 992px) {
     .video-panel { align-items: center; display: flex; }
}
/* ########################################## */
/* ############ Membership List ############# */
/* ########################################## */

.membership-levels h1 { font-size: 2em; text-align: center; }
.membership-levels h1 .line:after { margin-bottom: 45px; }

.membership-level { background-color: #CDDFF6; margin: 0 0 45px; overflow: hidden; }

.membership-level .membership-level-head { background-color: #012957; color: #FFF; padding: 20px; text-align: center; }
.membership-level .membership-level-head h3 { color: #FFF; margin: 0 0 5px; }
.membership-level .membership-level-head h3 .line { display: none; }
.membership-level .membership-level-head h3 .membership-level-price { font-size: 1.2em; }

.membership-level.active .membership-level-head { background-color: #E2C542; color: #012957; }
.membership-level.active .membership-level-head h3 { color: #012957; }

.membership-level .membership-level-details { padding: 15px; position: relative; text-align: center; }
.membership-level .membership-level-details .membership-level-description { color: #113762; font-size: 1.325em; line-height: 1.75em; padding: 20px 20px 30px; text-align: center; }
.membership-level .membership-level-details .membership-level-button { padding: 15px 15px 30px; text-align: center; width: 100%; }
.membership-level .membership-level-details .membership-level-button .btn { display: inline-block; font-size: 1.5em; padding: 18px 0 23px; width: 50%; }

/* Partners */
.partners-benefits-list .partner { align-items: center; border-bottom: 1px solid #012957; color: #012957; display: flex; padding: 15px 0; }
.partners-benefits-list .partner .partner-discount { font-size: 0.75em; font-weight: 600; line-height: 1.2em; padding: 0 15px; text-align: center; width: 50%; }
.partners-benefits-list .partner .partner-image { text-align: center; width: 50%; }
.partners-benefits-list .partner .partner-image img { max-width: 100%; }


/* ########################################## */
/* ############ Membership Panel ############ */
/* ########################################## */

/* Basic Panel For All Membership Pages */
.membership-panel { background-color: #FFF; box-shadow: 0 0 15px 4px rgba(0,0,0,0.15); margin: 0 0 30px; padding: 25px; }
.membership-panel h1 { font-size: 2em; text-align: center; }
.membership-panel h3 { font-size: 1.5em; } 
.membership-panel h3 .line { display: none; } 

/* Table View */
.membership-panel table { margin: 0 0 30px; }
.membership-panel table th { border-bottom: 1px solid #999; padding: 5px 10px; text-align: left; }
.membership-panel table td { padding: 5px 10px; vertical-align: top; }
.membership-panel table td p { line-height: 1.5em; margin: 0!important; padding: 0; vertical-align: top; }

/* List View */
.membership-panel ul { list-style: none; margin: 0 0 30px; padding: 0; }
.membership-panel ul li { padding: 0 0 10px; }
.membership-panel ul li strong { margin: 0 10px 0 0; }

/* Links For Buttons */
.pmpro_actionlinks a#pmpro_actionlink-levels,
.pmpro_actionlinks a#pmpro_actionlink-profile,
.pmpro_actionlinks a#pmpro_actionlink-password,
.pmpro_actionlinks a#pmpro_actionlink-cancel-all { border: none; cursor: pointer; display: inline-block; font-size: 1em; font-weight: 400; margin: 0 10px 15px 0; padding: 7px 20px; text-decoration: none; transition: all 0.2s linear; -moz-transition: all 0.2s linear; -ms-transition: all 0.2s linear; -o-transition: all 0.2s linear; -webkit-transition: all 0.2s linear; }

.pmpro_actionlinks a#pmpro_actionlink-levels, .pmpro_actionlinks a#pmpro_actionlink-profile, .pmpro_actionlinks a#pmpro_actionlink-password, .pmpro_actionlinks a#pmpro_actionlink-cancel-all { background-color: #FBD357; color: #012957; padding: 7px 20px 7px 40px; position: relative; }
.pmpro_actionlinks a#pmpro_actionlink-levels:after, .pmpro_actionlinks a#pmpro_actionlink-profile:after, .pmpro_actionlinks a#pmpro_actionlink-password:after, .pmpro_actionlinks a#pmpro_actionlink-cancel-all:after { content: '\f044'; display: block; font-family: 'Font Awesome 5 Pro'; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-style: normal; font-variant: normal; font-weight: 400; left: 14px; position: absolute; top: 6px; text-rendering: auto; }
.pmpro_actionlinks a#pmpro_actionlink-levels:after { content: '\f002'; }
.pmpro_actionlinks a#pmpro_actionlink-cancel-all:after { content: '\f2d3'; top: 7px; }

.pmpro_actionlinks a:hover, .pmpro_actionlinks a:focus { background-color: #4F47B7!important; color: #FFF!important; text-decoration: none!important; }

.pmpro_account-membership-levelname .pmpro_actionlinks a:hover, .pmpro_account-membership-levelname .pmpro_actionlinks a:focus { background-color: transparent!important; color: #337ab7!important; text-decoration: underline!important; }

/* Misc */
#pmpro_account .pmpro_box { border-top: none; }
#pmpro_account .pmpro_box h3 { margin: 0 0 20px; }
#pmpro_account .pmpro_box p { margin: 0 0 15px; }

/* My Membership Table */
#pmpro_account #pmpro_account-membership { border-bottom: 1px solid #CDCDCD; }

#pmpro_account .pmpro_box ul { margin: 0 0 30px; }

/* Form Submit */
form.pmpro_form .pmpro_submit { text-align: left; }

/* Checkout */ 
.pmpro_payment-account-number, .pmpro_payment-expiration, .pmpro_payment-cvv {
     border: 1px solid rgba(51,46,119,0.5); padding: 15px 25px 0;
}

/* ########################################## */
/* ############## Latest Posts ############## */
/* ########################################## */

.latest-posts h2 { margin-bottom: 30px; text-align: center; }
.latest-posts h2 .line:after { background-color: #0661D1; margin: 15px 0; }

.latest-posts .lp-footer-cta { clear: both; display: block; padding: 30px 0; text-align: center; width: 100%; }

/* ########################################## */
/* ############## Page List ############## */
/* ########################################## */

.page-list h3 { margin-bottom: 40px; text-align: center; }
.page-list h3 .line:after { background-color: #012957; margin: 15px 0; }

.page-list .page-item { background-color: #FFF; box-shadow: 0 0 10px rgba(0,0,0,0.1); display: block; margin: 0 0 30px; padding: 15px; overflow: hidden; text-decoration: none; }

.page-list .page-item .page-thumbnail { background-color: #342E78; margin: 0 0 20px; width: 100%; }
.page-list .page-item .page-thumbnail.no-image { padding: 35px 0; text-align: center; }
.page-list .page-item .page-thumbnail.has-image .featured-image { height: 202px; width: 100%; }

.page-list .page-item .page-item-content { text-align: center; }

.page-list .page-item .page-item-content .page-item-text { color: #000; font-weight: 500; margin: 0 0 20px; }

.page-list .page-item .btn { margin: 0 0 20px; text-align: center; }


/* #################################### */
/* ############ Banner CTA ############ */
/* #################################### */

.banner-cta-row { background-attachment: fixed; background-position: center; background-repeat: no-repeat; background-size: cover; padding: 120px 0px; position: relative; }

.banner-cta-row .banner-cta-content { background-color: rgba(51,16,119,0.9); padding: 50px 50px 0; text-align: center; width: 100%; }

.banner-cta-row .banner-cta-content h2  { color: #FFF; margin: 0 0 50px; }

.banner-cta-row .banner-cta-content .banner-cta-text  { color: #FFF; font-size: 1.375em; margin: 0 0 50px; }

.banner-cta-row .banner-cta-content .banner-cta-buttons { margin: 0 0 30px; }
.banner-cta-row .banner-cta-content .banner-cta-buttons .btn { font-size: 1.375em; font-weight: 700; margin: 0 20px 20px; padding: 12px 30px; }

/* ################################### */
/* ############ Image CTA ############ */
/* ################################### */

.image-cta-control, .image-cta-control .image-cta-image, .image-cta-control .image-cta-image img { width: 100%; }

.image-cta-control .container .image-cta-image { margin: 0 0 30px; }
.image-cta-control .image-cta-image .desktop-image { display: none; }
.image-cta-control .image-cta-image .mobile-image { display: block; }

@media screen and (min-width: 768px) {
     .image-cta-control .image-cta-image .desktop-image { display: block; }
     .image-cta-control .image-cta-image .mobile-image { display: none; }
}

/* #################################### */
/* ########### Partner Logos ########## */
/* #################################### */

.partner-logos {  }

.partner-logos h2 { margin: 0 0 40px; text-align: center; }
.partner-logos h2 .line:after { background-color: #012957; margin: 15px 0; }

.partner-logos .partners-carousel { height: 60px; margin: 0 0 30px; overflow: hidden; padding: 0 50px; position: relative; width: 100%; }

/* To align the images in the centre */
.partner-logos .partners-carousel .slick-track { display: flex; align-items: center; }
.partner-logos .partners-carousel .slick-slide { display: inline-block !important; float: none; vertical-align: middle; }

.partner-logos .partners-carousel .pl-image  { padding: 0 15px; text-align: center; }
.partner-logos .partners-carousel .pl-image img { display: inline-block; max-height: 60px; max-width: 100%; }

/* Slick Control */
.partner-logos .partners-carousel .slick-control { color: #FFF; cursor: pointer; font-size: 1.5em; height: 100%; line-height: 1em; opacity: 1; position: absolute; text-align: center; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); -webkit-transition: background-color 0.2s linear; transition: background-color 0.2s linear; width: 50px; }
.partner-logos .partners-carousel .slick-control .icon-wrapper { background-color: rgba(51, 46, 119, 0.35); border-radius: 50%; display: block; height: 40px; left: 50%; position: absolute; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); -webkit-transition: background-color 0.2s linear; transition: background-color 0.2s linear; width: 40px; }
.partner-logos .partners-carousel .slick-control .icon-wrapper i { display: block; left: 50%; margin: -2px 0 0 -1px; position: absolute; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.partner-logos .partners-carousel .slick-control.slick-hidden { display: none; }
.partner-logos .partners-carousel .slick-control.slick-prev { left: 0px; }
.partner-logos .partners-carousel .slick-control.slick-next { right: 0px; }
.partner-logos .partners-carousel .slick-control.slick-next .icon-wrapper i { margin: -2px 0 0 1px; }
.partner-logos .partners-carousel .slick-control:hover .icon-wrapper { background-color: rgba(51, 46, 119, 1); }
/* Slick Control End */

/* #################################### */
/* ########### Document List ########## */
/* #################################### */

.document-list { margin-bottom: 22px; }

.document-list .document-item { color: #000; display: block; font-weight: 600; margin-bottom: 15px; padding: 0; position: relative; width: 100%; }
.document-list .document-item:hover, .document-list .document-item:focus { text-decoration: none; }

.document-list .document-item .document-item-wrapper { display: inline-block; padding: 10px 3px 10px 35px; position: relative; }
.document-list .document-item .document-item-wrapper:after { background-color: #FBD357; bottom: 0; content: ''; display: block; height: 2px; left: 50%; position: absolute; 
          transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
          transition: width 0.2s ease;
     -moz-transition: width 0.2s ease;
      -ms-transition: width 0.2s ease;
       -o-transition: width 0.2s ease;
  -webkit-transition: width 0.2s ease; width: 0; }
.document-list .document-item:hover .document-item-wrapper:after, .document-list .document-item:focus .document-item-wrapper:after { width: 100%; }

.document-list .document-item i { color: #012957; font-size: 1.5em; position: absolute; left: 3px; top: 50%;
          transform: translateY(-50%);
     -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
  -webkit-transform: translateY(-50%); }

.document-list.landing-panel { text-align: center; }
.document-list.landing-panel .document-item { display: inline-block; max-width: 100%; padding: 0 30px; width: auto; vertical-align: middle; }

.document-list.standard-panel h3 { font-size: 1.5em; }
.document-list.standard-panel h3 .line { display: none; }

@media screen and (min-width: 768px) {
     .document-list.landing-panel .document-item { max-width: 49%; }
}

@media screen and (min-width: 992px) {
     .document-list.landing-panel .document-item { max-width: 33%; }
}


/* ################################################# */
/* #################### Gallery #################### */
/* ################################################# */

/* Slick Control */
.image-gallery .slick-control { color: #000; cursor: pointer; font-size: 2.5em; height: 100%; line-height: 1em; opacity: 0.7; position: absolute; text-align: center; text-shadow: 1px 1px 10px rgba(255,255,255,0.4), -1px -1px 10px rgba(255,255,255,0.4); top: 50%; 
       -webkit-transform: translateY(-50%); 
               transform: translateY(-50%); 
       -webkit-transition: opacity 0.2s linear; 
               transition: opacity 0.2s linear; width: 50px; }
.image-gallery .slick-control .icon-wrapper { display: block; height: 40px; left: 50%; position: absolute; top: 50%; 
       -webkit-transform: translate(-50%, -50%); 
               transform: translate(-50%, -50%); width: 40px; }
.image-gallery .slick-control.slick-hidden { display: none; }
.image-gallery .slick-control.slick-prev { left: 0px; }
.image-gallery .slick-control.slick-next { right: 0px; }
.image-gallery .slick-control.slick-next .icon-wrapper { margin: -2px 0 0 -1px; }
.image-gallery .slick-control:hover { opacity: 1; }
/* Slick Control End */

.image-gallery { margin: 0 0 60px; position: relative; }

.image-gallery.gallery-size-post h3 { font-size: 1.5em; }
.image-gallery.gallery-size-post h3 .line { display: none; }

.image-gallery.gallery-size-page h3 { text-align: center; }

.image-gallery .gallery-viewport { margin-bottom: 20px; }
.image-gallery .gallery-viewport .gallery-viewport-carousel { position: relative; }
.image-gallery .gallery-viewport .gallery-viewport-carousel .carousel-item img { display: block; width: 100%; }

.image-gallery .gallery-thumbnails { display: none; }
.image-gallery .gallery-thumbnails .gallery-thumbnails-carousel { position: relative; }
.image-gallery .gallery-thumbnails .gallery-thumbnails-carousel .carousel-item { cursor: pointer; margin: 0; padding: 0 10px 0 10px; width: 180px; }
.image-gallery .gallery-thumbnails .gallery-thumbnails-carousel .carousel-item span { color: #FFF; display: block; height: 100px; }

@media screen and (min-width: 768px) {
     .image-gallery .gallery-thumbnails { display: block; }
}


/* ################################################# */
/* ################ Text and Image ################# */
/* ################################################# */

.text-image-row { align-items: center; display: flex; flex-wrap: wrap; padding: 0 0 60px; }

.text-image-row.row-reverse { flex-direction: row-reverse; }

.text-image-row .tai-image { padding: 0 30px 30px; width: 100%; }
.text-image-row .tai-image img { width: 100%; }

.text-image-row .tai-content { align-items: center; justify-content: center; display: flex; padding: 0 30px 30px; position: relative; width: 100%; }

.text-image-row .tai-text { max-width: 525px; }

.text-image-row .tai-text *:first-child { margin-top: 0; }
.text-image-row .tai-text *:last-child { margin-bottom: 0; }

.no-padding-row .text-image-row { padding: 0; }
.no-padding-row .text-image-row .tai-image { padding: 0 0 30px;}
.no-padding-row .text-image-row .tai-content { padding: 0 30px 30px;}

@media screen and (min-width: 992px) {
    .text-image-row .tai-image { width: 50%; }
    .text-image-row .tai-content { justify-content: flex-start; padding: 0 50px; position: relative; width: 50%; }
    .text-image-row.row-reverse .tai-content { justify-content: flex-end; }
}






/* #################################### */
/* ############ Quick Links ########### */
/* #################################### */

.quick-links { margin: 0 0 30px; }

.quick-links .quick-link { color: #000; display: block; font-size: 0.875em; font-weight: 600; line-height: 1.25em; margin-bottom: 15px; padding: 0; position: relative; width: 100%; }
.quick-links .quick-link:hover, .quick-links .quick-link:focus { text-decoration: none; }

.quick-links .quick-link .quick-link-wrapper { display: inline-block; padding: 10px 3px 10px 35px; position: relative; }
.quick-links .quick-link .quick-link-wrapper:after { background-color: #FBD357; bottom: 0; content: ''; display: block; height: 2px; left: 50%; position: absolute; 
          transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
          transition: width 0.2s ease;
     -moz-transition: width 0.2s ease;
      -ms-transition: width 0.2s ease;
       -o-transition: width 0.2s ease;
  -webkit-transition: width 0.2s ease; width: 0; }
.quick-links .quick-link:hover .quick-link-wrapper:after, .quick-links .quick-link:focus .quick-link-wrapper:after { width: 100%; }

.quick-links .quick-link i { color: #012957; font-size: 1.5em; position: absolute; left: 3px; top: 50%;
          transform: translateY(-50%);
     -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
  -webkit-transform: translateY(-50%); }

.quick-links.landing-panel { text-align: center; }
.quick-links.landing-panel .quick-link { display: inline-block; max-width: 100%; padding: 0 30px; width: auto; vertical-align: middle; }

.quick-links.standard-panel h3 { font-size: 1.5em; }
.quick-links.standard-panel h3 .line { display: none; }

@media screen and (min-width: 768px) {
     .quick-links.landing-panel .quick-link { max-width: 33%; }
}

@media screen and (min-width: 992px) {
     .quick-links.landing-panel .quick-link { max-width: 25%; }
}

/* #################################### */
/* ########### Table Control ########## */
/* #################################### */

.table-control { margin: 0 0 30px; }

.table-control h3 { font-size: 1.5em; }
.table-control h3 .line { display: none; }

.table-control table { text-align: left; width: 100%; }
.table-control table th, .table-control table td { border: 2px solid #FFF; font-size: 0.75em; font-weight: 700; padding: 5px 10px; vertical-align: top; }
.table-control table th { background-color: #4F72BE;  color: #FFF;  text-transform: uppercase; }
.table-control table tbody tr td { background-color: #E9EBF4; color: #000; font-weight: 600; }
.table-control table tbody tr:nth-child(2n) td { background-color: #D0D5E8; }

/* #################################### */
/* ######### Accordion Control ######## */
/* #################################### */

.accordion-control { margin: 0 0 30px; }

.accordion-control .accordion-heading { border-bottom: 2px solid #4F72BE; color: #4F72BE; font-size: 1.25em; font-weight: 600; padding: 5px 0; position: relative; }
.accordion-control .accordion-heading:before, .accordion-control .accordion-heading:after { background-color: #4F72BE; content: ''; display: block; height: 3px; margin: -1px; position: absolute; right: 15px; top: 50%; transform-origin: center center; transition: transform 0.3s ease; width: 15px; }
.accordion-control .accordion-heading:before { transform: rotateZ(-90deg); }

.accordion-control.open .accordion-heading:before { transform: rotateZ(0deg); }

.accordion-control .accordion-content { height: 0; overflow: hidden; transition: height 0.3s ease; }
.accordion-control .accordion-content .accordion-content-inner { position: relative; padding: 15px 0; }

/* #################################### */
/* ############### Forms ############## */
/* #################################### */

.form-group { display: block; padding: 0 0 15px; position: relative; }

.form-group label { left: 0; line-height: 48px; padding: 0 25px; pointer-events: none; position: absolute; top: 0;
          transition: color 0.5s linear, font-size 0.5s ease, line-height 0.5s ease, top 0.5s ease;
     -moz-transition: color 0.5s linear, font-size 0.5s ease, line-height 0.5s ease, top 0.5s ease;
      -ms-transition: color 0.5s linear, font-size 0.5s ease, line-height 0.5s ease, top 0.5s ease;
       -o-transition: color 0.5s linear, font-size 0.5s ease, line-height 0.5s ease, top 0.5s ease;
  -webkit-transition: color 0.5s linear, font-size 0.5s ease, line-height 0.5s ease, top 0.5s ease; z-index: 2; }
.form-group label.filled-in, .form-group label.focused { color: #000; font-size: 0.675em; line-height: 25px; }

.form-group input { margin: 0; }

.form-group input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),
.form-group select,
.form-group textarea { background-color: #FFF; border: 1px solid rgba(51,46,119,0.5); height: 48px; line-height: 28px; margin: 0; outline: none; overflow: hidden; padding: 20px 25px 0; width: 100%; }

.form-group textarea { height: 120px; line-height: 26px; }

.form-group select { padding-left: 19px; }

.form-group input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):hover, .form-group input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):focus,
.form-group select:hover, .form-group select:focus
.form-group textarea:hover, .form-group textarea:focus { border: 1px solid rgba(51,46,119,1); }

.form-group input[type=submit],
.form-group input[type=button],
.form-group button { background-color: #012957; border: none; color: #FFF; height: 48px; line-height: 48px; overflow: hidden; padding: 0; padding: 0 50px; text-align: center; transition: all 0.2s linear; -moz-transition: all 0.2s linear; -ms-transition: all 0.2s linear; -o-transition: all 0.2s linear; -webkit-transition: all 0.2s linear; }

.form-group input[type=submit]:hover, .form-group input[type=submit]:focus
.form-group input[type=button]:hover, .form-group input[type=button]:focus
.form-group button:hover, .form-group button:focus { background-color: #4F47B7; color: #FFF; text-decoration: none; }

/* #################################### */
/* ########## Newsletter Form ######### */
/* #################################### */

.newsletter-form-wrapper { margin-bottom: 30px; text-align: center; }

.newsletter-form-wrapper .newsletter-title { color: #000; font-size: 1.75em; text-align: center; }
.newsletter-form-wrapper .newsletter-title .line { display: none; }

.newsletter-form-wrapper .form-group { display: inline-block; padding: 0 4px 15px; vertical-align: top; }
.newsletter-form-wrapper .form-group input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]) { width: 300px; }
.newsletter-form-wrapper .form-group label { padding: 0 40px; }

/* ########################################## */
/* ############## Search Form ############### */
/* ########################################## */

.search-header { margin: 0 0 45px; }
.search-header .search-title { color: #000; font-size: 1.5em; font-weight: 600; margin: 0 0 20px; text-align: center; }
.search-header .search-title .line:after { height: 3px; }
.search-header .search-description { color: #000; font-size: 1.25em; font-weight: 400; text-align: center; }

.search-form-row { background-color: #012957; padding: 20px 0; }
.search-form-row #searchform { background-color: #FFF; position: relative; width: 100%; }

.search-form-row #searchform .form-group { padding: 0; }
.search-form-row #searchform .search-field { background-color: transparent; border: none; display: block; margin: 0; padding-right: 85px; width: 100%; }
.search-form-row #searchform label { color: #012957; font-weight: 600; }
.search-form-row #searchform button { background-color: transparent; border: none; color: #012957; display: block; height: 48px; line-height: 48px; margin: 0; padding: 0; position: absolute; right: 0; text-align: center; top: 0; width: 70px; }
.search-form-row #searchform .close-search { background-color: #0661D1; color: #FFF; cursor: pointer; font-size: 0.875em; font-weight: 700; left: 50%; padding: 5px 25px; position: absolute; text-transform: uppercase; top: 100%; transform: translateX(-50%); -webkit-transform: translateX(-50%); }

.search-form-sidebar { background-color: #012957; padding: 20px; }
.search-form-sidebar #searchform { background-color: #FFF; position: relative; width: 100%; }
.search-form-sidebar #searchform .form-group { padding: 0; }
.search-form-sidebar #searchform .search-field { background-color: transparent; border: none; display: block; margin: 0; padding-right: 65px; width: 100%; }
.search-form-sidebar #searchform label { color: #012957; font-weight: 600; }
.search-form-sidebar #searchform button { background-color: transparent; border: none; color: #012957; display: block; height: 48px; line-height: 48px; margin: 0; padding: 0; position: absolute; right: 0; text-align: center; top: 0; width: 50px; }

/* ########################################## */
/* ############## Login Form ################ */
/* ########################################## */

/* ########################################## */
/* ######## Theme My Login Override ######### */
/* ########################################## */

.tml-custom-form { background-color: #FFF; box-shadow: 0 0 15px 4px rgba(0,0,0,0.15); margin: 0 0 30px; padding: 25px 25px 10px;  }
.tml-custom-form h1 { font-size: 1.375em; margin: 0 0 10px; }
.tml-custom-form h1 .line { display: none; } 
.tml-custom-form .form-description { color: #000; font-size: 0.75em; }
.tml-custom-form .form-description *:last-child { margin: 0 0 15px; }

.tml-custom-form .tml .tml-label { margin: 0; }

.tml-custom-form .tml .tml-links { list-style: none; margin: 0 0 15px; padding: 0; }
.tml-custom-form .tml .tml-links li { margin: 0 15px 0 0; padding: 8px 0; }

/* WordPress Requirements */


/* Alignments */
.alignleft { /*rtl:ignore*/ float: left; /*rtl:ignore*/ margin-right: 1rem; }
   
@media only screen and (min-width: 768px) {
     .alignleft { /*rtl:ignore*/ margin-right: calc(2 * 1rem); }
}
   
.alignright { /*rtl:ignore*/ float: right; /*rtl:ignore*/ margin-left: 1rem; }
   
@media only screen and (min-width: 768px) {
     .alignright { /*rtl:ignore*/ margin-left: calc(2 * 1rem); }
}
   
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }