/* 
Theme Name: SMSC Gives
Author: SMSC Marketing
Author URI: http://smscmarketing.org/
Description: A theme for SMSCGives Wordpress Website.
Version: 1.0.0
Text Domain: smscgives
*/

@font-face {font-family: 'Futura-Med-BT';src: url('../fonts/futura_md_bt.ttf');}


/*********/
/* RESET */
/*********/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body { line-height: 1; }
ul, ol { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
input:focus { outline: -webkit-focus-ring-color auto 0px; }

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
    display: flex;
    align-items: center;
}

.main-navigation ul.menu {
    display: none;
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.main-navigation li {
    float: left;
    position: relative;
}

.main-navigation a {
    display: block;
    text-decoration: none;
    padding: 10px 15px;
}

.main-navigation ul ul {
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    float: left;
    position: absolute;
    top: 100%;
    right: -999em;
    z-index: 99999;
    background-color: #fff;
}

.main-navigation ul ul ul {
    left: -999em;
    top: 0;
}

.main-navigation ul ul a {
    width: 200px;
}

.main-navigation ul ul li {

}

.main-navigation li:hover > a,
.main-navigation li.focus > a {
}

.main-navigation ul ul :hover > a,
.main-navigation ul ul .focus > a {
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a.focus {
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
    left: auto;
    right: 0;
    display: flex;
    flex-direction: column;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
    left: 100%;
}

.main-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_ancestor > a,
.main-navigation .current-menu-ancestor > a {
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
    display: block;
}
button.menu-toggle .fa-times {
    display: none;
}
button.menu-toggle,
button.menu-toggle:hover {
    background-color: transparent;
    color: #009bc9;
    padding: 0;
}
.main-navigation.toggled ul:not(.sub-menu) {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    max-width: 360px;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    z-index: 1001;
    padding-top: 40px;
}
/* .main-navigation.toggled ul:not(.sub-menu)::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.2);
} */
.main-navigation.toggled button.menu-toggle {
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 1002;
}
.main-navigation.toggled button.menu-toggle .fa-bars {
    display: none;
}
.main-navigation.toggled button.menu-toggle .fa-times {
    display: block;
}

@media screen and (min-width: 37.5em) {
    .menu-toggle {
        display: none;
    }
    .main-navigation ul.menu {
        display: flex;
    }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
    margin: 0 0 1.5em;
    overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
    float: left;
    width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%;
}

/***************/
/* Transitions */
/***************/
.transition75  {
-moz-transition: all 75ms ease;  /* FF4+ */
-o-transition: all 75ms ease;  /* Opera 10.5+ */
-webkit-transition: all 75ms ease;  /* Saf3.2+, Chrome */
-ms-transition: all 75ms ease;  /* IE10 */
transition: all 75ms ease; 
}

.transition100 {
-moz-transition: all 100ms ease;  /* FF4+ */
-o-transition: all 100ms ease;  /* Opera 10.5+ */
-webkit-transition: all 100ms ease;  /* Saf3.2+, Chrome */
-ms-transition: all 100ms ease;  /* IE10 */
transition: all 100ms ease; 
}

.transition250 {
-moz-transition: all 250ms ease;  /* FF4+ */
-o-transition: all 250ms ease;  /* Opera 10.5+ */
-webkit-transition: all 250ms ease;  /* Saf3.2+, Chrome */
-ms-transition: all 250ms ease;  /* IE10 */
transition: all 250ms ease; 
}

.transition500 {
-moz-transition: all 500ms ease;  /* FF4+ */
-o-transition: all 500ms ease;  /* Opera 10.5+ */
-webkit-transition: all 500ms ease;  /* Saf3.2+, Chrome */
-ms-transition: all 500ms ease;  /* IE10 */
transition: all 500ms ease; 
}

.transition1000 {
-moz-transition: all 1000ms ease;  /* FF4+ */
-o-transition: all 1000ms ease;  /* Opera 10.5+ */
-webkit-transition: all 1000ms ease;  /* Saf3.2+, Chrome */
-ms-transition: all 1000ms ease;  /* IE10 */
transition: all 1000ms ease; 
}

.no-transition {
-moz-transition: all 0ms ease;  /* FF4+ */
-o-transition: all 0ms ease;  /* Opera 10.5+ */
-webkit-transition: all 0ms ease;  /* Saf3.2+, Chrome */
-ms-transition: all 0ms ease;  /* IE10 */
transition: all 0ms ease; 
}

.delay250 {
-webkit-transition-delay: 250ms;
-moz-transition-delay: 250ms;
-o-transition-delay: 250ms;
transition-delay: 250ms;	
}

.delay500 {
-webkit-transition-delay: 500ms;
-moz-transition-delay: 500ms;
-o-transition-delay: 500ms;
transition-delay: 500ms;	
}
.delay750 {
-webkit-transition-delay: 750ms;
-moz-transition-delay: 750ms;
-o-transition-delay: 750ms;
transition-delay: 750ms;	
}
.delay1000 {
-webkit-transition-delay: 1000ms;
-moz-transition-delay: 1000ms;
-o-transition-delay: 1000ms;
transition-delay: 1000ms;	
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing:    border-box;
    box-sizing:  border-box;
}

/*************/
/*** OOCSS ***/
/*************/

/* Widths */
.contain-width { width: 100%; max-width: 1200px; }
.full-width { width:100%; }
.half-width { width:50%;  }
.one-fourth-width, .one-qtr-width { width:25%; }
.three-fourth-width, .three-qtr-width { width:75%; }
.one-third-width { width:33.33333%; }
.two-third-width { width:66.66666%; }
.one-fifth-width { width:20%; }
.two-fifth-width { width:40%; }
.three-fifth-width { width:60%; }
.four-fifth-width { width:80%; }
/* END Widths */

/* Margins Padding Borders */
.padding-sml { padding:5px; }
.padding-med { padding:10px; }
.padding-lrg { padding:20px; }
.padding-xlrg { padding: 40px; }
.padding-top-lrg { padding-top: 20px; }
.padding-bottom-med { padding-bottom: 10px; }
.padding-bottom-lrg { padding-bottom: 20px; }
.padding-bottom-xlrg { padding-bottom: 40px; }
.padding-left-med { padding-left: 10px; }
.padding-left-lrg { padding-left: 20px; }
.padding-right-med { padding-right: 10px; }
.padding-right-lrg { padding-right: 20px; }
.padding-horz-med { padding-left: 10px; padding-right: 10px; }
.padding-horz-lrg { padding-left: 20px; padding-right: 20px; }
.padding-vert-sml { padding-top: 5px; padding-bottom: 5px; }
.padding-vert-med { padding-top: 10px; padding-bottom: 10px; }
.padding-vert-lrg { padding-top: 20px; padding-bottom: 20px; }
.padding-vert-xlrg { padding-top: 40px; padding-bottom: 40px; }
.no-padding { padding:0 !important; }
.margin-sml { margin:5px; }
.margin-med { margin:10px; }
.margin-lrg { margin:20px; }
.margin-top-sml { margin-top:5px; }
.margin-top-med { margin-top:10px; }
.margin-top-lrg { margin-top:20px; }
.margin-top-xlrg { margin-top:40px; }
.margin-bottom-sml { margin-bottom:5px; }
.margin-bottom-med { margin-bottom:10px; }
.margin-bottom-lrg { margin-bottom:20px; }
.margin-bottom-xlrg { margin-bottom:40px; }
.margin-horz-sml { margin-left:5px; margin-right:5px; }
.margin-horz-med { margin-left:10px; margin-right:10px; }
.margin-horz-lrg { margin-left:20px; margin-right:20px; }
.margin-horz-xlrg { margin-left:40px; margin-right:40px; }
.margin-vert-sml { margin-top:5px; margin-bottom:5px; }
.margin-vert-med { margin-top:10px; margin-bottom:10px; }
.margin-vert-lrg { margin-top:20px; margin-bottom:20px; }
.margin-vert-xlrg { margin-top:40px; margin-bottom:40px; }
.margin-right-lrg { margin-right: 20px; }
.margin-center { margin-left: auto; margin-right: auto; }
.no-margin { margin:0 !important; }
.border-top-thick { border-top-style: solid; border-top-width: 10px; }
.border-top { border-top-style: solid; border-top-width: 5px; }
.border-bottom-thin { border-bottom-style: solid; border-bottom-width: 1px; }
.border-bottom-thick { border-bottom-style: solid; border-bottom-width: 10px; }
.border-right-thin { border-right-style: solid; border-right-width: 1px; }
.border-left-thin { border-left-style: solid; border-left-width: 1px; }
.border-left-thick { border-left-style: solid; border-left-width: 10px; }
.border-thin { border-style: solid; border-width: 1px; }
.border-thick { border-style: solid; border-width: 10px; }
.round-corners { border-radius: 10px; }

/* Positioning */
.relative { position:relative; }
.absolute { position:absolute; }
.fixed { position:fixed; }
.center-element, .aligncenter { text-align: center; margin: 0 auto; }
.float-left { float:left; }
.float-right { float:right; }
.float-none { float:none; }

/* ~ Flex Positioning ~ */
.flex-row { flex-direction: row; }
.flex-wrap { flex-wrap: wrap; }
.flex-top { align-items: flex-start; }
.flex-horz-center, .flex-justify-center { justify-content: center; }
.flex-horz-right, .flex-justify-right { justify-content: flex-end; }
.flex-horz-space-around, .flex-justify-around { justify-content: space-around; }
.flex-horz-space-between, .flex-justify-between { justify-content: space-between; }
.flex-vert-top, .flex-align-top { align-items: flex-start; }
.flex-vert-center, .flex-align-center { align-items: center; }
.flex-vert-bottom, .flex-align-bottom { align-items: flex-end; }
.flex-vert-stretch, .flex-align-stretch { align-items: stretch; }
.flex-self-top { align-self: flex-start; }
.flex-self-center { align-self: center; }
.flex-self-bottom { align-self: flex-end; }
.flex-self-stretch { align-self: stretch; }
.flex-grow { flex-grow: 1; }

/* Background Properties */
.bg-cover { background-size: cover; }
.bg-contain { background-size: contain; }
.bg-left-top { background-position: left top; }
.bg-center-top { background-position: center top; }
.bg-right-top { background-position: right top; }
.bg-left-center { background-position: left center; }
.bg-center-center { background-position: center center; }
.bg-right-center { background-position: right center; }
.bg-left-bottom { background-position: left bottom; }
.bg-center-bottom { background-position: center bottom; }
.bg-right-bottom { background-position: right bottom; }

/* Display Properties */
.alignleft { float: left; margin-right: 20px; }
.display-block { display: block; }
.display-flex { display: flex; }
.display-inline { display: inline; }
.display-inline-block { display: inline-block; }
.display-table { display:table; table-layout: fixed; }
.display-table-cell { display:table-cell; }
.inherit-height { height:inherit; }
.inherit-width { width:inherit; }
.vertical-top { height: inherit; display: table-cell; vertical-align: top; } 
.vertical-middle { height: inherit; display: table-cell; vertical-align: middle; }
.vertical-bottom { height: inherit; display: table-cell; vertical-align: bottom; }
.overflow-hidden { overflow:hidden; }
.rotate-90 { -ms-transform: rotate(90deg); /* IE 9 */ -webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */ transform: rotate(90deg); }
.hide { display:none; }
.show { display:block; }
.mobile-show, .tablet-show { display: none; }
.no-list-style { list-style-type:none; list-style:none; margin: 0; padding: 0; }
.no-break { white-space: nowrap; }

@media only screen and (max-width: 480px) {
    .rotate-90 { -ms-transform: inherit; /* IE 9 */ -webkit-transform: inherit; /* Chrome, Safari, Opera */ transform: inherit; }
}

/* Font Attributes */
.uppercase { text-transform:uppercase; }
.lowercase { text-transform:none; }
.text-right { text-align:right; }
.text-left { text-align:left; }
.text-center { text-align:center; }
.underline { text-decoration:underline; }
.no-underline { text-decoration:none; }
i, em, .font-italic, .italic { font-style:italic; }
.font-light, .light { font-weight:300; }
.font-normal, .normal { font-weight:400; }
strong, .font-bold, .bold { font-weight:700; }
.font-thin, .thin { font-family: 'Radikal-Thin'; font-weight: 100; }
.font-sml { font-size: 13px; }
.font-med { font-size: 22px; }
.font-lrg { font-size: 35px; line-height: 1.3; }
.font-xlrg { font-size: 60px; line-height: 1.5; }
.text-shadow-subtle-black { text-shadow: 0px 0px 10px rgba(50,50,50,.5); }
.text-shadow-subtle-white { text-shadow: 0px 0px 100px rgba(255, 255, 255, 0.80); }

/* css columns --- do not work >= IE8 */
.columns-1 { columns: 1; -webkit-columns: 1; -moz-columns: 1; }
.columns-2 { columns: 2; -webkit-columns: 2; -moz-columns: 2; -webkit-column-gap: 50px; -moz-column-gap: 50px; column-gap: 50px; }
.columns-3 { columns: 3; -webkit-columns: 3; -moz-columns: 3; -webkit-column-gap: 30px; -moz-column-gap: 30px; column-gap: 30px; }
.columns-4 { columns: 4; -webkit-columns: 4; -moz-columns: 4; -webkit-column-gap: 20px; -moz-column-gap: 20px; column-gap: 20px; }
.columns-5 { columns: 5; -webkit-columns: 5; -moz-columns: 5; -webkit-column-gap: 15px; -moz-column-gap: 15px; column-gap: 15px; }

/* misc */
.pointer { cursor:pointer; } /* finger pointer on hover */
.help { cursor:help; } /* question mark on hover */
ul.horizontal { list-style: none; margin: 0px; }
ul.horizontal li { float:left; }

/* OOCSS Media Queries */
@media only screen and (max-width:1000px),
only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
    .font-med { font-size: 18px; }
    .font-lrg { font-size: 30px; }
    .font-xlrg { font-size: 40px; }
    .flex-mobile-nowrap { flex-wrap: nowrap; }
    .tablet-full { width: 100%; }
}
@media only screen and (max-width: 1400px) {
    .tablet-lrg-full, .contain-width { width: 100%; }
    .tablet-lrg-half { width: 50%; }
    .font-lrg { font-size: 30px; }
    .padding-lrg { padding: 15px; }
    .padding-xlrg { padding: 30px; }
}
@media only screen and (max-width: 770px) {
    .padding-lrg { padding: 15px; }
    .padding-xlrg { padding: 30px; }
    .padding-vert-xlrg { padding-top: 30px; padding-bottom: 30px; }
    .bg-mobile-hide { background-image: none !important; }
    .tablet-show { display:block; }
    .tablet-hide { display: none; }
    .tablet-full  { width: 100%; }
    .tablet-half { width: 50%; }
    .tablet-hide-border { border: 0px !important; }
    .tablet-text-center { text-align: center; }
}
@media only screen and (max-width: 640px) {
    .font-sml { font-size: 12px; }
    .font-med { font-size: 15px; }
    .font-lrg { font-size: 25px; }
    .font-xlrg { font-size: 30px; }
    .mobile-hide { display: none; }
    .mobile-break { display: table-column; }
    .mobile-show { display:block; }
    .mobile-full { width: 100%; display:block; }
    .mobile-half { width: 50%; display:block; }
    .mobile-text-center { text-align: center; }
    .mobile-no-padding { padding-left: 0; padding-right: 0; }
    .flex-mobile-full { width: 100%; }

    .recap-item { padding-left: 0 !important; padding-right: 0 !important; }
    .recap-font-lrg { font-size: 36px !important; }
    .recap-font-xlrg { font-size: 3.5em !important; }
}
@media only screen and (max-width: 480px) {
    .padding-xlrg { padding: 20px; }
    .padding-vert-xlrg { padding-top: 15px; padding-bottom: 15px; }
}
@media only screen and (max-width: 330px) {

}

/******************** SMSCGIVES.COM STYLES ********************/

body { font-family: 'Open Sans', sans-serif; font-weight: 300; line-height: 1.75; }
a { text-decoration: none; color: #009bc9; font-weight: 700; }
a:hover { color: #00bff8; }
h1 { font-size: 50px; }
h2 { font-size: 40px; }
h3 { font-size: 30px; }
h4 { font-size: 20px; }
h1, h2, h3, h4, h5 { font-weight: 700; }
h1, h2{ margin-bottom: 30px; }
h1, h2, h3{ line-height: 1.25; margin-bottom: 30px; }
p { margin-bottom: 20px; }
ul { list-style: initial; margin-bottom: 20px; }
ol { list-style: decimal; margin-bottom: 20px; }
ul, ol { list-style-position: inside; }
hr { border-top: solid 1px #888; width: 100%; margin: 20px 0; }
p + ol, p + ul { margin-top: -20px; }

body:has(.main-navigation.toggled) {
    overflow-y: hidden;
}
body:has(.main-navigation.toggled)::before {
    content: '';
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.2);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
}

@media only screen and (max-width: 770px) {
    h1 { font-size: 45px; }
    h2 { font-size: 35px; }
    h3 { font-size: 28px; }
    h4 { font-size: 24px; }
    h1, h2 { margin-bottom: 15px; }
}
@media only screen and (max-width: 480px) {
    h1 { font-size: 28px; }
    h2, h3, h4 { font-size: 20px; }
}

/** theme colors **/
.black-color { color: #000; }
.gray-color { color: #808080; }
.dark-tan-color { color: #9f9085; }
.dark-gray-color { color: #757270; }
.white-color, td[class*="today"] .day-num a { color: #fff; }
.red-color, .error-message { color: #e31e27; }
.orange-color, h3 { color: #ffa300; }
.yellow-bg { background-color: #ffa300; }
.black-bg { background-color: #000; }
.gray-bg { background-color: #dedede; }
.light-gray-bg { background-color: #f3f3f3; }
.dark-gray-bg { background-color: #464340; }
.red-bg, td[class*="today"] .day-num { background-color: #e31e27; color: #fff; }
.white-bg { background-color: #fff; }
.dark-tan-bg { background-color: #9f9085; }

/** general styles **/

.box-shadow { box-shadow: 0px 1px 10px rgba(0,0,0,.5); }
button, .button, .em-booking-submit, .nav-links a { font-family: 'Open Sans', sans-serif; border: none; padding: 10px 20px; display: inline-block; line-height: 1; font-weight: 300; text-transform: uppercase; text-align: center; }
button, .button, .nf-form-content .field-wrap input[type="button"], .em-booking-submit, .nav-links a { background-color: #009bc9; color: #fff; font-size: 20px; border-radius: 5px; }
button:hover, .button:hover, .nf-form-content .field-wrap input[type="button"]:hover, .em-booking-submit:hover, .nav-links a:hover { background-color: #00bff8; color: #fff; cursor: pointer; }
.button.mobile-button { display:none; }

/* HEADER */
#site-logo { width:10%; } 
#logo { max-width: 150px; }
.site-title-prefix { font-size: 16px; }
.site-title { font-size: 7vw; line-height: .8; padding: 0 20px; margin: 0 0 10px 0; }
.site-description { font-size: 2.5vw; padding: 0 20px 20px; }

.navbar {
    top: 0;
    position: sticky;
    width: 100%;
    background: lightgrey;
    display: flex;
    z-index: 1000;
    padding: 10px
}
.navbar-user {
    margin-left: auto;
}
.navbar-user ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}
.navbar-user ul li {
    position: relative;
}
.navbar-user ul ul {
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    float: left;
    position: absolute;
    top: 100%;
    right: -999em;
    z-index: 99999;
    background-color: #fff;
    display: none;
}
.navbar-user ul li:hover > ul,
.navbar-user ul li.focus > ul {
    left: auto;
    right: 0;
    display: flex;
    flex-direction: column;
}
.navbar-user ul ul a {
    display: block;
    width: 200px;
    padding: 7px 15px;
    font-weight: 400;
}
.submenu-login {
    text-align: center;
    background-color: #009bc9;
    color: #fff;
    border-radius: 5px;
    display: block;
    margin: 5px;
}
.submenu-login:hover,
.submenu-login:focus {
    background-color: #00bff8;
    color: #fff;
}
.submenu-signout {
    /* padding-top: 10px; */
    border-top: 1px solid #cecece;
}

@media only screen and (min-width: 1920px) {
    .site-title { font-size: 140px; }
    .site-description { font-size: 25px; }
}
@media only screen and (max-width:1000px),
only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
    .site-description { font-size: 2vw; padding: 0 20px 20px; }
}
@media only screen and (max-width: 770px) {
    #logo { max-width: 80px; }
    .site-title { line-height: 1; padding: 0 20px; }
    .site-description { font-size: 2.5vw; padding: 0 20px; }
    .button.mobile-button { display:block; }
}
@media only screen and (max-width: 570px) {
    #site-info { width: 75%; }
    #site-logo { width: 60px; line-height: 1; }
    .site-title { margin-bottom: 0; }
    .site-description { font-size: 12px; }
    .site-title-prefix { font-size: 15px;  }
}
@media only screen and (max-width: 480px) {
    #site-info { flex-grow:1; }
    #site-logo { width: 40px; }
    .site-title { padding: 0 0 0 10px; }
}
/* MAIN */
.event-image { min-height: 250px; }
#event-recap-button, .page-id-6680 #change-password-button, .page-id-6680 #logout-button, .home #change-password-button, .home #logout-button { background-color: rgba(70,67,64,1); }
.page-id-6709 #change-password-button, .page-id-6709 #logout-button { background-color: rgba(70,67,64,1); }
#event-recap-button:hover, #change-password-button:hover, #logout-button:hover { background-color: rgba(70,67,64,.7); }
.listing .event-image { background-size: cover; background-position: top; }
body.home .listing, body.page-id-6709 .listing { text-align:center; }
body.home .listing .event-content h3, body.page-id-6709 .listing .event-content h3 { font-size:25px; }
/* .user-links .contain-width { max-width: 1260px; } */
.single-event .user-links .contain-width { max-width:800px;  }
/** Future Events **/


/*
#future-events .listing-1 { border-left: none; }
#future-events div[class^="listing-"]:last-of-type { border-right: none; }
#future-events div[class^="listing-"]:last-of-type { border-bottom: none; }
#future-events div[class^="listing-"] { border-right: solid 1px #a9a9a9; }
*/
#future-events div[class^="listing-"] { border-bottom: solid 1px #f3f3f3; }
#future-events .event-title { line-height: 1; }
#future-events .button { font-size: 14px; }

#no-listings .image-overlay { background: #fff;bottom: 0;width: 100%; }

/* FOOTER */
#colophon a { color: #ffd000; }
#colophon a:hover { color: #fff05e; }
#contact { border-left: solid 1px #888; }
#contact.cm-version { margin: 0 auto; border: none; }
@media only screen and (max-width: 770px) {
    #colophon { text-align: center; }
    #contact { border-left: none; border-top: solid 1px #888; }
    #contact h2.padding-right-lrg { padding-right: 0; margin-bottom:10px; width: 100%; }
    #contact .details.padding-left-lrg { padding-left: 0; }
}
/* MISC */
img.attachment-full { width: 100%; height: auto; }
.posts-navigation .screen-reader-text { display:none; }
.posts-navigation .nav-links a { margin-bottom:20px; }

/** Event Manager **/
.days-names { border-bottom: 1px solid #e31e27; }
td[class*="today"] .day-num { display: flex; align-items: center; justify-content: center; height: 60px; width:  60px; margin-bottom: 10px; margin-top: 10px; text-align: center; border-radius: 50%; font-weight: 700; }
.eventless-post, .eventful-post, .eventless-pre, .eventful-pre, .eventful.past { opacity: .4; }
.event-name-link { line-height: 1; }
.location-map { float: right; }
.calendar-inner .button { font-size: unset; margin: 10px 0 0; padding: 5px 10px; }
.calendar-inner tr { border-bottom: solid 2px #f3f3f3;  }
.calendar-inner .month-nav td { line-height: 1; padding-top: 0; }
@media only screen and (max-width:1024px) {
    .calendar-inner .month_name h2 { margin-bottom: 10px; }
    td[class*="today"] .day-num { height: 40px; width:  40px; }
    .day-num { font-size: 25px; }
    .days-names.font-lrg { font-size: 18px; }
    body.home .listing { width:48%;  }
}
@media only screen and (max-width: 570px) {
    .location-map { float: none; }
    .calendar-inner .month_name h2 { font-size: 25px; margin-bottom: 0; }
    .calendar-inner thead tr, .calendar-inner td, .calendar-inner .event-details { display: flex; align-items: center; }
    .calendar-inner thead td, .calendar-inner .event-details, .calendar-inner .event-details .event-name-link { flex-grow: 1; justify-content: center; }
    .calendar-inner tr.days-names, .calendar-inner .eventful-pre, .calendar-inner .eventless-pre, .calendar-inner .eventful-post, .calendar-inner .eventless-post, .calendar-inner .past, .calendar-inner .eventless { display: none; }
    .calendar-inner .month-nav td { padding-top: 10px; }
    .calendar-inner tr { border-bottom: none; }
    .day-num { width: 40px; text-align: center; }
    .calendar-inner .event-details li { padding: 10px; }
    .calendar-inner tr:not(.month-nav) td { border-top: solid 3px #f3f3f3; padding-top: 0; padding-bottom: 0; }
    .calendar-inner .button { padding: 10px; }
}
@media only screen and (max-width: 480px) {
    .calendar-inner.padding-xlrg { padding: 10px; }
    .calendar-inner .event-name-link { font-size: 12px; }
}

/** Tickets List **/
/* .em-booking-form table { border-bottom:  solid 3px #f3f3f3; } */
.em-booking-form table { border: 2px #e5e5e5 solid; }
.em-tickets .em-ticket:nth-child(odd), .team-info tr:nth-child(odd) { background-color: #f3f3f3; }
.em-ticket-select { padding: 10px; margin-right: 20px; }
.team-info input::placeholder { color: #a9a9a9; }
#em-booking { display: flex; flex-wrap: wrap; }
.em-booking-form { width: 66.66666%; padding-right: 10px; }
.logged-in .em-booking-form { width: 100%; }
div.em-booking-login { padding: 20px; margin: 0; border: none; }
div.em-booking-login label { width: auto; }
.em-booking-form-details { width: 100%; padding: 0; }
.team-info th, .team-info td { padding: 15px 10px; }
.em-booking-form label { width: auto; float: none; }
.em-booking-form-details input[type=text], .em-booking-form-details input[type=email], .em-booking-form input[type=text], .em-booking-login-form input[type=text], .em-booking-login-form input[type=password], .em-booking-login input[type=submit], #confirm-shift form input, .team-list input { width: 100%; padding: 5px; }
.em-booking-login input[type=submit] { margin: 10px 0; }
.em-booking-message { width: 100%; z-index: 1000; }
#confirmation-message { opacity: 0; z-index: -1; background-color: rgba(0,0,0,.8); position: fixed; height: 100%; width: 100%; top: 0; left: 0; }
#confirmation-message.visible { opacity: 1; z-index: 100; }
.em-booking-buttons { background-color: #fff; padding: 40px; border: solid 1px #ccc; box-shadow: 2px 2px 5px rgba(0,0,0,.5); border-radius: 8px; max-width: 600px; }
#pre-booking-submit.hide { display: none; }
.em-booking-buttons input[type=checkbox] {  /* Double-sized Checkboxes */
  -ms-transform: scale(1.5); /* IE */
  -moz-transform: scale(1.5); /* FF */
  -webkit-transform: scale(1.5); /* Safari and Chrome */
  -o-transform: scale(1.5); /* Opera */
  padding: 10px; 
}
.em-booking-buttons.show { display: block; }
.signup-button { border: solid 1px #ccc; border-left: solid 1px #ccc; border-right: solid 1px #ccc; }
.alert-border { border: red 1px dashed; }
.alert-border:focus{ border: #a9a9a9 1px solid; }
.css-events-list table.events-table th { padding: 20px; }
.css-events-list table.events-table td { padding: 10px 20px; vertical-align: middle;  }
.location { padding-right: 10px; }

/* Modifications to remove group */
.em-tickets-spaces, .em-tickets-spaces label, .em-ticket-select { display:none; }
table.em-tickets .em-ticket-select { display:none; }
.em-bookings-ticket-table-spaces { vertical-align: middle; }
.em-bookings-ticket-table-spaces i { display:none; }
.em-bookings-ticket-table-spaces i.active { display:block; }
.team-info, .add_more_msg button { display:none !important; }

.em-booking-form-details { position: relative; }
/* body:not(.logged-in) .em-booking-form-details::before { content: 'New to #SMSCGives? Create your account!'; position: absolute; top: -15px; font-weight: 700; } */


@media only screen and (max-width: 770px) {
    #em-booking { flex-wrap: wrap; }
    div.em-booking-login { margin: 20px 0 0; }
}
@media only screen and (max-width: 570px) {
    .em-booking-form { width: 100%; padding: 0; }
    .team-info th { display: none; }
    .team-info td { display: block; }
    .team-info .column-slot { padding-bottom: 0; }
    body.home .listing { width:100%; text-align:center; }
}
@media only screen and (max-width: 480px) {
    
}
/** events listing **/

#events .listing, #events .listing .event-content { margin-bottom:20px; }
/*
#events .listing { border-top: solid 1px #ccc; border-bottom: solid 1px #ccc; }
#events .listing  img { width: 100%; height: auto; } 
*/
/** sign-up form **/
/*
.nf-before-form-content { display: none; }
.nf-form-content nf-fields-wrap { display: flex; flex-wrap: wrap; padding: 20px 0; }
.nf-form-title h3, .nf-form-content nf-fields-wrap nf-field { width: 100%; padding: 0 20px; }
.nf-form-content nf-field:nth-of-type(1), .nf-form-content nf-field:nth-of-type(2) { width: 50% }
.nf-form-content input, .nf-form-content select , .nf-form-content textarea { padding: 10px; border: solid 1px #d5e1e7; }
.nf-field-element textarea { height: 100px !important; max-width: 100%; }
#nf-field-12-wrap { display: flex; justify-content: space-between; }
#nf-field-12 { color: #757575; }
.nf-error  #nf-field-12 { color: #E80000; }
.nf-pass  #nf-field-12, .nf-error  #nf-field-12 option { color: initial; }
#nf-field-12 option:nth-of-type(1) { color: #ccc; }
#nf-field-9-wrap .nf-field-label { width: auto; white-space: nowrap; padding-right: 20px; }
#nf-field-9-wrap .nf-field-element { flex-grow: 1; }
.submit-container { text-align: center; }
.nf-form-content .field-wrap input[type="button"] { width: 50%; }
.nf-form-content .field-wrap input[type="button"]:hover { cursor: pointer; }
.nf-form-errors { text-align: center; margin-bottom: 30px; }
*/

/* Confirm Shift Page */
#confirm-shift { max-width:600px; margin:0 auto; padding:20px; }
#confirm-shift form { }
#confirm-shift form input { width:100%; margin-bottom:10px; }
#confirm-shift table { width:100%; margin-bottom:20px; }
#confirm-shift table, #confirm-shift th, #confirm-shift td {  border: 1px solid black; }
#confirm-shift td { padding:5px 10px; }
#confirm-shift td.title { background-color: #f3f3f3; font-weight:bold; } 

/* My Account */
.booking-team {  border:2px solid #ddd; border-top:0px; }
.booking-team-content { display:none; padding:20px; background:#fff; }
.team-list { width:100%;text-align:left;padding:20px;background-color:#fbfbfb; }

.delete-form { float:right; }
input.delete { background:none; color:red; font-weight:bold; border:none; font-size:34px; line-height:1; cursor:pointer;  padding: 0; }
table.team-list { border:2px solid #ddd; }
#add_form { position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(0, 0, 0, 0.75); padding:40px; z-index:1000;}
#add_form .add_form_wrap { background:#fff; width:100%; max-width:800px; margin:15% auto; display:block; padding: 40px; }
#cancel_add { margin:20px auto 0; display:block; }
.add_more_msg { position:relative;background: #ccc; padding: 10px; /* border: 5px solid #fbfbfb; */}
.add_more_msg:after { content: ""; width:0px; height:0px; border-left:12px solid transparent; border-right:12px solid transparent; border-top:12px solid #ccc; position:absolute; bottom:-12px; left: 50%; margin-left: -12px; }
.add_more_msg span.title-box { background: white; padding: 3px 7px; }
.add_more_msg button { margin-bottom:5px; }

.booking-main-row { border: 2px solid #ddd; background:#fff; }
.booking-main-row.active { border-bottom: 0px; }
tr.spacer { height:10px; width:100%; }
#dbem-bookings-table > tbody > tr > .booking-team-content { border: 2px solid #ddd; background:#fff; }
.team-list:first-child tr.team-member-row { border-top: 1px solid #ccc; }
tr.team-member-row { border-bottom: 1px solid #ccc; }
.trail-browse { display: none !important; }

/* Frontpage Posts */
/* on frontpage */
.frontpage-posts .frontpage-post-image { min-height: 250px; background-size: cover; background-position: center; }
/* on single post */
article.frontpage_post .entry-title { text-align: center; }
article.frontpage_post .entry-content { background-color: #fff; padding: 20px; border-radius: 10px; }
#frontpage-post-image { border-radius: 10px; overflow: hidden; margin-bottom: 10px; }
#frontpage-post-image img { vertical-align: middle; }

/* Ninja Forms */
.nf-form-cont { max-width:640px; margin:0 auto; }
.nf-form-cont input[type="text"], .nf-form-cont input[type="email"], .nf-form-cont input[type="tel"] { height:40px; padding:3px 7px; font-size:16px; }
.nf-form-cont textarea { padding:7px; font-size:16px; }
.nf-form-cont input[type="button"] { padding: 10px 20px; }
/*
#em-booking, .user-links { display: none !important; }

body.postid-3594 #em-booking { display: block !important; }
*/


#masthead #user_switching_switch_on { background: #fff; color:#000; padding: 10px; }
#masthead #user_switching_switch_on a { color:red; }

/* Frontpage Redesign */
.footer-hr { width: 1168px; border-bottom: 0; margin: 0 auto; }
@media only screen and (max-width: 1200px) {
    .footer-hr { width: 100%; }
}

.slick-list .wp-block-image img { max-width: 100%; height: auto; }
.slick-dotted.slick-slider { margin-bottom: 50px; }

.user-links-template { margin: auto auto; margin-top: -20px; margin-bottom: 30px; max-width: 1024px; }

/* .home .wp-block-cb-carousel { max-width: 1024px; } */
.home h2, .home h3 { margin-top: 30px; }
.home ol { counter-reset: framework; }
.home ol li { counter-increment: framework; display: flex; align-items: center; margin-bottom: 20px; }
.home ol li:before {
    content: counter(framework);
    flex-shrink: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #e31e27;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    font-weight: 800;
    font-size: 22px;
    margin-right: 10px;
}

@media only screen and (max-width: 480px) {
    .home ol li:before { width: 30px; height: 30px; font-size: 18px; }
}

.home .framework-list ol > li { counter-increment: framework; position: relative; display: flex; align-items: center; margin-bottom: 20px; padding-left: 40px; }
.home .framework-list ol > li:before {
    content: counter(framework);
    position: absolute;
    flex-shrink: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #e31e27;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    font-weight: 800;
    font-size: 22px;
    left: -15px;
    top: -7px;
}
.home .framework-list ol h3 { color: black; }
.home .framework-list ol li { display: block; }
.home .wp-block-pb-accordion-item ol li:before { background: #464340; color: #ffd000 }
.home .wp-block-group.round-corners-border { border: 2px solid black; border-radius: 10px; padding-left: 30px; padding-right: 30px; margin-bottom: 50px; }
.home .wp-block-group.patterned-bg { 
    background-color: #f3f3f3;
    background-size: 3px 3px;
    background-image: repeating-linear-gradient(45deg, #00000221 0, #0000001a 1px, #f3f3f3 0, #f3f3f3 50%);
    border-radius: 10px;
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
    padding-top: 5px; 
    margin-bottom: 30px;
}

.home .c-accordion__title:after { font-weight: 800; font-size: 140%; }
.home .wp-block-pb-accordion-item li p { margin-bottom: 0px;}

.home .user-links-container--logged-out { display: flex; justify-content: space-between; }
.home .user-links-container--logged-out .button { 
    flex-basis: 32%;

}

/* shared button styles */
.home .user-links-container--logged-out .button, .home .user-links-container--logged-in .button {
    font-size: 24px;
    padding: 20px 20px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.home .user-links-container--logged-in {
    display: -ms-grid;
    display: grid;
    margin: auto auto;
    /* max-width: 700px; */
    -ms-grid-columns: 1fr 15px 1fr 15px 1fr;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 15px;
    -webkit-column-gap: 15px;
       -moz-column-gap: 15px;
            column-gap: 15px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.grid-column-1-3 {
    grid-column: 1/3;
}

.grid-column-1-4 {
    grid-column: 1/4;
}

.ms-grid-current-opportunities {
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
}

.ms-grid-my-bookings {
    -ms-grid-column: 1;
    -ms-grid-column-span:5;
    -ms-grid-row: 3;
}

.ms-grid-past-events {
    -ms-grid-column: 1;
    -ms-grid-row: 5;
}

.ms-grid-change-password {
    -ms-grid-column: 3;
    -ms-grid-row: 5;
}

.ms-grid-logout {
    -ms-grid-column: 5;
    -ms-grid-row: 5;
}

@media only screen and (min-width:768px) {
    .home p, .home li { font-size: 18px; }
    .home .wp-block-pb-accordion-item p, .home .wp-block-pb-accordion-item li { font-size: 22px; }
}

@media only screen and (max-width:768px) {
    .home .user-links-container--logged-out { display: initial; }
    .home .user-links-container--logged-out .button { font-size: 26px; padding: 20px; }

    .home .user-links-container--logged-in { width: 80%; grid-template-columns: 1fr; justify-items: center; }
    .grid-column-1-3, .grid-column-1-4 { grid-column: initial; }
    .home .user-links-container--logged-in .button { font-size: 26px; width: 100%; height: auto; }
}

@media only screen and (max-width:480px) {
    .home .user-links-container--logged-out .button { font-size: 22px; height: auto; }
    .home .user-links-container--logged-in .button { font-size: 20px; }
}

/* Front page test styles */
.page-id-6680 h2, .page-id-6680 h3 { margin-top: 30px; }
.page-id-6680 ol { counter-reset: framework; }
.page-id-6680 ol li { counter-increment: framework; display: flex; align-items: center; margin-bottom: 20px; }
.page-id-6680 ol li:before {
    content: counter(framework);
    flex-shrink: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #e31e27;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    font-weight: 800;
    font-size: 22px;
    margin-right: 10px;
}

@media only screen and (max-width: 480px) {
    .page-id-6680 ol li:before { width: 30px; height: 30px; font-size: 18px; }
}

.page-id-6680 .framework-list ol > li { counter-increment: framework; position: relative; display: flex; align-items: center; margin-bottom: 20px; padding-left: 40px; }
.page-id-6680 .framework-list ol > li:before {
    content: counter(framework);
    position: absolute;
    flex-shrink: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #e31e27;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: 20px;
    font-weight: 800;
    font-size: 22px;
    left: -15px;
    top: -7px;
}
.page-id-6680 .framework-list ol h3 { color: black; }
.page-id-6680 .framework-list ol li { display: block; }
.page-id-6680 .wp-block-pb-accordion-item ol li:before { background: #464340; color: #ffd000 }
.page-id-6680 .wp-block-group.round-corners-border { border: 2px solid black; border-radius: 10px; padding-left: 30px; padding-right: 30px; margin-bottom: 50px; }
.page-id-6680 .wp-block-group.patterned-bg { 
    background-color: #f3f3f3;
    background-size: 3px 3px;
    background-image: repeating-linear-gradient(45deg, #00000221 0, #0000001a 1px, #f3f3f3 0, #f3f3f3 50%);
    border-radius: 10px;
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 30px;
    padding-top: 5px; 
    margin-bottom: 30px;
}

.page-id-6680 .c-accordion__title:after { font-weight: 800; font-size: 140%; }
.page-id-6680 .wp-block-pb-accordion-item li p { margin-bottom: 0px;}

.page-id-6680 .user-links-container--logged-out { display: flex; justify-content: space-between; }
.page-id-6680 .user-links-container--logged-out .button { 
    flex-basis: 32%;

}

/* shared button styles */
.page-id-6680 .user-links-container--logged-out .button, .page-id-6680 .user-links-container--logged-in .button {
    font-size: 24px;
    padding: 20px 20px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.page-id-6680 .user-links-container--logged-in {
    display: -ms-grid;
    display: grid;
    margin: auto auto;
    /* max-width: 700px; */
    -ms-grid-columns: 1fr 15px 1fr 15px 1fr;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 15px;
    -webkit-column-gap: 15px;
       -moz-column-gap: 15px;
            column-gap: 15px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.grid-column-1-3 {
    grid-column: 1/3;
}

.grid-column-1-4 {
    grid-column: 1/4;
}

.ms-grid-current-opportunities {
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
}

.ms-grid-my-bookings {
    -ms-grid-column: 1;
    -ms-grid-column-span:5;
    -ms-grid-row: 3;
}

.ms-grid-past-events {
    -ms-grid-column: 1;
    -ms-grid-row: 5;
}

.ms-grid-change-password {
    -ms-grid-column: 3;
    -ms-grid-row: 5;
}

.ms-grid-logout {
    -ms-grid-column: 5;
    -ms-grid-row: 5;
}

@media only screen and (min-width:768px) {
    .page-id-6680 p, .page-id-6680 li { font-size: 18px; }
    .page-id-6680 .wp-block-pb-accordion-item p, .page-id-6680 .wp-block-pb-accordion-item li { font-size: 22px; }
}

@media only screen and (max-width:768px) {
    .page-id-6680 .user-links-container--logged-out { display: initial; }
    .page-id-6680 .user-links-container--logged-out .button { font-size: 26px; padding: 20px; }

    .page-id-6680 .user-links-container--logged-in { width: 80%; grid-template-columns: 1fr; justify-items: center; }
    .grid-column-1-3, .grid-column-1-4 { grid-column: initial; }
    .page-id-6680 .user-links-container--logged-in .button { font-size: 26px; width: 100%; height: auto; }
}

@media only screen and (max-width:480px) {
    .page-id-6680 .user-links-container--logged-out .button { font-size: 22px; height: auto; }
    .page-id-6680 .user-links-container--logged-in .button { font-size: 20px; }
}

/* Resources page */
.page-id-6999 .resource-column {
    width: 100%; display: flex;
    flex-direction: column;
    align-items: center;
    background: #fff;
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 10px;
}
.page-id-6999 .resource-column h2 { font-size: 35px; }

.page-id-6999 .resources-list-item .wp-block-group__inner-container { 
    width: 100%;
    background: #fff;
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 10px;
    display: grid;
    grid-template-columns: 25% 1fr;
    gap: 10px;
}
.page-id-6999 .resources-list-item .wp-block-group__inner-container > * { padding: 10px; }
.page-id-6999 .wp-block-image.resources-logo {
    grid-row: 1 / 10;
}
@media only screen and (min-width:768px) {
    .page-id-6999 .resources-list-item .wp-block-group__inner-container {
        flex-direction: row;
        align-items: center;
    }

    .page-id-6999 .resources-list-item .wp-block-group__inner-container > * {
        padding: 10px;
    }

    .page-id-6999 .resources-list-item .wp-block-group__inner-container h2 { font-size: 30px; }
}
@media only screen and (max-width: 600px) {
    .page-id-6999 .resources-list-item .wp-block-group__inner-container {
        grid-template-columns: 1fr;
    }
}

/* Local Volunteer Resources */
.resources-link { margin: 40px; }
.resources-link a { color: white; font-size: 24px; background-color: #009bc9; border-radius: 10px; padding: 30px; margin: 20px; }
.resources-link a:hover { background-color: #00bff8; }

/* Community Member Registration - Single event page */
/* Single event page */
.cm-registration-box { padding: 20px; background: #f3f3f3; }
.cm-registration-box__text { }
.cm-registration-box__text > p { margin-bottom: 0px; }

/* Community Member Registration - Form */
#nf-form-7-cont input[type="password"] { height: 40px !important; padding: 3px 7px; font-size: 16px; }
