
/* =========================================================
   TCMG – Premium Vintage Club Skin (GeneratePress Free)
   Clean + Consistent + Less “Flat”
   Paste as a FULL replacement in Additional CSS
========================================================= */

/* ---------- Theme tokens ---------- */
:root{
  --tcmg-paper: #F8F4ED;
  --tcmg-ink: #2C2C2D;
  --tcmg-muted: #5A5A5A;
  --tcmg-border: #E5DEC9;
  --tcmg-accent: #d6b477;
  --tcmg-accent-dark: #B8932B;
  --tcmg-link: #B8932B;
  --tcmg-green: #003C30;
  --tcmg-green-dark: #00271F;
  --tcmg-sea: #2E8B57;
  --tcmg-cta: #953f26;
  --tcmg-cta-dark: #7E1622;
  --tcmg-shadow: 0 6px 18px rgba(0, 30, 24, 0.10);
}

.editor-styles-wrapper,
.editor-styles-wrapper .wp-block {
    max-width: 100% !important;
}

/* ---------- Global base ---------- */
body{
  color: var(--tcmg-ink);
}

a{
  color: var(--tcmg-link);
  text-decoration: underline;
  text-underline-offset: 2px;
}
a:hover{
  color: var(--tcmg-accent-dark);
  text-decoration: none;
}

/* ---------- Global banner (you already added via WPCode) ---------- */
.tcmg-global-banner img{
  width: 100%;
  max-height: 500px;
  object-fit: cover;
  display:block;
}

/* ---------- Header spacing + nav feel ---------- */
.inside-header{
  padding: 10px 0;
}

.main-navigation .main-nav ul li a{
  padding: 10px 14px;
  font-weight: 600;
}

.main-navigation .main-nav ul li[class*="current-menu-"] > a{
  color: var(--tcmg-accent);
}

/* dropdown toggle spacing (your fix but cleaner) */
.menu-item-has-children .dropdown-menu-toggle{
  margin-left: -2px;
  margin-right: -10px;
}

/* ---------- Layout: “premium card” look ---------- */
/* GeneratePress “separate containers” card */
/* .separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.separate-containers .paging-navigation{
  background: #fff;
  border: 1px solid var(--tcmg-border);
  border-left: 4px solid var(--tcmg-accent);
  border-radius: 6px;
  box-shadow: var(--tcmg-shadow);
  padding: 38px 28px;
} */

/* Make content more readable (less wide lines) */
.entry-content{
  margin: 0 !important;
}
.entry-content > *{
  max-width: 860px;
}
.entry-content > *:first-child{
  margin-top: 0;
}

/* ---------- Headings (classic + premium) ---------- */
.entry-title,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.widget-title{
  font-family: Georgia, "Times New Roman", Times, serif;
  color: var(--tcmg-ink);
}

.entry-title{
  font-weight: 700;
  letter-spacing: .2px;
  margin-bottom: 12px;
}

/* Section headings */
.entry-content h2{
  font-size: 38px;
  font-weight: 700;
  margin: 26px 0 10px;
  padding-bottom: 10px;
  text-align:center;
}
.entry-content h3{
  font-size: 22px;
  margin: 22px 0 10px;
}
.entry-content h4{
  font-size: 18px;
  margin: 18px 0 8px;
}

/* Paragraph readability */
.entry-content p{
  color: var(--tcmg-muted);
  line-height: 1.8;
  margin: 0 0 14px;
}

/* If you REALLY want to hide page titles everywhere, keep this.
   Otherwise remove it to restore page headings. */
.entry-header{ display:none; }

/* Single VS Event List event pages: the global .entry-header hide above
   removes the event title (it lives in the entry header, unlike the calendar
   list where titles are links inside the content). Re-show it here only — every
   other page keeps its hidden-title design. Post meta stays hidden so just the
   event title appears, not the WordPress publish date/author. */
.single-event .entry-header{ display:block; }
.single-event .entry-header .entry-meta{ display:none; }

/* ---------- Images ---------- */


.entry-content img.alignleft{ margin: 8px 18px 12px 0 !important; }
.entry-content img.alignright{ margin: 8px 0 12px 18px !important; }

.wp-caption{
  background: var(--tcmg-paper);
  border: 1px solid var(--tcmg-border);
  padding: 10px;
  border-radius: 6px;
}
.wp-caption .wp-caption-text{
  font-size: 13px;
  color: #5A5A5A;
  margin-top: 6px;
  font-style: italic;
}

/* Featured image sizing */
.featured-image img{
  width: 100%;
  height: 340px;
  object-fit: cover;
  border-radius: 8px;
}

/* ---------- Latest News list (catlistul) ---------- */
.entry-content ul.catlistul{
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
}
.catlistul > li{
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px dashed #D8CFB4;
}
.catlistul > li:first-child{
  border-top: none;
  padding-top: 0;
}
.catlistul > li > a{
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 18px;
  font-weight: 700;
}
.lcp_content{
  margin-top: 10px;
}

/* ---------- Tables (Council / Chairs) ---------- */
.entry-content table{
  width: 100%;
  border-collapse: collapse;
  background: var(--tcmg-paper);
  border: 1px solid var(--tcmg-border);
  margin: 16px 0 18px;
  border-radius: 6px;
  overflow: hidden;
}
.entry-content table td,
.entry-content table th{
  vertical-align: top;
  padding: 14px 14px;
  border-top: 1px solid var(--tcmg-border);
}
.entry-content table td + td{
  border-left: 1px solid var(--tcmg-border);
}

/* ---------- Sidebar widgets (premium vintage card) ---------- */
.widget-area .widget{
  background: #fff;
  border: 1px solid var(--tcmg-border);
  border-left: 4px solid var(--tcmg-accent);
  border-radius: 6px;
  box-shadow: var(--tcmg-shadow);
  padding: 18px 18px;
  margin-bottom: 18px;
}

/* Single, clean widget title style (your CSS had duplicates) */
.widget-area .widget .widget-title{
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--tcmg-border);
  text-transform: none;
}

/* Sidebar links: use vintage brown, not black */
.sidebar .widget a{
  color: var(--tcmg-link);
  font-size: 15px;
  text-decoration: none;
}
.sidebar .widget a:hover{
  color: var(--tcmg-accent-dark);
  text-decoration: underline;
}

/* ---------- Search widget (premium) ---------- */
.widget_search .search-form{
  position: relative;
  display:block;
  margin-top: 6px;
}

.widget_search .search-field{
  width: 100%;
  height: 46px;
  padding: 10px 50px 10px 12px;
  border: 1px solid #D8CFB4;
  background: var(--tcmg-paper);
  border-radius: 6px;
  font-size: 15px;
  outline: none;
}

.widget_search .search-field:focus{
  border-color: var(--tcmg-accent);
  box-shadow: 0 0 0 3px rgba(138,106,59,0.15);
  background:#fff;
}

.widget_search .search-submit{
  position:absolute;
  top: 0;
  right: 0;
  height: 46px;
  width: 52px;
  border: 1px solid var(--tcmg-accent);
  background: var(--tcmg-accent);
  color: #fff;
  border-radius: 0 6px 6px 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.widget_search .search-submit:hover{
  background: var(--tcmg-accent-dark);
  border-color: var(--tcmg-accent-dark);
}
.widget_search .search-submit svg{
  width: 18px;
  height: 18px;
  fill: currentColor;
}

/* ---------- Forms global ---------- */
input[type="text"], input[type="email"], input[type="url"], input[type="password"],
input[type="search"], input[type="tel"], input[type="number"], textarea, select{
  width: 100%;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"],
input[type="search"], input[type="tel"], input[type="number"], textarea, select{
  height: 48px;
  border-radius: 6px;
  border: 1px solid #D8CFB4;
}

/* ---------- Homepage: center section headings (your request) ---------- */
.home .entry-content h2,
.home .entry-content h3,
.home .entry-content h4{
  text-align: center;
}

/* ---------- Mobile cleanup ---------- */
@media (max-width: 768px){
  .separate-containers .inside-article,
  .separate-containers .comments-area,
  .separate-containers .page-header,
  .separate-containers .paging-navigation{
    padding: 20px 16px;
  }

  .featured-image img{
    height: 220px;
  }

  .entry-content img.alignleft,
  .entry-content img.alignright{
    float: none !important;
    display: block;
    margin: 10px auto 14px !important;
    max-width: 100%;
  }

  .entry-content table,
  .entry-content tbody,
  .entry-content tr,
  .entry-content td{
    display: block;
    width: 100%;
  }
  .entry-content table td + td{
    border-left: none;
  }
}


/* ===== Premium Council Table (Vintage Club Card) ===== */
.entry-content table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #F8F4ED;                /* warm paper */
  border: 1px solid #E5DEC9;
  border-left: 4px solid #d6b477;     /* vintage accent */
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 10px 26px rgba(0,30,24,.10);
  margin: 18px 0 22px;
}

/* Cells */
.entry-content table td {
  vertical-align: top;
  padding: 22px 22px;
  border-top: 1px solid #E5DEC9;
}

/* Remove top border for first row */
.entry-content table tr:first-child td {
  border-top: none;
}

/* Divider between the 2 columns */
.entry-content table td + td {
  border-left: 1px solid #E5DEC9;
}

/* Section headings inside table */
.entry-content table h6 {
  margin: 0 0 12px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  font-weight: 800;
  color: #2C2C2D;
  letter-spacing: .2px;
  padding-bottom: 10px;
  border-bottom: 1px solid #E5DEC9;
  position: relative;
}

/* Small accent line under heading */
.entry-content table h6:after {
  content: "";
  display: block;
  width: 70px;
  height: 2px;
  background: #d6b477;
  margin-top: 8px;
  opacity: .85;
}

/* Text */
.entry-content table p {
  margin: 0;
  color: #3A4A42;
  line-height: 1.85;
  font-size: 15px;
}

/* Labels (President, Events, etc.) */
.entry-content table strong {
  color: #2C2C2D;
  font-weight: 800;
}

/* Optional: make it feel less “blocky” */
.entry-content table br {
  line-height: 1.9;
}

/* Responsive: stack columns on mobile */
@media (max-width: 768px) {
  .entry-content table,
  .entry-content tbody,
  .entry-content tr,
  .entry-content td {
    display: block;
    width: 100%;
  }

  .entry-content table td + td {
    border-left: none;
    border-top: 1px solid #E5DEC9;
  }

  .entry-content table td {
    padding: 18px 16px;
  }
}

.textwidget p {
    margin:0;
    border-bottom:1px solid #DDDDDD;
    padding:7px 0;
}
.textwidget p:first-child {
    padding-top:0;
}
.textwidget p:last-child {
    border-bottom:0;
    padding-bottom:0;
}

.entry-content ul {
    margin-left:20px;
}

.wp-caption {
margin: 14px 0;
text-align: center;
}
.entry-content figure img {
    width:100%;
}


/* add this class on your wrapper */
.row-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px 24px; /* spacing between cards */
}

/* tablet */
@media (max-width: 1024px) {
  .row-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* mobile */
@media (max-width: 768px) {
  .row-3 {
    grid-template-columns: 1fr;
  }
}

.is-right-sidebar {
    display:none;
}

.site-content .content-area {
    width:100%;
}

.inside-article {
    background: transparent !important;
    padding: 0 !important;
}

body {
    background:transparent !important;
}

section.tiles-section {
    width: 100%;
    text-align: center;
    padding: 40px 0;
}

.entry-content > * {
    max-width: 100%;
}





.tc-col {
    position: relative;
  display:block;
}

.tc-col h3 {
    position: absolute;
    bottom: 20px;
    left: 50%;
    z-index: 9;
    transform: translateX(-50%);
    background: #fff;
    padding: 10px 20px;
    width: fit-content;
    min-width: 250px;
    margin: 0;
    border-radius:5px;
  transition:all 0.3s ease;
  min-width:200px;
}
.tc-col h3:hover {
  background-color:#fff;
}

.entry-content .tc-col img{
    border:0;
    padding:0;
    border-radius:15px;
  filter:grayscale(0);
}
.entry-content .tc-col:hover img {
  filter:grayscale(0);
}

.tc-intro-logo {
    text-align:center;
}

.entry-content .tc-intro-content h2 {
    border:0;
}

.tc-intro-content p {
    max-width: 800px;
    margin: 0 auto 20px;
    text-align: center;
}

section.tc-intro {
    padding:40px;
}

.tc-intro-content p a {
    background: var(--tcmg-accent);
    border: 0;
    text-decoration: none;
    padding: 10px 20px;
    margin-top: 30px;
    display: inline-block;
    color:#fff;
}


/* =========================
   TCMG PREMIUM HEADER (GeneratePress)
   ========================= */

/* Header background + subtle vintage tone */
.site-header{
  background: #fff;
  border-bottom: 1px solid rgba(0,60,48,.14);
    position:relative;
}

/* Constrain + align */
.inside-header.grid-container{
  max-width: 100%;
  margin: 0 auto;
  padding: 8px 20px;
  display: flex;
  align-items: center;
  gap: 22px;
}

/* Branding block */
.site-branding-container{
  display: flex;
  align-items: center;
  gap: 14px;
}

/* Logo nicer frame (subtle, not heavy) */
.site-logo img{
  width: 74px;              /* keeps header compact */
  height: auto;
  border-radius: 14px;
  background: #fff;
  padding: 8px;
  border: 1px solid rgba(0,60,48,.16);
  box-shadow: 0 10px 20px rgba(0,0,0,.08);
}

/* Title typography */
.site-branding .main-title{
  margin: 0;
  line-height: 1.1;
}

.site-branding .main-title a{
  font-size: 28px;
  font-weight: 800;
  letter-spacing: .2px;
  color: #003C30;
  text-decoration: none;
}

.site-branding .main-title a:hover{
  color: #d6b477;
}

/* Navigation container spacing */
#site-navigation{
  margin-left: auto;
}

.inside-navigation.grid-container{
  padding: 0;
}

/* Main menu: premium spacing */
.main-navigation .main-nav > ul{
  display: flex;
  align-items: center;
  gap: 18px;
}

/* Menu links */
.main-navigation .main-nav > ul > li > a{
  padding: 10px 2px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .9px;
  text-transform: uppercase;
  color: rgba(0,0,0,.78);
  position: relative;
}

/* Elegant center-out underline */
.main-navigation .main-nav > ul > li > a{
  position: relative;
}

.main-navigation .main-nav > ul > li > a:after{
  content:"";
  position:absolute;
  left: 0;
  bottom: 17px;
  width: 100%;
  height: 2px;
  border-radius: 2px;
    background: #953f26;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .22s ease;
}

.main-navigation .main-nav > ul > li > a:hover:after,
.main-navigation .main-nav > ul > li.current-menu-item > a:after{
  transform: scaleX(1);
}


/* Active menu item color */
.main-navigation .main-nav > ul > li.current-menu-item > a{
  color: #d6b477;
}

/* Dropdown menu - modern card */
.main-navigation ul ul{
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(0,60,48,.16);
  box-shadow: 0 18px 40px rgba(0,0,0,.14);
  background: #fff;
  padding: 8px;
  margin-top: 10px;
}

.main-navigation ul ul li a{
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 650;
  color: rgba(0,0,0,.78);
}

.main-navigation ul ul li a:hover{
  background: rgba(0,60,48,.08);
  color: #00271F;
}

/* Dropdown arrow align */
.dropdown-menu-toggle{
  margin-left: 6px;
}

/* Mobile toggle button premium */
.menu-toggle{
  border-radius: 12px !important;
  padding: 10px 12px !important;
  border: 1px solid rgba(0,60,48,.18) !important;
  background: rgba(255,255,255,.85) !important;
  box-shadow: 0 10px 18px rgba(0,0,0,.10) !important;
}

/* Optional: sticky header look (works if GP sticky is enabled) */
.site-header.is_stuck,
.site-header.sticky-enabled{
  backdrop-filter: blur(10px);
  background: rgba(248,244,237,.85);
}

/* Responsive adjustments */
@media (max-width: 1024px){
  .site-logo img{ width: 64px; }
  .site-branding .main-title a{ font-size: 24px; }
}

@media (max-width: 768px){
  .inside-header.grid-container{
    padding: 8px 16px;
  }
  .site-branding .main-title a{ font-size: 22px; }
}


.site-branding-container .site-logo {
    margin-right:0;
}

img {
    vertical-align:middle;
}

.tc-img {
    overflow: hidden;
    border-radius:15px;
}

.tc-img img {transition: all 0.3s ease;}

.tc-col:hover .tc-img img {transform: scale(1.04);}



.main-navigation .main-nav > ul > li a:hover {
    color: #d6b477 !important;
}

.site-logo img {
    border: 0;
    padding: 0;
    box-shadow: unset;
}


.site.grid-container.container.hfeed {
    max-width:100%;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
}





.separate-containers .site-main {
    margin:0;
}


/* =========================
   TCMG Pre-Footer Text Section
   ========================= */

.tcmg-prefooter{
  position: relative;
    padding:50px 0 35px;
background:
    linear-gradient(
      180deg,
      rgba(212,175,55,0.12) 0%,
      rgba(212,175,55,0.05) 60%,
      rgba(248,244,237,0) 100%
    ),

    /* Keep warm tone, but reduce it */
    linear-gradient(
      to left,
      rgba(212,175,55,0.10) 0%,
      rgba(212,175,55,0.10) 100%
    ),

    /* Reduce texture intensity */
    url(https://olj.ziv.mybluehost.me/tcmg/wp-content/uploads/noise-bg.webp) center repeat;

  background-blend-mode: normal, normal, normal;

  /* This makes the noise far less visible */
  background-size: auto, auto, 220px 220px;

}

/* container */
.tcmg-prefooter-inner{
  max-width: 1100px;
  margin: 0 auto;
}

/* heading */
.tcmg-prefooter-heading{
  text-align: center;
  margin-bottom: 26px;
}

.entry-content .tcmg-prefooter-heading h2{
  margin: 0 0 10px;
  font-size: 34px;
  line-height: 1.2;
  font-weight: 800;
  color: #003C30;
  letter-spacing: .2px;
    border:0;
}

.entry-content .tcmg-prefooter-sub{
  margin: 0 auto;
  max-width: 72ch;
  font-size: 16px;
  line-height: 1.85;
  color: rgba(0,0,0,.72);
}

/* grid */
.tcmg-prefooter-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-top: 28px;
  margin-bottom:50px;
}

/* cards */
.tcmg-prefooter-card{
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(0,60,48,.16);
  border-radius: 18px;
  padding: 22px 22px;
  box-shadow: 0 14px 30px rgba(0,0,0,.10);
  position: relative;
  overflow: hidden;
}

/* subtle sheen */
.tcmg-prefooter-card:before{
  content:"";
  position:absolute;
  inset: -80px -120px auto auto;
  width: 360px;
  height: 220px;
  background: linear-gradient(135deg, rgba(255,255,255,.55), rgba(255,255,255,0));
  transform: rotate(10deg);
  pointer-events:none;
}

/* card titles */
.entry-content .tcmg-prefooter-card h3{
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: .3px;
  color: #00271F;
  position: relative;
    text-align:left;
}

.entry-content .tcmg-prefooter-card h3:after{
  content:"";
  display:block;
  width: 44px;
  height: 2px;
  margin-top: 10px;
  background: linear-gradient(90deg, #d6b477, rgba(0,60,48,.25));
  border-radius: 2px;
}

/* text */
.tcmg-prefooter-card p{
  margin: 0 0 10px;
  font-size: 15.5px;
  line-height: 1.85;
  color: rgba(0,0,0,.72);
}

.tcmg-prefooter-note{
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(0,60,48,.14);
  color: rgba(0,0,0,.68);
}

/* responsive */
@media (max-width: 900px){
  .entry-content .tcmg-prefooter-heading h2{
    font-size: 28px;
  }
  .tcmg-prefooter-grid{
    grid-template-columns: 1fr;
  }
}




/* =========================
   Members Gallery – Premium Styling
   ========================= */

.page-content{
  padding: 50px 0;
}

/* Title + intro */
.page-content h2{
  text-align: center;
  font-size: 38px;
  margin: 0 0 10px;
  color: #003C30;
  letter-spacing: .2px;
  font-weight: 800;
}

.page-content > .container > p{
  max-width: 80ch;
  margin: 0 auto 26px;
  color: rgba(0,0,0,.70);
  line-height: 1.8;
  font-size: 15.5px;
}

/* Turn the table into a modern 3-column layout */
.page-content table{
  width: 100% !important;
  max-width: 1200px;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 18px;
}

.page-content table td{
  vertical-align: top;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(0,60,48,.14);
  border-radius: 18px;
  padding: 18px 16px 10px;
  box-shadow: 0 14px 34px rgba(0,0,0,.10);
}

/* Column headings */
.page-content h4{
  margin: 4px 0 14px !important;
  text-align: center !important;
  font-size: 16px;
  font-weight: 850;
  letter-spacing: .7px;
  text-transform: uppercase;
  color: #00271F;
  position: relative;
}

.page-content h4:after{
  content:"";
  display:block;
  width: 58px;
  height: 2px;
  margin: 12px auto 0;
  background: linear-gradient(90deg, #d6b477, rgba(0,60,48,.25));
  border-radius: 2px;
}

/* Make the figures inside each column behave like a grid */
.page-content table td{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}

/* Keep the h4 at full width */
.page-content table td > h4{
  flex: 0 0 100%;
}

/* Remove spacer paragraphs */
.page-content table td > p{
  display: none;
}

/* Each member item */
.page-content figure.wp-caption{
  width: 160px !important;
  margin: 0 !important;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(0,60,48,.14);
  border-radius: 16px;
  padding: 10px;
  box-shadow: 0 10px 22px rgba(0,0,0,.08);
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.page-content figure.wp-caption:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(0,0,0,.12);
  border-color: rgba(0,60,48,.22);
}

/* Image */
.page-content figure.wp-caption img{
  width: 100% !important;
  height: 110px !important;
  object-fit: cover;
  display:block;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
}

/* Caption */
.page-content figure.wp-caption figcaption{
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.35;
  color: rgba(0,0,0,.78);
  text-align: center;
  font-weight: 650;
}

/* Red border “bio link” – make it premium, not harsh */
.page-content figure.wp-caption a img[style*="border: 2px solid red"],
.page-content figure.wp-caption img[style*="border: 2px solid red"]{
  border: 2px solid #953f26 !important;
  box-shadow: 0 0 0 4px rgba(178,27,27,.12);
}

/* Responsive */
@media (max-width: 1024px){
  .page-content table{
    border-spacing: 14px;
  }
  .page-content table td{
    padding: 16px 12px 10px;
  }
}

@media (max-width: 860px){
  .page-content table,
  .page-content table tbody,
  .page-content table tr{
    display: block;
    width: 100%;
  }
  .page-content table td{
    display: flex;
    width: 100%;
    margin-bottom: 16px;
  }
}

@media (max-width: 420px){
  .page-content figure.wp-caption{
    width: 100% !important;
    max-width: 320px;
  }
  .page-content figure.wp-caption img{
    height: 160px !important;
  }
}



/* =========================
   Newsletter Page – Premium Archive Styling
   ========================= */

.newsletter-page{
  padding: 50px 0;
}

/* Page title */
.newsletter-page h2:first-of-type{
  text-align: center;
  font-size: 34px;
  font-weight: 800;
  color: #003C30;
  margin-bottom: 0px;
}

/* Intro text */
.newsletter-page > .container{
  max-width: 1200px;
}

.newsletter-page > .container > p,
.newsletter-page > .container > div,
.newsletter-page > .container > text{
  max-width: 85ch;
  margin: 0 auto 28px;
  font-size: 15.5px;
  line-height: 1.8;
  color: rgba(0,0,0,.75);
}

/* Table layout cleanup */
.newsletter-page table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0px;
  margin: 0px auto 0px;
}

/* Each year column becomes a “panel” */
.newsletter-page table td{
  vertical-align: top;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(0,60,48,.14);
  border-radius: 0px;
  padding: 10px 10px 15px;
}

/* Year headings */
.newsletter-page table h2{
  margin: 0 0 0px;
  text-align: center;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .6px;
  color: #00271F;
  position: relative;
}

/* Newsletter links */
.newsletter-page table a{
  display: block;
  padding: 6px 6px;
  margin: 2px 0;
  font-size: 14px;
  line-height: 1.4;
  color: #00271F;
  text-decoration: none;
  border-radius: 8px;
  transition: background .15s ease, color .15s ease;
}

/* Hover */
.newsletter-page table a:hover{
  background: rgba(0,60,48,.08);
  color: #000;
}

/* Remove empty cells spacing */
.newsletter-page table td:empty{
  display: none;
}

/* Bottom notes */
.newsletter-page > .container > h2{
  margin-top: 40px;
  font-size: 26px;
  text-align: center;
}

/* Responsive */
@media (max-width: 1024px){
  .newsletter-page table{
    border-spacing: 16px;
  }
}

@media (max-width: 860px){
  .newsletter-page table,
  .newsletter-page table tbody,
  .newsletter-page table tr{
    display: block;
    width: 100%;
  }

  .newsletter-page table td{
    width: 100%;
    margin-bottom: 16px;
  }
}

@media (max-width: 420px){
  .newsletter-page table td{
    padding: 14px 14px 10px;
  }

  .newsletter-page table a{
    font-size: 13.5px;
  }
}


.entry-content .newsletter-page table p br {
    display: none;
}



.newsletter-page > .container > p + table + p + h2 + p em {display: block;text-align: center;}

.newsletter-page > .container > p + table + p {
    text-align: center;
    margin-top: 60px;
}




/* ===============================
   HISTORY PAGE – PREMIUM STYLING
   =============================== */


.history-page h2{
  text-align: center;
  font-size: 38px;
  margin-bottom: 10px;
  letter-spacing: .5px;
  margin-top:0;
}

.history-page h5{
  margin-top: 48px;
  margin-bottom: 12px;
  font-size: 15px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #B8932B;
  display: flex;
  align-items: center;
  gap: 12px;
}

.history-page h5:before{
  content: "";
  width: 4px;
  height: 18px;
  background: linear-gradient(180deg, #d6b477, #003C30);
  border-radius: 2px;
}

/* Section intro text */
.history-page > .container > p {
max-width: 820px;
margin: 0 auto 30px;
text-align: center;
color: #555555;
font-size: 16px;
margin: 0px 0;
max-width: 100%;
text-align: left;
}

/* ===============================
   CARD LIST STYLING
   =============================== */

.history-page ul{
  list-style: none;
  padding: 0;
  margin: 5px 0 0;

  background: rgba(255,255,255,.92);
  border-radius: 18px;
  padding: 16px 22px;
  box-shadow: 0 12px 28px rgba(0,0,0,.10);
}

.history-page ul li{
  margin-bottom: 5px;
  transition: transform .2s ease, box-shadow .2s ease;
}
.history-page ul li:last-child {
    margin-bottom: 0;
}

.history-page ul li a{
  font-weight: 600;
  color: #003C30;
  text-decoration: none;
}

.history-page ul li a:hover{
  color: #d6b477;
}

.history-page ul li br + text,
.history-page ul li{
  line-height: 1.8;
}

.history-page h5 + p a:hover{
  color: #d6b477;
}

/* ===============================
   RESPONSIVE
   =============================== */

@media (max-width: 768px){

  .history-page h2{
    font-size: 30px;
  }

  .history-page ul li{
    padding: 14px 16px;
  }
}


/* ===============================
   TECHNICAL RESOURCES (SAFE CSS)
   =============================== */

.technical-page .container{
  max-width: 1100px;
  line-height: 1.9;
  color: #2C2C2D;
  font-size: 16px;
}

/* Page title */
.technical-page h2{
  text-align: center;
  font-size: 38px;
  margin: 0 0 10px;
  letter-spacing: .5px;
}

/* Section headings */
.technical-page h3 {
    margin: 50px 0 14px;
    font-size: 18px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #B8932B;
    padding-top: 18px;
    border-top: 1px solid rgba(0,60,48, .10);
    position: relative;
    padding-left: 16px;
    margin-top: 0;
    padding: 0 10px;
    border: 0;
    margin-bottom: 30px;
}
.technical-page h3:before{
  content:"";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 18px;
  background: linear-gradient(180deg, #d6b477, #003C30);
  border-radius: 2px;
}

/* Sub headings (Electrical, Mechanical...) */
.technical-page h6{
  margin: 34px 0 12px;
  font-size: 14px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #003C30;
  opacity: .9;
  position: relative;
  padding-left: 18px;
}

.technical-page h6:before{
  content:"";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(0,60,48,.35);
  box-shadow: 0 0 0 4px rgba(0,60,48,.10);
}

/* Default link look (nice underline) */
.technical-page a{
  color: #003C30;
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.25);
}

.technical-page a:hover{
  color: #d6b477;
  border-bottom-color: rgba(0,60,48,.55);
}

/* “Card” look for links (many of your links are on their own line) */
.technical-page .container a {
    display: block;
    position: relative;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, color .2s ease;
    margin-bottom: 24px;
    padding-left: 35px;
}
/* Icon badge */
.technical-page .container a:before{
  content:"";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
  height: 24px;
  border-radius: 10px;
  background: linear-gradient(180deg, #d6b477, #003C30);
  box-shadow: 0 8px 16px rgba(0,0,0,.12);
}

.technical-page .container a:after{
  content:"PDF";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
  text-align: center;
  font-size:10px;
  font-weight: 800;
  letter-spacing: .5px;
  color: rgba(255,255,255,.95);
}

.technical-page .container a:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 38px rgba(0,0,0,.14);
  border-color: rgba(0,60,48,.25);
  color: #d6b477;
}

/* T-Clinics image */
.technical-page img.alignleft{
  float: left !important;
  margin: 0px 10px 4px 0px !important;
  width: 120px !important;
  height: auto !important;
  border-radius: 14px;
  border: 1px solid rgba(0,60,48,.18);
  box-shadow: 0 14px 28px rgba(0,0,0,.12);
}

/* Mobile */
@media (max-width: 768px){

  .technical-page h2{
    font-size: 38px;
  }

  .technical-page .container a{
    padding: 12px 14px 12px 48px;
    border-radius: 14px;
  }

  .technical-page .container a:before,
  .technical-page .container a:after{
    left: 14px;
  }
}




/* ===============================
   CLASSIFIEDS PAGE (SAFE CSS)
   =============================== */

.classified-page .container{
  max-width: 1100px;
  line-height: 1.95;
  color: #2C2C2D;
  font-size: 16px;
}

/* Main title */
.classified-page h2{
  text-align: center;
  font-size: 38px;
  margin: 0 0 12px;
  letter-spacing: .5px;
}

/* Intro text */
.classified-page .container em{
  color: #B8932B;
  font-weight: 700;
}

/* Horizontal rules -> elegant separators */
.classified-page hr{
  border: 0;
  height: 1px;
  margin: 34px 0;
  background: linear-gradient(90deg, rgba(0,60,48,0), rgba(0,60,48,.35), rgba(0,60,48,0));
}

/* Section headings (TC Parts For Sale / WANTED ...) */
.classified-page h5{
  margin: 22px 0 18px;
  font-size: 15px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #003C30;
  position: relative;
  padding-left: 18px;
}

.classified-page h5:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform: translateY(-50%);
  width: 4px;
  height: 18px;
  border-radius: 2px;
  background: linear-gradient(180deg, #d6b477, #003C30);
}

/* Make underlined labels look consistent (Rear D-Lamp, etc.) */
.classified-page u, .classified-page span[style*="underline"] {
    text-decoration: none !important;
    display: inline-block;
    margin: 18px 0 6px;
    padding: 6px 10px;
    border-radius: 12px;
    background: rgba(212,175,55, .18);
    border: 1px solid rgba(0,60,48, .10);
    font-weight: 800;
    color: #003C30;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #000;
    border-radius: 0;
    padding: 0;
    margin-bottom: 15px;
  margin-right:10px;
}

/* Links */
.classified-page a{
  color: #003C30;
  font-weight: 800;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.25);
}

.classified-page a:hover{
  color: #d6b477;
  border-bottom-color: rgba(0,60,48,.55);
}

/* Make the [tags=simmonsad1] placeholder stand out (if it prints as text) */
.classified-page .container{
  word-break: break-word;
}

.classified-page .container:after{
  content:"";
  display:block;
  clear: both;
}

/* Images (Wanted badge etc.) */
.classified-page img{
  border-radius: 16px;
  border: 1px solid rgba(0,60,48,.18);
  box-shadow: 0 14px 28px rgba(0,0,0,.12);
}

/* Center images that use aligncenter */
.classified-page img.aligncenter{
  display:block;
  margin: 18px auto;
}

/* “Ad last updated …” line - make it subtle */
.classified-page .container{
  position: relative;
}

/* A soft card feel for the whole content */


/* Responsive */
@media (max-width: 768px){
  .classified-page h2{
    font-size: 28px;
  }
  .classified-page .container{
    padding: 22px 16px;
    border-radius: 18px;
  }
  .classified-page h5{
    letter-spacing: 1.5px;
  }
}


.classified-page .ml-img img.aligncenter {
    margin:20px 0 0 0;
}



/* ===============================
   CLUB REGALIA PAGE (SAFE CSS)
   =============================== */



/* Main page title */
.club-page h2{
  text-align: center;
  font-size: 38px;
  margin-bottom: 14px;
  letter-spacing: .5px;
  margin-top:0;
}

/* Intro paragraph links */
.club-page a{
  color: #003C30;
  font-weight: 800;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.25);
}

.club-page a:hover{
  color: #d6b477;
  border-bottom-color: rgba(0,60,48,.55);
}

/* Section separators */
.club-page hr{
  border: 0;
  height: 1px;
  margin: 40px 0;
  background: linear-gradient(
    90deg,
    rgba(0,60,48,0),
    rgba(0,60,48,.35),
    rgba(0,60,48,0)
  );
}

/* Section headings (Car Badge, Apparel, etc.) */
.club-page h5{
  margin: 22px 0 22px;
  font-size: 15px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #003C30;
  position: relative;
  padding-left: 18px;
}

.club-page h5:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform: translateY(-50%);
  width: 4px;
  height: 18px;
  border-radius: 2px;
  background: linear-gradient(180deg, #d6b477, #003C30);
}

/* Tables -> card layout */
.club-page table{
  width: 100%;
  border-spacing: 0 22px;
}

.club-page tr{
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(0,0,0,.08);
}

.club-page td{
  vertical-align: top;
  padding: 22px;
}

/* Product titles */
.club-page h6{
  font-size: 20px;
  margin: 0 0 10px;
  color: #003C30;
}

/* Images */
.club-page img{
  border-radius: 16px;
  border: 1px solid rgba(0,60,48,.18);
  box-shadow: 0 12px 26px rgba(0,0,0,.14);
}

/* Lists inside products */
.club-page ul{
  margin: 12px 0 14px;
  padding-left: 18px;
}

.club-page li{
  margin-bottom: 6px;
}

/* Price lines */
.club-page strong{
  color: #003C30;
}

/* Notes / emphasis */
.club-page em{
  color: #B8932B;
  font-weight: 700;
}

/* Center-only helper */
.club-page p{
  margin-bottom: 12px;
}

/* Responsive */
@media (max-width: 768px){


  .club-page .container{
    padding: 22px 16px;
    border-radius: 18px;
  }

  .club-page h2{
    font-size: 28px;
  }

  .club-page table,
  .club-page tr,
  .club-page td{
    display: block;
    width: 100%;
  }

  .club-page td{
    padding: 18px;
  }

  .club-page td:first-child{
    text-align: center;
  }

  .club-page img{
    margin: 0 auto 14px;
    display: block;
  }
}



/* ===============================
   BUSINESS / COMMERCIAL ADS PAGE
   =============================== */

/* Intro text */
.business-page p{
  margin-bottom: 18px;
}

/* Contact link */
.business-page a{
  color: #003C30;
  font-weight: 800;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.25);
}

.business-page a:hover{
  color: #d6b477;
  border-bottom-color: rgba(0,60,48,.55);
}

/* Main callout heading */
.business-page h4{
  font-size: 20px;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  margin: 28px 0 30px;
  color: #003C30;
  position: relative;
  padding-bottom: 12px;
}

.business-page h4:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform: translateX(-50%);
  width: 120px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(
    90deg,
    rgba(0,60,48,0),
    rgba(0,60,48,.6),
    rgba(0,60,48,0)
  );
}

/* Ad images */
.business-page img{
  border-radius: 18px;
  border: 1px solid rgba(0,60,48,.18);
  box-shadow: 0 16px 34px rgba(0,0,0,.18);
  transition: transform .25s ease, box-shadow .25s ease;
}

.business-page img:hover{
  transform: translateY(-4px);
  box-shadow: 0 22px 42px rgba(0,0,0,.25);
}

/* Horizontal rules */
.business-page hr{
  border: 0;
  height: 1px;
  margin: 42px 0;
  background: linear-gradient(
    90deg,
    rgba(0,60,48,0),
    rgba(0,60,48,.35),
    rgba(0,60,48,0)
  );
}

/* Responsive */
@media (max-width: 768px){


  .business-page .container{
    padding: 22px 16px;
    border-radius: 18px;
  }

  .business-page img{
    width: 100%;
    height: auto;
    max-width: 100%;
  }

  .business-page h4{
    font-size: 16px;
    letter-spacing: 1.2px;
  }
}


/* ===============================
   ABOUT PAGE
   =============================== */



/* Main content card */


/* Page title */
.about-page h2{
  text-align: center;
  font-size: 38px;
  margin: 0 0 12px;
  letter-spacing: .5px;
}

/* President note */
.about-page em{
  display: block;
  text-align: center;
  font-style: normal;
  color: #d6b477;
  font-weight: 600;
  margin-bottom: 38px;
  letter-spacing: .4px;
}

/* Section headings inside text */
.about-page strong{
  display: block;
  font-size: 20px;
  margin: 36px 0 12px;
  color: #003C30;
  position: relative;
  padding-left: 18px;
}

/* Accent bar before headings */
.about-page strong:before{
  content:"";
  position:absolute;
  left:0;
  top:6px;
  width:4px;
  height:70%;
  border-radius: 2px;
  background: #953f26;
}

/* Paragraph spacing */
.about-page p{
  margin-bottom: 18px;
}

/* Body text block */
.about-page div{
  font-size: 17px;
}

/* Subtle divider effect between sections */
.about-page strong + br{
  display: none;
}

/* Responsive */
@media (max-width: 768px){

  .about-page .container{
    padding: 26px 20px;
    border-radius: 18px;
    font-size: 16px;
  }

  .about-page h2{
    font-size: 30px;
  }

  .about-page strong{
    font-size: 18px;
  }
}


/* ===============================
   MEMBERSHIP INFO PAGE
   =============================== */


/* Page title */
.membership-info-page h2{
  text-align: center;
  font-size: 38px;
  margin-bottom: 18px;
  color: #003C30;
  margin-top:0;
}

/* Renewal note */
.membership-info-page p:first-of-type,
.membership-info-page > .container > strong{
  display: block;
  text-align: center;
  margin-bottom: 26px;
}

/* Important links */
.membership-info-page a{
  color: #d6b477;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.35);
}

.membership-info-page a:hover{
  color: #003C30;
  border-bottom-color: #003C30;
}

/* Intro paragraphs */
.membership-info-page p{
  margin-bottom: 18px;
}

/* Benefits list */
.membership-info-page ul{
  margin: 26px 0 32px;
  padding-left: 0;
  list-style: none;
}

/* List items styled like feature points */
.membership-info-page ul li{
  position: relative;
  padding-left: 28px;
  margin-bottom: 14px;
}

/* Custom bullet */
.membership-info-page ul li:before{
  content: "◆";
  position: absolute;
  left: 0;
  top: 2px;
  font-size: 14px;
  color: #d6b477;
}

/* Fee emphasis */
.membership-info-page strong{
  color: #003C30;
  font-weight: 800;
}

/* Closing signature */
.membership-info-page .container > p:last-of-type{
  margin-top: 32px;
  font-style: italic;
  font-weight: 600;
}

/* Responsive */
@media (max-width: 768px){

 

  .membership-info-page .container{
    padding: 26px 20px;
    border-radius: 18px;
    font-size: 16px;
  }

  .membership-info-page h2{
    font-size: 30px;
  }
}


/* ===============================
   CONTACT PAGE
   =============================== */


/* Main card */
.contact-page .container,
.technical-page .container,
.history-page .container{
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(0,60,48,.14);
  border-radius: 22px;
  padding: 44px 42px;
  box-shadow: 0 18px 42px rgba(0,0,0,.08);
  color: #2C2C2D;
  line-height: 1.9;
  font-size: 17px;
}


/* Main title */
.contact-page h1{
  text-align: center;
  font-size: 38px;
  margin-bottom: 26px;
  color: #003C30;
  font-family: Georgia, "Times New Roman", Times, serif;
    font-weight: 700;
}

/* Section headings */
.contact-page h2{
  text-align: center;
  font-size: 38px;
  margin: 0px 0 10px;
  color: #003C30;
}

.contact-page h3{
  font-size: 22px;
  margin: 26px 0 12px;
  color: #003C30;
}

/* Mailing address block */
.contact-page h3 + p,
.contact-page h3 + div{
  margin-bottom: 14px;
}

/* Address text styling */
.contact-page{
  letter-spacing: .2px;
}

/* Divider */
.contact-page hr{
  border: none;
  height: 1px;
  background: linear-gradient(
    to right,
    transparent,
    rgba(0,60,48,.45),
    transparent
  );
  margin: 36px 0;
}

/* Officer listings */
.contact-page strong{
  color: #003C30;
  font-weight: 800;
}

/* Space between officer lines */
.contact-page br{
  line-height: 1.8;
}

/* Contact form heading */
.contact-page h3:last-of-type{
  text-align: center;
  margin-top: 40px;
  margin-bottom: 20px;
}

/* Contact Form 7 wrapper */
.contact-page .wpcf7{
  margin-top: 10px;
}

/* Contact form fields */
.contact-page .wpcf7 input[type="text"],
.contact-page .wpcf7 input[type="email"],
.contact-page .wpcf7 textarea{
  width: 100%;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(0,60,48,.25);
  background: rgba(255,255,255,.95);
  font-size: 16px;
}

/* Focus state */
.contact-page .wpcf7 input:focus,
.contact-page .wpcf7 textarea:focus{
  outline: none;
  border-color: #d6b477;
  box-shadow: 0 0 0 2px rgba(0,60,48,.15);
}

/* Submit button */
.contact-page .wpcf7 input[type="submit"]{
  background: #953f26;
  color: #fff;
  border: none;
  padding: 14px 34px;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  margin-top: 12px;
}

.contact-page .wpcf7 input[type="submit"]:hover{
  background: #003C30;
}

/* Responsive */
@media (max-width: 768px){


  .contact-page .container{
    padding: 26px 20px;
    border-radius: 18px;
    font-size: 16px;
  }

  .contact-page h1{
    font-size: 30px;
  }

  .contact-page h2{
    font-size: 26px;
  }

  .contact-page h3{
    font-size: 20px;
  }
}


/* ===============================
   CALENDAR PAGE
   =============================== */




/* Page title */
.calendar-page h2{
  text-align: center;
  font-size: 38px;
  margin-bottom: 18px;
  color: #003C30;
  margin-top:0;
}

/* Intro text */
.calendar-page p{
  margin-bottom: 14px;
}

/* Archive link */
.calendar-page a{
  color: #d6b477;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.35);
}

.calendar-page a:hover{
  color: #003C30;
  border-bottom-color: #003C30;
}

/* Divider */
.calendar-page hr{
  border: none;
  height: 1px;
  background: linear-gradient(
    to right,
    transparent,
    rgba(0,60,48,.45),
    transparent
  );
  margin: 36px auto;
}

/* Event titles */
.calendar-page h5{
  font-size: 22px;
  margin: 38px 0 12px;
  padding-left: 18px;
  position: relative;
  color: #003C30;
}

/* Accent bar */
.calendar-page h5:before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  width:4px;
  height:75%;
  border-radius: 2px;
  background: #953f26;
}

/* Event description block */
.calendar-page h5 + p,
.calendar-page h5 ~ p{
  margin-left: 18px;
  max-width: 860px;
}

/* Images inside events */
.calendar-page img{
  border-radius: 12px;
  box-shadow: 0 10px 26px rgba(0,0,0,.15);
  margin: 6px 0 6px 16px;
}

/* Lists inside events */
.calendar-page ul{
  margin: 14px 0 22px 32px;
}

.calendar-page ul li{
  margin-bottom: 10px;
}

/* Special notes (NOTE DATE CHANGE etc.) */
.calendar-page strong{
  color: #d6b477;
  font-weight: 800;
}

/* Space between events */
.calendar-page h5 + p + p{
  margin-bottom: 18px;
}

/* Responsive */
@media (max-width: 768px){


  .calendar-page .container{
    padding: 26px 20px;
    border-radius: 18px;
    font-size: 16px;
  }

  .calendar-page h2{
    font-size: 30px;
  }

  .calendar-page h5{
    font-size: 20px;
  }

  /* Stack images nicely on mobile */
  .calendar-page img{
    float: none !important;
    display: block;
    margin: 12px auto;
    max-width: 100%;
    height: auto;
  }
}


/* ===============================
   PAST EVENTS & OUTPOSTS PAGE
   =============================== */


/* Main container */

/* Page title */
.past-events-page h2{
  text-align: center;
  font-size: 38px;
  margin-bottom: 26px;
  color: #003C30;
  margin-top:0;
}

/* Section headings */
.past-events-page h5{
  font-size: 24px;
  margin: 40px 0 18px;
  padding-left: 18px;
  position: relative;
  color: #003C30;
}

/* Accent bar */
.past-events-page h5:before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  width:4px;
  height:75%;
  border-radius: 2px;
  background: #953f26;
}

/* Archive year links grid */
.past-events-page h5 + a{
  margin-top: 8px;
}

.past-events-page a{
  display: inline-block;
  margin: 8px 10px 8px 0;
  padding: 10px 16px;
  background: rgba(248,244,237,.9);
  border: 1px solid rgba(0,60,48,.25);
  border-radius: 30px;
  font-weight: 700;
  font-size: 15px;
  color: #003C30;
  text-decoration: none;
  transition: all .18s ease;
}

/* Hover */
.past-events-page a:hover{
  background: #953f26;
  color: #fff;
  border-color: #d6b477;
}

/* Outposts description text */
.past-events-page a + text,
.past-events-page a + br{
  display: none;
}

/* Spacing between Outpost items */
.past-events-page a + span,
.past-events-page a + p{
  display: block;
}

/* External link note */
.past-events-page em{
  font-size: 15px;
  color: #4F5A54;
}

/* Responsive */
@media (max-width: 768px){

  .past-events-page .container{
    padding: 26px 20px;
    border-radius: 18px;
    font-size: 16px;
  }

  .past-events-page h2{
    font-size: 30px;
  }

  .past-events-page h5{
    font-size: 22px;
  }

  .past-events-page a{
    display: inline-block;
    margin: 6px 6px 6px 0;
    padding: 8px 14px;
    font-size: 14px;
  }
}


/* ===============================
   PAST EVENT – SINGLE PAGE
   =============================== */


/* Main wrapper */
.past-single-page .container{
  max-width: 980px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(0,60,48,.14);
  border-radius: 22px;
  padding: 44px 42px;
  box-shadow: 0 18px 42px rgba(0,0,0,.08);
  line-height: 1.9;
  color: #2C2C2D;
  font-size: 17px;
}

/* Page title */
.past-single-page h2{
  text-align: center;
  font-size: 38px;
  margin-bottom: 32px;
  color: #003C30;
}

/* Event title */
.past-single-page h5{
  font-size: 22px;
  margin: 42px 0 14px;
  padding-left: 18px;
  position: relative;
  color: #003C30;
}

/* Accent bar */
.past-single-page h5:before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  width:4px;
  height:75%;
  border-radius: 2px;
  background: #953f26;
}

/* Event text */
.past-single-page p{
  margin-bottom: 14px;
  max-width: 880px;
}

/* Links */
.past-single-page a{
  color: #d6b477;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.35);
}

.past-single-page a:hover{
  color: #003C30;
  border-bottom-color: #003C30;
}

/* Images */
.past-single-page img{
  border-radius: 12px;
  box-shadow: 0 10px 26px rgba(0,0,0,.15);
  margin: 8px 16px 10px 16px;
}

/* Cancelled / emphasized text */
.past-single-page del{
  color: #7A8A82;
}

/* Notes and warnings */
.past-single-page strong{
  color: #d6b477;
  font-weight: 800;
}

/* Lists */
.past-single-page ul{
  margin: 14px 0 24px 34px;
}

.past-single-page ul li{
  margin-bottom: 10px;
}

/* Spacing between events */
.past-single-page h5 + p{
  margin-top: 6px;
}

/* Responsive */
@media (max-width: 768px){


  .past-single-page .container{
    padding: 26px 20px;
    border-radius: 18px;
    font-size: 16px;
  }

  .past-single-page h2{
    font-size: 30px;
  }

  .past-single-page h5{
    font-size: 20px;
  }

  /* Stack images cleanly */
  .past-single-page img{
    float: none !important;
    display: block;
    margin: 14px auto;
    max-width: 100%;
    height: auto;
  }
}

.main-navigation ul ul {
    margin-top:0;
    z-index:99;
}


.menu-toggle {
   
    background: unset !important;
    box-shadow: unset !important;
    border: 0 !important;
    font-size: 30px;
}

@media (max-width: 768px) {
    .inside-header.grid-container {
        margin-top: 14px;
        margin-bottom: -10px;
    }
}


/* ===============================
   NEWS PAGE (Latest Post + Archive Link)
   =============================== */



/* Latest post block (WP Latest Posts) */
.news-page .wp-block-latest-posts{
  list-style: none;
  padding: 0;
  margin: 0;
}


/* Post title */
.news-page .wp-block-latest-posts__post-title{
  display: block;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
  color: #003C30;
  margin-bottom: 12px;
  margin-top: 20px;
  text-decoration: none;
}

.news-page .wp-block-latest-posts__post-title:hover{
  color: #d6b477;
  text-decoration: none;
}

/* Post date */
.news-page time.wp-block-latest-posts__post-date{
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .2px;
  color: rgba(0,30,24,.72);
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(212,175,55,.30);
  border-radius: 999px;
  padding: 6px 10px;
  margin-bottom: 14px;
}

/* Post content */
.news-page .wp-block-latest-posts__post-excerpt,
.news-page .wp-block-latest-posts__post-full-content{
  margin-top: 10px;
  font-size: 17px;
  line-height: 1.9;
  color: #2C2C2D;
}

/* Images inside news content (fix full-width issue) */
.news-page .wp-block-latest-posts__post-full-content img,
.news-page .wp-block-latest-posts__post-excerpt img{
  max-width: 100% !important;
  width: auto !important;         /* stops forced full width */
  height: auto !important;
  display: block;
  margin: 14px auto;
  border-radius: 12px;
  box-shadow: 0 12px 26px rgba(0,0,0,.14);
}

/* Align left/right images nicely on desktop */
@media (min-width: 769px){
  .news-page .wp-block-latest-posts__post-full-content img.alignleft,
  .news-page .wp-block-latest-posts__post-excerpt img.alignleft{
    float: left;
    margin: 10px 18px 12px 0;
    max-width: 46% !important;
  }

  .news-page .wp-block-latest-posts__post-full-content img.alignright,
  .news-page .wp-block-latest-posts__post-excerpt img.alignright{
    float: right;
    margin: 10px 0 12px 18px;
    max-width: 46% !important;
  }
}

/* Links inside post */
.news-page .wp-block-latest-posts__post-full-content a,
.news-page .wp-block-latest-posts__post-excerpt a{
  color: #d6b477;
  font-weight: 700;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,60,48,.35);
}
.news-page .wp-block-latest-posts__post-full-content a:hover,
.news-page .wp-block-latest-posts__post-excerpt a:hover{
  color: #003C30;
  border-bottom-color: #003C30;
}

/* Archive button link */
.news-page .container > p:last-of-type a{
  display: inline-block;
  margin-top: 28px;
  padding: 14px 18px;
  border-radius: 14px;
  background: #953f26;
  color: #fff !important;
  font-weight: 900;
  letter-spacing: .3px;
  text-decoration: none;
  box-shadow: 0 12px 26px rgba(0,0,0,.15);
}

.news-page .container > p:last-of-type a:hover{
  background: #003C30;
}

/* Mobile */
@media (max-width: 768px){
 

  .news-page .container{
    padding: 26px 20px;
    border-radius: 18px;
  }

  .news-page .wp-block-latest-posts > li{
    padding: 20px 18px;
    border-radius: 16px;
  }

  .news-page .wp-block-latest-posts__post-title{
    font-size: 22px;
  }

  /* Stack any aligned images */
  .news-page img.alignleft,
  .news-page img.alignright{
    float: none !important;
    max-width: 100% !important;
    margin: 14px auto !important;
  }
}


.site-description {
    font-size: 14px;
    font-weight: 600;
    margin-top: 2px;
}


/* Main body font – Aptos-like (Segoe UI) */
body,
button,
input,
select,
textarea {
  font-family: "Segoe UI", Inter, system-ui, -apple-system,
               BlinkMacSystemFont, "Helvetica Neue",
               Arial, sans-serif;
}


.tc-col h3 a {
  text-decoration:none;
}

.technical-page p a {
  display:inline-block !important;
}

/* Site title – traditional serif */
.site-branding .main-title a {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-weight: 700;
  letter-spacing: 0.5px;
}



/* =========================================================
   TCMG – NEWS ARCHIVES (GeneratePress)
   Premium list cards + clean sidebar
   ========================================================= */

/* --- base spacing --- */
.site-content#content{
  padding: clamp(18px, 3vw, 42px) 0;
}

.content-area#primary{
  max-width: 1120px;
  margin: 0 auto;
}

/* if your theme already uses a grid, this will just enhance spacing */
.site-main#main{
  display: grid;
  gap: 18px;
}

/* --- archive "cards" --- */
.post.type-post.category-news .inside-article{
  border: 1px solid rgba(212,175,55,.28);
  border-radius: 18px;
  background: #fff;
  padding: clamp(18px, 2.3vw, 26px);
  box-shadow: 0 18px 44px rgba(0,0,0,.08);
  position: relative;
  overflow: hidden;
}

/* subtle vintage highlight bar */
.post.type-post.category-news .inside-article:before{
  content:"";
  position:absolute;
  left:0; top:0; bottom:0;
  width: 6px;
  background: linear-gradient(180deg, rgba(212,175,55,.85), rgba(212,175,55,.25));
}

/* soft top glaze */
.post.type-post.category-news .inside-article:after{
  content:"";
  position:absolute;
  left:10px; right:10px; top:10px;
  height: 1px;
  background: rgba(212,175,55,.35);
  display:none;
}

/* hover lift */
.post.type-post.category-news .inside-article{
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.post.type-post.category-news .inside-article:hover{
  transform: translateY(-3px);
  box-shadow: 0 26px 70px rgba(0,0,0,.12);
  border-color: rgba(212,175,55,.45);
}

/* --- title --- */
.post.type-post.category-news .entry-title{
  margin: 0 0 10px;
  line-height: 1.15;
  font-size: clamp(20px, 2vw, 28px);
  letter-spacing: .2px;
}
.post.type-post.category-news .entry-title a{
  text-decoration: none !important;
  color: #1A1A1A;
  transition: color .2s ease;
}
.post.type-post.category-news .inside-article:hover .entry-title a{
  color: #B8932B;
}

/* --- meta row (date + author) --- */
.post.type-post.category-news .entry-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  align-items: center;
  margin-bottom: 14px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(212,175,55,.10);
  border: 1px solid rgba(212,175,55,.18);
}
.post.type-post.category-news .entry-meta,
.post.type-post.category-news .entry-meta a{
  font-size: 14px;
  color: rgba(0,0,0,.72);
}
.post.type-post.category-news .entry-meta a{
  text-decoration: none;
  border-bottom: 1px dotted rgba(0,60,48,.45);
}
.post.type-post.category-news .entry-meta a:hover{
  color: #B8932B;
  border-bottom-color: rgba(0,60,48,.8);
}

/* --- summary text --- */
.post.type-post.category-news .entry-summary{
  font-size: 16px;
  line-height: 1.7;
  color: rgba(0,0,0,.78);
  padding-left:25px;
  margin-top:0;
}
.post.type-post.category-news .entry-summary p{
  margin: 0;
}

/* --- read more button --- */
.post.type-post.category-news .entry-summary .read-more{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(212,175,55,.45);
  background: rgba(255,255,255,.9);
  text-decoration: none !important;
  font-weight: 700;
  letter-spacing: .2px;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
  text-decoration:underline !important;
  background:transparent;
  border:0;
}
.post.type-post.category-news .entry-summary .read-more:hover{
  transform: translateY(-1px);
  background: #fff;
}

/* --- category footer --- */
.post.type-post.category-news footer.entry-meta{
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px dashed rgba(212,175,55,.45);
  padding:15px 25px;
  margin-bottom:0;
}
.post.type-post.category-news .cat-links{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(212,175,55,.10);
  border: 1px solid rgba(212,175,55,.18);
  font-size: 13px;
}
.post.type-post.category-news .cat-links a,
.post.type-post.category-news .cat-links .cat-links-static{
  text-decoration: none;
  font-weight: 700;
  color: #B8932B;
  border:0;
}

/* --- pagination --- */
.paging-navigation{
  margin-top: 10px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(212,175,55,.22);
  background: #fff;
  box-shadow: 0 16px 40px rgba(0,0,0,.07);
}
.paging-navigation .nav-links{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: center;
}
.paging-navigation a.page-numbers,
.paging-navigation span.page-numbers{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(212,175,55,.35);
  text-decoration: none !important;
  font-weight: 800;
  background: #fff;
  transition: transform .2s ease, box-shadow .2s ease;
}
.paging-navigation span.page-numbers.current{
  background: rgba(212,175,55,.16);
}
.paging-navigation a.page-numbers:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0,0,0,.10);
}

/* =========================================================
   RIGHT SIDEBAR – premium widgets
   ========================================================= */
#right-sidebar .inside-right-sidebar{
  display: grid;
  gap: 16px;
}

#right-sidebar .widget.inner-padding{
  border: 1px solid rgba(212,175,55,.22);
  border-radius: 18px;
  background: #fff;
  padding: 18px;
  box-shadow: 0 16px 44px rgba(0,0,0,.07);
}

#right-sidebar .widget-title{
  margin: 0 0 12px;
  font-size: 18px;
  letter-spacing: .2px;
  padding-bottom: 10px;
  border-bottom: 1px dashed rgba(212,175,55,.55);
}

/* Quick Reference links */
#right-sidebar .textwidget p{
  margin: 0 0 12px;
  line-height: 1.55;
}
#right-sidebar .textwidget a{
  text-decoration: none;
  font-weight: 800;
  color: #B8932B;
  border-bottom: 1px dotted rgba(0,60,48,.45);
}
#right-sidebar .textwidget a:hover{
  border-bottom-color: rgba(0,60,48,.9);
}

/* search widget */
.widget_search .search-form{
  display: grid;
  gap: 10px;
}
.widget_search .search-field{
  width: 100%;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(212,175,55,.35);
  padding: 0 14px;
  outline: none;
  transition: box-shadow .2s ease, border-color .2s ease;
}
.widget_search .search-field:focus{
  border-color: rgba(212,175,55,.65);
  box-shadow: 0 0 0 4px rgba(212,175,55,.18);
}
.widget_search .search-submit{
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(212,175,55,.45);
  font-weight: 900;
  letter-spacing: .3px;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease;
}
.widget_search .search-submit:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.10);
}

/* =========================================================
   MOBILE TWEAKS
   ========================================================= */
@media (max-width: 768px){
  .post.type-post.category-news .entry-meta{
    padding: 10px;
  }
  .paging-navigation{
    padding: 12px;
  }
}

.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header {
  background:transparent;
  border:0;
  box-shadow:unset;
}



.news-page .wp-block-latest-posts__post-full-content img {
    margin: unset;
}

.news-page .wp-caption {
    background: transparent;
    border: 0;
}

.news-page .wp-caption .wp-caption-text {
    text-align: left;
}

.news-page .wp-block-latest-posts__post-full-content img {
  border-radius:0;
}
.wp-block-latest-posts__post-full-content p {
  padding:0 !important;
}





@media (max-width:576px) {
  .site-branding {
    display:none;
  }
}

.main-navigation, .main-navigation ul ul {
  background:transparent;
}

.site-header {
  background:var(--base-2);
}


/* TCMG fix: this rule previously hid the featured image on EVERY page using
   separate containers (the GP default), which suppressed featured images
   site-wide. Scoped to the home page only so featured images show on all
   other pages while the home page keeps its own hero layout. */
.home.separate-containers .featured-image,
.home .separate-containers .featured-image {
  display:none;
}



.tcmg-newsletters{
  max-width: 1050px;
  margin: 0 auto;
  padding: 8px 0 24px;
}

.tcmg-newsletters-year{
  margin: 28px 0 12px;
  font-size: 22px;
  letter-spacing: .3px;
  border-bottom: 1px solid rgba(0,0,0,.10);
  padding-bottom: 10px;
}

.tcmg-newsletter-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding: 14px 16px;
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 10px 25px rgba(0,0,0,.06);
  margin: 12px 0;
}

.tcmg-newsletter-title{
  font-weight: 700;
  font-size: 16px;
  line-height: 1.2;
}

.tcmg-newsletter-date{
  margin-top: 6px;
  font-size: 13px;
  opacity: .75;
}

.tcmg-newsletter-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.tcmg-newsletter-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 14px;
  border-radius: 12px;
  text-decoration:none;
  font-weight: 700;
  font-size: 13px;
  border: 1px solid rgba(0,0,0,.12);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.tcmg-newsletter-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 18px rgba(0,0,0,.10);
}

.tcmg-newsletter-btn.is-outline{
  background: transparent;
}

.tcmg-newsletter-missing{
  font-size: 13px;
  opacity: .7;
}

@media (max-width: 640px){
  .tcmg-newsletter-item{
    align-items:flex-start;
    flex-direction:column;
  }
  .tcmg-newsletter-actions{
    width:100%;
    justify-content:flex-start;
  }
}





.home .content-area#primary {
    max-width: 100%;
}

.home .site-content#content {
  padding:0;
}

body {
  background:var(--base-2) !important;
}

.main-navigation ul ul {
  background:var(--base-2);
}

.inside-article figure.wp-caption.aligncenter {
    margin: 0 auto 30px;
}

.inside-article {
    background: rgba(255, 255, 255, .75) !important;
    border: 1px solid rgba(0,60,48, .10) !important;
    border-radius: 22px !important;
    padding: 34px 34px !important;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .08) !important;
}

.inside-article strong {
    max-width: 700px;
    margin: 0 auto;
    display: inline-block;
}

.home .inside-article {
    background: transparent !important;
    border: 0 important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: unset!important;
}



.up-section {padding: 30px 0;}

.inside-article .contact-page .container, .inside-article .technical-page .container, .inside-article .history-page .container {padding: 0;border: 0;box-shadow: unset;}

.inside-article .technical-page {
    padding: 0;
}

.btn-default {
  text-align:center;
}
.btn-default a {
  background: var(--tcmg-accent);
    border: 0;
    text-decoration: none;
    padding: 10px 20px;
    margin-top: 30px;
    display: inline-block;
    color: #fff;
}

.inside-article .page-content,
.inside-article .newsletter-page,
.inside-article .contact-page{
  padding:0;
}


.newsletter-page > .container > h2 {
  margin-top:0;
}

.inside-article .classified-page {
  padding:0;
}
.tc-intro {
  position: relative;
  padding: 50px 0 35px;

  /* base color (important) */
  background-color: #F8F4ED;

  background:
    linear-gradient(
      180deg,
      rgba(212,175,55, 0.12) 0%,
      rgba(212,175,55, 0.05) 100%,
      rgba(248,244,237, 1) 100%
    ),
    linear-gradient(
      to left,
      rgba(212,175,55, 0.10) 0%,
      rgba(212,175,55, 0.10) 100%
    ),
    url("https://olj.ziv.mybluehost.me/tcmg/wp-content/uploads/noise-bg.webp")
    center repeat;

  background-blend-mode: normal, normal, normal;
  background-size: auto, auto, 220px 220px;
}

.tiles-section {
  background:#F8F4ED;
}

.tc-img:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.30);
    z-index: 9;
  border-radius:15px;
  transition: all 0.3s ease;
}
.tc-col:hover .tc-img:before {
  background:transparent;
}

.news-title {
    text-align: center;
    font-size: 42px;
    margin-bottom: 10px;
    letter-spacing: .5px;
    margin-top: 0;
}

.inside-article .news-page strong {
    display: block;
    margin: unset;
}

.newsletter-page > .container > h2 {
    margin-top: 0;
    font-size: 38px;
    font-weight: 700;
    margin: 0px 0 10px;
    padding-bottom: 10px;
}

.tcmg-global-banner {
  position: relative;
  width: 100%;
  max-height: 420px;
  overflow: hidden;
}

.tcmg-global-banner img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  display: block;
}

.tcmg-banner-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0.25),
    rgba(0,0,0,0.55)
  );
  z-index: 1;
}

.tcmg-banner-content {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  text-align: center;
  padding: 0 20px;
}

.tcmg-banner-title {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 4vw, 52px);
  color: #fff;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-shadow: 0 6px 20px rgba(0,0,0,0.45);
}



/* =========================================================
   HOME: Latest News + Upcoming Sidebar
   ========================================================= */

.tc-home-news {
  padding: 54px 0;
  background: #fff; /* light tan */
}

.tc-home-news .container {
  max-width: 1180px;
}

/* main layout */
.tc-home-news-inner{
  display: grid;
  grid-template-columns: 1.6fr 0.9fr;
  gap: 28px;
  align-items: start;
}

/* LEFT: Latest news */
.tc-home-news-left{
  background: #fff;
  border: 1px solid rgba(212,175,55,0.22);
  border-radius: 18px;
  padding: 2px 26px 20px;
  box-shadow: 0 14px 32px rgba(20, 20, 20, 0.06);
  position: relative;
}

.tc-home-news-title{
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: 34px;
  letter-spacing: 0.02em;
  margin: 0 0 16px;
  color: #2C2C2D;
  position: relative;
  padding-bottom: 10px;
}

/* title underline */
.tc-home-news-title:after{
  content:"";
  display:block;
  width: 86px;
  height: 3px;
  background: rgba(212,175,55,0.75);
  border-radius: 3px;
  margin-top: 10px;
}

/* latest posts block */
.tc-home-news-left .wp-block-latest-posts{
  list-style: none;
  padding: 0;
  margin: 0;
}

.tc-home-news-left .wp-block-latest-posts > li{
  padding: 12px 18px 8px;
  border: 1px solid rgba(212,175,55,0.18);
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #FBF9F3 100%);
  margin-bottom:10px;
}

.tc-home-news-left .wp-block-latest-posts__post-title{
  display: inline-block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.15;
  color: #1A1A1A;
  text-decoration: none;
  letter-spacing: 0.01em;
  padding-right:10px;
}

.tc-home-news-left .wp-block-latest-posts__post-title:hover{
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
  color: #B8932B;
}

.tc-home-news-left .wp-block-latest-posts__post-date{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 10px 0 12px;
  font-size: 14px;
  color: #5A5A5A;
}

/* little dot before date */
.tc-home-news-left .wp-block-latest-posts__post-date:before{
  content:"";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(212,175,55,0.85);
  display:inline-block;
}

.tc-home-news-left .wp-block-latest-posts__post-excerpt{
  font-size: 16px;
  line-height: 1.65;
  color: #2C2C2D;
  margin: 0;
}

/* read more in excerpt */
.tc-home-news-left .wp-block-latest-posts__post-excerpt .read-more{
  display: inline-block;
  margin-left: 6px;
  color: #B8932B;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid rgba(106,78,47,0.55);
}
.tc-home-news-left .wp-block-latest-posts__post-excerpt .read-more:hover{
  border-bottom-color: rgba(106,78,47,1);
}

/* "Read more…" button under block */
.tc-home-news-more{
  margin-top: 14px;
}
.tc-home-news-more {
  margin-top: 16px;
}
.tc-home-news-more a{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
  padding: 12px 14px;
  border-radius: 12px;
  background: #953f26;
  color: #fff !important;
  text-decoration: none;
  font-weight: 800;
  letter-spacing: 0.01em;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.tc-home-news-more a:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 22px rgba(20,20,20,0.12);
  filter: brightness(0.98);
}

/* RIGHT: Upcoming sidebar */
.tc-home-news-right{
  position: relative;
}

.tc-home-upcoming{
  background: #fff;
  border: 1px solid rgba(212,175,55,0.22);
  border-radius: 18px;
  padding: 22px 20px 18px;
  box-shadow: 0 14px 32px rgba(20, 20, 20, 0.06);
}

/* card heading (rendered via :before so no markup change needed) */
.tc-home-upcoming:before{
  content:"Upcoming Activities";
  display:block;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: 22px;
  letter-spacing: 0.02em;
  color: #2C2C2D;
  margin-bottom: 14px;
}

/* each upcoming item */
.tc-home-upcoming-item{
  padding: 14px 14px;
  border-radius: 14px;
  border: 1px dashed rgba(212,175,55,0.35);
  background: #FBF9F3;
}

.tc-home-upcoming-item + .tc-home-upcoming-item{
  margin-top: 12px;
}

.tc-home-upcoming-item strong{
  color: #1A1A1A;
  font-weight: 800;
}

.tc-home-upcoming-sub{
  display: inline-block;
  margin-top: 6px;
  color: #5A5A5A;
  font-size: 15px;
  line-height: 1.45;
}

/* CTA button */
.tc-home-upcoming-cta{
  margin-top: 16px;
}
.tc-home-upcoming-cta a{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  background: #953f26;
  color: #fff !important;
  text-decoration: none;
  font-weight: 800;
  letter-spacing: 0.01em;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.tc-home-upcoming-cta a:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 22px rgba(20,20,20,0.12);
  filter: brightness(0.98);
}

/* Responsive */
@media (max-width: 980px){
  .tc-home-news-inner{
    grid-template-columns: 1fr;
  }
}
@media (max-width: 520px){
  .tc-home-news{
    padding: 40px 0;
  }
  .tc-home-news-left,
  .tc-home-upcoming{
    padding: 18px 16px;
    border-radius: 16px;
  }
  .tc-home-news-title{
    font-size: 28px;
  }
  .tc-home-news-left .wp-block-latest-posts__post-title{
    font-size: 18px;
  }
}


.home .entry-content h2.tc-home-news-title {
    text-align: left;
}



.tiles-section .row-3 {
  display: grid;
  gap: 30px;
}

/* First row: 3 columns */
.tiles-section .row-3 > .col-4:nth-child(-n+3) {
  grid-column: span 5;
}

/* Second row: 4 columns */
.tiles-section .row-3 > .col-4:nth-child(n+4) {
  grid-column: span 3;
}

/* 12-column grid system */
.tiles-section .row-3 {
  grid-template-columns: repeat(15, 1fr);
}

/* Defensive: WordPress wpautop wraps blank lines / HTML comments in pasted
   page markup as empty <p></p>. Because .row-3 is a grid (and .tc-col a link
   wrapper), a phantom paragraph becomes a layout item and knocks the tiles out
   of alignment. None of these containers ever holds an intentional paragraph,
   so hide any <p> that turns up here. (June 2026 — front-page tiles fix.) */
.tiles-section .row-3 > p,
.tc-col > p,
.tc-intro-inner > p:empty,
.tc-intro-aside > p:empty,
.tcmg-prefooter-inner > p:empty {
  display: none !important;
}


.entry-content .sec-title {
    margin: 30px 0 20px;
    font-size: 26px;
    line-height: 1.2;
    font-weight: 800;
    color: #003C30;
    letter-spacing: .2px;
    border: 0;
}

.tiles-section .row-3.grid-4 > .col-4:nth-child(-n+3) {
  grid-column: span 3;
}
.tc-intro-inner {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

/* ---- Home intro: 2-column (welcome left, Upcoming Activities right) ----
   Client June 2026: the separate "Latest News + Upcoming" section was removed
   and the Upcoming Activities card moved up beside the welcome text. Adding the
   .tc-intro-inner--split modifier turns the centered intro into a two-column
   layout (welcome on the left, the existing .tc-home-upcoming card on the
   right). It stacks to one column on narrow screens. */
.tc-intro-inner.tc-intro-inner--split {
    max-width: 1120px;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 40px;
    text-align: left;
}
.tc-intro-inner--split .tc-intro-main {
    flex: 1 1 440px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.tc-intro-inner--split .tc-intro-aside {
    flex: 0 1 390px;
    display: flex;
}
.tc-intro-inner--split .tc-intro-aside .tc-home-upcoming {
    width: 100%;
}
/* base intro centers everything; left-align it inside the split layout */
.tc-intro-inner--split .tc-intro-logo {
    text-align: left;
}
.tc-intro-inner--split .tc-intro-content p {
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    text-align: left;
}
@media (max-width: 880px) {
    .tc-intro-inner.tc-intro-inner--split {
        flex-direction: column;
        gap: 28px;
    }
    .tc-intro-inner--split .tc-intro-aside {
        flex-basis: auto;
    }
}

.tc-intro-content > a {
    display: flex;
    align-items: center;
    width: auto;
    padding: 12px 14px;
    border-radius: 12px;
    background: #953f26;
    color: #fff !important;
    text-decoration: none;
    font-weight: 800;
    letter-spacing: 0.01em;
    transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
    display: inline-block;
}

.single-post .entry-header {
  display:block;
}


.membership-info-page p:first-of-type, .membership-info-page > .container > strong {
  text-align:left;
}
.tc-img {
  height:100%;
}
.tc-img img {
  height:100%;
  object-fit:cover;
}

@media (max-width:1024px) {
  .tiles-section .row-3 {
    display:flex;
    flex-wrap:wrap;
  }
  .tiles-section .tc-col {
    height:100%;
  }
  .tc-col h3 {
    width:calc(100% - 20px);
    min-width:auto;
  }
  .tiles-section .row-3 .col-4 {
    width:calc(100% / 2 - 15px);
  }
  .tiles-section .container {
    padding:0 20px;
  }
}

@media (max-width:576px) {
  .tiles-section .row-3 .col-4 {
    width:100%;
  }
  
.n2-ss-item-content.n2-ss-text.n2-ow-all div p {
    font-size: 32px !important;
    position: relative;
    left: 20px;
}
}

.tcmg-newsletters-list{list-style:none;padding:0;margin:0}
.tcmg-newsletter-item{padding:10px 0;border-bottom:1px solid rgba(0,0,0,.08)}
.tcmg-newsletter-link{text-decoration:none;font-family:Georgia,serif}
.tcmg-newsletter-link:hover{text-decoration:underline}

/* Set space around all captioned images */
.wp-caption, .wp-block-image {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-right: 0.5em;
    margin-left: 0.5em;
}



.tcmg-card-actions {
    grid-template-columns: 2fr !important;
  margin-top:20px;
}
.tcmg-newsletter-thumb-wrap {
  border:0 !important;
}

.tcmg-help-text {
  display:none !important;
}

.post-password-form p {
    position: relative;
}

.post-password-form input[type="submit"] {
    position: absolute;
    bottom: 0;
    right: 0;
  background: #953f26;
}

.tcmg-newsletter-label {
  margin-top:10px;
}

.tcmg-newsletter-grid {
    grid-template-columns: repeat(6, 1fr) !important;
}

@media (max-width:991px) {
  .tcmg-newsletter-grid {
    grid-template-columns: repeat(4, 1fr) !important;
}
}

@media (max-width:767px) {
  .tcmg-newsletter-grid {
    grid-template-columns: repeat(3, 1fr) !important;
}
}

@media (max-width:576px) {
  .tcmg-newsletter-grid {
    grid-template-columns: repeat(2, 1fr) !important;
}
}

@media (max-width:480px) {
  .tcmg-newsletter-grid {
    grid-template-columns: repeat(1, 1fr) !important;
}
}

.tcmg-newsletter-label {
  font-size:13px !important;
  margin-top:5px !important;
}


.tcmg-newsletter-card img {
    object-fit: contain !important;
}

article.tcmg-newsletter-card {
    padding-top: 0;
  padding-bottom:10px;
}




.editor-styles-wrapper {
    max-width: 100% !important;
    background: #F8F4ED;
}

.editor-styles-wrapper .wp-block {
    max-width: 100% !important;
}

/* Prevent very dark overlay issues inside editor */
.editor-styles-wrapper .tc-img:before,
.editor-styles-wrapper .tcmg-banner-overlay,
.editor-styles-wrapper .tc-col:hover .tc-img:before {
    background: transparent !important;
}

/* Prevent sections becoming too dark in editor */
.editor-styles-wrapper .tc-home-news,
.editor-styles-wrapper .tiles-section,
.editor-styles-wrapper .tc-intro,
.editor-styles-wrapper .up-section {
    opacity: 1 !important;
    filter: none !important;
}

/* Make sure text remains visible */
.editor-styles-wrapper .tc-home-upcoming,
.editor-styles-wrapper .tc-home-news-left,
.editor-styles-wrapper .tc-home-upcoming-item,
.editor-styles-wrapper .tc-col h3,
.editor-styles-wrapper .sec-title,
.editor-styles-wrapper .news-title,
.editor-styles-wrapper .tc-home-news-title {
    color: #003C30 !important;
}

/* Remove blend/overlay weirdness in editor */
.editor-styles-wrapper .tc-intro,
.editor-styles-wrapper .tcmg-prefooter {
    background-blend-mode: normal !important;
}

/* Ensure images show properly */
.editor-styles-wrapper img {
    opacity: 1 !important;
}

/* Buttons visible in editor */
.editor-styles-wrapper .tc-home-news-more a,
.editor-styles-wrapper .tc-home-upcoming-cta a,
.editor-styles-wrapper .tc-intro-content > a,
.editor-styles-wrapper .btn-default a {
    color: #fff !important;
    background: #953f26 !important;
}

/* Editor spacing cleanup */
.editor-styles-wrapper .container {
    max-width: 1200px;
    margin: 0 auto;
}
/* =====================================================================
 * News page — featured latest post + archive buttons  (June 2026)
 * Rendered by the [tcmg_news] shortcode. Loads site-wide via tcmg-home.css
 * but every selector is scoped to .tcmg-news* so nothing else is affected.
 * =================================================================== */
.tcmg-news-featured {
    background: #fff;
    border: 1px solid var(--tcmg-border);
    border-left: 4px solid var(--tcmg-accent);
    border-radius: 8px;
    box-shadow: var(--tcmg-shadow);
    padding: 28px 30px;
    margin: 0 0 10px;
}
.tcmg-news-featured-title {
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 30px;
    line-height: 1.2;
    color: var(--tcmg-green);
    margin: 0 0 6px;
    border: 0;
}
.tcmg-news-meta {
    color: var(--tcmg-muted);
    font-size: .9rem;
    margin: 0 0 18px;
}
.tcmg-news-body { color: var(--tcmg-ink); }
.tcmg-news-body > *:first-child { margin-top: 0; }
.tcmg-news-body img { max-width: 100%; height: auto; border-radius: 4px; }

.tcmg-news-archives-title { margin-top: 34px; }

.tcmg-news-archive {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 14px;
    margin-top: 4px;
}
.tcmg-news-btn {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 14px 16px;
    background: var(--tcmg-paper);
    border: 1px solid var(--tcmg-border);
    border-radius: 6px;
    text-decoration: none;
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.tcmg-news-btn:hover {
    transform: translateY(-2px);
    box-shadow: var(--tcmg-shadow);
    border-color: var(--tcmg-accent);
}
.tcmg-news-btn-title {
    font-family: Georgia, "Times New Roman", Times, serif;
    font-weight: 700;
    color: var(--tcmg-green);
    line-height: 1.25;
}
.tcmg-news-btn:hover .tcmg-news-btn-title { text-decoration: underline; }
.tcmg-news-btn-date {
    font-size: .82rem;
    color: var(--tcmg-muted);
}
@media (max-width: 600px) {
    .tcmg-news-featured { padding: 22px 20px; }
    .tcmg-news-featured-title { font-size: 25px; }
}
