/*============================================================================================*/
/* Your custom styles below */
/*============================================================================================*/

/* Plain icon lists (class="facilities") used outside of .box_item_info cards -
   remove default browser bullet points, keep the icons, no extra card styling. */
ul.facilities {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
ul.facilities li {
  display: flex;
  align-items: center;
  margin: 0 0 10px 0;
}
ul.facilities li:last-child {
  margin-bottom: 0;
}
ul.facilities li i {
  font-size: 1.25rem;
  color: #3d7a4a;
  margin-right: 12px;
  flex-shrink: 0;
}

/* Activities page - extra breathing room between the stacked photo/text
   rows on desktop only (mobile keeps the default Bootstrap mb-5 spacing). */
@media (min-width: 992px) {
  .row_list_version_2 {
    margin-bottom: calc(3rem + 40px);
  }
}

/* Language switcher — replaces the header "Contact" button */
.lang_select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='8'%20viewBox='0%200%2012%208'%3E%3Cpath%20d='M1%201l5%205%205-5'%20fill='none'%20stroke='%2324262d'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 11px 8px;
  border: 2px solid #24262d;
  color: #24262d;
  border-radius: 25px;
  height: 42px;
  padding: 0 34px 0 16px;
  margin: 0;
  font-family: inherit;
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  outline: none;
}
.lang_select::-ms-expand { display: none; }
.lang_select option {
  color: #24262d;
  background-color: #fff;
  font-weight: 500;
}
header.reveal_header.headroom--top .lang_select {
  border-color: #fff;
  color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='8'%20viewBox='0%200%2012%208'%3E%3Cpath%20d='M1%201l5%205%205-5'%20fill='none'%20stroke='%23ffffff'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
}
header.fixed_header.sticky .lang_select,
header.reveal_header.headroom--not-top .lang_select {
  border-color: #24262d;
  color: #24262d;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='8'%20viewBox='0%200%2012%208'%3E%3Cpath%20d='M1%201l5%205%205-5'%20fill='none'%20stroke='%2324262d'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Menu-panel footer caption uses <span><em>…</em>…</span> without an <a> wrapper,
   so the theme's .phone_element a span em rules don't apply. Mirror them here so the
   two phrases stack on two lines instead of running together. */
.phone_element span {
  font-size: 1.125rem;
  font-weight: 600;
  color: #3d7a4a;
}
.phone_element span em {
  display: block;
  color: #333;
  font-style: normal;
  text-transform: uppercase;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 2px;
}

/* The theme hides header nav ul li:first-child at <=991px (it was a desktop-only
   item). The language selector is now that first child, so re-show it on mobile and
   line it up on one row at the same height as the hamburger button. */
@media (max-width: 991px) {
  header nav ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  header nav ul li.lang_switcher {
    display: inline-flex !important;
    align-items: center;
    margin: 0 16px 0 0;
  }
  /* remove the theme's downward nudge so the icon centers on the same line */
  header nav ul .hamburger_2 {
    top: 0;
  }
}
@media (max-width: 575px) {
  .lang_select {
    height: 38px;
    padding-left: 12px;
    padding-right: 30px;
    font-size: 13px;
  }
}
