:root {
	--green:#006540;
	--green-light:#6e9e7c;
	--green-very-light: #cce4c3;
	--green-ultra-light:#f5f7df;
	--green-secondary:#8FDA9B;
	--primary-dark: #014642;
	--secondary:#6E9E7C;
	--secondary-light: #8fda9b;
	--yellow:#cedc61;
	--neutral-light: #f0f0f0;
	--neutral-medium:#cccccc;
	--neutral-dark: #39454A;
	--neutral-mid-light:#E2ECE5;
	--bs-heading-color:#383838;
	
	--bs-pagination-active-color:#014642;
	--bs-pagination-active-bg:#014642;
	--bs-pagination-active-border-color:#014642;
	--bs-link-color-rgb:#014642;
}

@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 3rem;
  }
}

@media (min-width: 1200px) {
	h3, .h3 {
	  font-size: 2.5rem;
	}
}

/*@media (min-width: 1200px) {*/
	h4, .h4 {
	  font-size: 1.8rem;
	}
/*}*/

img, svg {
  max-width: 100%;
  height: auto;
}
.img-white {
	filter: grayscale(1) brightness(100) !important;
}

sub {
  bottom: -0.12em;
}
.v-align-sub {
	vertical-align: sub;
}

u {
	text-decoration: none;
	border-bottom: 2px solid;
  border-image: linear-gradient(to right, rgba(0, 0, 0, 0), --primary-dark) 1;
  padding-bottom: 4px;
  list-style: none;
}
.text-white u {
	border-image: linear-gradient(to right, rgba(0, 0, 0, 0), white) 1;
}

@media screen and (max-width: 576px) {

	.small-xs {
		font-size: 80%;
	}

}

.btn, .node-preview-container .node-preview-backlink, a.button, .button, button.link {
  --bs-btn-padding-y: 0.8rem;
}


nav.pager {
	filter: grayscale(1);
}

.text-transparent {
	color: transparent;
}
.text-green, .text-green > h3 { color:var(--green) !important; }
.bg-green { background-color:var(--green) !important; }
.border-green { border-color:var(--green) !important; }
.border-green-secondary { border-color:var(--green-secondary) !important; }
.text-green-light { color:var(--green-light) !important; }
.text-secondary-light { color:var(--secondary-light) !important; }
.text-secondary-dark { color:var(--secondary-dark) !important; }
.bg-primary-dark { background-color:var(--primary-dark) !important; }
.bg-secondary { background-color:var(--secondary) !important; }
.bg-neutral-light { background-color:var(--neutral-light) !important; }
.bg-neutral-mid-light { background-color:var(--neutral-mid-light) !important; }
.bg-neutral-medium { background-color:var(--neutral-medium) !important; }
.bg-green-secondary { background-color:var(--green-secondary) !important; }
.bg-green-light { background-color:var(--green-light) !important; }
.bg-green-very-light { background-color:var(--green-very-light) !important; }
.bg-green-ultra-light { background-color:var(--green-ultra-light) !important; }
.border-green-light { border-color:var(--green-light) !important; }
.text-yellow { color:var(--yellow) !important; }
.text-neutral-dark { color:var(--neutral-dark) !important; }
.text-i-yellow i, .text-i-yellow em { color: var(--secondary-light); }
.bg-yellow { background-color:var(--yellow) !important; }
.bg-f0f0f0 { background-color: #f0f0f0; }
.bg-196e4e { background-color: #196e4e; }
.bg-cedc61 { background-color: #cedc61; }
.bg-014643 { background-color: #014643; }
.bg-5a7e62 { background-color: #5a7e62; }
.bg-ccc { background-color: #ccc; }
.bg-ececec { background-color: #ececec; }
.bg-black-light { background-color: #37464a; }
.border-4c8e73 { border-color: #4c8e73; }

.text-white > h1,
.text-white > h2,
.text-white > h3,
.text-white > h4 {
	color: white !important;
}
.text-white.bg-green-light,
.text-white.bg-014643 {
	/*text-shadow: 0 0 10px black;*/
}

.text-white img {
	filter: brightness(100);
}

body {
	color: var(--neutral-dark);
}
.text-primary-dark,
.text-primary-dark > h1,
.text-primary-dark > h2,
.text-primary-dark > h3,
.text-primary-dark > h4 {
	color: var(--primary-dark) !important;
}
.text-green-secondary,
.text-green-secondary > h1,
.text-green-secondary > h2,
.text-green-secondary > h3,
.text-green-secondary > h4 {
	color: var(--green-secondary) !important;
}
.text-secondary,
.text-secondary > h1,
.text-secondary > h2,
.text-secondary > h3,
.text-secondary > h4 {
	color: var(--secondary) !important;
}

.text-green-light > h1,
.text-green-light > h2,
.text-green-light > h3 {
	color: var(--green-light) !important;
}

.img-max {
	max-width: 100%;
	height: auto;
}
.rounded-30 {
	border-radius: 30px;
}
.rounded-left {
	border-top-left-radius: 30px !important;
  border-bottom-left-radius: 30px !important;
}
.rounded-top-30 {
	border-radius: 30px 30px 0 0;
}
.rounded-bottom-30 {
	border-radius: 0 0 30px 30px;
}

.bg-image {
	position: absolute !important;
	height: 100%;
	width: auto;
	max-width: 100%;
	top: 0;
	left: 0;
	border-radius: 30px;
}
	
a {
	text-decoration: none;
	color: inherit;
}
a:hover {
  color: var(--primary);
}

a.fill:after {
	content: '';
	display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


@font-face {
  font-family: 'nunito-sans';
  src: url('/sites/default/files/theme/font/nunito-sans/NunitoSans-VariableFont_YTLC,opsz,wdth,wght.ttf');
}
@font-face {
  font-family: 'dm-serif-display';
  src: url('/sites/default/files/theme/font/dm-serif-display/DMSerifDisplay-Regular.ttf');
}
* {
	font-family: 'nunito-sans';
}
h1,h2,h3,h4,h5, h1 *, h2 *, h3 *, h4 *, h5 *
/*.region-sidebar-first h5,h4,h5,h6,h4 *,h5 *,h6 * */ {
	font-family: 'dm-serif-display';
}


.fs-25rem {
	font-size: 2.5rem;
}
.fs-22 {
	font-size: 22px;
}
.fs-32 {
	font-size: 32px;
}
.fs-40 {
	font-size: 40px;
}
.fs-56,
.fs-56 > h1 {
	font-size: 56px;
}
.fs-60,
.fs-60 > h1 {
	font-size: 60px;
}
.fs-70,
.fs-70 > h1 {
	font-size: 70px;
	line-height: 1;
}
.fs-80 {
	font-size: 80px;
}
.fs-100 {
	font-size: 100px;
}

.big {
	font-size: 120%;
}

ul.menu {
	list-style: none;
}

.clearfix {
	clear: both;
}


.region-header {
	padding: 2rem 3rem;
}
.region-sidebar-first, .region-sidebar-second, .region-footer, .region-content {
    padding: 0;
}
.region-sidebar-first {
  padding-bottom: 80px;
}
.region-sidebar-first .menu--temp-menu .navbar-nav .nav-link.is-active {
  visibility: hidden;
}
.region-sidebar-first .dropdown-toggle::after {
	display: none;
}

.mt-160 {
	margin-top: 160px;
}
.mb-160 {
	margin-bottom: 160px;
}
.mt-120 {
	margin-top: 120px !important;
}
.my-80 {
	margin-top: 80px;
	margin-bottom: 80px;
}
.mt-96 {
	margin-top: 96px;
}
.mt-80 {
	margin-top: 80px !important;
}
.mb-80 {
	margin-bottom: 80px;
}
.mbi-80 {
	margin-bottom: 80px !important;
}
.mt-64 {
	margin-top: 64px;
}
.mb-64 {
	margin-bottom: 64px;
}
.mt-48 {
	margin-top: 48px;
}
.mb-48 {
	margin-bottom: 48px;
}
.ml-48 {
	margin-left: 48px;
}
.mr-48 {
	margin-right: 48px;
}
.mr-32 {
	margin-right: 32px;
}
.my-24 {
	margin-top: 24px;
	margin-bottom: 24px;
}
.mx-24 {
	margin-left: 24px;
	margin-right: 24px;
}
.mr-24 {
	margin-right: 24px;
}
.ml-24 {
	margin-left: 24px;
}
.mb-24 {
	margin-bottom: 24px !important;
}
.mt-24 {
	margin-top: 24px;
}
.mt-16 {
	margin-top: 16px;
}
.mt--16 {
	margin-top: -16px;
}
.mb--10 {
	margin-bottom: -6rem;
}
.mb-16 {
	margin-bottom: 16px;
}
.mb-32 {
	margin-bottom: 32px !important;
}
.mx-12 {
	margin-left: 12px;
	margin-right: 12px;
}
.my-12 {
	margin-top: 12px;
	margin-bottom: 12px;
}
.mt-32 {
	margin-top: 32px;
}
.my-32 {
	margin-top: 32px !important;
	margin-bottom: 32px !important;
}
.mt--32 {
	margin-top: -32px !important;
}
.pt-30-100 {
	padding-top: 30%;
}
.pt-16 {
	padding-top: 16px;
}
.p-24 {
	padding: 24px;
}
.pl-24 {
	padding-left: 24px;
}
.pr-24 {
	padding-right: 24px;
}
.pt-32 {
	padding-top: 32px;
}
.pt-48 {
	padding-top: 48px;
}
.pb-48 {
	padding-bottom: 48px;
}
.pt-60 {
	padding-top: 60px;
}
.p-80 {
	padding: 80px;
}
.py-80 {
	padding-top: 80px;
	padding-bottom: 80px;
}
.py-24 {
	padding-top: 24px;
	padding-bottom: 24px;
}
.pt-120 {
	padding-top: 120px;
}
.pt-160 {
	padding-top: 160px;
}
.pb-160 {
	padding-bottom: 160px;
}
.py-160 {
	padding-top: 160px;
	padding-bottom: 160px;
}


.max-w-224 {
	max-width: 224px;
}
.max-w-800 {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.min-h-640,
.min-h-640 img {
	min-height: 640px;
}
.mw-360 {
	max-width: 360px;
	margin-left: auto;
	margin-right: auto;
}
.mw-872 {
	max-width: 872px;
	margin-left: auto;
	margin-right: auto;
}

.br-16 {
	border-radius: 16px;
	overflow: hidden;
}

.ml-64{	margin-left: 64px;}
.mr-64{	margin-right:64px;}

.ml-136{	margin-left: 136px;}
.mr-136{	margin-right:136px;}

.ml-112{	margin-left: 112px;}
.mr-112{	margin-right:112px;}

.ml-176{	margin-left: 176px;}
.mr-176{	margin-right:176px;}


.pl-32{	padding-left: 32px;}
.pr-32{	padding-right: 32px;}

.pl-64{	padding-left: 64px;}
.pr-64{	padding-right:64px;}

.pl-136{	padding-left: 136px;}
.pr-136{	padding-right:136px;}

.pl-112{	padding-left: 112px;}
.pr-112{	padding-right:112px;}

.pl-176{	padding-left: 176px;}
.pr-176{	padding-right:176px;}

.mt-n1 { margin-top: -8px; }
.mt-n2 { margin-top: -16px; }
.mt-n3 { margin-top: -32px; }
.mt-n4 { margin-top: -40px; }
.mt-n5 { margin-top: -48px; }
.mt-n10 { margin-top: -96px; }
.mb-n1 { margin-bottom: -8px; }
.mb-n2 { margin-bottom: -16px; }
.mb-n3 { margin-bottom: -32px; }
.mb-n4 { margin-bottom: -40px; }
.mb-n5 { margin-bottom: -48px; }
.mb-n10 { margin-bottom: -96px; }
.mb-n15 { margin-bottom: -144px; }
.mr-n1 { margin-right: -8px; }
.mr-n2 { margin-right: -16px; }
.mr-n3 { margin-right: -32px; }
.mr-n4 { margin-right: -40px; }
.mr-n5 { margin-right: -48px; }


.padding-64 {	padding-left: 64px;	padding-right:64px;}


@media (max-width:767px){
		.mt-160 {
			margin-top: 80px;
		}
		.mb-160 {
			margin-bottom: 160px;
		}
		.mt-80 {
			margin-top: 40px;
		}
		.mb-80 {
			margin-bottom:40px;
		}
		.mbi-80 {
			margin-bottom:40px !important;
		}
		.my-80 {
			margin-bottom:40px;
			margin-top: 40px;
		}
		.mt-64 {
			margin-top: 32px;
		}
		.mb-64 {
			margin-bottom: 32px;
		}
		.mt-48 {
			margin-top: 24px;
		}
		.mb-48 {
			margin-bottom: 24px;
		}
		.mt--32 {
			margin-top: -21px;
		}
		
		.mb-32 {
			margin-bottom: 16px;
		}
		
		.pt-30-100 {
			padding-top: 30%;
		}
		.p-80 {
			padding: 40px;
		}
		.py-80 {
			padding-top: 40px;
			padding-bottom: 40px;
		}
		.pt-160 {
			padding-top: 80px;
		}
		.max-w-800 {
    	width:initial;
		}

	  .padding-64 {	padding-left: inherit;	padding-right: inherit;}
	  
	  .fs-70 > h1 {
			font-size: 48px;
		}
}

.mb-n3 {
	margin-bottom: -1.5rem;
}

.h-500 {
	height: 500px;
}
.mh-380 {
	min-height: 380px;
}
.mh-70 {
	min-height: 70px;
}



@media (min-width:768px){
	 .column-count-md-3 {
	 		column-count: 3;
	 }
}

.bottom-24 {
	bottom: 24px;
}

.border-2 { border: 2px solid; }
.border-opacity-05 {
	--bs-border-opacity: .5;
}
.b-white {
	border-color: white;
}
.b-black {
	border-color: black;
}

/*.btn, .node-preview-container .node-preview-backlink, a.button, .button, button.link {
  --bs-btn-font-size: 1.1rem !important;
}*/
.btn.small, a.button.small, .button, button.link.small {
  font-size: 0.875em !important;
}
.btn.x-small, a.button.x-small, button.link.x-small {
  font-size: 0.7em !important;
}
.btn-icon-left svg {
	height: 20px;
	margin-right: 16px;
	margin-top: -6px;
}

.file {
	background: none !important;
	padding-left: 0 !important;
}

.triangle-left:before {
	content: '';
	padding-left: 24px;
	background-image: url('/sites/default/files/theme/triangle-left.svg');
  background-size: contain;
  background-position: left center;
  background-repeat: no-repeat;
}


.right-arrow,
.right-arrow-green,
.right-arrow-green-light,
.right-arrow-white {
	padding: 16px 32px;
	line-height: 1;
}
.right-arrow:after,
.right-arrow-green:after,
.right-arrow-green-light:after,
.right-arrow-white:after {
	content: '';
	position: relative;
	left: 0;
	padding-right: 24px;
	transition: 0.5s all;
	margin-right: 0;
	background-image: url('/sites/default/files/theme/freccia.svg');
  /*background-size: contain;*/
  background-position: right center;
  background-repeat: no-repeat;
  margin-left: 8px;
}
.right-arrow:hover:after,
.right-arrow-green:hover:after,
.right-arrow-green-light:hover:after,
.right-arrow-white:hover:after {
	left: 8px;
}

.right-arrow-white:after {
	background-image: url('/sites/default/files/theme/terna-link-arrow.svg');
}
.right-arrow-green:after {
	background-image: url('/sites/default/files/theme/green-arrow.svg');
}
.right-arrow-green-light:after {
	background-image: url('/sites/default/files/theme/freccia-gl.svg');
}

.right-arrow-end {
	position: relative;
}
.right-arrow-end::after {
  position: absolute;
  left: auto;
  right: 0;
  height: 100%;
}

.border-bottom-gradient {
	border-bottom: 3px solid;
	border-image: 
    linear-gradient(
      to right, 
      rgba(0, 0, 0, 0), 
      var(--green)
    ) 1 100%;
}
.border-bottom-gradient-white hr {
	border-bottom: 3px solid;
	border-image: linear-gradient(to right, rgba(0, 0, 0, 0), white) 1;
}

.ajax-progress-fullscreen {
	background-image: url('/themes/mapo/img/loading.gif');
	width: 100px;
  height: 100px;
	background-size: 100%;
	background-color: transparent;
}

#block-mapo-content table thead tr.bg-green {
  background-color: var(--green) !important;
}