/*
 Theme Name: Six Mile SC
 Theme URI: https://ferociousweb.com
 Description: A child theme for GeneratePress built for the Town of Six Mile, SC.
 Author: FerociousWeb.com
 Author URI: https://ferociousweb.com
 Template: generatepress
 Version: 1.0.2
 Text Domain: sixmilesc
*/

/*====================================================================
 TABLE OF CONTENTS
======================================================================
  1. FONT IMPORTS
  2. COLOR & FONT VARIABLES
  3. GLOBAL STYLES
  4. TYPOGRAPHY
  5. NAVIGATION / MENU / SEARCH
  6. HEADER
  7. LINKS
  8. BUTTONS
  9. HOME
  10. NEWS ( BLOG )
  11. TEMPLATES / OTHER
  12. FOOTER
  13. PATTERNS
====================================================================*/


/*====================================================================
 1. FONT IMPORTS
====================================================================*/
@import url('https://fonts.googleapis.com/css2?family=Karla:wght@400;600&family=Montserrat:wght@400;600;700&display=swap');


/*====================================================================
 2. COLOR & FONT VARIABLES
====================================================================*/

/* Defined in theme.json */


/*====================================================================
 3. GLOBAL STYLES
====================================================================*/
body {
  font-family: var(--wp--preset--font-family--primary);
  font-weight: 400;
  line-height: 1.6;
}

/* Try to prevent iOS auto-zoom on forms */
input[type="color"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="email"],
input[type="month"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="time"],
input[type="url"],
input[type="week"],
select:focus,
textarea {
  font-size: 16px !important;
}



/*====================================================================
 4. TYPOGRAPHY
====================================================================*/
h1 {
  font-family: var(--wp--preset--font-family--primary);
  font-weight: 700;
  color: var(--wp--preset--color--blue-primary-dusk-blue);
  line-height: 1.2;
}

h2 {
  font-family: var(--wp--preset--font-family--primary);
  font-weight: 600;
  color: var(--wp--preset--color--green-primary-turf-green);
  line-height: 1.2;
}

h3,
h4,
h5,
h6 {
  font-family: var(--wp--preset--font-family--primary);
  font-weight: 500;
  line-height: 1.2;
}

h2.heading-left-align {
  padding-left: 0;
  margin-left: 0;
}

.home h2 {
  padding-left: 0;
  margin-left: 0;
}

@media (max-width: 768px) {
  h1 {
    font-size: 1.8em;
  }
  h2 {
    font-size: 1.5em;
  }
  h3 {
    font-size: 1.3em;
  }
  h4 {
    font-size: 1.1em;
  }
  h5 {
    font-size: 1.0em;
  }
  h6 {
    font-size: 0.95em;
  }
}


/*====================================================================
 5. NAVIGATION / MENU / SEARCH
====================================================================*/

/* Main navigation */
.wp-child-theme-sixmilesc .main-navigation {
  background-color: transparent;
  flex-grow: 1;
  text-align: center;
}

.wp-child-theme-sixmilesc .main-navigation a,
.wp-child-theme-sixmilesc .main-navigation .menu-toggle {
  font-family: var(--wp--preset--font-family--secondary);
  font-weight: 600;
  color: var(--wp--preset--color--base);
  letter-spacing: 0.05em;
}

.wp-child-theme-sixmilesc .main-navigation a:hover,
.wp-child-theme-sixmilesc .main-navigation a:focus {
  color: var(--wp--preset--color--secondary);
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75em 1em;
}

/* Header search */
.header-search {
  position: relative;
  display: flex;
  align-items: center;
  z-index: 999;
}

#search-toggle {
  background: none;
}

.search-form {
  display: flex;
  align-items: center;
}

.search-form input[type="search"] {
  border: none;
  padding: 0.3em 0.6em;
  font-size: 1em;
  border-radius: 4px;
  color: #002e5d;
  background-color: #fff;
}

.search-form.active {
  width: 200px;
  opacity: 1;
  margin-left: 0.5em;
}

/* Mobile header navigation bar */
.wp-child-theme-sixmilesc #mobile-header .inside-navigation {
  background-color: var(--wp--preset--color--blue-primary-dusk-blue);
  border-bottom: 4px solid #e5a110;
}

/* Sticky navigation */
.wp-child-theme-sixmilesc #sticky-navigation {
  background-color: var(--wp--preset--color--blue-primary-dusk-blue);
  border-bottom: 4px solid var(--wp--preset--color--gold-darker-amber-honey);
  filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.45));
}

.wp-child-theme-sixmilesc #sticky-navigation .navigation-branding {
  margin-right: 0;
}

.wp-child-theme-sixmilesc .main-navigation.has-sticky-branding.navigation-stick:not([class*=nav-align-]):not(.mobile-header-navigation) .inside-navigation {
  justify-content: space-evenly;
}

.wp-child-theme-sixmilesc .main-navigation.sticky-navigation-transition .navigation-branding img {
  height: 130px;
  margin-bottom: -30px;
}

/* Highlight current page ancestor & current page item */
/* .current_page_ancestor {
    color: var(--wp--preset--color--gold-primary-sunflower-gold);
} */
.current_page_item {
    color: #ffb42b;
}

/* WebCivix mega menu - desktop */
@media (min-width: 769px) {
  #primary-menu #menu-primary {
    display: flex;
    justify-content: center;
    gap: min(60px, max(calc(4vw - 40px), 0px));
    font-family: var(--wp--preset--font-family--primary);
  }

  #primary-menu #menu-primary > .menu-item {
    white-space: nowrap;
  }

  #primary-menu #menu-primary > .menu-item a {
    text-decoration: none;
    padding: 4px 4px 0 8px;
    font-size: 1.1rem;
  }

  #primary-menu #menu-primary > .menu-item > a {
      text-transform: uppercase;
  }

  #primary-menu #menu-primary > .menu-item > .sub-menu a:hover{
      text-decoration: underline;
      color: var(--wp--preset--color--brown-primary-chocolate)

  }

  #primary-menu #menu-primary > .menu-item:hover,
  #primary-menu #menu-primary > .menu-item.sfHover {
    background: var(--wp--preset--color--brown-primary-chocolate);
    border-radius: 5px 5px 0 0;
    text-decoration: none;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu {
    position: static !important;
  }

  .wp-child-theme-sixmilesc .main-navigation .inside-navigation {
    justify-content: space-evenly;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu > a::after {
    content: "\f140";
    font-family: dashicons;
    font-weight: normal;
    display: inline-block;
    margin-left: 5px;
    vertical-align: top;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: inherit;
    position: relative;
    background: transparent;
    height: auto;
    width: auto;
    right: auto;
    line-height: inherit;
    transform: rotate(0deg);
    transform-origin: center center;
    transition: transform 0.2s ease;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu:hover > a::after,
  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu:focus-within > a::after {
    transform: rotate(-90deg);
  }

  .wp-child-theme-sixmilesc .main-navigation .main-nav ul li a {
    line-height: 36px;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu > .webcivix-menu-panel {
      flex-direction: column;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu > .webcivix-menu-panel {
    position: absolute;
    display: flex;
    flex-wrap: wrap;
    z-index: 999;
    width: 700px;
    left: 50% !important;
    transform: translate(-50%, -10px);
    transition:
      max-height 0.25s ease,
      opacity 0.18s ease,
      transform 0.2s ease;
    background-color: #0b2241;
    padding: 20px;
    box-shadow: 0 5px 0 0 rgba(0, 0, 0, 0.5);
    border-top: 5px solid var(--wp--preset--color--brown-primary-chocolate);
    border-radius: 0 0 20px 20px;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu:hover > .webcivix-menu-panel,
  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu:focus-within > .webcivix-menu-panel {
    height: 420px;
    max-height: 800px;
    opacity: 1;
    transform: translate(-50%, 0);
    overflow: visible;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu-column {
    display: block;
    width: 50%;
    vertical-align: top;
    padding: 0 15px;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu.government .webcivix-menu-panel {
    gap: 2em;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu-column > a {
    font-weight: bold;
    text-transform: uppercase;
    color: #face7d;
    margin-bottom: 2px;
    display: block;
    cursor: pointer;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu-column > .webcivix-menu-links {
    position: static !important;
    opacity: 1 !important;
    height: auto !important;
    padding-left: 1em;
    overflow: visible;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu-links li {
    break-inside: avoid;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu-links li a {
    background: none;
    font-family: var(--wp--preset--font-family--secondary);
    color: #fff;
    font-size: 15px;
    text-wrap: nowrap;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu-links li a:hover {
    color: var(--wp--preset--color--brown-primary-chocolate);
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu > .webcivix-menu-panel > * {
    transform: translateY(-10px);
    opacity: 0;
    transition:
      transform 0.18s ease,
      opacity 0.15s ease;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu:hover > .webcivix-menu-panel > *,
  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu:focus-within > .webcivix-menu-panel > * {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Fix Menu line height */
@media (max-width: 1024px),(min-width:1025px) {
    .main-navigation.sticky-navigation-transition .main-nav > ul > li > a {
        line-height: 60px;
    }
}

/* WebCivix mega menu - mid-width fix */
@media (max-width: 768px) and (min-width: 481px) {
  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu > .webcivix-menu-panel {
    width: 90% !important;
    left: 50% !important;
    transform: translate(-50%, -10px);
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition:
      max-height 0.25s ease,
      opacity 0.18s ease,
      transform 0.2s ease;
    padding: 20px 10px;
    z-index: 999;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu:hover > .webcivix-menu-panel {
    max-height: 800px;
    opacity: 1;
    transform: translate(-50%, 0);
    overflow: visible;
  }

  .wp-child-theme-sixmilesc .main-navigation .webcivix-menu-column {
    width: 50%;
    padding: 0 5px;
  }
}

/* Icon flyout search */
.sixmile-search-container {
  position: relative;
  display: inline-block;
}

.sixmile-search-toggle {
  background: none;
  border: none;
  color: #fff;
  font-size: 1rem;
  cursor: pointer;
  padding: 0.4rem;
}

.sixmile-search-flyout {
  position: absolute;
  top: 100%;                 /* anchor below trigger */
  right: 0;
  transform: translateY(-10px); /* start slightly above */
  background: #fff;
  border-radius: 6px;
  padding: 0.4rem 0.6rem;
  color: #000;
  width: 220px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease, transform 0.25s ease;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
  z-index: 1000;
}

.sixmile-search-flyout.open {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(6px); /* drop down */
}

.sixmile-search-flyout input[type="search"] {
  width: 100%;
  border: none;
  outline: none;
  font-size: 1rem;
}

/* Mobile navigation and search */
@media (max-width: 768px) {
  .search-form.active {
    width: 140px;
  }

  .wp-child-theme-sixmilesc .main-navigation .inside-navigation {
    align-content: center;
  }

  .wp-child-theme-sixmilesc .site-logo.mobile-header-logo img {
    height: 100px;
    z-index: 1000;
  }

  .menu-toggle .gp-icon svg {
    width: 1.4em;
    height: 1.4em;
  }

  .sixmile-search-container {
    margin-left: auto;
  }

  #mobile-menu {
    transform: translateX(100%);
    opacity: 0;
    transition: transform 0.35s ease, opacity 0.25s ease;
    will-change: transform;
    position: absolute;
    right: 0;
    top: 100%;
    width: 100%;
    z-index: 9999;
  }

  .menu-toggle[aria-expanded="true"] + #mobile-menu,
  .main-nav.toggled {
    transform: translateX(0);
    opacity: 1;
  }
}

/* WebCivix mobile menu */
@media (max-width: 768px) {
  #mobile-menu {
    background: #0b2241;
    color: #fff;
    font-family: var(--wp--preset--font-family--primary, system-ui);
  }

  #mobile-menu .sf-menu,
  #mobile-menu .sf-menu ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  #mobile-menu .sf-menu > li > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px 18px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
    font-size: 0.95rem;
    color: #fff;
    text-decoration: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  #mobile-menu .sf-menu > li.current-menu-item > a,
  #mobile-menu .sf-menu > li.current-menu-ancestor > a {
    background: #c76323;
    border-bottom-color: transparent;
  }

  #mobile-menu .sf-menu > li > .sub-menu {
    background: #061533;
  }

  #mobile-menu .sf-menu > li > .sub-menu > li > a {
    display: block;
    padding: 14px 18px 14px 34px;
    font-size: 0.95rem;
    font-weight: 500;
    text-transform: none;
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    text-decoration: none;
  }

  #mobile-menu .sf-menu > li > .sub-menu > li > a:hover {
    background: rgba(255, 255, 255, 0.06);
    color: #face7d;
  }

  #mobile-menu .sf-menu .sub-menu .sub-menu {
    background: #040d24;
  }

  #mobile-menu .sf-menu .sub-menu .sub-menu > li > a {
    padding: 9px 18px 9px 50px;
    font-size: 0.92rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    color: #f0f0f0;
  }

  #mobile-menu .sf-menu .sub-menu .sub-menu > li > a:hover,
  #mobile-menu .sf-menu .sub-menu .sub-menu > li > a:focus {
    background: rgba(255, 255, 255, 0.05);
    color: #face7d;
  }

  #mobile-menu .sf-menu > li > a .dropdown-menu-toggle,
  #mobile-menu .sf-menu .menu-item-has-children > a .dropdown-menu-toggle {
    display: inline-flex;
    margin-left: 8px;
  }

  #mobile-menu .dropdown-menu-toggle .gp-icon svg {
    transition: transform 0.2s ease;
  }

  #mobile-menu .dropdown-menu-toggle[aria-expanded="true"] .gp-icon svg {
    transform: rotate(180deg);
  }

  #mobile-menu a {
    -webkit-tap-highlight-color: transparent;
  }

  #mobile-menu li {
    margin: 0;
    padding: 0;
  }

  #mobile-menu .sf-menu > li:last-child > a {
    border-bottom: none;
  }
}


/*====================================================================
 6. HEADER
====================================================================*/
.site-header {
  background-color: var(--wp--preset--color--blue-primary-dusk-blue);
  color: var(--wp--preset--color--base);
}

/* Header wave divider */
.wave-container {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 220px;
  line-height: 0;
  overflow: hidden;
  background-color: transparent;
}

.header-wave {
  position: relative;
  width: 100%;
  line-height: 0;
  z-index: 10;
  height: 60px;
  background-color: transparent;
}

.header-wave svg {
  display: block;
  width: 100%;
  height: 160px;
  box-shadow: 0 0 16px 10px rgba(0, 0, 0, 0.5);
}

/* Mobile header layout */
@media (max-width: 767px) {
  .inside-header {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 10px 1rem;
    height: auto;
  }

  .header-search {
    order: 1;
    flex: 0 0 33.333%;
    text-align: left;
  }

  .site-branding {
    order: 2;
    flex: 0 0 33.333%;
    text-align: center;
  }

  #site-navigation {
    order: 3;
    flex: 0 0 0;
    text-align: right;
  }

  .site-branding .site-logo-link,
  .site-branding .header-image.is-logo-image {
    max-height: 120px;
    width: auto;
    display: block;
    margin: -10px auto -25px;
  }

  .header-search #search-form {
    display: none;
  }
}

.header-image.is-logo-image {
  max-width: 200px;
  margin-bottom: -80px;
  position: relative;
  z-index: 100;
}

.site-header .site-logo img.is-logo-image {
  filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.45));
}

.sticky-navigation-logo img.is-logo-image {
  filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.45));
}

@media (max-width: 768px) {
  .header-wave {
    display: none;
  }

  .home #page {
    margin-top: 30px;
  }
}

.sixmile-breadcrumbs {
    font-size: 0.9rem;
    margin: 15px 0;
    color: #666;
}

.sixmile-breadcrumbs a {
    color: var(--wp--preset--color--blue-primary-dusk-blue);
    text-decoration: none;
}

.sixmile-breadcrumbs a:hover {
    text-decoration: underline;
}

.sixmile-breadcrumbs .sep {
    margin: 0 6px;
    color: #999;
}

.sixmile-breadcrumbs .current {
    font-weight: 600;
}


/*====================================================================
 7. LINKS
====================================================================*/
a {
  color: var(--wp--preset--color--secondary);
  font-weight: 600;
}

a:hover,
a:focus {
  color: var(--wp--preset--color--brown-darker-rusty-spice);
  text-decoration: underline;
  font-weight: 600;
}

/* Match Core block file block to tertiary button styling */
.wp-block-file {
  margin: 0;
}

.wp-block-file .wp-block-file__button {
  align-items: center;
  background-color: var(--wp--preset--color--base, #F1F4F9);
  box-shadow: 3px 3px 2px 0px rgba(0, 0, 0, 0.1);
  color: var(--wp--preset--color--blue-darker-space-indigo, #1F2D47);
  display: inline-flex;
  font-weight: 600;
  text-decoration: none;
  border: 2px solid var(--wp--preset--color--blue-darker-space-indigo, #1F2D47);
  border-radius: 8px;
  padding: 10px 20px;
}

.wp-block-file .wp-block-file__button:hover,
.wp-block-file .wp-block-file__button:focus {
    background-color: var(--wp--preset--color--base, #F1F4F9);
    color: var(--wp--preset--color--contrast, #000000);
    transform: translate3d(1px, 1px, 0px);
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.1);
    text-decoration: none;
}

/* Quick Links section */
.featured-links {
  position: relative;
  margin-top: 0;
  background-color: var(--wp--preset--color--blue-primary-dusk-blue);
  border-bottom: 1px solid #000;
}

.featured-links-wave {
  position: absolute;
  top: -145px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 150px;
  overflow: hidden;
  pointer-events: none;
  z-index: 2;
}

.featured-links-wave svg {
  display: block;
  width: 100%;
  height: 100%;
}

.featured-links-list {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-evenly;
  list-style: none;
  padding: 0;
  margin: -80px 0 1.5em 0;
  z-index: 100;
  position: relative;
}

.featured-links-list li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: var(--wp--preset--color--base);
  font-weight: 600;
  transition: transform 0.2s ease, color 0.2s ease;
}

.featured-links-list li a:hover {
  transform: scale(1.08);
  color: #e5a110;
}

.featured-links .featured-links-list .quick-link-item {
  width: 120px;
}

.featured-links .featured-links-list .quick-link-item .icon-text {
  white-space: nowrap;
}

.icon-circle {
  width: 80px;
  height: 80px;
  background-color: var(--wp--preset--color--base);
  border: 4px solid #e5a110;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0.5rem;
  transition: background-color 0.3s ease, border-color 0.3s ease;
  box-shadow: 1px 1px 17px 0 rgb(0 0 0 / 75%);
}

.featured-links-list li a:hover .icon-circle {
  border-color: var(--wp--preset--color--blue-primary-dusk-blue);
  background-color: #e5a110;
}

.icon-circle i {
  font-size: 2rem;
  color: var(--wp--preset--color--blue-primary-dusk-blue);
  transition: color 0.3s ease;
}

.featured-links-list li a:hover .icon-circle i {
  color: var(--wp--preset--color--base);
}

@media (max-width: 1111px) and (min-width: 768px) {
  .featured-links-list {
    gap: 1.4rem;
  }

  .featured-links-list li {
    width: calc(50% - 1.5rem);
    max-width: 150px;
  }
}

@media (max-width: 768px) {
  .featured-links-list {
    gap: 2rem;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 0 1rem;
  }

  .featured-links-list li {
    width: 100%;
    margin-bottom: 0.5rem;
  }

  .featured-links-wave {
    top: -68px;
    height: 70px;
  }
}


/*====================================================================
 8. BUTTONS
====================================================================*/
button,
.button,
input[type="submit"] {
  background-color: var(--wp--preset--color--secondary);
  color: var(--wp--preset--color--base);
  border: none;
  padding: 0.6em 1.2em;
  border-radius: 4px;
  font-family: var(--wp--preset--font-family--primary);
  font-weight: 600;
}

button:hover,
.button:hover,
input[type="submit"]:hover {
  background-color: var(--wp--preset--color--blue-primary-dusk-blue);
}

/*====================================================================
 9. HOME
====================================================================*/

.calendar .calendar-inner::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(255,255,255,0.60);
    z-index: 1;
}
.calendar .calendar-inner h2,
.calendar .calendar-inner iframe {
    position: relative;
    z-index: 2;
}

/* Teamup display homepage swap on mobile */

.teamup-event {
  margin-left: 1em;
}

.teamup-desktop {
    display: none;
}

.teamup-mobile {
    display: block;
}

/* Desktop */
@media (min-width: 769px) {
    .teamup-desktop {
        display: block;
    }

    .teamup-mobile {
        display: none;
    }
}

/*====================================================================
 10. NEWS ( BLOG )
====================================================================*/

.sixmile-blog-layout a {
  text-decoration: none;
}

.sixmile-blog-layout a:hover {
  text-decoration: underline;
}

.sixmile-blog-item {
    display: grid;
    grid-template-columns: 200px 1fr;
    grid-gap: 20px;
    padding: 20px 0;
    border-bottom: 1px solid #ddd;
}

.sixmile-blog-img img {
    width: 100%;
    height: auto;
    border-radius: 6px;
}

.sixmile-blog-title {
    margin: 0 0 5px 0;
}

.sixmile-blog-meta {
    font-size: 0.9em;
    color: #444444;
    margin-bottom: 10px;
}

#sixmile-loading {
    text-align: center;
    padding: 20px;
}

/* Overall layout */
.sixmile-blog-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    grid-gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 20px;
}

/* Sidebar */
.sixmile-blog-sidebar {
    border-left: 1px solid #ddd;
    padding-left: 20px;
}

.sixmile-sidebar-block {
    margin-bottom: 40px;
}

.sixmile-sidebar-block h3 {
    margin-bottom: 12px;
    font-size: 1.3em;
    border-bottom: 2px solid #ccc;
    padding-bottom: 6px;
}

/* Tag cloud styling */
.sixmile-tag-cloud a {
    display: inline-block;
    margin: 4px;
    padding: 6px 10px;
    background: #f5f5f5;
    border-radius: 4px;
    text-decoration: none;
}
.sixmile-tag-cloud a:hover {
    background: var(--color-primary, #0056b3);
    color: #fff;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .sixmile-blog-layout {
        grid-template-columns: 1fr;
    }
    .sixmile-blog-sidebar {
        border-left: none;
        padding-left: 0;
        margin-top: 40px;
    }
    .sixmile-blog-item {
      display: grid;
      grid-template-columns: 1fr;
    }
}

/*====================================================================
 11. TEMPLATES / OTHER
====================================================================*/
body:not(.home) .inside-article {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 12px; /* subtle curve */
    padding: 1rem;
    margin-bottom: 2rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    width: 100%;
}

/* Sidebar block */
aside#block-3 {
  padding: 15px;
  background-color: var(--wp--preset--color--gold-lighter-soft-peach);
  border: 2px solid var(--wp--preset--color--gold-darker-amber-honey);
  color: #000;
  font-weight: 600;
  border-radius: 20px;
}

@media (max-width: 768px) {

  #main.site-main {
    order: 1;
  }

  aside#block-3 {
    padding: 0;
    border-radius: 0;
    border-width: 4px 0;
  }

  aside#block-3 .wp-block-group {
      padding: 1em;
  }

  aside#block-3 .wp-block-group a {
      font-size: 1rem;
      padding: 0.8em 1em;
      border-radius: 10px;
  }

  aside#block-3 .wp-block-group a {
      display: block;
      padding: 0.6em 0.8em;
      background: white;
      border-radius: 8px;
      color: var(--wp--preset--color--blue-primary-dusk-blue);
      font-weight: 600;
      text-decoration: none;
      box-shadow: 0 1px 4px rgba(0,0,0,0.1);
      transition: background 0.2s ease, transform 0.1s ease;
  }

  aside#block-3 .related-pages a:hover,
  aside#block-3 .related-pages a:focus {
      background: var(--wp--preset--color--gold-primary-sunflower-gold);
      transform: translateY(-2px);
      color: var(--wp--preset--color--blue-primary-dusk-blue);
  }

}

.six-mile-rec-logo {
    margin-top: -120px;
    margin-bottom:30px;
    float: right;
}

@media (max-width: 420px) {
  .six-mile-rec-logo {
    width: 80px;
  }
}

.webcivix-biz-filters input,
.webcivix-biz-filters select {
    background-color: #fff;
}

/* Container for each FAQ item */
.faq .wp-block-accordion {
    background-color: #ffffff;
    margin-bottom: 6px;
    border-radius: 8px;
    border: 1px solid #9f9f9f;
    transition: all 0.3s ease;
    overflow: hidden;
    padding: .5em;
    height: 55px;
}

/* When any accordion item inside is open */
.faq .wp-block-accordion:has(.wp-block-accordion-item.is-open) {
  height: auto;
}

.faq .wp-block-accordion:hover {
    border-color: #acc8b8;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    transform: translateY(-1px);
    border: 1px solid #111111;
    background-color: var(--wp--preset--color--base);
}

.faq .wp-block-accordion button:hover {
    color: #000;
    background-color: var(--wp--preset--color--base);
}

/*====================================================================
  12. FOOTER
====================================================================*/
.site-footer {
  background-color: var(--wp--preset--color--blue-primary-dusk-blue);
  color: var(--wp--preset--color--base);
  font-family: var(--wp--preset--font-family--secondary);
  padding: 3em 1em;
  font-size: 0.95em;
}

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

.footer-columns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2em;
  text-align: left;
}

.footer-title {
  color: #fff;
  font-size: 1.1em;
  margin-bottom: 0.75em;
  border-bottom: 1px solid #737373;
  padding-bottom: 0.25em;
}

.footer-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-menu li {
  margin-bottom: 0.4em;
}

.site-footer a {
  color: #ccc;
  transition: color 0.3s ease;
}

.site-footer a:hover {
  color: #fff;
}

.social-links {
  list-style: none;
  padding: 0;
  margin: 0;
}

.social-links li {
  margin-bottom: 0.4em;
}

.social-links a {
  color: #ccc;
  text-decoration: none;
  transition: color 0.3s ease;
}

.social-links a:hover {
  color: #fff;
}

.site-info {
  text-align: center;
  margin-top: 2em;
  font-size: 0.85em;
  color: #FFF;
  border-top: 1px solid #333;
  padding-top: 1em;
}

@media (max-width: 768px) {
  .footer-columns {
    grid-template-columns: 1fr;
    text-align: center;
  }
}

/*====================================================================
  13. PATTERNS
====================================================================*/

.council-wrapper {
    padding: 2rem 0;
}
.council-subtitle {
    color: var(--wp--preset--color--green-primary-turf-green);
    margin-bottom: 1.5rem;
}
.council-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 2.5rem;
    margin-top: 1rem;
}
.council-card {
    background: #ffffff;
    padding: 1.75rem;
    border-radius: 14px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    text-align: center;
}
.council-photo img {
    width: 160px !important;
    height: 160px !important;
    border-radius: 50% !important;
    object-fit: cover;
    margin-bottom: 1rem;
}
.council-name {
    margin: .25rem 0 .5rem;
}
.role-badge {
    background: #e8f2e8;
    color: #157347;
    padding: 5px 12px;
    border-radius: 8px;
    font-weight: 600;
    margin-bottom: .5rem;
    display: inline-block;
}
.term-dates {
    font-size: .95rem;
    color: #444;
    margin-bottom: .75rem;
}
.council-email.button {
    background: var(--wp--preset--color--green-primary-turf-green);
    color: #fff;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    display: inline-block;
    font-size: .9rem;
}
.council-email.button:hover {
    background: var(--wp--preset--color--green-darker-emerald-depths);
}
.council-message {
    margin-top: 1rem;
    text-align: left;
}
.council-message summary {
    cursor: pointer;
    padding: .5rem 0;
    font-weight: 600;
}
.council-message[open] summary {
    color: var(--wp--preset--color--green-primary-turf-green);
}

.council-message-box {
    max-height: 550px;      /* adjust height as needed */
    overflow-y: auto;
    padding-right: 10px;    /* prevents text hiding under the scrollbar */
    scrollbar-width: thin;  /* nice slim scrollbar (Firefox) */
    scrollbar-color: #7aa37a #e5f4e8; /* optional colors */
}





/*====================================================================
  XX. DONATIONS
====================================================================*/


/* Overall Stack Wrapper */
.donation-tier-stack {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 20px 0;
}

/* Each Row / Tier */
.donation-tier-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #ffffff;
    border: 1px solid rgba(0,0,0,0.08);
    padding: 18px 22px;
    border-radius: 12px;
    box-shadow: 0 3px 12px rgba(0,0,0,0.05);
    transition: 0.25s ease;
    width: 50%;
    margin: 0 auto;
}

.donation-tier-row p {
    margin: 0;
}

/* Hover Lift */
.donation-tier-row:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.10);
}

/* Left Label Section */
.tier-label {
    font-size: 1.15rem;
    font-weight: 600;
    color: #0a3d28;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Icons */
.tier-icon {
    font-size: 2.4rem;
    line-height: 1;
}

/* Amount / Range */
.tier-amount {
    font-size: 1rem;
    font-weight: 500;
    color: #2f4f34;
}

/* Mobile: stack columns instead of side-by-side */
@media (max-width: 640px) {
    .donation-tier-row {
        flex-direction: column;
        text-align: center;
        gap: 6px;
    }
}


/* ======================= */
/* COLOR THEMES PER TIER   */
/* ======================= */

/* 1. Greenspace Donor */
.donation-tier-row:nth-child(1) {
    background: #e5f4e8;      /* very pale green */
    border-left: 6px solid #78a66a;
}

/* 2. Bryson Buddy */
.donation-tier-row:nth-child(2) {
    background: #dff3ea;      /* green-teal tint */
    border-left: 6px solid #6fa88b;
}

/* 3. Garden Guardian */
.donation-tier-row:nth-child(3) {
    background: #d7efe1;
    border-left: 6px solid #5ea07d;
}

/* 4. Trail Builder */
.donation-tier-row:nth-child(4) {
    background: #f2efe2;      /* soft earthy beige */
    border-left: 6px solid #d0b77b;
}

/* 5. Pond Protector */
.donation-tier-row:nth-child(5) {
    background: #e3f0fa;      /* subtle water blue */
    border-left: 6px solid #7baed7;
}

/* 6. Legacy Tree Circle */
.donation-tier-row:nth-child(6) {
    background: #f6f1da;      /* soft gold */
    border-left: 6px solid #ceb95c;
    font-weight: 700;
}

/* Mobile stacking */
@media (max-width: 640px) {
    .donation-tier-row {
        flex-direction: column;
        text-align: center;
        gap: 8px;
    }
}