/*html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}*/

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

/*body {
  margin-bottom: 60px;
}*/

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

html {min-height: 100%;height:100%;scroll-behavior: smooth;}
body {margin:0;font-family: "Montserrat", sans-serif;min-height: 100%;height:100%;font-size:1em;color:#1b3d2d;font-weight:500}

* {box-sizing: border-box;}

@font-face {
    font-family: 'font-awesome';
    src: url('../fonts/fontawesome/webfonts/fa-solid-900.eot');
    src: url('../fonts/fontawesome/webfonts/fa-solid-900.eot?#iefix') format('embedded-opentype'), url('../fonts/fontawesome/webfonts/fa-solid-900.woff') format('woff'), url('../fonts/fontawesome/webfonts/fa-solid-900.ttf') format('truetype'), url('../fonts/fontawesome/webfonts/fa-solid-900.svg#fontawesome-webfont') format('svg');
    font-weight: normal;
    font-style: normal;
}

h1 {font-family: "Montserrat", sans-serif;color:#faa36f;font-size:3.8em;line-height:1em;margin:20px 0 30px 0;font-weight:600}
h2 {color:#faa36f;font-size:1.5em;margin-bottom:20px;font-weight:600}
p  {line-height:1.6em;margin-bottom:20px}
button,
.btn {background-color:#47c686;color:#1b3d2d;}
button:hover,
.btn:hover {background-color:#faa36f;color:#1b3d2d;}
button {border:0;border-radius:8px;padding:6px 18px;}
input[type=text],
input[type=email],
input[type=password] {border:1px solid #47c686;border-radius:8px;padding:6px 12px;}
input[placeholder] {font-style:italic;}
.ttl {display:block;/*font-weight:1.4em;*/font-weight:700;line-height:1.1em;margin:0 0 8px 0;}
.block-ttl {color:#47c686;display:block;font-weight:800;font-size:2em;line-height:1.1em;min-height:70px;display: grid; align-items: end;margin:0 0 20px 0}
.block-ttl span {display:block;color:#1b3d2d;font-weight:500;font-size:0.5em;line-height:1em;}
.light-color {color:#d8ceba;}
a:hover {color:#93c021;}
.fs-mungo-lrg {font-size:1.2rem;font-weight:500}
.light-green {color:#8dc63f}
main p strong {font-weight:700}

.border-mungo {border-radius:16px;}

HR {margin:100px auto;color:#faa36f;background-color:#faa36f;opacity:1;width:50%;min-width:200px;}

main {overflow:hidden;}

.backToTop {display:block;margin:0;transition:2s;background-color:rgba(216,206,186,0.5);position:fixed;height:50px;width:50px;right:20px;bottom:20px;padding:0;text-align:center;transition:2s;opacity:0}
.backToTop:after {content:"";background-image:url(../images/site/arrow_up.svg);background-size:cover;background-position:center bottom; background-repeat:no-repeat;display:block;transition:2s;margin:0 auto;height:40px;width:40px}
.backToTop:hover {background-color:#d8ceba;transition:2s;}
.backToTop:hover:after {background-image:url(../images/site/arrow_up_hover.svg);}

header,
.mainMenu,
.introd {background: #EAE5E1;}

.mainMenu nav {display:flex;flex-direction:row;align-items:center;align-content:stretch;}
.mainMenu nav .collapse {justify-content:space-between;}
.mainMenu nav .brand {margin:0 40px 0}
.mainMenu nav .brand img {width:180px}
.mainMenu nav ul {list-style:none;margin:0;padding:0;display:flex;justify-content:space-between;font-weight:500;font-size:0.9em;width:38%;}
.mainMenu nav ul li {display:inline-block;padding:0;}
.mainMenu nav ul li a:hover {color:#93c021}
.mainMenu .mobileBrand {display:none;}

header a {text-decoration:none;color:#1b3d2d;}
.mainMenu .off {color:#d8ceba}
.mainMenu .on {color:#ff7300}

.topBanner {background: #EAE5E1;
background: linear-gradient(180deg,rgba(234, 229, 225, 1) 0%, rgba(234, 229, 225, 1) 50%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 100%);}

.lng a.off {color:#1b3d2d}
.lng a.off:hover {color:#ff7300}

header aside {text-align:right;font-size:0.8em;display:flex;justify-content:flex-end;align-items:center;}
header aside input[type=text] {border:1px solid #1b3d2d;font-size:0.7em;display:none;}
header aside input[type=text] + .btn {display:none;}
header aside input[type=text],
header aside .btn {border-radius:8px;padding:2px 6px;vertical-align:middle;font-size:1em;font-weight:500;display:inline-block;}
header aside .btn i {font-size:0.9em}
header aside .btn.show {border:none;background-color:#47c686;color:#1b3d2d;}
header aside .btn:focus {background-color:#faa36f}
header aside .dropdown-menu {border:none;background-color:#47c686;color:#1b3d2d;font-size:1em;}
header aside HR {background-color:#1b3d2d;}
header aside .dropdown-menu .dropdown-item:hover {background-color:rgba(255,255,255,0.2)}

.p-max,
header div.container p {max-width:85%;margin-left:auto;margin-right:auto}

.mainBanner {border-radius:16px;position:relative;}
.mainBanner img {width:100%;border-radius:4px;}
.mainBanner .caption {position:absolute;color:#fff;font-size:2.5em;padding:50px;text-align:center;bottom:35%;text-shadow: 2px 2px 5px #333;display:none;}

/*areas*/
.blocks {gap:20px;}
.blocks div {background-color:#d8ceba;border-radius:16px;}

.blocks-img {/*gap:20px;*/max-width:1200px;margin:0 auto;}
.blocks-img div {color:#fff;font-weight:800;font-size:1.5em;border-radius:16px;position:relative;overflow:hidden;min-height:180px;background-repeat:no-repeat;background-position:center center; background-size:cover;margin:0 1% 20px 1%}
.blocks-img div:after {content:"";position:absolute;top:0;right:0;left:0;bottom:0;background: #214221;background: linear-gradient(180deg,rgba(26, 43, 26, 0.9) 0%, rgba(213, 230, 177, 0) 100%);z-index:1}
.blocks-img div p {z-index:2;position:sticky;line-height:1.1em;}
.blocks-img .col {width:30%}

/*horizontal accordion*/
.horizontal-accordion {border-radius:8px;overflow:hidden;}
.horizontal-accordion .card {background-size:cover;background-position:center;position:relative;
  flex: 1;
  transition: flex 0.4s ease;
  overflow: hidden;
  cursor: pointer;
  min-height:260px;
  border-radius:0;
  color:#fff;
  border:none;
  border-right:4px solid #fff;
}
.horizontal-accordion .card:last-of-type {border-right:0;}

.horizontal-accordion .card.active {
  flex: 5;
}

.horizontal-accordion .card:after {content:"";position:absolute;top:0;left:0;right:0;left:0;background-color:rgba(0,0,255,0.3);z-index:8}

.horizontal-accordion .card-body {font-size:0.8em;width:640px;transition:none;}
.horizontal-accordion .card-header {min-width:230px;min-height:70px;}

.horizontal-accordion .card.active .card-header {background-color:rgba(0,0,0,0.6);transition:2s}

.horizontal-accordion .card .collapse {height:100%;background-color:rgba(0,0,0,0.6);transition:2s}

/* Mobile */
@media (max-width: 1200px) /*used to be 767.98px */ {
  .horizontal-accordion {
    flex-direction: column;
  }

  .horizontal-accordion .card {
    flex: none;
    width: 100%;
  }

  .horizontal-accordion .card.active {
    flex: none;
  }
}

/*list*/
.plus-list {list-style:none;margin:12px 0 30px 12px;padding:0}
.plus-list li {padding:0 0 0 20px;margin:0;position:relative;}
.plus-list li:before {content:"+";color:#d8ceba;display:inline-block;font-size:1.2em;margin:0;position:absolute;top:4px;left:0;line-height:0.8em;}
.plus-list.orange li {font-weight:600}
.plus-list.orange li:before {color:#faa36f;}

@keyframes navslide {
  from {
    transform: translate3d(0, -58px, 0);
    -webkit-transform: translate3d(0, -58px, 0);
    opacity: 0;
  }
  to {
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

/*private*/
body.private {background-color:#eae5e1;}
body.private header {background:none;}
body.private header aside {/*text-align:center;*/font-size:1.1em; /*display: grid;grid-template-columns: 1fr auto 1fr; align-items: center;*/display:flex;justify-content:space-between;}
body.private header aside .btn {margin-right:0;margin-left:auto;color:#1b3d2d;font-size:0.9em;}
body.private header aside .btn-outline-secondary {background-color:rgba(216,206,186,0.5);border:1px solid #d8ceba}
body.private header aside .btn-outline-secondary:hover {background-color:#faa36f;border:1px solid #faa36f}
body.private header aside .lng {justify-self: end;}
body.private header aside div {width:40%;order:3}
body.private header aside div:first-of-type {order:1}
body.private header aside span {order:2}
body.private header .brand {margin-bottom:30px;display:inline-block;}
body.private header .brand img {width:400px;}
body.private main input[type=text],
body.private main input[type=password] {display:block;margin:0 auto 0 auto;}
body.private p {font-weight:400}
body.private .containerIntrod {max-width:800px;}
body.private .dropdown-item {font-size:0.8em;font-weight:400}


/*validators*/
.validation-summary-errors {background-color:#FAD76F;padding:8px;margin:12px 0;border-radius:12px;border:1px solid #E3B11A;position:relative;text-align:left}
.validation-summary-errors ul {margin:10px 0}
.validation-summary-errors ul li {margin:0;padding:0}
.validation-summary-errors:after {content: "\f071";font-family: 'font-awesome';position:absolute;top:5px;right:8px;font-size:2em;}
.field-validation-error  {padding:6px;display:block;text-align:left}

.tabbedBrowsing  {}
.tabbedBrowsing .tab-pane {background-color:#fff;border-radius:0 0 12px 12px;padding:20px 16px 16px 16px;position:sticky;z-index:100;min-height:200px;}
.tabbedBrowsing .nav-tabs {margin:0 0;text-align:center;justify-content:center;position:relative;border:none}
.tabbedBrowsing .nav-tabs:after {content:"";min-height:16px;width:100%;background-color:#fff;display:block;position:absolute;left:0;z-index:1;right:0;top:auto;bottom:0;border-radius:12px 12px 0 0 ;}
.tabbedBrowsing .nav-item {margin:0 0 16px 0;display:inline-block;}
.tabbedBrowsing .nav-item .nav-link {margin:0 12px 0;z-index:99;padding:0;border:none;display:block;position:sticky;z-index:100;}
.tabbedBrowsing .nav-item .nav-link span {background-color:#faa36f;color:#1b3d2d;display:block;padding:8px 16px;margin:0 2px;border-radius:12px 12px 0 0;position:sticky;z-index:99;}
.tabbedBrowsing .nav-item .nav-link.active {background-color:transparent;border:none;}
.tabbedBrowsing .nav-item .nav-link.active span {background-color:#fff;z-index:99;border-radius:12px 12px 0 0;}
.tabbedBrowsing .nav-item .nav-link:hover span {z-index:99;background-color:#d8ceba}
.tabbedBrowsing .nav-item.active:after{content:"";min-height:180px;width:100%;background-color:#fff;display:block;position:absolute;left:0;z-index:1;right:0;border-radius:12px 12px 0 0; }/**/

.simulateTab {}
.simulateTabList  {display:flex;list-style:none;flex-wrap:wrap;justify-content:center;margin:0;padding:0;}
.simulateTabList li {margin:16px 0 0 0;display:inline-block;}
.simulateTabList li a {margin:0 12px;z-index:99;padding:8px 16px;border:none;display:block;position:sticky;z-index:100;text-decoration:none;background-color:#faa36f;color:#1b3d2d;border-radius:12px 12px 0 0;}
.simulateTabList li.active {}
.simulateTabList li.active a {background-color:#fff;border:none;}
.simulateTabList li a:hover {background-color:#d8ceba}
.simulateTabList li.active:after{content:"";min-height:180px;width:100%;background-color:#fff;display:block;position:absolute;left:0;z-index:1;right:0;border-radius:12px 12px 0 0; }
.simulateTabContent {background-color:#fff;border-radius:12px;padding:20px;position:sticky;z-index:100;min-height:200px;}
.simulateTabList.noTabs a {border-radius:12px}
.simulateTabList.noTabs li.active:after{display:none;}
.simulateTab h1 {font-size:1.8em;color:#1b3d2d;margin:0 0 20px 0;padding:0}

/**/.form-floating .form-control::placeholder {color:transparent;}
.form-floating .form-control:focus::placeholder {display:block;color:#1b3d2d}

footer {padding-top:50px;background:url(../images/site/deco.svg) center top no-repeat;}


@media only screen and (min-width: 100px) and (max-width: 1630px) {
	
	
	
}


@media only screen and (min-width: 1201px) and (max-width: 1400px) {
	
	header {/*border:1px solid aqua;*/}
	
	.mainMenu nav ul {width:39%;}
	.mainMenu nav .brand {margin:0 20px;}
	.mainMenu nav .brand img {width:180px;}
	
	.horizontal-accordion .card {min-height:270px;}
	.horizontal-accordion .card-body {width:550px;}
	.horizontal-accordion .card-header {width:100%;min-width:185px;min-height:70px;}
}

@media only screen and (min-width: 993px) and (max-width: 1200px) {
			
	header {/*border:1px solid lime;*/}
		
	h1 {font-size:3em;}
		
	.mainMenu nav ul {width:39%;}
	.mainMenu nav .brand {margin:0 8px;}
	.mainMenu nav .brand img {width:180px;}
	.mainMenu nav ul li {text-align:center;max-width:130px}
	
	.mainMenu nav ul {padding-right:20px;font-size:0.8em;}
	.mainMenu nav ul:last-of-type {padding-left:20px;}
		
	/*horizontal accordion
	.horizontal-accordion .card {min-height:320px;}
	.horizontal-accordion .card-body {width:460px;}
	.horizontal-accordion .card-header {width:100%;min-width:160px;min-height:0;font-size:0.9em}*/
	
	
	.horizontal-accordion .card {min-height:0; border-right:0; border-bottom:4px solid #fff;}	
	.horizontal-accordion .card-body {min-width:100%;width:100%;}
	.horizontal-accordion .card-header {min-width:100%;min-height:0}
		
	.simulateTabList li a {padding:8px 10px;font-size:0.9em;margin:0 6px;}
	
}

@media only screen and (min-width: 769px) and (max-width: 992px) {	
		
	header {/*border:1px solid pink;*/}
	
	h1 {font-size:3em;}
	
	.mainBanner .caption {font-size:1.5em;bottom:25%;}

	.mainMenu .mobileBrand {display:flex;width:100%;align-items:center;justify-content:space-between;position:relative;}
	.mainMenu .desktopBrand {display:none;}
	
	.mainMenu nav {flex-direction:column;align-items:stretch;align-content:stretch;justify-content:flex-start;}
	.mainMenu nav .brand {margin:0 auto}
	.mainMenu nav .navbar-toggler {position:absolute;right:0}
	.mainMenu nav ul {display:flex;justify-content:space-between;flex-direction:column;width:100%}
	.mainMenu nav ul li {display:block;padding:0;padding:1em;margin:0;border-bottom:1px solid #fff}
	
	.blocks-img {flex-direction:column}
	.blocks-img .col {width:90% !important;margin:0 auto 20px auto}
	
	.p-max,
	header div.container p {max-width:100%}
	
	HR {margin:80px auto;}
	
	/*horizontal accordion
	.horizontal-accordion .card {min-height:410px;}
	.horizontal-accordion .card-body {width:340px;}
	.horizontal-accordion .card-header {min-width:100%;min-height:0;}*/
		
	.horizontal-accordion .card {min-height:0; border-right:0; border-bottom:4px solid #fff;}	
	.horizontal-accordion .card-body {min-width:100%;width:100%;}
	.horizontal-accordion .card-header {min-width:100%;min-height:0}

	.simulateTab .navbar-toggler {background-color:#faa36f;margin-left:auto;}
	.simulateTabList {align-items:center}
	.simulateTabList li a {max-width:200px;height:100%;text-align:center;}
	.simulateTabList li a {margin:0 6px;z-index:99;padding:8px 10px;display:block;position:static;border-radius:12px;font-size:0.9em;}
	.simulateTabList li.active:after{display:none;}
	.simulateTabContent {position:static;z-index:100;}
	

}

@media only screen and (min-width: 577px) and (max-width: 768px) {
			
	header {/*border:1px solid red;*/}
	
	h1 {font-size:3em;}
	
	.mainBanner .caption {font-size:1.5em;bottom:15%;}

	.mainMenu .mobileBrand {display:flex;width:100%;align-items:center;justify-content:space-between;position:relative;}
	.mainMenu .desktopBrand {display:none;}
	
	.mainMenu nav {flex-direction:column;align-items:stretch;align-content:stretch;justify-content:flex-start}
	.mainMenu nav .brand {margin:0 auto}
	.mainMenu nav .navbar-toggler {position:absolute;right:0}
	.mainMenu nav ul {display:flex;justify-content:space-between;flex-direction:column;width:100%}
	.mainMenu nav ul li {display:block;padding:0;padding:1em;margin:0;border-bottom:1px solid #fff}
	
	.p-max,
	header div.container p {max-width:100%}
		
	HR {margin:60px auto;}
	
	.block-ttl {font-size:2em;}
	
	.blocks-img {flex-direction:column}
	.blocks-img .col {width:90% !important;margin:0 auto 20px auto}
		
	/*horizontal accordion*/
	.horizontal-accordion .card {min-height:0; border-right:0; border-bottom:4px solid #fff;}	
	.horizontal-accordion .card-body {min-width:100%;width:100%}
	.horizontal-accordion .card-header {min-width:100%;min-height:0;}
		
	body.private header .brand img {width:320px;}

	.simulateTab .navbar-toggler {background-color:#faa36f;margin-left:auto;}
	.simulateTabList {align-items:center}
	.simulateTabList li a {max-width:200px;height:100%;text-align:center;}
	.simulateTabList li a {margin:0 6px;z-index:99;padding:8px 10px;display:block;position:static;border-radius:12px;font-size:0.9em;}
	.simulateTabList li.active:after{display:none;}
	.simulateTabContent {position:static;z-index:100;}

}

@media only screen and (min-width: 100px) and (max-width: 576px) {	
	
	header {/*border:1px solid purple;*/}
	
	header{background: #EAE5E1;}

	.mainBanner .caption {font-size:1.3em;bottom:14%;padding:30px;}
	
	.mainMenu .mobileBrand {display:flex;width:100%;align-items:center;justify-content:space-between;position:relative;}
	.mainMenu .desktopBrand {display:none;}

	header aside {font-size:0.8em;}
	header aside input[type=text] {max-width:50%;}
	header aside input[type=text],
	header aside .btn {padding:4px 8px;}
	header aside .btn i {font-size:1em}
	header aside .btn span {display:none;}
	
	.mainMenu nav {flex-direction:column;align-items:stretch;align-content:stretch;justify-content:flex-start}
	.mainMenu nav .brand {margin:0 auto}
	.mainMenu nav .brand img {width:160px}
	.mainMenu nav .navbar-toggler {position:absolute;right:0}
	.mainMenu nav ul {flex-grow:1;display:flex;justify-content:space-between;flex-direction:column;width:100%}
	.mainMenu nav ul li {display:block;padding:0;padding:1em;margin:0;border-bottom:1px solid #fff}
	
	.p-max,
	header div.container p {max-width:100%}
			
	HR {margin:60px auto;}
	
	h1 {font-size:2.5em;}
	h2 {font-size:1.6em;margin-bottom:10px}
	.block-ttl {font-size:2em;}
		
	.blocks-img {flex-direction:column}
	.blocks-img .col {width:100% !important;margin:0 auto 20px auto}
	
	/*horizontal accordion*/
	.horizontal-accordion .card {min-height:0; border-right:0; border-bottom:4px solid #fff;}
	
	.horizontal-accordion .card-body {min-width:100%;width:100%;}
	.horizontal-accordion .card-header {min-width:100%;min-height:0}
		
	body.private header .brand img {width:70%;}
	body.private header aside {display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 8px;}

	body.private header aside span {grid-column: span 2 / span 2;display:block;display:block;width:100%;text-align:center;margin:0 !important}
	body.private header aside div {grid-row-start: 2;}
	/*body.private header aside span {order:1;}*/
	body.private header aside div {width:auto;margin-left:auto;margin-right:0;}
	body.private header aside div:first-of-type {margin-right:auto;margin-left:0;}
	
	.simulateTab .navbar-toggler {background-color:#faa36f;margin-left:auto;}
	.simulateTabList {align-items:center}
	.simulateTabList li a {max-width:200px;height:100%;text-align:center;}
	.simulateTabList li a {margin:0 6px;z-index:99;padding:8px 10px;display:block;position:static;border-radius:12px;font-size:0.9em;}
	.simulateTabList li.active:after{display:none;}
	.simulateTabContent {position:static;z-index:100;}
		
}
