/****************************************
 * Variables
 ****************************************/
:root {
  /* ATS Colors */
  --primary-blue: #194779;
  --secondary-blue: #74b2ef;
  --light-blue: #ebf3f9;
  --lighter-blue: #f3faff;
  --green: #8ec83f;
  --dark-green: #4d7413;
  --red: #cc0000;
  --dark-red: #8b0000;
  --teal: #49a4b8;
  --text-color: #144677;
  --gray-border: #cccccc;
  --light-gray-bg: #f5f5f5;
  --dark-blue-footer: #0f2d61;
  --light-text-footer: #e0ebf3;
  --divider-gray: #6c8ca7;
  --social-icon-hover-blue: #316e9e;

  /* Neutral Colors */
  --white: #ffffff;
  --black: #000000;
  --dark-gray: #58595b;
  --medium-gray: #bdbdbd;
  --light-gray: #e2e3e3;

  /* Fonts */
  --primary-font: "Lato", sans-serif;
}

/****************************************
 * Global Styles
 ****************************************/

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--primary-font);
  font-size: 18px;
  color: var(--text-color);
}

.wrapper {
  display: block;
}

.container {
  max-width: 1400px;
  margin-right: auto;
  margin-left: auto;
  padding-left: 30px;
  padding-right: 30px;
  min-height: 55vh;
}

h1 {
  font-family: var(--primary-font);
  font-weight: 700;
  font-size: 38px;
  color: var(--primary-blue);
  margin: 0px 0px 30px;
  line-height: 42px;
}

h2 {
  font-family: var(--primary-font);
  font-weight: 700;
  font-size: 34px;
  color: var(--primary-blue);
  margin: 0px 0px 25px;
  line-height: 40px;
  position: relative;
}

h3 {
  font-family: var(--primary-font);
  font-weight: 600;
  font-size: 30px;
  color: var(--primary-blue);
  margin: 0px 0px 25px;
  line-height: 1.2em;
}

h4 {
  font-family: var(--primary-font);
  font-weight: 600;
  font-size: 27px;
  color: var(--primary-blue);
  margin: 0px 0px 20px;
  line-height: 1.2em;
}

h5 {
  font-family: var(--primary-font);
  font-weight: 700;
  font-size: 24px;
  color: var(--primary-blue);
  margin: 0px 0px 10px;
}

h6 {
  font-family: var(--primary-font);
  font-weight: 700;
  font-size: 21px;
  color: var(--primary-blue);
  margin: 0px 0px 15px;
}

p {
  margin: 0px 0px 25px;
  font-family: var(--primary-font);
  font-size: 18px;
  color: var(--text-color);
}

a {
  color: var(--green);
  font-family: var(--primary-font);
  font-weight: 600;
  transition: all 0.3s ease-in-out;
}

a:visited,
.Link:visited,
.RadGrid.RadGrid .rgRow a:visited,
.RadGrid.RadGrid .rgAltRow a:visited,
.RadGrid.RadGrid .rgEditForm a:visited,
.k-grid.k-grid a:visited,
.RadToolTip.RadToolTip a:visited {
  color: var(--green);
}

a:hover {
  color: var(--dark-green);
  text-decoration: underline;
}

@media (max-width: 600px) {
  h1 {
    font-size: 34px;
  }

  h2 {
    font-size: 31px;
  }

  h3 {
    font-size: 27px;
  }

  h4 {
    font-size: 24px;
  }

  h5 {
    font-size: 22px;
  }

  h6 {
    font-size: 19px;
  }

  p {
    font-size: 15px;
  }
}

/****************************************
 * Buttons
 ****************************************/

.btn,
.TextButton,
.RadUpload.RadUpload .ruButton,
.RadUploadProgressArea.RadUploadProgressArea .ruButton {
  color: white;
  background-color: var(--green);
  border-color: var(--green);
  font-family: var(--primary-font);
  font-weight: 600;
  border: 2px solid var(--green);
  text-transform: uppercase;
  padding: 10px 25px !important;
  font-size: 16px;
  border-radius: 5px;
  transition: all 0.2s ease-in-out;
}

.btn,
.btn:visited,
.TextButton,
.TextButton:visited,
.RadUpload.RadUpload .ruButton,
.RadUpload.RadUpload .ruButton:visited,
.RadUploadProgressArea.RadUploadProgressArea .ruButton,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:visited {
  color: white;
}

.btn:hover,
.btn:focus,
.btn:active,
.TextButton:hover,
.TextButton:focus,
.TextButton:active,
.RadUpload.RadUpload .ruButton:hover,
.RadUpload.RadUpload .ruButton:focus,
.RadUpload.RadUpload .ruButton:active,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:hover,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:focus,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:active {
  color: white;
  border-color: var(--dark-green);
  background-color: var(--dark-green);
  border: 2px solid var(--dark-green);
}

.PrimaryButton,
.UsePrimaryButton .TextButton,
.RadGrid input.PrimaryButton,
.RadGrid.RadGrid input.TextButton.PrimaryButton,
.RadGrid.RadGrid a.TextButton.PrimaryButton {
  color: var(--white);
  background-color: var(--primary-blue);
  border: 2px solid var(--primary-blue);
}

.PrimaryButton:hover,
.PrimaryButton:focus,
.PrimaryButton:active,
.UsePrimaryButton .TextButton:hover,
.UsePrimaryButton .TextButton:focus,
.UsePrimaryButton .TextButton:active,
.RadGrid input.PrimaryButton:hover,
.RadGrid input.PrimaryButton:focus,
.RadGrid input.PrimaryButton:active,
.RadGrid.RadGrid input.TextButton.PrimaryButton:hover,
.RadGrid.RadGrid input.TextButton.PrimaryButton:focus,
.RadGrid.RadGrid input.TextButton.PrimaryButton:active,
.RadGrid.RadGrid a.TextButton.PrimaryButton:hover,
.RadGrid.RadGrid a.TextButton.PrimaryButton:focus,
.RadGrid.RadGrid a.TextButton.PrimaryButton:active {
  color: var(--primary-blue);
  background-color: transparent;
  border: 2px solid var(--primary-blue);
}

.btn:disabled,
.btn:disabled:hover,
.btn:disabled:focus,
.btn:disabled:active,
.btn.disabled,
.btn.disabled:hover,
.btn.disabled:focus,
.btn.disabled:active,
.btn.aspNetDisabled,
.btn.aspNetDisabled:hover,
.btn.aspNetDisabled:focus,
.btn.aspNetDisabled:active,
.TextButton:disabled,
.TextButton:disabled:hover,
.TextButton:disabled:focus,
.TextButton:disabled:active,
.TextButton.disabled,
.TextButton.disabled:hover,
.TextButton.disabled:focus,
.TextButton.disabled:active,
.TextButton.aspNetDisabled,
.TextButton.aspNetDisabled:hover,
.TextButton.aspNetDisabled:focus,
.TextButton.aspNetDisabled:active,
.RadUpload.RadUpload .ruButton:disabled,
.RadUpload.RadUpload .ruButton:disabled:hover,
.RadUpload.RadUpload .ruButton:disabled:focus,
.RadUpload.RadUpload .ruButton:disabled:active,
.RadUpload.RadUpload .ruButton.disabled,
.RadUpload.RadUpload .ruButton.disabled:hover,
.RadUpload.RadUpload .ruButton.disabled:focus,
.RadUpload.RadUpload .ruButton.disabled:active,
.RadUpload.RadUpload .ruButton.aspNetDisabled,
.RadUpload.RadUpload .ruButton.aspNetDisabled:hover,
.RadUpload.RadUpload .ruButton.aspNetDisabled:focus,
.RadUpload.RadUpload .ruButton.aspNetDisabled:active,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:disabled,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:disabled:hover,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:disabled:focus,
.RadUploadProgressArea.RadUploadProgressArea .ruButton:disabled:active,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.disabled,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.disabled:hover,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.disabled:focus,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.disabled:active,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.aspNetDisabled,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.aspNetDisabled:hover,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.aspNetDisabled:focus,
.RadUploadProgressArea.RadUploadProgressArea .ruButton.aspNetDisabled:active {
  color: var(--white);
  background-color: var(--green);
  border-color: 2px solid transparent;
}

.button-group .LargeButton {
  font-size: 18px !important;
}

.LargeButton,
.UseLargeButton .TextButton,
.UseLargeButton .TextButtonWithImage {
  font-size: 16px !important;
}

.donate-btn {
  margin-left: 10px;
}

@media (max-width: 992px) {
  .donate-btn {
    display: flex;
    animation: fadeIn 0.6s ease-in-out forwards;
  }
}

.donate-btn .NavigationLink {
  font-size: 16px;
  font-weight: 600;
  background: var(--red);
  padding: 6px 18px;
  border-radius: 5px;
  color: var(--white);
  transition: all 0.3s ease-in-out;
}

.donate-btn .NavigationLink:hover {
  background: var(--dark-red);
  text-decoration: none;
  cursor: pointer;
}

/****************************************
 * Inputs
 ****************************************/

select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input,
.input-fake {
  box-shadow: none;
  border: 1px solid #d8d8d8;
}

select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus,
.input-fake:focus {
  border-color: var(--secondary-blue);
  box-shadow:
    inset 0 1px 1px rgba(0, 0, 0, 0.075),
    0 0 8px #74b1efac;
}

.RadInput.RadInput.riSingle .riTextBox,
.RadInput.RadInput .riTextBox,
.RadInput .riTextBox {
  font-family: var(--primary-font) !important;
  color: var(--text-color);
}

/* ------------------------------------------------------- */
/*    Header Styles                                        */
/* ------------------------------------------------------- */
.ats-header {
  background-color: var(--white);
  width: 100%;
  margin: 0;
  padding: 0 15px;
  position: relative;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.03);
}

/* Sticky Header */
.ats-header.sticky {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 85px;
  padding: 0 10px;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.03);
  z-index: 10000;
  animation: slideDown 0.7s ease-in-out;
}

@media (min-width: 992px) {
  .ats-header.sticky .utility-nav {
    display: none;
  }

  .ats-header.sticky .header-container {
    padding: 15px 20px 0;
  }

  .ats-header.sticky .logo img {
    width: 130px;
  }

  .ats-header.sticky .RadMenu.RadMenu_Coffee ul.rmRootGroup > .rmItem > .rmLink,
  .ats-header.sticky .RadMenu_Coffee .rmSlide .rmLink {
    font-size: 16px;
  }
}

@media (max-width: 992px) {
  .ats-header.sticky {
    padding: 15px 0;
  }

  .ats-header.sticky .logo img {
    width: 115px;
  }
}

@keyframes slideDown {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}

.header-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}

.utility-nav {
  background-color: var(--white);
  padding: 10px 0 2px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  transition: all 0.2s ease-in-out;
}

@media (min-width: 992px) {
  .utility-nav {
    margin-bottom: 5px;
  }
}

/* Account Area */
.UtilityNavigation .account-menu > li > a,
.UtilityNavigation .account-menu > li > a:hover,
.UtilityNavigation .account-menu > li > a:visited,
.UtilityNavigation .account-menu > li > a:active {
  color: var(--primary-blue);
  font-size: 14px;
}

.account-toggle .nav-text {
  transition: all 0.2s ease-in-out;
}

.account-menu .account-toggle .caret {
  background: var(--primary-blue);
  transition: all 0.2s ease-in-out;
}

.account-menu .account-toggle:hover .nav-text,
.account-menu .account-toggle:focus .nav-text {
  color: var(--secondary-blue) !important;
}

.account-menu .account-toggle:hover .caret,
.account-menu .account-toggle:focus .caret {
  background: var(--secondary-blue) !important;
}

.account-menu .dropdown-menu > li > a {
  font-weight: 500;
  font-family: var(--primary-font);
  color: var(--primary-blue) !important;
  text-decoration: none;
}

.account-menu .dropdown-menu > li > a:hover,
.account-menu .dropdown-menu > li > a:focus {
  color: var(--secondary-blue) !important;
}

/* On Behalf of Icon */
.utility-links a {
  margin-left: 0px;
}

.navbar-toggle,
.obo-toggle,
.ste-toggle,
.page-statistics-toggle,
.searchbar-toggle {
  background: var(--primary-blue);
}

.obo-toggle.on:hover,
.obo-toggle.on:focus,
a.ste-toggle.on:hover,
a.ste-toggle.on:focus,
.page-statistics-toggle.on:hover,
.page-statistics-toggle.on:focus {
  background: var(--secondary-blue);
}

@media (min-width: 992px) {
  .obo-toggle:hover,
  .obo-toggle:focus,
  .obo-toggle.on,
  a.ste-toggle:hover,
  a.ste-toggle:focus,
  a.ste-toggle.on,
  .page-statistics-toggle:hover,
  .page-statistics-toggle:focus,
  .page-statistics-toggle.on {
    background: var(--secondary-blue);
  }
}

.ProxyPanelContact {
  background-color: var(--primary-blue);
}

/* Sign In and Sign Up Buttons */

.utility-nav .sign-in-link {
  padding: 7px 23px;
  border: 2px solid var(--primary-blue);
  border-radius: 5px;
  text-transform: uppercase;
  color: var(--primary-blue);
  font-family: var(--primary-font);
  font-size: 14px;
  font-weight: 600 !important;
  margin-right: 10px;
  transition: all 0.2s ease-in-out;
}

.utility-nav .sign-in-link:hover {
  background: var(--primary-blue);
  border: 2px solid var(--primary-blue);
  color: var(--white) !important;
  font-family: var(--primary-font);
  font-weight: 600 !important;
}

.join-btn a {
  background: var(--primary-blue);
  color: white;
  font-family: var(--primary-font);
  font-size: 14px;
  font-weight: 600;
  padding: 4px 23px;
  margin-right: 10px;
  border: 2px solid var(--primary-blue);
  border-radius: 5px;
  text-decoration: none;
  text-transform: uppercase;
  transition: all 0.2s ease-in-out;
}

.join-btn a:hover {
  background: transparent;
  border: 2px solid var(--primary-blue);
  color: var(--primary-blue);
  text-decoration: none;
}

@media (max-width: 992px) {
  .mobile-nav-container .utility-nav .join-btn a {
    margin-right: 10px;
  }
}

/* Cart */
.nav-auxiliary .nav-aux-button.nav-aux-cart .nav-text:before {
  content: none;
}

.nav-auxiliary .nav-aux-button.nav-aux-cart .nav-text {
  background-position: center;
  width: 30px;
  height: 30px;
  background-size: 28px;
}

.nav-auxiliary .nav-aux-button.nav-aux-cart .nav-text,
.nav-auxiliary .nav-aux-button.nav-aux-account .nav-text {
  background-image: url("images/cart.png");
  height: 30px;
  min-width: 30px;
  line-height: 30px;
}

.nav-auxiliary .nav-aux-button.nav-aux-cart .cartFull {
  top: 3px;
  left: 13px;
}

.nav-auxiliary .nav-aux-button.nav-aux-cart .cartCenter {
  color: var(--primary-blue);
  background-color: var(--green);
  font-size: 13px;
  padding: 0;
  box-shadow: none;
  width: 18px;
  height: 18px;
  font-weight: 600;
  line-height: 1.5;
}

@media (max-width: 992px) {
  .nav-auxiliary .nav-aux-button.nav-aux-cart .cartFull {
    top: -5px;
    left: 13px;
  }

  .nav-aux-cart a {
    margin-right: 5px !important;
  }
}

/* Search Bar */

div#SimpleSearchBlock {
  margin-left: 12px;
}

input,
button,
select,
textarea {
  font-family: var(--primary-font);
}

.UtilitySearch #SimpleSearchBlock .search-field {
  background-position: 0 0;
  border-radius: 0;
  height: 30px;
  width: 0;
  color: var(--dark-gray);
  font-size: 83%;
  background-image: url(images/search-icon.png);
  background-size: 25px 25px;
  background-color: transparent;
}

.UtilitySearch #SimpleSearchBlock .search-field:focus,
.UtilitySearch #SimpleSearchBlock .search-field:hover,
.UtilitySearch #SimpleSearchBlock .search-field:active {
  width: 150px;
  background-color: transparent;
  border-bottom: 1px solid var(--red);
  color: var(--primary-blue);
}

.UtilitySearch #SimpleSearchBlock .search-field:focus {
  border-color: transparent;
  border-bottom: 1px solid var(--secondary-blue);
  box-shadow: none;
  background-color: transparent;
}

@media (max-width: 992px) {
  .searchbar-toggle {
    mask-image: url(images/search-icon.png);
  }

  .navbar-toggle.collapsed,
  .searchbar-toggle.collapsed {
    background: var(--primary-blue);
  }

  .navbar-toggle,
  .searchbar-toggle {
    mask-size: 22px 22px;
  }

  .search-container .search-field {
    color: var(--text-color);
    font-size: 75%;
    border: 1px solid var(--secondary-blue);
    background-image: url(images/search-icon.png);
    background-color: transparent;
  }

  .search-container input[type="text"]:focus {
    color: var(--primary-blue);
  }
}

/* Easy Edit */
a.ste-toggle {
  background: var(--primary-blue);
}

a.ste-toggle.on:hover,
a.ste-toggle.on:focus,
.page-statistics-toggle.on:hover,
.page-statistics-toggle.on:focus {
  background: var(--secondary-blue);
}

/* TSN Logo */
.utility-nav .utility-links .WTZone {
  display: flex;
}

@media (min-width: 992px) {
  .tsn-aux-img-wrapper {
    margin-top: 5px;
    margin-left: 15px;
  }
}

@media (max-width: 992px) {
  .utility-nav .utility-links .WTZone {
    flex-direction: column;
  }

  .tsn-aux-img-wrapper {
    margin-top: 15px;
    margin-left: 0;
  }
}

.tsn-aux-img-wrapper img.tsn-logo {
  width: 135px;
}

/* Header Logo */
.logo-section {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
}

.logo img {
  width: 175px;
  vertical-align: baseline;
  transition: all 0.3s ease-in-out;
}

@media (max-width: 550px) {
  .logo img {
    width: 140px;
    vertical-align: baseline;
  }
}

/* ----------------- Primary Navigation ---------------------- */
.primary-navigation div#WTZone3_Page1 {
  display: flex;
  align-items: center;
}

@media (min-width: 992px) {
  .logo-section {
    padding: 0 0 12px;
  }

  .mobile-nav-container {
    display: none;
  }

  .RadMenu.RadMenu_Coffee ul.rmRootGroup > .rmItem {
    display: flex;
    align-items: flex-end;
  }

  @media (min-width: 992px) {
    .RadMenu.RadMenu_Coffee .rmSlide .rmItem {
      animation: fadeIn 0.5s ease-in-out forwards !important;
    }

    .RadMenu.RadMenu_Coffee .rmRootLink::after {
      content: "";
      position: absolute;
      bottom: 5px;
      left: 50%;
      width: 0%;
      height: 3px;
      transform: translateX(-50%);
      background-color: var(--green);
      z-index: 50;
      transition:
        width 0.3s ease,
        left 0.3s ease;
    }

    .RadMenu.RadMenu_Coffee .rmRootLink:hover::after,
    .RadMenu.RadMenu_Coffee .rmRootLink.rmExpanded::after,
    .RadMenu.RadMenu_Coffee .rmRootLink.rmFocused::after {
      width: 75%;
    }
  }

  @keyframes fadeIn {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }

  .RadMenu.RadMenu_Coffee ul.rmRootGroup > .rmItem > .rmLink {
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    text-align: center;
    line-height: 1.13;
    transition: all 0.2s ease-in-out;
  }

  .RadMenu.RadMenu_Coffee ul .rmItem:hover .rmRootLink {
    color: var(--primary-blue) !important;
  }

  .RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmFirst .rmLink {
    border-radius: 4px 4px 0 0;
  }

  .RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmLink {
    padding: 0 4px !important;
  }

  .RadMenu.RadMenu_Coffee .rmRootLink.rmFocused {
    color: var(--secondary-blue);
  }
}

@media (max-width: 992px) {
  div[id$="_ciNewPrimaryNavigationCommon"] {
    display: none;
  }
}

.RadMenu.RadMenu_Coffee {
  margin-top: 0;
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .RadMenu.RadMenu_Coffee {
    padding-right: 0;
  }
}

.RadMenu.RadMenu_Coffee .rmRootLink {
  font-family: var(--primary-font);
  font-size: 18px;
  font-weight: bold;
  color: var(--primary-blue);
  border-radius: 0;
  transition: all 0.2s ease-in-out;
}

.RadMenu.RadMenu_Coffee .rmRootLink.rmSelected {
  color: var(--secondary-blue);
}

@media (min-width: 992px) {
  .RadMenu.RadMenu_Coffee .rmRootLink.rmExpanded,
  .RadMenu.RadMenu_Coffee .rmRootLink:hover,
  .RadMenu.RadMenu_Coffee .rmRootLink.rmFocused {
    background: transparent;
    border-radius: 0;
  }
}

.RadMenu.RadMenu_Coffee .rmGroup {
  background-color: var(--primary-blue);
}

@media (min-width: 992px) {
  .RadMenu.RadMenu_Coffee .rmToggle .rmIcon,
  .RadMenu.RadMenu_Coffee .rmRootGroup .rmRootLink .rmToggle .rmIcon {
    display: none;
  }

  .RadMenu.RadMenu_Coffee .rmGroup.rmLevel1 .rmToggle {
    display: block;
  }

  .RadMenu.RadMenu_Coffee .rmGroup.rmLevel1 .rmToggle .rmIcon {
    display: block;
  }

  .main-nav {
    margin-top: -30px;
  }

  .ats-header.sticky .main-nav {
    margin-top: 0;
  }
}

@media (max-width: 992px) {
  .ats-header {
    padding: 15px 0;
  }

  .main-nav {
    padding-bottom: 12px;
  }

  .primary-navigation {
    display: flex;
    align-items: flex-end;
  }

  .RadMenu.RadMenu ul.rmHorizontal {
    margin-top: 15px;
  }

  .RadMenu.RadMenu_Coffee .rmRootLink {
    font-size: 18px;
  }

  .RadMenu.RadMenu_Coffee .rmRootLink {
    display: flex !important;
    align-items: center;
  }

  .RadMenu.RadMenu_Coffee .rmRootGroup > .rmItem {
    border-bottom: 1px solid var(--light-gray);
  }

  .RadMenu.RadMenu_Coffee .rmRootGroup > .rmItem:last-child {
    border-bottom: none;
  }

  .RadMenu.RadMenu_Coffee .rmHorizontal .rmText,
  .RadMenu.RadMenu_Coffee .rmText {
    padding: 12px 15px;
    display: inline-block !important;
  }

  .RadMenu.RadMenu_Coffee .rmRootLink.rmExpanded,
  .RadMenu.RadMenu_Coffee .rmRootLink:hover,
  .RadMenu.RadMenu_Coffee .rmRootLink.rmFocused {
    color: var(--primary-blue);
  }

  .RadMenu.RadMenu_Coffee .rmLink:hover .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmLink.rmFocused .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmSelected > .rmLink .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmFocused > .rmLink.rmRootLink .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmExpanded > .rmLink .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmSlide .rmLink .rmToggle > .rmIcon {
    background: var(--white);
  }

  .RadMenu.RadMenu_Coffee .rmToggle .rmIcon,
  .RadMenu.RadMenu_Coffee .rmRootGroup .rmRootLink .rmToggle .rmIcon {
    background: var(--primary-blue);
  }

  .rmRootGroup li.rmItem {
    animation: fadeIn 0.6s ease-in-out forwards;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.main-nav {
  padding: 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: nowrap;
  width: 100%;
}

@media (max-width: 992px) {
  .main-nav {
    align-items: center;
  }

  .logo-section .logo a {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .RadMenu_Coffee .rmSlide .rmLink:hover,
  .RadMenu_Coffee .rmSlide .rmLink:focus,
  .RadMenu_Coffee .rmSlide .rmLink.rmFocused,
  .RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink:hover,
  .RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink:focus,
  .RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink.rmFocused {
    background-color: transparent;
  }
}

/* Menu Dropdown */
.RadMenu.RadMenu_Coffee .rmTwoLevels .rmLevel1 > .rmItem > .rmLink,
.RadMenu.RadMenu_Coffee
  .rmTwoLevels
  .rmLevel1
  > .rmItem.rmDisabled
  > .rmLink:hover,
.RadMenu.RadMenu_Coffee
  .rmTwoLevels
  .rmLevel1
  > .rmItem.rmDisabled
  > .rmLink:focus {
  color: var(--secondary-blue);
  font-weight: 600;
  font-family: var(--primary-font);
  text-transform: uppercase;
}

.RadMenu.RadMenu_Coffee .rmSlide {
  float: none;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  border-radius: 0;
}

.RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup {
  margin: 0;
  padding: 0px;
  border-radius: 0;
  /* overflow: hidden; */
}

@media (min-width: 992px) {
  .RadMenu.RadMenu_Coffee .rmRootGroup > li > div.rmSlide .rmGroup {
    min-width: 170px;
  }

  /* .RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmFirst .rmLink {
    width: 100% !important;
  } */

  .RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmLast .rmLink {
    border-radius: 0 0 4px 4px;
  }

  .Wrapper-HomePage .RadMenu.RadMenu_Coffee .rmLink:hover,
  .Wrapper-HomePage .RadMenu.RadMenu_Coffee .rmFocused,
  .Wrapper-HomePage .RadMenu.RadMenu_Coffee .rmExpanded {
    color: var(--primary-blue);
  }

  .RadMenu.RadMenu_Coffee .rmRootGroup > li > div.rmSlide .rmGroup {
    animation: menu-fade-down 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards !important;
    border-radius: 4px;
  }

  .RadMenu_Coffee .rmSlide .rmLink:hover,
  .RadMenu_Coffee .rmSlide .rmLink:focus,
  .RadMenu_Coffee .rmSlide .rmLink.rmFocused,
  .RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink:hover,
  .RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink:focus,
  .RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink.rmFocused {
    background-color: transparent;
  }

  .RadMenu.RadMenu_Coffee .rmSlide ul.rmLevel2 {
    margin: 0;
    padding: 0px;
  }

  .RadMenu.RadMenu_Coffee .rmSlide ul.rmLevel2 {
    margin: 0;
    padding: 0px;
    border-radius: 0;
  }

  ul.rmVertical.rmGroup.rmLevel3 {
    border-radius: 0;
  }

  .RadMenu.RadMenu_Coffee .rmExpandRight,
  .RadMenu.RadMenu_Coffee .rmGroup a.rmLink.rmExpandRight {
    background-image: none;
    width: 100% !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
  }

  .RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmLink .rmText {
    width: auto;
    flex-grow: 1;
  }

  .RadMenu.RadMenu_Coffee .rmLink:hover .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmLink.rmFocused .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmSelected > .rmLink .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmFocused > .rmLink.rmRootLink .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmExpanded > .rmLink .rmToggle > .rmIcon,
  .RadMenu.RadMenu_Coffee .rmSlide .rmLink .rmToggle > .rmIcon {
    background: white;
    margin-right: 10px;
  }

  .RadMenu.RadMenu_Coffee .rmExpanded.rmLink > .rmToggle > .rmIcon {
    background: var(--secondary-blue) !important;
  }
}

@keyframes menu-fade-down {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink:hover,
.RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink:focus,
.RadMenu_Coffee .rmSlide .rmLevel1 > .rmItem > .rmLink.rmFocused {
  background-color: transparent;
  color: var(--white);
}

.RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmLink:hover,
.RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmFocused,
.RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup .rmExpanded {
  color: var(--secondary-blue);
}

.RadMenu_Coffee .rmSlide .rmLink {
  color: var(--white);
  font-family: var(--primary-font);
  font-weight: 600;
  font-size: 16px;
}

@media (max-width: 992px) {
  .RadMenu.RadMenu_Coffee {
    margin-top: 22px;
  }

  .RadMenu.RadMenu_Coffee .rmSlide ul.rmGroup {
    border-radius: 4px;
  }

  .mobile-nav-wrapper .utility-nav {
    padding: 25px 0 25px 14px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    animation: fadeIn 0.6s ease-in-out forwards;
  }

  .header-container .UtilityNavigation.nav-auxiliary {
    text-align: left;
  }
}

@media (max-width: 768px) {
  .RadMenu.RadMenu_Coffee {
    margin-top: 5px;
  }
}

/* Hamburger Icon */
button.navbar-toggler {
  background-color: transparent;
  border: none;
}

@media (max-width: 992px) {
  .hamburger-icon-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}

@media (min-width: 992px) {
  .RadMenu.RadMenu_Coffee .rmHorizontal .rmText,
  .RadMenu.RadMenu_Coffee .rmText {
    padding: 18px 15px;
  }

  .hamburger-icon-wrapper {
    display: none;
  }
}

.navbar-toggler span {
  display: block;
  background-color: var(--primary-blue);
  height: 3px;
  width: 36px;
  border-radius: 6px;
  margin-top: 6px;
  margin-bottom: 4px;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  position: relative;
  left: 0;
  opacity: 1;
}

.navbar-toggler:not(:disabled):not(.disabled) {
  cursor: pointer;
}

.navbar-toggler span:nth-child(1),
.navbar-toggler span:nth-child(3) {
  -webkit-transition: -webkit-transform 0.2s ease-in-out;
  transition: -webkit-transform 0.35s ease-in-out;
  transition: transform 0.2s ease-in-out;
  transition:
    transform 0.2s ease-in-out,
    -webkit-transform 0.2s ease-in-out;
}

.navbar-toggler:not(.collapsed) span:nth-child(1) {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  opacity: 0.9;
  margin-top: 15px;
}

.navbar-toggler:not(.collapsed) span:nth-child(2) {
  height: 12px;
  visibility: hidden;
  background-color: transparent;
  margin-top: -25px;
}

.navbar-toggler:not(.collapsed) span:nth-child(3) {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  opacity: 0.9;
  margin-bottom: 1rem;
}

.hamburger-icon-wrapper span.menu-text {
  font-size: 14px;
  font-weight: 600;
  font-family: var(--primary-font);
  color: var(--primary-blue);
}

/****************************************
 * Main Section
 ****************************************/

/* Back to Top */
.backToTop {
  background: var(--green);
}

.backToTop:hover {
  background: var(--dark-green);
}

h1.BigHeader,
.h1.BigHeader {
  background-color: var(--primary-blue);
}

.h2,
.PanelTitle {
  font-size: 135%;
  font-family: var(--primary-font);
  font-weight: bold;
  color: var(--primary-blue);
  line-height: 1.45em;
}

.readMore:hover,
.readMore:focus,
.readMore:active {
  color: var(--primary-blue);
}

.readMore:hover:after,
.readMore:focus:after,
.readMore:active:after {
  background: var(--primary-blue);
}

.CommunityItemActionLinks a:hover {
  background-color: transparent;
  color: var(--primary-blue);
  text-decoration: underline;
}

/* Content Collection Organizer */
html .RadTabStrip_MetroTouch .rtsLevel1 a.rtsLink {
  background-color: var(--primary-blue);
}

.SearchField {
  background-color: var(--light-gray);
}

.SearchField label {
  color: var(--primary-blue) !important;
}

.SearchResultSummary .ListItemTitle a {
  background-color: var(--primary-blue);
}

.SearchResultSummary .ListItemTitle a,
.SelectedItem a {
  color: var(--white) !important;
}

.RadGrid.RadGrid .rgRow a:hover {
  text-decoration: none;
}

.SearchResultSummary .ListItemTitle a:hover {
  background-color: var(--secondary-blue);
  text-decoration: none;
}

a:focus,
a:active,
.Link:hover,
.Link:focus,
.Link:active,
.RadGrid.RadGrid .rgRow a:hover,
.RadGrid.RadGrid .rgRow a:focus,
.RadGrid.RadGrid .rgRow a:active,
.RadGrid.RadGrid .rgAltRow a:hover,
.RadGrid.RadGrid .rgAltRow a:focus,
.RadGrid.RadGrid .rgAltRow a:active,
.RadGrid.RadGrid .rgEditForm a:hover,
.RadGrid.RadGrid .rgEditForm a:focus,
.RadGrid.RadGrid .rgEditForm a:active,
.k-grid.k-grid a:hover,
.k-grid.k-grid a:focus,
.k-grid.k-grid a:active,
.RadToolTip.RadToolTip a:hover,
.RadToolTip.RadToolTip a:focus,
.RadToolTip.RadToolTip a:active {
  text-decoration: none;
}

.SearchResultSummary .ListItemTitle a:hover,
.SearchResultSummary .ListItemTitle a:active,
.SearchResultSummary .ListItemTitle a:visited,
.SelectedItem a:hover,
.SelectedItem a:active,
.SelectedItem a:visited {
  color: var(--white) !important;
  text-decoration: none;
}

/* Icons */
a:not(.aspNetDisabled):hover .sysicon.sysicon-add:after,
a:not(.aspNetDisabled):focus .sysicon.sysicon-add:after,
a:not(.aspNetDisabled):hover .sysicon--before.sysicon-add:before,
a:not(.aspNetDisabled):focus .sysicon--before.sysicon-add:before,
a:not(.aspNetDisabled):hover .sysicon--after.sysicon-add:after,
a:not(.aspNetDisabled):focus .sysicon--after.sysicon-add:after,
a.sysicon.sysicon-add:not(.aspNetDisabled):hover:after,
a.sysicon.sysicon-add:not(.aspNetDisabled):focus:after,
a.sysicon--before.sysicon-add:not(.aspNetDisabled):hover:before,
a.sysicon--before.sysicon-add:not(.aspNetDisabled):focus:before,
a.sysicon--after.sysicon-add:not(.aspNetDisabled):hover:after,
a.sysicon--after.sysicon-add:not(.aspNetDisabled):focus:after,
button.sysicon.sysicon-add:not([disabled]):hover:after,
button.sysicon--before.sysicon-add:not([disabled]):hover:before,
button.sysicon--after.sysicon-add:not([disabled]):hover:after,
button.sysicon.sysicon-add:not([disabled]):focus:after,
button.sysicon--before.sysicon-add:not([disabled]):focus:before,
button.sysicon--after.sysicon-add:not([disabled]):focus:after,
a:not(.aspNetDisabled):hover .sysicon.sysicon-collapsed:after,
a:not(.aspNetDisabled):focus .sysicon.sysicon-collapsed:after,
a:not(.aspNetDisabled):hover .sysicon--before.sysicon-collapsed:before,
a:not(.aspNetDisabled):focus .sysicon--before.sysicon-collapsed:before,
a:not(.aspNetDisabled):hover .sysicon--after.sysicon-collapsed:after,
a:not(.aspNetDisabled):focus .sysicon--after.sysicon-collapsed:after,
a.sysicon.sysicon-collapsed:not(.aspNetDisabled):hover:after,
a.sysicon.sysicon-collapsed:not(.aspNetDisabled):focus:after,
a.sysicon--before.sysicon-collapsed:not(.aspNetDisabled):hover:before,
a.sysicon--before.sysicon-collapsed:not(.aspNetDisabled):focus:before,
a.sysicon--after.sysicon-collapsed:not(.aspNetDisabled):hover:after,
a.sysicon--after.sysicon-collapsed:not(.aspNetDisabled):focus:after,
button.sysicon.sysicon-collapsed:not([disabled]):hover:after,
button.sysicon--before.sysicon-collapsed:not([disabled]):hover:before,
button.sysicon--after.sysicon-collapsed:not([disabled]):hover:after,
button.sysicon.sysicon-collapsed:not([disabled]):focus:after,
button.sysicon--before.sysicon-collapsed:not([disabled]):focus:before,
button.sysicon--after.sysicon-collapsed:not([disabled]):focus:after {
  background: var(--green);
}

a:not(.aspNetDisabled):hover .sysicon.sysicon-panel-config:after,
a:not(.aspNetDisabled):focus .sysicon.sysicon-panel-config:after,
a:not(.aspNetDisabled):hover .sysicon--before.sysicon-panel-config:before,
a:not(.aspNetDisabled):focus .sysicon--before.sysicon-panel-config:before,
a:not(.aspNetDisabled):hover .sysicon--after.sysicon-panel-config:after,
a:not(.aspNetDisabled):focus .sysicon--after.sysicon-panel-config:after,
a.sysicon.sysicon-panel-config:not(.aspNetDisabled):hover:after,
a.sysicon.sysicon-panel-config:not(.aspNetDisabled):focus:after,
a.sysicon--before.sysicon-panel-config:not(.aspNetDisabled):hover:before,
a.sysicon--before.sysicon-panel-config:not(.aspNetDisabled):focus:before,
a.sysicon--after.sysicon-panel-config:not(.aspNetDisabled):hover:after,
a.sysicon--after.sysicon-panel-config:not(.aspNetDisabled):focus:after,
button.sysicon.sysicon-panel-config:not([disabled]):hover:after,
button.sysicon--before.sysicon-panel-config:not([disabled]):hover:before,
button.sysicon--after.sysicon-panel-config:not([disabled]):hover:after,
button.sysicon.sysicon-panel-config:not([disabled]):focus:after,
button.sysicon--before.sysicon-panel-config:not([disabled]):focus:before,
button.sysicon--after.sysicon-panel-config:not([disabled]):focus:after {
  background: var(--green);
}

/* Home Member */
.my-profile a {
  color: var(--primary-blue);
  text-decoration: none;
}

.cta-icon a {
  color: var(--primary-blue);
  text-decoration: none;
}

.heading-icon .panel-title,
.heading-icon h3 {
  color: var(--primary-blue);
}

.heading-icon.community .panel-title:before,
.heading-icon.community h3:before,
.heading-icon.engage .panel-title:before,
.heading-icon.engage h3:before {
  background: var(--primary-blue);
}

.readMore:after {
  background: var(--secondary-blue);
}

.ButtonItem {
  text-decoration: none;
  color: var(--primary-blue);
}

.cta-icon,
.mhp .profile,
.shadow-box > .panel > .panel-body-container {
  border: none;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

/* --------------------Home Non Member --------------------------- */
.home-member-tracker .ProgressTracker2 .ProgressTrackerPanel .count {
  color: var(--primary-blue);
  font-family: var(--primary-font);
}

/* ======== HOME PAGE LAYOUT ======== */
.wrapper .container:has(#ATSHome) {
  width: 100%;
  max-width: 100%;
  flex: 1 0 auto;
  padding: 0;
  margin-left: 0;
  margin-right: 0;
}

body:has(#ATSHome) .body-container > div {
  padding: 0;
}

div#ATSHome {
  background: var(--white);
}

#ATSHome .row,
#ATSHome .fullwidth-row {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
}

#ATSHome .fullwidth-col {
  padding: 0 !important;
}

@media (max-width: 992px) {
  #ATSHome .column {
    padding-right: 30px;
    padding-left: 30px;
  }
}

.home-container {
  max-width: 1200px;
  margin: 0 auto;
  width: 85%;
}

/* ======== ROTATING BANNER SECTION ======== */

.carousel-control.right,
.carousel-control.left {
  background-image: none;
}

.carousel-indicators li,
.carousel-indicators .active {
  width: 15px;
  height: 15px;
}

.carousel-indicators li {
  border: 1px solid var(--green);
}

.carousel-indicators .active {
  background-color: var(--green);
}

.carousel-inner.bg-img > .item {
  background-size: contain !important;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100% !important;
  background-color: white;
  height: auto !important;
}

@media (max-width: 1550px) {
  .carousel-inner.bg-img > .item {
    aspect-ratio: 15 / 5 !important;
    min-height: 200px;
  }

  .carousel-inner.bg-img {
    height: auto !important;
  }
}

@media (min-width: 1550px) {
  .carousel-inner.bg-img > .item {
    height: 550px !important;
    background-size: cover !important;
  }
}

@media (min-width: 2000px) {
  .carousel-inner.bg-img > .item {
    height: 650px !important;
  }
}

@media (min-width: 2300px) {
  .carousel-inner.bg-img > .item {
    height: 680px !important;
  }
}

@media (min-width: 2500px) {
  .carousel-inner.bg-img > .item {
    height: 715px !important;
  }
}

@media (max-width: 475px) {
  .carousel-inner.bg-img > .item {
    background-color: var(--primary-blue);
  }
}

/* ======== MISSION SECTION ======== */
.mission-section {
  text-align: center;
  padding-top: 80px;
  padding-bottom: 80px;
}

.tsn-logo-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 30px;
}

.tsn-logo-wrapper .logo-text {
  color: var(--primary-blue);
  font-size: 16px;
  font-weight: 600;
}

.mission-statement {
  font-size: 18px;
  font-weight: 500;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.7;
  color: var(--text-color);
}

.mission-tagline {
  font-size: 24px;
  margin-top: 1.5rem;
  color: var(--primary-blue);
}

/* ======== INFO CARDS SECTION ======== */
.info-cards-section {
  background-color: var(--light-gray-bg);
  padding: 85px 0;
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
}

.card-grid.three-col {
  grid-template-columns: repeat(3, 1fr);
}

.info-card {
  background: var(--white);
  padding: 30px;
  text-align: center;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.info-card > a {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  color: var(--text-color);
}

.info-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.info-card a:hover {
  text-decoration: none !important;
}

.info-card em {
  font-size: 55px;
  color: var(--secondary-blue);
  margin-bottom: 25px;
}

.info-card h3 {
  margin-bottom: 10px;
  color: var(--primary-blue);
  font-size: 20px;
  font-weight: 700;
}

.info-card p {
  margin-top: auto;
  margin-bottom: 15px;
  font-size: 16px;
  line-height: 1.3;
  color: var(--primary-blue);
}

.info-card .read-more {
  font-size: 16px;
  font-weight: 600;
  color: var(--green);
  display: block;
  margin-top: auto;
}

.info-card .read-more em {
  color: var(--green);
  font-size: 16px;
  margin-left: 5px;
  transition: transform 0.3s ease;
}

.info-card:hover .read-more em {
  transform: translateX(5px);
}

@media (max-width: 992px) {
  .card-grid,
  .card-grid.three-col {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 768px) {
  .card-grid,
  .card-grid.three-col {
    grid-template-columns: 1fr;
  }
}

.card-flex {
  margin-top: 45px;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: center;
}

.card-flex .info-card {
  width: 285px;
}

/* ======== UPDATES SECTION ======== */
section.updates-section {
  padding: 60px 0;
}

.updates-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}

.update-column h2 {
  border-bottom: 2px solid var(--green);
  padding-bottom: 10px;
  margin-bottom: 20px;
  display: inline-block;
  font-size: 24px;
}

.update-column ul {
  list-style: none;
  padding: 0;
}

.update-column li {
  padding: 15px 0;
  border-bottom: 1px solid var(--gray-border);
}
.update-column li:first-child {
  padding-top: 0;
}
.update-column li a {
  font-size: 16px;
  font-weight: 600;
}
.update-column .btn {
  margin-top: 20px;
}

@media (max-width: 992px) {
  .updates-grid {
    grid-template-columns: 1fr;
  }
}

/* ======== PARTNERS SECTION ======== */
.partners-section {
  padding: 85px 0;
  background-color: var(--light-gray-bg);
  text-align: center;
  margin-bottom: -16px;
}

.partners-section h2 {
  color: var(--primary-blue);
  margin-top: 0;
  font-size: 32px;
  padding-bottom: 15px;
  /* border-bottom: 2px solid var(--green); */
  display: inline-block;
  margin-bottom: 30px;
}

.about-section h2::after,
.partners-section h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 50%;
  height: 3px;
  transform: translateX(-50%);
  background-color: var(--green);
  z-index: 50;
  transition:
    width 0.3s ease,
    left 0.3s ease;
}

@media (max-width: 992px) {
  .partners-section h2 {
    font-size: 26px;
  }
}

.partner-logos {
  margin-top: 15px;
  height: 80px;
  position: relative;
  overflow: hidden;
}

.partner-logos img {
  max-width: 100%;
  max-height: 80px;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 1s ease-in-out;
}

.partner-logos img.active {
  opacity: 1;
  filter: grayscale(0%);
}

/* ======== ABOUT SECTION (UPDATED) ======== */

.about-section .home-container {
  max-width: 800px;
  text-align: center;
}

.about-section h2 {
  margin-top: 15px;
  font-size: 32px;
  padding-bottom: 15px;
  /* border-bottom: 2px solid var(--green); */
  display: inline-block;
  margin-bottom: 30px;
}

@media (max-width: 992px) {
  .about-section h2 {
    font-size: 26px;
  }
}

.about-section p {
  color: var(--text-color);
  line-height: 1.8;
  margin-bottom: 1rem;
}

.about-section p:last-of-type {
  margin-bottom: 0;
}

/* Alerts */
.AsiError {
  border-color: transparent;
}

.renewal-home.Alerts ul.AlertSet {
  margin-bottom: 0;
}

.renewal-home.Alerts .AlertItem {
  background-color: var(--light-blue);
  box-shadow: none;
  padding: 18px 25px;
}

.home-alert-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
}

.home-alert-wrapper p {
  margin: 0;
}

.ReactivateButton {
  font-size: 14px;
  border-radius: 4px;
  padding: 10px 15px !important;
  line-height: 1.3;
}

@media (max-width: 768px) {
  .renewal-home.Alerts .AlertItem {
    padding: 15px 25px;
  }

  .home-alert-wrapper {
    flex-direction: column;
    gap: 10px;
  }
}

/* Modal */
.RadWindow.RadWindow_MetroTouch .rwTitleRow .rwTitlebar,
.RadWindow.RadWindow_MetroTouch .rwTitleRow .rwTopLeft,
.RadWindow.RadWindow_MetroTouch .rwTitleRow .rwTopRight {
  background-color: var(--primary-blue);
}

.RadWindow_MetroTouch {
  z-index: 11000 !important;
}

/* Tables */
.RadGrid_MetroTouch {
  border-color: whitesmoke !important;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px !important;
  border-radius: 6px !important;
  background-color: #fff;
}

.RadGrid_MetroTouch .rgHeader,
.RadGrid_MetroTouch th.rgResizeCol,
.RadGrid_MetroTouch .rgHeaderWrapper {
  background-color: var(--primary-blue) !important;
}

.RadGrid_MetroTouch .rgHeader,
.RadGrid_MetroTouch th.rgResizeCol,
.RadGrid_MetroTouch .rgHeaderWrapper,
.RadGrid_MetroTouch .rgMultiHeaderRow th.rgHeader,
.RadGrid_MetroTouch .rgMultiHeaderRow th.rgResizeCol {
  border-bottom: 1px solid var(--primary-blue) !important;
  border-left: 1px solid var(--primary-blue) !important;
}

.RadGrid.RadGrid_MetroTouch .rgMasterTable .rgSelectedCell,
.RadGrid.RadGrid_MetroTouch .rgSelectedRow,
.RadGrid.RadGrid_MetroTouch td.rgEditRow .rgSelectedRow,
.RadGrid.RadGrid_MetroTouch .rgSelectedRow td.rgSorted,
.RadGrid.RadGrid_MetroTouch th.rgSorted,
.RadGrid.RadGrid_Metro .rgMasterTable .rgSelectedCell,
.RadGrid.RadGrid_Metro .rgSelectedRow,
.RadGrid.RadGrid_Metro td.rgEditRow .rgSelectedRow,
.RadGrid.RadGrid_Metro .rgSelectedRow td.rgSorted,
.RadGrid.RadGrid_Metro th.rgSorted {
  background-color: var(--primary-blue) !important;
  border-color: var(--primary-blue) !important;
  text-decoration: none;
}

.RadGrid_MetroTouch .rgHeader,
.RadGrid_MetroTouch .rgHeader a {
  color: white !important;
  font-size: 18px;
  font-weight: 600;
  text-decoration: none !important;
}

.RadGrid.RadGrid_MetroTouch .rgHeader {
  font-weight: 600 !important;
}

.RadScheduler.RadScheduler_Metro .rsHeader {
  border-color: var(--primary-blue);
  background-color: var(--primary-blue);
}

.RadScheduler_Metro .rsHeader {
  border: 1px solid var(--primary-blue);
  background-color: var(--primary-blue);
}

.RadGrid_MetroTouch .rgAltRow {
  background: var(--lighter-blue) !important;
}

.RadGrid.RadGrid_MetroTouch,
.RadGrid.RadGrid_Metro {
  color: var(--dark-gray);
}

.ProgressTracker .SuccessfulMessage,
.ProgressTracker .ProgressBar > span {
  background-color: var(--secondary-blue);
}

.RadScheduler_Metro a,
.RadScheduler_Metro input,
.RadScheduler_Metro select,
.RadScheduler_Metro textarea {
  font: var(--primary-font);
}

.RadScheduler.RadScheduler_Metro .rsHeader h2 {
  font-family: var(--primary-font);
}

.RadScheduler_Metro {
  font: var(--primary-font);
}

.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgNumPart a.rgCurrentPage,
.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgNumPart a.rgCurrentPage,
.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgNumPart a.rgCurrentPage:hover,
.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgNumPart a:active,
.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgPagePrev:active,
.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgPageNext:active,
.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgPageFirst:active,
.RadGrid.RadGrid_MetroTouch .rgPagerCell .rgPageLast:active,
.RadGrid.RadGrid_MetroTouch .rgPager .rgPagerCell .rgPagerButton,
.RadGrid.RadGrid_MetroTouch .rgPager .rgPagerCell .rgPagerButton:hover,
.RadGrid.RadGrid_MetroTouch .rgPager .rgPagerCell .rgActionButton:hover,
.RadGrid.RadGrid_Metro .rgPagerCell .rgNumPart a.rgCurrentPage,
.RadGrid.RadGrid_Metro .rgPagerCell .rgNumPart a.rgCurrentPage,
.RadGrid.RadGrid_Metro .rgPagerCell .rgNumPart a.rgCurrentPage:hover,
.RadGrid.RadGrid_Metro .rgPagerCell .rgNumPart a:active,
.RadGrid.RadGrid_Metro .rgPagerCell .rgPagePrev:active,
.RadGrid.RadGrid_Metro .rgPagerCell .rgPageNext:active,
.RadGrid.RadGrid_Metro .rgPagerCell .rgPageFirst:active,
.RadGrid.RadGrid_Metro .rgPagerCell .rgPageLast:active,
.RadGrid.RadGrid_Metro .rgPager .rgPagerCell .rgPagerButton,
.RadGrid.RadGrid_Metro .rgPager .rgPagerCell .rgPagerButton:hover,
.RadGrid.RadGrid_Metro .rgPager .rgPagerCell .rgActionButton:hover {
  background-color: var(--primary-blue);
  border-color: var(--primary-blue);
  text-decoration: none;
  color: #fff !important;
}

.RadGrid.RadGrid_MetroTouch .rgHeader,
.RadGrid.RadGrid_MetroTouch .rgHeader:first-child,
.RadGrid.RadGrid_MetroTouch th.rgResizeCol,
.RadGrid.RadGrid_MetroTouch th.rgResizeCol:first-child,
.RadGrid.RadGrid_MetroTouch .rgRow td,
.RadGrid.RadGrid_MetroTouch .rgRow td:first-child,
.RadGrid.RadGrid_MetroTouch .rgAltRow td,
.RadGrid.RadGrid_MetroTouch .rgAltRow td:first-child,
.RadGrid.RadGrid_MetroTouch .rgEditRow > td,
.RadGrid.RadGrid_MetroTouch .rgEditRow > td:first-child,
.RadGrid.RadGrid_MetroTouch .rgFooter td,
.RadGrid.RadGrid_MetroTouch .rgFooter td:first-child,
.RadGrid.RadGrid_MetroTouch .rgFilterRow td,
.RadGrid.RadGrid_MetroTouch .rgFilterRow td:first-child,
.RadGrid.RadGrid_MetroTouch .rgNoRecords td,
.RadGrid.RadGrid_MetroTouch .rgNoRecords td:first-child,
.RadGrid.RadGrid_Metro .rgHeader,
.RadGrid.RadGrid_Metro .rgHeader:first-child,
.RadGrid.RadGrid_Metro th.rgResizeCol,
.RadGrid.RadGrid_Metro th.rgResizeCol:first-child,
.RadGrid.RadGrid_Metro .rgRow td,
.RadGrid.RadGrid_Metro .rgRow td:first-child,
.RadGrid.RadGrid_Metro .rgAltRow td,
.RadGrid.RadGrid_Metro .rgAltRow td:first-child,
.RadGrid.RadGrid_Metro .rgEditRow > td,
.RadGrid.RadGrid_Metro .rgEditRow > td:first-child,
.RadGrid.RadGrid_Metro .rgFooter td,
.RadGrid.RadGrid_Metro .rgFooter td:first-child,
.RadGrid.RadGrid_Metro .rgFilterRow td,
.RadGrid.RadGrid_Metro .rgFilterRow td:first-child,
.RadGrid.RadGrid_Metro .rgNoRecords td,
.RadGrid.RadGrid_Metro .rgNoRecords td:first-child {
  font-weight: 500;
  font-family: var(--primary-font);
}

.RadGrid .rgNoRecords TD {
  color: var(--dark-gray);
  font-size: 16px;
}

.rgHeader.rgExpandCol {
  font: initial;
  line-height: 1.15;
}

.RadScheduler_Metro,
.RadScheduler_Metro a,
.RadScheduler_Metro input,
.RadScheduler_Metro select,
.RadScheduler_Metro textarea {
  font: normal 13px/22px var(--primary-font) !important;
}

.RadScheduler_Metro .rsHeader ul a,
.RadScheduler_Metro .rsHeader ul .rsSelected em {
  font-size: 13px !important;
}

/* Member Account Pages */
.mini-profile-banner-large .mini-profile-name-section .SectionLabel,
.mini-profile-banner-small .mini-profile-name-section .SectionLabel {
  font-family: var(--primary-font);
}

.account-banner-bg-color-mps-1 .account-banner-short .banner-top-bar {
  background-color: var(--primary-blue);
}

.large.donut-bite:before,
.large.donut-bite:after {
  background-color: var(--green) !important;
}

.account-banner-bg-color-5
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-5
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-5
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-5
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-5
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-5
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-red
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-red
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-red
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-red
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-red
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-red
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-purple
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-purple
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-purple
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-purple
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-purple
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-purple
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-1
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-1
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-1
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-1
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-1
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-1
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-2
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-2
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-2
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-2
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-2
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton),
.account-banner-bg-color-mps-2
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton) {
  border-width: 2px;
}

.account-banner-bg-color-5
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-5
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-5
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-5
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-5
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-5
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-red
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-red
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-red
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-red
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-red
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-red
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-purple
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-purple
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-purple
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-purple
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-purple
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-purple
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-1
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-1
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-1
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-1
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-1
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-1
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-2
  .account-banner
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-2
  .account-banner
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-2
  .account-banner
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-2
  .account-banner-short
  .area-top-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-2
  .account-banner-short
  .area-top-bar-left
  .TextButton:not(.PrimaryButton):hover,
.account-banner-bg-color-mps-2
  .account-banner-short
  .area-top-bar-right
  .TextButton:not(.PrimaryButton):hover {
  color: var(--primary-blue);
}

.account-banner-short .Alerts .AlertItem {
  background: white;
}

a:not(.aspNetDisabled):hover .sysicon.sysicon-edit:after,
a:not(.aspNetDisabled):focus .sysicon.sysicon-edit:after,
a:not(.aspNetDisabled):hover .sysicon--before.sysicon-edit:before,
a:not(.aspNetDisabled):focus .sysicon--before.sysicon-edit:before,
a:not(.aspNetDisabled):hover .sysicon--after.sysicon-edit:after,
a:not(.aspNetDisabled):focus .sysicon--after.sysicon-edit:after,
a.sysicon.sysicon-edit:not(.aspNetDisabled):hover:after,
a.sysicon.sysicon-edit:not(.aspNetDisabled):focus:after,
a.sysicon--before.sysicon-edit:not(.aspNetDisabled):hover:before,
a.sysicon--before.sysicon-edit:not(.aspNetDisabled):focus:before,
a.sysicon--after.sysicon-edit:not(.aspNetDisabled):hover:after,
a.sysicon--after.sysicon-edit:not(.aspNetDisabled):focus:after,
button.sysicon.sysicon-edit:not([disabled]):hover:after,
button.sysicon--before.sysicon-edit:not([disabled]):hover:before,
button.sysicon--after.sysicon-edit:not([disabled]):hover:after,
button.sysicon.sysicon-edit:not([disabled]):focus:after,
button.sysicon--before.sysicon-edit:not([disabled]):focus:before,
button.sysicon--after.sysicon-edit:not([disabled]):focus:after,
a:not(.aspNetDisabled):hover .sysicon.sysicon-copy:after,
a:not(.aspNetDisabled):focus .sysicon.sysicon-copy:after,
a:not(.aspNetDisabled):hover .sysicon--before.sysicon-copy:before,
a:not(.aspNetDisabled):focus .sysicon--before.sysicon-copy:before,
a:not(.aspNetDisabled):hover .sysicon--after.sysicon-copy:after,
a:not(.aspNetDisabled):focus .sysicon--after.sysicon-copy:after,
a.sysicon.sysicon-copy:not(.aspNetDisabled):hover:after,
a.sysicon.sysicon-copy:not(.aspNetDisabled):focus:after,
a.sysicon--before.sysicon-copy:not(.aspNetDisabled):hover:before,
a.sysicon--before.sysicon-copy:not(.aspNetDisabled):focus:before,
a.sysicon--after.sysicon-copy:not(.aspNetDisabled):hover:after,
a.sysicon--after.sysicon-copy:not(.aspNetDisabled):focus:after,
button.sysicon.sysicon-copy:not([disabled]):hover:after,
button.sysicon--before.sysicon-copy:not([disabled]):hover:before,
button.sysicon--after.sysicon-copy:not([disabled]):hover:after,
button.sysicon.sysicon-copy:not([disabled]):focus:after,
button.sysicon--before.sysicon-copy:not([disabled]):focus:before,
button.sysicon--after.sysicon-copy:not([disabled]):focus:after,
a:not(.aspNetDisabled):hover .sysicon.sysicon-expanded:after,
a:not(.aspNetDisabled):focus .sysicon.sysicon-expanded:after,
a:not(.aspNetDisabled):hover .sysicon--before.sysicon-expanded:before,
a:not(.aspNetDisabled):focus .sysicon--before.sysicon-expanded:before,
a:not(.aspNetDisabled):hover .sysicon--after.sysicon-expanded:after,
a:not(.aspNetDisabled):focus .sysicon--after.sysicon-expanded:after,
a.sysicon.sysicon-expanded:not(.aspNetDisabled):hover:after,
a.sysicon.sysicon-expanded:not(.aspNetDisabled):focus:after,
a.sysicon--before.sysicon-expanded:not(.aspNetDisabled):hover:before,
a.sysicon--before.sysicon-expanded:not(.aspNetDisabled):focus:before,
a.sysicon--after.sysicon-expanded:not(.aspNetDisabled):hover:after,
a.sysicon--after.sysicon-expanded:not(.aspNetDisabled):focus:after,
button.sysicon.sysicon-expanded:not([disabled]):hover:after,
button.sysicon--before.sysicon-expanded:not([disabled]):hover:before,
button.sysicon--after.sysicon-expanded:not([disabled]):hover:after,
button.sysicon.sysicon-expanded:not([disabled]):focus:after,
button.sysicon--before.sysicon-expanded:not([disabled]):focus:before,
button.sysicon--after.sysicon-expanded:not([disabled]):focus:after {
  background: var(--green);
}

.RadTabStripVertical .rtsUL .rtsSelected .rtsTxt,
.RadTabStripVertical .rtsUL .rtsLink:hover .rtsTxt {
  border: 1px solid transparent;
}

.member-profile
  .mini-profile-banner-large
  .mini-profile-name-section
  .SectionLabel,
.member-profile
  .mini-profile-banner-small
  .mini-profile-name-section
  .SectionLabel {
  font-weight: 700;
  color: var(--secondary-blue);
}

.blue-heading h1,
.blue-heading h2,
.blue-heading h3,
.blue-heading h4,
.blue-heading h5,
.blue-heading h6 {
  color: var(--secondary-blue);
}

.stacked-tabs .select-tab {
  background: var(--primary-blue);
}

.RadTabStrip .rtsLevel1.stacked-list a.rtsLink:hover,
.RadTabStrip .rtsLevel1.stacked-list a.rtsLink:focus,
.RadTabStrip .rtsLevel1.stacked-list a.rtsLink:active,
.RadTabStrip .rtsLevel1.stacked-list a.rtsLink.rtsSelected:hover,
.RadTabStrip .rtsLevel1.stacked-list a.rtsLink.rtsSelected:focus,
.RadTabStrip .rtsLevel1.stacked-list a.rtsLink.rtsSelected:active,
.RadTabStrip .rtsLevel1.stacked-list .rtsFirst a.rtsLink:hover,
.RadTabStrip .rtsLevel1.stacked-list .rtsFirst a.rtsLink:focus,
.RadTabStrip .rtsLevel1.stacked-list .rtsFirst a.rtsLink:active,
.RadTabStrip .rtsLevel1.stacked-list .rtsFirst a.rtsLink.rtsSelected:hover,
.RadTabStrip .rtsLevel1.stacked-list .rtsFirst a.rtsLink.rtsSelected:focus,
.RadTabStrip .rtsLevel1.stacked-list .rtsFirst a.rtsLink.rtsSelected:active {
  color: var(--primary-blue) !important;
}

.RadTreeView.GLE a:hover,
.RadTreeView.GLE a:focus,
.RadTreeView.GLE span[onclick]:hover,
.RadTreeView.GLE span[onclick]:focus {
  background-color: transparent;
  color: var(--primary-blue);
}

.account-banner-short {
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

.RadMultiPage {
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

/* ------------- Member Home ------------- */
.orders .card {
  border: none;
}

.mhp .CommunityCommentItem,
.mhp .CommunityTopicItem,
.account-page .CommunityCommentItem,
.account-page .CommunityTopicItem {
  border: none;
}

/* Alerts */
.Alerts .AlertItem {
  border: none;
}

/* Pagination */
.page-item.active .page-link {
  background: var(--secondary-blue);
  border-color: var(--secondary-blue);
}

.page-link {
  color: var(--secondary-blue);
}

.page-link:hover {
  color: var(--secondary-blue);
}

/* ------------- Home Page ------------- */

/* Slideshow */
.banner-slideshow-wrapper .panel-body {
  padding: 0;
}

/* Intro */
.intro-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 30px 8% 30px;
}

.intro-wrapper p {
  margin: 0;
}

/* Cards */
.grid-cards-container {
  display: grid;
  gap: 20px;
  padding: 20px;
  max-width: 1200px;
  margin: 0 auto;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  justify-items: start;
}

.grid-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  background-color: var(--white);
  border-radius: 10px;
  padding: 35px 20px;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.33, 2, 0.8, 1);
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  color: inherit;
}

.grid-card:hover {
  transform: scale(1.03);
  box-shadow: 0.5rem 0.5rem 1.75rem rgba(0, 0, 0, 0.15);
  text-decoration: none;
}

.card-icon {
  margin-bottom: 15px;
}

.card-icon em {
  font-size: 48px;
  color: var(--primary-blue);
}

.card-title {
  font-size: 24px;
  font-weight: 700;
  color: var(--primary-blue);
  margin-bottom: 10px;
}

.card-description {
  font-size: 16px;
  line-height: 1.5;
  color: var(--text-color);
  margin-bottom: 20px;
  flex-grow: 1;
}

.card-cta {
  font-size: 15px;
  font-weight: 600;
  color: var(--secondary-blue);
  text-transform: uppercase;
  transition: all 0.2s ease-in-out;
}

@media (max-width: 992px) {
  .grid-cards-container {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  }
}

@media (max-width: 576px) {
  .grid-cards-container {
    grid-template-columns: 1fr;
    justify-items: center;
  }
  .grid-card {
    width: 100%;
    max-width: 350px;
  }
}

/* News and Events Section */
#ATSHome .events-row {
  --bs-gutter-x: 30px;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px;
}

@media (max-width: 1050px) {
  #ATSHome .events-row {
    flex-direction: column;
  }

  #ATSHome .events-col {
    width: 100%;
    margin-bottom: 35px;
  }
}

.event-list-iqa .QueryTemplateItem {
  border-bottom: 1px solid var(--gray-border);
  padding: 15px 0;
}

.event-list-iqa .eventList .title {
  font-size: 17px;
}

.event-list-iqa h2.panel-title {
  padding-bottom: 10px;
  display: inline-block;
  font-size: 24px;
}

.event-list-iqa h2.panel-title::after {
  content: "";
  position: absolute;
  display: block;
  height: 2px;
  background-color: var(--green);
  width: 80px;
  bottom: 0;
  left: 0;
}

.events-row a.btn.PrimaryButton {
  margin-left: 10px;
}

.news-home-wrapper h2.panel-title {
  padding-bottom: 10px;
  display: inline-block;
  font-size: 24px;
}

.news-home-wrapper h2.panel-title::after {
  content: "";
  position: absolute;
  display: block;
  height: 2px;
  background-color: var(--green);
  width: 80px;
  bottom: 0;
  left: 0;
}

.news-home-wrapper .home-news {
  border-bottom: 1px solid var(--gray-border);
  padding: 15px 0;
}

.news-home-wrapper .home-news a {
  font-size: 17px;
}

/* ------------- Staff Page ------------- */
.staff-container {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.staff-container h1 {
  margin: 0;
}

.staff-card {
  background-color: #ffffff;
  border-radius: 12px;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: flex-start;
  padding: 32px;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.staff-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

.staff-photo-wrapper {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  border: 4px solid var(--light-blue);
  overflow: hidden;
  margin-right: 32px;
}

.staff-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
}

.staff-details {
  flex: 1;
}

.staff-details .staff-name {
  margin: 0 0 5px 0;
  font-size: 22px;
  font-weight: 700;
  color: var(--primary-blue);
  line-height: 1.4;
}

.staff-details .staff-title {
  margin: 0 0 5px 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--secondary-blue);
}

.staff-details .staff-email {
  margin: 0 0 16px 0;
  font-size: 16px;
}

.staff-details a {
  color: var(--green);
  text-decoration: none;
  font-weight: 600;
}

.staff-bio {
  font-size: 16px;
  color: var(--text-color);
  margin: 0;
}

.read-more-container .more-text {
  display: none;
}

.readmore-toggle-btn {
  background-color: transparent;
  color: var(--green);
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  padding: 0;
  text-align: left;
  display: block;
  margin-top: 10px;
}

@media (max-width: 768px) {
  .staff-card {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .staff-photo-wrapper {
    margin-right: 0;
    margin-bottom: 24px;
  }

  .staff-details {
    text-align: center;
  }

  .read-more-container {
    text-align: left;
  }
}

.additional-staff {
  margin-top: 50px;
}

.additional-staff p {
  margin: 0;
  line-height: 1.3;
}

/* ------------- Institutional Membership Types Page------------- */

img.become-member-image {
  width: 245px;
  margin: 30px 0 40px;
  transition: all 0.3s ease-in-out;
}

a.become-member-link:hover .become-member-image {
  transform: scale(1.07);
}

.inst-membership-wrapper h3 {
  font-size: 24px;
  text-transform: uppercase;
  margin: 40px 0 10px;
}

.member-relations-wrapper p {
  margin: 0;
}

.refund-policy {
  margin-top: 25px !important;
}

.refund-policy a {
  font-weight: 400;
}

.criteria-container-header {
  padding: 5px 20px;
  text-align: center;
  font-size: 24px;
  margin-bottom: 25px;
  border-radius: 5px;
}

.criteria-container-header p {
  margin: 0;
  font-weight: 600;
}

.membership-cards-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px;
  padding: 20px 0;
}

.membership-cards-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px;
  padding: 20px 0;
}

.membership-card {
  display: flex;
  flex-direction: column;
  flex: 1 1 285px;
  max-width: 285px;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  background-color: #fff;
  transition: transform 0.2s ease-in-out;
}

.membership-card:hover {
  transform: translateY(-5px);
}

.membership-header {
  padding: 15px;
  text-align: center;
  border-bottom: 1px solid #e0e0e0;
  position: relative;
  height: 118px;
  padding-top: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.health-system .membership-header {
  height: 180px;
}

.membership-header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 6px;
}

.blue-accent::before {
  background-color: var(--secondary-blue);
}
.green-accent::before {
  background-color: var(--green);
}
.darkblue-accent::before {
  background-color: var(--primary-blue);
}
.red-accent::before {
  background-color: var(--red);
}

.membership-header h3 {
  font-size: 20px;
  color: var(--primary-blue);
  margin: 0;
  line-height: 1.4;
}

.membership-body {
  padding: 20px;
  flex-grow: 1;
  text-align: left;
}

.membership-body h4 {
  font-size: 18px;
  color: var(--primary-blue);
  margin-top: 0;
  margin-bottom: 10px;
  font-weight: bold;
}

.membership-body ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.membership-body ul li {
  margin-bottom: 5px;
  padding-left: 15px;
  position: relative;
  font-size: 16px;
  color: var(--primary-blue);
}

.membership-body ul li::before {
  content: "•";
  color: var(--primary-blue);
  position: absolute;
  left: 0;
  top: 0;
}

.membership-price {
  padding: 12px;
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  color: var(--primary-blue);
  border-top: 1px solid #e0e0e0;
}

.membership-price span {
  display: block;
}

.membership-note {
  text-align: center;
  margin-top: 30px;
  padding: 15px 20px;
  background-color: var(--primary-blue);
  border-radius: 5px;
  margin-left: auto;
  margin-right: auto;
}

.membership-note p {
  margin: 0;
  color: white;
}

@media (max-width: 768px) {
  .membership-card {
    flex-basis: 90%;
    max-width: 100%;
  }

  .membership-cards-container {
    gap: 20px;
  }
}

/* ------------- ATS Position Statements Page------------- */

.comments-section {
  margin-top: 50px;
  line-height: 1;
}

.comments-section h4 {
  margin: 0;
}

.position-statement-abstract {
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 25px;
  background-color: var(--lighter-blue);
  border: 1px solid var(--light-blue);
}

.position-statement-abstract h3 {
  margin-top: 0;
  color: var(--primary-blue);
}

.position-statement-abstract a {
  display: inline-block;
  margin-top: 10px;
  color: var(--green);
  text-decoration: underline;
  font-weight: bold;
}

.statements-container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(275px, 1fr));
  grid-auto-rows: 1fr;
  gap: 30px;
}

.statement-card {
  text-align: center;
  text-decoration: none;
  color: var(--treen);
  background-color: var(--white);
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.statement-card:visited {
  color: var(--primary-blue);
}

.statement-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.1);
  color: var(--primary-blue);
  text-decoration: none;
}

.statements-container .statement-title {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 10px;
  line-height: 1.3;
  color: var(--primary-blue);
}

.statement-card em {
  font-size: 58px;
  color: var(--secondary-blue);
  margin-bottom: 25px;
}

.statement-card .read-more {
  font-size: 16px;
  font-weight: 600;
  color: var(--green);
  display: block;
  margin-top: auto;
}

.statement-card .read-more em {
  color: var(--green);
  font-size: 16px;
  margin-left: 5px;
  transition: transform 0.3s;
}

.statement-card:hover .read-more em {
  transform: translateX(5px);
}

/* Accordion Section */
.accordion-section {
  padding: 60px 20px;
}

@media (max-width: 600px) {
  .accordion-section {
    padding: 30px 20px;
  }
}

.accordion-item {
  background-color: #ffffff;
  border-left: 5px solid var(--red);
  border-radius: 8px;
  margin-bottom: 10px;
  overflow: hidden;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.05);
  transition:
    box-shadow 0.3s ease,
    transform 0.3s ease;
}

.accordion-item:hover {
  box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.2);
  transform: translateY(-5px);
}

.accordion-header {
  width: 100%;
  background-color: #ffffff;
  padding: 15px 20px;
  border: none;
  text-align: left;
  font-family: var(--primary-font);
  font-size: 21px;
  color: var(--primary-blue);
  font-weight: 600;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: all 0.3s ease;
}

.accordion-item.open .accordion-header {
  color: var(--green);
}

.accordion-header .icon {
  font-size: 21px;
  color: var(--primary-blue);
  transition: transform 0.3s ease;
}

.accordion-item.open .accordion-header .icon {
  transform: rotate(180deg);
  color: var(--green);
}

.accordion-content {
  padding: 0px 20px;
  max-height: 0px;
  overflow: hidden;
  transition:
    max-height 0.3s ease-out,
    padding 0.3s ease-out;
  background-color: #ffffff;
}

.accordion-item.open .accordion-content {
  padding-bottom: 20px;
}

.accordion-content p {
  font-size: 18px;
  font-weight: 500;
  color: var(--primary-blue);
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .accordion-header {
    font-size: 18px;
    padding: 15px;
  }

  .accordion-content {
    padding: 0px 15px;
  }

  .accordion-item.open .accordion-content {
    padding-bottom: 15px;
  }
}

/* ------------------------------------------------------- */
/* Institutional Memberships Page                          */
/* ------------------------------------------------------- */

.institutional-members-image-wrapper {
  margin-bottom: 40px;
}

.institutional-members-image-wrapper img {
  width: 100%;
}

.centered-title {
  position: relative;
  text-align: center;
  padding-bottom: 10px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.centered-title::after {
  content: "";
  display: block;
  height: 2px;
  background-color: var(--green);
  width: 8%;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

#A-Z-Navigation-Wrapper {
  width: 100%;
  margin: 30px 0;
  text-align: center;
  padding-bottom: 10px;
}

.a-z-nav-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.a-z-nav-menu li {
  display: inline;
  font-size: 22px;
  padding: 0 5px;
  color: var(--gray-border);
}

.a-z-nav-menu a {
  text-decoration: none;
  font-weight: bold;
  color: var(--green);
  font-size: 20px;
  padding: 2px 0;
  transition: all 0.3s ease-in-out;
}

.a-z-nav-menu a:hover {
  color: var(--dark-green);
}

@media (max-width: 550px) {
  .a-z-nav-menu li {
    padding: 0 2px;
  }
}

.institutional-members-wrapper {
  margin: 30px auto;
}

.alpha-group {
  font-size: 26px;
  font-weight: 700;
  color: var(--primary-blue);
  text-transform: uppercase;
  padding-top: 100px;
  margin-top: -100px;
  margin-bottom: 10px;
  border-bottom: 2px solid var(--green);
  padding-bottom: 5px;
}

.names-4-column {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 5px 30px;
  margin-bottom: 40px;
}

.names-4-column p {
  font-size: 16px;
  font-weight: 600;
  margin: 0;
  padding: 5px 0;
  line-height: 1.3;
  color: var(--primary-blue);
}

@media (max-width: 992px) {
  .names-4-column {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 576px) {
  .names-4-column {
    grid-template-columns: 1fr;
  }
  .institutional-members-wrapper {
    margin-left: 10px;
    margin-right: 10px;
  }
}

/* ------------------------------------------------------- */
/* ATS Board of Directors Page                             */
/* ------------------------------------------------------- */

.intro-text {
  font-size: 17px;
  line-height: 1.6;
  margin-bottom: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--light-blue);
}

.executive-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.executive-leadership-iqa .QueryTemplateSet {
  margin: 0 auto 20px !important;
  gap: 30px 0;
}

.executive-leadership-iqa .QueryTemplateItem {
  height: 100%;
}

.executive-card {
  background-color: #ffffff;
  border: 1px solid var(--light-blue);
  border-radius: 8px;
  overflow: hidden;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  height: 100%;
  transition:
    transform 0.3s,
    box-shadow 0.3s;
}

.executive-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.executive-card-image-container {
  width: 100%;
  padding-bottom: 100%;
  position: relative;
  overflow: hidden;
}

.executive-card img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.executive-info {
  text-align: left;
  padding: 20px;
}

.executive-info h4 {
  font-size: 18px;
  font-weight: 700;
  color: var(--primary-blue);
  margin-top: 6px;
  margin-bottom: 5px;
}

.executive-info h4:after {
  content: "";
  display: block;
  margin-top: 5px;
  height: 1px;
  background-image: linear-gradient(90deg, var(--secondary-blue), var(--red));
}

.executive-info p {
  font-size: 15px;
  line-height: 1.4;
  padding-top: 5px;
  margin: 0;
  color: #555;
}

.executive-info .title {
  font-weight: 700;
  color: var(--secondary-blue);
  margin-top: 2px;
  padding: 0;
}

/* Board of Directors */

.board-of-directors-iqa .QueryTemplateSet {
  gap: 30px 0;
}

.board-of-directors-iqa .QueryTemplateItem {
  height: 100%;
}

.board-grid {
  display: grid;
  gap: 30px;
  margin-top: 30px;
  grid-template-columns: 1fr;
}

@media (max-width: 768px) {
  .executive-leadership-iqa .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
}

@media (max-width: 650px) {
  .executive-leadership-iqa .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 100%;
  }
}

@media (min-width: 768px) {
  .board-grid {
    grid-template-columns: 1fr 1fr;
  }
}

.board-card {
  display: flex;
  background-color: white;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(25, 71, 121, 0.1);
  transition:
    transform 0.3s,
    box-shadow 0.3s;
  padding: 20px;
  height: 100%;
}

.board-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.board-card-image {
  flex-shrink: 0;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  overflow: hidden;
  margin-right: 20px;
}

.board-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.board-info {
  flex-grow: 1;
}

.board-info h4 {
  font-size: 19px;
  font-weight: 700;
  color: var(--primary-blue);
  margin: 0 0 5px 0;
}

.board-info .role {
  font-weight: 700;
  color: var(--secondary-blue);
  margin: 5px 0 10px 0;
  font-size: 16px;
  line-height: 1.3;
  display: block;
}

.board-info p {
  font-size: 15px;
  line-height: 1.5;
  margin: 0;
  color: #555;
}

@media (max-width: 768px) {
  .board-of-directors-iqa .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
}

@media (max-width: 650px) {
  .board-of-directors-iqa .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 100%;
  }
}

@media (max-width: 550px) {
  .board-card {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .board-card-image {
    width: 100px;
    height: 100px;
    margin-right: 0;
    margin-bottom: var(--spacing-md);
  }

  .board-info h4 {
    margin-top: 10px;
  }

  .board-info .role {
    margin: 5px 0 10px 0;
  }

  .board-of-directors-iqa section {
    flex: 1 0 100%;
  }
}

/* ------------------------------------------------------- */
/* Member Spotlight Page                                   */
/* ------------------------------------------------------- */

.ms-container {
  margin: 50px auto;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  padding: 30px;
  border-left: 8px solid var(--red);
}

.ms-header {
  display: flex;
  flex-direction: column;
  border-bottom: 2px solid var(--light-blue);
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.ms-header h1 {
  color: var(--primary-blue);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 5px;
}

.ms-header .title-info {
  font-size: 16px;
  color: var(--secondary-blue);
  font-weight: 700;
  margin-bottom: 5px;
}

.ms-content {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

.ms-content .image-section {
  flex-shrink: 0;
  width: 300px;
  position: relative;
}

.ms-content .image-frame {
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  position: relative;
}

.ms-content .image-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.ms-content .text-section {
  flex-grow: 1;
  padding-left: 20px;
}

.ms-content .text-section p {
  margin-bottom: 20px;
  font-size: 18px;
  color: var(--primary-blue);
  text-align: justify;
}

.fun-facts {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px dashed var(--light-blue);
}

.fun-facts strong,
.contact strong {
  display: block;
  margin-bottom: 5px;
  color: var(--primary-blue);
  font-weight: 700;
}

.contact a {
  word-break: break-all;
}

@media (max-width: 768px) {
  .ms-container {
    padding: 20px;
    border-left: 6px solid var(--red);
  }

  .ms-content {
    flex-direction: column;
  }

  .ms-content .image-section {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }

  .ms-content .text-section {
    padding-left: 0;
  }
}

.contacts-wrapper {
  display: flex;
  flex-direction: column;
}

.contacts-wrapper span {
  font-weight: 600;
}

/* ------------------------------------------------------- */
/* Individual Membership Page                              */
/* ------------------------------------------------------- */

.page-title {
  font-size: 32px;
  font-weight: 600;
}

.page-title::after {
  content: "";
  position: absolute;
  display: block;
  height: 2px;
  background-color: var(--green);
  width: 75px;
  bottom: -11px;
  left: 0;
}

.video-responsive-container {
  position: relative;
  width: 92%;
  padding-top: 56.25%;
  margin: 25px 0 50px;
  overflow: hidden;
}

.video-responsive-container video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.membership-grid-wrapper {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
}

.membership-grid-wrapper .membership-card-container {
  width: 280px;
  height: 370px;
  margin: 16px;
  perspective: 1500px;
  border-radius: 6px;
}

.membership-grid-wrapper .ind-membership-card {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  border-radius: 8px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  transition: transform 1s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.membership-grid-wrapper .membership-more {
  display: none;
}

.membership-grid-wrapper .membership-more:checked + .ind-membership-card {
  transform: rotateY(180deg);
}

.membership-grid-wrapper .membership-front,
.membership-grid-wrapper .membership-back {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  border-radius: 6px;
  overflow: hidden;
}

.membership-grid-wrapper .membership-front .membership-inner,
.membership-grid-wrapper .membership-back .membership-inner {
  height: 100%;
  display: grid;
  padding: 24px;
  transform: translateZ(80px) scale(0.94);
}

.membership-grid-wrapper .membership-front {
  /* background: linear-gradient(
    40deg,
    var(--primary-blue),
    var(--secondary-blue)
  ); */
  background: white;
}

.membership-grid-wrapper .membership-front .membership-inner {
  grid-template-rows: 2fr 4fr 1fr;
  justify-items: center;
  align-items: center;
  position: relative;
  z-index: 2;
}

.membership-grid-wrapper .membership-front h2 {
  grid-row: 2;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--primary-blue);
  font-weight: 700;
  font-size: 24px;
  line-height: 1.2;
  text-align: center;
}

.membership-grid-wrapper .membership-front .membership-category-icon {
  grid-row: 1;
  font-size: 72px;
  color: var(--secondary-blue);
  margin-bottom: 3px;
}

.membership-grid-wrapper .membership-front .membership-description {
  grid-row: 3;
  color: var(--light-text-footer);
  font-size: 14px;
  text-align: center;
  margin-top: -16px;
  font-weight: 400;
}

.membership-description p {
  color: var(--primary-blue);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
}

.membership-grid-wrapper .membership-back {
  transform: rotateY(180deg);
  background-color: var(--white);
}

.membership-grid-wrapper .membership-back .membership-inner {
  grid-template-rows: 1fr 10fr 1fr;
  grid-template-columns: 1fr;
  justify-items: center;
}

.membership-grid-wrapper .membership-back h4 {
  grid-row: 1;
  color: var(--primary-blue);
  margin: 0;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 1px;
  padding-top: 10px;
  font-size: 18px;
  font-weight: 700;
}

.membership-grid-wrapper .membership-back h5 {
  font-size: 18px;
  text-align: center;
}

.membership-grid-wrapper .membership-back .membership-description {
  grid-row: 2;
  grid-column: 1;
  font-size: 14px;
  font-weight: 400;
  line-height: 26px;
  overflow-y: auto;
  color: var(--text-color);
  padding: 10px 10px 0;
  width: 100%;
}

.membership-grid-wrapper .membership-back .membership-description ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: center;
}

.membership-grid-wrapper .membership-back .membership-description li {
  padding: 14px 0;
  border-bottom: 1px solid var(--green);
}

.membership-grid-wrapper
  .membership-back
  .membership-description
  li:last-child {
  border-bottom: none;
}

.membership-grid-wrapper .membership-back .membership-description a {
  color: var(--primary-blue);
  text-decoration: none;
  font-weight: 700;
  display: block;
  line-height: 1.5;
  transition: color 0.2s;
}

.membership-grid-wrapper .membership-back .membership-description a:hover {
  text-decoration: underline;
  color: var(--social-icon-hover-blue);
}

.membership-grid-wrapper .membership-button {
  grid-row: -1;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  cursor: pointer;
  display: block;
  padding: 0 24px;
  height: 48px;
  line-height: 46px;
  min-width: 48px;
  background-color: var(--green);
  border: solid 2px var(--green);
  color: white;
  border-radius: 5px;
  text-align: center;
  position: relative;
  z-index: 100;
  backface-visibility: hidden;
  transition: all 0.3s ease-in-out;
}

.membership-grid-wrapper .membership-button:hover {
  background-color: var(--white);
  text-shadow: none;
  color: var(--green);
}

.membership-grid-wrapper .membership-button.return {
  line-height: 48px;
  background-color: var(--primary-blue);
  color: var(--white);
  border-color: var(--primary-blue);
  text-shadow: none;
  border-radius: 50%;
  height: 48px;
  width: 48px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.membership-grid-wrapper .membership-button.return:hover {
  background-color: transparent;
  color: var(--primary-blue);
  box-shadow: none;
}

.membership-grid-wrapper ::-webkit-scrollbar {
  width: 5px;
}

.membership-grid-wrapper ::-webkit-scrollbar-track {
  background: var(--light-gray-bg);
}

.membership-grid-wrapper ::-webkit-scrollbar-thumb {
  background: var(--secondary-blue);
}

.membership-grid-wrapper ::-webkit-scrollbar-thumb:hover {
  background: var(--primary-blue);
}

@media (max-width: 930px) {
  .membership-grid-wrapper .membership-card-container {
    width: 45%;
  }
}

@media (max-width: 620px) {
  .membership-grid-wrapper {
    max-width: 100%;
  }

  .membership-grid-wrapper .membership-card-container {
    width: 90%;
  }
}

/* ------------------------------------------------------- */
/* Contact Us Page                                         */
/* ------------------------------------------------------- */

.contact-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
  color: var(--primary-blue);
  font-weight: 700;
  font-size: 26px;
}

.contact-header i {
  color: var(--secondary-blue);
  font-size: 29px;
}

.contact-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  margin-top: 55px;
}

.office-info {
  background: var(--white);
  padding: 24px;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.office-info em {
  color: var(--green);
}

.office-name {
  font-weight: 700;
  font-size: 21px;
  color: var(--primary-blue);
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.office-name i {
  color: var(--green);
}

.contact-item {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  font-size: 16px;
}

.contact-item i {
  color: var(--secondary-blue);
  width: 20px;
  text-align: center;
  margin-top: 2px;
}

.contact-item strong {
  color: var(--primary-blue);
  min-width: 100px;
}

.contact-item a {
  color: var(--primary-blue);
  text-decoration: none;
  font-weight: 500;
}

.contact-item a:hover {
  text-decoration: underline;
}

.staff-section {
  background: var(--white);
  padding: 24px;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.staff-section .staff-title {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--primary-blue);
  font-weight: 700;
  font-size: 20px;
  margin-bottom: 20px;
  padding-bottom: 8px;
}

.staff-section .staff-title i {
  color: var(--green);
}

.staff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 16px;
}

.staff-member {
  background: var(--lighter-blue);
  padding: 16px;
  border-radius: 8px;
  border-left: 4px solid var(--secondary-blue);
  transition: all 0.3s ease-in-out;
}

.staff-member:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(25, 71, 121, 0.15);
}

.staff-section .staff-name {
  font-weight: 700;
  color: var(--primary-blue);
  margin-bottom: 4px;
  font-size: 17px;
}

.staff-role {
  font-size: 15px;
  color: var(--primary-blue);
}

@media (min-width: 992px) {
  .contact-content {
    grid-template-columns: 1fr 1.3fr;
  }
}

@media (max-width: 768px) {
  .contact-header {
    font-size: 22px;
  }
  .contact-card {
    padding: 24px;
  }
  .office-info,
  .staff-section {
    padding: 20px;
  }
}

@media (max-width: 480px) {
  .contact-item {
    flex-direction: column;
    gap: 4px;
  }
  .contact-item strong {
    min-width: auto;
  }
}

/* ------------------------------------------------------- */
/* Policy Resources Page                                   */
/* ------------------------------------------------------- */
.legislative-resources-container {
  margin: 20px auto 40px;
  font-family: Arial, sans-serif;
  color: var(--primary-blue);
}

.section-title {
  color: var(--primary-blue);
  padding-bottom: 5px;
  margin-bottom: 20px;
}

.subsection-title {
  font-size: 22px;
  margin-top: 25px;
  margin-bottom: 15px;
}

.resource-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.resource-list li {
  padding: 10px 0;
  border-bottom: 1px solid #eee;
}

.resource-list li {
  display: grid;
  grid-template-columns: 40% 60%;
  align-items: center;
}

.list-header {
  font-weight: bold;
  border-bottom: 1px solid #ccc !important;
  padding: 15px 0 !important;
}

.resource-list a {
  color: #007bff;
  text-decoration: none;
  transition: color 0.2s;
}

.resource-list li .website a {
  color: var(--green);
  transition: all 0.3s ease-in-out;
}

.resource-list li .website a:hover {
  color: var(--dark-green);
  text-decoration: underline;
}

@media (max-width: 600px) {
  .resource-list li {
    display: block;
    margin-bottom: 15px;
    padding: 10px;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
  }

  .list-header {
    display: none !important;
  }

  .resource-list li .resource {
    display: block;
    font-weight: bold;
    color: var(--primary-blue);
    margin-bottom: 5px;
    font-size: 1.1em;
  }

  .resource-list li .website {
    display: block;
    word-break: break-all;
    font-size: 0.9em;
  }

  .resource-list li .website a {
    color: var(--green);
  }
}

/* Interactive Map */

#interactive-map g:hover path,
#interactive-map g:hover polygon {
  fill: #194779 !important;
  transition: all 0.2s;
  filter: drop-shadow(10px 10px 10px #ccc) !important;
}

#interactive-map a:hover {
  text-decoration: none;
}

/* ------------------------------------------------------- */
/* Member Directory Page                                   */
/* ------------------------------------------------------- */

.member-directory-iqa table.rgMasterTable tbody .rgRow,
.member-directory-iqa table.rgMasterTable tbody .rgAltRow,
.member-directory-advanced-iqa table.rgMasterTable tbody .rgRow,
.member-directory-advanced-iqa table.rgMasterTable tbody .rgAltRow {
  display: none;
}

.member-directory-iqa table.rgMasterTable thead,
.member-directory-advanced-iqa table.rgMasterTable thead {
  display: none;
}

.member-directory-iqa .RadGrid_MetroTouch,
.member-directory-advanced-iqa .RadGrid_MetroTouch {
  border-color: transparent !important;
  box-shadow: none !important;
  background-color: transparent !important;
}

.member-directory-iqa .RadGrid.RadGrid_MetroTouch .rgMasterTable,
.member-directory-iqa .RadGrid.RadGrid_Metro .rgMasterTable,
.member-directory-advanced-iqa .RadGrid.RadGrid_MetroTouch .rgMasterTable,
.member-directory-advanced-iqa .RadGrid.RadGrid_Metro .rgMasterTable {
  background-color: transparent;
}

.directory-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 10px;
}

.member-directory-wrapper {
  display: block !important;
  margin: 0;
  padding: 0;
  height: 100%;
}

@media (max-width: 992px) {
  .directory-container {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }
}

@media (max-width: 576px) {
  .directory-container {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.member-directory-wrapper {
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  transition:
    transform 0.3s ease-in-out,
    box-shadow 0.3s ease-in-out;
  height: 100%;
}

.member-directory-wrapper:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}

.member-directory-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.mb-image {
  width: 100%;
  height: 245px;
  background-color: white;
  overflow: hidden;
}

.mb-image img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
  display: block;
}

.mb-content-wrapper {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 20px;
}

.mb-name {
  line-height: 1.3;
  color: var(--primary-blue);
  font-size: 18px;
  font-weight: 700;
  font-family: var(--primary-font);
}

.mb-name::after {
  content: "";
  display: block;
  margin-top: 5px;
  height: 1px;
  background-image: linear-gradient(90deg, var(--secondary-blue), var(--green));
}

.mb-location {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 600;
  color: var(--secondary-blue);
  font-family: var(--primary-font);
  text-decoration: none;
  margin-top: 5px;
  margin-bottom: 20px;
  padding-left: 5px;
  display: block;
}

.member-directory-card .card-button {
  margin-top: auto;
  padding: 5px 15px !important;
  font-size: 15px !important;
}

/* ------------------------------------------------------- */
/* ATS Course Calendar Page                                */
/* ------------------------------------------------------- */

.upcoming-events-iqa .RadGrid_MetroTouch {
  margin-top: 45px;
}

.upcoming-events-iqa .RadGrid_MetroTouch {
  border-color: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

.upcoming-events-iqa .RadGrid.RadGrid_MetroTouch .rgMasterTable,
.upcoming-events-iqa .RadGrid.RadGrid_Metro .rgMasterTable {
  background-color: transparent !important;
}

.upcoming-events-iqa .RadGrid_MetroTouch .rgHeader,
.upcoming-events-iqa .RadGrid_MetroTouch th.rgResizeCol,
.RadGrid_MetroTouch .rgHeaderWrapper {
  border-radius: 6px;
}

.upcoming-events-iqa .RadGrid_MetroTouch .rgHeader,
.upcoming-events-iqa .RadGrid_MetroTouch .rgHeader a {
  font-size: 22px;
}

.upcoming-events-iqa .RadGrid_MetroTouch .rgAltRow {
  background: transparent !important;
}

.upcoming-events-iqa .RadGrid.RadGrid_MetroTouch .rgSelectedRow {
  background-color: transparent !important;
  border-color: transparent !important;
}

.RadGrid.RadGrid_MetroTouch .rgSelectedRow a {
  color: var(--green) !important;
}

.RadGrid_MetroTouch .rgSelectedRow {
  color: var(--primary-blue);
}

.upcoming-event-card {
  background-color: #ffffff;
  padding: 20px;
  border-radius: 12px;
  margin: 5px 0;
  box-shadow: 0 2px 8px rgba(25, 71, 121, 0.1);
  transition:
    transform 0.3s ease-in-out,
    box-shadow 0.3s ease-in-out;
  border: 1px solid #f3f4f6;
}

.upcoming-event-card:hover {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
  transform: translateY(-5px);
}

.card-content-wrapper {
  display: flex;
  flex-direction: column;
  min-height: 110px;
  gap: 16px;
}

@media (min-width: 600px) {
  .upcoming-event-card {
    padding: 24px;
  }

  .card-content-wrapper {
    flex-direction: row;
    align-items: center;
    gap: 24px;
  }
}

.ats-logo img {
  width: 100px;
}

.event-info {
  flex-grow: 1;
}

.event-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--green) !important;
  margin-bottom: 4px;
}

.event-title:hover {
  color: var(--dark-green) !important;
}

.event-details-group {
  color: var(--primary-blue);
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.event-detail-item {
  display: flex;
  align-items: center;
  font-size: 16px;
}

.event-detail-item i {
  padding-right: 8px;
}

.event-detail-item span {
  color: var(--primary-blue);
}

.location-text {
  color: var(--primary-blue);
  font-style: normal;
}

.button-wrapper {
  flex-shrink: 0;
  width: 100%;
  margin-top: 12px;
}

@media (min-width: 600px) {
  .button-wrapper {
    width: auto;
    margin-top: 0;
  }
}

/* ------------------------------------------------------- */
/* Upcoming Webinars Page                                  */
/* ------------------------------------------------------- */

.upcoming-webinars-iqa thead {
  display: none;
}

/* ------------------------------------------------------- */
/* Footer Styles                                           */
/* ------------------------------------------------------- */

.footer-container {
  background-color: var(--dark-blue-footer);
  color: var(--light-text-footer);
  padding: 30px 5%;
  font-family: var(--primary-font);
  font-size: 14px;
}

.footer-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: 30px;
}

.footer-section {
  flex: 1;
  min-width: 250px;
  margin-right: 20px;
  margin-bottom: 20px;
}

.footer-section:last-child {
  margin-right: 0;
}

.footer-section h3 {
  color: var(--white);
  font-size: 20px;
  margin-bottom: 15px;
  text-transform: uppercase;
  font-weight: 600;
}

.contact-us p {
  font-size: 16px;
  margin-bottom: 8px;
  line-height: 1.5;
  color: var(--white);
}

.contact-us p.phone,
.contact-us p.email {
  margin-top: 15px;
}

.contact-us a {
  color: var(--light-text-footer);
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.contact-us a:hover {
  color: var(--secondary-blue);
}

.quick-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.quick-links li {
  margin-bottom: 8px;
}

.quick-links a {
  color: var(--white);
  text-decoration: none;
  font-size: 16px;
  transition: all 0.3s ease-in-out;
}

.quick-links a:hover {
  color: var(--secondary-blue);
}

.action-buttons {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-end;
  min-width: 200px;
  flex-grow: 0;
}

.action-btn {
  width: 100%;
  max-width: 200px;
  padding: 12px 20px;
  border: none;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  text-align: center;
  text-transform: uppercase;
  transition: all 0.3s ease-in-out;
}

.action-btn:hover {
  color: var(--white);
  text-decoration: none;
}

.manage-profile {
  background-color: var(--secondary-blue);
  color: var(--white);
}

.manage-profile:hover {
  background-color: var(--social-icon-hover-blue);
}

.contact-us-btn {
  background-color: var(--red);
  color: var(--white);
}

.contact-us-btn:hover {
  background-color: var(--dark-red);
}

.action-btn:visited {
  color: var(--white);
}

.faqs {
  background-color: var(--teal);
  color: var(--white);
}
.faqs:hover {
  background-color: #3b8f9f;
}

.footer-bottom {
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 20px;
}

.footer-divider {
  border: none;
  border-top: 1px solid var(--divider-gray);
  margin: 0 0 20px 0;
}

.bottom-content-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.copyright {
  margin: 0;
  font-size: 14px;
  flex-grow: 1;
  margin-bottom: 10px;
  color: var(--white);
}

.social-media-links {
  display: flex;
  gap: 10px;
  margin-bottom: 10px;
}

.social-media-links a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 35px;
  height: 35px;
  padding: 2px 0 0 1px;
  background-color: var(--secondary-blue);
  border-radius: 50%;
  color: var(--white);
  font-size: 18px;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.social-media-links a:hover {
  background-color: var(--social-icon-hover-blue);
}

@media (max-width: 768px) {
  .footer-content {
    flex-direction: column;
    align-items: center;
  }

  .footer-section {
    margin-right: 0;
    margin-bottom: 30px;
    width: 100%;
    text-align: center;
  }

  .footer-section h3 {
    text-align: center;
  }

  .action-buttons {
    align-items: center;
  }

  .bottom-content-wrapper {
    flex-direction: column;
    text-align: center;
  }

  .copyright {
    margin-bottom: 15px;
  }
}

@media (max-width: 480px) {
  .footer-container {
    padding: 20px 3%;
  }

  .footer-section h3 {
    font-size: 16px;
  }

  .contact-us p,
  .quick-links a,
  .action-btn {
    font-size: 14px;
  }

  .action-btn {
    padding: 10px 15px;
  }

  .social-media-links a {
    width: 30px;
    height: 30px;
    font-size: 16px;
  }
}

/* ------------------------------------------------------- */
/* News Page                                               */
/* ------------------------------------------------------- */

.ats-news .BlockTLItem {
  padding: 20px 0;
}

.ats-news h4,
.ats-news p {
  margin: 0;
}

.news-date-author {
  margin-bottom: 30px;
}

.news-date-author p {
  margin: 0;
}
