/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

.text-justify {
  text-align: justify;
  text-align-last: left; /* optional: last line aligns left */
  margin-bottom: 1em !important;
}

@media (max-width: 768px) {
  #logo img {
   padding: 10px;
  }
}

@media (max-width: 768px) {
	.menu-container {
		padding: 10px;
	}
}

nav.custom-hero-nav li a {
    font-weight: 200 !important;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8), 0 0 10px rgba(0,0,0,0.6);
}

.menu-link {
    font-weight: 200 !important;
}

:root {
--cnvs-heading-color: white;
}

#map {
  position: relative;
  z-index: 1;
}

body.show-header-immediately #header:not(.sticky-header) #header-wrap {
 	z-index: 1000 !important;       /* bring header above other content */
    transform: translateY(0) !important; /* move into view */
    pointer-events: auto !important; /* allow clicks */
}

nav.custom-hero-nav .lang-menu-list li a {
  padding: 10px 2px !important;     /* new padding */
}

.fbox-icon i, .fbox-icon img {
    border-radius: 50%;
    background-color: var(--cnvs-themecolor);
    padding: 10px;
}

.feature-box {
    --cnvs-featured-box-icon: 5rem;
}

/*********************/
/* Language selector */
/*********************/

/* Container */
.lang-dropdown {
  position: relative;
  display: inline-block;
  font-family: var(--cnvs-primary-menu-font);
  --cnvs-primary-menu-padding-y: 14px;
  --cnvs-primary-menu-padding-x: 5px;
}

/* Current language (inline text) */
.lang-current {
  cursor: pointer;
  --cnvs-primary-menu-padding-y: 14px;
  --cnvs-primary-menu-padding-x: 15px;
  /*display: block;*/
  display: inline-flex;
  line-height: 22px;
  padding: var(--cnvs-primary-menu-padding-y) var(--cnvs-primary-menu-padding-x);
  color: var(--cnvs-primary-menu-color);
  font-weight: 200;
  font-size: 0.875rem;
  font-family: var(--cnvs-primary-menu-font);
  text-transform: var(--cnvs-primary-menu-tt);
  letter-spacing: var(--cnvs-primary-menu-ls);
  user-select: none;
}

.lang-current:hover {
  color: var(--cnvs-primary-menu-hover-color);
}

/* Arrow */
.arrow {
  font-size: 14px;
  transition: transform 0.2s ease;
  padding-left: 2px;
}

/* Rotate arrow when open */
.lang-dropdown.active .arrow {
  transform: rotate(180deg);
}

/* Dropdown menu */
.lang-menu {
  position: absolute;
  /*top: 120%;*/
  left: 0;
  display: none;

  min-width: 60px;
  padding: 4px 0;

  background: #111;
  border: 1px solid #333;

  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 1000;
}

/* Show menu */
.lang-menu.open {
  display: block;
}

/* Menu items */
.lang-menu a {
  display: block;
  padding: 6px 10px;

  font-size: var(--cnvs-primary-menu-font-size);
  color: white;
  text-decoration: none;

  transition: background 0.2s ease, opacity 0.2s ease;
}

/* Hover effect */
.lang-menu a:hover {
  background: #222;
}

/* Optional: active/current language inside menu */
.lang-menu a.active {
  opacity: 0.6;
  pointer-events: none;
}

/* Optional: smooth fade-in (if you want subtle animation) */
.lang-menu {
  opacity: 0;
  transform: translateY(-5px);
  transition: opacity 0.15s ease, transform 0.15s ease;
}

.lang-menu.open {
  opacity: 1;
  transform: translateY(0);
}