/* General
   ========================================================================== */
html {
  scroll-behavior: smooth;
}

body {
  font-family: "Poppins", sans-serif;
  line-height: 1.5;
  color: #333;
  font-size: 16px;
  letter-spacing: 0.3px
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Playfair Display", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  margin: 32px 0 16px;
  color: #000;
}

h1,
.ZineTitle h2,
.ZineTitle h3,
.LoginForm h2,
h3#advsearch {
  margin: 0 0 32px;
  font-size: 40px;
}

h2 {
  font-size: 28px;
}

.ZineTitle h3 {
  margin: 0;
}

h4 {
  font-size: 20px;
}

h5 {
  font-size: 18px;
}

form table td {
  padding: 0 5px 5px 0;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  color: #293a93;
  text-decoration: none;
}

a:hover,
a:focus {
  color: #aaa;
  text-decoration: none;
  transition: all 0.3s ease;
}

a:hover img,
a:focus img {
  opacity: 0.7;
  transition: all 0.3s;
}

p,
ul,
ol,
table.Report,
.iframe-wrap,
.alert,
table:not(:last-child) {
  margin-bottom: 24px;
}

hr {
  margin: 48px 0;
}

/* Buttons
   ========================================================================== */

.btn,
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.button,
span.button a,
.ZineItem .ZineSummaryIndex a {
  background: #212954;
  color: #fff;
  display: inline-block;
  vertical-align: middle;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  padding: 12px 24px;
  border-radius: 0;
  transition: all 0.3s ease;
}

.btn-alt {
  background: #0d4420;
}

input[type="reset"] {
  background: #e3e3e3;
  color: #818181;
}

span.button,
span.button:hover,
span.button:active,
span.button:focus {
  background: none;
  padding: 0;
  border: none;
  color: #4c4545;
}

.btn:hover,
.btn:focus,
.btn:active,
button:hover:not(.btn-close),
button:focus:not(.btn-close),
button:active:not(.btn-close),
input[type="submit"]:hover,
input[type="submit"]:active,
input[type="submit"]:focus,
input[type="button"]:hover,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:active,
input[type="reset"]:focus,
.button:hover,
.button:active,
.button:focus,
span.button a:hover,
span.button a:active,
span.button a:focus,
input[type="button"].cancel:hover,
input[type="button"].cancel:active,
input[type="button"].cancel:focus,
input.cancel:hover,
input.cancel:active,
input.cancel:focus,
input[value=" Cancel "]:hover,
input[value=" Cancel "]:active,
input[value=" Cancel "]:focus,
input[value="Cancel"]:hover,
input[value="Cancel"]:active,
input[value="Cancel"]:focus,
input#CartUpdateButton:hover,
input#CartUpdateButton:active,
input#CartUpdateButton:focus,
.ZineItem .ZineSummaryIndex a:hover,
.ZineItem .ZineSummaryIndex a:active,
.ZineItem .ZineSummaryIndex a:focus {
  background: #aaa;
  color: #fff;
  text-decoration: none;
}

.btn:focus,
button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
.button:focus,
span.button a:focus,
.ZineItem .ZineSummaryIndex a:focus {
  outline: 0;
  color: #fff;
  background-color: #aaa;
  box-shadow: 0 0 0 4px rgb(170 170 170 / 50%);
}


button.mfp-close:hover,
button.mfp-close:active,
button.mfp-close:focus {
  color: #4c4545;
}

button.close:hover,
button.close:active,
button.close:focus {
  background: none;
  box-shadow: none;
  color: #000;
}


/* Header
   ========================================================================== */

header {
  position: relative;
  padding: 20px 0;
}

header .logo:hover img,
#footer .logo:hover img {
  opacity: 1;
}

header .logo {
  margin-top: -43px;
}

header .logo img {
  max-width: 120px;
}



/* Utility Nav
   ========================================================================== */

.utility-nav {
  padding-bottom: 15px;
}

.utility-nav .Login a {
  display: inline-block;
}

.utility-nav a {
  color: #5f5f5f;
}

.utility-nav a:hover,
.utility-nav a:active,
.utility-nav a:focus {
  color: #333;
}

.utility-nav .button,
.utility-nav .button:hover,
.utility-nav .button:active,
.utility-nav .button:focus {
  color: #fff;
}

.Login .LoginUserLink {
  margin-left: 3px;
}

.utility-nav .Login .LoginUserLink,
.utility-nav .Login .Logout {
  text-transform: none;
}


.utility-nav .util-link {
  display: inline-block;
}

.utility-nav {
    font-size: 14px;
}

.utility-nav a.shoppingCart {
  font-size: 18px;
}



/* Menu
   ========================================================================== */

#menu a {
  color: #333;
}

#SMenu {
  display: none;
}

#menu #SMenu > li#thispage > a,
#menu #SMenu > li#thispage > a:after {
  background-color: #212954;
  color: #fff;
  font-weight: 600;
}

#SMenu, #menu li#page_1760,
#menu li#thispage.page_1760 {
  display: none;
}

a.menu:empty,
#menu .social a.menu {
  display: none;
}


/* Mobile Menu */

.slicknav_menu .slicknav_menutxt,
a.slicknav_btn.slicknav_open .slicknav_menutxt {
  font-weight: bold;
  font-size: 0;
}

.slicknav_menu .slicknav_icon-bar {
  font-size: 16px;
  background-color: #333;
  box-shadow: none !important;
}

.slicknav_arrow {
  padding-left: 12px;
  float: right;
  font-size: 0;
}

.slicknav_arrow::after {
  -webkit-font-smoothing: antialiased;
  font-weight: 900;
  font-family: "Font Awesome 6 Free";
  content: "\f105";
  font-size: 18px;
  color: #212954;
}

.slicknav_collapsed .slicknav_arrow::after {
  content: "\f105" !important;
}

.slicknav_open .slicknav_arrow::after {
  content: "\f107";
}

.slicknav_menutxt {
  color: #333;
}

#menu a.slicknav_btn {
  padding: 15px;
  position: absolute;
  top: -65px;
  right: 0;
  font-size: 24px;
}

.slicknav_menu .slicknav_icon {
  float: right !important;
  padding-top: 5px;
}

.slicknav_nav {
  padding: 20px 0 0;
  margin: 0;
}

.slicknav_nav li > a {
  padding: 12px 0;
  background: #fff;
  border-bottom: 1px solid #d3d3d3;
  text-align: left;
}

.slicknav_nav li:last-child > a {
    border: none;
}

.slicknav_nav .Login a {
  display: inline-block;
}

.slicknav_nav ul {
  padding: 0;
}

.slicknav_nav ul li a {
  background: #e5e5e5;
  padding: 12px;
  font-size: 14px;
}

.slicknav_nav ul li a a {
    padding: 0;
}

.slicknav_nav ul ul li a {
  background: #c5c5c5;
  font-size: 14px;
}

.slicknav_nav ul ul ul li a {
  background: #8d8d8d;
  color: #fff;
}

.slicknav_menu .slicknav_icon {
  display: none;
}

.slicknav_menu .slicknav_menutxt {
  float: right;
  line-height: 1;
}

.slicknav_menu a.slicknav_btn.slicknav_collapsed .slicknav_menutxt::after,
.slicknav_menu a.slicknav_btn.slicknav_open .slicknav_menutxt::after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  content: "\f0c9";
  font-size: 36px;
  padding-left: 8px;
  vertical-align: middle;
}

.slicknav_menu a.slicknav_btn.slicknav_open .slicknav_menutxt::after {
  content: "\f00d";
}


/* Footer
   ========================================================================== */

#footer {
  background: #444;
  font-size: 14px;
}

#footer,
#footer h3,
#footer a {
  color: #fff;
}

#footer h3 {
  margin-top: 0;
  font-size: 24px;
}

#footer ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

#footer .footer-links li:not(:last-child) {
  margin-bottom: 20px;
}

#footer ul li {
  margin: 0 0 10px;
}

#footer .footer-contact li:last-child {
  margin: 0;
}

#footer .footer-contact span {
  color: #212954;
}

.footer-bottom {
  font-size: 14px;
  padding-bottom: 0;
}

.footer-menu table td {
    padding-right: 24px;
}


/* Search
   ========================================================================== */

.search-wrap {
    padding: 8px 0 8px 15px;
}

.search.button {
width: 36px;
    height: 36px;
    line-height: 35px;
    padding: 0;
    text-align: center;
    border-radius: 36px;
    background: transparent;
    color: #212954;
    border: 1px solid #212954;
    font-size: 14px;
}

.search.button:hover,
.search.button:active,
.search.button:focus {
  background-color: #212954;
}

.search.button:focus {
  box-shadow: 0 0 0 4px rgb(33 41 84 / 50%);
}

.search-wrap .dropdown-menu {
  border: none;
  padding: 0;
  background: none;
  left: auto !important;
  right: 0;
  top: 40px !important;
  transform: none !important;
  z-index: 9999;
}

.search-wrap svg {
  width: 24px;
  height: 24px;
  fill: #212954;
}

.search-wrap .dropdown-toggle::after {
  display: none;
}

#search_form input[type="text"] {
  width: 280px;
  padding-left: 20px;
  height: 50px;
  font-size: 14px;
  box-shadow: 0 1px 3px 0 rgb(0 0 0 / 20%);
  background: #fff;
}

#search_form input[type="text"]:focus {
    border: 1px solid #212954;
}

#search_form input[type="submit"] {
  border: none;
  border-radius: 0;
  font-size: 0;
  background: transparent url(search.png);
  background-repeat: no-repeat;
  width: 16px;
  height: 16px;
  background-size: 16px;
  image-rendering: -webkit-optimize-contrast;
  position: absolute;
  top: 17px;
  right: 25px;
  padding: 0;
}

#lean_overlay {
  position: fixed;
  z-index: 100;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  display: none;
}
::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #ababab;
}
::-moz-placeholder {
  /* Firefox 19+ */
  color: #ababab;
}
:-ms-input-placeholder {
  /* IE 10+ */
  color: #ababab;
}
:-moz-placeholder {
  /* Firefox 18- */
  color: #ababab;
}

.search-wrap .show > .dropdown-menu {
  animation-name: slidenavAnimation;
  animation-duration: 0.5s;
  animation-iteration-count: 1;
  animation-timing-function: ease;
  animation-fill-mode: forwards;

  -webkit-animation-name: slidenavAnimation;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-timing-function: ease;
  -webkit-animation-fill-mode: forwards;

  -moz-animation-name: slidenavAnimation;
  -moz-animation-duration: 0.5s;
  -moz-animation-iteration-count: 1;
  -moz-animation-timing-function: ease;
  -moz-animation-fill-mode: forwards;
}

@keyframes slidenavAnimation {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes slidenavAnimation {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Cart
   ========================================================================== */

.utility-nav .cart-wrap {
  vertical-align: middle;
}

.utility-nav a.shoppingCart {
  color: #333;
}

.utility-nav span.item-in-cart {
  font-size: 12px;
  position: absolute;
  top: -10px;
  color: #212954;
}

.utility-nav span.cart-items {
  position: relative;
}



/* Content
   ========================================================================== */

.body-content {
  padding: 48px 0;
}

.body-content::after {
  display: block;
  clear: both;
  content: "";
}

main a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.container-fluid {
  max-width: 1320px;
}


/* Banner
   ========================================================================== */

.banner{
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  overflow: visible;
  padding: 30px 0;
}

.banner.banner-home {
  padding: 10% 0;
  background-position: center;
}

.banner.banner-home::after {
    content: "";
    position: absolute;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0) 70%);
    inset: 0;
}

.anniversary-badge {
  background: rgba(255,255,255,.7);
  max-width: 150px;
  height: 150px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 15px 40px rgba(0,0,0,0.15);
  z-index: 5;
  margin: 0 auto;
}

.anniversary-badge img {
  max-width: 75%;
  height: auto;
}

.bg-image-column,
.intro-bg {
  background-image: url(golfers-socializing.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}

.intro-bg {
  background-image: url(clubhouse-evening-photo.jpg);
  position: relative;
}

.intro-bg::after {
    content: "";
    position: absolute;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.8) 40%, rgba(0, 0, 0, 0) 70%);
    inset: 0;
}

.intro-bg h2,
.intro-bg p {
  position: relative;
  z-index: 999;
}

.intro-bg,
.intro-bg h2,
.intro-bg p {
  color: #fff;
}

.bg-image-column {
  min-height: 500px;
}

.call-to .row.d-flex {
  align-items: stretch;
}

.bg-light-gray {
  background: #e9e5db;
}

.border-thick {
    border-width: 5px !important;
  }

.links {
    background: url(golfers-putting.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 7% 0;
}

  .links p a {
    font-size: 22px;
    background: rgba(255,255,255,.95);
    color: #212954;
    padding: 36px;
    border-radius: 0 20px;
    text-wrap: auto;
  }

  .links span {
    vertical-align: middle;
  }

.banner-content {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  color: #fff;
}

.banner.banner-home .banner-content {
  margin: 0;
}


.banner-content h1 {
  color: #3b406b;
  font-size: 64px;
  font-weight: 500;
  font-size: clamp(2rem, 6vw, 3rem);
  line-height: 1.1;
  margin: 0;
}

.banner.banner-home .banner-content h1 {
  color: #fff;
  font-size: 48px;
  font-size: clamp(2.5rem, 5vw, 5rem);
}

.banner-content {
  opacity: 0;
  transform: translateY(18px);
  animation: fadeInUp 0.75s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: 0.08s;
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .banner-content| {
    animation: none;
    opacity: 1;
    transform: none;
  }
}


/* Home Content
   ========================================================================== */

.intro h2,
.intro h3,
.news .ZineHeader h2,
.news-inside .ZineHeader h2,
.feature h2,
.call-to h2,
.sponsors h2 {
  margin: 0 0 32px;
}

.feature b {
  color: #0d4420;
  font-size: 20px;
}

.home-table td {
  padding: 36px;
}

.news .ZineIndex {
  margin-bottom: 0;
}

.news .ZineHeader h2,
.news-inside .ZineHeader h2 {
font-size: 28px;
}

.news .ZineTools,
.news-inside .ZineTools,
.news-inside .ZineItem .ZineAbstract {
  display: none;
}

.bg-green {
  background: #212954;
}

.bg-blue {
  background: #3b406b;
}

.sponsors p {
    display: inline-block;
    margin: 10px 30px;
}

.sponsors img {
  max-width: 100px;
  width: 100%;
  margin: 0 auto;
}

.sponsors .button {
  white-space: normal;
}

.slick-slide img {
  max-height: 100px;
}

button.slick-prev:hover,
button.slick-prev:active,
button.slick-prev:focus,
button.slick-next:hover,
button.slick-next:active,
button.slick-next:focus {
    background: none;
    box-shadow: none;
}

.sponsor-heading {
    text-align: center;
    background: #0d4420;
    color: #fff;
    padding: 10px 15px;
    position: relative;
    text-transform: uppercase;
    font-size: 24px;
    letter-spacing: 2px;
}

.sponsor-heading span {
  padding: 0 10px;
  background: #0d4420;
  position: relative;
  z-index: 1;
}


/* Zines
   ========================================================================== */

.ZineIndex,
.ZineArchive,
.ZinePhotodirectory {
  margin-bottom: 24px;
}

.ZineIndex .ZineItem,
.ZinePhotodirectory li,
.news-inside .ZineIndex .ZineItem {
  margin-bottom: 48px;
}

.ZineItem .ZineSummaryIndex {
  margin-top: auto;
  display: none;
}

.ZineIndex .ZineItem .ZineSummaryIndex a {
  border-radius: 4px;
  font-size: 14px;
  line-height: normal;
}

.ZineArchive h2 {
  flex-basis: 100%;
}

.ZineArticle .ZineAbout {
    margin: 24px 0;
    padding: 0;
}

.ZineImage {
  margin: 0 auto 24px;
}

table.ZineImage {
  width: auto;
}

.ZineDate {
    font-style: normal;
    font-weight: bold;
    display: block;
}

.ZineArticle .ZineDate {
  margin: 24px 0;
}

.ZineCaption {
  font-size: 16px;
  font-style: normal;
  margin: 24px 0 0;
  padding: 0;
}

.ZineTitle h2:after,
.ZineTitle h3:after,
.event-wrap h2:after {
    margin: 24px auto;
}

.ZineSubtitle {
    font-size: 24px;
}

.ZineArticle .ZineAbout .ZineSummary {
  font-style: normal;
  padding: 0;
  margin: 0 0 24px;
}

.ZineLink {
  color: #212954;
  display: table;
    font-weight: bold;
    margin: 12px 0;
    font-size: 24px;
    font-family: "Playfair Display";
    text-decoration: none;
    line-height: 1.3;
}

.ZineArchive .ZineLink {
    margin: 0 0 12px;
}

.ZineItem .ZineAbstract {
    font-size: 16px;
    line-height: 1.6;
    font-style: normal;
    color: #717171;
}

.table-section table.ZineTools,
.table-section table.ZineTools td,
.table-section table.ZineTools td:last-child {
  width: auto;
  padding: 0 24px 0 0;
  display: table-cell;
}

.table-section table.ZineTools img {
  display: inline;
  margin: 0;
}


/* Events
   ========================================================================== */

div.EvtCal .EvtCalRSS {
  display: none;
}

div.EvtCal table.EvtCalSm td.EvtDay a {
  background-color: #212954;
}

table.EvtCal th,
div.EvtCal table.EvtCalSm th {
  color: #000;
}

.EvtCal h1 {
  font-size: 32px;
  margin: 0 0 32px;
}



/* Sidebar
   ========================================================================== */
.sidebar {
  padding: 30px;
  background: #f9f9fb;
}
.sidebar h3 {
  font-size: 24px;
  margin-top: 0;
  border-bottom: none;
}
#VMenu {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
#VMenu li {
  text-decoration: none;
  border: none;
  font-style: normal;
}
#VMenu li:first-child {
  border: none;
}
#VMenu > li:last-child {
  padding-bottom: 2px;
}
#VMenu a {
  padding: 10px 15px 10px 0;
  display: inline-block;
  font-size: 14px;
  line-height: 20px;
  color: #000;
  text-decoration: none;
}
#VMenu ul li a {
  padding: 5px 0;
  font-size: 13px;
  color: #777;
}
#VMenu a:hover,
#VMenu a:active,
#VMenu a:focus {
  color: #aaa;
}
#VMenu ul li:last-child {
  border: none;
}
#VMenu a#thispage {
  color: #212954;
  font-weight: 900;
  text-decoration: none;
  display: block;
}
#VMenu ul {
  list-style: none;
  border-left: 1px solid #9d9d9d;
  padding: 0;
  margin: 0 0 0 15px;
}
#VMenu ul ul {
  margin: 0;
  padding-left: 15px;
  margin-left: 15px;
}
#VMenu ul ul ul {
  padding: 0;
  margin-bottom: 0;
}
#VMenu ul li {
  padding-left: 15px;
  border: none;
}
#VMenu ul ul li {
  padding: 0;
}
#VMenu li span.VM_collapse a.menu,
#VMenu li span.VM_expand a.menu {
  cursor: pointer;
  display: inline-block;
  width: 85%;
}
.VM_collapse {
  cursor: pointer;
  display: block;
  padding-right: 0;
  background-image: url(plus.png);
  background-position: 100% center;
  background-repeat: no-repeat;
}
#VMenu ul span.VM_collapse {
  background-position: 100% center;
}
.VM_expand {
  background-image: url(minus.png);
  background-position: 100% center;
  background-repeat: no-repeat;
  cursor: pointer;
  display: block;
  padding-right: 0;
}
#VMenu ul span.VM_expand {
  background-position: 100% center;
}
span.VM_expand a#thispage,
span.VM_collapse a#thispage {
  width: 70%;
}


/* Breadcrumb
   ========================================================================== */
.breadcrumb,
.ZinePath {
  line-height: normal;
}

.breadcrumb {
  background-color: #e9e5db;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
  text-align: right;
}

.pmenu,
.ZinePath {
  font-size: 0;
}

.pmenu a,
.ZinePath a {
  font-size: 14px;
  text-decoration: none;
  color: #444;
}

.pmenu a::after,
.ZinePath a::after {
  content: "/";
  padding: 0 12px;
  font-size: 14px;
  cursor: default;
  color: #2d6538;
}


.ZinePath a::after,
.ZinePath a:last-child {
  color: #2d6538;
}

.pmenu a:last-child::after,
.ZinePath a:last-child::after {
  display: none;
}

.pmenu a:last-child,
.ZinePath a:last-child {
  font-weight: 700;
}

/* What's New Zine */
p.ZinePath {
  padding: 0 0 12px;
  margin-bottom: 16px;
  background: none;
  font-size: 0;
}


/* Membership / Modules
   ========================================================================== */

.EvtRegRegistrants .blindbox .boxhead,
.Event .blindbox .boxhead {
  margin: 0;
  border: 2px solid #212954;
  padding: 10px;
  cursor: pointer;
}

.white-popup .Event h2 {
  margin-top: 0;
}

.white-popup .Event p.EventDate {
  margin-bottom: 0;
}

/* Popup hover flicker fix */

.EvtSessionRegistrant .popup {
  right: 18px !important;
}
div#popup1 .EvtFeeThankYou {
  font-size: 16px;
  padding: 10px 10px 7px;
}
.EvtReg table input {
  margin-right: 5px;
}
div.EvtRegFinish p {
  margin: 0;
}

.account_history div.popup {
  left: 0;
}

div.EvtRegFinish h1 {
  margin: 0;
}

.error .EventFee {
  background-color: #f2dede;
  padding: 0;
}

.Event .blindbox {
  margin-bottom: 20px;
}

/* Pay
   ========================================================================== */
.Pay form#payment-form,
.stripe form#payment-form {
  overflow: auto;
}

.Pay form#payment-form .col-sm-4,
.stripe form#payment-form .col-sm-4 {
  width: auto;
}

div.overlay {
  display: none;
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0, 0, 0, 0.6);
  z-index: 99999;
}

div.overlayBox {
  width: 400px !important;
  margin: 50px auto;
  padding: 0 0 30px 0;
}

/* Form
   ========================================================================== */

#search_form form {
  margin: 0;
  position: relative;
}

/* Membership
   ========================================================================== */
ul.MembershipType {
  margin: 0 0 0 40px;
  list-style-type: disc;
}
ul.MembershipType li {
  padding-bottom: 10px;
}
.ContactForm select {
  height: 34px;
}
.ContactForm table td {
  display: block;
  margin-bottom: 20px;
}
.edit_profile td {
  display: block;
}
.edit_profile input,
.edit_profile textarea {
  max-width: 600px;
}
.new_contact h1,
.edit_profile h1,
.edit_contacts h1,
.Membership .account_history .Pay h1,
.edit_photo h1 {
  font-size: 24px;
  margin-top: 0;
}
.edit_contacts h2 {
  margin-top: 0;
  font-size: 20px;
}
ul.Membership_update_profile_menu li a:hover {
  background-color: #eee;
}

.branch_management h1 {
  font-size: 32px;
  margin-top: 30px;
}
.branch_management .tabpane h2:first-child {
  margin-top: 0;
}
.branch_management table.Report td {
  vertical-align: middle;
  font-size: 14px;
}
.branch_management table.Report th {
  background: #888;
  color: #fff;
}
.mfp-close-btn-in .mfp-close:hover,
.mfp-close-btn-in .mfp-close:active,
.mfp-close-btn-in .mfp-close:focus {
  background: none;
}

/* Mini Profile
   ========================================================================== */

.MembershipMiniProfile .photo img {
  max-width: 100px;
}

.MembershipMiniProfile p {
  margin-bottom: 0;
}

.MembershipMiniProfile a,
ul.MembershipDirectoryMenu a {
  text-decoration: none;
}

.MembershipMiniProfile .org {
  font-style: italic;
  color: #777;
  font-size: 14px;
}

div#secondary_m .btn {
  margin: 5px 0;
  padding: 3px 8px;
  font-size: 14px;
}

/* Profile
   ========================================================================== */

.contact-wrap {
  max-width: 550px;
  margin-bottom: 24px;
}
.ContactPhone,
.ContactVcard,
.ContactNet {
  margin: 0;
}
.ContactVcard {
  display: none;
}
h1.membername {
  font-size: 24px;
  margin: 0;
  display: none;
}
.info_container p {
  margin-bottom: 10px;
}
.info_container .small {
  font-size: 14px;
  line-height: 1.4;
}
div#secondary_m p {
  margin-bottom: 10px;
}
.info_container p.ContactPhone {
  margin-bottom: 0;
}
.social-profile div:first-child::before {
  content: "Connect";
  display: block;
  font-size: 24px;
  margin: 24px 0 3px;
  color: #212954;
}
.social-profile a {
  font-size: 22px;
}
.twitter {
  color: #111;
}
.facebook {
  color: #3b5998;
}
.linkedin {
  color: #0072b1;
}
.instagram {
  color: #d6249f;
}
.profile-contact div.Contact {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
}
.profile-contact div.Contact:last-of-type {
  border: none;
  margin: 0;
  padding: 0;
}
.profile-contact .Contact .ContactVcard {
  display: none;
}

/* MISC page styles
   ========================================================================== */

a.ZineToolRSS {
  display: none;
}

.member-list h4 {
  margin-top: 0;
}

.vmenu {
    padding-left: 16px;
}

.vmenu a::before {
    font-family: "Font Awesome 6 Free";
    content: "\f111";
    font-weight: bold;
    font-size: 6px;
    vertical-align: middle;
    padding-right: 10px;
    color: #333;
    text-decoration: none;
    display: inline-block;
}

.mobile-block td {
  display: block;
}

.sponsors td {
    display: table-cell;
    padding: 6px;
}

img[align="left"], img[style*="float: left;"],
img[style*="float:left;"] {
    margin: 15px 30px 30px 0;
}

ul[style*="list-style-type: circle;"],
ul[style*="list-style-type: square;"],
.custom-list {
  list-style-type: none !important;
  margin-left: 45px;
  padding-left: 0;
}

ul[style*="list-style-type: circle;"] > li,
ul[style*="list-style-type: square;"] > li,
.custom-list > li {
  position: relative;
  margin-bottom: 24px;
}

ul[style*="list-style-type: circle;"] > li::before,
ul[style*="list-style-type: square;"] > li::before,
.custom-list > li::before {
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  font-family: "Font Awesome 6 Free";
  content: "\f058";
  color: #0d4420;
  font-weight: 900;
  position: absolute;
  left: -30px;
  top: 8px;
  font-size: 16px;
}

.custom-list > li::before {
  content: "\f054";
}

.call-to .custom-list > li::before {
  content: "\f00c";
}

.sponsors .fa-angle-left.arrow-test::before,
.sponsors .fa-angle-right.arrow-test::before {
    width: 20px;
    height: 20px;
    display: block;
    background: #444;
    color: #fff;
    font-weight: 900;
    border-radius: 100%;
    line-height: 20px;
    font-size: 14px;
}

.fancy-letter {
    font-family: "Playfair Display", serif;
    font-size: 80px;
    line-height: 16px;
    float: left;
    padding-right: 5px;
    padding-bottom: 36px;
    color: #212954;
}

table.Form tr td {
  padding-bottom: 5px;
}

.table-style td {
  vertical-align: top;
  padding: 20px;
}

.directory_adv_search div {
  margin-bottom: 15px;
}

.rounded-image img,
.rounded-image,
.ZineImage img,
.sidebar {
  border-radius: 6px;
}

.rounded-circle img {
  border-radius: 50%;
}

.attention-members p {
  margin-bottom: 10px;
}

.attention-members ul {
  margin: 0;
}

iframe {
  width: 100%;
}

small em {
  color: #888;
}

.account_address {
  margin: 0;
}

.table {
  color: #000;
}

span.underline {
  text-decoration: underline;
}

select {
  border: 1px solid #cccccc;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
  padding: 5px;
}

select option {
  font-size: 14px;
}

.SponsorshipStatus {
  font-size: 16px;
  padding: 20px;
  display: inline-block;
  background: #f9f9f9;
  border: 1px solid #dfdfdf;
}

.SponsorshipStatus a.renew {
  margin: 10px 0 0;
}

.hide-rss table.ZineTools,
.hide-title-rss .ZineArticle.Zine_photodirectory,
.hide-title-rss table.ZineTools,
.hide-title-rss .ZineArticle.Zine_accordion {
  display: none;
}

th {
  line-height: 1.4;
}

caption {
  caption-side: top;
}

table td p:last-child,
table td ul:last-child {
  margin: 0;
}

p.PayAccountWarning {
  display: none;
}

.account_history table {
  border-collapse: collapse;
  width: 100%;
}

main .Search form#searchform input[type="text"] {
  vertical-align: top;
  max-width: 250px;
  width: 100%;
  font-size: 16px;
  height: 49px;
  line-height: 49px;
  padding: 0 15px;
}

main .Search form#searchform input[type="submit"] {
  padding: 12px 20px;
  margin-left: 5px;
}

.Search h1:last-of-type {
  font-size: 24px;
}

.Search h1:last-of-type::after {
  content: none;
}

/* More space between Yes and No columns in form tables */
table.QA_question_group th {
  padding: 5px;
}
table.QA_question_group .QA_input {
  text-align: center;
}

/* Accordion */
.Zine table.accordionbox {
  margin: 0;
}
.Zine th.accordioncontrol {
  padding: 0;
  margin: 0;
  background: #fff;
  border: none;
}
.Zine th.accordioncontrol .accordioncontrol {
  position: relative;
  padding: 10px 20px 10px 40px;
  border-bottom: 1px solid #a1a1a1;
}
.Zine tr:first-child th.accordioncontrol .accordioncontrol {
  margin-top: 0;
  border-top: 1px solid #a1a1a1;
}
table.accordionbox td {
  padding: 0;
}
.accordionbox .ZineBody {
  padding: 30px;
  margin: 24px 0;
  font-size: 18px;
  background: #f9f9fb;
  border: 1px solid #ddd;
  border-radius: 20px;
}
.Zine span.accordioncontrolicon img {
  padding: 0;
}
.accordioncontrolicon {
  padding: 0 15px;
  position: absolute;
  left: 0;
}
.Zine_accordion h2 {
  font-size: 24px;
  margin-top: 30px;
}
.accordionpane h2,
.accordionpane h3 {
  margin-top: 0;
  font-size: 18.72px;
}
.accordionbox .ZineArticle table td,
.accordionbox .ZineArticle table th {
  padding: 12px;
}
.accordionbox .ZineArticle table td h4 {
  margin-top: 0;
}
.accordionbox .ZineArticle table {
  margin-bottom: 24px;
}

/* embedded accordions */
.accordionbox .ZineArticle .accordionbox th,
.accordionbox .ZineArticle .accordionbox td {
  padding: 0;
  border: none;
  background: none;
}
.accordionbox .ZineArticle .accordionbox .ZineBody {
  background: #fff;
}
.accordionbox .ZineArticle .accordionbox th div {
  font-size: 15px;
}

/* tables within embedded accordions */
.accordionbox .ZineArticle .accordionbox td table td {
  padding: 12px;
  font-size: 16px;
}
.accordionbox .ZineArticle .accordionbox table {
  margin: 0;
}

/* Responsive Embeds */
.iframe-wrap {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}
.iframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Popups */
.white-popup h3 {
  margin-top: 0;
  padding-bottom: 15px;
  border-bottom: 1px solid #212954;
}
.white-popup p:last-of-type {
  margin: 0;
}

/* Data table report
   ========================================================================== */
.dataTable.Report,
.dataTable.Report td {
  border: none;
  vertical-align: middle;
}
.dataTable.Report tr:nth-child(2n) {
  background: #f2f2f2;
}
.dataTable.Report td {
  font-size: 14px;
  line-height: 16px;
  padding: 25px 10px;
}
.dataTable.Report thead th {
  border-bottom: 2px solid #000;
  cursor: pointer;
}
.dataTable.Report td a {
  text-decoration: none;
}
.dataTable.Report thead th.sorting::after,
.dataTable.Report thead th.sorting_desc::after,
.dataTable.Report thead th.sorting_asc::after {
  display: inline-block;
  content: "";
  height: 6px;
  width: 10px;
  border-top: 6px solid #000;
  border-left: 5px solid #fff;
  border-right: 5px solid #fff;
  margin-left: 8px;
  margin-bottom: 2px;
  transform-origin: center;
  transform: rotate(0deg);
  transition: transform 0.2s ease;
}
.dataTable.Report thead th.sorting_asc::after {
  transform: rotate(180deg);
}

div#DataTables_Table_0_paginate {
  margin: 20px 0;
}
div#DataTables_Table_0_paginate a {
  margin-right: 20px;
}
.dataTable.Report tr th:first-child {
  width: 249px !important;
}
.dataTable.Report tr th:nth-child(2) {
  width: 144px !important;
}
.dataTable.Report tr th:nth-child(3) {
  width: 152px !important;
}
.dataTable.Report tr th:nth-child(4) {
  width: 100px !important;
}
.dataTable.Report tr th:nth-child(5) {
  width: 194px !important;
}
.dataTable.Report tr th:last-child {
  width: 150px !important;
}

/* Gallery
   ========================================================================== */

.ppt {
  display: none !important;
}
#JGallery h1 {
  font-size: 24px;
}
#JGallery h1::after {
  content: none;
}
ul.gallery li {
  margin-bottom: 10px;
}
ul.gallery li img {
  vertical-align: baseline;
}
div.pp_default .pp_social {
  line-height: 1;
  font-size: 16px;
}
.pp_social .facebook {
  width: 67px !important;
}
div.ppt {
  display: none !important;
}

/* Photo Directory
   ========================================================================== */

.ZinePhotodirectory img {
  border-radius: 50%;
  box-shadow: rgba(0, 0, 0, .15) 0 8px 12px 0;
  float: none;
  margin: 0;
  display: none;
}

.ZinePhotodirectory {
  text-align: center;
  list-style: none;
  padding: 0;
  margin: 0;
}

.ZinePhotodirectory li {
  background: rgba(0,0,0,.05);
  padding: 20px;
}

.ZinePhotodirectory li h2 {
  margin: 0;
}

.ZinePhotodirectory li h3 {
  font-size: 14px;
  font-family: "Poppins", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
  color: #0d4420;
}

.ZinePhotodirectory li h3,
.ZinePhotodirectory li h4 {
  margin-top: 0;
}

.ZinePhotodirectory li h4 {
  font-size: 26px;
}

.ZinePhotodirectory li p {
  color: #7b7b7b;
  margin: 0;
}

.photo-dir-wrap .ZineArticle .ZineAbout .ZineSummary {
    text-align: left;
}

.Zine_photodirectory .ZineHeader {
    text-align: left;
}

.Zine_photodirectory .ZineTitle h2::after {
    margin: 24px 0;
}

/* Return to top
   ========================================================================== */
#return-to-top {
  position: fixed;
  right: 40px;
  bottom: 40px;
  width: 40px;
  height: 40px;
  color: #fff;
  display: none;
  z-index: 99999;
  border-radius: 4px;
  text-align: center;
  background-color: #212954;
  opacity: 0.6;
  -webkit-backface-visibility: hidden;
}
#return-to-top i {
  line-height: 42px;
  font-size: 23px;
}
#return-to-top:hover,
#return-to-top:active,
#return-to-top:focus {
  opacity: 1;
}

@media print {
  .banner {
    background-image: none;
    height: auto;
  }
  table td {
    display: block;
    margin-bottom: 24px;
  }
}