/*
Theme Name: Teen Pact
Theme URI: http://squibler.com
Author: John Snavely
Author URI: http://squibler.com
Description: A custom theme designed for Teen Pact
Version: 1.1
*/

/******[ FONTS ]*****************************************************/
@font-face {
    font-family: nova;
    src: url( 'fonts/Proxima Nova/Mark Simonson - Proxima Nova Semibold.otf' ) format( 'opentype' );
}
@font-face {
    font-family: crimson;
    src: url( 'fonts/Crimson Text/CrimsonText-Regular.ttf' ) format( 'truetype' );
}
@font-face {
    font-family: addingtoncf;
    src: url( 'fonts/AddingtonCF/AddingtonCF-Site.otf' ) format( 'opentype' );
}
/*@font-face {
    font-family: crimson-bold;
    src: url( 'fonts/Crimson Text/CrimsonText-Bold.ttf' ) format( 'truetype' );
}*/


/******[ BODY ]******************************************************/
body { padding-top: 10em; }
section { padding: 2em 0; }

/*strong.stronger { font-family: crimson-bold; font-weight: 100; }*/

.text-italic { font-style: italic; }

p { line-height: 1.8em; padding: 0; margin: 0; }
p.desc { font-size: .8em !important; font-style: italic; }

a { color: #4162ae; text-decoration: underline; }
a:hover { color: #2d2d2d; }

blockquote { padding-left: 1em; margin: 1.5em 0; border-left: 5px solid #ccc; }
blockquote, blockquote p, p blockquote { color: #4162af; font-style: italic; font-size: 1.2em; text-align: left; font-family: crimson; line-height: 1.4em !important; }

h1 { min-height: 1em; font-family: crimson; font-size: 3em; color: #222e45; }
h2 { min-height: 1em; font-family: nova; font-size: 2em; color: #4162ae; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 900; }
h3 { min-height: 1em; font-family: nova; font-size: 1.6em; color: #ae4243; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 900; }
h4 { min-height: 1em; font-family: crimson; font-size: 1.4em; line-height: 1.4em; color: #2d2d2d; font-weight: 100; }
h5 { min-height: 1em; font-family: nova; line-height: 1.8em; font-size: 1.2em; color: #444; text-transform: uppercase; letter-spacing: 0.1em; }
h6 { min-height: 1em; font-family: crimson; font-weight: 600; color: #4164ae; line-height: 2em; }

.container .event h1.title { font-size: 1.9em; line-height: 1.5em; }

pre { text-align: left; }

ul:not( .menu ):not( .unstared ) { list-style: none; margin-top: 2em; margin-bottom: 2em; }
ul:not( .menu ):not( .unstared ) li { margin-bottom: 1em; position: relative; font-size: 1.2em; }
ul:not( .menu ):not( .unstared ) li:before { content: '\f005'; color: #ba3b40; font-family: fontawesome; font-size: 0.7em; position: absolute; margin-top: -.2em; left: -2em; }
ul.unstared ul li:before { content: '' !important; }

.gform_body ul.gform_fields { padding-left: 0 !important; }
.gform_body ul.gform_fields li.gfield:before { content: '' !important; }
.gform_body ul.gform_fields li.gfield { padding-bottom: 1.6em !important; }
.gform_body ul.gform_fields li.gfield:last-child { padding-bottom: .5em !important; }
.gform_body .gfield_label { margin-bottom: 0; }
.gform_body label:not( .gfield_label ) { color: #ccc; margin-bottom: 0 !important; }
.gform_body .gfield_description { color: #4163ae; }
.gform_body ul.gfield_radio label { color: #000; } 
.gform_body select { border: 1px solid #ddd; padding: .65em .8em .3em; }
.gform_body ul.gfield_checkbox li label, .gform_body ul.gfield_radio li label { color: #212529 !important; padding-left: 1em; position: relative; top: .2em; }
.gform_body ul.gfield_checkbox, .gform_body ul.gfield_radio { padding-left: 0 !important; }

.blog-post:not( .menu ):not( .unstared ) ul, .event-faq:not( .menu ):not( .unstared ) ul { margin-top: .1em; margin-bottom: .1em; padding-left: 4em;  }
.blog-post:not( .menu ):not( .unstared ) ul li, .event-faq:not( .menu ):not( .unstared ) ul li { margin-top: .1em; margin-bottom: .5em; line-height: 1.8em; font-family: crimson; }

span.spacer { display: inline-block; width: 30px; }

@media ( max-width: 1199px ) {
 
    body { padding-top:  5em; }
    
}


/******[ HEADER ]****************************************************/
header { position: fixed; z-index: 100; top: 0; left: 0; right: 0; border-bottom: 1px solid #ccc; background: #fff; transition: height 0.2s ease-in-out; padding-bottom: 1em; transition: all 0.3s ease-in-out; }
body.admin-bar header { top: 32px; }
#wp-admin-bar-search { display: none; }

.logo-holder { margin: 2em 0; transition: margin 0.3s ease-in-out; }
svg.logo-min { max-width: 115px; height: 100px; opacity: 0; }
svg.logo { max-width: 360px; width: 360px; height: 100px; opacity: 1; }
svg.logo path, svg.logo-min path { fill: #232e46 !important; }
svg.logo-min, svg.logo { position: absolute; z-index: 2; transition: opacity 0.2s ease-in-out; }

header.sticky { padding-bottom: .2em; }
header.sticky .logo-holder { margin-top: .6em; }
header.sticky svg.logo, header.sticky svg.logo-min { max-height: 60px; }

section.blog-header { padding: 2em 0 0; margin-bottom: -1em; }
.blog-header h1 { text-align: center; color: #444; font-size: 6em; font-family: crimson; text-transform: uppercase; letter-spacing: 0.3em; font-style: italic; padding: .4em 0 .3em; border-bottom: 1px solid #ccc; }
.blog-header .menu { text-align: center; border-bottom: 1px solid #ccc; padding: .2em 0 .6em; font-family: crimson; }
.blog-header .menu .top.inactive { color: #ccc; }
.blog-header .desc { text-transform: uppercase; color: #666; font-style: italic; letter-spacing: 0.4em; font-size: .8em; }
.blog-header ul li.top { color: #4163ae; cursor: pointer; }
.blog-header ul li.top:hover ul { height: auto; opacity: 1; }
.blog-header ul li.top:after { content: '\f0d7'; font-family: fontawesome; color: #ccc; margin-left: .3em; }
.blog-header ul li ul { transition: all 0.2s ease-in-out; height: 0; opacity: 0; position: absolute; background: rgba( 255,255,255,0.9 ); -webkit-backdrop-filter: blur( 15px ); backdrop-filter: blur( 15px ); border: 1px solid #ccc; max-height: 450px; overflow-y: scroll; width: 240px; text-align: left; padding: .8em 1em .6em; z-index: 1; }
.blog-header ul li ul li { line-height: 2.2em; display: block; font-style: italic; }

.page_nav { text-align: center; margin-top: 1em; margin-bottom: 3em; }
.page_nav .page-numbers { box-shadow: inset 0 0 0 0 transparent; transition: all 0.16s ease-in-out; color: #ccc; display: inline-block; min-width: 56px; margin: 4px 4px 4px 0; padding: 15px 18px 14px 18px; text-decoration: none; border: 2px solid #ccc; border-radius: 80px; }
.page_nav .page-numbers:not(.current):hover { box-shadow: inset 0 0 0 40px #ad4242; border-color: #ad4242; color: #fff; text-decoration: none; }
.page_nav .current { color: #ebebeb; padding: 15px 18px 14px 18px; border-color: #ebebeb; }
.page_nav .fa { position: relative; }
.page_nav .fa-chevron-right { left: 1px; }
.page_nav .fa-chevron-left { right: 1px; }

.notice_banner { background: #ad4242; /*box-shadow: 0 1px 0 #5a221e;*/ box-shadow: inset 0 -1px 0 rgba( 255,255,255,.2 ); /*border-bottom: 1px solid rgba( 255,255,255,.3 );*/ position: relative; text-align: center; color: #fff; font-family: crimson; font-style: italic; padding: 1.5em 0 1em; }
    .notice_banner a { color: #fff; text-decoration: none; }
        .notice_banner a:hover { text-decoration: underline; }
.notice_banner.royal-blue { background: #4163ae; }
.notice_banner.limestone { background: #cccccc; color: #212529; box-shadow: inset 0 -1px 0 rgba( 0,0,0,.2 ); }
    .notice_banner.limestone a { color: #212529; }
.notice_banner.navy { background: #232E46; }

body.page .blog-post-header .container { min-height: 60vh !important; }

@media( max-width: 500px ) {
    
    .blog-header h1 { font-size: 4em; }
    .blog-header ul.menu { text-align: left; padding-left: 15px; }
    .blog-header .desc { display: block; }
    
}

@media( max-width: 768px ) {
 
    header .col-sm-1 { float: left; width: 1%; }
    header .col-sm-11 { float: right; width: 90%; padding-right: 0px; }
    
    svg.logo-min { opacity: 1; }
    svg.logo { opacity: 0; pointer-events: none; }
    
}

@media( max-width: 782px ) {
    
    body.admin-bar header { top: 45px; }
    
}

@media( max-width: 1199px ) {
    
    header { padding-bottom: .2em; }
    
    .logo-holder { margin-top: .6em; }
    svg.logo, svg.logo-min { max-height: 60px; }
    svg.logo-min { max-width: 60px; width: 60px; }
    
}

/******[ MENUS ]*****************************************************/
.menu { list-style: none; }
.menu li { display: inline-block; margin-right: 1.7em; }
.menu li:last-child { margin-right: 0; }
.menu a { text-decoration: none; }
.menu a:hover, .menu li i:hover, .menu .current-menu-item a { text-decoration: none; }


/******[ HEADER MENU ]***********************************************/
.top-menu, .top-menu a { color: #afafaf; margin-top: 30px; font-size: .9em; font-family: nova; letter-spacing: .25em; text-transform: uppercase; cursor: pointer; }
.top-menu a:hover, .top-menu li i:hover, .top-menu .current-menu-item a { text-decoration: none; color: #ad4242; }
.top-menu .fa { font-size: 1.5em; position: relative; top: 0.1em; }

.main-menu { margin-top: 1em; position: relative; z-index: 1; transition: all 0.3s ease-in-out; height: 3em; }
.main-menu a { letter-spacing: 0.05em; font-size: 1.02em; color: #232e46; font-family: crimson; }
.main-menu li:hover a, .main-menu li:hover i, .main-menu .current-menu-item a { color: #4162ae; border-bottom: 3px solid #4162ae; }
.main-menu li { margin-right: 1.9em; }
.main-menu .menu-item-has-children > a:after { color: #4162ae; content: '\f0d7'; font-family: fontawesome; margin-left: .5em; }

.modal-only { display: none !important; }
.modal-body .modal-only { display: block !important; }

.main-menu > li:last-child { border: 2px solid #4162ae; padding: .6em 1.3em; box-shadow: inset 0 0 0 0 #4162ae; transition: all 0.13s ease-in-out; position: relative; z-index: 2; }
.main-menu > li:last-child:hover { box-shadow: inset 0 0 0 2em #4162ae; }
.main-menu > li:last-child a { color: #4064ae; border-bottom: none; transition: color 0.23s ease-in-out; }
.main-menu > li:last-child a:after { content: '\f0da'; font-family: fontawesome; margin-left: .5em; }
.main-menu > li:last-child:hover a { color: #fff; } 

.main-menu .sub-menu { z-index: -1; opacity: 0; display: block; height: 0; overflow: hidden; position: fixed; margin-top: 0px; left: 0; right: 0; background: rgba( 255,255,255,0.9 ) !important; background: #fff !important; -webkit-backdrop-filter: blur( 15px ); backdrop-filter: blur( 15px ); border-bottom-color: transparent; padding: 0; box-shadow: inset 0 2.7em 0 0 #fff, inset 0 2.8em 0 0 #ccc; transition: padding 0.2s ease-in-out, opacity 0.3s ease-in-out .1s; }
.main-menu li:hover .sub-menu { opacity: 1; height: auto; z-index: 1; border-bottom: 1px solid #ccc; padding: 5em 0 2em; }

.main-menu .sub-menu ul { padding: 0 0 0 1em; }
.main-menu .sub-menu li { display: block; padding: .2em 0; margin-right: 0; position: relative; top: -.3em; }
.main-menu .sub-menu li:first-of-type { padding-top: 0; }
.main-menu .sub-menu li a { border-bottom: none; color: #2d2d2d; font-size: 1.1em; }
.main-menu .sub-menu li a:hover { color: #ad4242; }

.main-menu .sub-menu .col-md-4 { border-left: 5px solid #4162ae; position: relative; top: .6em; }
.main-menu .sub-menu .col-md-8 { padding-right: 5em; }

.main-menu .sub-menu .submenu-title { font-size: 3em; font-family: crimson; }
.main-menu .sub-menu hr { border-top: 2px solid #4163ae; margin: .2em 0 1.2em 0; width: 220px; }
.main-menu .sub-menu p { color: #666; font-style: italic; line-height: 1.8em; font-size: 1.2em; font-family: crimson; }

.modal-menu, .modal-menu ul { padding: 0; list-style: none; margin-top: -20px !important; }
.modal-menu ul { padding: 1.2em 0 .6em 0; display: none; }
.modal-menu .menu-item-has-children.on ul { display: block; }
.modal-menu li { font-size: 1.0em; line-height: 1.0; margin: 1em 0; }
.modal-menu li:before { content: '' !important; }
.modal-menu a { cursor: pointer; color: #fff; text-decoration: none !important; font-size: 1.3em; text-transform: uppercase; letter-spacing: .3em; font-weight: 600; }
.modal-menu .menu-item-has-children a:after { content: '\f067'; font-family: fontawesome; margin-left: .4em; color: #4162ae; }
.modal-menu .menu-item-has-children.on ul, .modal-menu li:not( .menu-item-has-children ) ul { margin-top: 1em; }
.modal-menu .menu-item-has-children.on ul a:after, .modal-menu li:not( .menu-item-has-children ) ul a:after { content: '\f0da'; }
.modal-menu .menu-item-has-children.on ul a:after, .modal-menu li:not( .menu-item-has-children ) ul a:after { content: ''; }
.modal-menu a:hover { text-decoration: none; }
.modal-menu ul a { font-family: crimson; text-transform: capitalize; letter-spacing: 0; }
.modal-menu ul a:after { content: ''; }

.main-menu.mobile { overflow: hidden; width: 0; }
.menu-button:hover .fa { color: #fff !important; border: none; }

.menu-button { color: #4162ae; font-family: crimson; white-space: nowrap; float: left; display: inline-block; border: 2px solid #4162ae; padding: .6em 1.3em .4em; max-height: 2.7em; box-shadow: inset 0 0 0 0 #4162ae; transition: all 0.13s ease-in-out; position: relative; z-index: 2; margin: .2em .5em 2em 0 !important; cursor: pointer; }
.menu-button:hover { color: #fff; box-shadow: inset 0 0 0 2em #4162ae; }

header.sticky .main-menu:not( .mobile ) { height: 0; overflow: hidden; margin: 0; }
header.sticky .main-menu.mobile { width: 8.9em; }

@media( max-width: 992px ) {
      
    .top-menu { display: none; }
    .main-menu.mobile { width: 13.5em !important; }
    .modal-menu .top-nav { margin-top: 0; }
    .modal-menu .top-nav ul { display: block; padding-top: .4em; }
    .modal-menu .top-nav ul a { font-family: nova; margin-top: 0; text-transform: uppercase; letter-spacing: .3em; font-weight: 600; }
    
    .modal-menu .footer { margin-top: 1.4em; font-size: 1.6em; }
    .modal-menu .footer ul li { float: left; }
    .modal-menu .footer ul li a { color: #4162ae; }
    .modal-menu .footer ul li a:after { content: ''; }
    
}

@media( min-width: 1199px ) {
    
    header:not( .sticky ) .main-menu.mobile { padding-left: 0; padding-right: 0; }
    
}

@media ( max-width: 1199px ) {
    
    .main-menu.mobile { width: 8.9em; }
    .main-menu:not( .mobile ) { height: 0; overflow: hidden; margin: 0; }
    
}

/******[ HOME PAGE ]*************************************************/
#homePageSlider, #statePageSlider { height: 780px; overflow: hidden; }

.carousel-item { height: 780px; background-size: cover !important; -moz-background-size: cover !important; background-attachment: fixed !important; }
.carousel .overlay { position: absolute; top: 300px; left: 0; right: 0; }
.carousel .overlay h1 { font-size: 6em; font-family: crimson; color: #fff; line-height: 1.2em; }

.carousel-inner .container { position: absolute; top: 550px; left: 0; right: 0; }
.carousel-inner .container p { color: #fff; font-family: nova; text-transform: uppercase; color: #fff; font-size: 2em; letter-spacing: .3em; margin-bottom: 1.6em; }

.donation-block { background: #232e46; padding: 5em 0; text-align: center; color: #fff; margin-top: 4em; }
.donation-block .title { text-transform: uppercase; display: block; letter-spacing: .2em; font-weight: 600; margin-bottom: 2em; font-size: 1.2em; }
.donation-block .ribbon-holder { max-width: 600px; margin: auto; }
.donation-block .ribbon { background: #ad4242; padding: .6em 1.2em .3em; font-size: 2em; font-family: crimson; line-height: 2.2em; font-style: italic; display: inline; -webkit-box-decoration-break: clone; box-decoration-break: clone; margin-bottom: .3em; }
.donation-block p { width: 60%; margin: 1.5em auto 2em; font-family: crimson; font-size: 1.3em; line-height: 1.8em; }

.carousel-control-next, .carousel-control-prev { width: 50px; top: initial; bottom: 2em; width: auto; }
.carousel-control-next img, .carousel-control-prev img { width: 50px; }
.carousel-control-next { right: 2em; }
.carousel-control-prev { left: initial; right: 5em; z-index: 2; }

body.home .homepage-content h4 { line-height: 1.6em; font-style: italic; font-weight: 100; }

.not-found { text-align: center; margin: 2em 0 4em; }
.not-found p { font-family: crimson; }

@media ( max-width: 1875px ) {
    
    .carousel-control-next, .carousel-control-prev { width: 50px !important; }
    
}

@media ( max-width: 1650px ) {
    
    #homePageSlider .container { padding-left: 10%; padding-right: 10%; }
    .carousel-control-next, .carousel-control-prev { width: 10%; }
    
}

@media ( max-width: 1399px ) {
    
    #homePageSlider .overlay { top: 100px; }
    .carousel-control-next, .carousel-control-prev { width: 10%; }
    body.home .carousel-inner .container { top: 480px; }
    
}

@media ( max-width: 991px ) {
    
    body.home .carousel .overlay h1 { font-size: 4.5em; } 
    .donation-block .ribbon-holder { padding: 1em; }
    .donation-block .ribbon { box-shadow: 0 -3px 0 15px #ad4242; padding: 0; }
    
}

@media( max-width: 767px ) {
    
    section.footer-banner { text-align: center !important; }
    
}

@media ( max-width: 475px ) {
    
    .donation-block p { width: 90%; }
    #homePageSlider { height: 540px; }
    body.home .carousel .overlay h1 { font-size: 3em; } 
    body.home .carousel-inner .container { top: 330px; }
    body.home .carousel-inner .container p { font-size: 1em; }
    .carousel-control-next, .carousel-control-prev { display: none; }
    
}


/******[ STATE SELECTION PAGE ]**************************************/
section.red-ribbon { background: #ad4242; text-align: center; color: #fff; font-family: crimson; }
section.red-ribbon ul { z-index: 1; transition: all 0.2s ease-in-out; box-shadow: inset 0 0 0 0px #fff; border: 1px solid #fff; display: inline-block; list-style: none; padding: .6em 1em .4em; margin: .3em .3em 0em; width: 250px; text-align: left; position: relative; }
section.red-ribbon ul:after { content: '\f0d7'; font-family: fontawesome; position: absolute; top: .5em; right: 1em; }
section.red-ribbon ul ul { margin: 0; height: 0; overflow: scroll; opacity: 0; padding-top: 1.5em; position: absolute; background: rgba( 255,255,255,0.9 ); -webkit-backdrop-filter: blur( 15px ); backdrop-filter: blur( 15px ); color: #333; font-style: italic; font-size: .8em; left: -1px; top: 14px; box-shadow: inset 0 1px 0 rgba( 0,0,0,0.2 ), 0 6px 6px rgba( 0,0,0,0.3 ) !important; }
section.red-ribbon ul ul:after { display: none; }
section.red-ribbon ul:hover { color: #333; box-shadow: inset 0 0 0 60px #fff; }
section.red-ribbon ul:hover ul { opacity: 1; height: 410px; }
section.red-ribbon ul ul li { cursor: pointer; }
section.red-ribbon ul ul a { color: #333; text-decoration: none; }
section.red-ribbon ul ul li:hover, section.red-ribbon ul ul li.active, section.red-ribbon ul ul a:hover { color: #ad4242; }

section.states .secondary, section.states .secondary .blog-post-container { max-height: 350px; }


/******[ BLOG ]******************************************************/
section.blog { border-bottom: 1px solid #ccc; }

.blog-post.author { padding-top: 4em; padding-bottom: 2.6em; min-height: 350px; border-bottom: 1px solid #ccc; border-top: 1px solid #ccc; }
.blog-post.author .avatar { width: 220px; height: 220px; background-position: right !important; background-size: cover !important; -moz-background-size: cover !important; float: left; margin-right: 2em; margin-bottom: 1em; }
.blog-post.author .label { color: #666; font-weight: 600; text-transform: uppercase; letter-spacing: 0.2em; margin-bottom: 3em; display: block; }
.blog-post.author .bio { font-style: italic; font-family: crimson; }
.blog-post.author h2 { font-weight: 100; font-family: crimson; letter-spacing: 0; text-transform: initial; font-size: 3em; }

.blog-post .container p { font-size: 1.2em; font-family: crimson; }

.blog-post-container { overflow: hidden; color: #fff; background-size: cover !important; -moz-background-size: cover !important; }
.blog .blog-post-container:first-of-type { margin-bottom: 30px; }
.blog-post-container .wrap, .blog-post-container .content { width: 100%; height: 100%; position: relative; }
.blog-post-container .title { margin-bottom: .5em; line-height: 1.4em; font-size: 2.6em; color: #fff; font-family: crimson; text-transform: inherit; }
.blog-post-container .date { text-transform: uppercase; letter-spacing: 0.3em; font-family: nova; }
.blog-post-container .preview { font-family: crimson; position: absolute; bottom: 0; }
.blog-post-container .preview a { text-decoration: none !important; }
.blog-post-container .preview .title { font-weight: 100; }
.blog-post-container .preview p { font-style: italic; font-size: 1.1em; line-height: 1.8em; display: block; display: -webkit-box; max-height: 60px; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; margin-bottom: 2.5em; }
.primary .blog-post-container hr { border-top: 2px solid #fff; margin: -1.4em 0 2em 0; width: 45%; }
.primary .blog-post-container { height: 600px; }
.primary .blog-post-container .content { padding: 25px 10% 35px 26%; }
.primary .blog-post-container .title { font-size: 4.2em; letter-spacing: 0; }
.secondary .blog-post-container { height: 400px; }
.secondary .blog-post-container .content { padding: 25px 25px 35px 25px; }
.secondary .blog-post-container hr { display: none; }
.secondary .blog-post-container .preview p { display: none; }
.secondary .blog-post-container .title { font-size: 2.3em; max-height: 250px; letter-spacing: 0; overflow: hidden; display: -webkit-box; text-overflow: ellipsis; -webkit-line-clamp: 5; -webkit-box-orient: vertical; }

section.blog-link .primary .blog-post-container .sub-title { text-transform: uppercase; margin: -2em auto 2em; display: block; }

.blog-post .go-back { display: inline-block; background: #ccc; color: #fff; text-decoration: none; text-transform: uppercase; letter-spacing: 0.2em; font-size: 0.8em; padding: 0.8em 2em; position: relative; left: -18em; top: 2.8em; }

.blog-post-header { background-size: cover !important; -moz-background-size: cover !important; background-attachment: fixed !important; }
.blog-post-header.single { position: relative; border-top: 40px solid #fff; border-left: 35px solid #fff; border-right: 35px solid #fff; background-attachment: local !important; }
.blog-post-header .container { min-height: 775px; display: block; color: #fff; position: relative; }
.blog-post-header .category-ribbon { background: #ad4242; position: absolute; right: -3em; top: 2em; padding: .6em 3em .5em 0.8em; font-style: italic; text-transform: uppercase; font-family: crimson; letter-spacing: 0.2em; }
.blog-post-header .category-ribbon:before { content: ''; position: absolute; left: -1.5em; top: 0; height: 0; width: 0; border: 2em solid #ad4242; border-right: none; border-bottom-color: transparent; border-left-color: transparent; }
.blog-post-header .category-ribbon:after { content: ''; position: absolute; left: -1.5em; bottom: 0; height: 0; width: 0; border: 2em solid #ad4242; border-right: none; border-top-color: transparent; border-left-color: transparent; }
.blog-post-header .category-ribbon a { color: #fff; text-decoration: none; }
.blog-post-header .meta { position: absolute; bottom: 3em; left: 0; right: 0; }
.blog-post-header .meta .inner { font-family: nova; font-weight: 400; text-transform: uppercase; letter-spacing: 0.4em; max-width: 780px; margin: auto; padding: 0 15px; }
.blog-post-header .meta .inner em { font-size: 1.3em; }
.single-states .blog-post-header .meta .inner em { font-family: crimson; text-transform: capitalize; letter-spacing: 0; }
.blog-post-header .meta .inner h1 { color: #fff; font-family: crimson; letter-spacing: 0; text-transform: none; }
.blog-post-header .meta .inner a.info { color: #fff; text-decoration: none; }
.blog-post-header .meta .inner a.info:hover { text-decoration: underline; }
.blog-post-header .meta .inner .fa-star { margin: 0 2em; font-size: .8em; }
.blog-post-header .meta .inner h1.no-meta { position: relative; top: .6em; }
.blog-post-header h1 { font-size: 6em; font-family: crimson; }
.blog-post-header hr { width: 45%; border-top: 2px solid #fff; margin-left: 0; margin-bottom: 2em; }

.single-states .blog-post-header h1 { line-height: .9em; }

/*.single .blog-post:not(.author):not(.no-star) .container > p:last-of-type:after { content: '\f005'; font-family: fontawesome; color: #ad4242; font-size: .8em; margin-left: 1em; display: inline-block; position: relative; bottom: .1em; }*/

.single-post .blog-post-header { box-shadow: none; }
.single-post .blog-post-header .container { background-size: cover !important; -moz-background-size: cover !important; }

.news { text-align: center; padding: 0; }
.news .primary .blog-post-container { height: auto; }
.news .primary .title { font-family: nova; text-transform: uppercase; letter-spacing: .2em; line-height: 1.1em; }
.news .secondary .title { font-family: nova; text-transform: uppercase; letter-spacing: .2em; }
.news .secondary .btn { display: none; }
.news a { color: #fff; }
.news a:hover { text-decoration: none; color: #fff; }
.news .primary { position: relative; }
.news .primary .blog-post-container .preview p { width: 50%; margin: 0 auto 2em; font-size: 1.5em; max-height: 10em; }
.news .primary .wrap { padding-top: 16em; padding-bottom: 16em }
.news .secondary .blog-post-container { bottom: 0; box-shadow: inset 0 0 0 1000px rgba( 35,46,70,0); transition: box-shadow 0.15s ease-in-out; }
.news .secondary .blog-post-container:hover { box-shadow: inset 0 0 0 1000px rgba( 35,46,70,.9 ); }
.news .secondary .wrap { padding: 8em 3em 0; min-height: 320px; max-width: 620px; }
.news .secondary h3.title { line-height: 1.2em; }
.news .blog-post-container .preview { position: relative; }
.news .primary .btn { /*margin-bottom: 350px;*/ }

.tags { margin-bottom: 2em; }
.tags a { color: #ba3b40; font-family: crimson; text-decoration: none; font-weight: 600; }

.staff .secondary { margin-bottom: 25px !important; }

@media ( max-width: 9399px ) {

    .blog-post .go-back { position: absolute; left: 0; top: initial; }
    
}

@media ( max-width: 1199px ) {
    
    .blog .secondary:last-of-type { display: none; }
    .primary .blog-post-container .content { padding: 45px; }
    
}

@media ( min-width: 991px ) {
    
    .blog-post .container, .narrow .container { max-width: 780px; }
    .blog-post .container p { text-align: justify; }
    
}

@media ( max-width: 767px ) {
    
    .blog-post-header .meta .inner h1 { font-size: 4em; }
    
    .blog-post-header.single { border-top: 20px solid #fff; border-left: 15px solid #fff; border-right: 15px solid #fff; }
    
    .blog-post-header .meta .inner .fa-star { color: transparent; display: block; height: 1px; }
    
    .blog-post-container { height: 300px !important; /* box-shadow: inset 0 0 0 800px rgba( 0,0,0,0.25 ), inset 0 -100px 200px rgba( 0,0,0,0.7 ); */ }
    .blog-post-container .content { padding: 25px 25px 35px 25px; }
    .blog-post-container hr { display: none; }
    .blog-post-container .title { font-size: 2em !important; }
    .blog-post-container .preview p { display: none; }
    
    .news .secondary .wrap { padding: 4em 1em 3em; min-height: 0; }
    
    .blog-link .primary .blog-post-container { height: auto !important; padding: 2em 45px !important; }
    
}

@media( max-width: 574px ) { 
 
    body.single-post .blog-post-header .container { min-height: 65vh; }
    .blog-link { box-shadow: none !important; }
    .blog-link .primary .blog-post-container { padding: 1em 0px !important; }
    
}


/******[ IMAGES ]****************************************************/
img { width: auto; max-width: 100%; height: auto; }
img.aligncenter { margin: auto; display: block; }

.big-blog-grid { height: 25vw; overflow: hidden; }
.big-blog-grid img { width: 12.5vw; height: 12.5vw; filter: grayscale( 1 ) brightness( .8 ); transition: .2s ease-in-out all; }
.big-blog-grid img:hover { filter: grayscale( 0 ) brightness( 1 ); }

@media ( max-width: 1299px ) {
    
    .big-blog-grid { height: 60vw; }
    .big-blog-grid img { width: 20vw; height: 20vw; }
    
}

@media ( max-width: 830px ) {
    
    .big-blog-grid { height: 75vw; }
    .big-blog-grid img { width: 25vw; height: 25vw; }
    
}

@media ( max-width: 670px ) {
    
    .big-blog-grid { height: 150vw; }
    .big-blog-grid img { width: 50vw; height: 50vw; }
    
}


/******[ FOOTER ]****************************************************/
.single-alumni .footer-social, .single-states .footer-social { margin-top: 4em; }
.footer-social { background: #ad4242; text-align: center; color: #fff; }
.footer-social .title { text-transform: uppercase; display: block; letter-spacing: .2em; font-weight: 600; margin-bottom: .8em; font-size: 1.8em; padding: .2em 0 0; font-family: nova; }
.footer-social ul { margin-top: 1em; padding: 0; font-family: crimson; font-size: 1.1em; }
.footer-social a { color: #fff; }
.footer-social .fa { font-size: 1.8em; position: relative; top: .2em; transition: top .1s ease-in-out; }
.footer-social .fa:hover { top: 0; }

.footer-menu { background: #fff; color: #212529; }
.footer-menu p:last-of-type, .footer-menu ul li:last-of-type { margin-bottom: 0; }
.footer-menu .title { color: #4162ae; text-transform: uppercase; font-size: .8em; font-weight: 900; letter-spacing: 0.2em; margin-bottom: .6em; display: block; font-family: nova; }
.footer-menu address { font-family: crimson; margin-top: .5em; margin-bottom: .5em; }
.footer-menu img { position: relative; max-width: 90%; margin-bottom: 20px; margin-top: 25px; }
.footer-menu .logo-min { display: none; }
.footer-menu .left-border { border-left: 4px solid #ccc; margin-bottom: 20px !important; margin-top: 25px !important; } 
.footer-menu a, .footer-menu p { font-family: crimson; }
.footer-menu ul { padding: 0; margin: 0; }
.footer-menu li { display: block; margin-bottom: .8em; }

.footer-banner { background: #ccc; color: #fff; margin-top: -45px; }
.footer-banner .menu { margin: 0; }
.footer-banner .btn { font-family: crimson; }
.footer-banner .btn.search-icon { padding-left: .5em; padding-right: .7em;  }
.footer-banner .title { font-size: 1.5em; text-transform: uppercase; letter-spacing: .2em; font-weight: 600; font-family: nova; }

.mobile-footer { border-top: 1px solid #dadada; text-align: center; margin-bottom: 2em; }
.mobile-footer img { width: 120px; }

.footer-copyright { font-size: .6em; font-family: crimson; background: #fff; color: #212529; }

@media( max-width: 574px ) {
 
    .footer-menu .left-border { border-left: none; }
    
}


/******[ STAFF SECTION ]*********************************************/
div.staff { text-align: left; padding-bottom: 23%; -moz-background-size: cover !important; background-size: cover !important; position: relative; height: 317px; max-width: 317px; }
div.staff .info { transition: opacity 0.2s ease-in-out; opacity: 0; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba( 69, 102, 171, .8 ); color: #fff; padding: 15px 20px; font-size: .8em; text-decoration: none !important; font-family: crimson; font-style: italic; }
div.staff .info:hover { opacity: 1; }
div.staff .info .bottom { position: absolute; bottom: 15px; }
div.staff .info .bottom .title { font-style: normal; font-size: 2.8em; line-height: 1.2em; }
div.staff .info .bottom span { font-family: nova; font-style: normal; letter-spacing: 0.4em; text-transform: uppercase; font-size: 1em; }
div.staff .info .bottom span hr { border-top: 1px solid #fff; width: 35%; margin: .6em 0 1em; }

section.staff { text-align: center; }
section.staff .label { font-size: 1.6em; margin: auto; color: #fff; background: #232e46; text-transform: uppercase; letter-spacing: 0.3em; display: inline-block; padding: .8em .9em .7em 1.2em; margin: auto; margin-bottom: -.4em; position: relative; z-index: 1;}

.staff-post-header { background-size: cover !important; -moz-background-size: cover !important; background-position: top; display: block; color: #fff; position: relative; padding: 35px; font-family: crimson; }
.staff-post-header .title { font-size: 2em; font-style: italic; width: 50%; }
.staff-post-header .container { height: 500px; position: relative; }
.staff-post-header .meta { position: absolute; bottom: 0; left: 15px; right: 15px; }
.staff-post-header h1 { font-size: 4em; color: #fff; }

.staff-page .meta { border-top: 2px solid #232e46; margin-top: 2em; margin-bottom: 2em; padding-top: 2em; color: #4163ae; font-weight: 600; text-transform: uppercase; letter-spacing: .3em; }
.staff-page .meta .fa { color: #232e46; font-size: 0.8em; position: relative; top: -0.1em; margin: 0 2em; }

.single-staff section.staff { margin-top: -6em; }

@media( max-width: 1399px ) {
    
    div.staff { height: 277px; }
    
}

@media( min-width: 991px ) and ( max-width: 1199px ) {
    
    div.staff { height: 232px; }
    div.staff .info .bottom .title { font-size: 1.6em !important; }
    
}

@media( max-width: 991px ) {
    
    div.staff { padding-bottom: 45%; }
    
    .staff-post-header .container { height: 300px; }
    .staff-post-header h1 { font-size: 3.4em; }
    
}

@media( min-width: 575px ) and ( max-width: 767px ) {
    
    div.staff .info .bottom .title { font-size: 1.6em !important; }
    
}

@media( max-width: 574px ) {
    
    div.staff { min-width: 100%; }
    
}


/******[ TIMELINE ]**************************************************/
ul.timeline { color: #2d2d2d; padding: 2em 0; margin: 0; display: block; padding-left: 0 !important; }

ul.timeline h1, ul.timeline h2, ul.timeline h3, ul.timeline h4, ul.timeline h5, ul.timeline h6 { font-family: Crimson; margin-bottom: 0; letter-spacing: 0em; padding: 0; }

ul.timeline li { margin: 0; padding: 0; }
ul.timeline li:before { display: none; }
ul.timeline li h2 { font-size: 3.5em; color: #2d2d2d; margin-bottom: .2em; margin-top: .4em; border: none !important; }
ul.timeline li h3 { font-size: 2.6em; color: #4162ae; margin: .6em 0 .3em; }
ul.timeline li h4 { color: #4162ae; padding-bottom: 0em; margin-bottom: -5px; }
ul.timeline li p { text-align: left !important; line-height: 1.4em; }
ul.timeline li p strong { font-size: .75em !important; line-height: 1.4em; }
ul.timeline li hr { height: 45px; border: none; border-left: 10px solid #ccc; margin: 1em 0 -1em; }

ul.timeline li ul { padding: 1em 0 .1em !important; }
ul.timeline li ul li { text-align: left; border-left: 10px solid #ccc; margin: 0 !important; padding-left: 45px; padding-bottom: 1em; position: relative; }
ul.timeline li ul li:before { content: '' !important; position: absolute; background: #ccc; height: 3px; width: 34px; display: block; left: 0px !important; top: 1.2em !important; }
ul.timeline li ul li p { font-size: .7em !important; text-align: left !important; line-height: 1.5em; }
ul.timeline li ul li strong { font-weight: 200; color: #8e8f91; }
ul.timeline li ul li strong em, ul.timeline li ul li em strong { text-transform: uppercase; letter-spacing: .2em; font-size: .5em; position: relative; top: -.1em; font-weight: 900; margin-bottom: -5em; display: block; }
ul.timeline li ul li strong em:before, ul.timeline li ul li em strong:before { content: '' !important; position: absolute; background: #8e8f91; height: 3px; width: 54px; display: block; left: -65px !important; top: 1.5em !important; }

@media( min-width: 767px ) {

    ul.timeline { text-align: center; }
    ul.timeline li hr { width: 50%; border-left: 5px solid #ccc; margin: 1em 50% -1em; box-shadow: -5px 0 0 #ccc; }

    ul.timeline li p { text-align: center !important; max-width: 425px; margin: auto; }
    ul.timeline li p strong { max-width: 295px; display: inline-block; }

    ul.timeline li ul li { border-left: 5px solid #ccc; box-shadow: -5px 0 0 #ccc; margin: 0 0 -1em 50% !important; width: 50%; }
    ul.timeline li ul li:last-child { padding-bottom: 1em; }
    ul.timeline li ul li:nth-child( even ) { text-align: right; border-left: none !important; box-shadow: 5px 0 0 #ccc; border-right: 5px solid #ccc; margin: 0 0 -1em 0 !important; padding-left: 0px; padding-right: 45px; }
    ul.timeline li ul li:nth-child( even ):before { left: auto !important; right: 0 !important; top: 1.2em !important; }
    ul.timeline li ul li:nth-child( even ) p { text-align: right !important; }
    ul.timeline li ul li:nth-child( even ) strong em:before, ul.timeline li ul li:nth-child( even ) em strong:before { left: auto !important; right: -65px !important; }

}


/******[ EVENT PAGE ]************************************************/
.single-alumni #statePageSlider .overlay { text-align: center; font-weight: 600; text-transform: uppercase; letter-spacing: 0.2em; }
.single-alumni #statePageSlider .overlay h1 { margin-top: .4em; margin-bottom: .2em; text-transform: initial; }
.single-alumni #statePageSlider .overlay .tagline { max-width: 550px; display: block; margin-bottom: 3em; margin-left: auto; margin-right: auto; }
.single-alumni #statePageSlider .overlay .btn { font-family: crimson; text-transform: initial; letter-spacing: 0; font-weight: 100; }

.single-alumni .event-logo { max-width: 780px; display: block; }

.single-alumni .excerpt { background: #444; padding: 4em 0 3em; font-style: italic !important; text-align: center !important; color: #fff !important; font-family: crimson !important; font-size: 1.5em !important; }

.single-alumni .event .title { padding-bottom: .2em; }
.single-alumni .event ul { padding: .5em 0 .3em .9em !important; }
.single-alumni .event .btn.pull-right { margin-top: -.5em; }

.single-alumni .meta.lower span { font-size: 0.8em; }
.meta.lower { border-bottom-color: #3267af !important; border-top: 2px solid #ccc; padding: 1em !important; }

.blog-link { background-size: cover !important; box-shadow: inset 0 0 0 30px #fff; }
.blog-link .primary .blog-post-container { font-family: crimson; font-style: italic; font-size: 1.2em; height: auto; padding: 6em 0; }
.blog-link .primary .blog-post-container h2 { color: #fff; width: 100%; font-family: crimson; text-transform: initial; letter-spacing: 0; }
.blog-link .primary .blog-post-container hr { width: 20%; margin: .5em 0 1em 0; }
.blog-link .primary .blog-post-container .btn { font-style: normal; margin-top: 1.5em; }

.archive .blog-link { margin-top: -3em; margin-bottom: -2em; }
.archive .blog-link .primary .blog-post-container h2 { font-family: nova; letter-spacing: 0.2em; text-align: center; text-transform: uppercase; font-style: normal; padding: 1.1em 0; }

@media( min-width: 991px ) {
    
    .w-lg-100 { width: 100% !important; }
}

@media( max-width: 991px ) {
    
    .single-alumni .event-logo { max-width: 90%; margin: auto; }
    .single-alumni .event .btn.pull-right { margin: .2em 0 1.2em; }
    
}

@media( max-width: 575px ) {
    
    .single-alumni .event .btn.pull-right { margin: .3em 0 2em; float: left; }
    
}

/******[ STATE PAGE ]************************************************/
.event { font-family: crimson; margin-bottom: 4em; margin-top: 2em; }
.event:last-of-type { margin-bottom: 2em; }
.event .title { border-bottom: 2px solid #2a354c; }
.event .title .btn { bottom: -.1em; position: relative; }
.event .title .btn.disabled { background: #ad4242; opacity: 1; border: 2px solid #ad4242 !important; }
.event .meta { border-bottom: 2px solid #ccc; padding: .4em 0 .6em; }
.event .meta span { font-size: .8em; color: #4162ae; font-family: nova; font-weight: 600; text-transform: uppercase; letter-spacing: 0.2em; }
.event .ribbon { background: #bcbcbc; color: #fff; font-family: nova; font-weight: 600; text-transform: uppercase; letter-spacing: 0.2em; padding: 0.4em 1em 0.3em; margin: 1em 0; display: inline-block; }
.event ul { list-style: none; padding-left: 1em; }
.event li { margin-bottom: 2em; }
.event li .fa { color: #4163ae; display: inline-block; margin: 0 1em; font-size: 0.8em; }
.event li em { color: #686666; position: relative; top: -.4em; }
.event li div.times { margin-top: -.3em; margin-bottom: -.5em; min-height: .8em; }
.event li div.times em { color: /* #4162ae */ #ad4243; font-size: .8em; }

.single-states .event ul { padding: .2em 0 -.2em .9em !important; padding-left: .9em !important; }

.single-states .carousel .overlay, .single-alumni .carousel .overlay { top: 0; }
.single-states .carousel .blog-post-header .meta { bottom: 5em; }

.contact-block { background: #4162ae; color: #fff; font-family: crimson; }
.contact-block .title { font-family: nova; text-transform: uppercase; letter-spacing: 0.2em; font-size: 1.2em; }
.contact-block span { display: inline-block; padding: .6em 2em .6em 0; }
.contact-block a { color: #fff !important; }

.contact-menu { background: #222e45; margin-bottom: -4em; }
.contact-menu ul { list-style: none; padding-left: 1.2em; padding-right: 1.5em; margin-bottom: 0; }
.contact-menu .bordered { border-left: solid 4px #666; }
.contact-menu .title { color: #4162ae; font-family: nova; letter-spacing: 0.2em; text-transform: uppercase; font-weight: 600; font-size: .8em; }
.contact-menu a { color: #fff; font-family: crimson; text-decoration: none; }
.contact-menu a:hover { color: #b2d7ff; }
.contact-menu .fa { font-size: 2em !important; padding-top: .3em; }
.contact-menu .menu li { margin-right: 1em; }
.contact-menu li.menu-item { line-height: 1.8em; }

.event-section { text-align: center; padding-top: 10em; padding-bottom: 10em; margin-top: 4em; }
.event-section:first-of-type { margin-top: 0; }
.event-section span { text-transform: uppercase; font-family: crimson; font-style: italic; letter-spacing: 0.2em; }
.event-section .title { font-size: 5em; font-family: nova; letter-spacing: 0.2em; text-transform: uppercase; line-height: 1em; margin-bottom: .3em; }
.event-section .fa { margin-left: 1em; margin-right: 1em; font-size: .8em }

.event-meta { padding-top: 3em; padding-bottom: 2em; border-bottom: 1px solid #ccc; display: block; }

.event-faq { border-bottom: 1px solid #ccc; font-family: crimson; background: #fff; }
.event-faq .head { cursor: pointer; }
.event-faq .title { transition: color .2s ease-in-out; font-size: 2.5em; margin-top: .2em; }
.event-faq em { transition: color .2s ease-in-out; color: #4163ae; }
.event-faq .head img { filter: grayscale( 0% ) brightness( 1 ); min-width: 60px; transform: rotate( 90deg ); transition: all 0.2s ease-in-out; }
.event-faq .head.collapsed img { transform: rotate( 0deg );  }
.event-faq .inner { border-top: 1px solid #ccc; margin-top: 2em; padding-top: 2em; }

.faq-grayed:not( .open ) .title, .faq-grayed:not( .open ) em { color: #888; }
.faq-grayed:not( .open ) img { filter: grayscale( 100% ) brightness( 2.2 );  }

@media( max-width: 991px ) {

    .event .title .btn { float: none !important; margin: .5em 0 1.6em 0; }

}

/******[ MAP CONTAINER ]*********************************************/
.map-container { position: relative; background: #4162ae; margin-top: 0px; padding-bottom: 200px; color: #fff; }
.map-container .label { color: #fff; background: #232e46; text-transform: uppercase; letter-spacing: 0.3em; display: inline-block; padding: .8em 1.2em; margin: auto; margin-top: -1em; position: relative; z-index: 1;}
.map-container .container { text-align: center; }
.map path { fill: #999; stroke: #2d4169; stroke-width: 4px; stroke-linejoin: round; cursor: pointer; }
.map path.has-class { fill: #fff; }
.map path:hover, .map path.active { fill: #ad4242; }
.map path:not( .has-class ):hover, .map path.active:not( .has-class ) { fill: #611e1d !important; }
.map-info { width: 30%; float: right; margin-right: 17%; position: relative; top: -70px; text-align: left; font-family: crimson;  }            
.map-info p { line-height: 1.6em; font-style: italic; font-size: 1.1em; margin: 1em 0 1em; } 
.map-info h2 { text-transform: uppercase; font-size: 1.4em; letter-spacing: 0.2em; line-height: 0.9em; color: #fff; font-family: crimson; }            
.map-info h2.ribbon { font-family: nova; display: inline-block; background: #ad4242; color: #fff; clear: both; padding: 20px 20px 14px 20px; margin: 4px; }
.map-info h2.ribbon:last-of-type { margin-bottom: .6em; }
.map-info-mobile { display: none; position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
.map-info-mobile .bottom { text-align: right; position: absolute; bottom: 7em; left: 0; right: 0; }
.map-info-mobile .btn { font-size: 2em; font-family: crimson; padding-top: .7em !important; }

@media( max-width: 1199px ) {
    
    .map-container { padding-bottom: 2em; }
    .map path { fill: #666 !important; cursor: default; }
    .map path.has-class { fill: #ccc !important; }
    .map-info { display: none; }
    .map-info-mobile { display: block; }
    
}
@media( max-width: 414px ) {
    
    .map-container .label { font-size: 1em; }
    
}



/******[ COMMENTS ]**************************************************/
.comment-section { border-bottom: 1px solid #ccc; border-top: 1px solid #ccc; margin-top: -1px; }
.comment-list { padding-left: 0; margin-top: 2em; }
.comment-text { padding: 10px 15px; border: 1px solid #ccc; margin: .1em 0 .6em; position: relative; font-family: crimson; }
.comment-text p { margin-bottom: 1.5em; }
.comment-text p:last-child { margin-bottom: 0; }
.comment-text em.text-danger { padding-bottom: .5em; display: block; }
.comment-text:before { content: ' '; border: 1px solid #ccc;background: #fff; height: 20px; width: 20px; display: block; border-top-right-radius: 100px; border-right-color: transparent; border-top-color: transparent ; transform: rotate( 45deg ); position: absolute; left: -10px; top: 14px; }
.comment strong { font-family: nova; }
.comment strong cite { font-style: normal; text-transform: uppercase; letter-spacing: .1em; }
.comment strong a { text-decoration: none; }
.comment strong span { font-size: .8em; font-weight: 100; font-style: italic; position: relative; bottom: .1em; color: #afafaf; }
.comment .response a { font-size: 13px; padding: 4px 10px 2px !important; line-height: 13px; display: inline-block; margin: 0; font-family: crimson; }
.comment-author.vcard { width: 120px; float: left; }
.comment-inner { margin-top: -.6em; }
.comment { margin-bottom: 3em; }
.comment .avatar.photo { width: 100%; }

.comment-form { margin-top: -.6em; }
.comment-form label { width: 100px; }
.comment-form .logged-in-as a { margin-left: 1em; }
.comment-form .logged-in-as a:first-child { margin-left: 0; }

.comment-form-comment { margin-top: 1em; }
.comment-form-comment label { display: none; }
.comment-form-comment textarea { width: 100%; height: 100px; margin-top: -.5em; margin-bottom: 0px; border: 1px solid #ccc; padding: .2em .6em; }

.comment-reply-title a { text-decoration: none; }

.comment-respond { margin-bottom: 3em; }

#cancel-comment-reply-link { font-size: .8em; text-transform: capitalize; letter-spacing: 0; position: relative; top: -.3em; float: right; }

.form-submit { position: relative; color: #fff; margin-top: .5em; }
.form-submit input[type=submit] { float: right; }
.form-submit .submit-arrow { right: 1em !important; top: .6em !important; }

/******[ SEARCH ELEMENTS ]*******************************************/
.search-page { margin-top: 2em; }
.search-page .search-results { margin-bottom: 2em; }
.search-page .search-results h3 { margin-top: 1.5em; margin-bottom: 0; }
.search-page .search-results em { font-weight: 600; font-family: crimson; letter-spacing: -.1em; }
.search-page .search-results p a { font-weight: 600; font-family: nova; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; font-size: .9em; }
.search-page .search-results p a:after { content: '\f0da'; font-family: fontawesome; margin-left: .6em; }



/******[ FORM ELEMENTS ]*********************************************/
.btn, input[type=submit] { cursor: pointer; }
a.btn:after, .comment-reply-link:after, #cancel-comment-reply-link:after { content: '\f0da'; font-family: fontawesome; margin-left: .6em; }
.btn.btn-primary, .comment-reply-link, input[type=submit] { margin-top: -0.3em; padding: .6em 1em .5em; text-decoration: none !important; background: #4064ae; border-radius: 0; border: 2px solid #4064ae !important; color: #fff !important; transition: all 0.15s ease-in-out; }
.btn.btn-primary .fa, .comment-reply-link .fa { color: #fff !important; border: none !important; margin-left: 0.2em; }
.btn.btn-primary:hover, .comment-reply-link:hover, input[type=submit] { border-color: #ad4242 !important; background: #ad4242; }
body .btn.btn-primary:hover, .btn.btn-primary:hover .fa, body .comment-reply-link:hover, .comment-reply-link:hover .fa, input[type=submit] { color: #fff !important; }
.btn.btn-light { font-family: crimson; margin-top: -0.3em; padding: .5em 1em; text-decoration: none !important; background: transparent; border-radius: 0; border: 2px solid #fff !important; color: #fff !important; box-shadow: inset 0 0 0 0 #fff; transition: all 0.12s ease-in-out; }
.btn.btn-light .fa { color: #fff !important; border: none !important; margin-left: 0.2em; }
.btn.btn-light:hover { box-shadow: inset 0 0 0 2em #fff; color: #333 !important; }
.go-to.btn-light { color: #666 !important; border-color: #666 !important; font-family: crimson; box-shadow: inset 0 0 0 0 #666; margin: auto; margin-bottom: -3.3em; background: #fff; }
.go-to.btn-light:hover { color: #fff !important; box-shadow: inset 0 0 0 2em #666; }
.btn.btn-white, #cancel-comment-reply-link { font-family: crimson; padding: .5em 1em; text-decoration: none; background: #fff; border-radius: 0; border: 2px solid #4265ac; color: #4265ac; box-shadow: inset 0 0 0 0 #4265ac; transition: all 0.12s ease-in-out; }
.btn.btn-white:hover, .btn.btn-white.active, #cancel-comment-reply-link:hover { color: #fff; box-shadow: inset 0 0 0 60px #4265ac; }
.btn.no-arrow:after { content: '' !important; margin: 0; }
.btn.btn-danger { margin-top: -0.3em; padding: .5em 1em; text-decoration: none !important; background: #ad4242; border-radius: 0; border: 2px solid #ad4242 !important; color: #fff !important; box-shadow: inset 0 0 0 0 #232e46; transition: all 0.12s ease-in-out; }
.btn.btn-danger .fa { color: #fff !important; border: none !important; margin-left: 0.2em; }
.btn.btn-danger:hover { border-color: #232e46 !important; box-shadow: inset 0 0 0 2em #232e46; color: #fff !important; }
.btn.btn-danger-dark { font-family: crimson; margin-top: -0.3em; padding: .5em 1em; text-decoration: none !important; background: #5a221e; border-radius: 0; border: 2px solid #5a221e !important; color: #fff !important; box-shadow: inset 0 0 0 0 #232e46; transition: all 0.12s ease-in-out; }
.btn.btn-danger-dark .fa { color: #fff !important; border: none !important; margin-left: 0.2em; }
.btn.btn-danger-dark:hover { border-color: #232e46 !important; box-shadow: inset 0 0 0 2em #232e46; color: #fff !important; }

.has-title-option li:first-child { display: none; }

input { border-radius: 0 !important; font-family: crimson; }
select { border-radius: 0 !important; -webkit-appearance: none; font-family: crimson; background: #fff url( https://teenpact.com/new2018/wp-content/themes/teenpact/img/dropdown_arrow.png ) no-repeat right center !important; background-size: 25px !important; }
input[type=submit] { padding-right: 1.9em !important; }
i.fa.fa-caret-right.submit-arrow { z-index: 1; position: absolute; right: 1.5em; font-size: 1.1em; top: .5em; pointer-events: none; }

.gform_heading { display: none; }

@media( max-width: 991px ) { 
 
    input[type=submit] { padding-right: 1.9em !important; }
    i.fa.fa-caret-right.submit-arrow { position: absolute; right: 1.2em; font-size: 1.1em; top: .5em; pointer-events: none; }
    
}

/******[ MISC ]******************************************************/
.modal-header { border-bottom: none; display: block; }
.modal-header h5.modal-header { font-size: 4.5em; font-family: crimson; padding-left: 0; color: #fff; line-height: 1em; }
.modal-header h5.large { color: #4162ae; font-size: 5.5em; }
.modal-header .close { z-index: 1; position: absolute; top: 1em; right: 1em; max-width: 2em; font-size: 2.5em; color: #fff; text-shadow: none; opacity: 1; cursor: pointer; }
.modal-header .close svg { height: 1.7em; margin-top: .2em; }
.modal-header .close svg path { stroke: #ccc !important; transition: all .2s ease-in-out; }
.modal-header .close svg:hover path { stroke: rgb(160, 160, 160) !important; }
.modal-body #statePageSlider { height: 480px !important; }
.modal-footer { border-top: none; }
.blue .modal-content { background: #222e45; color: #fff; border-radius: 12px; padding: 3em; }
.blue .modal-content label { width: 100%; position: relative; }
.blue .modal-content input[type=search] { background: #222e45; border: 1px solid #4162ae; color: #fff; border-radius: 0; padding: .8em 2.5em .8em 1em; width: 100%; font-family: Crimson; }
.blue .modal-content input[type=search]:focus { outline: none; }
.blue .modal-content .search-block .fa-search { font-size: 1.2em; position: absolute; top: .8em; right: .9em; cursor: pointer; }
.blue .modal-header hr { border-top: 2px solid #4162ae; width: 180px; margin: .7em 0 .7em 0em; }
.blue .modal-header h5 { text-transform: capitalize; letter-spacing: 0; }
.light-blue .modal-content { background: #4365ac; color: #fff; border-radius: 12px; padding: 3em; font-family: crimson; }
.light-blue .modal-content .modal-header { text-transform: uppercase; font-family: nova; letter-spacing: 0.2em; }
.light-blue .modal-header hr { border-top: 2px solid #2e436a; width: 180px; margin: .7em 0; }
.light-blue .modal-body p a { color: #fff !important; }
.light-blue .btn.btn-light { margin-top: 2em; }
.red .modal-content { background: #ad4242; color: #fff; border-radius: 12px; padding: 3em; }
.red .modal-content .modal-header { color: #fff; text-transform: uppercase; font-family: nova; letter-spacing: 0.2em; }
.red .modal-content label { width: 100%; position: relative; }
.red .modal-header hr { border-top: 2px solid #611e1d; width: 180px; margin: .7em 0 .7em 0em; }
.red .modal-content .modal-menu li a:after { display: none; }
.red .modal-content .modal-menu li a { text-transform: capitalize; letter-spacing: 0; font-family: crimson; }
.red .modal-content .modal-menu li { margin-bottom: 1.4em; }
.red .modal-content .modal-menu li:last-of-type { margin-bottom: -2em; }
.red .modal-content .badge-danger { background-color: #611e1d; }
.white .modal-content { background: #fff; border-radius: 12px; padding: 3em; }
.white .modal-content .modal-body { margin-bottom: -5em; }
.white .modal-content .fa-times-circle-o { font-size: 1.2em; position: absolute; top: 0em; right: 0em; cursor: pointer; color: #999; }
.white .modal-header hr { border-top: 2px solid #4162ae; width: 180px; margin: .7em 0 .7em 0em; }

.white .modal-lg { max-width: 100%; margin: 0; }
.white .modal-lg .modal-content { border-radius: 0; }

.white .modal-body .carousel-item { background-attachment: scroll !important; height: 500px; background-size: cover !important; background-position: 0 0 !important; }

.carousel-item .curtain { background: rgba( 0,0,0,0.2 ); position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
.carousel-control-prev, .carousel-control-next { z-index: 2; }

#mc_embed_signup_scroll { margin-bottom: 1em; }
#mc_embed_signup_scroll h2, #mc_embed_signup_scroll .indicates-required { display: none; }
#mc_embed_signup_scroll .mc-field-group { float: left; }
#mc_embed_signup_scroll .row { padding-bottom: .5em; }
#mc_embed_signup_scroll .row .mc-field-group:nth-child( 2n ) { padding: 15px 0; }
#mc_embed_signup_scroll { margin: .5rem 0 0 0; }
#mc_embed_signup_scroll .btn { position: relative; top: 4px; display: block; width: 100%; }

.obf { display: none !important; }

html body section .btn.disabled { cursor: not-allowed !important; }

/* Set the modals to fullscreen */
.modal-lg { max-width: 100%; width: 100%; max-height: 100%; height: 100%; margin: 0; }
.modal-content { min-height: 100%; height: auto; border-radius: 0 !important; }

@media( max-width: 991px ) {
    
    .modal-header h5.modal-header { font-size: 3.0em; }
    .modal-header .close { font-size: 2em; }
    .light-blue .modal-header .close, .red .modal-header .close { font-size: 1.2em !important; }
    
}

@media( max-width: 875px ) {
    
    .white .modal-lg { max-width: 100%; margin: 10px; }
    
}

@media( min-width: 767px ) {
    
    #mc_embed_signup_scroll .row .mc-field-group:nth-child( 2n ) { padding: 0 5px; }
    
}

@media( max-width: 685px ) {
    
    .white .modal-content { padding: 0; }
    .white .staff-post-header { background-position: right !important; }
    .white .staff-post-header .title { width: 100%; font-size: 1em; }
    .white .staff-post-header h1 { font-size: 3em; }
    
}

@media( max-width: 574px ) {
    
    .modal-dialog { margin: 0; }
    .modal-content { height: auto; border-radius: 0 !important; padding: inherit 1.3em !important; }
    .modal-content .modal-header hr { width: 40% !important; }
    
    .light-blue .modal-content .modal-header { font-size: 1.5em !important; }
    .light-blue .modal-content { padding: 5em 1.3em 3em !important; font-size: 1.2em; }
    
    .red .modal-content .modal-header { font-size: 1.5em !important; }
    .red .modal-content ul { font-size: 1.3em; }
    
}

/******[ SHORTCODES ]************************************************/
.scholarship-shortcode { text-align: center; font-family: nova; color: #4162ae; font-size: 1.3em; text-transform: uppercase; letter-spacing: .2em; margin-top: 1em; padding: 1em; line-height: 2em; background: rgba( 0,0,0,0.1 ) !important; }
.scholarship-shortcode a { color: #fff; text-transform: capitalize; font-size: .7em; }
.scholarship-shortcode a:hover, .scholarship-shortcode a:hover .fa { color: #4162ae !important; }

ul.shortcode-menu { padding-left: 0 !important; margin-top: 1.5em; display: block; }
ul.shortcode-menu li { display: inline-block !important; margin-right: 0.2em; margin-top: 0.4em; }

.shortcode-section { position: relative; color: #fff; }
.shortcode-section h1, .shortcode-section h2, .shortcode-section h3, .shortcode-section h4, .shortcode-section h5, .shortcode-section h6 { color: #fff; }
.shortcode-section hr { border-top: 2px solid #fff; width: 30%; margin-left: 0; }
.shortcode-section .rollover { background: rgba( 35,46,70,.9 ); opacity: 0; position: absolute; top: 0; right: 0; bottom: 0; left: 0; transition: opacity 0.2s ease-in-out; margin: 0; }
.shortcode-section .rollover:hover { opacity: 1; }
.shortcode-section .rollover .btn { margin: auto; }
.shortcode-section .rollover .align-self-center { text-align: center; width: 100%; }

/******[ GLOBAL RESPONSIVE OVERRIDES ]*******************************/
@media ( min-width: 1400px ) {
    
    .container { max-width: 1300px; }
    
}

@supports ( -webkit-overflow-scrolling: touch ) {
  
    .carousel-item, .blog-post-header { background-position: 50% 0 !important; background-attachment: scroll !important; }
    
}

body.single-states .event ul li { line-height: 1.4em !important; }
body.single-states .event ul li em { margin: 1em 0 !important; display: inline-block; line-height: 1.5em !important; }
body.single-states .event ul li .times { margin: 0 !important; }
body.single-states .event ul li .times em { margin: 0 !important; position: relative; top: .4em; }
