/* jwbs (color) class, and default styling */
@import url("../includes/assets/default.css");
@import url("jwbs.css");
@font-face { font-family: 'GreatVibes'; src: url('/wp-content/themes/jw-bootstrap/fonts/fonts/GreatVibes-Regular.ttf') format('truetype'); }

html, body { overflow-x: hidden; }
body { font-family: 'Calibri', sans-serif; font-weight: 300; }
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { font-weight: 600; }
h1, .h1, h2, .h2, h3, .h3, h4,.h4, h5, .h5, h6, .h6, a, .text-green { color: #007db3; }
.btn { border-radius: 0; white-space: initial; }
.btn.focus, .btn:focus { box-shadow: 0 0 5px .1rem rgba(74, 156, 45, .25); }

.text-lt-green { color: #4a9c2d; } .bg-lt-green { color: #ffffff; background-color: #4a9c2d; } .border-lt-green { border-color: #4a9c2d !important; } .full-width.bg-lt-green:before { border-left: 99rem solid #4a9c2d; box-shadow: 99rem 0 0 #4a9c2d; }
.text-pale-green { color: #c8e1c0; } .bg-pale-green { color: #ffffff; background-color: #c8e1c0; } .border-pale-green { border-color: #c8e1c0 !important; } .full-width.bg-pale-green:before { border-left: 99rem solid #c8e1c0; box-shadow: 99rem 0 0 #c8e1c0; }
.text-gray     { color: #ebebeb; } .bg-gray     { color: #4d4d4d; background-color: #ebebeb; } .border-gray     { border-color: #ebebeb !important; } .full-width.bg-gray:before     { border-left: 99rem solid #ebebeb; box-shadow: 99rem 0 0 #ebebeb; }
.text-white    { color: #ffffff; } .bg-white    { color: #4d4d4d; background-color: #ffffff; } .border-white    { border-color: #ffffff !important; } .full-width.bg-white:before    { border-left: 99rem solid #ffffff; box-shadow: 99rem 0 0 #ffffff; }

.btn-blue     { color: #fff !important; background-color: #191d4e; border-color: #191d4e; } .btn-outline-blue    { color: #191d4e !important; background-color: transparent; background-image: none; border-color: #191d4e; } .btn-outline-blue:hover    { color: #fff !important; background-color: #191d4e; background-image: none; border-color: #191d4e; }
.btn-green    { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #ffffff !important; background-color: #0c9444; border-color: #0c9444; } .btn-green:hover    { text-decoration: underline; } .btn-outline-green    { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #0c9444 !important; background-color: transparent; background-image: none; border-color: #0c9444; } .btn-outline-green:hover    { color: #fff !important; background-color: #0c9444; background-image: none; border-color: #0c9444; }
.btn-lt-green { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #ffffff !important; background-color: #4a9c2d; border-color: #4a9c2d; } .btn-lt-green:hover { text-decoration: underline; } .btn-outline-lt-green { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #4a9c2d !important; background-color: transparent; background-image: none; border-color: #4a9c2d; } .btn-outline-lt-green:hover { color: #fff !important; background-color: #4a9c2d; background-image: none; border-color: #4a9c2d; }
.btn-pale-green { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #ffffff !important; background-color: #c8e1c0; border-color: #c8e1c0; } .btn-pale-green:hover { text-decoration: underline; } .btn-outline-pale-green { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #c8e1c0 !important; background-color: transparent; background-image: none; border-color: #c8e1c0; } .btn-outline-pale-green:hover { color: #fff !important; background-color: #c8e1c0; background-image: none; border-color: #c8e1c0; }
.btn-white    { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #ffffff !important; background-color: #ffffff; border-color: #ffffff; } .btn-white:hover    { text-decoration: underline; } .btn-outline-white    { padding: calc(0.667em + 2px) calc(1.333em + 2px); color: #ffffff !important; background-color: transparent; background-image: none; border-color: #ffffff; } .btn-outline-white:hover    { color: #4a9c2d !important; background-color: #fff; background-image: none; border-color: #4a9c2d; }

body > header > .container > .row { align-items: center; }
#header-block-2 .wp-block-button { display: inline-block; font-size:1.125rem; margin-left: 1.25rem; padding: 0.5rem 1rem; color: #fff; background-color: #4a9c2d; border: 1px solid #4a9c2d; }
#header-block-2 .wp-block-button:hover { background-color: #fff; color: #4a9c2d; }

.above-header { padding: 10px 0; background-color: #fafafa; }

#signature-preview { margin-bottom: 11px; padding: 20px 0 0 20px; min-height: 60px; font-family: "GreatVibes", cursive; font-size: 48px; color: #000; }
.input-group-append.input-group-prepend .input-group-text{ margin: 0 -1px; }
form { margin-bottom: 3rem; padding: 2rem; box-shadow: 0 4px 30px #1d8ecd3e; }
.form-control, .wpcf7-form-control:not(.btn):not(.wpcf7-checkbox) { background-color: #f4f4f4; }
.wpcf7-checkbox { background-color: transparent; }
.wpcf7-list-item { margin: 0 1em 0 0; }
.wpcf7-list-item.first.last { margin: 0; }
.input-group .wpcf7-form-control-wrap { flex: 1 1 auto; }
.input-group-text { background-color: transparent; border: 0 none; }

body > footer { color: #fff; background-color: #007db3; }
body > footer a, body > footer a:hover { color: #fff; }
body > footer p { font-size: 0.8rem; }
#widget-footer > div { display: flex; align-items: center; }
#widget-footer > div:last-child { justify-content: end; }
#widget-footer #block-10 { text-align: right; }
#widget-footer #block-10 img { width: 3.25rem; }
#inner-footer .menu { display: flex; flex-wrap: wrap; margin: 0; padding: 0; width: 100%; list-style: none; }
#inner-footer .menu > li { flex-basis: 100%; margin: 0; padding: 0 15px 0 0; padding: 0; font-size: 0.875rem; text-align: center; text-transform: uppercase; }
#inner-footer .menu .sub-menu { margin: 0 0 1.25rem; padding: 0; list-style: none; }
#inner-footer .menu .sub-menu > li { margin-top: initial; text-transform: none; }
body > footer hr { border-top-color: #fff; }

/* select all multi */
.select-all-btn { background: none; border: none; padding: 0; margin-left: .5rem; color: #0d6efd; text-decoration: underline; cursor: pointer; font-size: .875rem; }
.select-all-btn:hover { text-decoration: none; }

/* cf7 fixes */
span.wpcf7-list-item {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding-left: 1.5em;
  margin-bottom: -.5rem;
}

span.wpcf7-list-item input[type="checkbox"] {
  margin: 0;
  flex-shrink: 0;
}   

/* Make CF7's paragraph wrapper the input-group row. */
.wpcf7 .input-group > p {
  display: flex;
  align-items: stretch;
  width: 100%;
  margin: 0;
}

/* Allow the wrapped input to fill the remaining space. */
.wpcf7 .input-group .wpcf7-form-control-wrap {
  flex: 1 1 0%;
  min-width: 0;
}

.wpcf7 .input-group .form-control {
  position: relative;
  width: 100%;
  min-width: 0;
  margin: 0;
}

/* Keep the prefix/suffix compact and centered. */
.wpcf7 .input-group .input-group-text {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  white-space: nowrap;
}

/* Prefix: square off the adjoining corners. */
.wpcf7 .input-group .input-group-text:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.wpcf7 .input-group .input-group-text + .wpcf7-form-control-wrap {
  margin-left: -1px;
}

.wpcf7 .input-group .input-group-text + .wpcf7-form-control-wrap .form-control {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* Suffix: square off the adjoining corners. */
.wpcf7 .input-group .wpcf7-form-control-wrap:not(:last-child) .form-control {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.wpcf7 .input-group .wpcf7-form-control-wrap + .input-group-text {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* Keep the focused input's border and shadow above the addon. */
.wpcf7 .input-group .wpcf7-form-control-wrap:focus-within {
  position: relative;
  z-index: 3;
}

/* media queries */
/* Extra Small Devices, Phones */
@media only screen and (min-width : 576px) {
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
	.navbar-brand img { max-width: 12.5rem; }
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	#inner-footer .menu { flex-wrap: nowrap; }
	#inner-footer .menu .sub-menu { margin: 0; }
	#inner-footer .menu .sub-menu > li { margin-top: 1.25rem; }
}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {
}

/* Extra Large Devices, Extra Wide Screens */
@media only screen and (min-width : 1201px) and (max-width: 1600px) {
}
@media only screen and (min-width: 1600px) {
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
}

@media only screen and (min-width : 1601px) {
	.container { max-width: 1540px; }
}