/* GANTRY5 DEVELOPMENT MODE ENABLED.
 *
 * WARNING: This file is automatically generated by Gantry5. Any modifications to this file will be lost!
 *
 * For more information on modifying CSS, please read:
 *
 * http://docs.gantry.org/gantry5/configure/styles
 * http://docs.gantry.org/gantry5/tutorials/adding-a-custom-style-sheet
 */

@charset "UTF-8";
.lwsocial {
  text-align: right;
}
.lwsocial a {
  color: #ffffff;
}
/* Make ONLY the top-level menu text dark */
.g-main-nav .g-toplevel > li > .g-menu-item-container .g-menu-item-title {
  color: #333333 !important;
  /* dark grey or #000000 for black */
}
/* Optional: change top-level hover color */
.g-main-nav .g-toplevel > li > .g-menu-item-container:hover .g-menu-item-title {
  color: #000000 !important;
}
/* Increase logo image size */
.g-logo img {
  max-height: 50px;
  /* Adjust to your preferred height */
  height: auto;
  width: auto;
}
/* Optional: make sure container allows space */
#logo-3288-particle {
  display: flex;
  align-items: center;
  justify-content: center;
}
.g-logo {
  display: inline-block;
  max-width: 100%;
}
.custom-infobox-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  gap: 1rem;
  margin: 2rem 0;
}
.custom-infobox {
  background: #5d7e4a;
  border: 2px solid #444;
  border-radius: 15px;
  color: #ffffff;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
  padding: 2rem;
  min-height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 calc(25% - 1rem);
  box-sizing: border-box;
  text-decoration: none;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}
.custom-infobox:hover {
  background: #4c6c3b;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
@media (max-width: 768px) {
  .custom-infobox {
    flex: 1 1 100%;
  }
}
.g-infolist .g-infolist-item-title a {
  color: #fff !important;
  text-decoration: none;
}
.g-infolist .g-infolist-item-title a:hover {
  color: #e0e0e0 !important;
  text-decoration: underline;
}
.g-infolist-item-text {
  text-align: center;
}
/* One checkbox per line inside the tags group */
.rsform-block-tags .form-check {
  display: block;
  margin-bottom: 0.4rem;
}
body.aboutpage #g-slideshow {
  background-image: url('../../../../images/garden_banner.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.lifeways-event-article {
  padding: 1.5rem 1rem;
  max-width: 800px;
  margin: 0 auto;
}
.lifeways-event-article .event-meta {
  font-size: 0.95rem;
  color: #666;
  margin-bottom: 1rem;
}
.lifeways-event-article .event-image {
  text-align: center;
  margin: 1.5rem 0;
}
.lifeways-event-article .event-image img {
  max-width: 100%;
  height: auto;
  border-radius: 4px;
}
.lifeways-event-article .event-note {
  background: #eef7ec;
  border-left: 4px solid #406c3b;
  padding: 1rem;
  margin-top: 2rem;
  font-weight: 500;
  color: #2e4e2b;
}
.whatsonpage #g-expanded {
  margin: 0 !important;
  padding: 0 !important;
}
.whatsonpage #g-mainbar {
  margin: 0 !important;
  padding: 0 !important;
}
/* Result list reset */
.com-finder__results-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
/* Card layout */
.result__item {
  display: flex;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 6px;
  padding: 1rem;
  margin-bottom: 1.5rem;
  align-items: flex-start;
  gap: 1rem;
}
/* Image formatting */
.result__image {
  flex: 0 0 150px;
  margin: 0;
}
.result__image img {
  width: 150px;
  height: auto;
  border-radius: 4px;
}
/* Content block */
.result__title {
  margin: 0;
}
.result__title-link {
  font-size: 1.25rem;
  font-weight: 600;
  color: #4a6b2f;
  text-decoration: none;
}
.result__description {
  font-size: 0.95rem;
  margin-top: 0.5rem;
  line-height: 1.6;
  color: #333;
}
.result__date {
  display: block;
  font-size: 0.85rem;
  color: #666;
  margin-bottom: 0.25rem;
}
/* Taxonomy tags */
.result__taxonomy {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  padding: 0.5rem 0 0;
  margin: 0;
  gap: 0.75rem;
  font-size: 0.85rem;
  color: #666;
}
.result__taxonomy-item span {
  font-weight: 600;
  color: #888;
}
/* Responsive fallback */
@media (max-width: 768px) {
  .result__item {
    flex-direction: column;
    text-align: left;
  }
  .result__image img {
    width: 100%;
    max-width: 100%;
  }
}
/* Hide taxonomy (type, author, category) */
.result__taxonomy, .result__taxonomy-item {
  display: none !important;
}
/* Hide the date line */
.result__date {
  display: none !important;
}
/* Stack layout: image left, title + content right */
.result__item {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 1rem;
  border: 1px solid #e3e3e3;
  border-radius: 6px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  background: #fff;
}
/* Image formatting */
.result__image {
  flex: 0 0 120px;
  margin: 0;
}
.result__image img {
  width: 120px;
  height: auto;
  border-radius: 4px;
}
/* Content block */
.result__title {
  margin: 0 0 0.25rem 0;
  font-size: 1.2rem;
  font-weight: 600;
  color: #4a6b2f;
}
.result__title-link {
  text-decoration: none;
  color: inherit;
}
.result__description {
  font-size: 0.95rem;
  color: #333;
  line-height: 1.6;
  margin: 0;
}
/* Tidy up container to wrap title + desc */
.result__title, .result__description {
  display: block;
}
/* Responsive fallback */
@media (max-width: 768px) {
  .result__item {
    flex-direction: column;
    text-align: left;
  }
  .result__image img {
    width: 100%;
    max-width: 100%;
  }
}
.lifeways-result-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.lifeways-result-item {
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 1rem;
  margin-bottom: 1.5rem;
  background: #fff;
}
.lifeways-result-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}
.lifeways-result-image img {
  max-width: 120px;
  height: auto;
  border-radius: 4px;
}
.lifeways-result-content {
  flex: 1;
}
.lifeways-result-title {
  font-size: 1.2rem;
  margin: 0 0 0.5rem;
  color: #4c6534;
  font-weight: bold;
}
.lifeways-result-description {
  margin: 0;
}
.lifeways-tags-wrap {
  margin-top: 0.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.lifeways-tag {
  display: inline-block;
  background-color: #e5f6f0;
  color: #007a5e;
  font-size: 0.85rem;
  font-weight: 600;
  padding: 0.3rem 0.75rem;
  border-radius: 20px;
  border: 1px solid #bce3d3;
  white-space: nowrap;
}
.ct-card {
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 2rem;
  background-color: #fff;
  max-width: 900px;
  margin: 0 auto;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.ct-header {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  flex-wrap: wrap;
}
.ct-image img {
  max-width: 150px;
  height: auto;
  border-radius: 6px;
  object-fit: cover;
}
.ct-summary {
  flex: 1;
}
.ct-name {
  margin: 0 0 0.5rem;
  font-size: 1.8rem;
  color: #3c593f;
}
.ct-short {
  font-size: 1.1rem;
  color: #4d4d4d;
}
.ct-longdesc {
  margin-top: 1.5rem;
  font-size: 1rem;
  line-height: 1.6;
  color: #333;
}
.ct-qualifications {
  margin-top: 2rem;
}
.ct-qualifications h4 {
  margin-bottom: 0.5rem;
  color: #3c593f;
  font-size: 1.1rem;
}
.ct-qualifications ul {
  list-style: disc;
  padding-left: 1.5rem;
  padding-top: 0rem;
  padding-bottom: 0rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
}
.ct-contact {
  margin-top: 2rem;
  font-size: 1rem;
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}
.ct-contact a {
  color: #3c593f;
  text-decoration: underline;
}
/* Contact page layout */
.contact-columns {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 3rem;
}
.contact-details, .contact-map {
  flex: 1 1 300px;
}
.contact-details p {
  font-size: 1rem;
  margin: 0 0 1rem;
}
/* Map iframe styling */
.contact-map iframe {
  width: 100%;
  height: 300px;
  border-radius: 6px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
/* Button-style links */
.contact-button {
  display: inline-block;
  margin: 0.25rem 0;
  padding: 0.5rem 1rem;
  background-color: #0073aa;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  transition: background-color 0.2s ease;
  font-size: 0.95rem;
}
.contact-button:hover {
  background-color: #005b8a;
}
/* Form spacing */
.contact-form-wrapper {
  margin-top: 2rem;
}
/* Make icons white */
.white-icon {
  color: #fff !important;
  font-size: 2em;
}
/* Make sure the whole card is clickable */
.g-infolist .g-infolist-item {
  display: block;
  text-decoration: none;
  transition: background 0.3s ease;
}
.g-infolist .g-infolist-item:hover {
  filter: brightness(1.05);
  cursor: pointer;
}
div#copyright-7829-particle {
  font-size: x-small;
}
@media screen and (min-width: 768px) {
  #jfilters-filter-list-131-3 li:nth-child(1)::before {
    content: "Age of person seeking help:";
  }
  #jfilters-filter-list-131-3 li:nth-child(4)::before {
    content: "Number of people seeking help:";
  }
  #jfilters-filter-list-131-3 li:nth-child(7)::before {
    content: "Issues you need help with:";
  }
  #jfilters-filter-list-131-3 li:last-child::before {
    content: "Other";
  }
  #jfilters-filter-list-131-3 li:nth-child(1)::before, #jfilters-filter-list-131-3 li:nth-child(4)::before, #jfilters-filter-list-131-3 li:nth-child(7)::before, #jfilters-filter-list-131-3 li:last-child::before {
    display: block;
    font-weight: bold;
    margin: 1.5rem 0 0.5rem;
    flex-basis: 100%;
    width: 100%;
  }
}
div#jfilters-filter-container__inner-131-3 {
  max-width: 317px;
}
/* Improve button-like hover effect */
.g-infolist-item {
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  border-radius: 8px;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  /* subtle base */
}
.g-infolist-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
  /* slight lift */
  background-color: #3d6042 !important;
  /* slightly richer green for contrast */
}
.g-infolist-item-icon i {
  transition: transform 0.3s ease;
}
.g-infolist-item:hover .g-infolist-item-icon i {
  transform: scale(1.2);
}
/* Optional: Add focus/keyboard accessibility */
.g-infolist-item:focus {
  outline: 2px solid #fff;
  outline-offset: -4px;
}
@media screen and (min-width: 816px) {
  .g-infolist-particle .g-infolist.g-4cols .g-infolist-item {
    width: 20%;
    padding: 20px;
    margin: 20px;
  }
}
@media screen and (max-width: 815px) {
  .g-infolist-particle .g-infolist.g-4cols .g-infolist-item {
    padding: 20px;
    margin: 20px;
  }
}
/* Scoped to only therapy profiles */
.ct-profile--therapy .ct-card {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  padding: 2rem;
  background-color: #f9f9f9;
  border-radius: 8px;
  border: 1px solid #ddd;
}
/* Therapist image */
.ct-profile--therapy .ct-image {
  flex: 0 0 180px;
  max-width: 180px;
}
.ct-profile--therapy .ct-image img {
  width: 100%;
  border-radius: 6px;
  object-fit: cover;
}
/* Therapist details */
.ct-profile--therapy .ct-therapist-details {
  flex: 1 1 300px;
}
/* Qualifications list */
.ct-profile--therapy .ct-qualifications ul {
  margin: 0;
  padding-left: 1.2em;
  list-style-type: disc;
}
/* Contact spacing */
.ct-profile--therapy .ct-contact span {
  display: block;
  margin-bottom: 0.25em;
}
/* Optional: improve read flow in .ct-summary */
.ct-profile--therapy .ct-summary p {
  line-height: 1.6;
  margin-bottom: 1em;
}
.inner-mix .mix-introtext {
  font-size: 1rem;
  /* Slightly larger than default */
  line-height: 1.6;
  /* Improve readability */
  margin-top: 0.5rem;
  color: #333;
  /* Optional: darker text for better contrast */
}
.whatsonpage .page-header h1 {
  font-size: 2rem;
  /* Or adjust to suit, e.g., 2.2rem */
  font-weight: 400;
  /* Slightly bolder if preferred */
  margin-top: 1rem;
  /* Optional: add spacing */
}
.inner-mix h3 {
  font-size: 2rem !important;
  /* Adjust to suit your design */
  line-height: 1.3;
  margin-bottom: 0.5rem;
}
/* Add soft shaded background & padding to therapy summary */
.ct-profile--therapy .ct-summary {
  background: #f6f9f7;
  padding: 2rem;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
/* Optional: reduce last paragraph bottom spacing */
.ct-profile--therapy .ct-summary p:last-child {
  margin-bottom: 0;
}
/* Improve layout on larger screens */
@media (min-width: 768px) {
  .ct-profile--therapy .ct-header {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
  }
  .ct-profile--therapy .ct-therapist-details {
    padding-left: 2rem;
  }
}
/* Ensure name stands out */
.ct-profile--therapy .ct-name {
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}
/* Optional: tidy up qualifications heading */
.ct-profile--therapy .ct-qualifications h4 {
  margin-top: 1.5rem;
  font-size: 1.1rem;
  color: #2f5e4e;
}
.ct-profile--therapy .ct-divider {
  border: none;
  border-top: 1px solid #ddd;
  margin: 3rem auto;
  max-width: 80%;
  opacity: 0.5;
}
.banner-video-wrapper {
  position: relative;
  width: 100%;
  height: 40vh;
  /* Full viewport height */
  overflow: hidden;
}
.banner-video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.banner-video-wrapper {
  position: relative;
  width: 100%;
  height: 40vh;
  /* Your chosen height */
  overflow: hidden;
}
.banner-video-wrapper iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 250%;
  min-height: 300%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
}
.banner-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: white;
}
.banner-overlay h1 {
  font-size: 2.5rem;
  margin: 0 0 0.5rem;
}
.banner-overlay p {
  font-size: 1.25rem;
  margin: 0;
}
.readmore-btn {
  display: inline-block;
  margin-top: 12px;
  padding: 8px 18px;
  background: #5a7d36;
  /* Lifeways green */
  color: #fff !important;
  border-radius: 6px;
  /* matches rounded boxes */
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  transition: background 0.25s ease, transform 0.15s ease;
}
.readmore-btn:hover {
  background: #46642a;
  /* darker green on hover */
  transform: translateY(-2px);
}
/* Workshops & Classes subtle variation */
.workshopsandclasses .mix {
  background: #fdfdfc;
  /* softer off-white */
  border: 1px solid #e3e9e5;
  /* light sage border */
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 25px;
}
/* Titles – keep green but lighter */
.workshopsandclasses .mix-title {
  color: #4f7a6b;
  /* softer, fresher green */
  font-weight: 600;
}
/* Short intro – italic for contrast */
.workshopsandclasses .ct-short {
  font-style: italic;
  color: #5d6f68;
}
/* Events subtle variation */
.eventsoverview .mix {
  background: #f8faf9;
  /* very light green tint */
  border: 1px solid #d6e3dc;
  /* slightly stronger border */
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 25px;
}
/* Titles – deeper green for emphasis */
.eventsoverview .mix-title {
  color: #2f564a;
  /* darker, more structured green */
  font-weight: 600;
}
/* Short intro – neutral grey-green */
.eventsoverview .ct-short {
  color: #5a6d65;
}
/* Mobile layout fix for counsellor results */
@media (max-width: 768px) {
  .lifeways-result-wrapper {
    display: block;
  }
  .lifeways-result-image, .lifeways-result-content {
    width: 100%;
    display: block;
  }
  .lifeways-result-image {
    text-align: center;
    margin-bottom: 1rem;
  }
  .lifeways-result-image img {
    max-width: 180px;
    width: 100%;
    height: auto;
  }
  .lifeways-result-description {
    margin-bottom: 0.75rem;
  }
  .lifeways-result-tags {
    width: 100%;
  }
  .lifeways-tags-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
  }
  .lifeways-tag {
    display: inline-block;
  }
  .lifeways-result-item {
    padding: 0.3rem;
  }
}
/*# sourceMappingURL=custom_332.css.map */