/* Note for later.  
  
   body has 4 possible states:
   - body .............. : default state for desktop use on the homepage
   - body.mobile ....... : formats the page, including the header and navigation to be optimized on a mobile device
   - body.content ...... : collapses the header.welcome region, allowing the visitor to focus on content
   - body.mobile.content : combination of .mobile and .content
*/


/* Text and background color for dark mode */
/*@media (prefers-color-scheme: dark) {
    body {
        color: #ddd;
        background-color: #222;
    }
}*/

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.abp-color {
    color: #eab2b5;
}
.abp-brand-text {
    color: #eab2b5;
    font-weight: bold;
    text-transform: uppercase;
}

.center_content { 
    text-align: center;
}

.strong {
    font-weight: bold;
}
em, .em {
    font-style: italic;
}

h1.home-only {
    display: none;
}

input[type="text"], input[type="number"], input[type="email"], input[type="search"], input[type="password"], textarea, select {
    font-size: 1.1em;
    padding: 0.5em;
    text-align: center;
    background-color: transparent;
    border: rgba(0,0,0,0.5) 0.1em solid;
    box-sizing: border-box;
}

.recaptchatable input[type="text"], .recaptchatable input[type="password"] {
    color: black;
    background: white;
}

.recaptchatable a {
    color: blue;
    text-shadow: none;
    text-decoration: initial;
}

.Jesus, .jesus {
    color: red;
}


input[type="submit"], input[type="button"] {
    font-size: 1.2em;
    padding: 0.5em 2em;
    border: 0;
    background-color: rgba(234,178,181,0.9);
    color: white;
    -webkit-appearance: none;
    -moz-appearance: none;
    font-weight: bold;
    cursor: pointer;
}

input[type="submit"]:hover, input[type="button"]:hover {
    background-color: rgba(0,0,0, 0.5);
    color: white;
}


header.welcome {
    /*background-color: black;*/
    position: relative;
    color: black;
    /*text-shadow: 0 0 2em rgba(0,0,0,1);*/
    font-weight: bold;
    z-index: 999;
      /*-webkit-filter: blur(5px);
      -moz-filter: blur(5px);
      -o-filter: blur(5px);
      -ms-filter: blur(5px);
      filter: blur(5px);*/
}


/*body.content header.welcome {
    
    height: 8em;
}
body.content header.welcome a.button {
    padding: 0.25em 1em;
    font-size: 0.8em;
    margin-right: 0.05em;
}*/

nav.home-nav img {
    width: 10em;
    display: block;
    margin: 0 auto;
}

body:not(.content) header.welcome nav.content-nav {
    display: none;
}
body.content header.welcome nav.home-nav {
    display: none;
}

body:not(.mobile) .content header.welcome h1 {
    white-space: nowrap;
}


body.mobile.content header.welcome img.logo {
    display: none;
}

body:not(.mobile) header.welcome nav.content-nav a.mobile {
    display: none;
}

body:not(.mobile) div#mobile-menu {
    display: none;
}
body.mobile div#mobile-menu {
    display: block;
    width: 2rem;
    position: fixed;
    top: 1.9rem;
    left: 0.5rem;
    /*right: 0.5em;*/
    padding: 0.5rem;
    z-index: 950;
    /*background: rgba(255,255,255,0.4);*/
    cursor: pointer;
}

    body.mobile div#mobile-menu span.mobile-menu-line {
        display: block;
        height: 0.25em;
        margin-bottom: 0.4em;
        width: 100%;
        background-color: black;
    }
        body.mobile div#mobile-menu span.mobile-menu-line:last-child {
            margin-bottom: 0;
        }


body:not(.mobile) div#mobile-cart {
    display: none;
}

body.mobile div#mobile-cart {
    display: block;
    width: 3rem;
    position: fixed;
    top: 2.15rem;
    right: 0.5rem;
    text-align: right;
    z-index: 950;
    /*background: rgba(255,255,255,0.4);*/
    cursor: pointer;
    color: black;
}

    body.mobile div#mobile-cart a:link, body.mobile div#mobile-cart a:visited { color: black; }
    body.mobile div#mobile-cart a:hover {
        color: #eab2b5;
    }

a.to-top {
    display: none;
    box-sizing: border-box;
    position: fixed;
    padding: 1em 1.5em;
    background: rgba(50,50,50,1);
    border-radius: 5px;
    z-index: 951;
    bottom: 1em;
    right: 1em;
    opacity: 0.8;
    transition: 0.5s display;
    cursor: pointer;
}

body:not(.mobile) a.to-top {
    right: 2em;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    bottom: 0;
}
.caret {
  position: relative;
  box-sizing: border-box;
  top: -5px;
  left: -10px;
}

.caret:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  border-bottom: 10px solid #ffffff;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
}

.caret:after {
  content: '';
  position: absolute;
  left: 5px;
  top: 5px;
  border-bottom: 5px solid rgba(50,50,50,1);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
}


.page-header {
    font-family: 'Montserrat', 'Open Sans', Arial, Helvetica, Sans-serif;
    font-weight: normal;
}

nav#main {
    /*height: 5.8125rem;*/
    height: 7rem;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 900;
    box-sizing: border-box;
    padding: 0.8em 0.8em;
    transition: 0.5s background;
    -webkit-font-smoothing: subpixel-antialiased;
}
nav#main.fixed {
    background: rgba(255,255,255,0.98);
}
.site-width {
    width: 90%;
    margin: 0 auto;
}
    .site-width .spacer {
        width: 1em;
        height: 1em;
        float: left;
        display: inline-block;
    }

nav#main .upper-logo {
    display: inline-block;
    font-weight: normal;
    /*float: left;*/
}

.upper-logo div.main_logo {
    display: inline-block;
    width: 80%;
    max-width: 15rem;
}
.upper-logo div.main_logo img {
    max-width: 100%;
}

.upper-logo div.cir {
    display: inline-block;
    float: left;
}
        .upper-logo div.cir img {
            width: 4em; display: inline-block;
        }
        .upper-logo.small div.cir img {
            width: 3em;
            margin-top: 0.5em;
            margin-bottom: 0.5em;
        }
    .upper-logo div.text {
        display: inline-block; 
        letter-spacing: 0.1em; 
        color: black; 
        line-height: 120%; 
        font-weight: bold; 
        text-align: left; 
        text-align: left; 
        box-sizing: border-box; 
        margin-left: 0.5em; 
        margin-top: 0.75rem; 
        font-size: 1rem; 
        font-family: 'Montserrat', 'Open Sans', Arial, Helvetica, Sans-serif;
    }
    .upper-logo div.text .text-network {
        letter-spacing: 0.5em;
    }

.nav_wrapper {
    margin-top: -5.5rem;
}

nav#main .nav-choices {
    font-family: 'Oswald', Arial, Helvetica, Sans-serif;
    text-transform: uppercase;
    margin-top: 1em;
    white-space: nowrap;
}

.float_left {
    float: left;
}

.float_right {
    float: right;
}

nav#main .nav-choices a {
    text-decoration: none;
    font-weight: normal;
    font-size: 0.8rem;
    margin-right: 1rem;
    color: black;
}
nav#main .nav-choices a:hover {
    color: #eab2b5;
}
nav#main .nav-choices a:last-of-type {
    margin-right: 0;
}
body:not(.mobile) nav#main .mobile {
    display: none;
}
body.mobile nav.nav-choices {
    display: none;
}

.social_media {
    margin-top: 2em;
}
    .social_media > a:not(:last-child) { margin-right: 0.5rem; }
    .sm-icon {
        height: 3em;
    }
    .sm-icon.small {
        height: 2em;
        margin-bottom: -0.5em;
    }


body.mobile nav#mobile-nav a.mobile {
    display: block;
}

body.mobile nav#mobile-nav a.mobile-nav-cancel {
    position: fixed;
    bottom: 0;
    display: block;
    left: -20em;
    
    transition: left 0.5s ease;
}

body.mobile.content header.welcome nav#nav {
    display: none;
}
body:not(.mobile) nav#mobile-nav {
    display: none;
}
body.mobile nav#mobile-nav {
    display: block;
    position: fixed;
    background-color: rgba(220,220,220,0.98);
    left: -20em;
    top: 0;
    width: 80%;
    height: 100%;
    max-width: 20em;
    z-index: 1000;
    overflow-x: hidden;
    overflow-y: auto;
    
    transition: left 0.5s ease;
}

body.mobile nav#mobile-nav a {
    display: block;
    background-color: rgba(255,255,255,0.3);
    margin: 1em 1em;
    color: white;
    font-size: 0.8em;
    transform: background-color 0.2s ease;
}
body.mobile nav#mobile-nav a:link, body.mobile nav#mobile-nav a:visited, body.mobile nav#mobile-nav a:active {
    background-color: rgba(234,178,181,0.9);
    color: white;
}
body.mobile nav#mobile-nav a:hover {
    background-color: rgba(255,255,255,0.5);
}

body.content header.welcome > div.section-container {
    padding-left: 1em;
    padding-right: 1em;
    height: 100%;
}
    
header.welcome a.button, header.welcome a.button:visited, header.welcome a.button:link, header.welcome a.button:active {
    color: white;
    background: rgba(255,255,255,0.3);
    border-color: rgba(255,255,255,0.0);
}


body.content header.welcome a.button:visited, body.content header.welcome a.button:link, body.content header.welcome a.button:active {
    background: rgba(234,178,181,0.9);
}


header.welcome a.button:hover {
    border-color: white;
    background: rgba(255,255,255,0.6);
}

/*@media screen and (max-width: 50em) {*/
    body:not(.content).mobile header.welcome a.button {
        margin: 1em 0;
        display: block;
    }

        body:not(.content).mobile header.welcome a.button img {
            float: left; width: auto; height: 3.2em;
            margin-top: 0.1em;
        }

/*}*/


@media screen and (max-width: 20em) {
        body:not(.content).mobile header.welcome a.button img {
            float: none; display: none;
        }
}

a:link.button.accent.accent2, a:visited.button.accent.accent2 {
    background-color: rgba(0,100,0,1);
    color: white;
    text-shadow: none;
}
a:hover.button.accent.accent2 {
    background-color: gray;
    color: white;
    text-shadow: none;
}


body div.row .third_nowidth a:link.button.accent, .third_nowidth a:visited.button.accent {
    width: 100%; box-sizing: border-box; margin-bottom: 1rem;
    background-color: rgba(0,100,0,1);
}

.background {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff;
    overflow: hidden;
    z-index: -1000;
    display: inline-block;
}

.wallpaper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
	
	 opacity: 0.7; 
    
    /* transition: background 2.0s ease-in-out; */
}
/* Wallpaper states */
.wallpaper { display: none; }
.wallpaper.displayed { display: block; }

/* DEFAULT IMAGE */
.bg1 {
    /*background-image: url("/assets/site/images/bgs/abp_overlay.png"); background-position: 70% 0%;*/
}}
/*.bg1 { background-image: url("/assets/themes/life-prime/images/chn/whc_service.jpg");  background-position: 60% 40%; }}*/

body.content header.welcome > div.section-container {
    padding-top: 0.5em;
    padding-bottom: 1em;
}
body.content header.welcome h1 {
    font-size: 2em;
}
body.content header.welcome p {
    display: none;
}
body.content header.welcome img.logo {
    float: left;
    height: 7em;
    width: auto;
    margin-bottom: 0;
}

body.mobile.content header.welcome h1 {
    white-space: normal;
}
body.content header.welcome div.title-and-nav {
    display: inline-block;
}
@media screen and (min-width: 1115px) {
    body.content header.welcome div.title-and-nav {
        margin-left: -7em;
    }
}

.button, 
.button-alt {
    display: inline-block;
    padding: 0.2rem 1rem;
    box-sizing: border-box;
    text-decoration: none;
    font-weight: bold;
    transition: 0.2s background;
}

a.button:link,
a.button:visited,
a.button-alt:link,
a.button-alt:visited {
    color: white;
    background: black;
}

a.button:hover,
a.button-alt:hover {
    color: white;
    background: #eab2b5;
}



/*###########################################################
### SECTIONS ################################################
###########################################################*/

header, section, footer {
    /* text-align: center; */
    clear: both;
    background-size: cover;
}

header, footer {
    text-align: center;
}

body > section:nth-child(2n+1) {
    background: #ccc;
}
body > section:nth-child(2n) {
    background: #ddd;
}



    
    header > div.section-container {
        padding-top: 6rem;
        padding-left: 10%;
        padding-bottom: 7rem;
        padding-right: 10%;
    }
section > div.section-container {
    padding-top: 2rem;
    padding-left: 10%;
    padding-bottom: 4rem;
    padding-right: 10%;
}

    body.content .page-content section > div.section-container {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    
    body.mobile header > div.section-container, body.mobile section > div.section-container {
        /*padding-top: 6rem;*/
        padding-bottom: 3rem;
    }

    body.content header > div.section-container, section > div.section-container {
        padding-bottom: 1rem;
    }

body.mobile header > div.section-container, body.mobile section > div.section-container {
}
        


/*###########################################################
### LINKS ###################################################
###########################################################*/

a:link, a:visited {
    color: #eab2b5;
}
a:hover {
    color: rgba(100,100,100,1);
}

header a.button, section a.button {
    background-color: rgba(255,255,255, 0.4);
}
section a.button:hover {
    /*background-color: rgba(255,255,255, 0.6);*/
}

section a.button.dark {
    background-color: rgba(0,0,0, 0.7);
    /*background-color: rgba(0,0,0, 0.7);*/
}
section a.button.dark:hover {
    background-color: rgba(255,255,255, 0.6);
}

    
a.button {
    text-transform: uppercase;
    display: inline-block;
    /*border: 0.15em solid #555;*/
    /*margin-right: 0.5em;
    margin-left: 0.5em;*/
    padding: 0.5em 2em;
    cursor: pointer;
    font-weight: bold;
    
    /*box-shadow: rgba(0,0,0,0.5) 0 0.2em 0.5em;*/
    transition: background-color ease 0.2s;
    box-sizing: border-box; 
    margin-bottom: 1rem;
}
    
/*a:link.button, a:active.button, a:visited.button {
    text-decoration: none;
    color: black;
}*/

a:hover.button {
    color: white;
}

a.button:hover {
    /*border: 0.15em solid #fff;*/
}



a:link.button.accent, a:active.button.accent, a:visited.button.accent {
    background-color: rgba(234,178,181,0.9);
    color: white;
}

a:hover.button.accent {
    background-color: rgba(0,0,0, 0.5);
    color: white;
}
    
    div.row:first-of-class { margin-top: 1em; }
    


    
    header.welcome > div.section-container {
        box-sizing: border-box;
        /*padding-top: 4em;*/
    }
    
    header.welcome img.logo {
        width: 20%;
        margin-bottom: 2em;
    }

body.mobile header.welcome img.logo {
    width: 50%;
        margin-bottom: 1em;
}
    
    
    
    /*
    header {
        padding: 0.25em 0.25em 0.4em 0.25em;
        background: rgba(20,20,20,0.8);    
        color: white;
        width: 100%;
        position: fixed;
    }
    body.mobile header { display: none; }
    
    
    body:not(.mobile) header section.mobile-nav nav {
        float: right;
        margin-right: 1em;
    }
    
    body:not(.mobile) header section.mobile-nav nav a {
        text-transform: uppercase;
        margin-right: 2em;
        font-weight: bold;
    }
    body:not(.mobile) header section.mobile-nav nav a:last-child {
        margin-right: 0;
    }
    
    body:not(.mobile) header section.mobile-nav nav a:link, body:not(.mobile) header nav a:active, body:not(.mobile) header nav a:visited {
        color: white;
        text-decoration: none;
    }
    body:not(.mobile) header section.mobile-nav nav a:hover {
        text-decoration: underline;
    }
    */
    
    
    
    


/*###########################################################
### FOOTER ##################################################
###########################################################*/

footer {
    min-height: 20rem;
    background: rgba(200,200,200,1);
    /*background-color: #eee;*/
    line-height: 200%;
    padding-top: 2em;
    /*padding-left: 10%;*/
    padding-bottom: 4em;
    /*padding-right: 10%;*/
    position: relative;
    color: black;
}


    footer .container {
        max-width: 80%;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }



    footer .chn-brand-text,
    footer .callout {
        color: #ffbd47;
    }



    footer a:link, footer a:visited {
        color: black;
    }

    footer a:hover {
        color: #333;
    }



body.mobile .copyright .copyright-part {
    display: block;
}



footer .lower_bar {
    font-size: 0.8em;
    width: 100%;
    padding: 1rem 0;
    background: rgba(0,0,0,0.2);
    position: absolute;
    bottom: 0;
    color: black;
}

footer .footer_table {
    display: table;
    width: 100%;
    box-sizing: border-box;
}

    footer .footer_table .footer_column {
        width: 33.3333333%;
        margin: 0;
        box-sizing: border-box;
        display: table-cell;
        text-align: left;
        vertical-align: top;
    }

footer .footer_column .column_header {
    text-transform: uppercase;
    font-weight: bold;
    /*color: rgba(0,0,0,0.6);*/
    font-size: 1.3em;
}


footer .footer_table .footer_column:last-child {
    text-align: right;
}


footer .mission_statement {
    font-style: italic;
}

footer .footer_table .footer_column {
    padding-left: 1rem;
    padding-right: 1rem;
}

footer .lower_bar .footer_table .footer_column {
    width: 33.3333333%;
    text-align: center;
}

footer .footer_table .footer_column:first-child {
    text-align: left;
    padding-right: 1rem;
    padding-left: 0;
}

footer .footer_table .footer_column:last-child {
    padding-left: 1rem;
    padding-right: 0;
}


footer .lower_bar .footer_table .footer_column:last-child {
    text-align: right;
}

footer .footer_table .footer_column ul.one_line {
    margin: 0;
    padding: 0;
}

footer .lower_bar .footer_table .footer_column ul.one_line li {
    display: inline-block;
    padding: 0 0.4rem;
    list-style: none;
}


footer .lower_bar .footer_table .footer_column ul.one_line li:last-child {
    padding-right: 0;
}


footer .relative {
    position: relative;
}

.footer-logo {
    position: relative;
    top: 1rem;
}

footer .center {
    text-align: center;
}

body:not(.mobile) footer .mobileonly {
    display: none;
}

body.mobile .nomobile {
    display: none;
}

body.mobile footer {
    min-height: unset;
}


























    
.light, .light10, .light20, .light30, .light40, .light50, .light60, .light70, .light80, .light90 {
    color: black;
}

    .light > div.section-container {
        background-color: rgba(255,255,255,1);
    }
    .light90 > div.section-container {
        background-color: rgba(255,255,255,0.9);
    }
    .light80 > div.section-container {
        background-color: rgba(255,255,255,0.8);
    }
    .light70 > div.section-container {
        background-color: rgba(255,255,255,0.7);
    }
    .light60 > div.section-container {
        background-color: rgba(255,255,255,0.6);
    }
    .light50 > div.section-container {
        background-color: rgba(255,255,255,0.5);
    }
    .light40 > div.section-container {
        background-color: rgba(255,255,255,0.4);
    }
    .light30 > div.section-container {
        background-color: rgba(255,255,255,0.3);
    }
    .light20 > div.section-container {
        background-color: rgba(255,255,255,0.2);
    }
    .light10 > div.section-container {
        background-color: rgba(255,255,255,0.1);
    }

    /*.light a.button:not(.accent):link, .light10 a.button:not(.accent):link, .light20 a.button:not(.accent):link, .light30 a.button:not(.accent):link, .light40 a.button:not(.accent):link, .light50 a.button:not(.accent):link, .light60 a.button:not(.accent):link, .light70 a.button:not(.accent):link, .light80 a.button:not(.accent):link, .light90 a.button:not(.accent):link,
    .light a.button:not(.accent):visited, .light10 a.button:not(.accent):visited, .light20 a.button:not(.accent):visited, .light30 a.button:not(.accent):visited, .light40 a.button:not(.accent):visited, .light50 a.button:not(.accent):visited, .light60 a.button:not(.accent):visited, .light70 a.button:not(.accent):visited, .light80 a.button:not(.accent):visited, .light90 a.button:not(.accent):visited,
    .light a.button:not(.accent):active, .light10 a.button:not(.accent):active, .light20 a.button:not(.accent):active, .light30 a.button:not(.accent):active, .light40 a.button:not(.accent):active, .light50 a.button:not(.accent):active, .light60 a.button:not(.accent):active, .light70 a.button:not(.accent):active, .light80 a.button:not(.accent):active, .light90 a.button:not(.accent):active {
        color: black;
    }*/
        .light a.button:not(.accent):hover, .light10 a.button:not(.accent):hover, .light20 a.button:not(.accent):hover, .light30 a.button:not(.accent):hover, .light40 a.button:not(.accent):hover, .light50 a.button:not(.accent):hover, .light60 a.button:not(.accent):hover, .light70 a.button:not(.accent):hover, .light80 a.button:not(.accent):hover, .light90 a.button:not(.accent):hover {
            color: #333;
        }

    .dark a.button:not(.accent):link, .dark10 a.button:not(.accent):link, .dark20 a.button:not(.accent):link, .dark30 a.button:not(.accent):link, .dark40 a.button:not(.accent):link, .dark50 a.button:not(.accent):link, .dark60 a.button:not(.accent):link, .dark70 a.button:not(.accent):link, .dark80 a.button:not(.accent):link, .dark90 a.button:not(.accent):link,
    .dark a.button:not(.accent):visited, .dark10 a.button:not(.accent):visited, .dark20 a.button:not(.accent):visited, .dark30 a.button:not(.accent):visited, .dark40 a.button:not(.accent):visited, .dark50 a.button:not(.accent):visited, .dark60 a.button:not(.accent):visited, .dark70 a.button:not(.accent):visited, .dark80 a.button:not(.accent):visited, .dark90 a.button:not(.accent):visited,
    .dark a.button:not(.accent):active, .dark10 a.button:not(.accent):active, .dark20 a.button:not(.accent):active, .dark30 a.button:not(.accent):active, .dark40 a.button:not(.accent):active, .dark50 a.button:not(.accent):active, .dark60 a.button:not(.accent):active, .dark70 a.button:not(.accent):active, .dark80 a.button:not(.accent):active, .dark90 a.button:not(.accent):active {
        color: white;
    }
        .dark a.button:not(.accent):hover, .dark10 a.button:not(.accent):hover, .dark20 a.button:not(.accent):hover, .dark30 a.button:not(.accent):hover, .dark40 a.button:not(.accent):hover, .dark50 a.button:not(.accent):hover, .dark60 a.button:not(.accent):hover, .dark70 a.button:not(.accent):hover, .dark80 a.button:not(.accent):hover, .dark90 a.button:not(.accent):hover {
            color: white;
        }


.light a.button:hover {
    color: #333;
}
.dark a.button:hover {
    color: white;
}


h3 {
    
}
    
.dark, .dark10, .dark20, .dark30, .dark40, .dark50, .dark60, .dark70, .dark80, .dark90 {
    color: white;
}

    .dark90 > div.section-container {
        background-color: rgba(0,0,0,0.9);
    }
    .dark80 > div.section-container {
        background-color: rgba(0,0,0,0.8);
    }
    .dark70 > div.section-container {
        background-color: rgba(0,0,0,0.7);
    }
    .dark60 > div.section-container, .dark > div.section-container {
        background-color: rgba(0,0,0,0.6);
    }
    .dark50 > div.section-container {
        background-color: rgba(0,0,0,0.5);
    }
    .dark40 > div.section-container {
        background-color: rgba(0,0,0,0.4);
    }
    .dark30 > div.section-container {
        background-color: rgba(0,0,0,0.3);
    }
    .dark20 > div.section-container {
        background-color: rgba(0,0,0,0.2);
    }
    .dark10 > div.section-container {
        background-color: rgba(0,0,0,0.1);
    }


.aspect-16x9 {
    padding-bottom: 56.25%;
    position: relative;
}
.aspect-16x9 a {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
}

    .aspect-16x9 img {
        width: 100%;
        height: 100%;
    }

.error {
    color: red;
}

.admin-panel {
    background-color: rgba(255,0,0,0.2);
    padding: 1em 2em;
    margin-bottom: 1em;
    border: 0.2em dashed rgba(255,0,0,0.3);
}


.image-frame {
    display: inline-block;
    background: black;
    -webkit-border-radius:1%;
    -moz-border-radius:1%;
    border-radius:1%;
    -moz-box-shadow: 2px 3px 7px rgba(0,0,0,.3);
    -webkit-box-shadow: 2px 3px 7px rgba(0,0,0,.3);
    box-shadow: 2px 3px 7px rgba(0,0,0,.3);
    padding-bottom: -1em;
    overflow: hidden;
    position: relative;
    vertical-align: middle;
    max-width: 100%;
    text-align: center;
    margin-bottom: 1em;
}


.image-frame img {
    border-style: none;
    vertical-align: top;
    max-width: 100%;
    height: auto;

    display: inline-block;
    opacity: 0.8;
    -webkit-transform: scale(1.12);
    transform: scale(1.12);
    transition: opacity 1s, -webkit-transform 1s;
    transition: opacity 1s, transform 1s;
    transition: opacity 1s, transform 1s, -webkit-transform 1s;
}

.image-frame span {
    color: white;
    text-decoration: none;
    position: absolute;
    bottom: 0.2em;
    left: 0.5em;
    font-size: 200%;
    font-weight: bold;
    font-family: Lato, Oswald, Montserrat, Arial, Arial, Helvetica, sans-serif;
    line-height: normal;
}

    .third_nowidth .image-frame span {
        font-size: 120%;
    }
.image-frame:hover img {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    transition: opacity 1s, -webkit-transform 1s;
    transition: opacity 1s, transform 1s;
    transition: opacity 1s, transform 1s, -webkit-transform 1s;
}

.button.pictoral {
}

.row {
    vertical-align: top;
    margin-bottom: 2em;
}
            .row .third_nowidth
            {
                padding: 0 1rem;
            }

body:not(.mobile) .row .service {
    vertical-align: top;
    display: inline-block;
    width: 22%;
    box-sizing: border-box;
}

body.mobile .row .service {
    vertical-align: top;
    margin-bottom: 2em;
}

.row .service .image-frame { 
    width: 100%;
}

body:not(.mobile) .row .service {
    margin-right: 3.5%;
}

    body:not(.mobile) .row .service:last-child {
        margin-right: 0;
    }



a[onclick] {
    cursor: pointer;
}




.printonly { display: none !important; }



section.upcoming-launches {
    background-image: url("/assets/themes/life-prime/images/section-bg/cols_skyline2_nosky.jpg");
    background-position: 80% 50%;
}






    /*Added to theme.css.  For cache purposes, not safe to remove from the footer ascx until 7/3/2017*/ 

    .opt_in_form {
        /*margin-top: 2rem;*/
        margin-top: -0.5rem;
        background-color: rgba(0,0,0,0.1);
        /*border-radius: 0.75rem;*/
        /*border: 1px solid rgba(128,128,128,0.2);*/
        display: inline-block;
        box-sizing: border-box;
        margin-bottom: 1rem;
        padding: 0.5rem 1rem;
        /*margin-left: -1rem;*/
        max-width: 24.375rem;
    }

    .opt_in_form *,
    .opt_in_form input[type="text"],
    .opt_in_form input[type="email"],
    .opt_in_form a.button, 
    .opt_in_form a
     {
        text-shadow: none;
        box-shadow: none;
    }


    .opt_in_form input[type="text"],
    .opt_in_form input[type="email"] {
        text-align: left;
        font-size: 0.85rem;
        display: table-cell;
        border: #fff;
        padding: 3px 0.5rem;
        box-sizing: border-box;
    }

    .opt_in_form input[type="text"],
    .opt_in_form input[type="text"]:focus,
    .opt_in_form input[type="email"],
    .opt_in_form input[type="email"]:focus {
        outline: none;
    }

    .opt_in_form .tbl_row {
        display: table-row;
        width: 100%;
    }


    .opt_in_form .column_header {
        border-bottom: 1px solid rgba(0,0,0,0.2);
        margin-bottom: 0.5rem;
    }

    .opt_in_form .email_signup_button {
        font-size: 0.85rem;
        font-family: 'Open Sans', Arial, Helvetica, Sans-serif;
        padding: 3px 0.5rem;
        box-sizing: border-box;
        display: table-cell;
        margin-left: 2px;
    }

    .opt_in_form .tbl {
        margin-bottom: 0.5rem;
        width: 100%;
        box-sizing: border-box; 
    }

    
    .email_invitation {
        font-size: 0.85rem;
        line-height: 1rem;
    }

    /*/Added to theme.css.  For cache purposes, not safe to remove from the footer ascx until 7/3/2017*/



div.media-buttons {
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: -1em;
    margin-right: -1em;
    text-align: center;
}

    div.media-buttons a {
        margin-left: 1em;
        margin-right: 1em;
        display: inline-block;
        width: 200px;
        height: 113px;
        vertical-align: top;
        padding: 2em 0;
        font-weight: bold;
        text-decoration: none !important;
    }

    div.media-buttons img {
        box-shadow: rgba(0,0,0,0.8) 0 0.2em 0.5em;
        transition: box-shadow 0.2s;
        width: 100%;
    }

        div.media-buttons img:hover {
            box-shadow: rgba(0,0,0,0.8) 0.4em 0.5em 1.5em;
        }



.SamePageMessageGreen {
    background: rgba(200,255,200,0.8);
}

.SamePageMessageRed {
    background: rgba(255,200,200,0.8);
}
.SamePageMessageBlue {
    background: rgba(200,200,255,0.8);
}

.SamePageMessage {
    box-sizing: border-box;
    padding: 1rem;
    margin-top: 1rem;
    border: 1px solid black;
    max-width: 40rem;
    margin-left: auto;
    margin-right: auto;
}