/******************************************************************************************************************* APP MAP ******************************/
#map {
	width:100vw;
	height: 100vh;	
}

/******************************************************************************************************************* THEME STYLES ******************************/
:root {
	--theme-white: #fff;
	--theme-black: #1d1d1d;
	--theme-light-grey:#d8dae3;
	--theme-dark-grey:#7c7e8b;
	
	--theme-red:#800020;
	--theme-blue:#0981D1;    /*ACTION*/
	--theme-yellow:#D5B56E; 
	--theme-green:#008080;   /*SELECTION*/
	
	--theme-darkblue-color:#0a1e55;
	--theme-selected-darkblue-color:#081f49;
	    
	--theme-color-cat-Tourism-Hospitality:Blue;
	--theme-color-cat-Retail-Sales:Red;
	--theme-color-cat-Agriculture-Farming:Green;
	--theme-color-cat-Outdoor-Adventure:tomato;
	--theme-color-cat-Festivals-Events:Teal;
	--theme-color-cat-Seasonal-Education:Yellow;
	--theme-color-cat-Winter-Sports:cyan;
	--theme-color-cat-Seasonal-Construction:greenyellow;
	--theme-color-cat-Seasonal-Hospitality-Private:blueviolet;
	--theme-color-cat-Seasonal-Volunteer:palevioletred;
	 
	 --theme-box-shadow-inset: rgb(10 10 10 / 48%) 3px 3px 6px 0px inset, rgb(255 255 255 / 20%) -3px -3px 6px 1px inset;
	 --theme-box-shadow-min: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 1px 1px 3px -1px;
	 --theme-box-shadow-mid: rgba(50, 50, 93, 0.25) 2px 6px 27px -5px, rgba(0, 0, 0, 0.3) 0px 5px 16px -8px;
	 --theme-box-shadow-max: rgb(38 57 77 / 93%) 0px 10px 20px -10px;
	 --theme-box-shadow-outline: rgba(6, 24, 44, 0.4) 0px 0px 0px 2px, rgb(53 53 53 / 65%) 0px 4px 6px -1px, rgba(255, 255, 255, 0.08) 0px 1px 0px inset;

	 --theme-box-shadow-3d-smooth: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px, rgba(10, 37, 64, 0.35) 0px -2px 6px 0px inset;
	 --theme-box-shadow-3d-harsh-min: rgb(0 0 0 / 40%) 0px 1px 2px, rgb(0 0 0 / 30%) 0px 3px 5px -3px, rgb(0 0 0 / 21%) 0px -2px 0px inset, rgb(255 255 255 / 30%) 0px 1px 1px 1px inset;
	 --theme-box-shadow-3d-harsh-max: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
	
	 --theme-border-black: 2px solid var(--theme-black);
}

body *:not(hr):not(textarea) {
    border: unset!important;
}

body {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500; 
	color:var(--theme-darkblue-color);
	overflow-x: hidden;
}

::-webkit-input-placeholder {
  olor: var(--theme-black);
  font-size: 13px;
	letter-spacing: 3px;
}
::-moz-placeholder {
  olor: var(--theme-black);
  font-size: 13px;
	letter-spacing: 3px;
}
:-ms-input-placeholder {
  olor: var(--theme-black);
  font-size: 13px;
	letter-spacing: 3px;
}
::placeholder {
  color: var(--theme-black);
  font-size: 13px;
	letter-spacing: 3px;
}

p, span, a, label, label{
	font-size: 1rem; 
	font-weight: 500; 
	margin: 0px;
	text-decoration: none;
}
h1, h2, h3 {
  font-weight: 700;
  margin: 0px;
}
h4, h5, h6 {
  font-weight: 900;
  margin: 0px;
}

h1 { font-size: 2rem;}
h2 { font-size: 1.45rem;}
h3 { font-size: 1.25rem;}
h4 { font-size: 1.6rem;}
h5 { font-size: 1.4rem;}
h6 { font-size: 1.2rem;}

hspan{
	font-size: 1rem; 
	font-weight: 600;
     }
hp{
	font-size: 1rem; 
	font-weight: 700;
  }
smallp{
	line-height: 0.9rem;
	font-weight: 500;
	font-size: 0.85rem;
}

hr.theme{
	border: 0;
	height: 1px;
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
	width: 100%;
}



/******************************************************************************************************************* THEME CLASSES ******************************/
/* solution for scrolling stiky elements on overflow */
sticky_elements_scroller{
	overflow: auto;
}

.display_none{
    display:none!important;
    pointer-events: none !important;	
}



/*************************************** info buttons & info container **********/
info{
    background-color: var(--theme-yellow);
}

info .info-btn{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	cursor:pointer;
}
info .info-container{
	width: 100%;
	background: var(--theme-white);
	display: flex;
	flex-direction: column;
	padding: 8px 12px;
	overflow: auto;
}
info closebtn{
       margin-left: auto;
}
info .info-wrapper{
  height: 100%;
  padding: 10px 0px;
}
/*************************************** close buttons **********/
closebtn{
	position: relative;
	display: flex;
	align-items: center;
	column-gap: 5px;
	border-radius: 8px;
	padding: 3px;
	transition: 0.3s;
	cursor: pointer;
	}
closebtn:hover{
    background: var(--theme-red);
    color: var(--theme-white);
}
closebtn .closetxt{}
closebtn .xsymbol{
	background-color: var(--theme-red);
	color: var(--theme-white);
	border-radius: 50px;
	width: 25px;
	height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: 0.45s;
	line-height: 1rem;
}
closebtn:hover .xsymbol{
	background-color: var(--theme-white);
	color: var(--theme-red);	
}


/*************************************** back buttons **********/
backbtn{
	position: relative;
	display: flex;
	align-items: center;
	column-gap: 5px;
	border-radius: 8px;
	padding: 3px;
	transition: 0.3s;
	cursor: pointer;
}
backbtn:hover{
    background: var(--theme-yellow);
}
backbtn .backsymbol{
	background-color: var(--theme-yellow);
	color: var(--theme-white);
	border-radius: 50px;
	width: 25px;
	height: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: 0.45s;
	line-height: 1rem;
}
backbtn:hover .backsymbol{
	background-color: var(--theme-black);
	color: var(--theme-yellow);	
}

/*************************************** open drawers buttons **********/
openerbtn{
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1rem;
	border-radius: 50px;
	background-color: var(--theme-black);
	color: var(--theme-white);
	box-shadow: var(--theme-box-shadow-min);
	transition: right .8s cubic-bezier(0.47, -0.2, 0, 1.34),
		    left .8s cubic-bezier(0.47, -0.2, 0, 1.34),
		    top .8s cubic-bezier(0.47, -0.2, 0, 1.34),
		    bottom .8s cubic-bezier(0.47, -0.2, 0, 1.34),
		    background-color 1.5s cubic-bezier(1, 0, 0, 1.05),
		    box-shadow 0.2s cubic-bezier(0.37, 0.7, 0.37, 0.7);
	cursor: pointer;
}

openerbtn.open{
	background-color: var(--theme-white);
	color: var(--theme-black);
}
openerbtn spanarrow {
	line-height: 1em;
	font-size: 1.7rem;
	font-weight: 900;
}
openerbtn.open spanarrow {
    transform: rotate(180deg);
}
 
/********************************************************************************************************************************************** DEVICE STYLES ******************************/
 * {
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
}

/********************************************************************************************************************************************** SCROLL BARS ******************************/
/*firefox*/
*{
	scrollbar-width: thin;
	scrollbar-width: 8px;
	scrollbar-color: var(--theme-white) #858585;
}
*::-webkit-scrollbar {
	width: 8px;
    height: 2px;
}
*::-webkit-scrollbar-track {
	border-radius: 5px;
	background-color: #858585;
}

*::-webkit-scrollbar-thumb {
	border-radius: 20px;
	background-color: var(--theme-white);
	border: 1px solid var(--theme-black);
	transition: background-color 2s ease;
}
*::-webkit-scrollbar-thumb:hover {
	background-color: var(--theme-black);
}



/*

@font-face {
  font-family: 'mrcapsonly';
  src: url(04e9df2aa123215b00fa4826d53a12cc.woff2) format("woff2"), url(85c46db1aa8ec1e7ae1705ce16478c6e.woff) format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Manrope-Caps';
  src: url(34630d2627dd8de90d83001619e4b2b8.eot);
  src: url(34630d2627dd8de90d83001619e4b2b8.eot?#iefix) format("embedded-opentype"), url(806cc4929864f491ce069d10688b281e.woff2) format("woff2"), url(e3f49df2b554d5c6b1b23309fdd2adcd.woff) format("woff"), url(934fad22b74b7ec3feb79902f13bddd9.ttf) format("truetype"), url(075df6db120de72807b70e855ed8adff.svg#Manrope-Regular) format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }
html {
  font-size: 16px;
  -webkit-tap-highlight-color: transparent; }
  @media (max-width: 660px) {
    html {
      font-size: 15px; } }

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }

body {
  color: #000;
  font-family: 'Manrope', sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 20px;
  margin: 0;
  padding: 0;
  -webkit-transition: opacity 0.15s;
  -o-transition: opacity 0.15s;
  transition: opacity 0.15s; }
  @media (max-width: 660px) {
    body {
      line-height: 19px; } }
  body.no-scroll {
    overflow: hidden; }

a {
  color: #000;
  text-decoration: none;
  -webkit-transition: all 0.35s;
  -o-transition: all 0.35s;
  transition: all 0.35s; }

img {
  max-width: 100%;
  height: auto; }

figure {
  margin: 0;
  padding: 0; }

ul {
  list-style: none;
  padding: 0;
  margin: 0; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-style: normal;
  margin: 0; }

.h00 {
  font-size: 235px;
  line-height: 1;
  text-transform: uppercase;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: black;
  font-weight: normal;
  font-style: normal;
  font-family: 'Manrope-Caps'; }
  @media (max-width: 1800px) {
    .h00 {
      font-size: 205px; } }
  @media (max-width: 1600px) {
    .h00 {
      font-size: 175px; } }
  @media (max-width: 1440px) {
    .h00 {
      font-size: 150px; } }
  @media (max-width: 1160px) {
    .h00 {
      font-size: 130px; } }
  @media (max-width: 1024px) {
    .h00 {
      font-size: 110px; } }
  @media (max-width: 960px) {
    .h00 {
      font-size: 80px; } }
  @media (max-width: 660px) {
    .h00 {
      font-size: 50px;
      line-height: 55px; } }
  @media (max-width: 375px) {
    .h00 {
      font-size: 40px;
      line-height: 45px; } }

.h01 {
  font-size: 190px;
  line-height: 1;
  text-transform: uppercase;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: black;
  font-weight: normal;
  font-style: normal;
  font-family: 'Manrope-Caps'; }
  @media (max-width: 1440px) {
    .h01 {
      font-size: 170px; } }
  @media (max-width: 1160px) {
    .h01 {
      font-size: 100px; } }
  @media (max-width: 960px) {
    .h01 {
      font-size: 80px; } }
  @media (max-width: 660px) {
    .h01 {
      font-size: 50px;
      line-height: 55px; } }
  @media (max-width: 375px) {
    .h01 {
      font-size: 40px;
      line-height: 45px; } }

.h02 {
  font-size: 190px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase; }
  @media (max-width: 1160px) {
    .h02 {
      font-size: 140px; } }
  @media (max-width: 960px) {
    .h02 {
      font-size: 90px; } }
  @media (max-width: 660px) {
    .h02 {
      font-size: 55px;
      line-height: 60px; } }

.h03 {
  font-size: 100px;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: black; }
  @media (max-width: 1160px) {
    .h03 {
      font-size: 90px; } }
  @media (max-width: 960px) {
    .h03 {
      font-size: 60px; } }
  @media (max-width: 660px) {
    .h03 {
      font-size: 50px;
      line-height: 55px; } }

h1, .h1 {
  font-size: 100px;
  font-weight: 600;
  line-height: 1; }
  @media (max-width: 1360px) {
    h1, .h1 {
      font-size: 70px; } }
  @media (max-width: 960px) {
    h1, .h1 {
      font-size: 40px;
      line-height: 45px; } }
  @media (max-width: 660px) {
    h1, .h1 {
      font-size: 30px;
      line-height: 35px; } }

h2, .h2 {
  font-size: 55px;
  font-weight: 600;
  line-height: 60px; }
  @media (max-width: 1160px) {
    h2, .h2 {
      font-size: 45px;
      line-height: 50px; } }
  @media (max-width: 960px) {
    h2, .h2 {
      font-size: 40px;
      line-height: 45px; } }
  @media (max-width: 660px) {
    h2, .h2 {
      font-size: 30px;
      line-height: 35px; } }

h3, .h3 {
  font-size: 50px;
  font-weight: 600;
  line-height: 55px; }
  @media (max-width: 1160px) {
    h3, .h3 {
      font-size: 40px;
      line-height: 45px; } }
  @media (max-width: 960px) {
    h3, .h3 {
      font-size: 35px;
      line-height: 40px; } }
  @media (max-width: 660px) {
    h3, .h3 {
      font-size: 25px;
      line-height: 30px; } }

h4, .h4 {
  font-size: 40px;
  font-weight: 600;
  line-height: 45px; }
  @media (max-width: 1160px) {
    h4, .h4 {
      font-size: 35px;
      line-height: 40px; } }
  @media (max-width: 960px) {
    h4, .h4 {
      font-size: 30px;
      line-height: 35px; } }
  @media (max-width: 660px) {
    h4, .h4 {
      font-size: 20px;
      line-height: 25px; } }

h5, .h5 {
  font-size: 30px;
  font-weight: 600;
  line-height: 35px; }
  @media (max-width: 1160px) {
    h5, .h5 {
      font-size: 25px;
      line-height: 30px; } }
  @media (max-width: 660px) {
    h5, .h5 {
      font-size: 20px;
      line-height: 25px; } }

h6, .h6 {
  font-size: 24px;
  font-weight: 400;
  line-height: 30px; }
  @media (max-width: 960px) {
    h6, .h6 {
      font-size: 22px;
      line-height: 28px; } }
  @media (max-width: 660px) {
    h6, .h6 {
      font-size: 20px;
      line-height: 26px; } }

.h7 {
  font-size: 22px;
  font-weight: 500;
  line-height: 30px; }
  @media (max-width: 960px) {
    .h7 {
      font-size: 20px;
      line-height: 28px; } }
  @media (max-width: 660px) {
    .h7 {
      font-size: 18px;
      line-height: 26px; } }

.h8 {
  font-size: 18px;
  font-weight: 500;
  line-height: 22px; }
  @media (max-width: 660px) {
    .h8 {
      font-size: 16px;
      line-height: 20px; } }

.h9 {
  font-size: 16px;
  line-height: 20px;
  font-weight: 800;
  text-transform: uppercase; }
  @media (max-width: 660px) {
    .h9 {
      font-size: 14px;
      line-height: 18px; } }

.h10 {
  font-size: 12px;
  font-weight: 800;
  line-height: 14px;
  text-transform: uppercase; }

p {
  margin: 0 0 20px 0; }
  p:last-of-type {
    margin: 0 !important; }

b, strong, .strong {
  font-weight: 500;
  font-style: normal; }

*/
