/* Base Styles */

/* Reset */

#mn-content .fa-lg {
  font-size: 1.33333333em;
  line-height: 1.33333333em;
  vertical-align: middle;
}
#mn-content .fa-2x {
  font-size: 2em;
}
#mn-content .mn-heading {
  margin-top: 0;
  padding-top: 0;
  overflow-wrap: break-word;
}
/* Rows/Columns/Blocks */

#mn-content *,
#mn-content *:after,
#mn-content *:before {
  box-sizing: border-box;
}
#mn-content .mn-row {
  margin-left: -10px;
  margin-right: -10px;
}
#mn-content .mn-row:after {
  content: "";
  display: block;
  clear: both;
}
#mn-content .mn-row-inner {
  margin-left: -10px;
  margin-right: -10px;
}
#mn-content .mn-row-inner:after {
  content: "";
  display: block;
  clear: both;
}
#mn-content div[class*="mn-col-"] {
  float: left;
  padding-left: 10px;
  padding-right: 10px;
}
#mn-content .mn-col-1 {
  width: 100%;
}
#mn-content .mn-col-7-8 {
  width: 87.5%;
}
#mn-content .mn-col-4-5 {
  width: 80%;
}
#mn-content .mn-col-3-4 {
  width: 75%;
}
#mn-content .mn-col-2-3 {
  width: 66.66%;
}
#mn-content .mn-col-5-8 {
  width: 62.5%;
}
#mn-content .mn-col-3-5 {
  width: 60%;
}
#mn-content .mn-col-1-2 {
  width: 50%;
}
#mn-content .mn-col-2-5 {
  width: 40%;
}
#mn-content .mn-col-3-8 {
  width: 37.5%;
}
#mn-content .mn-col-1-3 {
  width: 33.33%;
}
#mn-content .mn-col-1-4 {
  width: 25%;
}
#mn-content .mn-col-1-5 {
  width: 20%;
}
#mn-content .mn-col-1-8 {
  width: 12.5%;
}
#mn-content .mn-block {
  margin-bottom: 10px;
}
#mn-content .mn-block.mn-pane {
  padding: 15px 15px;
  border: 1px solid #dddddd;
  margin-bottom: 15px;
}
#mn-content .mn-block .mn-block:last-of-type {
  margin-bottom: 0;
}
#mn-content .mn-block .mn-block:first-of-type {
  margin-bottom: 10px;
}
#mn-content .mn-clear {
  display: block;
}
#mn-content .mn-clear:after {
  content: "";
  display: block;
  clear: both;
}
#mn-content .mn-img-responsive {
  display: inline;
  max-width: 100%;
  height: auto;
}
#mn-content .mn-form-control {
  display: block;
  width: 100%;
}
#mn-content .mn-hidden-above-break {
  display: none;
}
/* General Styles */

#mn-content {
  margin-bottom: 15px;
}
#mn-content .mn-container {
  margin-left: auto;
  margin-right: auto;
}
#mn-content .mn-main-heading {
  font-weight: bold;
  font-size: 1.5em;
  line-height: 1.5em;
}
#mn-content .mn-sub-heading {
  font-size: 0.8em;
}
#mn-content .mn-section-head {
  font-weight: bold;
  font-size: 1.2em;
  padding-bottom: 0.5em;
}
#mn-content .mn-section-body {
  padding-bottom: 0.5em;
}
#mn-content .mn-button {
  display: inline-block;
  text-decoration: none;
  background-color: #ababab;
  color: white;
  padding: 5px 10px;
  margin: 0 10px 10px 0;
  border: 0;
}
#mn-content .mn-button + .mn-button {
  background-color: transparent;
  border: 1px solid #ababab;
  color: #ababab;
}
#mn-content .mn-button:hover {
  cursor: pointer;
  text-decoration: none;
}
#mn-content input[type="text"]:not(#gzns input[type="text"]),
#mn-content input[type="password"]:not(#gzns input[type="password"]),
#mn-content select:not(#gzns select),
#mn-content textarea:not(#gzns textarea) {
  display: block;
  width: 100%;
  padding: 5px;
  margin: 0 5px 5px 0;
}
#mn-content textarea {
  min-height: 5em;
  resize: vertical;
}
#mn-content label {
  display: inline-block;
}
#mn-content .mn-form-check {
  display: block;
  margin-bottom: 0.3em;
}
#mn-content .mn-form-note {
  display: block;
  color: #777777;
  font-style: italic;
  margin-bottom: 15px;
}
#mn-content .mn-ad {
  text-align: center;
}
#mn-content .mn-ad img {
  max-width: 100%;
  display: inline;
}
#mn-content .mn-image {
  text-align: left;
}
#mn-content .mn-image img {
  max-width: 100%;
  height: auto;
}
#mn-content .mn-img-placeholder {
  /*height: 0;*/
  /*padding-top: 100%;*/
  background-color: #dddddd;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  padding: 50% 0;
  text-align: center;
  font-size: 18px;
  font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
}
#mn-content .mn-directory .mn-directory-details-item[contacttype="2"] .mn-img-placeholder,
#mn-content .mn-directory .mn-directory-list-item[contacttype="2"] .mn-img-placeholder {
  background-image: url(/GZContent/Images/public/business.png);
}
#mn-content .mn-directory .mn-directory-details-item[contacttype="1"] .mn-img-placeholder,
#mn-content .mn-directory .mn-directory-list-item[contacttype="1"] .mn-img-placeholder {
  background-image: url(/GZContent/Images/public/member.png);
}
#mn-content .mn-events .mn-img-placeholder {
  background-image: url(/GZContent/Images/public/event.png);
}
#mn-content .mn-discounts .mn-img-placeholder {
  background-image: url(/GZContent/Images/public/discount.png);
}
#mn-content .mn-website,
#mn-content .mn-groups-prim-website {
  text-transform: lowercase;
  word-break: break-word;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
#mn-content .mn-social {
  display: flex;
  align-items: center;
}
#mn-content .mn-social a,
#mn-content .mn-social span {
  text-decoration: none;
  padding-right: 5px;
}
#mn-content .mn-social .fa-facebook-square {
  color: #3b5998;
}
#mn-content .mn-social .fa-linkedin-square,
#mn-content .mn-social .fa-linkedin {
  color: #007bb5;
}
#mn-content .mn-social .fa-twitter-square {
  color: #55acee;
}
#mn-content .mn-social .fa-youtube-square {
  color: #bb0000;
}
#mn-content .mn-social .fa-google-plus-square {
  color: #dd4b39;
}
#mn-content .mn-social .fa-pinterest-square {
  color: #cb2027;
}
#mn-content .mn-social .fa-rss-square {
  color: #ff6600;
}
#mn-content .mn-social .fa-share-alt-square {
  color: #01bf01;
}
#mn-content .mn-social a {
  border-radius: 50%;
  height: 33px;
  padding: 4px;
  text-align: center;
  width: 33px;
  margin-right: 5px;
}
#mn-content .mn-social i {
  line-height: 1.6;
}
#mn-content .mn-social .mn-social-facebook {
  background-color: #3b5998;
  border-color: #3b5998;
  color: white;
}
#mn-content .mn-social .mn-social-linkedin {
  background-color: #007bb5;
  border-color: #007bb5;
  color: white;
}
#mn-content .mn-social .mn-social-twitter {
  background-color: black;
  border-color: black;
  color: white;
}
#mn-content .mn-twitter-img-placeholder {
  background-image: url(/GZContent/Images/public/twitter-x-logo-white.png);
  background-size: 15px;
  background-repeat: no-repeat;
  background-position: center;
}
#mn-content .mn-twitter-img-placeholder-black {
  background-image: url(/GZContent/Images/public/twitter-x-logo-black.png);
  background-size: 15px;
  background-repeat: no-repeat;
  background-position: bottom;
  width: 15px;
  display: inline-block;
  height: 16px;
  margin-left: 3px;
  margin-right: 10px;
}
#mn-content .mn-social .mn-social-pinterest {
  background-color: #cb2027;
  border-color: #cb2027;
  color: white;
}
#mn-content .mn-horizontal-list {
  text-align: center;
}
#mn-content .mn-horizontal-list div {
  display: inline;
}
#mn-content .mn-horizontal-list div + div:before {
  content: '\002D\ ';
  color: #cccccc;
}
#mn-content .mn-req-statement {
  font-style: italic;
}
#mn-content .mn-req {
  color: red;
}
#mn-content .mn-field-name {
  padding-right: 5px;
}
#mn-content .field-validation-error {
  color: red;
}
#mn-content .validation-summary-errors {
  color: red;
}
#mn-content .mn-powered-by {
  text-align: center;
}
/* Directory */

#mn-content.mn-directory #filter input,
#mn-content.mn-directory #filter select {
  max-width: 400px;
}
#mn-content .mn-directory-search .mn-directory-keyword {
  display: inline-block;
}
#mn-content .mn-alpha-numeric {
  text-align: left;
}
#mn-content .mn-alpha-numeric a {
  display: inline-block;
}
#mn-content .mn-directory-categories .mn-cat {
  display: inline-block;
  width: 49%;
}
#mn-content .mn-directory-categories .mn-cat > a {
  font-weight: bold;
}
#mn-content .mn-directory-categories .mn-sub-cats {
  display: inline-block;
  width: 100%;
}
#mn-content .mn-directory-categories > div > div:nth-child(odd) {
  clear: both;
}
#mn-content .mn-directory-categories > div > div {
  display: block;
  margin-bottom: 15px;
  width: 50%;
  float: left;
}
#mn-content .mn-directory-categories > div > div > a {
  font-weight: bold;
  display: block;
  font-size: 1.1em;
}
#mn-content .mn-directory-categories > div > div > a:after {
  content: ' \00bb';
}
#mn-content .mn-directory-categories > div > div.mn-image > a:after {
  content: '';
}
#mn-content .mn-directory-categories > div > div > div > div > a {
  display: inline-block;
}
#mn-content .mn-cat,
#mn-content .mn-sub-cat {
  line-height: 25px;
}
#mn-content .mn-sub-cat {
  display: inline-block;
  margin: 0 5px 0 0;
}
/* Listings */

#mn-content #mn-infinite-scroll {
  position: relative;
}
#mn-content #mn-infinite-scroll-loading {
  display: none;
  text-align: center;
  width: 100%;
  position: absolute;
  bottom: 0;
}
#mn-content #mn-infinite-scroll[loading="1"] #mn-infinite-scroll-loading {
  display: block;
}
/* Details Pages */

#mn-content .mn-details .mn-info-action {
  display: flex;
}
#mn-content .mn-details .mn-info-action i {
  min-width: 30px;
  padding-right: 5px;
  text-align: center;
}
#mn-content .mn-details .mn-info-action.mn-pricing-description {
  display: block;
}
/* Member Pages */

#mn-content .mn-details .mn-member-rep-name {
  font-weight: bold;
}
.mn-gallery {
  position: relative;
}
.mn-gallery {
  list-style-type: none;
  -webkit-margin-before: 0px;
  -webkit-margin-after: 0px;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px;
  -webkit-padding-start: 0px;
  height: 242px;
  text-align: center;
  display: block;
  width: 100%;
  position: relative;
  max-width: 550px;
}
.mn-gallery h4 {
  font-size: 18px;
  line-height: 1.1;
}
.mn-gallery-item span {
  font-size: 16px;
  line-height: 1.1;
}
.mn-gallery-with-sub-row {
  height: 315px;
}
.mn-gallery-item {
  position: absolute;
  top: 0;
  width: 100%;
  -webkit-transition: opacity 1s ease;
  -moz-transition: opacity 1s ease;
  -ms-transition: opacity 1s ease;
  -o-transition: opacity 1s ease;
  transition: opacity 1s ease;
  opacity: 0;
}
.mn-gallery-item.mn-active {
  opacity: 1;
}
.mn-gallery-item.mn-active img {
  display: inline-block;
}
.mn-gallery-item.mn-active .mn-gallery-text {
  display: block;
}
.mn-gallery-item img {
  max-height: 200px;
  max-width: 100%;
  display: none;
}
.mn-gallery-item .mn-gallery-text {
  color: white;
  position: absolute;
  bottom: 0;
  width: 100%;
  display: none;
}
.mn-gallery-item .mn-gallery-text .mn-gallery-text-back {
  background-color: rgba(0, 0, 0, 0.5);
  display: inline-block;
  padding: 5px 10px;
}
.mn-gallery-item .mn-gallery-title,
.mn-gallery-item .mn-gallery-caption {
  display: block;
}
.mn-gallery-item .mn-gallery-title {
  font-weight: bold;
}
.mn-gallery-sub-row {
  position: relative;
  top: 242px;
  height: 50px;
  display: flex;
  justify-content: center;
  width: 90%;
  margin: auto;
}
.mn-gallery-item-sub {
  height: 75px;
  width: 75px;
  float: left;
  border: 0;
  display: flex;
  margin: auto 5px;
}
.mn-gallery-item-sub img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  z-index: 900;
}
.mn-gallery-item-sub img:hover {
  cursor: pointer;
}
.mn-active-sub {
  border: black 1px solid;
}
.mn-gallery-item-sub-hidden {
  display: none;
}
.mn-gallery-controls {
  position: absolute;
  top: 268px;
  width: 100%;
  color: black;
}
.mn-gallery-controls-hidden {
  display: none !important;
}
.mn-gallery-controls .fa {
  text-shadow: 0px 0px 10px rgba(255, 255, 255, 0.75);
  opacity: 0.75;
  font-size: x-large;
}
.mn-gallery-controls .fa:hover {
  opacity: 1;
  cursor: pointer;
}
.mn-gallery-controls-disabled {
  opacity: 0.3 !important;
  cursor: default !important;
}
.mn-gallery-controls .mn-gallery-next {
  float: right;
}
.mn-gallery-controls .mn-gallery-prev {
  float: left;
}
/* Calendar View */

#calendar .week.names .day {
  padding: 5px;
  text-align: center;
}
.week .day {
  text-align: left;
  padding-left: 5px;
}
/* Groups */

#mn-content .mn-groups .mn-group-listing-item {
  display: flex;
}
#mn-content .mn-groups .mn-group-listing-item > div[class^="mn-col"] {
  display: flex;
}
#mn-content .mn-groups .mn-group-listing-item .mn-block.mn-pane {
  flex-basis: 100%;
}
/* Store */

#mn-content .mn-product-price,
#mn-content .mn-cart-total-price {
  font-weight: bold;
}
#mn-content .mn-product-image img {
  max-height: 200px;
}
#mn-content .mn-cart-labels {
  border-bottom: 1px solid #dddddd;
}
/* Create User */

#mn-content .mn-create-user .row {
  margin-left: 0;
  margin-right: 0;
}
/* Modals */

.mn-modal.loading {
  /*position: relative;*/
  opacity: 0.5;
  pointer-events: none;
}
.mn-modal.loading:before {
  content: '\f021';
  display: inline-block;
  animation: fa-spin 2s infinite linear;
  position: absolute;
  top: 50px;
  left: 50%;
  margin-left: -50px;
  text-align: center;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: 100px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.mn-modal {
  color: black;
  background: white;
  border-radius: 3px;
  margin: 0 auto;
  padding: 10px;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 50%;
  max-width: 630px;
  min-width: 320px;
  height: auto;
  z-index: 2000;
  visibility: hidden;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.75);
}
.mn-modal .mn-modal-content {
  position: relative;
  min-height: 400px;
}
.mn-modal .mn-modal-title {
  text-align: center;
  margin-top: 5px;
}
.mn-modal .mn-modal-controls {
  position: relative;
  text-align: right;
  border-top: 1px solid #aaaaaa;
}
.mn-modal .mn-modal-controls button {
  margin: 5px;
}
.mn-modal-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  visibility: hidden;
  top: 0;
  left: 0;
  z-index: 1000;
  opacity: 0;
  background: rgba(170, 170, 170, 0.8);
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
}
.mn-modal.opened,
.mn-modal-overlay.opened {
  visibility: visible;
}
.mn-modal-overlay.opened {
  opacity: 1;
}
/* Tell a Friend */

#mn-tell-a-friend .mn-label,
#mn-tell-a-friend .mn-label input,
#mn-tell-a-friend .mn-label textarea {
  width: 100%;
}
#mn-tell-a-friend .mn-required .mn-form-name:after {
  content: '*';
  color: red;
}
#mn-tell-a-friend .mn-label.mn-error .mn-field-name {
  color: red;
}
#mn-tell-a-friend .mn-label.mn-error input {
  border: 1px solid red;
}
/* Print */

iframe.print-iframe {
  visibility: hidden;
  height: 0;
  width: 0;
}
/* Mobile/Tablet */

@media screen and (max-width: 640px) {
  #mn-content .mn-button,
  #mn-content input[type="text"],
  #mn-content input[type="password"],
  #mn-content select,
  #mn-content text-area,
  #mn-content label,
  #mn-content .mn-col-1,
  #mn-content .mn-col-7-8,
  #mn-content .mn-col-4-5,
  #mn-content .mn-col-3-4,
  #mn-content .mn-col-2-3,
  #mn-content .mn-col-5-8,
  #mn-content .mn-col-3-5,
  #mn-content .mn-col-1-2,
  #mn-content .mn-col-2-5,
  #mn-content .mn-col-3-8,
  #mn-content .mn-col-1-3,
  #mn-content .mn-col-1-4,
  #mn-content .mn-col-1-5,
  #mn-content .mn-col-1-8 {
    width: 100%;
  }
  #mn-content .mn-hidden-below-break {
    display: none;
  }
  #mn-content .mn-hidden-above-break {
    display: block;
  }
  #mn-content .mn-button {
    text-align: center;
  }
  #mn-content .mn-button,
  #mn-content input[type="text"],
  #mn-content input[type="password"],
  #mn-content select,
  #mn-content text-area {
    margin-right: 0;
  }
  #mn-content .mn-sub-heading {
    display: block;
  }
  #mn-content .mn-divider-pipe {
    display: none;
  }
  /* Directory */
  
  #mn-content.mn-directory #filter input,
  #mn-content.mn-directory #filter select {
    display: block;
    max-width: 100%;
  }
  #mn-content .mn-alpha-numeric a {
    display: inline-block;
    margin: 5px;
    min-width: 40px;
    padding: 5px;
    text-decoration: none;
    text-align: center;
  }
  #mn-content .mn-alpha-numeric a:hover {
    text-decoration: none;
  }
  #mn-content .mn-directory-categories > div > div:nth-child(odd),
  #mn-content .mn-directory-categories > div > div:nth-child(even) {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  #mn-content .mn-directory-categories > div > div > a {
    margin-bottom: 20px;
  }
  #mn-content .mn-directory-categories div div {
    display: block;
    margin-left: 1em;
    line-height: 25px;
  }
  #mn-content .mn-directory-categories > div > div > div > div > a {
    margin-bottom: 10px;
  }
  #mn-content .mn-directory-categories .mn-cat,
  #mn-content .mn-directory-categories .mn-sub-cat {
    display: block;
    width: 100%;
  }
  /* Directory 2-Col */
  
  #mn-content .mn-directory-listing-2-col .mn-image.mn-listing-empty .fa {
    font-size: 8em;
  }
  /* Details Page */
  
  #mn-content .mn-details .mn-listing-heading .mn-divider-pipe {
    display: none;
  }
  #mn-content .mn-details .mn-listing-heading .mn-sub-heading {
    display: block;
  }
  #mn-content .mn-details .mn-main-heading {
    display: block;
    text-align: center;
    background-color: #333333;
    color: white;
    padding: 15px;
  }
  #mn-content .mn-details .mn-main-heading:before {
    content: '\002D';
    padding-right: 5px;
  }
  #mn-content .mn-details .mn-main-heading:after {
    content: '\002D';
    padding-left: 5px;
  }
  #mn-content .mn-details .mn-info-action a {
    background-color: #0463ac;
    color: white;
    padding: 15px;
    text-decoration: none;
  }
  #mn-content .mn-details .mn-info-action a:hover {
    color: white;
    text-decoration: none;
  }
  #mn-content .mn-details .mn-info-action .fa.fa-fw {
    width: 1.7412em;
  }
  #mn-content .mn-details .mn-social .fa {
    font-size: 3em;
  }
  /* Groups */
  
  #mn-content .mn-groups .mn-group-listing-item {
    display: block;
  }
  #mn-content .mn-groups .mn-group-listing-item > div[class^="mn-col"] {
    display: block;
  }
}
/* Resets the column width on nested columns for better content display */

@media screen and (min-width: 300px) and (max-width: 640px) {
  #mn-content div[class^="mn-col"] .mn-col-1 {
    width: 100%;
  }
  #mn-content div[class^="mn-col"] .mn-col-7-8 {
    width: 87.5%;
  }
  #mn-content div[class^="mn-col"] .mn-col-4-5 {
    width: 80%;
  }
  #mn-content div[class^="mn-col"] .mn-col-3-4 {
    width: 75%;
  }
  #mn-content div[class^="mn-col"] .mn-col-2-3 {
    width: 66.66%;
  }
  #mn-content div[class^="mn-col"] .mn-col-5-8 {
    width: 62.5%;
  }
  #mn-content div[class^="mn-col"] .mn-col-3-5 {
    width: 60%;
  }
  #mn-content div[class^="mn-col"] .mn-col-1-2 {
    width: 50%;
  }
  #mn-content div[class^="mn-col"] .mn-col-2-5 {
    width: 40%;
  }
  #mn-content div[class^="mn-col"] .mn-col-3-8 {
    width: 37.5%;
  }
  #mn-content div[class^="mn-col"] .mn-col-1-3 {
    width: 33.33%;
  }
  #mn-content div[class^="mn-col"] .mn-col-1-4 {
    width: 25%;
  }
  #mn-content div[class^="mn-col"] .mn-col-1-5 {
    width: 20%;
  }
  #mn-content div[class^="mn-col"] .mn-col-1-8 {
    width: 12.5%;
  }
}
#mn-content .mn-store-search {
  padding-bottom: 20px;
}
#mn-content .mn-store-category-dd {
  height: 35px;
  margin: 0px;
  border-radius: 0px;
  color: #555555;
  font-size: 16px;
}
#mn-content .mn-store-searchbox {
  background-color: white;
  border-color: darkgray;
  border-radius: 0px;
  height: 35px;
  font-size: 16px;
}
#mn-content .mn-store-searchbox::-webkit-input-placeholder {
  color: #6c757d;
  opacity: 1;
}
#mn-content .mn-store-searchbox::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}
#mn-content .mn-store-searchbox:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}
#mn-content .mn-store-searchbox::-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}
#mn-content .mn-store-searchbox::placeholder {
  color: #6c757d;
  opacity: 1;
}
#mn-content .mn-store-search-btn {
  padding: 8px 15px;
  border-radius: 0px;
  height: 35px;
  font-size: 16px;
}
#mn-content .mn-search-result-term {
  margin-bottom: 10px;
  margin-top: -10px;
}
#mn-scheduled-billings-wrapper .enroll-in-autopay-cb {
  width: unset;
}

/*** MCC Member Directory styling — Oct 2026 ***/
/* Landing-page rules are scoped via the A–Z links, which stay in the DOM
   but are hidden; category quick links (mcc-directory-nav.html) replace them. */

/* CHANGE LOG — 2026-10-10
   - Member website link: replaced the old "Visit website ↗" override
     (it hid the link text and used selectors that don't exist in the
     GrowthZone markup) with rules that target the real classes
     (.gz-card-website on results cards, .gz-details-website on the
     details page). The matching script in Custom Footer HTML writes the
     member's domain into the link text and keeps the link followed.
   - NOTE: the website field only appears once "Website" is enabled for
     each Listing Type in GrowthZone's directory settings, and the
     "link listing to website instead of details page" option is turned
     off. CSS cannot show a field GrowthZone isn't outputting. */

/* ---------- Typeface: sans-serif throughout the directory ---------- */
/* Body/UI text. If the main site uses a different sans, put its name first. */
/* Headings are excluded here — they get Archivo in the next block. */
/* Icon elements (Font Awesome / Glyphicon) are excluded so arrows and the
   search icon keep their icon font. */
#gzns:has(a[href*="FindStartsWith"]),
#gzns:has(a[href*="FindStartsWith"]) *:not(i):not(svg):not([class*="fa-"]):not(.fa):not(.fas):not(.far):not(.fab):not(.glyphicon):not([class*="icon"]):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(:is(h1, h2, h3, h4, h5, h6) *) {
  font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}

/* ---------- Headlines: Archivo Medium, sans-serif ---------- */
/* Archivo must be loaded in the site <head> if it isn't already, e.g.
   <link href="https://fonts.googleapis.com/css2?family=Archivo:wght@500&display=swap" rel="stylesheet"> */
body:has(a[href*="FindStartsWith"]) h1,
#gzns :is(h1, h2, h3, h4, h5, h6),
#gzns :is(h1, h2, h3, h4, h5, h6) a,
.gz-directory-details :is(h1, h2, h3, h4, h5, h6),
#gz-directory-details :is(h1, h2, h3, h4, h5, h6),
.gz-directory-details .gz-card-title,
.gz-directory-search :is(h1, h2, h3, h4, h5, h6),
#gz-directory-search :is(h1, h2, h3, h4, h5, h6),
.gz-directory-card h5,
.gz-directory-card h5 a,
.gz-list-card h5,
.gz-list-card h5 a {
  font-family: "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-weight: 500 !important;
}

/* ---------- Headline: navy on white, above the navy search band ---------- */
body:has(a[href*="FindStartsWith"]) h1 {
  background: transparent;
  color: #1e2953;
  font-size: clamp(2.2rem, 4vw, 3.1rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin: 48px 0 28px;
  padding: 0 26px; /* lines the text up with the search band's inner edge */
}
/* Brand stripe above the headline: blue, then the red and green accents */
body:has(a[href*="FindStartsWith"]) h1::before {
  content: "";
  display: block;
  width: 96px;
  height: 6px;
  margin-bottom: 22px;
  border-radius: 3px;
  background: linear-gradient(90deg, #38b6ff 0 55%, #ff0035 55% 80%, #9fd356 80% 100%);
}
/* Deck: why this directory matters */
body:has(a[href*="FindStartsWith"]) h1::after {
  content: "Every business listed here is a Manhattan Chamber member. Hire one and you keep jobs and dollars in the neighborhoods that make this borough run.";
  display: block;
  max-width: 62ch;
  margin-top: 18px;
  color: #5b6480;
  font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.55;
}

/* ---------- Search band ---------- */
#gzns:has(a[href*="FindStartsWith"]) form {
  background: #1e2953;
  color: #fff;
  border-radius: 10px;
  padding: 28px 36px 26px;
  margin: 0 0 32px;
}
#gzns:has(a[href*="FindStartsWith"]) form::before {
  content: "Find a member by name, category, or zip code.";
  display: block;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 600;
  margin-bottom: 14px;
}
@media (max-width: 600px) {
  body:has(a[href*="FindStartsWith"]) h1 {
    padding: 0 8px;
    margin: 24px 0 20px;
  }
  #gzns:has(a[href*="FindStartsWith"]) form {
    padding: 22px 22px 20px;
  }
}
#gzns:has(a[href*="FindStartsWith"]) .form-control,
#gzns:has(a[href*="FindStartsWith"]) select {
  height: 48px;
  font-size: 0.95rem;
  background: #fff;
  border: none;
  border-radius: 6px;
}
#gzns:has(a[href*="FindStartsWith"]) form .form-control,
#gzns:has(a[href*="FindStartsWith"]) form select,
#gzns:has(a[href*="FindStartsWith"]) form input {
  color: #1e2953;
}
#gzns:has(a[href*="FindStartsWith"]) .btn-primary,
#gzns:has(a[href*="FindStartsWith"]) button[type="submit"] {
  background-color: #38b6ff !important;
  border-color: #38b6ff !important;
  color: #fff !important;
  height: 48px;
  padding: 0 26px;
  font-weight: 700;
  letter-spacing: 0.02em;
  border-radius: 6px;
}
#gzns:has(a[href*="FindStartsWith"]) .btn-primary:hover,
#gzns:has(a[href*="FindStartsWith"]) button[type="submit"]:hover {
  background-color: #ff0035 !important;
  border-color: #ff0035 !important;
}
#gzns:has(a[href*="FindStartsWith"]) form a {
  color: #9fd356;
  font-weight: 600;
}
#gzns:has(a[href*="FindStartsWith"]) form label {
  color: #fff;
  font-weight: 600;
}

/* ---------- A–Z strip: hidden (replaced by category quick links) ---------- */
#gzns a[href*="FindStartsWith"],
#gzns .mcc-az-row {
  display: none !important;
}

/* ---------- Quick links: one per headline category (built by mcc-directory-nav.html) ---------- */
#gzns .mcc-quick {
  margin: 0 0 32px;
}
#gzns .mcc-quick__lead {
  margin: 0 0 12px;
  font-size: 1.05rem;
  font-weight: 600;
  color: #1a1f36;
}
#gzns .mcc-quick__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
#gzns a.mcc-quick__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 2px solid #1e2953;
  border-radius: 999px;
  background: #fff;
  color: #1e2953;
  padding: 10px 18px;
  font-size: 0.98rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition:
    background 0.15s,
    color 0.15s,
    border-color 0.15s;
}
#gzns a.mcc-quick__link:hover {
  background: #1e2953;
  color: #fff;
}
#gzns a.mcc-quick__link:focus-visible {
  outline: 3px solid #9fd356;
  outline-offset: 2px;
}
#gzns .mcc-quick__count {
  font-size: 0.78rem;
  font-weight: 700;
  background: #eef7fd;
  color: #1e2953;
  border-radius: 999px;
  padding: 2px 8px;
}
#gzns a.mcc-quick__link:hover .mcc-quick__count {
  background: #38b6ff;
  color: #fff;
}
#gzns .mcc-quick__note {
  margin: 12px 0 0;
  font-size: 0.9rem;
  color: #5b6480;
}

/* ---------- Category cards ---------- */
#gzns *:has(> h5 > a[href*="/member-directory/Search/"]) {
  background: #fff;
  border: 1px solid #e3e8ef;
  border-top: 5px solid #1e2953;
  border-radius: 8px;
  padding: 22px 22px 14px;
  box-shadow: 0 2px 6px rgba(30, 41, 83, 0.06);
  transition:
    box-shadow 0.2s,
    transform 0.2s;
}
#gzns *:has(> h5 > a[href*="/member-directory/Search/"]):hover {
  box-shadow: 0 12px 28px rgba(30, 41, 83, 0.14);
  transform: translateY(-3px);
}

/* Card headings */
#gzns h5 > a[href*="/member-directory/Search/"] {
  display: block;
  color: #1e2953;
  font-size: 1.25rem;
  line-height: 1.3;
  font-weight: 500;
  text-decoration: none;
  padding-bottom: 10px;
  margin-bottom: 14px;
  border-bottom: 2px solid #38b6ff;
}
#gzns h5 > a[href*="/member-directory/Search/"]:hover {
  color: #38b6ff;
}

/* Hide the stray commas between links */
#gzns *:has(> a[href*="/member-directory/Search/"][href*="cid="]) {
  font-size: 0;
}

/* Subcategory pills */
#gzns a[href*="/member-directory/Search/"][href*="cid="] {
  display: inline-block;
  font-size: 0.88rem;
  line-height: 1.4;
  font-weight: 600;
  background: #eef7fd;
  color: #1e2953;
  border: 1px solid #b9dff7;
  border-radius: 999px;
  padding: 7px 15px;
  margin: 0 8px 10px 0;
  text-decoration: none;
  transition:
    background 0.15s,
    color 0.15s,
    border-color 0.15s;
}
#gzns a[href*="/member-directory/Search/"][href*="cid="]:hover {
  background: #1e2953;
  color: #fff;
  border-color: #1e2953;
}

/* ---------- Hide "Powered By GrowthZone" (directory) ---------- */
#gzns *:has(> a[href*="growthzone.com"]) {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  #gzns *:has(> h5 > a[href*="/member-directory/Search/"]),
  #gzns *:has(> h5 > a[href*="/member-directory/Search/"]):hover,
  #gzns a.mcc-quick__link,
  #gzns a[href*="/member-directory/Search/"][href*="cid="] {
    transition: none;
    transform: none;
  }
}

/* ============================================================
   Shared tokens
   ============================================================ */
:root {
  --mcc-navy: #1e2953;
  --mcc-blue: #38b6ff;
  --mcc-red: #ff0035;
  --mcc-green: #9fd356;
  --mcc-ink: #1a1f36;
  --mcc-muted: #5b6480;
  --mcc-line: #dde3ef;
  --mcc-panel: #f4f7fb;
  --mcc-head: "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* ============================================================
   MCC — Member directory DETAIL page
   Scope: pages that render the share/print link (details only)
   ============================================================ */

.gz-directory-details,
#gz-directory-details {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 1.25rem 3rem;
  color: var(--mcc-ink);
}

.gz-directory-details .gz-details-title,
.gz-directory-details h1.gz-details-title,
.gz-directory-details .gz-details-top h1 {
  display: none;
}

.gz-back-to-search,
.gz-directory-details a[href$="/member-directory"] {
  display: inline-block;
  margin: 0 0 1.25rem;
  font-size: 0.9rem;
  color: var(--mcc-muted);
  text-decoration: none;
}
.gz-back-to-search:hover,
.gz-directory-details a[href$="/member-directory"]:hover {
  color: var(--mcc-navy);
}

.gz-details-top {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 1.5rem 2rem;
  align-items: start;
  padding: 1.75rem;
  margin-bottom: 2rem;
  background: #fff;
  border: 1px solid var(--mcc-line);
  border-top: 4px solid var(--mcc-navy);
}
.gz-details-logo,
.gz-details-top .gz-member-logo {
  grid-row: 1 / span 2;
}
.gz-details-logo img,
.gz-details-top .gz-member-logo img {
  width: 100%;
  height: auto;
  max-height: 180px;
  object-fit: contain;
  background: #fff;
}

.gz-details-category,
.gz-details-categories {
  margin: 0;
}
.gz-details-category h5,
.gz-details-categories h5,
.gz-details-category .gz-card-title {
  display: none;
}
.gz-details-category a,
.gz-details-categories a,
.gz-details-category span,
.gz-details-categories span {
  display: inline-block;
  margin: 0 0.4rem 0.4rem 0;
  padding: 0.3rem 0.8rem;
  border-radius: 999px;
  background: var(--mcc-blue);
  color: #fff;
  font-size: 0.85rem;
  font-weight: 600;
  text-decoration: none;
}
.gz-details-category a:hover,
.gz-details-categories a:hover {
  background: var(--mcc-navy);
}

/* Contact list on the details page.
   .gz-details-links / .gz-list-group are the classes GrowthZone actually
   outputs; the .gz-details-top / .gz-member-contact names are kept for
   safety in case a template update reintroduces them. */
.gz-details-top .gz-member-contact,
.gz-details-top ul,
.gz-details-links .gz-list-group {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 1rem;
}
.gz-details-top .gz-member-contact li,
.gz-details-top ul li,
.gz-details-links .gz-list-group li {
  padding: 0.45rem 0;
  border-top: 1px solid var(--mcc-line);
}
.gz-details-top .gz-member-contact li:first-child,
.gz-details-top ul li:first-child,
.gz-details-links .gz-list-group li:first-child {
  border-top: 0;
}
.gz-details-top .gz-member-contact a,
.gz-details-top ul a,
.gz-details-links .gz-list-group a {
  color: var(--mcc-navy);
  text-decoration: none;
  font-weight: 500;
}
.gz-details-top .gz-member-contact a:hover,
.gz-details-top ul a:hover,
.gz-details-links .gz-list-group a:hover {
  color: var(--mcc-blue);
  text-decoration: underline;
}

/* ---------- Member website link (details page) ----------
   The Custom Footer HTML script replaces GrowthZone's "Visit Website"
   label with the member's own domain (e.g. litriviscpa.com) and adds
   rel="noopener" — never nofollow — so the link stays a followed
   backlink. This block only styles it. Do not set font-size: 0 here;
   that hid the text in the previous version. */
.gz-details-links li.gz-details-website a,
.gz-directory-details li[class*="website"] a,
.gz-details-top .gz-member-contact a[href^="http"]:not([href*="growthzoneapp.com"]):not([href*="manhattancc.org"]) {
  font-weight: 700;
  color: var(--mcc-navy);
  overflow-wrap: anywhere;
}
.gz-details-links li.gz-details-website a::after,
.gz-directory-details li[class*="website"] a::after,
.gz-details-top .gz-member-contact a[href^="http"]:not([href*="growthzoneapp.com"]):not([href*="manhattancc.org"])::after {
  content: " ↗";
  font-weight: 400;
  color: var(--mcc-blue);
}
.gz-details-links li.gz-details-website a:hover,
.gz-directory-details li[class*="website"] a:hover {
  color: var(--mcc-blue);
  text-decoration: underline;
}

.gz-details-about,
.gz-details-additional-info,
.gz-details-images,
.gz-details-contacts,
.gz-details-map,
.gz-details-video,
.gz-details-highlights {
  margin-bottom: 2.25rem;
}

.gz-details-about h3,
.gz-details-additional-info h3,
.gz-details-images h3,
.gz-details-contacts h3,
.gz-details-map h3,
.gz-details-video h3,
.gz-details-highlights h3,
.gz-directory-details .gz-card-title {
  font-family: var(--mcc-head);
  font-size: 1.1rem;
  font-weight: 500;
  color: var(--mcc-navy);
  margin: 0 0 0.75rem;
  padding-bottom: 0.4rem;
  border-bottom: 2px solid var(--mcc-line);
  position: relative;
}
.gz-details-about h3::after,
.gz-details-additional-info h3::after,
.gz-details-images h3::after,
.gz-details-contacts h3::after,
.gz-details-map h3::after,
.gz-details-video h3::after,
.gz-details-highlights h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 48px;
  height: 2px;
  background: var(--mcc-blue);
}

.gz-details-about p {
  max-width: 68ch;
  font-size: 1.05rem;
  line-height: 1.65;
  margin: 0 0 1rem;
}
.gz-details-about a {
  color: var(--mcc-navy);
  text-decoration: underline;
  text-decoration-color: var(--mcc-blue);
  text-underline-offset: 3px;
}

.gz-details-additional-info p,
.gz-details-additional-info li {
  margin: 0;
  padding: 0.5rem 0;
  border-top: 1px solid var(--mcc-line);
  color: var(--mcc-ink);
}

.gz-details-images .gz-gallery,
.gz-details-images > div {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 0.75rem;
}
.gz-details-images img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  background: var(--mcc-panel);
  border: 1px solid var(--mcc-line);
  padding: 0.5rem;
}

.gz-details-contacts .gz-member-repcard,
.gz-details-contacts > div {
  padding: 1rem 1.25rem;
  background: var(--mcc-panel);
  border-left: 3px solid var(--mcc-green);
}
.gz-details-contacts h5 {
  margin: 0 0 0.25rem;
  font-family: var(--mcc-head);
  font-size: 1rem;
  font-weight: 500;
  color: var(--mcc-navy);
}
.gz-details-contacts .gz-rep-title,
.gz-details-contacts small {
  color: var(--mcc-muted);
}

.gz-details-map iframe,
.gz-details-map .gz-map {
  width: 100%;
  height: 260px;
  border: 1px solid var(--mcc-line);
}

.gz-details-share {
  margin-top: 2.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--mcc-line);
}
.gz-details-share h5 {
  display: none;
}
.gz-details-share a {
  display: inline-block;
  margin-right: 1rem;
  font-size: 0.85rem;
  color: var(--mcc-muted);
}
.gz-details-share a:hover {
  color: var(--mcc-red);
}

@media (max-width: 720px) {
  .gz-details-top {
    grid-template-columns: 1fr;
    padding: 1.25rem;
  }
  .gz-details-logo,
  .gz-details-top .gz-member-logo {
    grid-row: auto;
    max-width: 160px;
  }
}

/* ============================================================
   MCC — Member directory SEARCH RESULTS page
   Scope: only pages that have the Grid/List view toggle.
   The landing page (A–Z strip + category cards) never matches,
   so nothing here can touch it.
   ============================================================ */

/* Hide the module's duplicate category title (results pages only) */
body:has(a[title="Grid View"]) .gz-directory-search > h1,
body:has(a[title="Grid View"]) #gz-directory-search > h1 {
  display: none;
}

/* Search bar */
body:has(a[title="Grid View"]) #gz-directory-search-form,
body:has(a[title="Grid View"]) .gz-directory-search form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  align-items: center;
  padding: 1rem 1.25rem;
  margin: 0 0 1.5rem;
  background: var(--mcc-panel);
  border: 1px solid var(--mcc-line);
}
body:has(a[title="Grid View"]) .gz-directory-search form input[type="text"],
body:has(a[title="Grid View"]) .gz-directory-search form input[type="search"] {
  flex: 1 1 260px;
  min-height: 44px;
  padding: 0 0.9rem;
  border: 1px solid var(--mcc-line);
  border-radius: 4px;
  font-size: 1rem;
  background: #fff;
}
body:has(a[title="Grid View"]) .gz-directory-search form select {
  min-height: 44px;
  padding: 0 0.75rem;
  border: 1px solid var(--mcc-line);
  border-radius: 4px;
  background: #fff;
  font-size: 0.95rem;
  color: var(--mcc-ink);
}
body:has(a[title="Grid View"]) .gz-directory-search form button,
body:has(a[title="Grid View"]) .gz-directory-search form input[type="submit"] {
  min-height: 44px;
  padding: 0 1.4rem;
  border: 0;
  border-radius: 4px;
  background: var(--mcc-navy);
  color: #fff;
  font-weight: 600;
  font-size: 0.95rem;
  cursor: pointer;
}
body:has(a[title="Grid View"]) .gz-directory-search form button:hover {
  background: var(--mcc-blue);
}

/* Parent-category breadcrumb link */
body:has(a[title="Grid View"]) .gz-directory-search > a[href$="/member-directory"] {
  display: inline-block;
  margin-bottom: 0.75rem;
  font-size: 0.9rem;
  color: var(--mcc-muted);
  text-decoration: none;
}

/* Results count + view toggle */
body:has(a[title="Grid View"]) .gz-directory-search h4 {
  margin: 0 0 1rem;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--mcc-muted);
}
a[title="Grid View"],
a[title="List View"] {
  margin-left: 0.75rem;
  color: var(--mcc-muted);
  font-size: 0;
}
a[title="Grid View"]::before {
  content: "▦";
  font-size: 1.1rem;
}
a[title="List View"]::before {
  content: "☰";
  font-size: 1.1rem;
}
a[title="Grid View"]:hover::before,
a[title="List View"]:hover::before {
  color: var(--mcc-navy);
}

/* Card container: target the cards' parent directly, never .row */
*:has(> .gz-directory-card),
*:has(> .gz-list-card) {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.25rem;
}

.gz-directory-card,
.gz-list-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--mcc-line);
  border-top: 3px solid var(--mcc-navy);
  padding: 0 0 1.1rem;
  margin: 0;
  width: auto;
  max-width: none;
  float: none;
}

/* Logo box */
.gz-directory-card .gz-card-image,
.gz-list-card .gz-card-image,
.gz-directory-card > a:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 140px;
  padding: 1rem;
  background: var(--mcc-panel);
  border-bottom: 1px solid var(--mcc-line);
  overflow: hidden;
  text-decoration: none;
}
.gz-directory-card .gz-card-image img,
.gz-list-card .gz-card-image img,
.gz-directory-card > a:first-child img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}
.gz-directory-card .gz-card-image:not(:has(img)),
.gz-directory-card > a:first-child:not(:has(img)) {
  background: var(--mcc-navy);
  color: #fff;
  font-weight: 700;
  font-size: 1.05rem;
  text-align: center;
  line-height: 1.3;
}

/* Name */
.gz-directory-card h5,
.gz-list-card h5 {
  margin: 1rem 1.1rem 0.5rem;
  font-family: var(--mcc-head);
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.3;
}
.gz-directory-card h5 a,
.gz-list-card h5 a {
  color: var(--mcc-navy);
  text-decoration: none;
}
.gz-directory-card h5 a:hover,
.gz-list-card h5 a:hover {
  color: var(--mcc-blue);
}

/* Contact links as buttons */
.gz-directory-card ul,
.gz-list-card ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0 1.1rem 0.75rem;
  padding: 0;
}
.gz-directory-card ul li,
.gz-list-card ul li {
  margin: 0;
  padding: 0;
}
.gz-directory-card ul a,
.gz-list-card ul a {
  display: inline-block;
  padding: 0.3rem 0.7rem;
  border: 1px solid var(--mcc-line);
  border-radius: 4px;
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--mcc-navy);
  text-decoration: none;
  white-space: nowrap;
}
.gz-directory-card ul a:hover,
.gz-list-card ul a:hover {
  border-color: var(--mcc-blue);
  color: var(--mcc-blue);
}
.gz-directory-card ul a[href*="/Details/"],
.gz-list-card ul a[href*="/Details/"] {
  background: var(--mcc-navy);
  border-color: var(--mcc-navy);
  color: #fff;
}
.gz-directory-card ul a[href*="/Details/"]:hover,
.gz-list-card ul a[href*="/Details/"]:hover {
  background: var(--mcc-blue);
  border-color: var(--mcc-blue);
  color: #fff;
}

/* ---------- Member website link (results cards) ----------
   Same treatment as the details page: the footer script writes the
   member's domain into the link; this just makes it read as the
   member's own site rather than one more grey button. */
.gz-directory-card li.gz-card-website a,
.gz-list-card li.gz-card-website a {
  border-color: var(--mcc-blue);
  color: var(--mcc-navy);
  font-weight: 700;
}
.gz-directory-card li.gz-card-website a::after,
.gz-list-card li.gz-card-website a::after {
  content: " ↗";
  font-weight: 400;
  color: var(--mcc-blue);
}
.gz-directory-card li.gz-card-website a:hover,
.gz-list-card li.gz-card-website a:hover {
  background: #eef7fd;
  border-color: var(--mcc-navy);
}

/* Category line at the bottom */
.gz-directory-card > p:last-child,
.gz-directory-card > div:last-child,
.gz-list-card > p:last-child,
.gz-list-card > div:last-child {
  margin: auto 1.1rem 0;
  padding-top: 0.6rem;
  border-top: 1px solid var(--mcc-line);
  font-size: 0.82rem;
  color: var(--mcc-muted);
}

/* List view */
.gz-list-view .gz-directory-card,
.gz-list-view .gz-list-card {
  flex-direction: row;
  align-items: stretch;
}
.gz-list-view .gz-card-image,
.gz-list-view .gz-directory-card > a:first-child {
  flex: 0 0 160px;
  height: auto;
  border-bottom: 0;
  border-right: 1px solid var(--mcc-line);
}

@media (max-width: 600px) {
  *:has(> .gz-directory-card),
  *:has(> .gz-list-card) {
    grid-template-columns: 1fr;
  }
  .gz-list-view .gz-directory-card,
  .gz-list-view .gz-list-card {
    flex-direction: column;
  }
  .gz-list-view .gz-card-image {
    flex-basis: auto;
    height: 140px;
    border-right: 0;
    border-bottom: 1px solid var(--mcc-line);
  }
}
/* ---------- Results card fixes (append at end) ---------- */

/* Contact rows: column list, icon + text aligned, text can wrap */
.gz-directory-card ul,
.gz-list-card ul {
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
}
.gz-directory-card ul li,
.gz-list-card ul li {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  min-width: 0;
}
.gz-directory-card ul li > i,
.gz-list-card ul li > i,
.gz-directory-card ul li > svg,
.gz-list-card ul li > svg {
  flex: 0 0 auto;
  margin-top: 0.45rem;
  color: var(--mcc-navy);
}
.gz-directory-card ul a,
.gz-list-card ul a,
.gz-directory-card ul li > span,
.gz-list-card ul li > span {
  display: inline-block;
  white-space: normal;
  overflow-wrap: anywhere;
  min-width: 0;
  max-width: 100%;
  line-height: 1.4;
}

/* Hide the no-logo name slot so the title isn't shown twice */
.gz-directory-card > :first-child:not(:has(img)):not(:has(h5)):not(h5):not(ul),
.gz-list-card > :first-child:not(:has(img)):not(:has(h5)):not(h5):not(ul) {
  display: none;
}

/* Long names: let the heading break cleanly */
.gz-directory-card h5,
.gz-list-card h5 {
  overflow-wrap: anywhere;
}

/* ============================================================
   MCC — Membership APPLICATION page (business.manhattancc.org/application)
   Hides the "Powered By GrowthZone" badge on every module page and
   brands the Next button. Button wording is changed by the script in
   Custom Footer HTML, not here.
   ============================================================ */

/* Badge: <div class="mn-block mn-powered-by"> */
.mn-powered-by {
  display: none !important;
}

/* Button: <button class="mn-button form-control btn btn-warning" type="submit"> */
#mainForm .mn-button {
  background: #1e2953 !important;
  border: 2px solid #1e2953 !important;
  color: #fff !important;
  font-weight: 700;
  font-size: 17px;
  line-height: 1.2;
  min-width: 180px;
  height: auto;
  padding: 12px 28px;
  border-radius: 4px;
  text-shadow: none;
  box-shadow: none;
  cursor: pointer;
}
#mainForm .mn-button:hover,
#mainForm .mn-button:focus {
  background: #38b6ff !important;
  border-color: #38b6ff !important;
  color: #fff !important;
  outline: none;
}
#mainForm .mn-button:disabled {
  opacity: 0.6;
  cursor: default;
}

/* ============================================================
   Page titles on EVERY module page (Join, Calendar, Directory, etc.)
   The directory headline rule above is scoped to directory pages only;
   this one catches the top h1 the theme renders on all other pages.
   ============================================================ */
h1,
.gz-page-title,
#gz-page-title,
.gz-pagetitle,
.mn-page-title,
#mn-page-title,
.page-title,
.entry-title {
  font-family: "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-weight: 500 !important;
}
/* ============================================================
   MCC — Membership APPLICATION: tier options
   Uses the classes the footer script adds. Tier name is the
   headline; price and description are supporting text.
   ============================================================ */
.mcc-tier {
  padding: 22px 0 26px;
  border-top: 1px solid #e3e8ef;
}
.mcc-tier:first-of-type {
  border-top: 0;
}

/* Checkbox / radio */
.mcc-tier input[type="radio"],
.mcc-tier input[type="checkbox"] {
  width: 24px;
  height: 24px;
  margin: 0 12px 0 0;
  vertical-align: middle;
  accent-color: #1e2953;
  cursor: pointer;
}

/* The line that holds the checkbox + name */
.mcc-tier label,
.mcc-tier label:has(> input) {
  display: block;
  margin: 0 0 6px;
  padding: 0;
  line-height: 1.25;
}

/* The tier name — the headline of each choice */
.mcc-tier__name,
.mcc-tier label:has(> input) {
  font-family: "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-weight: 700 !important;
  font-size: 2rem !important;      /* ~32px */
  line-height: 1.25 !important;
  letter-spacing: -0.01em;
  color: #1e2953 !important;
  vertical-align: middle;
}

/* Price line and description: supporting text, not competing */
.mcc-tier p,
.mcc-tier em,
.mcc-tier i {
  font-size: 1rem !important;
  line-height: 1.5;
}
.mcc-tier p {
  margin: 0 0 8px;
}
.mcc-tier p strong,
.mcc-tier p b {
  font-size: 1.15rem;
  color: #1e2953;
}

/* Kill empty paragraphs / breaks that leave a gap under the name */
.mcc-tier p:empty,
.mcc-tier div:empty,
.mcc-tier label + br,
.mcc-tier .mcc-tier__name + br {
  display: none;
}

@media (max-width: 600px) {
  .mcc-tier {
    padding: 18px 0 22px;
  }
  .mcc-tier__name,
  .mcc-tier label:has(> input) {
    font-size: 1.7rem !important;  /* ~27px on a phone */
  }
  .mcc-tier input[type="radio"],
  .mcc-tier input[type="checkbox"] {
    width: 22px;
    height: 22px;
    margin-right: 10px;
  }
}