@charset "UTF-8";
/* purgecss start ignore */
.footer p{
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.custom-block{
  margin-left: auto;
  margin-right: auto;
  max-width: 80rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

.menu-link{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.content-block h1 {
  font-size: 36px;
  line-height: 45px;
  margin-bottom: 20px;
}
.content-block h2 {
  font-size: 28px;
  line-height: 35px;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.content-block h3 {
  font-size: 22px;
  line-height: 30px;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.content-block h4 {
  font-size: 18px;
  line-height: 25px;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.content-block h5 {
  font-size: 16px;
  line-height: 20px;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.content-block h6 {
  font-size: 14px;
  line-height: 20px;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.content-block img{
  padding-top: 0.5rem;
}

/** ----------------------------------------------------------
 *
 * Contains the generic theme typography styles
 *
 *    Include your notes or table of contents here
 *
 *    Include color hex's or values of your grid
 *      #333333             - body
 *      #B80000             - links, headings
 *      #D80000             - links on hover
 *      5px Vertical grid   - based on multiples of 5px, eg 10px, 15px, 20px, 25px...
 *
 *    @author Your Name <email@gmail.com>
 *
 * ------------------------------------------------------- */
/* TEMPLATE CUSTOM FONTS */
/* Generated by Font Squirrel (http://www.fontsquirrel.com) on February 20, 2012 06:04:25 AM America/New_York */
/* add your own custom fonts here */
/* BASE TYPOGRPHY */
/* These are the default styles for the Simple theme */
body {
  font-size: 14px; /* This overrides the browsers default font size */
  line-height: 20px; /* If you change the font-size make sure you change the line-height value as well - the usual ratio is around 1.5 (font-size x 1.5 = line-height) */
  margin-bottom: 20px;
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}
@media (prefers-color-scheme: dark){
  body{
    --tw-text-opacity: 1;
    color: rgb(229 231 235 / var(--tw-text-opacity));
  }
}
body {
  font-family: Roboto, Helvetica, sans-serif;
}

body a {
  text-decoration: none;
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}

@media (prefers-color-scheme: dark){
  body a{
    --tw-text-opacity: 1;
    color: rgb(229 231 235 / var(--tw-text-opacity));
  }
} /* this removes the underline from all links */
body a:link {
  -webkit-tap-highlight-color: #b80000;
} /* this sets the highlight color when links are tapped on Safari (browser) on iPhone */
/* HEADERS */
.typography h1,
.typography h2,
.typography h3,
.typography h4,
.typography h5,
.typography h6 {
  font-family: "Roboto Slab", Georgia, "Times New Roman", Times, serif; /* This references one of the custom @font-face fonts - the other fonts that are referenced are fallbacks for browsers that don't support @fontface */
  font-weight: normal;
  margin-bottom: 10px;
}

.typography h1 {
  margin: 0 0 25px 0;
  padding-bottom: 5px;
}

.typography h3 {
  line-height: 30px;
  margin-bottom: 10px;
}

.typography h4 {
  line-height: 25px;
  margin-bottom: 5px;
}

.typography h5 {
  line-height: 20px;
  margin-bottom: 5px;
}

.typography h6 {
  line-height: 20px;
  font-weight: bold;
  margin-bottom: 5px;
}

.underline-half {
  background-image: linear-gradient(to right, orange -32%, transparent 50%);
  background-size: 100% 1px;
  background-position: 0 100%;
  background-repeat: repeat-x;
}

h2, h3, h4, h5, h6{
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}

@media (prefers-color-scheme: dark){
  h2, h3, h4, h5, h6{
    --tw-text-opacity: 1;
    color: rgb(229 231 235 / var(--tw-text-opacity));
  }
}

p{
  line-height: 1.5rem;
}

.typography img {
  height: auto; /* resets the image height so that it maintains its aspect ratio when width is set */
  background: transparent url(../images/ajax-loader.gif) no-repeat center center;
}

.typography img.left {
  float: left;
  max-width: 100%;
  margin: 5px 20px 10px 0;
}
@media (min-width: 768px) {
  .typography img.left {
    max-width: 50%;
  }
}

.typography img.right {
  float: right;
  max-width: 100%; /* Responsive width */
  margin: 5px 0 10px 20px;
}
@media (min-width: 768px) {
  .typography img.right {
    max-width: 50%;
  }
}

.typography img.leftAlone {
  float: left;
  margin-right: 100%;
  margin-bottom: 10px;
  clear: both;
  width: 100%;
}

.typography img.center {
  float: none;
  margin-left: auto;
  margin-right: auto;
  display: block;
  margin-bottom: 10px;
  clear: both;
}

.typography .captionImage {
  width: 100%;
  margin-top: 5px;
}

.typography .captionImage img {
  margin: 0;
}

.typography .captionImage.left {
  float: left;
  margin: 5px 30px 20px 0px;
}

.typography .captionImage.right {
  float: right;
  margin: 5px 0 20px 30px;
}

.typography .captionImage.left[style],
.typography .captionImage.right[style] {
  max-width: 100%; /* Overides core width to make responsive */
}
@scree md {
  .typography .captionImage.left[style],
  .typography .captionImage.right[style] {
    max-width: 50%;
  }
}

.typography .captionImage.left img,
.typography .captionImage.right img {
  float: none;
  max-width: none;
  width: 100%;
}

.typography .captionImage.left img {
  margin-right: -10px;
}

.typography .captionImage.right img {
  margin-left: -10px;
}

.typography .captionImage.right p {
  text-align: left;
  margin-left: -10px;
}

.typography .captionImage.leftAlone {
  float: none;
  margin: 0 20px 20px 0px;
}

.typography .captionImage.center {
  margin: 0 auto 20px;
}

.typography .captionImage p {
  clear: both;
  margin: 5px 0;
  font-style: italic;
  color: #888;
}

.py-space{
  padding-top: 2rem;
  padding-bottom: 2rem;
}

@media (min-width: 1024px){
  .py-space{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.space-y-small > :not([hidden]) ~ :not([hidden]){
  margin-top: 1.25rem;
}

@media (min-width: 1024px){
  .space-y-small > :not([hidden]) ~ :not([hidden]){
    margin-top: 1.5rem;
  }
}

.space-x-small > :not([hidden]) ~ :not([hidden]){
  margin-left: 1.25rem;
}

@media (min-width: 1024px){
  .space-x-small > :not([hidden]) ~ :not([hidden]){
    margin-left: 1.5rem;
  }
}

.space-x-tiny > :not([hidden]) ~ :not([hidden]){
  margin-left: 0.25rem;
}

@media (min-width: 1024px){
  .space-x-tiny > :not([hidden]) ~ :not([hidden]){
    margin-left: 0.5rem;
  }
}

.space-y-medium > :not([hidden]) ~ :not([hidden]){
  margin-top: 1.5rem;
}

@media (min-width: 1024px){
  .space-y-medium > :not([hidden]) ~ :not([hidden]){
    margin-top: 2.5rem;
  }
}

.space-y-large > :not([hidden]) ~ :not([hidden]){
  margin-top: 3rem;
}

@media (min-width: 1024px){
  .space-y-large > :not([hidden]) ~ :not([hidden]){
    margin-top: 5rem;
  }
}

/** ----------------------------------------------------------
 *
 * This stylesheet includes both generic form styles and
 *    additional form styles for the User Defined Form Module.
 *
 ** ------------------------------------------------------- */
/* GENERIC FORMS
----------------------------------------------- */
form {
  max-width: 500px;
  width: 50%;
}

div.field {
  margin: 10px 0 15px;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

form label {
  margin-bottom: 5px;
}

form label.left {
  display: block;
  font-weight: bold;
}

form label.right {
  font-size: 12px;
  color: #888;
}

form input.text,
form textarea,
form .textajaxuniquetext,
form select {
  width: 100%;
  padding: 6px 5px;
  font-size: 15px;
  background-color: #fff;
  border: 1px solid #dad9d9;
  color: #000;
}

form input.text:focus,
form textarea:focus,
form .textajaxuniquetext:focus,
form select:focus {
  outline: none;
}

form input[disabled], form textarea[disabled] {
  background-color: #f7f7f7;
  border: 1px solid #dad9d9;
}

textarea {
  resize: vertical; /* forces text area to be resized vertically only */
}

/* Radio and Checkbox */
.field .checkbox:not(.field),
.field .radio:not(.field) {
  float: left;
  width: 13px;
  height: 13px;
  margin-right: 6px;
  margin-top: 5px;
  padding: 0;
}

.checkbox label.right,
.radio label.right {
  float: left;
}

/* Messages */
form .message {
  background-color: #4f4e48;
  padding: 5px 10px;
  border: 1px solid #e8c805;
  border-radius: 3px;
}

form .good {
  background-color: #ecf9d0;
  border-color: #8fbe00;
}

form .bad,
form .required,
form .validation,
form .error {
  background-color: #f9d0d0;
  border-color: #cf0000;
  color: #b80000;
}

/* ACTIONS */
.Actions {
  margin-bottom: 20px;
}

a.btn, button, input[type=submit], input[type=reset], .Actions .action {
  background: transparent;
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}

@media (prefers-color-scheme: dark){
  a.btn, button, input[type=submit], input[type=reset], .Actions .action{
    --tw-text-opacity: 1;
    color: rgb(229 231 235 / var(--tw-text-opacity));
  }
}

a.btn, button, input[type=submit], input[type=reset], .Actions .action {
  display: inline-block;
  border-radius: 4px;
  padding: 6px 15px;
  margin-top: 10px;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  border: 1px solid #f8ae67;
  font-size: 13px;
  margin-right: 10px;
  float: left;
}

a.btn:hover, button, input[type=submit]:hover, .Actions .action:hover {
  background: #f8ae67;
  color: #fff;
}

a.btn {
  line-height: 18px;
  margin-bottom: 10px;
}

a.btn:after { /* creates arrow in button */
  content: "→";
  padding-left: 10px;
}

.ie7 input.action {
  width: 0; /* IE table-cell margin fix */
  overflow: visible;
}

input.action[class] { /* IE ignores [class] */
  width: auto; /* cancel margin fix for other browsers */
}

.ie7 .Actions .action {
  float: left;
}

.Actions:after {
  color: #B94A48;
  display: inline-block;
  font-weight: normal;
  margin-top: 9px;
}

#MemberLoginForm_LoginForm .Actions:after {
  display: none;
}

/* AREA SPECIFIC */
/* LOGIN and FORGOT PASSWORD */
#Remember {
  min-height: 20px;
}

#ForgotPassword {
  clear: left;
}

#MemberLoginForm_LostPasswordForm .Actions:after {
  display: none;
}

/* Search / Login */
.header form .middleColumn {
  /* float: none;
  width: 100% !important; */
}

/* USER DEFINED USER FORM MODULE STYLES
----------------------------------------------- */
/*Generic and mixed*/
.FormHeading {
  clear: both;
  padding-top: 15px;
}

form .date .middleColumn input {
  /*background: transparent url(../images/icons/your_icon_here.png) no-repeat scroll 90px 5px;*/
  width: 114px;
}

.Actions input.resetformaction,
.Actions input.action-minor { /* Clear button */
  float: left;
  background-color: #888;
}

.Actions input.resetformaction:hover,
.Actions input.action-minor:hover { /* Clear button */
  background-color: #aaa;
}

/* Labels */
.checkbox label.right {
  font-size: 13px; /* reset to default */
  color: #333; /* reset to default */
}

form .requiredField label.left:after, form .requiredField legend.left:after { /* pseudo element adds an asterisk to a required fields label */
  color: #B94A48;
  content: "*";
  font-size: 14px;
  font-weight: normal;
  padding-left: 3px;
}

/* Radio / Checkbox */
form .checkboxset ul,
form .optionset ul {
  margin: 0;
}

form .checkboxset li,
form .optionset li {
  margin-bottom: 5px;
  list-style-type: none;
}

form div.checkbox:after { /* clearfix */
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

form .checkbox .checkbox {
  clear: both;
}

/* Messages */
span.message {
  margin: 10px 0;
  display: block;
  clear: left;
}

div.holder-required { /* This class needs to be changed - is used for both input and div */
  /* background-color: #f9d0d0;
  border: 1px solid #cf0000;
  padding: 10px;
  margin-left: -11px; */
}

form input.holder-required { /* This class needs to be changed - is used for both input and div */
  border: 1px solid #cf0000;
}

/* Error messages */
input:invalid,
textarea:invalid {
  border-radius: 1px;
  box-shadow: 0px 0px 2px red;
}

.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid {
  background-color: #f0dddd;
}

/* To test - potentially not needed? */
.ss-uploadfield-item-info button {
  margin-top: 4px !important;
  float: left;
}

form .creditCardField input,
form input.currency,
form input.numeric {
  width: 50px;
}

form #DMYDate-month,
form #DMYDate-day {
  width: 25px;
}

/* Responsive form styles
----------------------------------------------- */
@media only screen and (max-width: 700px) {
  /* To test - potentially not needed? */
  .header form .middleColumn {
    float: none;
    width: 100% !important;
  }
  form label.left,
  #MemberLoginForm_LoginForm label {
    margin-bottom: 8px;
  }
}
@media only screen and (max-width: 900px) {
  form {
    max-width: 100%;
  }
}
