/*!
Theme Name: NSMC Donate
Theme URI: http://underscores.me/
Author: grant.codes
Author URI: https://grant.codes
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: spaulding
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Spaulding is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  clear: both;
  display: block;
  float: left;
  width: 100%;
}

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

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

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

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

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

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

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

.main-navigation a {
  display: block;
  text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

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

.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%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #f1f1f1;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
  text-overflow: ellipsis;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

.entry-title {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-item:before,
.blocks-gallery-item:before {
  display: none;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
## Hero fixes
--------------------------------------------------------------*/

@media (min-width: 1024px) {
  .image-banner__content {
    margin-top: 0;
    position: absolute;
    top: 0;
    left: 0;
    padding: 30px;
  }

  .image-banner__image + .image-banner__content {
    margin-top: -5%;
  }
}

/*--------------------------------------------------------------
## Header fixes - mostly just not hiding stuff on small screens
--------------------------------------------------------------*/

body.admin-bar {
  position: static;
}

.site-header__drawer {
  overflow: visible;
  position: static;
  padding: 0 0 0.5rem;
}

.site-header__top {
  padding: 20px 0;
  -webkit-box-ordinal-group: inherit;
  -ms-flex-order: inherit;
  order: inherit;
  position: static;
}

.site-header__drawer .site-logo {
  display: block !important;
}

@media (max-width: 1024px) {
  .site-header__top {
    padding: 20px 20px;
  }
  .site-header__drawer {
    padding: 0;
  }
  .site-header__brand .container {
    padding-left: 0;
  }
}

.main-nav__list {
  justify-content: center;
}

.main-nav__item {
  width: auto;
}

.main-nav__link {
  padding: 0.4rem 0.7rem;
  margin: 0;
  font-size: 0.9rem;
  -webkit-box-shadow: 0 -0.2em 0 rgba(253, 244, 133, 0) inset;
  box-shadow: inset 0 -0.2em 0 rgba(253, 244, 133, 0);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition: 0.15s ease;
  -o-transition: 0.15s ease;
  transition: 0.15s ease;
  font-weight: 600;
  border-bottom: none;
}

@media (min-width: 1224px) {
  .main-nav__link {
    font-size: 1.125rem;
    padding: 0.8125rem 1.375rem;
  }
}

/*--------------------------------------------------------------
## Footer fixes
--------------------------------------------------------------*/

/* Make logo a bit smaller */
.site-footer__section--logo > .custom-logo-link {
  width: 185px;
}

/* Don't indent sub menus  */
.site-footer__nav-list > .sub-menu {
  padding: 0;
  margin: 0;
}

/* Spacing above footer */
.entry-footer {
  margin-bottom: 30px;
}

/*--------------------------------------------------------------
## Sidebar
--------------------------------------------------------------*/

.content-sidebar {
  padding-top: 3rem !important;
}

.sidebar-widget {
  display: block;
  font-weight: normal;
  padding: 0.9375rem;
  margin-bottom: 0.9375rem;
}

@media (min-width: 1224px) {
  .sidebar-widget {
    border-bottom: 1px solid rgba(3, 74, 109, 0.3);
  }
}

.sidebar-widget__title {
  line-height: 1.1;
  margin: -0.9375rem -0.9375rem 0.9375rem -0.9375rem;
  display: block;
  padding: 0.9375rem;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  color: #008aaf;
  background: #bbe8f7;
}

.sidebar-widget ul {
  margin: 0;
}

.sidebar-widget ul > li {
  margin-bottom: 0;
}

.sidebar-widget a {
  font-weight: normal;
}

/*--------------------------------------------------------------
## Blocks - styles for some default Gutenberg blocks
--------------------------------------------------------------*/

[class^="wp-block"] {
  margin-bottom: 1rem;
}

.wp-block-separator,
hr {
  display: block;
  box-sizing: border-box;
  height: 1px;
  background-color: rgba(3, 74, 109, 0.3);
  border: none;
  max-width: 10rem;
  margin-bottom: 2rem;
  margin-top: 2rem;
}

.wp-block-separator.is-style-wide,
hr {
  max-width: 100%;
}

.wp-block-separator.is-style-dots {
  background: none;
  height: auto;
  max-width: 100%;
}
.wp-block-separator.is-style-dots:before {
  color: rgba(3, 74, 109, 0.3);
  content: "\00b7 \00b7 \00b7";
  font-family: serif;
  letter-spacing: 2rem;
  padding-left: 2rem;
  font-size: 2rem;
}

/*--------------------------------------------------------------
## Gravity Forms
--------------------------------------------------------------*/

button,
input[type="button"],
input[type="submit"],
.wp-block-button .wp-block-button__link {
  background: #008aaf;
  color: #fff;
  display: inline-block;
  min-width: 220px;
  line-height: 1.125rem;
  font-size: 1rem;
  font-weight: 400;
  text-decoration: none;
  text-align: center;
  border: 1px solid #008aaf;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
  border-radius: 20px;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus {
  text-decoration: none;
  color: #fff;
  background: #007696;
}

/* Large buttons */
.gform_wrapper button[type="submit"],
.gform_wrapper input[type="submit"] {
  padding: 6px 12px;
  font-size: 1.125rem;
}

body .gform_wrapper .gsection {
  border-color: rgba(3, 74, 109, 0.3);
}

html body .gform_wrapper ul li.gfield {
  display: block;
  margin: 0;
  margin-bottom: 0.9375rem;
}
@media (min-width: 1224px) {
  html body .gform_wrapper ul li.gfield {
    margin-bottom: 1.25rem;
  }
}

.gform_wrapper ul li.gfield:before {
  background: none;
}

body .gform_wrapper legend.gfield_label,
body .gform_wrapper label.gfield_label,
body .gform_wrapper .gfield_checkbox li label,
body .gform_wrapper .gfield_radio li label,
body .ginput_container label,
body .gform_wrapper ul.gfield_radio li input[type="radio"]:checked + label,
body .gform_wrapper ul.gfield_checkbox li input[type="checkbox"]:checked + label,
body .gchoice_select_all {
  font-weight: 400;
  font-size: 1rem;
}

.gfield_label:empty {
  display: none !important;
}

body .gform_wrapper .gfield_required {
  color: #008aaf;
}

html body .gform_wrapper ul li.field_description_below label:first-child + div.ginput_container_radio,
html body .gform_wrapper ul li.field_description_below label:first-child + div.ginput_container_checkbox {
  margin-top: 0;
}

body .gform_wrapper input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
body .gform_wrapper.gf_browser_chrome select,
body .gform_wrapper .ginput_complex .ginput_cardinfo_left span.ginput_card_expiration_container  select,
body .gform_wrapper.gf_browser_chrome .ginput_complex select,
body .gform_wrapper.gf_browser_chrome .ginput_complex .ginput_right select {
  padding: 0.9375rem 0.625rem;
  margin-top: 0;
  margin-bottom: 0;
}

body .gform_wrapper.gf_browser_chrome .ginput_complex select,
body .gform_wrapper.gf_browser_chrome .ginput_complex .ginput_right select {
  margin-top: 0;
}

body .gform_wrapper .ginput_complex .ginput_left,
body .gform_wrapper .ginput_complex .ginput_right,
body .gform_wrapper .ginput_complex .ginput_full {
  min-height: 0;
  margin-bottom: 0.5rem;
}

body .gform_wrapper ul.gfield_checkbox li input[type="checkbox"],
body .gform_wrapper ul.gfield_radio li input[type="radio"] {
  position: relative;
  display: inline-block;
  overflow: hidden;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: middle;
  width: 30px !important;
  height: 30px !important;
  background: none;
  margin: 0 4px 0 0 !important;
  border: 1px solid #008aaf;
  cursor: pointer;
  outline: none;
}

body .gform_wrapper ul.gfield_radio li input[type="radio"] {
  border-radius: 15px;
}

body .gform_wrapper ul.gfield_checkbox li input[type="checkbox"]:checked,
body .gform_wrapper ul.gfield_radio li input[type="radio"]:checked {
  background-color: #008aaf;
}
body .gform_wrapper ul.gfield_checkbox li input[type="checkbox"]:checked:before {
  content: "";
  display: block;
  width: 20px;
  height: 12px;
  margin: 5px 0 0 5px;
  border-bottom: 4px solid #fff;
  border-left: 4px solid #fff;
  -webkit-transform: rotate(-50deg);
  -ms-transform: rotate(-50deg);
  transform: rotate(-50deg);
}
body .gform_wrapper ul.gfield_radio li input[type="radio"]:checked:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  margin: 6px 0 0 6px;
  border-radius: 50%;
  background: #fff;
}

/* Paragraph tags inside the form */
.gform_wrapper p {
  font-size: 1rem;
  line-height: 1.5;
}

/* Underneath labels */
body .gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label,
body .gform_wrapper .field_sublabel_below div[class*="gfield_time_"].ginput_container label {
  font-size: 0.8em;
  line-height: 1.1;
  margin-top: 2px;
}

body .gform_wrapper .ginput_complex span.ginput_left.address_country {
  margin-right: -8px;
  margin-top: 0;
}
body .gform_wrapper span.address_country .jq-selectbox__select,
[id*=state-select_shim] {
  max-width: 425px;
}


body .gform_wrapper .ginput_complex .ginput_cardinfo_right span.ginput_card_security_code_icon {
  left: 0;
  top: 0;
  margin-top: 2px;
}
body .gform_wrapper .ginput_complex .ginput_cardinfo_right span.ginput_card_security_code_icon + label {
  display: inline-block;
}

/* Card fields */
body .gform_wrapper .ginput_complex span.ginput_cardextras {
  overflow: visible;
}

.ginput_card_field .jq-selectbox__select {
  min-width: auto;
}
.title .jq-selectbox__select {
  width: 200px;
}


/* Hide card name because it gets populated on backend from first and last name */
[id$=_11_5_container] {
  display: none;
}



@media only screen and (min-width: 641px) {
  .gform_wrapper .ginput_complex .jqselect.ginput_card_expiration.ginput_card_expiration_month {
    margin-right: 7px;
  }
  .gform_wrapper .ginput_complex .jqselect.ginput_card_expiration.ginput_card_expiration_month,
  .gform_wrapper .ginput_complex .jqselect.ginput_card_expiration.ginput_card_expiration_year {
    width: 47% !important;
    display: -moz-inline-stack;
    display: inline-block;
  }
  .gform_wrapper ul.gform_fields .gfield.left {
    width: 50%;
    padding-right: 32px;
    padding-top: 25px;
  }
}

.jq-selectbox__dropdown {
  top: 100% !important;
}

/* Hack radios to look like buttons */
.gfield.donation_buttons ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: stretch;
  align-items: center;
  margin-left: -4px !important;
  margin-right: -4px !important;
}
.gfield.donation_buttons ul > li {
  flex-grow: 1;
  margin: 4px !important;
}
.gfield.donation_buttons input[type="radio"] {
  /* Hide the radio inputs visually  */
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.gfield.donation_buttons input[type="radio"] + label {
  /* Make labels look like buttons */
  display: block;
  max-width: 100%;
  margin: 0;
  color: #008aaf;
  padding: 0.9375rem 1.5625rem;
  line-height: 1.125rem;
  font-size: 1rem;
  font-weight: 600 !important;
  text-decoration: none;
  text-align: center;
  border: 1px solid #008aaf;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
.gfield.donation_buttons input[type="radio"] + label:hover,
.gfield.donation_buttons input[type="radio"]:focus + label {
  background-color: #e6e6e6;
}
.gfield.donation_buttons input[type="radio"]:checked + label {
  color: #fff;
  background: #008aaf;
}

/* Error stuff */
body .gform_wrapper li.gfield.gfield_error,
body .gform_wrapper .gfield_error .gfield_label,
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning,
body .gform_wrapper li.gfield_error input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]),
body .gform_wrapper li.gfield_error select,
body .gform_wrapper li.gfield_error textarea,
body .gform_wrapper .validation_message,
body .gform_wrapper div.validation_error {
  background: none;
  border-color: #b10415;
}

/* Results */
.gform_confirmation_wrapper {
  margin: 0.9375rem auto;
  padding: 3.125rem 2rem;
  text-align: center;
  background-color: #a7efd7;
}
@media (min-width: 768px) {
  .gform_confirmation_wrapper {
    padding: 3.75rem;
  }
}
@media (min-width: 1224px) {
  .gform_confirmation_wrapper {
    padding: 5rem;
  }
}

.gform_confirmation_message {
  font-size: 1.125rem;
  line-height: 1.875rem;
}
@media (min-width: 768px) {
  .gform_confirmation_message {
    font-size: 1.25rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 1224px) {
  .gform_confirmation_message {
    font-size: 1.25rem;
    line-height: 2.25rem;
  }
}
