/**
 * This is the main CSS file for the layout, which will contain most of your site's CSS.
 */

/********** Key **********

.blockName
.blockName-elementName (for a subcomponent of a block)
.blockName_modifierName (for a variation of a block)

/********** Font Stacks **********

font-family: 'Arvo', 'Arial', sans-serif;
font-family: 'kings-caslon-display', 'Times New Roman', serif;
font-family: 'proxima-nova', 'Arial', sans-serif;

*/


/********** Base Styles **********/

html {
    font-size: 100%; /* 16px */
}

body {
    line-height: 1.25;
    position: relative;
    font-family: 'Arvo', 'Arial', sans-serif;
    font-weight: normal;
    color: #5D5656;
    background: #FDFBFB;

    -webkit-text-size-adjust: 100%; /* responsive */
}
    body.adminbar-loaded {
        margin-top: 40px; /* Make sure the adminbar doesn't cover the page */
    }
    body.adminbar-loaded.layout_modal {
        display: none; /* Make sure the adminbar doesn't cover the page */
    }

.mobileOverflowFix {
    overflow-x: hidden;
}

#adminbar {
    font-size: .7em;
}
    /* Hide adminbar in modal windows */
    .layout_modal #adminbar {
        display: none;
    }


/********** Helper Classes **********/

.mb1.mb1 {
    margin-bottom: .5rem;
}
.mb2.mb2 {
    margin-bottom: 1rem;
}
.mb3.mb3 {
    margin-bottom: 1.5rem;
}
.mb4.mb4 {
    margin-bottom: 2rem;
}
.mb5.mb5 {
    margin-bottom: 2.5rem;
}
.mb6.mb6 {
    margin-bottom: 3rem;
}

/*.clip {
    overflow: hidden;
}*/

.noMargin.noMargin {
    margin: 0;
}

.noPad.noPad {
    padding: 0;
}

.columnize2 li, .columnize3 li, .columnize4 li {
    padding-right: 2.5em;
}

.clickable {
    cursor: pointer;
}

.invisible {
    visibility: hidden;
    position: absolute;
    z-index: -99;
}

/**
 * Helper class for removing the base link styles
 */
a.noLink {
    font-weight: inherit;
    text-decoration: inherit;
    color: inherit;
}
    a.noLink:hover, a.noLink:active, a.noLink:focus {
        color: inherit;
        text-decoration: inherit;
    }


/* Animations */

a, a:hover,
.animate {
    -moz-transition: all .3s;
    -webkit-transition: all .3s;
    transition: all .3s;
}

/* End Animations */

/**
 * Wrap tables and other elements with this to make it possible to enable horizontal scroll when the screen size is too small to contain the element fully
 */
.scrollWrapper {
    overflow: auto;
    position: relative;
    margin-bottom: 2em;
}
    .scrollWrapper > table {
        margin: 0;
    }

.scrollWrapper_alt {
    display: table;
    table-layout: fixed;
    width: 100%;
}
    .scrollWrapper_alt-cell {
        display: table-cell;
        overflow-x: auto;
        width: 100%;
    }
    .scrollWrapper_alt-row {
        display: table-row;
    }

/**
 * Allow 2 column format in text fields
 */
.columns2 {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
    column-gap: 2.5rem;

    margin-bottom: 2rem;
}
    @media (max-width: 750px) {
        .columns2 {
            -moz-column-count: 1;
            -webkit-column-count: 1;
            column-count: 1;

            margin-bottom: 0;
        }
    }

/********** Blocks **********/

/* Sets site's main container width */
.container {
    width: 90%;
    min-width: 900px;
    max-width: 1400px;
    margin: 0 auto;
    zoom: 1;
    position: relative;
}
    /* Ignore nested containers */
    .container .container {
        width: auto;
        min-width: initial;
        max-width: initial;
        margin: initial;
    }
    @media screen and (max-width:1200px) {
        .container {
            min-width: 200px;
        }
    }

.heading1 {
    font-family: "kings-caslon-display", "Times New Roman", serif;
    font-size: 2.5em;
    color: #4C6C89;
    letter-spacing: 1.5px;
    margin-bottom: 1.5rem;
    line-height: 1.25;
}

.heading2 {
    font-family: "kings-caslon-display", "Times New Roman", serif;
    font-size: 2em;
    color: #4C6C89;
    letter-spacing: 1.5px;
    margin-bottom: 1.5rem;
    line-height: 1.25;
}

.heading3 {
    font-family: "kings-caslon-display", "Times New Roman", serif;
    font-size: 1.5em;
    color: #4C6C89;
    letter-spacing: 1px;
    margin-bottom: 1.5rem;
    line-height: 1.25;
}

.heading4 {
    position: relative;
    text-align: center;
    font-family: "kings-caslon-display", "Times New Roman", serif;
    font-size: 2.625em;
    font-weight: 300;
    color: #665D5D;
    letter-spacing: 1px;
    margin-bottom: 3rem;
    line-height: 1.25;
}
    .heading4:before, .heading4:after {
        content:'';
        display: inline-block;
        vertical-align: middle;
        margin: 20px;
        height: 1px;
        width: 50px;
        background: #C2C2C2;
    }
    @media (max-width: 1100px) {
        .heading4:before, .heading4:after {
            display: none;
        }
    }
    @media (max-width: 600px) {
        .heading4 {
            font-size: 2em;
        }
    }

.heading5 {
    position: relative;
    text-align: center;
    font-family: "kings-caslon-display", "Times New Roman", serif;
    font-size: 2.625em;
    font-weight: 300;
    color: #665D5D;
    letter-spacing: 1px;
    margin-bottom: 3rem;
    line-height: 1;
}
    .heading5 span {
        vertical-align: middle;
    }
    @media (max-width: 600px) {
        .heading5 {
            font-size: 2em;
        }
    }


.headingIcon {
    vertical-align: middle;
    margin-right: 14px;
    margin-left: -20px;
    width: 50px; height: 50px;
}
    @media (max-width: 600px) {
        .headingIcon {
            display: block;
            margin: 0 auto .5rem;
        }
    }

hr {
    position: relative;
    border-color: #e9e9e9;
    width: 100vw;
    left: 50%;
    margin-left: -50vw;
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/* Use the richTxt class to wrap content entered in rich text (wysiwyg) editor fields. */
.richTxt {
    line-height: 2.125;
}
    .richTxt ol, .richTxt ul {
        margin-bottom: 2rem;
        padding-left: 1.5rem;
    }
    .richTxt ul {
        list-style: square;
    }
    .richTxt ol {
        counter-reset: li;
    }
        .richTxt ol > li {
            position: relative;
            margin-left: 2rem;
            margin-bottom: 1rem;
        }
        .richTxt ol > li:before {
            content: counter(li);
            counter-increment: li;
            position: absolute;
            top: .1rem;
            left: -4rem;
            width: 2.5rem;
            /*height: 90%;*/
            margin-right: 8px;
            color: #a5a5a5; /* #e06366 */
            font-weight: bold;
            font-family: 'proxima-nova', 'Arial', sans-serif;
            font-size: .9em;
            text-align: center;
            border-left: 1px solid #eee;
        }
        .richTxt li ol,
        .richTxt li ul {margin-top:6px;}
        .richTxt ol ol li:last-child {margin-bottom:0;}
        .richTxt li {
            margin-bottom: .5rem;
        }

    /**
     * Increase the spacing between the end of a paragraph and the start of a new heading
     */
    .richTxt p {
        margin-bottom: 1.25em;
    }
        p + .heading1, p + a + .heading1,
        p + .heading2, p + a + .heading2,
        p + .heading3, p + a + .heading3 {
            margin-top: 1.5em;
        }

    @media (min-width: 800px) {
        .richTxt .heading1,
        .richTxt .heading2,
        .richTxt .heading3 {
            margin-left: -.5rem;
        }
    }
    @media (max-width: 600px) {
        .richTxt {
            font-size: .95rem;
        }
    }

/* Drop caps for the first child paragraph */
.dropCap > p:first-child:first-letter {
    color: #5d5656;
    float: left;
    font-family: 'kings-caslon-display', 'Times New Roman', serif;
    font-size: 6em;
    line-height: 1em;
    padding-right: 1rem;
    padding-left: 0;
}

blockquote, .blockquote {
    margin: 0 0 1rem;
    padding: 0 10%;
    font-family: "kings-caslon-display", "Times New Roman", serif;
    font-size: 1.5em;
    color: #995858;
    font-style: normal;
    line-height: 1.6;
    text-align: center;
    box-sizing: content-box;
}
    blockquote p, .blockquote p {
        line-height: 1.6;
    }
    blockquote:before,
    .blockquote:before,
    blockquote:after,
    .blockquote:after {
        content: "";
        position: relative;
        display: block;
        margin: 2rem 0;
        width: 100vw;
        left: 50%;
        margin-left: -50vw;
        border-top: 1px #e9e9e9 solid;
    }

/* On mobile, all blockquotes should appear centered, so we only apply the following styles for larger screens */
@media (min-width: 800px) {
    .blockquote_left, .blockquote_right {
        position: relative;
        border: 1px solid #e9e9e9;
        border-radius: 1px;
        padding: 1.5rem 2rem 0;
        margin-top: .5rem;
        margin-bottom: .5rem;
        max-width: 300px;
    }

    .blockquote_left {
        float: left;
        margin-right: 2.5rem;
        border-left: 0;
        text-align: right;
        margin-left: 0;
        margin-left: -webkit-calc(-100vw - ((90vw - 670px) / 2));
        margin-left: -moz-calc(-100vw - ((90vw - 670px) / 2));
        margin-left: calc(-100vw - ((90vw - 670px) / 2));
        padding-left: 100vw;
    }
        .blockquote_left:before {
            display: none;
        }
        .blockquote_left:after {
            position: absolute;
            border: none;
            top:-1px; right:-1px;;
            width: 32px;
            height: 32px;
            content: '';
            margin: 0;
            background: url(images/blockquote-corner.png) top right no-repeat;
        }

    .blockquote_right {
        float: right;
        text-align: left;
        border-right: 0;
        margin-left: 2.5rem;
        margin-right: 0;
        /*margin-right: -webkit-calc(-100vw - ((90vw - 670px) / 2));
        margin-right: -moz-calc(-100vw - ((90vw - 670px) / 2));
        margin-right: calc(-100vw - ((90vw - 670px) / 2));*/
        margin-right: -100vw;
        padding-right: 100vw;
    }
        .blockquote_right:before {
            display: none;
        }
        .blockquote_right:after {
            position: absolute;
            border: none;
            top:-1px; left:-1px;
            width: 32px;
            height: 32px;
            content: '';
            margin: 0;
            background: url(images/blockquote-corner.png) top right no-repeat;

            -moz-transform: scaleX(-1);
            -o-transform: scaleX(-1);
            -webkit-transform: scaleX(-1);
            -ms-transform: scaleX(-1);
            transform: scaleX(-1);

        }
}
@media (min-width: 1550px) { /* Window width when .container hits its max-width */
    .blockquote_left {
        margin-left: -webkit-calc(-100vw - ((1400px - 670px) / 2));
        margin-left: -moz-calc(-100vw - ((1400px - 670px) / 2));
        margin-left: calc(-100vw - ((1400px - 670px) / 2));
    }
    .blockquote_right {
        margin-right: -webkit-calc(-100vw - ((1400px - 670px) / 2));
        margin-right: -moz-calc(-100vw - ((1400px - 670px) / 2));
        margin-right: calc(-100vw - ((1400px - 670px) / 2));
    }
}

.subheading {
    font-family: 'proxima-nova', sans-serif;
    font-size: 1.1em;
    color: #786D6D;
    margin-top: -2rem;
    margin-bottom: 3rem;
    line-height: 1.5em;
}


.header {
    position: relative;
    height: 387px;
    color: #fff;
}
    .site_Touchpoints .header {
        height: 420px;
    }
    .header .parallax {
        position: absolute;
        z-index: -1;
        height: 100%;
        width: 100%;
    }
    .header-slideshow {
        position: absolute;
        top: 0; right: 0; bottom: 0; left: 0;
    }
    .header-bg {
        position: absolute;
        top: 0; right: 0; bottom: 0; left: 0;

        background-color: #352A25;
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }
    .header-mask {
        position: absolute;
        top: 0; right: 0; bottom: 0; left: 0;

        background-image: radial-gradient(49% 103%, rgba(0,0,0,0.2) 42%, rgba(0,0,0,0.71) 100%);
    }
    .header > .container {
        height: 100%
    }
    .header-top {
        padding-top: 12px;
    }
    .header-address {
        position: absolute;
        top:50px; right:0;
        font-family: 'proxima-nova', sans-serif;
        color: #F6F0F0;
        line-height: 1.375em;
        text-shadow: 0 0 11px rgba(0,0,0,0.50);
        text-align: right;
        font-weight: bold;
    }
    .header-badge {
        position: absolute;
        top: 100%;
        right: 0;
        width: 225px;
    }
    @media (max-width: 1200px) {
        .header-badge {
            display: none;
        }
    }
    .header-phone {
        float: left;
        display: inline-block;
        font-size: 18px;
        font-weight: bold;
        padding-top: 4px;
    }
    .header-icons {
        float: right;
    }
    .header-social {
        display: inline-block;
        margin-right: 30px;
    }
    .header-search {
        display: inline-block;
    }
    .header-logo {
        z-index: 1;
    }
    .site_ICare .header-logo,
    .site_MissionCare .header-logo {
        position: absolute;
        left: 0; bottom: 34px;
        margin-right: 400px;
    }
    .site_Touchpoints .header-logo,
    .site_Facility .header-logo {
        position: relative;
        text-align: center;
        bottom: 0;
        top: 42%;
        transform: translateY(-50%);
        margin: 0 5%;
    }
    .site_ICare .header-logo,
    .site_MissionCare .header-logo {
        padding: 0 .5rem;
    }
    .header-foot {
        position: absolute;
        bottom: 0; left: 0; right: 0;
    }
    .site_ICare .header-foot, .site_MissionCare .header-foot {
        padding: 14px 0;
        background-image: linear-gradient(90deg, rgba(0,0,0,0.00) 38%, rgba(0,0,0,0.22) 63%);
    }
    @media (max-width: 900px) {
        .header-top {
            padding-top: 6px;
        }
        .header-phone {
            font-size: 14px;
            padding-top: 6px;
        }
    }
    @media (max-width: 950px) {
        .site_ICare .header-logo,
        .site_MissionCare .header-logo {
            margin-right: 200px;
        }
    }
    @media (max-width: 600px) {
        .header {
            height: 320px;
        }
        .site_Facility .header, .site_Touchpoints .header {
            height: 370px;
        }
        .header-social {
            display: none;
        }
        .site_ICare .header-foot,
        .site_MissionCare .header-foot {
            display: none;
        }
        .header-foot .container {
            width: auto;
        }
        .site_ICare .header-logo,
        .site_MissionCare .header-logo {
            margin-right: 0;
            max-width: 391px;
            max-height: 220px;
            bottom: 15px;
        }
    }

.logo {}
	.logo-link {
		display: block;
	}
    @media (max-width: 800px) {
        .logo-img_anniversary { /* overrides for when logo is wider and taller than usual */
            max-width: 80%;
        }
    }
	@media (max-width: 600px) {
		.logo-img {
			max-height: 190px;
		}
        .logo-img_anniversary { /* overrides for when logo is wider and taller than usual */
            max-height: 165px;
            max-width: 90%;
        }
	}

.headerCta {
    text-align: right;
}
    .headerCta-label {
        display: inline-block;
        font-family: 'proxima-nova', sans-serif;
        vertical-align: middle;
        line-height: 1.2em;
        font-size: 14px;
        margin-right: 20px;
    }
    .headerCta-btn {

    }
    @media (max-width: 1100px) {
		.headerCta-label {
			display: none;
		}
	}
.headerCta_desktop {}
    @media (max-width: 950px) {
        .headerCta_desktop {
            display: none;
        }
    }


.social {
    font-size: 22px;
}
    .social-icon {
        margin: 0 8px;
    }
    .social-icon i {
        -moz-transition: all .3s ease-in-out;
        -webkit-transition: all .3s ease-in-out;
        transition: all .3s ease-in-out;
    }
        .social-icon i:hover, .social-icon i:focus {
            -moz-transform: scale(1.2);
            -webkit-transform: scale(1.2);
            transform: scale(1.2);
        }
    .social a {
        color: #fff;
    }
    /*.social .fa-facebook:hover, .social .fa-facebook:active, .social .fa-facebook:focus {
        color: #3b5998;
    }
    .social .fa-twitter:hover, .social .fa-twitter:active, .social .fa-twitter:focus {
        color: #1DA1F2;
    }
    .social .fa-youtube:hover, .social .fa-youtube:active, .social .fa-youtube:focus {
        color: #cc181e;
    }*/

.search {
}
    .search-box {
        display: inline-block;
        width: 0;
        background: none;
        border: 0;
        padding: 0;
        outline: 0;
        border-bottom: 1px solid #fff;
        font-size: 20px;
        color: #fff;
        font-family: 'proxima-nova', sans-serif;
        vertical-align: baseline;

        -moz-appearance:none;
        -webkit-appearance:none;
        appearance: none;

        -moz-transition: width .3s ease-in-out;
        -webkit-transition: width .3s ease-in-out;
        transition: width .3s ease-in-out;
    }
    .search-btn {
        display: inline-block;
        vertical-align: baseline;
        font-size: 22px;
        background: none;
        border: 0;
        padding: 0;
        color: #fff;

        -moz-transition: all .3s ease-in-out;
        -webkit-transition: all .3s ease-in-out;
        transition: all .3s ease-in-out;
    }
        .search-btn:hover, .search-btn:focus {
            -moz-transform: scale(1.2);
            -webkit-transform: scale(1.2);
            transform: scale(1.2);
        }
    .search-btn:hover, .search-btn:focus, .search-btn:active {
        cursor: pointer;
        outline: none;
    }

.search_open .search-box {
    width: 300px;
}
    @media (max-width: 800px) {
        .search_open .search-box {
            width: 230px;
        }
    }
    @media (max-width: 600px) {
        .search_open .search-box {

        }
    }

.mission {
    position: absolute;
    right:0; bottom:100px;
    text-align: right;
    font-family: 'kings-caslon-display';
    font-size: 36px;
    color: #FFFFFF;
    line-height: 1.2em;
    text-shadow: 0 1px 1px rgba(0,0,0,0.53), 0 0 25px #000;
}
    .mission-line1 {
        font-size: 48px;
        margin-right: 55px;
        letter-spacing: 1px;
    }
    .mission-line2 {
        font-size: 38px;
        letter-spacing: 1.5px;
    }
    @media (max-width: 840px) {
        .mission {
            bottom: 140px;
        }
    }
    @media (max-width: 600px) {
        .mission {
            bottom: 150px;
            line-height: 1.25;
        }
	        .mission-line1 {
	            font-size: 30px;
	            margin-right: .5rem;
	        }
	        .mission-line2 {
	            font-size: 20px;
	        }
    }

.border1 {
    border: 6px solid #FFFFFF;
    box-shadow: 0 1px 18px 0 rgba(0,0,0,0.13), 0 2px 3px 0 rgba(0,0,0,0.11);
}

.border2 {
    background: rgba(253,251,251,0.38);
    border: 1px solid rgba(255,255,255,0.54);
    padding: 4px;
}


.footer {
    position: relative;

    background-image: url(../Layout/images/triangles.png);
    background-position: top;
    background-color: #C03C3F;

    color: #fff;
    padding: 3rem 0;
}
    @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
        .footer {
            background-image: url(../Layout/images/triangles@2x.png);
            background-size: 16px;
        }
    }
    .footer-address {
        font-family: 'proxima-nova', sans-serif;
        font-size: 14px;
        line-height: 1.4em;
        margin-bottom: 1.5rem;
    }
    .footer-phones {
        padding-left: 0;
        list-style: none;
        font-family: 'proxima-nova', sans-serif;
        font-size: 16px;
        margin-bottom: 1.5rem;
    }
        .footer-phones i {
            margin-right: 3px;
        }
        .footer-phones > li {
            margin-bottom: 0;
        }
    .footer-nav {
        font-family: 'proxima-nova', sans-serif;
        font-size: 12px;
        text-transform: uppercase;
    }
    .footer-nav a {
        font-weight: bold;
    }
    .footer-logo {
        margin-bottom: 26px;
        padding-top: 6px;
    }
    .footer-social {
        font-size: 38px;
        margin-bottom: 2.5rem;
    }
        .footer-social i {
            -moz-transition: all .3s ease-in-out;
            -webkit-transition: all .3s ease-in-out;
            transition: all .3s ease-in-out;
        }
        .footer-social i:hover, .footer-social i:focus {
            -moz-transform: scale(1.2);
            -webkit-transform: scale(1.2);
            transform: scale(1.2);
        }
    .footer a {
        color: #fff;
    }
    .footer-copyright {
        font-size: 12px;
        color: #F6F0F0;
        line-height: 1.5em;
    }
    .footer .top {
        position: absolute;
        right: 0;
        top: 3rem;
    }
    .footer-anniversaryLogo {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        flex-direction: column;
        padding-right: 1rem;
    }
        .footer-anniversaryLogo .designer {
            padding-top: 4rem;
        }
    .site_blue .footer {
        background-color: #4C6C89;
    }
    .site_burgundy .footer {
        background-color: #6f2727;
    }
    .site_purple .footer {
        background-color: #616cab; /*#5e6798*/
    }
    .site_blueGray .footer {
    	background-color: #30424c;
    }
    @media(max-width: 720px) {
        .footer .top {
            top: 0;
        }
        .footer-nav {
            margin-bottom: 3rem;
        }
        .footer-copyright {
            margin-bottom: 2rem;
        }
        .footer-anniversaryLogo {
            align-items: center;
        }
            .footer-anniversaryLogo .designer {
                padding-top: 0;
            }
    }

.top {
    display: block;
    font-family: arial, sans-serif;
    background: #101010;
    width: 56px;
    text-align: center;

    -moz-transition: width .1s linear;
    -webkit-transition: width .1s linear;
    transition: width .1s linear;
}
    .top-triangle {
        display: inline-block;
        width: 0;
        height: 0;
        border-top: 0;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
        border-bottom: 12px solid #fff;
        padding: 0;
        margin: 8px auto;
        line-height: 1em;
    }
    .top-label {
        text-transform: uppercase;
        font-size: 9px;
        line-height: 1em;
        padding: 0;
        margin-bottom: 10px;
    }
    .top:hover {
        width: 60px;
    }

.designer {
    padding-top: 9rem;
    float: right;
}
    .designer a {
        display: inline-block;
        text-decoration: none;
        opacity: .6;
    }
    .designer a:hover, .designer a:active, .designer a:focus {
        text-decoration: none;
        opacity: 1;
    }
    .designer-txt {
        border-right: 1px solid rgba(255,255,255,.3);
        padding-top: 5px;
        padding-right: 12px;
        display: inline-block;
        height: 20px;
        vertical-align: middle;
        line-height: 1.5em;
        font-size: .5em;
        font-family: "arvo", sans-serif;
    }
    .designer-logo {
        display: inline-block;
        vertical-align: middle;
        width: 50px;
        padding-left: 6px;
    }
    @media(max-width: 720px) {
        .designer {
            padding-top: 0;
            float: none;
            text-align: center;
        }
    }

/**
 * These classes are mainly for use in CKEditor. CKEditor can only apply one class at a time, so all subclasses must include the base class's styles
 */
.align, .align_left, .align_right, .align_center {
    margin-top: .5rem;
    margin-bottom: .5rem;
    padding: 6px;
    text-align: center;
    max-width: 400px;
	border: 1px solid #e9e9e9;
	border-radius: 1px;
}
    .align_left, .align_right {
        max-width: 50%;
    }
    .align_left {
        float: left;
        margin-right: 2.5rem;
        margin-left: 0; /* fallback */
    }
    /*.align_left {
        margin-left: calc((-90vw + 670px) / 2);
    }*/
    .align_left figcaption {
        text-align: left;
    }
    .align_right {
        float: right;
        margin-left: 2.5rem;
        margin-right: 0;
    }
    /*.align_right {
        margin-right: calc((-90vw + 670px) / 2);
    }*/
    .align_right figcaption {
        text-align: right;
    }
    .align_center {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }
    .align_right > figcaption,
    .align_left > figcaption,
    .align_center > figcaption {
        font-family: "proxima-nova", Arial, sans-serif;
        color: #828282;
        font-size: .8em;
        padding: .5rem .25rem .25rem;
        line-height: 1.25;
    }
    .align_right > img,
    .align_left > img,
    .align_center > img {
        width: 100%;
    }
    @media (max-width: 1000px) {
        /*.align_left {
            margin-left: calc((-90vw + 670px) / 2);
        }
        .align_right {
            margin-right: calc((-90vw + 670px) / 2);
        }*/
    }
    @media (max-width: 800px) {
        .align_left {
            margin-left: 0;
        }
        .align_right {
            margin-right: 0;
        }
    }
    @media (max-width: 600px) {
        .align_left, .align_right, .align_center {
            float: none;
            max-width: 100%;
            display: block;
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 2rem;
        }
        .align_left > figcaption,
        .align_right > figcaption {
            text-align: center;
        }
    }
    @media (min-width: 1550px) { /* Window width when .container hits its max-width */
        /*.align_left {
            margin-left: calc((-1400px + 670px) / 2);
        }
        .align_right {
            margin-right: calc((-1400px + 670px) / 2);
        }*/
    }

.columnize2 li, .columnize3 li, .columnize4 li {
    padding-right: 2.5em;
}

/*** Forms ***/

/* Placeholder text */
.placeholder {
    color: #999;
}
    ::-webkit-input-placeholder {
        color: #999;
    }
    :-moz-placeholder {
        color: #999;
    }
    ::-moz-placeholder {
        color: #999;
    }
    ::-ms-input-placeholder {
        color: #999;
    }

.notice {
    color: #fff;
    background: #555;
    margin: 0 0 2rem 0;
    padding: .8rem;
    font-size: .8em;
    font-weight: bold;
    text-align: left;
}

    .notice_error {
        background: #FF9797;
    }

    .notice_success {
        background: #84D05E;
    }

.field {
    margin-bottom: 1rem;
}
    .field-label {
        display: block;
        font-size: .8rem;
        color: #7b7373;
        margin-bottom: .5rem;
        font-weight: bold;
        font-family: 'proxima-nova', 'Arial', sans-serif;
        text-transform: uppercase;
    }
    .field-input {
        width: 100%;
        max-width: 100%;
    }
    .field-required {
        color: #FF9292;
        font-weight: 600;
    }
    .field-notes {
        font-size: .6em;
        font-style: italic;
        color: #5A5A5A;
        margin-top: .2rem;
    }
    .field-error {
        display: block;
        font-size: .7em;
        font-weight: bold;
        width: 100%;
        color: #f18a8a;
        margin-top: .2rem;
    }

.txtBox {
    border: 1px solid #ccc;
    padding: 1rem;
    max-width: 100%;
    background-color: #fff;
}

.checkboxes {
    font-size: .9em;
    font-family: 'proxima-nova', 'Arial', sans-serif;
}
    .checkboxes li {
        margin-bottom: .25rem;
    }
    .checkboxes input {
        margin-right: .25em;
    }

.txtBox_select {
    /*-webkit-appearance: button;*/
    background: url(images/arrow-down.png) right no-repeat;
    padding-right: 32px;
    white-space: nowrap;
    text-overflow: ellipsis;
}
    @media (-webkit-min-device-pixel-ratio: 1.5),
    (min-resolution: 144dpi) {
        .txtBox_select {
            background-image: url(images/arrow-down@2x.png);
            background-size: 20px 7px;
        }
    }

.txtBox_error {}

/* for use on textareas */
.txtBox_multi {
    vertical-align: top;
    height: initial;
}

.link {
    font-family: 'proxima-nova', 'Arial', sans-serif;
    font-weight: bold;
    font-size: .75rem;
    line-height: 2.125em;
    color: #3697D2;
    letter-spacing: 0.8px;
    text-transform: uppercase;

    /*width: calc(100%);*/ /* edge */
    background-image: linear-gradient(transparent calc(100% - 1px), #3697D2 1px);
    background-repeat: no-repeat;
    background-size: 0% 100%;
    transition: background-size .3s;
}
    .link:hover {
        background-size: 100% 100%;
    }
    .link:active {
        top: 1px;
        position: relative;
    }

.btn {
    background-image: url(images/triangles.png), linear-gradient(0deg, #AE3235 0%, #D23235 100%);
    box-shadow: 0 2px 0 0 #750000;
    font-family: 'Arvo', 'Arial', sans-serif;
    font-size: 14px;
    color: #FFFFFF;
    text-shadow: 0 1px 1px rgba(0,0,0,0.26);
    z-index: 1;
    display: inline-block;
    padding: 10px 30px;
    margin: 4px;
    line-height: 1.2em;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    position: relative;
    border: none;
}
    .btn i {
        font-size: 1.1em;
        /*vertical-align: middle;*/
        margin: 0 4px;
    }
    .btn:hover {
        background-image: url(images/triangles.png), linear-gradient(0deg, #bc3336 0%, #df3336 100%);
    }
    .btn:active {
        top: 1px;
    }
.btn_blue {
	background-image: url(images/triangles.png), linear-gradient(0deg, #4C6C89 0%, #405f7b 100%);
	box-shadow: 0 2px #2e3e4c;
}
	.btn_blue:hover {
		background-image: url(images/triangles.png), linear-gradient(0deg, #507494 0%, #4d789e 100%);
	}
.site_purple .btn {
    background-image: url(images/triangles.png), linear-gradient(0deg, #00917c 0%, #00a890 100%);
    box-shadow: 0 2px 0 0 #00463b;
}
    .site_purple .btn:hover {
        background-image: url(images/triangles.png), linear-gradient(0deg, #00917c 0%, #00bba0 100%);
    }
.site_blueGray .btn {
    background-image: url(images/triangles.png), linear-gradient(0deg, #b54a1b 0%, #EF8354 100%);
    box-shadow: 0 2px 0 0 #90360e;
}
    .site_blueGray .btn:hover {
        background-image: url(images/triangles.png), linear-gradient(0deg, #c35728 0%, #f59165 100%);
    }
.site_blueGray .btn_blue {
    background-image: url(images/triangles.png), linear-gradient(0deg, #30424c 0%, #30424c 100%);
    box-shadow: 0 2px 0 0 #1f2c33;
}
    .site_blueGray .btn_blue:hover {
        background-image: url(images/triangles.png), linear-gradient(0deg, #3a4f5b 0%, #3a4f5b 100%);
    }

.btn_short {
	padding-top: 5px;
    padding-bottom: 5px;
}


main {
    display: block; /* Fix for IE */
}
    .main {
        background: #FDFBFB;
        position: relative;
        z-index: 1;
        /*min-height: 400px;*/
        /*padding-top: 50px;
        padding-bottom: 50px;*/
    }
    .layout_modal .main {
        min-height: 0;
    }
    .main-bg {
        position: absolute;
        top:0; right: 0; left:30%;
        height: 500px;
        background-image: linear-gradient(90deg, #FDFBFB 0%, rgba(253,251,251,0.75) 50%), linear-gradient(0deg, #FDFBFB 0%, rgba(253,251,251,0.00) 100%);
    }
    .main-bg2 {
        background-repeat: no-repeat;
        background-size: cover;
        z-index: -1;
        position: absolute;
        top:0; right:0; bottom:0; left:0;
    }

.MarkupPagerNav {
    margin-bottom: 1.5rem;
    padding: 0;
    font-family: 'proxima-nova', 'Arial', sans-serif;
    text-transform: uppercase;
}
    .MarkupPagerNav span {
        font-weight: bold;
    }
    .MarkupPagerNav li {
        display: inline-block;
        list-style: none;
        margin: 0;
        margin-bottom: .35rem;
    }
    .MarkupPagerNav li a {
        display: inline-block;
        padding: 8px 12px;
        color: #fff;
        background: #84adc9;
        margin-left: 2px;
        font-size: 13px;
    }
    .MarkupPagerNav li.MarkupPagerNavOn a {
        color: #fff;
        background: #4C6C89;
        text-decoration: none;
    }
    .MarkupPagerNav li.MarkupPagerNavSeparator {
        display: inline;
        padding-left: 3px;
        padding-right: 3px;
    }
    .MarkupPagerNav li.MarkupPagerNavNext a,
    .MarkupPagerNav li.MarkupPagerNavPrevious a {
        background: #4C6C89;
    }
    .MarkupPagerNav li a:hover {
        background: #415c75 !important;
    }

.tags {
}
    .tags-item {
        position: relative;
        display: inline-block;
        border: 1px solid #E0E0E0;
        font-family: 'proxima-nova', 'Arial', sans-serif;
        font-size: 10px;
        color: #7C7272;
        padding: 0 8px 0 18px;
        height: 22px;
        line-height: 22px;
        margin-right: 2px;
        margin-bottom: 4px;
        cursor: default;
        white-space:nowrap;

        -moz-border-radius: 20px 0 0 20px;
        -webkit-border-radius: 20px 0 0 20px;
        border-radius: 20px 0 0 20px;
    }
    .tags-item:before {
        position: absolute;
        content: '';
        top: 7px;
        left: 5px;
        width: 5px;
        height: 5px;
        border: 1px solid #ddd;

        -moz-border-radius: 100%;
        -webkit-border-radius: 100%;
        border-radius: 100%;
    }
        a .tags-item:hover {
            border-color: #ccc;
            cursor: pointer;
        }

.section1 {
    position: relative;
    border-top: 2px solid #F0ECEC;
    background-image: /*radial-gradient(50% 87%, #FDFBFB 0%, rgba(255,255,255,0.00) 87%), */linear-gradient(-180deg, #F4F0F0 0%, #FDFBFB 96%, #FDFBFB 100%);
    background-size: 100% 150px;
    background-repeat: no-repeat;
    padding: 50px 0;
}
    .section1:before {
        position: absolute;
        top: -7px; left: 0; right: 0;
        content: '';
        display: block;
        height: 3px;
        background: #F0ECEC;
    }

.section2 {
    position: relative;
    background-image: url(images/triangles@2x.png);
    background-size: 16px;
    background-color: #464040;
    margin-top: 5px;
    margin-bottom: 5px;
}
    .section2:before {
        content: '';
        display: block;
        position: absolute;
        border-top: 1px solid #E9E9E9;
        border-bottom: 1px solid #E9E9E9;
        top:-5px; right:0; bottom:-5px; left:0;
    }

.titleBlock {
    padding: 2rem 0;
    /*border-bottom: 1px solid #ddd;*/
}
    .titleBlock-box {
        float: left;
        height: 51px;
        width: 51px;
        background: #4C6C89;
        text-align: center;
        line-height: 48px;
    }
    .titleBlock-body {
        margin-left: 67px;
    }
    .titleBlock h1 {
        font-size: 1.75em;
        line-height: 1.25em;
        font-family: 'kings-caslon-display', 'Times New Roman', serif;
        color: #464040;
    }
    @media(max-width: 600px) {
        .titleBlock-box {
            height: 44px;
            width: 44px;
            line-height: 44px;
        }
        .titleBlock-box img {
            height: 20px;
        }
        .titleBlock h1 {
            font-size: 1.5em;
        }
        .titleBlock-body {
            margin-left: 57px;
        }
    }

.breadcrumbs {
    font-family: 'proxima-nova', 'Arial', sans-serif;
    font-size: 13px;
    font-weight: 100;
    padding: 0;
    margin: 0;
    list-style: none;
}
    .breadcrumbs > li {
        display: inline-block;
        margin-bottom: 0;
    }
    .breadcrumbs i {
        color: #5F8095;
        margin-right: 4px;
        font-size: 12px;
    }
    .breadcrumbs a {
        color: #3C657E;
        display: inline-block;
        position: relative;
    }
        .breadcrumbs a:after {
            content: '';
            display: block;
            position: relative;
            bottom: 2px;
            width: 0;
            border-bottom: 1px solid #5F8095;
            height: 1px;

            -moz-transition: all .3s;
            -webkit-transition: all .3s;
            transition: all .3s;
        }
        .breadcrumbs a:hover:after {
            width: 100%;
        }
    .breadcrumbs-separator {
        display: inline-block;
        color: #7C7272;
        margin-left: 2px;
        margin-right: 2px;
    }

.mainCols {
    display: flex;
    justify-content: center;
}
    .mainCols-subNav {
        order: 1;
        margin-bottom: 2rem;
        margin-right: 3rem;
        flex-basis: 250px;
        flex-grow: 0;
        flex-shrink: 0;
        max-width: 850px;
    }
    .mainCols-mainCol {
        order: 2;
        flex-grow: 1;
        margin-top: 1rem;
        margin-bottom: 3rem;
        max-width: 850px;
    }
    @media (max-width: 1100px) {
        .mainCols {
            flex-wrap: wrap;
        }
        .mainCols-subNav {
            flex-basis: 100%;
            order: 2;
            margin-right: 0;
        }
        .mainCols-mainCol {
            flex-basis: 100%;
            order: 1;
        }
    }


.fullWidth {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.welcome {
    position: relative;
    padding-top: 50px;
}
    .welcome-bg {
        position: absolute;
        top:0; right: 30%; left:0;;
        height: 500px;
        background-image: linear-gradient(-90deg, #FDFBFB 0%, rgba(253,251,251,0.75) 50%), linear-gradient(0deg, #FDFBFB 0%, rgba(253,251,251,0.00) 100%);
    }
    .welcome-bg2 {
        background-repeat: no-repeat;
        background-size: cover;
        z-index: -1;
        position: absolute;
        top:0; right:0; bottom:0; left:0;
    }
    @media (max-width: 800px) {
        .welcome-bg {
            right: 0;
        }
    }

.portrait {
    text-align: center;
    line-height: 1.3em;
    margin-bottom: 2rem;
}
    .portrait-img {
        margin-bottom: 16px;
        max-width: 270px;
        width: 100%;
    }
    .portrait-name {
        font-family: 'kings-caslon-display', 'Times New Roman', serif;
        font-size: 18px;
        color: #464040;
        letter-spacing: 0;
        margin-bottom: 0;
    }
    .portrait-title {
        font-family: 'proxima-nova', 'Arial', sans-serif;
        font-size: 12px;
        color: #7C7272;
        letter-spacing: 0.8px;
        text-transform: uppercase;
    }

.facilitiesCta {
    position: relative;
    overflow: hidden;
    padding: 50px 0;
}
    .facilitiesCta-bg {
        position: absolute;
        top:0; right:0; bottom:0; left:0;
        background-size: cover;
        background-position: center center;
    }
    .facilitiesCta-mask {
        position: absolute;
        background: #fff;
        opacity: .95;
        top:0; right:0; bottom:0; left:0;
    }
    .facilitiesCta-p {
        font-size: 1.0625em;
        text-align: center;
        margin-bottom: 2em;
    }

/**
 * This is a Hanna Code
 */
.pictureQuote {
    position: relative;
    background-size: cover;
    background-position: center;
    min-height: 575px;
    padding: 1.5rem;
    text-align: left;
    color: #fff;
    border-bottom: 6px solid #C03C3F;
}
    .pictureQuote-border {
        width: 375px;
    }
    .pictureQuote-bg {
        position: absolute;
        top:0; right:0; bottom:0; left:0;
        background-image: linear-gradient(-180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.04) 25%, #000000 100%);
    }
    .pictureQuote-quote {
        position: absolute;
        left:1.5rem; bottom:84px; right:1.5rem;
        line-height: 1.75;
        text-shadow: 0 1px 1px rgba(0,0,0,0.92);
    }
    .pictureQuote-foot {
        position: absolute;
        left:1.5rem; bottom:1.5rem; right:1.5rem;
    }
    .pictureQuote-attr {
        font-family: 'kings-caslon-display', 'Times New Roman', serif;
        font-size: 1.25em;
        line-height: 1.25;
    }
    .pictureQuote-subtitle {
        font-family: 'proxima-nova', 'Arial', sans-serif;
        font-size: .75em;
        color: #E0E0E0;
        letter-spacing: 0.8px;
        text-transform: uppercase;
        line-height: 1.25;
    }
    .pictureQuote-icon {
        font-family: 'kings-caslon-display', 'Times New Roman', serif;
        font-size: 160px;
        position: absolute;
        right: 1.5rem;  bottom: -200px;
    }

.largePrint {
    font-size: 1.25em;
    line-height: 1.9;
}

.smallPrint {
    font-size: .75em;
    line-height: 1.75;
}

.featuredVideo {
    padding-top: 1rem;
    padding-bottom: 1rem;
    margin-bottom: 2rem;
}

.multiColList {
    list-style: none !important;
    text-align: center;
    margin: 0 !important;
    padding: 0 !important;
}

.anniversaryLogo {}
    .anniversaryLogo-img {
        width: 150px;
    }
    @media (max-width: 720px) {
        .anniversaryLogo {
            padding-bottom: 2rem;
        }
    }