:root {
  --deep-navy: #223E58;
  --coastal-blue: #61949E;
  --sea-glass: #AFD1CE;
  --sage-green: #A7B68F;
  --eucalyptus: #809B8A;
  --soft-olive: #899367;
  --warm-sand: #EADDC1;
  --cream: #FDF1D9;
  --driftwood: #D0C7B6;
  --sunlit-gold: #F5CE85;
  --barely-sand: #F8F5EE;
  --radius-card: 20px;
  --radius-pill: 50px;
}
body {
  background: var(--barely-sand);
}
.WaGadgetEventsStateCalendar .monthViewType .EventListCalendar td>div {
    background: var(--deep-navy);
    color: white;
}
@import url('https\://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,600;0,700;1,400');
h1, h2, h3, h4, h5, .heading { font-family: 'Lora', Cambria, Georgia, serif!important; text-transform:none!important;}
body, p, a, button { font-family:Calibri, Arial, sans-serif!important; }
.roundedcorners{
    border-radius: var(--radius-card);
}
[class^="WaLayoutItem"]{
    border-radius: var(--radius-card);
    margin:10px 0;
}
.mainHerosection {
   position: relative;
  overflow: hidden;
  min-height: 600px; /* adjust as needed */
  min-height: 100vh;
  min-height: 100svh; /* better mobile viewport support */
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
}
.mainHerosection > * {
  position: relative;
  z-index: 1;
}
.mainHerosection > div,
.mainHerosection .WaLayoutTable,
.mainHerosection .WaLayoutTable > tbody,
.mainHerosection .WaLayoutTable > tbody > tr,
.mainHerosection .WaLayoutItem {
  width: 100%;
}
[class*="buttonStyle"],
.WaGadget :is(button, input[type="submit"], input[type="button"], input[type="reset"], .typeButton, .functionalButton, .loginButton) {
border-radius: var(--radius-pill);
margin: 5px!important;
}
.WaGadgetEventsStateList .boxesListItem > .boxOuterContainer {
border: 1px solid #f1f1f1;
  border-radius: var(--radius-card);
  padding: 20px;
  box-shadow: 0 0 15px 5px rgba(0,0,0,.1);
}
.icon-block img{width:100%; max-width:50px; height:auto;background:#fff; border-radius:50px; padding:10px;
}
.WaGadgetMenuHorizontal.HorizontalMenuStyle001 .menuInner ul.firstLevel > li > .item > a > span {
  position: relative;
  display: block;
  height: 23px;
  background: transparent;
  border-radius: var(--radius-card);
      padding: 0px 5px 5px 20px;
}
.WaGadgetMenuHorizontal.HorizontalMenuStyle001 .menuInner ul.firstLevel>li.sel>.item>a {
background: var(--deep-navy);
border-radius: var(--radius-card);
overflow: hidden;
}
.WaGadgetUpcomingEvents.upcomingEventsStyle002 ul li, .WaGadgetUpcomingEvents.upcomingEventsStyle005 ul li {
    padding: 8px 0 8px 16px;
    border-left: 4px solid var(--deep-navy);
}
.WaGadgetEventsStateList .boxOuterContainer .boxBodyOuterContainer .boxBodyInfoOuterContainer .boxActionContainer input.typeButton {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    min-width: 112px;
    margin: 0;
    padding: 8px 20px;
    background: var(--deep-navy);
    border: 0;
    outline: 0;
    color: white;
    font: normal 16px / 1.5 'Calibri', 'Arial', sans-serif;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    -webkit-appearance: none;
}
.background-border {
    border: 1px solid #f1f1f1;
    border-radius: var(--radius-card);
    padding: 25px;
    box-shadow: 0 0 15px rgba(0,0,0,.08);
    background: transparent;
}
.blue-with-border{
    border: 3px solid var(--deep-navy);
    border-radius: var(--radius-card);
    padding: 25px;
    box-shadow: 0 0 15px rgba(0,0,0,.08);
    background: transparent;
}
/* MENU */
.WaGadgetMenuHorizontal.HorizontalMenuStyle001 .menuInner ul.firstLevel {
    float: right;
}
/* LOGIN */
.WaGadgetLoginForm.LoginFormStyle001 .loginContainer.loginContainer .loginLink, .WaGadgetLoginForm.LoginFormStyle002 .loginContainer.loginContainer .loginLink {
width: 140px;
}
.WaGadgetLoginForm.LoginFormStyle001 .loginContainer.loginContainer .loginLink:before, .WaGadgetLoginForm.LoginFormStyle002 .loginContainer.loginContainer .loginLink:before {
font: normal 18px / 50px 'Inter';
content: 'Member Login';
}
/* RECENT POST / EVENTS HEADINGS */
.WaGadgetRecentBlogPosts.recentBlogPostsStyle001 li .title a, body .WaGadgetRecentBlogPosts.recentBlogPostsStyle002 li .title a, body .WaGadgetRecentBlogPosts.recentBlogPostsStyle003 li .title a, body .WaGadgetUpcomingEvents.upcomingEventsStyle001 li .title a, body .WaGadgetUpcomingEvents.upcomingEventsStyle002 li .title a, body .WaGadgetUpcomingEvents.upcomingEventsStyle003 li .title a {
font-size: 28px;
}
.WaGadgetUpcomingEvents.upcomingEventsStyle001 ul li .date, .WaGadgetUpcomingEvents.upcomingEventsStyle002 ul li .date, .WaGadgetUpcomingEvents.upcomingEventsStyle003 ul li .date, .WaGadgetUpcomingEvents.upcomingEventsStyle004 ul li .date, .WaGadgetUpcomingEvents.upcomingEventsStyle005 ul li .date, .WaGadgetUpcomingEvents.upcomingEventsStyle006 ul li .date, .WaGadgetUpcomingEvents.upcomingEventsStyle001 ul li .location, .WaGadgetUpcomingEvents.upcomingEventsStyle002 ul li .location, .WaGadgetUpcomingEvents.upcomingEventsStyle003 ul li .location, .WaGadgetUpcomingEvents.upcomingEventsStyle004 ul li .location, .WaGadgetUpcomingEvents.upcomingEventsStyle005 ul li .location, .WaGadgetUpcomingEvents.upcomingEventsStyle006 ul li .location{
font-size: 18px;
}
/* SOCIAL MEDIA ICONS */
.WaGadgetSocialProfile.socialProfileStyle001 li a {
    font-family: 'WA-theme-icons' !important;
}
/* MOBILE PANEL */
.WaGadgetMobilePanel .mobilePanel{
  background: var(--coastal-blue);
  color: white;
}
.WaGadgetMobilePanel .mobilePanel .mobilePanelButton:hover {
  background: #e9f8f7;
  color: white;
}
.WaGadgetMobilePanel .mobilePanel .menuInner ul.firstLevel, .WaGadgetMobilePanel .mobilePanel .loginInner {
    background: var(--coastal-blue);
    border-top: 1px solid var(--coastal-blue);
}
.WaGadgetMobilePanel .mobilePanel .menuInner ul ul {
    background: var(--coastal-blue);
}
.WaGadgetMobilePanel .mobilePanel .menuInner ul ul li > .item > a, .WaGadgetMobilePanel .mobilePanel .menuInner ul.firstLevel > li.sel > .item > a  {
  color: #fff;
}
.WaGadgetMobilePanel .mobilePanel .loginInner .loginContainerForm [class$="TextBox"] input[class$="TextBoxControl"], .WaGadgetMobilePanel .mobilePanel .loginInner .loginContainerForm .loginActionRememberMe label::before {
     background: var(--coastal-blue);
}
/* END MOBILE PANEL */
/* LOGIN ICON + LINK COLOR */
.WaGadgetLoginForm .loginLink,
.WaGadgetLoginForm .loginLink:before,
.WaGadgetLoginForm .loginLink:after {
    color: var(--deep-navy) !important;
}
/* REMOVE LOGIN HOVER COLOR */
.WaGadgetLoginForm .loginLink:hover {
    background: transparent !important;
    color: var(--deep-navy) !important;
}
.WaGadgetLoginForm .loginLink:hover:before {
    color: var(--deep-navy) !important;
}
/* ===== JOIN PAGE: PRICING LAYOUT ===== */
.join-pricing-grid {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  margin: 30px 0;
}
.join-pricing-grid > * {
  flex: 1 1 280px;
}
.join-price-tag {
  font-family: 'Lora', Cambria, Georgia, serif;
  font-size: 32px;
  color: var(--deep-navy);
  margin: 8px 0;
}
.join-recommended-flag {
  display: inline-block;
  background: var(--sunlit-gold);
  color: var(--deep-navy);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 4px 12px;
  border-radius: var(--radius-pill);
  margin-bottom: 12px;
}
/* ===== JOIN PAGE: BENEFITS LAYOUT ===== */
.join-benefits-grid {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
  margin: 30px 0;
}
.join-benefits-grid > * {
  flex: 1 1 260px;
}
.join-benefits-grid h3:before {
  content: "";
  display: block;
  width: 42px;
  height: 3px;
  background: var(--coastal-blue);
  margin-bottom: 14px;
}
@media screen and (max-width: 766px) {
  .join-pricing-grid,
  .join-benefits-grid {
    flex-direction: column;
  }
}
/* ===== BUTTON HOVER STATES (previously undefined) ===== */
.btn-primary:hover,
a[class*="buttonStyle"]:hover,
a:link[class*="buttonStyle"]:hover {
  background: var(--coastal-blue) !important;
  color: #fff !important;
}
.btn-secondary:hover {
  background: var(--deep-navy);
  color: #fff;
}
.board-photo-table img {
  width: 150px;
  height: 150px;
  object-fit: cover;
}
/* =========================================
   MOBILE RESPONSIVE SYSTEM
   ========================================= */
@media screen and (max-width: 766px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
  *, *::before, *::after { box-sizing: border-box; }
  .non-mobile { display: none !important; }
  img { max-width: 100%; height: auto; }
  .WaLayoutContainer, .WaLayoutTable, .WaLayoutItem, .WaLayoutPlaceHolder,
  .WaGadgetContent, .gadgetStyleBody, .gadgetContentEditableArea {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  h1 { font-size: clamp(30px, 9vw, 42px) !important; line-height: 1.12 !important; }
  h2 { font-size: clamp(25px, 7vw, 34px) !important; line-height: 1.18 !important; }
  h3 { line-height: 1.25 !important; }
  p, li { line-height: 1.5; }
  .mainHerosection { min-height: 50svh; width: 100%; }
  table { max-width: 100%; }
  .feature-cards { padding: 35px 20px !important; }
  .feature-cards .WaLayoutColumn { padding: 25px 5px !important; }
  .feature-cards .WaLayoutColumn:before { margin-bottom: 16px; }
  .feature-cards h2, .feature-cards h3, .feature-cards h4 { font-size: 23px !important; }
  .feature-cards p { max-width: none; }
  .background-border, .blue-with-border { padding: 20px; }
  /* ABOUT PAGE */
  #PAGEID_18419 .WaLayoutContainer {
    margin: 25px 15px !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
  }
  #PAGEID_18419 .WaGadgetContent,
  #PAGEID_18419 .gadgetStyleBody,
  #PAGEID_18419 .gadgetContentEditableArea {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
  }
  #PAGEID_18419 .WaGadgetContent,
  #PAGEID_18419 .WaGadgetFirst,
  #PAGEID_18419 .WaGadgetLast {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  /* BOARD ROWS */
  #PAGEID_18419 .board-grid {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 25px 15px !important;
  }
  #PAGEID_18419 .board-grid > .WaLayoutTable,
  #PAGEID_18419 .board-grid > .WaLayoutTable > tbody,
  #PAGEID_18419 .board-grid > .WaLayoutTable > tbody > .WaLayoutRow {
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }
  #PAGEID_18419 .board-grid > .WaLayoutTable > tbody > .WaLayoutRow > .WaLayoutItem {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    float: none !important;
    margin: 0 0 20px !important;
  }
  #PAGEID_18419 .board-grid > .WaLayoutTable > tbody > .WaLayoutRow > .WaLayoutItem > .WaLayoutPlaceHolder {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }
  /* BOARD CARDS */
  #PAGEID_18419 .board-grid .roundedcorners {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 20px !important;
    border-radius: 18px !important;
    overflow: visible !important;
  }
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable,
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable tbody,
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable tr,
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable { margin: 0 !important; }
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable td {
    padding: 0 !important;
    float: none !important;
    position: static !important;
    text-align: left !important;
  }
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable td:first-child {
    text-align: center !important;
    margin: 0 0 18px !important;
  }
  #PAGEID_18419 .board-grid .contStyleExcSimpleTable img {
    display: block !important;
    width: 120px !important;
    max-width: 120px !important;
    height: 120px !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    margin: 0 auto !important;
  }
  /* Restore readable mobile text even when the content editor inserted tiny inline sizes. */
  #PAGEID_18419 .board-grid .gadgetContentEditableArea,
  #PAGEID_18419 .board-grid .gadgetContentEditableArea p,
  #PAGEID_18419 .board-grid .gadgetContentEditableArea span,
  #PAGEID_18419 .board-grid .gadgetContentEditableArea td {
    font-size: 16px !important;
    line-height: 1.45 !important;
  }
  #PAGEID_18419 .board-grid .gadgetContentEditableArea p {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #PAGEID_18419 .board-grid .gadgetContentEditableArea > br:first-child {
    display: none !important;
  }
}
/* =========================================
   HOMEPAGE UPCOMING EVENTS
   ========================================= */
/* Two-column event layout */
.WaGadgetUpcomingEvents ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Event card */
.WaGadgetUpcomingEvents ul li {
    position: relative !important;
    flex: 1 1 calc(50% - 8px) !important;
    width: calc(50% - 8px) !important;
    max-width: none !important;
    min-height: 105px !important;
    margin: 0 !important;
    padding: 18px 20px 18px 125px !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: 0 3px 12px rgba(34, 62, 88, 0.07) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
/* Remove original theme left border / pseudo-elements */
.WaGadgetUpcomingEvents ul li:before,
.WaGadgetUpcomingEvents ul li:after {
    display: none !important;
    content: none !important;
}
/* Date tile */
.WaGadgetUpcomingEvents .event-date-tile {
    position: absolute;
    left: 14px;
    top: 12px;
    width: 82px;
    height: 82px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--coastal-blue);
    border-radius: 9px;
    text-align: center;
    box-sizing: border-box;
}
/* Month */
.WaGadgetUpcomingEvents .event-month {
    display: block;
    font-family: Calibri, Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1.5px;
    color: #fff;
}
/* Day */
.WaGadgetUpcomingEvents .event-day {
    display: block;
    margin: 3px 0;
    font-family: 'Lora', Cambria, Georgia, serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.05;
    color: #fff;
}
/* Year */
.WaGadgetUpcomingEvents .event-year {
    display: block;
    font-family: Calibri, Arial, sans-serif;
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    color: #fff;
}
/* Event title */
.WaGadgetUpcomingEvents ul li .title a {
    display: inline-block;
    margin-bottom: 6px;
    font-family: 'Lora', Cambria, Georgia, serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    color: var(--deep-navy) !important;
    text-decoration: none !important;
}
.WaGadgetUpcomingEvents ul li .title a:hover {
    color: var(--coastal-blue) !important;
}
/* Date + location */
.WaGadgetUpcomingEvents ul li .date,
.WaGadgetUpcomingEvents ul li .location {
    font-family: Calibri, Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    color: #59666f !important;
}
/* Mobile: stack events */
@media screen and (max-width: 766px) {
    .WaGadgetUpcomingEvents ul {
        display: block !important;
    }
    .WaGadgetUpcomingEvents ul li {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 92px !important;
        margin-bottom: 12px !important;
        padding: 14px 12px 14px 100px !important;
    }
    .WaGadgetUpcomingEvents .event-date-tile {
        left: 10px;
        top: 10px;
        width: 72px;
        height: 72px;
    }
    .WaGadgetUpcomingEvents .event-month {
        font-size: 10px;
    }
    .WaGadgetUpcomingEvents .event-day {
        font-size: 25px;
    }
    .WaGadgetUpcomingEvents .event-year {
        font-size: 10px;
    }
    .WaGadgetUpcomingEvents ul li .title a {
        font-size: 16px !important;
    }
    .WaGadgetUpcomingEvents ul li .date,
    .WaGadgetUpcomingEvents ul li .location {
        font-size: 12px !important;
    }
}
