/************************************************

Stylesheet: Global Stylesheet

*************************************************/


/*********************
POSTS & CONTENT STYLES
*********************/
.page-title .vcard {
  border: 0px;
  padding: 0px; }

.byline {
  color: #999; }

.entry-content img {
  max-width: 100%;
  height: auto; }

.entry-content .alignleft, .entry-content img.alignleft {
  margin-right: 1.5em;
  display: inline;
  float: left; }

.entry-content .alignright, .entry-content img.alignright {
  margin-left: 1.5em;
  display: inline;
  float: right; }

.entry-content .aligncenter, .entry-content img.aligncenter {
  margin-right: auto;
  margin-left: auto;
  display: block;
  clear: both; }

.entry-content video, .entry-content object {
  max-width: 100%;
  height: auto; }

.entry-content pre {
  background: #eee;
  border: 1px solid #cecece;
  padding: 10px; }

.wp-caption {
  max-width: 100%;
  background: #eee;
  padding: 5px; }
  .wp-caption img {
    max-width: 100%;
    margin-bottom: 0;
    width: 100%; }
  .wp-caption p.wp-caption-text {
    font-size: 0.85em;
    margin: 4px 0 7px;
    text-align: center; }

.post-password-form input[type="submit"] {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 0.85em 1em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 0.9rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #1779ba;
  color: #fefefe; }
  [data-whatinput='mouse'] .post-password-form input[type="submit"] {
    outline: 0; }
  .post-password-form input[type="submit"]:hover, .post-password-form input[type="submit"]:focus {
    background-color: #14679e;
    color: #fefefe; }

/*********************
IMAGE GALLERY STYLES
*********************/
.gallery {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-right: -15px;
  margin-left: -15px; }

.gallery::before, .gallery::after {
  content: ' ';
  display: table; }

.gallery::after {
  clear: both; }

.gallery.gallery-columns-1 > dl {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-1 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-1 > dl:last-child:not(:first-child) {
    float: right; }

.gallery.gallery-columns-2 > dl {
  width: 50%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-2 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-2 > dl:last-child:not(:first-child) {
    float: right; }

.gallery.gallery-columns-3 > dl {
  width: 33.33333%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-3 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-3 > dl:last-child:not(:first-child) {
    float: right; }

.gallery.gallery-columns-4 > dl {
  width: 25%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-4 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-4 > dl:last-child:not(:first-child) {
    float: right; }

.gallery.gallery-columns-5 > dl {
  width: 20%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-5 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-5 > dl:last-child:not(:first-child) {
    float: right; }

.gallery.gallery-columns-6 > dl {
  width: 16.66667%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-6 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-6 > dl:last-child:not(:first-child) {
    float: right; }

.gallery.gallery-columns-7 > dl {
  width: 14.28571%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-7 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-7 > dl:last-child:not(:first-child) {
    float: right; }

.gallery.gallery-columns-8 > dl {
  width: 12.5%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-8 > dl {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .gallery.gallery-columns-8 > dl:last-child:not(:first-child) {
    float: right; }

.gallery dl {
  width: 100%;
  float: left;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem; }

.gallery dl:last-child:not(:first-child) {
  float: right; }

/*********************
PAGE NAVI STYLES
*********************/
.page-navigation {
  margin-top: 1rem; }

/*********************
COMMENT STYLES
*********************/
#comments .commentlist {
  margin-left: 0px; }

#respond ul {
  margin-left: 0px; }

.commentlist li {
  position: relative;
  clear: both;
  overflow: hidden;
  list-style-type: none;
  margin-bottom: 1.5em;
  padding: 0.7335em 10px; }
  .commentlist li:last-child {
    margin-bottom: 0; }
  .commentlist li ul.children {
    margin: 0; }

.commentlist li[class*=depth-] {
  margin-top: 1.1em; }

.commentlist li.depth-1 {
  margin-left: 0;
  margin-top: 0; }

.commentlist li:not(.depth-1) {
  margin-left: 10px;
  margin-top: 0;
  padding-bottom: 0; }

.commentlist .vcard {
  margin-left: 50px; }
  .commentlist .vcard cite.fn {
    font-weight: 700;
    font-style: normal; }
  .commentlist .vcard time {
    float: right; }
    .commentlist .vcard time a {
      color: #999;
      text-decoration: none; }
      .commentlist .vcard time a:hover {
        text-decoration: underline; }
  .commentlist .vcard img.avatar {
    position: absolute;
    left: 10px;
    padding: 2px;
    border: 1px solid #cecece;
    background: #fff; }

.commentlist .comment_content p {
  margin: 0.7335em 0 1.5em;
  font-size: 1em;
  line-height: 1.5em; }

.commentlist .comment-reply-link {
  float: right; }

/*********************
COMMENT FORM STYLES
*********************/
.respond-form {
  margin: 1.5em 10px;
  padding-bottom: 2.2em; }
  .respond-form form {
    margin: 0.75em 0; }
    .respond-form form li {
      list-style-type: none;
      clear: both;
      margin-bottom: 0.7335em; }
      .respond-form form li label,
      .respond-form form li small {
        display: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url],
    .respond-form form textarea {
      padding: 3px 6px;
      background: #efefef;
      border: 2px solid #cecece;
      line-height: 1.5em; }
      .respond-form form input[type=text]:focus,
      .respond-form form input[type=email]:focus,
      .respond-form form input[type=url]:focus,
      .respond-form form textarea:focus {
        background: #fff; }
      .respond-form form input[type=text]:invalid,
      .respond-form form input[type=email]:invalid,
      .respond-form form input[type=url]:invalid,
      .respond-form form textarea:invalid {
        outline: none;
        border-color: #fbc2c4;
        background-color: #f6e7eb;
        -ms-box-shadow: none;
        box-shadow: none; }
    .respond-form form input[type=text],
    .respond-form form input[type=email],
    .respond-form form input[type=url] {
      max-width: 400px;
      min-width: 250px; }
    .respond-form form textarea {
      resize: none;
      width: 97.3%;
      height: 150px; }

#comment-form-title {
  margin: 0 0 1.1em; }

#allowed_tags {
  margin: 1.5em 10px 0.7335em 0; }

.nocomments {
  margin: 0 20px 1.1em; }

/*********************
SIDEBARS & ASIDES
*********************/
.sidebar li {
  list-style: none; }

.widget ul {
  margin: 0; }

/*********************
FOOTER STYLES
*********************/
.footer {
  clear: both;
  margin-top: 1em; }

/*********************
VISUAL EDITOR STYLES
*********************/
body#tinymce {
  margin: 20px; }

/*********************
PLUGIN STYLES
*********************/
.gform_body ul {
  list-style: none outside none;
  margin: 0; }

/*# sourceMappingURL=style.css.map */

/*********************
BEGIN CUSTOM STYLES
*********************/

@media print, screen and (min-width: 40em) {
	.grid-container {
		padding-right: 6.25rem;
		padding-left: 6.25rem;
	}
}

.grid-container {
width: 100%;
}

a {
color:#F85C44;
}

.contentText a, .contentText a:focus, .contentText a:hover {
color:#F85C44;	
}

p {
letter-spacing: .8px;
line-height: 1.2rem;
}

#logo, #footerLogo {
position: relative;
}

/* Removing for now
#logo:after, #footerLogo:after {
    content: "TM";
    font-size: 10px;
    display: inline-block;
    color: #000000;
    position: absolute;
    font-family: 'TWK Lausanne 800';
    top: -24px;
    right: -20px;
}
*/

.responsive-embed.widescreen {
margin-bottom: 0px;
}

.sponsorHead {
text-align: center;
color: #0000FF;
margin-top: 50px;
margin-bottom: 50px;
}

.sponsorGrid {
text-align: center;
align-items: center;
justify-content: center;
margin-bottom: 50px;
}

.sponsorGrid .cell a {
position: relative;
display: flex;
}

.sponsorOverlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: .5s ease;
  background-color: #0000FF;
}

.sponsorGrid a:hover .sponsorOverlay {
  opacity: 1;
}

.sponsorOverlayText {
  color: white;
  font-family: 'TWK Lausanne 800';
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 90%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}


#footerLogo {
display: inline-block;
margin-bottom: 10px;
margin-top: 10px;
}

#footerLogo:after {
color:#FFFFFF;
top: 0px;
}

.icon::before {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}

p, .programSummary {
font-size: 1rem;
}

/* Hide the donate menu item on the desktop */
.ocDonate {
display: none;	
}

#topSection {
background: #ffffff;
margin-top: 0px !important;
}

footer.footer, footer.upperFooter {
background: #001f3f;
color: #ffffff;
padding-top: 20px;
padding-bottom: 20px;
margin-top: 0px;
}

footer.footer {
margin-top: 10px;
}


footer.footer h5 {
margin-bottom: 0px;
}

span.linkText {
line-height: 2em;
vertical-align: middle;
}

p.copyright {
text-align: right;
font-size: 80%;
}

.headerRow {
/*background: url(../images/banner-bg.jpg) #0000FF no-repeat;*/
background: linear-gradient(
90deg, #0800A1 0%, #0800A1 50%, #010028 75%, #010028 100%);
background-size: cover;
/*margin-bottom: 30px;*/
}

.contentRow, .progRow, .progBlockRow {
padding-top: 50px;
padding-bottom: 50px;
}

.headerRow .headerImage {
width: 100%;
}

.headerRow .grid-container {

}

.progDetails li {
list-style: none;
padding: 5px;
border-top: solid 1px #000000;
}

span.profInfoLabel {
font-family: 'TWK Lausanne 800';
display: inline-block;
}

.progDetails li span {
width: 30%;
}

span.emailLink {
cursor: pointer;
color:#F85C44;
}

span.emailLink i {
padding-right: 2px;
padding-left: 2px;
}

.progRow h3, .progBlockRow h3 {
color:#0000FF;
}


.progBlockRow h3 {
margin-bottom: 30px;
}

.progBlock {
position: relative;
margin-bottom: 50px;
}

.programSummary {
margin-top: 30px;
margin-bottom: 75px;
padding-right: 10px;
padding-left: 10px;
}

.programImage {
text-align: center;
}

.programImage img {
width: 70%;
border-radius: 150px;
border: solid 10px #ffffff;
box-shadow: 0 0 0 20px #e8e4df;
margin: 20px;
}

.learnMoreLink {
vertical-align: middle;
color:#000000;
}

.learnBox {
display: block;
margin-top:30px;
position: absolute;
bottom: 0px;
right: 40px;
}

.headerRow h2 {
/*font-size: 4.6rem;*/
font-size: clamp(2.6rem, 1.1000rem + 6.6667vw, 4.6rem);
line-height: 115%;
letter-spacing: -2px;
}


.headerRow p {
font-size: 1.25rem;	
}

.headerRow .contentImage {
text-align: center;
}

.contentTextLeft {
padding: 0px 25px 0px 0px;
}

.middleBorderenabled {
border-right: dotted 1px #000000;
}

.contentTextRight {
padding: 0px 0px 0px 25px;
}

.contentTextFull {

}

.contentText h3, .contentRow h3, .progBlockRow h3 {
font-size: 1.7rem;
}

.meetRow {
padding-top: 10px;
padding-bottom: 10px;
}

.meetRowLower {
background:#D0E6EA;
padding-top: 20px;
padding-bottom: 20px;
}

.meetText {
padding-left: 20px;
}

.meetRow h5 {
display: inline-block;
margin-bottom: 0px;
vertical-align: middle;
font-size: clamp(1.2rem, 0.6000rem + 2.6667vw, 2rem);
margin-left: 10px;
}

.meetPhoto img {
border-radius: 150px;
margin-top: 20px;
margin-bottom: 20px;
}

.meetRow i.fa-hand-point-right {
transform:rotate(45deg);
color:#000000;
}

.meetRow i.fa-circle {
color:#ffffff;
text-shadow: 1px 1px 7px #000000;
}

h3.single-title {
color: #ca0000;
margin-bottom: 30px;
}

.contentHeading h3  {
text-align: left;
margin-bottom: 20px;
}

#logo img, #footerLogo img {
width: 150px;
}

.regButton {
padding: 10px 20px 9px 20px;
margin: 15px 15px 0px;
font-family: 'TWK Lausanne 800';
/*text-transform: uppercase;*/
/*letter-spacing: 5px;*/
font-size: 1.2rem;
border-radius: 10px;
color: #ffffff !important;
}

.blueButton {
border: solid 3px #ffffff;
background: #001f3f;
}

.blueButton:hover, .blueButton:focus {
background: #ffffff;	
color: #001f3f !important;
border: solid 3px #001f3f;
}


.ltblueButton {
border: solid 3px #ffffff;
background: #27aadf;
}

.ltblueButton:hover, .ltblueButton:focus {
background: #ffffff;	
color: #27aadf !important;
border: solid 3px #27aadf;
}


.orangeButton {
border: solid 3px #f95b45;
background: #dd7948;
}

.orangeButton:hover, .orangeButton:focus {
background: #f95b45;	
}


.subBox span.subHead {
    color: #ffffff;
    text-align: center;
    display: block;
    margin-top: 80px;
    font-family: 'TWK Lausanne 800';
    font-size: 1.2rem;
}

.subBox input[type=email] {
    max-width: 500px;
    margin: 20px auto;
    border-radius: 10px;
    background: #27aadf;
    border: 0px;
    display: inline-block;
}

.subBox div.cell:has(input[type=email]) {
text-align: right;
}

/* Standard syntax */
.subBox ::placeholder {
  color: #000000; /* Replace with your color */
  opacity: 1; /* Fix for Firefox default opacity */
}

/* Edge 12-18 */
.subBox ::-ms-input-placeholder {
  color: #000000;
}

.checkList {
margin-top: 20px;
margin-bottom: 20px;
}

.checkList li {
  list-style: none;
  /*display: flex;*/
  align-items: center;
  margin-bottom: 20px;
}
.checkList li::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    float: left;
    margin-right: 15px;
    margin-top: 10px;
    background: url(../images/t.png) no-repeat center center;
    background-size: contain;
}

/* Force the video container to occupy the full width of its parent */
.wp-video, 
.mejs-container, 
.mejs-embed, 
.mejs-embed body {
    width: 100% !important;
    height: auto !important;
}

/* Ensure the video element inside scales correctly */
.wp-video video, 
video.wp-video-shortcode, 
.mejs-mediaelement video {
    width: 100% !important;
    height: 100% !important;
    position: relative !important;
}

/* Maintain a 16:9 aspect ratio if needed (optional) */
.mejs-container {
    padding-top: 56.25%; /* 9 / 16 * 100 */
}

/* Hide controls by default */
.mejs-container .mejs-controls, .mejs-container .mejs-overlay-play {
    opacity: 0 !important;
    transition: opacity 0.5s linear;
}

/* Show controls on hover */
.mejs-container:hover .mejs-controls, .mejs-container:hover .mejs-overlay-play {
    opacity: 1 !important;
}

hr.blueBar {
background-color: #0000ff;
width: 75%;
height: 3px;
border-radius: 100px;
margin: 0px 10px 20px 0px;
}


.roundCorners {
border-radius: 20px;
}

.infographic {
border-radius: 20px;
border: solid 3px #000000;
}

.top-bar {
padding-left: 0px;
}

.top-bar, .top-bar ul {
background:#ffffff;
margin-top: 10px;
}

.dropdown .is-dropdown-submenu a {
padding: 1rem;
}

.dropdown.menu>li>a {
padding: 0rem .7rem 0rem .7rem !important;
border-right: solid 2px #0000FF;
}

#main-nav > li:last-of-type a, #main-nav > li:nth-of-type(6) a {
border-right: 0px;
}

/*.dropdown.menu>li.is-dropdown-submenu-parent>a::after {
display: none;
}
*/

.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a::after {
display: none;
}

li.menu-item a, .dropdown.menu>li.is-dropdown-submenu-parent>a {
color:#0000FF;
font-family: 'TWK Lausanne 800';
text-transform: uppercase;
font-size: .9rem;
letter-spacing: 1px;
}

.dropdown.menu>li.is-dropdown-submenu-parent>a {
padding-right: 0px;
}

/*
.dropdown.menu>li.is-dropdown-submenu-parent>a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  color:#000000;
  font-size: 20px;	
  margin-right: 10px;
  display: inline-block;
  transition: ease .5s all;
  transition-delay: .01s;
  vertical-align: -10%;
}
*/

.dropdown.menu>li.is-active>a::before {
transition: ease .5s all;
transform: rotate(90deg);
}

#progMenu li a {
font-family: 'dosisregular';
font-size: 1.063rem;
}

#progMenu li.is-dropdown-submenu-parent a {
padding-botttom: 0px !important;
}

#progMenu li.is-submenu-item {
border-bottom: solid 1px #000000;
}

#progMenu li.is-submenu-item a:hover, li.menu-item a:hover {
color: #F85C44;
}

li.current-menu-item a, li.current_page_parent a {
background: transparent !important;
color:#F85C44 !important;
}

.is-dropdown-submenu {
transition: ease .5s all;
border: 0px;
}

#main-nav > li.menu-item:last-of-type a, #offcanvas-nav > li.menu-item:last-of-type a {
font-size: 0;
padding-right: 0px !important;
}

#main-nav > li.menu-item:last-of-type a::before, #offcanvas-nav > li.menu-item:last-of-type a::before {
  font-family: "Font Awesome 5 Brands";
  font-weight: normal;
  content: "\f16d";
  color:#0000FF;
  font-size: 1.6rem;
  position: relative;
  top: 3px;
}

#main-nav > li.menu-item:last-of-type {
padding-right: 0px !important;
}

#main-nav > li {
padding-top: 10px;
padding-bottom: 10px;
}

#main-nav > li.is-active {
background: #D0E6EA;
}

#main-nav li.progMenu {
display: none;
}

footer.upperFooter .inner-footer {
margin-top: 20px;
margin-bottom: 0px;
}

footer.upperFooter i.fa-facebook-f {
font-size: 130%;
}

#socialLinks a {
color: #000000;
padding: 0px .5rem 0px 0px;
}

#contactLinks a {
color:#ffffff;
}

#contactLinks a i.fa-stack-1x {
color:#0b165c;
}

#socialLinks a:hover {
color: #ca0000;
}

.footerSmText {

}

footer.upperFooter .footerSmText {
padding-top: 30px;
padding-bottom: 30px;
}


#buttonBar a {
display: inline-block;
margin-bottom: 0px;
}


#topSection .grid-container {
padding-top: 20px;
padding-bottom: 20px;
}


.separatorRow hr {
width: 100%;
display: inline-block;
}


hr.dotLine {
border-bottom: dotted 1px #000000;
}

a[aria-controls="off-canvas"] {
text-align: right;
}

*:focus {
    outline: none;
}

#buttonBar {
text-align: right;
}

#menuBox {
margin-top: 30px;
}

.programImg {
height: 203px !important;
width: auto;
}

#pricingBoxAddOn .pbUpper {
padding-bottom: 10px;	
margin-bottom: 20px;	
}

#pricingBoxAddOn .pbLower {
padding-top: 10px;
margin-top: 20px;
}

.pbCallButton {
float: right;	
}

.pbDescription {
height: 155px;
margin-bottom: 2rem;
}

.threeColOne, .threeColTwo {
padding-right: 25px !important;
}

.rightColBox {
padding-left: 25px;
}

.contactLinks {
display: block;
margin-bottom: 10px;
}

.progList {
/*border-top: solid 1px #000000;*/
width: 80%;
}

.progList a {
display: block;
color:#000000;
/*border-bottom: solid 1px #000000;*/
/*padding-top: 1rem;*/
/*padding-bottom: 1rem;*/
}

.progList a:hover {
color: #F85C44;
}

.blockBox {
justify-content: center;
padding-top: 20px;
padding-bottom: 20px;
}

.blockBox div.cell:last-of-type {
border-right: 0px !important;
}

.contentText {
background-repeat: no-repeat;
background-size: cover;
}

.meetRow {
background: #FA9E7E;
}

.contentRowMain {
padding: 20px 70px 0px 70px;
}

.noInternalPadding {
padding: 0px;
}

.ctaBox {
display: inline-block;
padding: 20px;
text-align: center;
font-family: 'TWK Lausanne 300';
margin: 20px 40px;
}

.ctaBox p {
font-size: 1.5rem;
margin-bottom: 0px;
}

.ctaFull {
display: block;
margin: 20px 0px;
}

.ctaBoxHeader {
font-size: 2.5rem;
line-height: 3rem;
font-family: 'TWK Lausanne 800';
}

.cta-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: stretch; /* This ensures equal height */
}

.cta-container .ctaBox {
    flex: 1;
    min-width: 280px; /* Adjust based on your design */
    display: flex;
}

.ctaBox-inner {
    display: flex;
    flex-direction: column;
    width: 100%;
}


.cta-wysiwyg-group {
margin-bottom: 30px;
}


/* 1. This makes the columns equal height (the outer shells) */
.impact-row-container {
    display: flex !important;
    align-items: stretch !important;
    gap: 24px;
}

/* 2. This makes the inner wrapper fill the full height of the column */
.impact-column .cta-wysiwyg-inner {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    /* This is critical: without 100% height, there's no "bottom" to push to */
}

/* 3. The Magic Pin */
.stat-box-container {
    margin-top: auto !important; 
    flex-shrink: 0 !important;
    flex: 0 !important;
}

/* 4. Keep the headings aligned at the top */
.impact-column h3 {
    min-height: 3.5rem; /* Forces titles to take up same space */
    margin-bottom: 10px;
}

.impact-column .cta-wysiwyg-inner p:last-of-type {
    margin-bottom: 40px;
}


.quoteBlock {
/*background: linear-gradient(90deg, #d3e6f5 0%, #9bb7e0 100%);*/
border: solid 3px #000000;
padding: 15px 30px;
border-radius: 20px;
max-width: 90%;
margin: 20px auto;
position: relative;
}

.quoteHead {
position: absolute;
top: 3px;
left: 80px;
font-size: 1.4rem;
}

.quoteBlock i {
font-size: 2rem;
font-style: italic;
color: #000000;
display: block;
margin-bottom: 20px;
}

.quoteBlock p {
color: #000000;
font-size: 1rem;
line-height: 1.5rem;
}

.quoteBlock span {
font-weight: bold;
display: block;
margin-top: 15px;
font-size: 1.2rem;
}


.cta-wysiwyg-inner-nested p:last-of-type {
margin-bottom: 0px;
}

.cta-wysiwyg-inner .cta-wysiwyg-box {
margin-top: 20px;
margin-bottom: 20px;
}

.bigButton {
padding: 20px 30px 19px 30px;
}



.igLink {
font-size: 1.6rem;
color: #FFFFFF;
display: block;
}

.igLink:hover {
color: #FFFFFF;
}

#footerRight {
text-align: right;
}

#emailLink {
color: #FFFFFF;
font-family: 'TWK Lausanne 800';
}

ul.is-dropdown-submenu {
background:#D0E6EA;
}

.blockBox .cell {
padding: 20px 15px;
margin-bottom: 20px;
}

.smallText p {
font-size: 12px;
}

.expandLink {
font-family: 'TWK Lausanne 800';
text-transform: uppercase;
}

.expandLinkOpen {
opacity: 70%;
}

.expandBox {
transition: ease .5s all;
-ms-overflow-style: none;  /* IE and Edge */
scrollbar-width: none;  /* Firefox */
}

.expandBox::-webkit-scrollbar {
display: none;
}

.expandBoxClosed {
max-height: 0px;
overflow: hidden;
}

.expandBoxOpen {
max-height: 900px;
overflow: auto;
transition: ease .5s all;
}

ul.submenu {
margin-top: 0px !important;
}

.menu .active>a {
background: none;
color:#0000FF;	
}


#mc_embed_signup_scroll {
padding-bottom: 50px;
}

.mc-field-group {
position: relative;
}

.mce_inline_error {
border-radius: 10px;	
}

#mc_embed_signup div.mce_inline_error {
padding: 0px !important;
color: #b20c0c !important;
background: transparent !important;
}


/* WP AUDIO PLAYER RESTYLE */
div.wp-audio-shortcode {
width: 40px !important;
min-width: 40px !important;
display: inline-block;
margin-top: auto;
margin-bottom: auto;
float: right;
margin-left: 40px;
}

div.wp-audio-shortcode div.mejs-controls div.mejs-currenttime-container, div.wp-audio-shortcode div.mejs-time-rail, div.wp-audio-shortcode div.mejs-duration-container, div.wp-audio-shortcode div.mejs-volume-button, div.wp-audio-shortcode a.mejs-horizontal-volume-slider {
display: none !important;
}

.mejs-container {
background:transparent !important;
}

.mejs-controls {
background: #4b9ad4 !important;
/*border-radius: 30px !important;*/
padding: 0 4px !important;
}

.wp-video {
border: solid 1px #000000;	
}


#footer-links {
/*-webkit-box-pack: end;
-webkit-justify-content: flex-end;
-ms-flex-pack: end;
justify-content: flex-end;
*/
column-count: 2;
display: table-cell;
padding-left: 30px;
}

#footer-links li {
list-style: none;
}

#footer-links li:last-of-type {
display: none;
}

#footer-links li a {
color:#ffffff;
font-family: 'TWK Lausanne 300';
padding: .3rem .7rem .3rem 0;
font-size: .8rem;
}

.smallText  {
font-size: 80%;
}

#footer-links ul.sub-menu {
display: none;
}


/************
Donation Pop-up
****************/
.boxzilla-center-container > .boxzilla-center {
border-radius:32px;
overflow-y: hidden;
max-height: none;
}

.boxzilla-center-container > .boxzilla-center::-webkit-scrollbar {
  display: none;
}

.boxzilla-close-icon {
background: #0f2aa8;
opacity: 1 !important;
color: #ffffff !important;
border-radius: 20px;
top: 10px !important;
right: 10px !important;
padding-right: 8px !important;
padding-left: 8px !important;
}

iframe#tgb-widget-frame-1189135087 {
    max-height: 90vh !important;
    margin: 0 auto;
    display: block;
}

.donateBox a img {
display: block;
margin: 30px auto 50px auto;
max-width: 250px;
}



/********************
THRPLA Page (temp)
*********************/
.thrplaHead h3 {
	font-family: 'familybold';
	color: #0f2aa8;
	letter-spacing: -.5px;
	line-height: 2rem;
	margin-bottom: 30px;
}

#thrplaLogo img {
	max-width: 80%;
	margin-bottom: 30px;
}

#thrplaTopBanner {
background: url(../images/thrpla-boy.png) no-repeat #0063e6;
background-size: contain;
background-position: right;
min-height: 360px;
position: relative;
}

#thrplaTopBannerLogo {
    position: absolute;
    width: 80px;
    bottom: -130px;
    left: -45%;
}

.wordBalloon {
background: #ffffff;
padding: 20px 30px;
width: 300px;
border-radius: 30px;
font-family: 'familybold';
margin-top: 20px;
position: absolute;
}

.balloonInner {
position: relative;
}

.wordBalloon p {
color: #0f2aa8;
letter-spacing: 0px;
}

.wordBalloonPoint {
position: absolute;
width: 130px;
bottom: -70px;
right: 20px;
}

.balloonLeft {
left: 380px;
}

.balloonLeft .wordBalloonPoint {
transform: scaleX(-1);
left: 20px;
}

#thrplaTopBanner .cell:nth-of-type(1) .wordBalloon {
margin-top: 30px;
}

#reachRow1 h2 {
text-align: center;
font-family: 'familyheavy';
color: #0f2aa8;
line-height: 2.3rem;
padding-top: 30px;
font-size: 3rem;
}


#reachRow1 h2 span {
font-size: 55%;
display: block;
}

.reachNumbers h2 {
font-family: 'familyheavy';
color: #0063e6;
font-size: 4rem;
text-align: center;
font-size: 3rem;
line-height: 2.2rem;
}

.reachNumbers h2 span {
font-family: 'TWK Lausanne 300';
color: #0f2aa8;
display: block;
font-size: 1.3rem;
}

.grid-x .reachNumbers:nth-of-type(2) {
    margin-top: 30px;
    margin-bottom: 20px;
}

.reachNumbers:nth-of-type(3) {
    margin-bottom: 30px;
}

.reachBox {
background: #0063e6;
border-radius: 30px;
position: relative;
color:#ffffff;
text-align: center;
min-height: 170px;
padding: 20px;
}

.reachBox img {
    position: absolute;
    top: -35px;
    width: 100px;
    left: 50%;
    right: 50%;
    transform: translate(-50%, -50%);
}

.reachNumber {
font-family: 'TWK Lausanne 800';
display: block;
font-size: 2.5rem;
line-height: 2rem;
}

.reachRow {
margin-top: 60px;
}

.reachWhy, .reachWho {
margin-top: 50px;
}

.reachWhy h2, .reachWho h2, .reachImpact h2 {
font-family: 'familyheavy';
color: #0f2aa8;
line-height: 3rem;
padding-top: 30px;
font-size: 3rem;
margin-bottom: 30px;
}

.reachWhyItems h3, .reachWhyItems ul {
margin-left: 30px;
}

.reachWhyItems h3 {
color: #01baef;
font-family: 'familyheavy';
}

.reachWhyItems li {
color:#0063e6;
margin-bottom: 20px;
max-width: 80%;
}

.reachWhyItems li::marker {
color:#000000;
}

.reachWhoLeft img  {
width: 80px;
display: block;
margin: 30px auto 0 auto;
}

.reachWhoLeft div {
font-size: 1.2rem;
color: #0f2aa8;
}

.reachWhoLeft div span {
font-size: 3rem;
vertical-align: middle;
margin-right: 15px;
font-family: 'TWK Lausanne 800';
}

.reachWhoBlocks span {
font-family: 'TWK Lausanne 800';
font-size: 2rem;
display: block;
}

.reachWhoBlocks {
border-radius: 15px;
position: relative;
padding: 20px;
font-size: .8rem;
}

.thrplaDarkBlue {
background:#0f2aa8;
color:#ffffff;
}

.thrplaLightBlue {
background:#92c4ff;
color:#0f2aa8;
}

.thrplaTeal {
background:#01baef;
color:#ffffff;
}

.thrplaGreen {
background:#20bf55;
color:#ffffff;
}

.reachWhoBlocks img {
position: absolute;
max-width: 40px;
max-height: 40px;
}

#blockOne, #blockTwo, #blockFive {
margin-bottom: 15px;
}

#blockOne img, #blockTwo img {
top: 15px;
left: 100px;
}

#blockSix img {
left: 50px;
top: 15px; 
}

.reachWhoGridBottomLeft {
height: 100%;
}

#blockThree img, #blockFour img {
bottom: 0;
left: 50%;
right: 50%;
transform: translate(-50%, -50%);
}


#blockFive span {
padding-left: 50px;
}

#blockFive img {
top: 15px;
left: 15px;
}

.reachImpact {
margin-top: 100px;
}

.reachImpact h2 {
text-align: center;
}

.impactThumbs {
margin-top: 30px;
}

.impactCaption {
background: #0f2aa8;
border-radius: 30px;
padding: 20px 30px !important;
color: #ffffff;
}

.impactCaption h3 {
color: #92c4ff;
font-family: 'familyheavy';
}

.impactData {
background: #0063e6;
margin-top: 150px;
color:#ffffff;
position: relative;
padding-bottom: 50px;
}

.impactData h2 {
font-family: 'familyheavy';
line-height: 3rem;
padding-top: 30px;
font-size: 3rem;
margin-bottom: 30px;
}

.impactData h2 span {
display: block;
font-size: 1.8rem;
}

.impactData img {
    position: absolute;
    width: 200px;
    right: 0px;
    top: -50px;
}

.impactData p span, .thrplaPartners span, .thrplaButtons span {
font-family: 'TWK Lausanne 800';
font-size: 1.2rem;
display: block;
}

.thrplaPartners {
margin-top: 50px;
}

.thrplaPartners h2 {
font-family: 'familyheavy';
line-height: 3rem;
padding-top: 30px;
font-size: 3rem;
margin-bottom: 30px;
color:#0f2aa8;
}

.donorHead {
color:#0f2aa8;
margin-bottom: 30px;
}

.thrplaPartners img {
margin-bottom: 50px;
}

.donorList {
color:#0f2aa8;
}

.thrplaButtons {
background:#0063e6;
border-radius: 30px;
margin-top: 100px;
text-align: center;
color:#ffffff;
}

.thrplaButtons h2 {
font-family: 'familyheavy';
line-height: 3rem;
padding-top: 30px;
font-size: 3rem;
margin-bottom: 30px;
}

.thrplaButtons p {
margin: 15px 0px;
}

.buttonRow {
margin-top: 50px;
margin-bottom: 50px;
}

.buttonRow a {
    background: #20bf55;
    color: #ffffff;
    font-family: 'TWK Lausanne 800';
    text-transform: uppercase;
    font-size: .8rem;
    display: inline-block;
    padding: 10px 15px;
    border-radius: 10px;
    min-width: 145px;
    margin-bottom: 15px;
}


/*********************
MOBILE STYLES
*********************/

/* Responsive Stacking for CTA and Quote Groups */
@media (max-width: 768px) {
    .cta-wysiwyg-group,
    .quote-group {
        flex-direction: column !important;
    }

    /* Ensure boxes take full width when stacked */
    .cta-wysiwyg-box,
    .quoteBlock {
        width: 100% !important;
    }
}


@media only screen and (max-width: 1024px) {
	.sticky.is-anchored.is-at-bottom {
		top: 0px !important;
	}


.threeColOne, .threeColTwo {
padding-right: 0px !important;
}

.threeColTwo {
padding-bottom: 30px;
}

.rightColBox {
padding-left: 0px;
}

.threeColOne {
text-align: center;
}
	
.threeColOne img {
max-width: 50%;
margin-bottom: 30px;
/*outline: 10px solid rgba(255, 255, 255, .50);*/
/*outline-offset: -10px;*/
}	

.threeColTwo img, .threeColThree img {
max-width: 350px;
}

span.profInfoLabel {
display: block;
}

.progDetails li span {
width: 100%;
}
	
.grid-container {
padding-right: 3.25rem;
padding-left: 3.25rem;
}	

.programImage img {
width: 60%;
box-shadow: 0 0 0 15px #e8e4df;
}

.meetPhoto img {
width: 100%;
max-width: 300px;
}

#artistThumbs {
margin-top: 30px;
margin-bottom: 30px;
}

#contactLinks li a {
padding-left: 0px;
}

.middleBorderenabled {
border-right: 0px;
}

.contentTextLeft {
/*padding: 0px 32.5px;*/
padding: 0px;
margin-bottom: 50px;
}

.contentTextRight  {
padding: 0px;
}

.contentHeading h3 {

}

.contentTextFull, .contentTextRight {
/*padding: 0px 32.5px;*/
}



.pbCallButton {
float: none;	
}

.pbDescription {
height: auto;
}

p.copyright {
text-align: left;
}

.mobileToggle {
text-align: right;
}

.mobileToggle a {
margin-top: 5px;
display: inline-block;
}

#menuBar ul {
margin: 0px;
}

#menuBar ul li {
list-style: none;
}

.mobileDonateBox {
text-align: left;
}


.blockBox div.cell:nth-of-type(3) {
border-right: 0px !important;
}


#footer-links {
display: inline-flex;
column-count: auto;
padding-left: 0px;
margin: 20px 0px;
}

#footerRight {
text-align: left;
}

p.copyright {
margin-top: 20px;
}
	
.contentText {
background-position: top center;
}

.contentRowMain  {
padding: 30px 30px 0px 30px;	
}

#main-nav {
justify-content: center;
}

#menuBox {
text-align: center;
}



#thrplaTopBanner {
background-image: linear-gradient(rgba(0, 99, 230, 0.5), rgba(0, 99, 230, 0.5)), url(../images/thrpla-boy.png);
background-repeat: no-repeat;
background-color: #0063e6;
}


.reachWhoLeft img {
margin: 30px auto 30px auto;
}

.impactFeature img {
max-width: 70%;
margin: 0 auto 30px auto;
display: block;
}

.impactThumb {
margin-bottom: 30px;
}



}


@media only screen and (max-width: 790px) {

.wordBalloon {
width: 200px;
padding: 20px;
}
	
.wordBalloon p {
font-size: .8rem;
line-height: 1rem;
}

.balloonLeft {
left: 40%;
}	

.reachNumber {
font-size: 1.8rem;
line-height: 1.3rem;
}
	
.reachBox img {
top: -25px;
width: 80px;
}	
	
	
}



@media only screen and (max-width: 640px) {
	
.grid-container {
padding-right: 1.5rem;
padding-left: 1.5rem;
}		

.subButton {
text-align: center;
padding-top: 20px;
}

#mc_embed_shell {
margin-top: 80px;
}

.subBox input[type=email] {
margin: 10px auto 0px auto;
}

.subBox input[type=submit]  {
display: block;
margin: 0 auto;
}
	
#logo:after, #footerLogo:after {
    top: -3px;
}	
	
.headerRow h2 {
text-align: center;
}
	

#buttonBar a {
float: none;
}

#buttonBar, #logoBar, #menuBar {
text-align: center;
}

#menuBar li {
/*width: 100%;*/
}

#menuBar li a i {
font-size: 150%;
color:#404040;
}

#footer-links {
-webkit-box-pack: initial;
-webkit-justify-content: normal;
-ms-flex-pack: initial;
justify-content: normal;
}

#socialLinks {
padding-left: 1rem;
padding-bottom: 1rem;
}

.headerRow .contentImage img {

}


#logo, #footerLogo {
padding-left: 0px;
display: inline-block;
margin-bottom: 10px;
}	
	
.meetPhoto {
text-align: center;
}	

#artistThumbs img {
    padding: 20px;
}

.ocDonate {
display: inline-block;
background: #4b9ad4;	
}	

.ocDonate a {
color:#ffffff !important;
}

span.profInfoLabel {

}

.progDetails {
margin-left: 0px;
margin-top: 30px;
}
	
.threeColOne img {
max-width: 100%;
}	

.contentTextRight, .contentTextLeft {
padding: 0px;
}

.meetText {
padding-left: 0px;
padding-top: 20px;
}
	
#offcanvas-nav li.is-submenu-item {
background: #D0E6EA;
}	

#offcanvas-nav li.current-menu-ancestor>a::after {
border-color: #0000FF transparent transparent;
}

#offcanvas-nav li.current-menu-ancestor a:hover {
/*color:#ffffff;*/
}
	
.blockBox div.cell {
border-right: 0px !important;
}	

#menuBar ul li div.grid-x {
justify-content: flex-end;
}

#menuBox .top-bar-left {
text-align: center;
}


#thrplaTopBanner {
background-size: cover;
padding-bottom: 30px;
}

.wordBalloonPoint {
display: none;
}

.wordBalloon {
width: 100%;
position: relative;	
}
	
#thrplaTopBannerLogo {
display: none;
}	


#thrplaLogo img {
max-width: 30%;
display: block;
margin: 0 auto 30px auto;
}

.wordBalloon p {
font-size: 1rem;
line-height: 1.2rem;
}

#thrplaTopBanner .cell:nth-of-type(1) .wordBalloon {
margin: 20px 0 0 0;
}

.balloonLeft {
left: 0;
}
	
.reachBox img {
top: -35px;
width: 100px;
}	

.reachNumber {
font-size: 2.5rem;
line-height: 2rem;
}

.reachRow .reachBox:nth-of-type(3), .reachRow .reachBox:nth-of-type(4) {
margin-top: 100px;
}
	
#blockThree, #blockFour {
margin-bottom: 15px;
}	

#blockThree img, #blockFour img, #blockFive img {
top: 37px;
left: 130px;
}	

#blockFive img {
top: 15px;
left: 65px;
}

#blockFive span {
padding-left: 0px;
}	

.impactThumb img {
    max-width: 300px;
    display: block;
    margin: 0 auto;
}


.impactData img {
display: none;
}


.cta-container .ctaBox {
min-width: auto;
}


.contentRowMain {
padding: 30px 15px 0px 15px;
}


	
}