.interesGroupFrame .HeaderTextSmall {
  display: none;
}

.contribution-nav {
  display: none;
}

.MCBlogCategoryLinks {
  padding: 0px 0px 20px 0px;
}

.MCBlogPostDataContainer {
  padding: 0px 0px 0px 0px;
}

.MCBlogPostDataContainer>p {
  font-size: 14px;
}

.MCBlogAuthorPhotoContainer {
  margin: 5px 10px;
}

.body-list {
  font-weight: 300;
  font-size: 18px;
}

section {
  scroll-margin-top: 140px;
}

.body-list>li {
  line-height: 26px;
}

.avatarPic {
  object-fit: cover;
}

.seeAll {
  text-decoration: none;
}

.shallow {
  box-shadow: none!important;
  border: none!important;
}

.MCBlogListEntryContainer {
  border: 0;
  border-top: 1px solid #eee;
  padding: 10px 0px 15px 0px;
}

.homeEventContainer {
  padding: 40px 0px 70px 0px;
}

.contribution>.title-blue {
  margin: 25px 0px 0px 0px;
}

li a:active {
  background: none!important;
  text-shadow: none;
  box-shadow: none;
}

span.cle-bubble {
  background-color: #DEDEDE;
  border-radius: 5px;
  padding: 3px;
}

.evRegV2 .evreg-card {
  box-shadow: none!important;
}

.evRegV2 .evreg-btn-outline-primary:hover {
  background: #39506b;
  color: #fff;
}

.evRegV2 .evreg-btn-outline-primary {
  box-shadow: none!important;
  border-style: none;
  border: 1px solid rgba(0,0,0,0.2)!important;
  color: #333;
}

.btn-info {
  text-shadow: none;
  box-shadow: none;
  background-image: none;
  border-color: #2f96b4;
}

.btn.active, .btn:active {
  box-shadow: none;
  -webkit-box-shadow: none;
}

.btn {
  text-shadow: none!important;
  transition: all .2s ease
}

.label, .badge {
  text-shadow: none!important;
}

.alert {
  text-shadow: none;
}

.alert > .close {
  text-shadow: none;
  color: inherit;
  opacity: 0.75;
  filter: alpha(opacity=75);
}

.btn-default {
  background: #f5f5f5;
  color: #000;
  border-color: #000;
}

.captionFrame>p>a .btn {
  font-size: 16px;
}

.GrayText {
  color: #707070;
  display: block;
  font-size: 13px;
  line-height: 1.0em;
}

.tsAppBodyText p {
  color: #303030;
  font-family: 'Gotham', sans-serif;
  font-weight: 300;
}

.tsAppBodyText a {
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 300;
}

.captionFrame h5 {
  color: #5cc0be;
}

.captionFrame>p>a .btn {
  font-size: 15px;
}

.employee_links>a {
  color: #c9b572;
  font-size: 13px;
  font-weight: 300;
}

.fb-like {
  margin: 0px 0px 10px 0px;
}

.sponsor-gold {
  background-color: #c9b572;
  color: #1c2541;
  font-size: 26px;
  font-variant: small-caps;
  font-weight: bold;
  margin: 5px 0px 10px 0px;
  padding: 10px 0px 10px 10px;
  width: 100%;
}

.sponsor-silver {
  background-color: #c0c0c0;
  color: #000000;
  font-size: 22px;
  font-variant: small-caps;
  font-weight: bold;
  margin: 5px 0px 10px 0px;
  padding: 10px 0px 10px 10px;
  width: 100%;
}

.sponsor-bronze {
  background-color: #d28c47;
  color: #000000;
  font-size: 20px;
  font-variant: small-caps;
  font-weight: bold;
  margin: 5px 0px 10px 0px;
  padding: 10px 0px 10px 10px;
  width: 100%;
}

.btnGold {
  background-color: #c9b572;
}

.owl-theme .owl-nav [class*=owl-]:hover {
  background: none !important;
}

.btnGold:hover {
  background-color: #e6e6e6;
}

.tsAppBodyText .tsAppB20>div>p>a {
  font-family: Verdana, Arial, Helvetica, sans-serif !important;
  font-size: 18px !important;
  font-weight: 300 !important;
}

.well {
  box-shadow: none!important;
}

a {
  cursor: pointer;
}

td>p {
  font: normal 12px Verdana, Helvetica, Arial, sans-serif !important;
  color: #333;
}

blockquote {
  border-left: 5px solid rgb(57, 80, 107);
  color: rgb(57, 80, 107);
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 26px;
  padding: 0.5em 10px;
  margin: 10px 0px 15px 0px;
  quotes: "\201C""\201D""\2018""\2019";
}

blockquote:before {
  color: rgb(57, 80, 107);
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}

p {
  color: #303030;
}

.header .navbar .nav li.dropdown .megaMenuSection li a {
  font-size: 20px;
}

@media screen and (max-width: 1199px) {
  .header .navbar .nav li.dropdown .megaMenuSection li a {
    font-size: 20px;
  }
}

@media screen and (min-width: 980px) {
  .brand-logo {
    margin-top: -125px !important;
  }
}

@media screen and (max-width: 1139px) {
  .link-webcast {
    margin: 20px 30px 0 0 !important;
  }
}

@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
  .link-webcast {
    margin: 20px 30px 0 0 !important;
  }
}

@media screen and (min-width:0\0) and (min-resolution: +72dpi) {
  .link-webcast {
    margin: 20px 150px 2px 0 !important;
  }
}

@supports (-ms-ime-align:auto) {
  .link-webcast {
    margin: 20px 150px 2px 0 !important;
  }
}

@-moz-document url-prefix() {
  .link-webcast {
    margin: 20px 150px 2px 0 !important;
  }
}

small {
  color: #000000;
}

.zoneresource>ul>li {
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 26px;
}

#M2879798>ul {
  margin: 0px;
}

#N2879799>ul {
  margin: 0px;
}

.list_menu {
  list-style-type: none;
}

.lead>small {
  font-weight: bold;
}

.link-webcast {
  max-height: 150px !important;
  min-height: 125px !important;
}

.top-menu {
  background: none !important;
  margin: 5px 0 0 0 !important;
  padding: 0 0 0 41px !important;
}

.top-menu>.zonewrapper>.zoneresource>.nav>li {
  background-color: #17468f;
  border: #17468f solid 1px;
  border-radius: 10px;
  margin: 0 5px 0 5px !important;
  padding: 2px 5px 2px 5px;
}

.top-menu>.zonewrapper>.zoneresource>.nav>li>a {
  color: #ffffff;
  font-weight: normal;
}

.top-menu>.zonewrapper>.zoneresource>.nav>li>a:hover {
  color: #42f45c;
}

.top-menu>.nav>li {
  background-color: #17468f;
  border: #17468f solid 1px;
  border-radius: 10px;
  margin: 0 5px 0 5px !important;
  padding: 2px 5px 2px 5px;
}

.top-menu>.nav>li>a {
  color: #ffffff !important;
  font-weight: normal;
}

.top-menu>.nav>li>a:hover {
  color: #42f45c !important;
}

.top-menu>.nav>li>.searchform {
  border: #17468f solid 1px !important;
  border-radius: 10px;
  color: #ffffff !important;
}

.top-menu>.nav>li>.searchform>.btn {
  color: #ffffff !important;
}

.top-menu>.nav>li>form {
  padding: 4px 0 4px 0 !important;
}

h3 {
  line-height: normal !important;
}

.icon1-section h2 {
  font-size: 26px !important;
}

.side-menu .h4_Roboto_font_gray, .side-menu h4 {
  color: #54595c;
  font-size: 22px;
  margin-left: 5px;
  font-weight: 400;
}

.side-menu a {
  color: #808080 !important;
}

.inner-section .side-menu li {
  line-height: 20px !important;
  margin: 10px 0;
  font-weight: 400;
}

.inner-section .side-menu hr {
  margin: 2px 0;
}

.inner-section {
  padding-top: 20px;
}

#form61 #header h2 {
  font-family: 'Roboto', sans-serif;
  font-size: 36px;
  font-weight: 500;
  color: #17468f;
  margin: 16px 0;
}

.link-webcast {
  margin-bottom: 2px;
}

@media .row {
  margin-left: 0 !important;
}

.inner-section .span9, .inner-section .span12 {
  margin-bottom: 20px !important;
}

.btn-group.open>.dropdown-menu>li>a {
  color: #08c !important;
}

.bamsl-notice {
  background-color: #faffdb;
  border: 1px solid #DAA520;
  color: #DAA520!important;
  font-weight: bold;
  margin: 0 0 15px 0;
  padding: 10px;
}

.bamsl-notice-red {
  background-color: #ffcccc;
  border: 1px solid #660000;
  color: #660000!important;
  font-weight: bold;
  margin: 0 0 15px 0;
  padding: 10px;
}

.bamsl-notice-green {
  background-color: #ccffcc;
  border: 1px solid #007f00;
  color: #007f00!important;
  font-weight: bold;
  margin: 0 0 15px 0;
  padding: 10px;
}

table.bamsl-cle {
  width: 100%;
}

table.bamsl-cle td {
  background-color: #f5f5f5;
  border-bottom: 2px solid #1c2541;
  color: #1c2541;
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 300;
  padding: 10px 10px 10px 5px;
  text-align: left;
  vertical-align: top;
}

table.bamsl-cle th {
  background-color: #f5f5f5;
  border-bottom: 2px solid #1c2541;
  color: #1c2541;
  font-family: 'Gotham', sans-serif;
  font-size: 24px;
  font-variant: small-caps;
  font-weight: 700;
  padding: 15px 15px 15px 5px;
  text-align: left;
  vertical-align: top;
}

table.tsAppBodyText>tbody>tr>td.r {
  font-weight: bold !important;
}

table.tsAppBodyText>tbody>tr>td.r>label {
  font-weight: bold !important;
}

table.ev_confirmTable>tbody>tr>td.slimLine>h4 {
  text-decoration: underline;
}

label {
  font-weight: bold !important;
}

td[onclick]>span {
  cursor: pointer;
}

.span12 .well .well-small {
  padding: 5px;
}

.button {
  display: inline-block;
  background: #3399ff;
  border-radius: 4px;
  font-size: 18px;
  color: #000000;
  padding: 8px 12px;
  cursor: pointer;
}

.joinButton {
  background-color: #42f45c !important;
  border-color: #42f45c !important;
  color: #17468f !important;
}

.joinButton>a {
  color: #17468f !important;
}

.joinButton:hover {
  background-color: #17468f !important;
  border-color: #17468f !important;
  color: #42f45c !important;
}

.joinButton:hover>a {
  color: #42f45c !important;
}

div #sponsers {
  height: 220px;
  max-height: 220px;
  overflow: hidden;
}

/* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black;
  /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
  visibility: hidden;
  width: 120px;
  background-color: black;
  color: #fff;
  text-align: center;
  padding: 5px 0;
  border-radius: 6px;
  /* Position the tooltip text - see examples below! */
  position: absolute;
  z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
}

/* RENEWAL PAGE - STEP 2 */
fieldset.tsApp>button[name="btnSubmit"] {
  background-color: #1d458b;
  color: #ffffff !important;
  font-size: 18px;
  margin: 0 0 20px 0;
  padding: 3px;
}

fieldset.tsApp>button[name="btnWizardNext"] {
  background-color: #1d458b;
  color: #ffffff !important;
  font-size: 18px;
  margin: 0 0 20px 0;
  padding: 3px;
}

fieldset.tsApp>button[name="btnRate"] {
  background-color: #1d458b;
  color: #ffffff !important;
  font-size: 18px;
  margin: 0 0 20px 0;
  padding: 3px;
}

body>div.wrapper>header {
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.header .navbar .nav li.dropdown .memberSection li .btnCustom {
  color: #fff;
  background: transparent;
  border: 2px solid #fff !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  height: 50px !important;
  min-width: auto;
  text-transform: uppercase !important;
  border-radius: 0px;
  font-family: 'Gotham', sans-serif !important;
  line-height: 46px;
  padding: 0;
  margin: 0;
  letter-spacing: 2px;
  box-shadow: none;
  text-shadow: none;
  padding: 0 25px;
  margin-top: 20px;
  display: inline-block;
  width: auto;
  text-decoration: none !important;
}

.header .navbar .nav li.dropdown .memberSection li .btnCustom:hover {
  background-color: #fff;
  color: #2d3e55;
  border-color: #fff;
}

.blueContainerWrapper {
  display: block;
  padding: 20px 0px 20px 0px;
  width: 100%;
}

.blueContainer {
  background-color: rgb(28, 37, 65);
  border: #c9b572 4px ridge;
  color: #c9b572;
  display: inline-block;
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 700;
  padding: 10px;
  quotes: "\201C""\201D";
  text-align: left;
}

.blueContainer:before {
  color: #c9b572;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}

.blueContainer300 {
  background-color: rgb(28, 37, 65);
  border: #c9b572 4px ridge;
  color: #c9b572;
  display: inline-block;
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 700;
  padding: 10px;
  quotes: "\201C""\201D";
  text-align: left;
}

.blueContainer300:before {
  color: #c9b572;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}

.blueContainer500 {
  background-color: rgb(28, 37, 65);
  border: #c9b572 4px ridge;
  color: #c9b572;
  display: inline-block;
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 700;
  padding: 10px;
  quotes: "\201C""\201D";
  text-align: left;
}

.blueContainer500:before {
  color: #c9b572;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}

.blueContainer600 {
  background-color: rgb(28, 37, 65);
  border: #c9b572 4px ridge;
  color: #c9b572;
  display: inline-block;
  font-family: 'Gotham', sans-serif;
  font-size: 18px;
  font-weight: 700;
  padding: 10px;
  quotes: "\201C""\201D";
  text-align: left;
}

.show-nav-hover-arrow>a {
    color: #008e89!important;
}

.show-nav-hover-arrow>a:after {
    width:0;
    height:0;
    border-left:35px solid transparent;
    border-right:35px solid transparent;
    border-top:27px solid #fff;
    content:"";
    position:absolute;
    top:100%;
    z-index:9;
    left:0;
    right:0;
    margin:0 auto;
    bottom:0
}

.blueContainer600:before {
  color: #c9b572;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}

.rotateLeft {
  -ms-transform: rotate(-15deg);
  /* IE 9 */
  -webkit-transform: rotate(-15deg);
  /* Safari */
  transform: rotate(-15deg);
}

.rotateRight {
  -ms-transform: rotate(15deg);
  /* IE 9 */
  -webkit-transform: rotate(15deg);
  /* Safari */
  transform: rotate(15deg);
}

.alignLeft {
  margin-left: 0px !important;
  text-align: left;
}

.alignRight {
  margin-left: auto !important;
  margin-right: 0px !important;
  text-align: right;
}

.alignCenter {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
}

#btnWizardPrevious {
  margin: 0px 0px 20px 0px;
}

div>li {
  font-size: 18px;
}

.MCBlogMainContentContainer>ol>li {
  font-size: 18px;
  line-height: 22px;
}

.MCBlogMainContentContainer>ul>li {
  font-size: 18px;
  line-height: 22px;
}

/* Remove Underline of Blog Titles */
.MCBlogEntryTitleContainer h3 a {
  text-decoration: none;
}

.TitleText {
  font-family: 'Gotham', sans-serif !important;
  font-weight: 700;
  line-height: 120% !important;
}

.dropdown-menu {
  opacity: 1 !important;
}

/* Match mobile menu with desktop version */
@media screen and (max-width: 979px) {
  #navbar-example>div>div>div>div.nav-collapse.collapse.mainNavigationWrapper>ul>li:nth-child(10)>a.dropdown-toggle.paddingTop15>img {
    object-fit: cover;
  }

  .header .nav-collapse.collapse {
    opacity: 1;
    background: #5bbfbe;
  }

  .header .navbar .nav li.memberFirst>a {
    background: #39506b;
  }

  .header .navbar .nav li.memberFirst>a:hover {
    background: #1c2541;
  }

  .header .navbar .nav li.memberFirst.open-droupdown>a, .header .navbar .nav li.memberFirst.open-droupdown:hover>a, .header .navbar .nav li.memberFirst.open-droupdown:focus>a, .header .navbar .nav li.memberFirst.open-droupdown:visited>a {
    background-color: #1c2541
  }
}

@media only screen and (max-width: 767px) {
  .captionBtnFrame {
    background-color: #232d4b;
  }

  .progresReportBox {
    display: none;
  }
  
  .eventBox>.container {
    padding:0px!important;
  }

  .mainContent {
    padding: 0px 15px!important;
  }
}

/* Fix logo being giant when printing */
@media print {
  .printHeader > img {
    width: 200px;
  }
  .printHeader > .logoSubUrl {
    display: none;
  }
  .printHeaderContact {
    display: none;
  }
  iframe {
    display: none;
  }
}
/* Bar-Foundation-like dropdown style for subheads */
.member-dropdowns {
  width: 100%;
  margin: 18px 0;
  border: 1px solid #e9e9e9;
  border-radius: 4px;
  overflow: hidden;
  background: #fff;
}

.member-dropdowns {
  width: 100%;
  margin: 20px 0;
  border: 1px solid #e9e9e9;
  border-radius: 4px;
  overflow: hidden;
  background: #fff;
}

.member-dropdown {
  border-bottom: 1px solid #ddd;
}

.member-dropdown summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #17468f;
  background: transparent;
  border: none;
}

.member-dropdown summary::-webkit-details-marker {
  display: none;
}

.member-dropdown summary .toggle {
  font-size: 20px;
  transition: transform 0.25s ease;
}

.member-dropdown[open] summary .toggle {
  transform: rotate(45deg); /* optional: rotates + to × when open */
}

.member-dropdown .content {
  padding: 18px 20px;
  background-color: #fafafa;
  color: #333;
  font-family: 'Gotham', sans-serif;
  font-weight: 300;
  line-height: 1.6;
  font-size: 15px;
}

.btnBamsl {
  display: inline-block;
  background-color: #ffffff;
  border: 2px solid #003399;
  color: #003399 !important;
  font-family: 'Gotham';
  font-size: 18px;
  text-transform: uppercase;
  padding: 12px 30px;
  letter-spacing: 1px;
  border-radius: 6px;
  transition: all 0.2s ease;
  text-decoration: none !important;
}
.btnBamsl:hover {
  background-color: #ffffff;
  border-color: #003399;
  color: #ffffff !important;
}

}

/* The subhead (acts like the dropdown label) */
.member-dropdown summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: 'museo700', sans-serif;
  font-size: 16px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: #17468f;            /* navy brand color */
  background: transparent;   /* matches Foundation minimal look */
  border: none;
}

/* remove default triangle in some browsers */
.member-dropdown summary::-webkit-details-marker { display:none; }

/* Chevron icon (rotates when open) */
.member-dropdown summary .chev {
  transition: transform .28s ease;
  font-size: 18px;
  color: #17468f;
}

/* Content that flows from subhead */
.member-dropdown .content {
  padding: 18px 20px;
  background: #fbfbfb;
  color: #303030;
  font-family: 'museo300', sans-serif;
  line-height: 1.6;
  font-size: 16px;
}

/* Rotate chevron when open */
.member-dropdown[open] summary .chev {
  transform: rotate(180deg);
}

/* Make sure <details> takes full width and has smooth open */
.member-dropdown summary { outline: none; }
.member-dropdown .content { transition: all .25s ease; }

/* Body list used inside content (keeps your site's list style) */
.member-dropdown .body-list {
  margin: 8px 0 0 20px;
  padding: 0;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
}

/* Brand button (same as we established earlier) */
.btnBamsl {
  display: inline-block;
  background-color: #c9b572;
  border: 2px solid #c9b572;
  color: #1c2541 !important;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 18px;
  text-transform: uppercase;
  padding: 12px 30px;
  letter-spacing: 1px;
  border-radius: 6px;
  transition: all 0.2s ease;
  text-decoration: none !important;
}
.btnBamsl:hover {
  background-color: #17468f;
  border-color: #17468f;
  color: #ffffff !important;
}

/* Small responsive tweak */
@media (max-width:767px) {
  .member-dropdown summary { font-size: 15px; padding: 14px; }
  .member-dropdown .content { padding: 14px; font-size: 15px; }
}
/* Scrolling Logo Carousel */
.benefit-carousel {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding: 20px 0;
  background: #ffffff;
}

.benefit-carousel-track {
  display: flex;
  align-items: center;
  gap: 40px;
  animation: scroll 30s linear infinite;
  width: max-content;
}

.benefit-carousel img {
  height: 60px;            /* adjust logo size */
  width: auto;
  object-fit: contain;
  filter: grayscale(0%);   /* keep full color */
  transition: transform .25s ease, filter .25s ease;
  opacity: 0.95;
}

.benefit-carousel img:hover {
  transform: scale(1.07);
  filter: grayscale(0%);
  opacity: 1;
}

/* Infinite scroll animation */
@keyframes scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Optional: slow scroll on hover */
.benefit-carousel:hover .benefit-carousel-track {
  animation-play-state: paused;
}
/* Wrapper */
.sustaining-partners-wrapper {
  width: 100%;
  padding: 20px 0;
}

/* Tier Section Headers */
.tier-header {
  font-family: 'museo700';
  font-size: 24px;
  margin: 40px 0 15px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Optional subtle color accents */
.tier-header.platinum { color: #c9b572; } /* Gold / champagne */
.tier-header.gold     { color: #17468f; } /* Navy */
.tier-header.silver   { color: #777; }    /* Silver-grey */
/* Wrapper */
.sustaining-partners-wrapper {
  width: 100%;
  margin: 0;
  padding: 20px 0;
}

/* Make every grid row span the full content width */
.partners-grid {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  display: grid;
  gap: 24px;
}

/* ========================================== */
/*            TIER GRID CONFIGS               */
/* ========================================== */

/* Platinum: full-width *one card per row* */
.platinum-grid {
  grid-template-columns: 1fr !important; /* 1 full-width column */
}

/* Gold: 2 equal columns */
.gold-grid {
  grid-template-columns: repeat(2, 1fr) !important;
}

/* Silver: 3 equal columns */
.silver-grid {
  grid-template-columns: repeat(3, 1fr) !important;
}

.partner-card {
  background: #f9f9f9;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.partner-card:hover {
  transform: translateY(-4px);
  box-shadow: rgba(0,0,0,0.1) 0 4px 16px;
}

.partner-card a {
  color: inherit;
  text-decoration: none;
  display: block;
  height: 100%;
}

.partner-logo {
  width: 100%;
  padding: 20px;
  background: #fff;
  text-align: center;
}

.partner-logo img {
  max-width: 100%;
  max-height: 125px;
  object-fit: contain;
}

.partner-info {
  padding: 12px 16px 20px;
  font-family: 'Gotham', sans-serif;
  font-weight: 300;
}

.partner-info h3 {
  margin: 0 0 8px;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #17468f;
}

.partner-info p {
  margin: 0;
  font-size: 14px;
  color: #555;
}


/* ========================================== */
/*               RESPONSIVE FIXES             */
/* ========================================== */

@media (max-width: 900px) {
  .gold-grid {
    grid-template-columns: 1fr !important;
  }
  .silver-grid {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 600px) {
  .silver-grid {
    grid-template-columns: 1fr !important;
  }
}
/* LOGO-ONLY CARD VARIANT */
.partner-card.logo-only {
  background: #ffffff; /* no grey */
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
  padding: 20px; /* adds spacing around the logo */
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.partner-card.logo-only:hover {
  transform: translateY(-4px);
  box-shadow: rgba(0,0,0,0.1) 0 4px 16px;
}

.partner-card.logo-only a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.partner-card.logo-only .partner-logo {
  width: 100%;
  text-align: center;
  background: transparent; /* transparent background now */
  padding: 0;
}

.partner-card.logo-only img {
  max-width: 100%;
  max-height: 100px; /* logos can be a bit larger */
  object-fit: contain;
}
/* ===== Hover Overlay Container ===== */
.partner-card.hover-links {
  position: relative;
  overflow: hidden;
}

/* Dim the logo slightly on hover */
.partner-card.hover-links:hover img {
  opacity: 0.2;
  transition: opacity 0.25s ease;
}

/* ===== Overlay Background ===== */
.partner-hover-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.90);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  opacity: 0;
  transition: opacity 0.3s ease;
}

.partner-card.hover-links:hover .partner-hover-overlay {
  opacity: 1;
}

/* ===== Buttons ===== */
.hover-btn {
  display: inline-block;
  margin: 8px 0;
  padding: 10px 18px;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;

  color: #ffffff;
  border: 2px solid #ffffff;
  border-radius: 6px;

  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.hover-btn:hover {
  background: #ffffff;
  color: #003399;
}
/* Prevent hover buttons from stretching */
.partner-hover-overlay .hover-btn {
  width: auto !important;       /* overrides any 100% width rules */
  max-width: max-content !important;
  display: inline-flex !important;  /* prevents full-width block behavior */
  justify-content: center;
  align-items: center;
  box-sizing: content-box !important;
}

/* Ensure the overlay never forces children to stretch */
.partner-hover-overlay {
  text-align: center;
  padding: 10px;               /* adds cushion so buttons never hit edges */
}

.partner-hover-overlay a {
  width: auto !important;
  display: inline-flex !important;
}
/* Partner Info Button */
.partner-info-btn {
  display: inline-block !important;      /* forces text-width button */
  width: auto !important;                /* prevents stretching */
  max-width: max-content !important;     /* prevents container rules overriding */
  
  padding: 6px 14px;
  margin-top: 10px;

  border: 1px solid #222;                /* off-black border */
  border-radius: 4px;

  color: #222 !important;                /* off-black text */
  background: transparent;

  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  text-decoration: none;

  transition: all 0.2s ease;
}

/* Hover effect */
.partner-info-btn:hover {
  background: #003399;                   /* navy fill */
  color: #ffffff !important;             /* white text */
  border-color: #003399;
}
/* ========================= */
/*       CONTACT CARD        */
/* ========================= */

.contact-card {
  display: flex;
  align-items: center;
  gap: 16px;

  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;

  padding: 16px;
  max-width: 100%;         /* small card */
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

/* Hover effect consistent with other cards */
.contact-card:hover {
  transform: translateY(-3px);
  box-shadow: rgba(0,0,0,0.1) 0 4px 14px;
}

/* ========================= */
/*       HEADSHOT AREA       */
/* ========================= */

.contact-headshot {
  width: 135px;
  height: 135px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;           /* prevents squishing */
  background: #f6f6f6;      /* placeholder bg */
}

.contact-headshot img {
  width: 100%;
  height: 100%;
  object-fit: cover;         /* clean crop */
}

/* ========================= */
/*       TEXT AREA           */
/* ========================= */

.contact-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-family: 'Gotham', sans-serif;
  font-weight: 300;
}

.contact-name {
  margin: 0;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #17468f;           /* BAMSL navy */
}

/* Small title line */
.contact-title {
  margin: 0 0 8px;
  color: #666;
  font-size: 14px;
}

/* ========================= */
/*     EMAIL + PHONE LINKS   */
/* ========================= */

.contact-detail {
  font-size: 14px;
  color: #222 !important;        /* consistent off-black */
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
  transition: all 0.2s ease;
  width: max-content;            /* text-length only */
}

.contact-detail:hover {
  color: #003399 !important;     /* your hover blue */
  border-bottom: 1px solid #003399;
}
/* ========================================================= */
/*                 FULL-WIDTH STAFF DIRECTORY CARD           */
/* ========================================================= */

.staff-card {
  width: 100%;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  padding: 24px;
  margin-bottom: 28px;

  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.staff-card:hover {
  transform: translateY(-3px);
  box-shadow: rgba(0,0,0,0.08) 0 4px 14px;
}

/* Main container: headshot + info */
.staff-card-main {
  display: flex;
  gap: 24px;
  align-items: center;
  width: 100%;
}

/* LARGE HEADSHOT */
.staff-headshot {
  width: 160px;
  height: 160px;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0;
  background: #f3f3f3;
}

.staff-headshot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* TEXT AREA (large) */
.staff-info {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-family: 'Gotham', sans-serif;
  font-weight: 300;
  font-size: 16px;
}

.staff-name {
  margin: 0;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 26px;
  color: #17468f; /* BAMSL navy */
}

.staff-title {
  margin: 0 0 12px;
  font-size: 18px;
  color: #555;
}

/* Email + Phone links */
.staff-contact-detail {
  font-size: 15px;
  color: #222 !important;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  width: max-content;
  transition: all 0.2s ease;
}

.staff-contact-detail:hover {
  color: #003399 !important;
  border-bottom: 1px solid #003399;
}

/* ========================================================= */
/*               BIO DROPDOWN (MEMBER-DROPDOWN STYLE)        */
/* ========================================================= */

.staff-bio-dropdown {
  margin-top: 24px;
  width: 100%;
  border-top: 1px solid #e0e0e0;
  padding-top: 16px;
}

.staff-bio-dropdown summary {
  list-style: none;
  cursor: pointer;
  padding: 14px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;

  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  color: #17468f;
}

.staff-bio-dropdown summary::-webkit-details-marker {
  display: none;
}

/* Toggle "+" rotation */
.staff-bio-dropdown[open] summary .toggle {
  transform: rotate(45deg);
}

.staff-bio-dropdown .toggle {
  font-size: 22px;
  line-height: 22px;
  transition: transform 0.25s ease;
}

/* Dropdown content */
.staff-bio-dropdown .content {
  margin-top: 10px;
  font-family: 'Gotham', sans-serif;
  font-weight: 300;
  font-size: 15px;
  line-height: 1.6;
  color: #333;

  padding: 12px 12px;
  border-top: 1px solid #ddd;
}

/* ========================================================= */
/*                     RESPONSIVE BEHAVIOR                   */
/* ========================================================= */

@media (max-width: 700px) {
  .staff-card-main {
    flex-direction: column;
    text-align: center;
  }
  
  .staff-info {
    align-items: center;
  }
}
/* ========================================================= */
/*                LEADERSHIP GRID LAYOUT                     */
/* ========================================================= */

.leadership-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  width: 100%;
  margin: 40px 0;
}

/* ========================================================= */
/*                LEADERSHIP CARD DESIGN                     */
/* ========================================================= */

.leadership-card {
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  padding: 20px;
  text-align: center;

  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.leadership-card:hover {
  transform: translateY(-3px);
  box-shadow: rgba(0,0,0,0.1) 0 4px 14px;
}

/* ========================================================= */
/*                   HEADSHOT STYLING                        */
/* ========================================================= */

.leadership-headshot {
  width: 140px;
  height: 140px;
  margin: 0 auto 16px;

  border-radius: 10px;
  overflow: hidden;
  background: #f6f6f6;
}

.leadership-headshot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ========================================================= */
/*                    TEXT STYLING                           */
/* ========================================================= */

.leadership-position {
  margin: 0;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 16px;
  color: #17468f; /* BAMSL navy */
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.leadership-name {
  margin: 10px 0 4px;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 20px;
  color: #222;
}

.leadership-firm {
  margin: 0;
  font-family: 'Gotham', sans-serif;
  font-weight: 300;
  font-size: 15px;
  color: #555;
}

/* ========================================================= */
/*                        RESPONSIVE                         */
/* ========================================================= */

@media (max-width: 900px) {
  .leadership-grid {
    grid-template-columns:
.directory-button-card {
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  padding: 20px;
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.directory-button-card:hover {
  transform: translateY(-3px);
  box-shadow: rgba(0,0,0,0.10) 0 4px 14px;
}

.dbc-title {
  margin: 0 0 12px;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #17468f;
  text-transform: uppercase;
  letter-spacing: .5px;
}

.dbc-link {
  display: inline-block;
  width: max-content;
  margin: 0 auto;
  font-family: 'Gotham', sans-serif;
  font-weight: 700;
  font-size: 14px;
  padding: 6px 14px;
  color: #222 !important;
  border: 1px solid #222;
  border-radius: 4px;
  text-decoration: none;
  letter-spacing: .5px;
  text-transform: uppercase;
  transition: all .2s ease;
}

.dbc-link:hover {
  background: #003399;
  color: #fff !important;
  border-color: #003399;
}

/* ========================================================= */
/*                2×2 DIRECTORY GRID LAYOUT                  */
/* ========================================================= */

.directory-button-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
  width: 100%;
  margin: 30px 0;
}
/* ======================================= */
/*        ADVERTISING PAGE LAYOUT           */
/* ======================================= */

.advertising-page {
  width: 100%;
  margin: 30px 0;
}

/* Two-column layout */
.advertising-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}

/* Stack on mobile */
@media (max-width: 900px) {
  .advertising-columns {
    grid-template-columns: 1fr;
  }
}

/* ======================================= */
/*           ADVERTISING CARDS              */
/* ======================================= */

.advertising-card {
  margin-bottom: 28px;
}

/* Image slots */
.ad-image-slot,
.journal-cover-slot {
  width: 100%;
  background: #f5f5f5;
  border-bottom: 1px solid #e0e0e0;
}

.ad-image-slot img,
.journal-cover-slot img {
  width: 100%;
  height: auto;
  display: block;
}

/* Ad spec text */
.ad-spec {
  font-weight: 700;
  color: #17468f;
  margin-bottom: 6px;
}

/* ======================================= */
/*               TABLES                    */
/* ======================================= */

.rate-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 12px;
}

.rate-table th,
.rate-table td {
  padding: 8px 6px;
  border-bottom: 1px solid #ddd;
  font-size: 15px;
}

/* ======================================= */
/*     JOURNAL SIZE DIAGRAM (VISUAL)        */
/* ======================================= */

.size-controls {
  display: flex;
  gap: 10px;
  margin: 12px 0 16px;
}

.size-controls button {
  padding: 6px 14px;
  border: 1px solid #222;
  background: #fff;
  font-family: 'museo700';
  font-size: 12px;
  text-transform: uppercase;
  cursor: pointer;
}

.size-controls button:hover {
  background: #003399;
  color: #fff;
  border-color: #003399;
}

.journal-diagram {
  display: flex;
  justify-content: center;
  padding: 20px;
  background: #fafafa;
  border-radius: 6px;
}

/* Diagram scaling */
.journal-ad {
  position: relative;
  background: #ffffff;
  border: 2px solid #17468f;
}

.journal-ad.full    { width: 260px; height: 340px; }
.journal-ad.half    { width: 260px; height: 170px; }
.journal-ad.quarter { width: 130px; height: 170px; }
.journal-ad.eighth  { width: 130px; height: 85px; }

.dimension-label {
  position: absolute;
  bottom: 6px;
  right: 6px;
  font-size: 13px;
  font-weight: 700;
}
/* =============================== */
/*        CSS OVERRIDE TEST        */
/* =============================== */

.css-test-card {
  background: #17468f !important;   /* BAMSL navy */
  border: 4px solid #c9b572 !important; /* gold */
  color: #ffffff !important;

  padding: 30px !important;
  margin: 30px 0 !important;
  border-radius: 10px !important;

  text-align: center !important;
  font-family: Arial, sans-serif !important;
}

.css-test-card h2 {
  color: #ffffff !important;
  font-size: 28px !important;
  margin-bottom: 12px !important;
}

.css-test-card p {
  color: #ffffff !important;
  font-size: 16px !important;
  margin-bottom: 18px !important;
}

.css-test-btn {
  display: inline-block !important;
  padding: 10px 20px !important;
  border: 2px solid #ffffff !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: bold !important;
  border-radius: 6px !important;
}

.css-test-btn:hover {
  background: #ffffff !important;
  color: #17468f !important;
}
