@charset "utf-8";
 

/*===========================================================================================================*/
/*=========================================== GENERAL SETTINGS ==============================================*/
/*===========================================================================================================*/
body {
  margin: 0;
  padding: 0;
  font-size: 10px;
  background-color: #FFF;
  -webkit-font-smoothing: antialiased;
  color: #3a3a3a;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4em;
  font-family: "indivisible", sans-serif;
}
b, strong {
	font-weight: bold;
}
strong.stronger {
  font-weight: 900;
}
* {
  margin: 0;
  box-sizing: border-box;
}
.break-word {
  -webkit-word-wrap: break-word;
  -moz-word-wrap: break-word;
  -ms-word-wrap: break-word;
  -o-word-wrap: break-word;
  word-wrap: break-word;
}
p {
  color: var(--dark, #333);
  font-family: "Open-Sans";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px; /* 133.333% */
}
.list-unstyled {
	list-style: none;
	padding: 0;
}
.list-unstyled li {
	display: block;
	margin: 0;
}
.list-inline {
	list-style: none;
	padding: 0;
}
.list-inline li {
	display: inline-block;
	margin: 0;
}
.list-inline li:not(:last-child) {margin-right: 5px;}
ul, ol {
  margin: 0 0 0;
  padding-left: 22px;
}
ul *, ol * {
  vertical-align: top;
  /* color: var(--dark, #333); */
  font-family: 'open-sans';
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px; /* 133.333% */
}
li {}
td, th {}
a {
  text-decoration: none;
  color: rgb(117, 161, 113);
  font-family: 'open-sans';
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}
a:hover, a:focus {/* text-decoration: underline; */}
a img {
  border: none;
}
img {
  max-width: 100%;
  width: auto;
}

.fa-solid.fa-arrow-right{
  /* color: var(--white, #F9F9F9); */
  font-family: "Font Awesome 6 Pro";
  font-size: 18px;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
}

h1{
color: var(--dark, #333);
font-family: Montserrat;
font-size: 50px;
font-style: normal;
font-weight: 700;
line-height: normal;
}

.h1-eyebrown{
color: var(--dark, #333);
font-family: Montserrat;
font-size: 24px;
font-style: normal;
font-weight: 700;
line-height: normal;
}

.h1-subtitle{
  color: var(--dark, #333);
  font-family: Montserrat;
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.h1-bnn-eyebrown{
  color: #FFF;
  display: flex;
  font-family: Montserrat;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}


.bottom-bnn {width: 100%;display: grid;gap: 6px;max-width: 790px;}

 

 
.h1-bnn-eyebrown.right-line::after{
  content:"";
  flex:1;
  max-width: 460px;
  height: 2px;
  background: #FFF;
  opacity: 1;
  align-self: center;
  margin-left: 12px;
}

 
.h1-bnn-eyebrown.left-line::before{
  content:"";
  flex:1;
  max-width: 400px;
  height:2px;
  background: #FFF;
  opacity:1;
  margin-right: 9px;
  align-self: anchor-center;
}

 



.h1-bnn {
  color: #49735D;
  font-family: Montserrat;
  font-size: 71px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2em; /* 98.592% */
}

 

h2 {
 color:  #333;
font-family: Montserrat;
font-size: 40px;
font-style: normal;
font-weight: 700;
line-height: normal;
}

.h2-slim {
 color:  #333;
font-family: Montserrat;
font-size: 40px;
font-style: normal;
font-weight: 400;
line-height: normal;
}

.h2-eyebrown{
  color: var(--dark, #333);
  font-family: Montserrat;
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

h3 {
  color: rgb(117, 161, 113);
  font-family: Montserrat;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
h4 {
  color: var(--dark, #333);
  font-family: Montserrat;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

@media (max-width: 450px) {
  h1{
    font-size:45px;
  }

  h2{font-size:35px;}

h1.h1-bnn-eyebrown{
	font-size:16px;
}
}

 
 
.bg-white{
  background-color:#FFF;
}
.bg-grey{
  background-color:#F9F9F9;
}
.center {
    justify-self: anchor-center;
}

:root{
  --brand-gradient: linear-gradient(90deg, var(--blue, #12B6E1) 0%, var(--yellow, #FFE200) 100%);
}

.underline{
  position: relative;
  padding-bottom: 20px;
}

.underline::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  border-radius: 1px; /* opcional */
  background: var(--brand-linear, linear-gradient(90deg, var(--darker-green, #275444) 0%, var(--lighter-still-green, #708A81) 50%, var(--lightest-green, #75A185) 75%, var(--lighter-green, #49735D) 100%));
}

.green{
  color: #49735D;
}

.blackText{
  color:#333;
}

.white{
  color:#FFF;
}

.cream{
  background: #F8F7F3!important;
}
/*===========================================================================================================*/
/*=========================================== TOP ===========================================================*/
/*===========================================================================================================*/
.menu {
  display: block;
  position: relative;
  z-index: 11;
  top: 0;
  left: 0;
  right: 0;
  padding: 0;
  transition: all .4s ease;
  opacity: 1;
  background: #F9F9F9;
  margin: 0 auto;
}
.menu.ready {
  opacity: 1;
  animation: fadeInDown .6s both;
}
.menu.actived {
  padding: 10px 20px;
  box-shadow: 0 0 12px rgb(0 0 0 / 8%);
}
.menu.behaved {
  background-color: transparent;
  height: 94px;
  overflow: hidden;
  box-shadow: none;
  box-shadow: none!important;
  position: fixed;
}
.menu.home {
	position: absolute;
	top: 0;
	background: transparent;
}
.menu > .container {
  position: relative;
  display: flex;
  gap: 20px;
  padding: 14px 50px 20px 70px;
  align-items: start;
  justify-content: space-between;
  /* max-width: 1850px; */
}
.menu.home > .container {
	align-items: start;
}
.menu.behaved > .container {
  position: static;
}
.customize-support .menu.home {
  top: 32px;
}
.menu.actived:before {
  top: -43px;
}
.menu.actived:behaved {
  top: -200px;
}
.menu .mobile-nav {}
.menu .mobile-nav ul {
	margin: 0 0;
}
.menu .mobile-nav ul li:not(:last-child) {
	margin-right: 23px;
}
.menu > div .navigation {
  display: block;
  background: none;
  color: var(--teal, #230704);
  letter-spacing: 0px;
  font-weight: 400;
  line-height: 1em;
  text-transform: capitalize;
  position: relative;
  text-decoration: none;
  margin: 29px 0;
  float: right;
  width: 24px;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}
.menu > div .navigation:hover, .menu > div .navigation:focus {
  text-decoration: none;
}
.menu.actived > div .navigation {
 margin: 23px 0;
 margin-right: 36px;
}
.menu.behaved > div .navigation {
  color: var(--main-color, #003865);
  margin: 22px 0;
  margin-right: 0;
  top: 0;
  width: 24px;
}
.menu.behaved > div .navigation:hover {
	color: var(--main-color, #230704);
}
.menu > div a.navigation > .txt {
	position: absolute;
	right: 100%;
	top: 2px;

	margin-right: 6px;
}
.menu > div a.navigation > .txt:before {
  content: '';
  font-size: 16px;
  font-weight: 600;
  color: var(--teal, #230704);
  letter-spacing: 0;
  position: relative;
  text-transform: lowercase;
  top: -2px;
}
.menu.behaved > div a.navigation > .txt:before {color: #fff;}
.menu > div a.navigation > .bar {
  position: absolute;
  left: 0;
  width: 24px;
  height: 3px;
  border-radius: 32px;
  background-color: var(--teal, #230704);
  -webkit-transition: top .3s ease, transform .4s ease, opacity .3s ease;
  -moz-transition: top .3s ease, transform .4s ease, opacity .3s ease;
  -ms-transition: top .3s ease, transform .4s ease, opacity .3s ease;
  -o-transition: top .3s ease, transform .4s ease, opacity .3s ease;
  transition: top .3s ease, transform .4s ease, opacity .3s ease;
}
.menu.actived > div a.navigation > .bar {
  
}
.menu.behaved > div a.navigation > .bar {
  background-color: var(--teal, #230704);
  width: 17px;
}
.menu > div a.navigation > span:first-child {
  top: 0px;
}
.menu > div a.navigation > span:nth-child(2) {
  top: 8px;
}

.menu > div a.navigation > span:nth-child(3) {
  top: 16px;
}
/*
.menu > div a.navigation:hover > span:first-child {
  top: -2px;
}
.menu > div a.navigation:hover > span:nth-child(3) {
  top: 18px;
}
*/
.menu > div a.navigation.behaved > span:first-child {
  top: 7px;
  transform: rotate(135deg);
}
.menu > div a.navigation.behaved > span:nth-child(2) {
  display: none;
}
.menu > div a.navigation.behaved > span:nth-child(3) {
  top: 7px;
  transform: rotate(-135deg);
}
.menu .logo-nav {
  display: block;
  max-width: 400px;
  transition: all .3s ease;
  display: flex;
  width: 350px;
  height: auto;
  padding: 18.008px 0.016px 0px 0px;
  gap: 15.988px;
  flex-shrink: 0;
  /* aspect-ratio: 442/63; */
}
.menu .logo-nav img.logo-home {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  display: block;
}
.menu .logo-nav:hover { opacity: .9!important }

.menu .logo-nav img {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}
.menu.actived .logo-nav {
}
.menu.behaved .logo-nav {
 opacity: 0;
 width: 0;
 overflow: hidden;
 top: -50%;
}
.menu.behaved .social-nav {
  opacity: 0;
}
.menu > div {
  position: relative;
  max-width: 100%;
  padding: 30px;
}
.menu.behaved > div {
  background-color: transparent;
  border-color: transparent;
}


.menu .collapse-menu > li > ul {
  /* display: none; */
  background: #ffff;
  backdrop-filter: blur(2px);
  box-shadow: 0px 6px 10px 0px rgba(6, 28, 24, 0.15), 0px 3px 3px -5px rgba(6, 28, 24, 0.20);
  position: absolute;
  top: 100%;
  left: -8px;
  right: unset;
  z-index: 5;
  padding: 0;
  width: 250px;
  margin-top: 0!important;
  opacity: 0;
  height: 0;
  overflow: hidden;
  transition: all .3s ease;
  display: block;
  border-radius: 8px;
}
.menu .collapse-menu > li > ul:focus-within,
.menu .collapse-menu > li:hover > ul {
	padding: 7px 0;
	opacity: 1;
	margin-top: 0!important;
	height: auto;
	/* display: block!important; */
}
.menu .collapse-menu > li > ul > li {
  display: block;
  padding: 0;
  font-size: 15px;
  font-style: normal;
  line-height: normal;
  text-align: left;
  text-transform: capitalize;
  margin: 0 0!important;
}
.menu .collapse-menu > li > ul > li:hover {
	background-color: #fcfcfc
}
.menu .collapse-menu > li > ul > li a {
  display: block;
  position: relative;
  color: #275444;
  text-shadow: none;
  padding: 10px 18px!important;
  border-bottom: solid 0px transparent;
}
.menu .collapse-menu > li > ul > li a:hover {
  color: #648B55;
}
.menu .collapse-menu > li > ul > li a:focus {
  color: rgb(112, 138, 129);
  text-decoration: none;
}
.menu .collapse-menu > li > ul > li.current-menu-item a {
  color: rgb(112, 138, 129);
}
.menu .collapse-menu > li > ul > li a:before,
.menu .collapse-menu > li > ul > li a:after {
  content: '\f105';
  font-family: 'Font Awesome 6 Pro';
  position: relative;
  top: -1px;
  transition: all .3s ease;
  opacity: 0;
  font-size: .8em;
}
.menu .collapse-menu > li > ul > li a:before {
  left: 0;
  position: absolute;
  top: 14px;
}
.menu .collapse-menu > li > ul > li.current-menu-item a:before {
  opacity: 1;
  left: 6px;
}
.menu .collapse-menu > li > ul > li a:after {
  margin-left: 0;
  background: none;
  background: none!important;
}
.menu .collapse-menu > li > ul > li:not(.current-menu-item) a:not(:focus):hover:after {
  opacity: 1;
  margin-left: 4px;
  background: none;
}
.menu .collapse-menu {
	width: 100%;
	/* max-width: 710px; */
	margin: 0;
	display: flex;
	/* padding: 7px; */
	gap: 10px;
	justify-content: flex-end;
	/* justify-content: space-around; */
}
.menu .collapse-menu li {
	color: var(--main-color, #648B55);
	font-family: 'montserrat';
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
.menu .collapse-menu li:not(:last-child) {/* margin-right: 13px; */}
.menu .collapse-menu li .fal {
	margin-top: 3px;
}
.menu .collapse-menu li a {
	display: inline-block;
	position: relative;
	padding: 10px;
	color: #275444;
	font-family: Montserrat;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}
.menu .collapse-menu li.current-menu-item > a,
.menu .collapse-menu li.current-page-ancestor > a {
	color: #275444;
	background: none;
}
.menu .collapse-menu li strong {
	margin-right: 5px
}
.menu .collapse-menu li:hover a,
.menu .collapse-menu li:focus a,
.menu .collapse-menu li a:hover,
.menu .collapse-menu li a:focus {
	color: var(--teal, #275444);
	text-decoration: none;
}
.menu .collapse-menu li a:after {
  content: '';
  position: absolute;
  top: 100%;
  left: unset;
  right: 0;
  width: 0;
  height: 2px;
  background-color: transparent;
  transition: all .3s ease;
}
.menu .collapse-menu li.current-menu-item > a:after,
.menu .collapse-menu li.current-page-ancestor > a:after,
.menu .collapse-menu li:hover a:after,
.menu .collapse-menu li:focus a:after{
 left: 0;
 right: unset;
 width: 100%;
 background-color: var(--teal, #648B55);
}

.menu.home .collapse-menu > li > a {
	color: #fff;
}
.menu.home .collapse-menu > li.current-menu-item > a,
.menu.home .collapse-menu > li.current-page-ancestor > a {
	color: #fff;
}
.menu.home .collapse-menu > li:hover > a,
.menu.home .collapse-menu > li:focus > a,
.menu.home .collapse-menu > li > a:hover,
.menu.home .collapse-menu > li > a:focus {
	color: #fff;
}
.menu.home .collapse-menu > li.current-menu-item > a:after,
.menu.home .collapse-menu > li.current-page-ancestor > a:after,
.menu.home .collapse-menu > li:hover a:after,
.menu.home .collapse-menu > li:focus a:after{
 background-color: #fff;
}

.menu.home > div a.navigation:not(.behaved) > .bar {
	background-color: #fff;
}

.menu i.fa.fa-caret-down {
    color: #275444;
    font-family: "Font Awesome 6 Pro";
    font-size: 18px;
    font-style: normal;
    font-weight: 900;
    line-height: normal;
    padding-left: 5px;
}

.social-icons-header {
    display: flex;
    gap: 15px;
    color: var(--main-color, #648B55);
    font-family: "Font Awesome 6 Brands";
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.menu .menu-item-has-children {
  position: relative;
}

.menu .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
  padding: 15px;
  min-width: 220px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
  border-radius: 12px;
  display: none;
  z-index: 99;
}

.menu .menu-item-has-children:hover > .sub-menu {
  display: block;
}

.navigation-overlay {
  display: none;
  position: fixed;
  z-index: 10;
  top: 0;
  right: -105px;
  bottom: 0;
  width: 100%;
  padding: 98px 35px 50px;
  overflow-x: hidden;
  overflow-y: auto;
  transition: right .6s ease;
  background: var(--gray, #EBE8E5);
  border: none;
}
.navigation-overlay.behaved {
  right: 0;
}
.eyebrow-nav {
  /* background-color: #fff; */
  /* border-bottom: 1px solid #eee; */
  padding: 8px 0;
  position: relative;
  z-index: 1;
}
a.btn-layout.eyebrown {
    padding: 20px 10px;
    height: 40px;
}

.eyebrow-nav .container {
    padding-right: 0;
}
.eyebrow-menu {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  gap: 9px;
}

.eyebrow-menu li a { 
  text-decoration: none;
  color: #75A185;
  font-family: Montserrat;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.eyebrow-menu li a:hover{
	color:#275444
}

.eyebrow-menu li a:hover {
  /* text-decoration: underline; */
}


.navigation-overlay > ul {
  opacity: 0;
  margin: 0;
  padding: 0;
}
.navigation-overlay.behaved > ul {
  opacity: 1;
}
.navigation-overlay > ul > li {margin-bottom: 18px!important;}
.navigation-overlay > ul > li > a {
	background: none;
	color: rgb(117, 161, 113);
	font-size: 26px;
	font-style: normal;
	font-weight: 900;
	line-height: normal;
	text-decoration: none;
}
.navigation-overlay > ul > li > a span {
	border-bottom: solid 2px transparent;
}
.navigation-overlay > ul > li > a:hover {
	color: rgb(117, 161, 133);
}
.navigation-overlay > ul > li > a:focus {
  color: #0e385e;
  text-decoration: none;
}
.navigation-overlay > ul > li > a:focus span {
  border-color: #0e385e;
}
.navigation-overlay > ul > li > a i {
	/* float: right; */
	margin-top: 8px;
}
.navigation-overlay > ul > li.current-menu-item > a,
.navigation-overlay > ul > li.current-menu-ancestor > a {
  text-decoration: none;
  color: rgb(39, 84, 68);
}
.navigation-overlay > ul > li.current-menu-item > a > span,
.navigation-overlay > ul > li.current-menu-ancestor > a > span {
	border-color: transparent
}
.navigation-overlay > ul > li ul {
  display: block;
  border-left: solid 2px rgb(117, 161, 113);
  padding-left: 23px;
  margin-left: 17px;
  margin-top: 12px;
  margin-bottom: 10px;
}


.navigation-overlay > ul > li > ul li {margin-bottom: 11px!important;}
.navigation-overlay > ul > li > ul li a {
  text-transform: capitalize;
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
  color: #648B55;
  background: none;
}
.navigation-overlay > ul > li > ul li a span {
	border-bottom: solid 2px transparent;
}
.navigation-overlay > ul > li > ul li a:hover {
  text-decoration: none;
  color: #12B6E1;
}
.navigation-overlay > ul > li > ul li a:focus {
  text-decoration: none;
  color: #12B6E1;
}
.navigation-overlay > ul > li > ul li a:focus span {
	border-color: #12B6E1;
}
.navigation-overlay > ul > li.current-menu-ancestor > ul li.current-menu-item a {
  text-decoration: none;
  color: rgb(39, 84, 68);
}
.navigation-overlay > ul > li.current-menu-ancestor > ul li.current-menu-item a span {
	border-color: transparent;
}
.navigation-overlay > ul > li.current-menu-ancestor > ul li.current-menu-item a:before {
  content: '\f105';
  font-family: 'Font Awesome 6 Pro';
  font-weight: 300;
  position: relative;
  top: -3px;
  margin-right: 5px;
  font-size: .7em;
}
.navigation-overlay > ul > li > a .fal  {
	display: none
}

ul.eyebrow-menu.list-inline.mobilemenu {
    justify-content: flex-start;
    flex-flow: column;
}

ul.eyebrow-menu.list-inline.mobilemenu i {margin-top: 11px;font-size: 22px;}

ul.eyebrow-menu.list-inline.mobilemenu .fa-brands {
    font-size: 35px;
}

body.behaved {
  overflow: hidden;
}
body.actived {
  overflow: hidden;
}
.page {
  background-color: #F9F9F9;
  position: relative;
  overflow: hidden;
}
.whitebackgroundmenu {
	position: relative;
	background: #fff;
	padding: 0 20px 20px;
	border-radius: 0 0 0 35px;
}
.whitebackgroundmenu:before,
.whitebackgroundmenu:after {
	content: '';
	display: block;
	position: absolute;
	width: 29px;
	height: 27px;
	background: url(../img/curve.svg);
	background-size: cover;
	background-repeat: no-repeat;
}
.whitebackgroundmenu:before {
	top: 0;
	right: 100%;
}
.whitebackgroundmenu:after {
	top: 100%;
	right: 0;
}
@media screen and (min-width: 1195px) {
  /*============== TOP ================*/
  .menu .navigation,
  .menu .mobile-nav,
  
  .navigation-overlay {
    display: none !important;
  }

	
	
}


@media screen and (max-width: 1365px) {
.menu .collapse-menu li a {
	font-size:11px;
}

}

@media screen and (max-width: 1195px) {
	.menu > .container {
		padding: 30px 30px;
		align-items: start;
		gap: 20px;
		align-items: anchor-center;
	}
.whitebackgroundmenu {
    background: transparent;
    padding: 0;
    border-radius: 0;
}
.whitebackgroundmenu:before,
.whitebackgroundmenu:after {
	display:none!important;
}
	.eyebrow-nav{
		display:none;
	}
	.social-icons-header {
		display:none;
		}
	.menu.home > .container {
		padding: 30px 50px;
	}
  .menu .collapse-menu { display: none }
  h1 > span, .h1-style > span { font-size: 16px }
  /*============== TOP ================*/
  body.actived {
    overflow: auto !important;
  }
  .menu {top: 0;padding: 0;}
  .menu.actived {
    background: #fff;
    padding: 5px 2vw;
}
  .menu.behaved,
  .menu.behaved:before {
    background-image: none;
    border: transparent;
    background: transparent;
  }
  .menu.behaved:after {
	background-color: transparent;
  }
  .menu > div .navigation {
    /* margin: 18px 0 0; */
    margin-right: 0;
  }
  .menu.actived > div .navigation {
    margin: 0;
    margin-right: 0px;
  }
  .menu .services-menu,
  .menu .bottom {
    display: none;
  }
  .menu .logo-nav {
  top: 8px;
  left: 10px;
  font-size: 65px;
  color: var(--chas-blue, #230704);
  }
  .menu.actived .logo-nav {
  top: 4px;
  font-size: 49px;
  max-width: 105px;
  }
}
@media screen and (max-width: 650px) {
  .menu.home > .container {
		padding: 30px 20px;
	}

  /*============== TOP NAV ================*/
  /*.menu div > a > .txt {
    display: none;
  }*/
  .menu.behaved > div .navigation {
  	width: 24px;
  	padding: 0;
  	margin-right: 0;
  }
  .navigation-overlay > ul > li > a {
  }
  .navigation-overlay > ul > li > ul > li a {
  }
  .menu .donate {
    top: 7px
  }
  .menu.actived .donate {
    top: 1px
  }
}
@media screen and (max-width: 910px) {
  .customize-support .menu.home, .customize-support .menu.actived{
    top: 32px;
  }
  .customize-support .navigation-overlay,
  .customize-support .menu.actived + .navigation-overlay {
    /* margin-top: 34px; */
  }
}
@media screen and (max-width: 782px) {
  .customize-support .menu.home, .customize-support .menu.actived{
    top: 46px;
  }
  .customize-support .navigation-overlay,
  .customize-support .menu.actived + .navigation-overlay {
    /* margin-top: 46px; */
  }
}
@media screen and (max-width: 600px) {
  .customize-support .menu.home {
    top: 46px;
  }
  .customize-support .menu.actived {
    top: 0;
  }
  .customize-support .navigation-overlay {
    /* margin-top: 46px; */
  }
  .customize-support .menu.actived + .navigation-overlay {
    margin-top: 0;
  } 
}
@media (max-width: 370px) {
	.menu .mobile-nav ul li:not(:last-child) {
		margin-right: 5px;
	}
}

span.headerSpan {
    color: #00DBEF;
    font-family: Poppins;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%; /* 19.2px */
}


/*===========================================================================================================*/
/*=========================================== 1920fix ======================================================*/
/*===========================================================================================================*/


.section-white {
  padding: 50px 0;
  background: #F8F7F3;
}
.section-white.grey {
  background: #F9F9F9;
}
.section-white > .container,
.section-white > .container-fluid {
  opacity: 0;
}
.section-white > .container,
.section-white > .container-fluid {
  opacity: 1;
  animation: fadeIn 1.2s both;
}

/* Container */
.container,
.container-lg {
	margin: auto;
	max-width: 100%;
	padding: 0 50px;
}
.container {
	/* max-width: 1140px; */
	padding: 0 clamp(20px, 8vw, 150px);
}
@media (max-width: 1174px) {
	.container {
	 	padding: 0 20px;

	}
}





/*===========================================================================================================*/
/*=========================================== FOR ALL ======================================================*/
/*===========================================================================================================*/


/* Columns Even */
.columns-even.image-side img {
	border-radius: 10px;
	width: 100%;
	height: 100%;
    object-fit: cover;
}
@media (min-width: 769px) { 
  .columns-even {
    display: flex;
    justify-content: space-evenly;
    gap: 30px;
  }
  .columns-even .col { 
    width: 100% 
  }
  .columns-even.x3 {
	flex-wrap: wrap;
  }
  .columns-even.x3 .col {
	width: calc(33.3333% - 20px);
  }
  .columns-even.image-side {
	  align-items: center;
  }
  .columns-even.image-side .col {
	  height: 100%;
  }
}
@media (max-width: 768px) {
	.columns-even.reverse {
	    display: flex;
		flex-direction: column-reverse;
	}
	.columns-even img {
		margin: 0 0 30px;
	}
}

/* Image Row */
.image-row {
  margin: 50px 0;
}
.image-row .columns-even .col:first-child img { border-radius: 10px 10px 0 0; }
.image-row .columns-even .col:last-child img { border-radius: 0 0 10px 10px; }
@media (min-width: 769px) {
  .image-row .columns-even .col:first-child img { border-radius: 10px 0 0 10px; }
  .image-row .columns-even .col:last-child img { border-radius: 0 10px 10px 0; }
}




/* ----- container vimeo base ----- */
.impact-hero {
  position: relative;
  min-height: 70vh;             
  display: grid;
  place-items: center;
  color: #fff;
  overflow: hidden;
}

 
.impact-hero .video-bg,
.impact-hero .video-bg iframe {
  position: absolute;
  inset: 0;
  top: -100px!important;
  width: 130%;
  height: 130%;
}
.impact-hero .video-bg iframe {
  pointer-events: none;         / 
}

 .impact-hero .impact-content {
  position: relative;
  z-index: 2;
   
}
.impact-hero .h1 {margin: 0 0 8px;color: #FFF;}
.impact-hero .h2 {margin: 0;margin-bottom: 0!important;font-weight: 400;color: #fff;margin-bottom: 20px;}

.impact-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: clamp(16px, 3vw, 40px);
  margin-top: clamp(20px, 3vw, 32px);
}
.impact-stats .stat {
  padding: clamp(14px, 2.2vw, 50px) clamp(14px, 2.2vw,30px);
  border-radius: 12px;
  background: none;  
  place-items: center;
  backdrop-filter: blur(2px);
}
.impact-stats .stat .h2 {
  line-height: 1.05;
  color: #75A185;
  font-family: open-sans;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.impact-stats .stat .h1-eyebrown {
  margin-top: 6px;
  opacity: 0.95;
  color: #fff;
  text-align: center;
}
.under-top {
    display: flex;
    align-items: center;
}
/* responsivo */
@media (max-width: 900px) {
  .impact-stats { grid-template-columns: 1fr; }
  .impact-hero { min-height: 80vh; }
.under-top {
     flex-flow:column;
}
.impact-hero .video-bg{
	display:none;
}
}

 @media (prefers-reduced-motion: reduce) {
  .impact-hero .video-bg { display: none; }
}


/* ===== Impact / Video Hero ===== */
.video-hero{
  position: relative;
  min-height: 70vh;           
  color: #fff;
  overflow: hidden;
}

 
.video-hero .video-bg{
  position: absolute;
  inset: 0;
  z-index: 0;
 }
.video-hero .video-bg iframe{
  position: absolute;
  inset: 0;
  top: -140px;
  width: 100%;
  height: 160%;
  border: 0;
  pointer-events: none;
  z-index: 0;
}
 .video-hero{
  position: relative;
  min-height: 70vh;   
  overflow: hidden;
  color: #fff;
}

.video-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity: 1;
  background:
  linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.6) 0%,
    rgba(0, 0, 0, 0.6) 100%
  ),
  #000; /* ou #0b0b0b / #111111 se quiser um preto um pouco menos “puro” */
  background: linear-gradient( 135deg, #2a4b3f 0%, #4f7f69 50%, #78a789 100%);
  mix-blend-mode: multiply;
}

 .video-hero .impact-content{
  position: relative;
  z-index: 2;
  display: flex;
  gap: 60px;
  padding: 100px 20px;
  flex-flow: column;
  align-items: center;
}


 .video-hero{
  position: relative;
 }

 .impact-card{
  position: relative;
   width: 100%;
  padding: clamp(18px, 3vw, 30px);
  background: #fff;
  color: #111;
  border-radius: 14px;
  box-shadow: 0 18px 40px rgba(0,0,0,.22);
}

 :root{ --brand-green: #39B54A; }        
 .impact-card-title{
  margin: 0 0 14px;
  font-family: Montserrat;
  font-weight: 700;
  font-size: clamp(20px, 2.6vw, 40px);
  line-height: 1.1;
  color: #111;  
}

 
.impact-card-title.is-gradient{
  background: var(--brand-linear, linear-gradient(90deg, var(--darker-green, #275444) 0%, var(--lighter-still-green, #708A81) 50%, var(--lightest-green, #75A185) 75%, var(--lighter-green, #49735D) 100%));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}


 
.impact-card-grid{
  display: flex;
  justify-content: space-between;
  /* gap: clamp(12px, 2.2vw, 28px); */
}

.impact-card-eyebrow{
  font-weight: 800;
  font-size: 0.97rem;
  margin-bottom: 6px;
  color: #1a1a1a;
  color: var(--dark, #333);
  font-family: Montserrat;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.impact-card-item p{
  margin: 0;
  color: var(--dark, #333);
  font-family: Montserrat;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  max-width: 340px;
  line-height: normal;
}

 
@media (max-width: 900px){
  .video-hero{ padding-bottom: 160px; }  
  .impact-card{
    bottom: -30px;
    width: calc(100% - 32px);
    border-radius: 12px;
  }
.impact-card-item {
    margin-bottom: 30px;
}
  .impact-card-grid{display: flex;flex-flow: column;}
}

 .video-hero + *{ margin-top: 48px; }


 :root{
  --brand-green: #4C7A45;                 
  --brand-green-dark: #396037;
 
}

 .wwd {/* padding: clamp(32px, 5vw, 64px) 0; */}

.wwd-cards{
  display:flex;
  flex-wrap:wrap;
  gap: clamp(14px, 2vw, 20px);
  margin-top: 50px;
}

/* card */
.wwd-card{
  color: #FFF;
  flex: 1 1 calc(25% - 16px);             
  max-width: 100%;                       
  padding: 20px;
  padding-bottom: 120px;
  box-shadow: 0 8px 24px rgba(0,0,0,.15);
  display:flex;
  flex-direction:column;
  gap: 8px;
  border-radius: 0 50px;
  background:  
  linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%),
   
  var(--green, #648B55);
 }
 article.wwd-card i {
    font-size: 40px;
    margin-bottom: 20px;
}

.wwd-card h3{
 
}
.wwd-card p{
  margin-top: 20px;
  line-height: 1.45;
  color: #FFF;
}

 .wwd-icon{
  width: 36px; height: 36px;
  display:grid; place-items:center;
  font-size: 20px;
  border-radius: 10px;
  background: rgba(255,255,255,.12);
  margin-bottom: 6px;
}
h2.h2-slim.underline {
    padding-bottom: 20px;
    max-width: 427px;
}
 .wwd-card{ border-top-right-radius: 40px; }
.wwd-card h3 {
      
  color:#FFF;
   
}
/* responsivo */
@media (max-width: 1100px){
  .wwd-card{/* flex: 1 1 calc(33.333% - 16px); */}   /* 3 por linha */
}
@media (max-width: 1100px){
 .wwd-card{ flex: 1 1 100%; }         /* 2 por linha */
}
@media (max-width: 520px){
  .wwd-card{ flex: 1 1 100%; }                   /* 1 por linha */
}


.ready  {
  opacity: 1;
  animation: fadeInUp 1.2s both;
}

 
.container-lg.home > .content-row{
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "image text";
  gap: 40px;
  align-items: center;
  /* margin-bottom: 4rem; */
}
.container-lg.home > .content-row > .text-block{ grid-area: text; }
.container-lg.home > .content-row > .image-block{ grid-area: image; }
.container-lg.home > .content-row:nth-child(even){
  grid-template-areas:
    "text image";
  grid-template-columns: 1fr 1fr;
}

/* ===== Extra Large Screens (>=1800px) ===== */
@media (min-width: 1800px){
  .container-lg.home > .content-row:nth-child(odd) > .text-block{
    /* padding-left: 250px; */
    /* padding-right:0; */
    /* font-size:1.1rem; */
  }
  .container-lg.home > .content-row:nth-child(even) > .text-block{
    padding-right:100px;
    padding-left:0;
    
  }
  .text-block h1{
		font-size: 40px;
		}
.standard p {
  font-size: 20px;
}
}

/* ===== Mobile ===== */
@media (max-width: 930px){
  .container-lg.home > .content-row{
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "image"
      "text";
    gap: 20px;
    margin-bottom: 2.5rem;
    align-items: start;
  }
  .container-lg.home > .content-row:nth-child(even){
    grid-template-areas:
      "image"
      "text" !important;
  }
  .container-lg.home > .content-row > .text-block{
    padding-left:20px !important;
    padding-right:20px !important;
    font-size:inherit;  
  }
.section-white {
  padding: 20px 0;
}
}
/* seção base */
.cta-ribbon{ padding: 12px 0 20px; }

 
.cta-box{
  position: relative;
  background: #333;                  
  color: #FFF;
  border-radius: 12px;                   
  padding: 30px;
  display: flex;
  align-items: center;
  gap: clamp(12px, 2vw, 24px);
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}

/* texto */
.cta-copy h3{ margin: 0 0 4px; font-weight: 800; }
.cta-copy p{ margin: 0; opacity: .9; }

.cta-box .btn-layout{
  margin-left: auto;                      
  white-space: nowrap;                   
}

 .cta-copy h3, .cta-copy p {
  color:#FFF;
 }

/* responsivo */
@media (max-width: 768px){
  .cta-box{
    flex-direction: column;
    align-items: flex-start;
    padding: 18px;
  }
  .cta-box .btn-layout{ margin-left: 0; }
  .cta-badge{ right: 16px; }
}


section.contact-block .underline.center {
    margin-bottom: 50px;
}

 .news-ribbon{
  background: linear-gradient(180deg, #6C92AA 0%, #648B55 100%); /* se usar vars, troque pelos seus */
  color: #fff;
  padding: clamp(24px, 6vw, 72px) 0;
}

 .news-head{
  display:flex;
  align-items:center;
  gap: 16px;
  padding-bottom: 30px;
  margin-bottom: clamp(14px, 3vw, 24px);
}
.news-head .underline{ margin: 0; }
.news-head .btn-layout{ margin-left:auto; white-space:nowrap; }

 .news-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 50px;
}

 .news-card{
  background:#fff;
  color:#111;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
  overflow:hidden;
  display:flex; flex-direction:column;
}

 .news-thumb{
  display:block;
  padding: 14px 14px 0 14px;
}
.news-thumb img{
  display:block;
  width:100%;
  height: 240px;
  object-fit:cover;
  border-radius: 0 20px;
}

/* título */
.news-title{
  font-size: 1rem;
  line-height: 1.35;
  font-weight: 800;
  margin: 10px 14px 16px;
}
.news-title a{
  font-weight: 800;
  color: inherit;
  text-decoration: none;
}
.news-title a:hover{ text-decoration: underline; }

 
.news-card:hover{ transform: translateY(-2px); transition: transform .2s ease; }

/* ===== Responsivo ===== */
@media (max-width: 1024px){
  .news-thumb img{ height: 180px; }
}
@media (max-width: 820px){
  .news-grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px){
  .news-grid{ grid-template-columns: 1fr; }
  .news-head{ flex-direction: column; align-items: flex-start; gap: 10px; }
  .news-head .btn-layout{ margin-left: 0; }
  .news-thumb{ padding: 12px 12px 0; }
  .news-title{ margin: 10px 12px 16px; }
}
.content-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
  margin-bottom: 4rem;
}


h1.serv.underline {
    justify-self: center;
    margin-bottom: 50px;
}

.content-row:last-child {
	margin-bottom: 0;
}

.standard {
    margin-top: 20px;
}
.content-row.reverse {
  flex-direction: row-reverse;
}

.text-block {
  flex: 1 1 45%;
}

.text-block h1 {
  color: var(--main, #004F62);
  margin-bottom: 20px;
  color: #230704;
  font-family: Montserrat;
  font-size: 35px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: capitalize;
}

 

.text-block p {
  color: #1E1E1E;
  margin-bottom: 1.5rem;
  /* max-width: 540px; */
}

.image-block {
  flex: 1 1 40%;
}
.container-lg.home{
  /* padding: 50px 150px; */
  padding-top: 0;
}

.image-block img {
  width: 100%;
  border-radius: 0 50px;
  display: block;
  justify-self: center;
  height: 648px;
  object-fit: cover;
}
.standard p{
  margin-bottom: 30px;
  color: #333;
  font-family: 'open-sans';
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: none;
}
.section-icon {
  /* margin: 0 auto 1rem; */
  display: block;
  width: 114.984px;
  height: 68.93px;
  justify-self: anchor-center;
}


/* ===== Partners Section ===== */
.partners-section{
  padding: clamp(28px, 6vw, 72px) 0;
  background-color: #F8F7F3!important;
}

 .partners-logos{
  margin-top: clamp(12px, 2vw, 20px);
  margin-bottom: clamp(18px, 4vw, 36px);
}
.container.home.serve {
    background: #f8f7f3;
}
 .partners-logos .swiper-wrapper{
  align-items: center;
}
.partners-logos .swiper-slide{
  width: 180px;                    
  padding: 8px clamp(10px, 2vw, 20px);
  display: grid;
  place-items: center;
}

 .partners-logos img{
  display: block;
  max-height: 116px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: none;
}

 
.partners-map-title{
  text-align: center;
  margin: 50px;
}
.partners-map-title p{
  margin: 0 0 6px;
  opacity: .75;
}
.partners-map-title h2{
  margin: 0;
  color: #275444;
}


 
.partners-map{
  display: grid;
  place-items: center;
}
.partners-map img{
  width: min(100%, 1230px);
  height: auto;
  display: block;
}

/* ===== Responsive ===== */
@media (max-width: 1024px){
  .partners-logos img{ max-height: 48px; }
.container.home.serve .content-row {padding:0;display:flex;flex-flow:column;align-items: center;}
.content-row .btn-layout {
    margin-bottom: 20px;

}
}
@media (max-width: 768px){
  .partners-logos img{ max-height: 42px; }
}
@media (max-width: 520px){
  .partners-logos img{ max-height: 36px; }
  .partners-logos .swiper-slide{ padding: 8px 12px; }
}
 

.video-teaser{padding: 100px 0;}

.video-thumb{
  position: relative;
  /* display: block; */
  /* width: min(960px, 100%); */
  margin: 0 auto;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
  line-height: 0; /* elimina gap de img inline */
  
}

/* imagem */
.video-thumb img{
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

 
.video-thumb::after{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.18);
  /* transition: backdrop-filter .25s ease, background .25s ease; */
}

 
.video-thumb .play{
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  pointer-events: none; /* o clique passa pro <a> */
}
.video-thumb .play i{
  width: 64px; height: 64px;
  display: grid; place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  color: #1a1a1a;
  font-size: 22px;
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
  transition: transform .2s ease, background .2s ease;
}

/* hover/focus */
.video-thumb:hover::after,
.video-thumb:focus-visible::after{ background: rgba(0,0,0,.26); }
.video-thumb:hover .play i,
.video-thumb:focus-visible .play i{
  transform: scale(1.06);
  background: #fff;
  outline: none;
}

/* mobile */
@media (max-width: 520px){
  .video-thumb .play i{ width: 56px; height: 56px; font-size: 20px; }
}
section.video-teaser {
    padding: 40px 0;
}
 
.video-teaser{ padding: 100px 0; }

.video-thumb{
  display: block;
  position: relative;
  margin: 0 auto;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
  line-height: 0;  
  max-width: 800px;
}

.video-thumb img{
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

 
.video-thumb::after{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.18);
}

 
.video-thumb .play{
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  pointer-events: none; 
}
.video-thumb .play i{
  width: 64px; height: 64px;
  display: grid; place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  color: #1a1a1a;
  font-size: 22px;
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
  transition: transform .2s ease, background .2s ease;
}

/* hover/focus */
.video-thumb:hover::after,
.video-thumb:focus-visible::after{ background: rgba(0,0,0,.26); }
.video-thumb:hover .play i,
.video-thumb:focus-visible .play i{
  transform: scale(1.06);
  background: #fff;
  outline: none;
}

/* mobile */
@media (max-width: 520px){
  .video-thumb .play i{ width: 56px; height: 56px; font-size: 20px; }
}

section.video-teaser{margin: 0;}


/*===========================================================================================================*/
/*=========================================== PARALLAXX ====================================================*/
/*===========================================================================================================*/
.testimonial-parallax{
  position: relative;
  color: #fff;
  padding: 80px 0;
  overflow: hidden;
}

.testimonial-parallax::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(0deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.55) 100%),
    linear-gradient(90deg, #12B6E1 0%, #FFE200 100%);
  mix-blend-mode: multiply;
  opacity:.85;
}

.parallax .parallax-bg{
  position:absolute;
  left:0;
  right:0;
  top:-18vh;
  bottom:-19vh;
  z-index:0;
  overflow:hidden;
}

.parallax .parallax-bg .parallax-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform: translate3d(0,0,0);
  will-change: transform;
}

.testimonial-parallax .container{
  position:relative;
  z-index:2;
}

/* GRID PRINCIPAL – dois blocos que encolhem juntos */
.tp-grid{
  display:grid;
  grid-template-columns: minmax(0, 1.0fr) minmax(0, 2fr);
  gap: clamp(24px, 3vw, 50px);
  align-items:flex-start;
}

/* Ícone título à esquerda */
i.fa-solid.fa-comments{
  font-size:24px;
  margin-bottom:10px;
}

.tp-left h3{
  margin:0 0 50px;
  display:flex;
  align-items:center;
  gap:10px;
  color:#FFF;
}

.tp-left .btn-layout{
  display:inline-flex;
  align-items:center;
  gap:10px;
}

/* Barrinha + estrelas */
.tp-topline{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:10px;
}

.tp-line{
  flex:1;
  height:4px;
  border-radius:999px;
  background: linear-gradient(90deg, rgb(117, 161, 133) 0%, rgb(39, 84, 68) 100%);
}

.tp-stars{
  display:flex;
  gap:8px;
  color:#FFC72C;
  font-size:18px;
}

/* Texto do depoimento */
/* Deixa o tamanho fluido pra ir diminuindo sem “quebrar” o layout */
.not-t .tp-quote{
  margin-top:20px;
}

.tp-quote,
.tp-quote p{
  color:#FFF;
  font-family:Montserrat, sans-serif;
  font-size:clamp(14px, 1.05vw, 16px);
  font-style:normal;
  font-weight:400;
  line-height:1.5;
  margin:0 0 8px;
}

.tp-author{
  margin:14px 0;
  color:#FFF;
  font-family:Montserrat, sans-serif;
  font-size:clamp(14px, 1.05vw, 16px);
  font-style:normal;
  font-weight:700;
  line-height:1.5;
}

 
.tp-right{
  width:100%;
  /* max-width:960px; */
  margin-left:auto;
}

/* RESPONSIVO */

 
@media (max-width: 900px){
  .testimonial-parallax{
    padding:60px 0;
  }

  .tp-grid{
    grid-template-columns: minmax(0, 1fr);
  }

  .tp-left h3{
    margin-bottom:24px;
  }

  .tp-right{
    max-width:100%;
    margin:0;
  }

  .tp-stars{
    font-size:16px;
  }
}

/* Ajuste fino de texto em telas bem pequenas */
@media (max-width: 480px){
  .tp-quote,
  .tp-quote p,
  .tp-author{
    font-size:14px;
  }
}

/*===========================================================================================================*/
/*=========================================== KEY FRAMES ====================================================*/
/*===========================================================================================================*/
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translateY(-20%);
		-webkit-transform: translateY(-20%);
		-moz-webkit-transform: translateY(-20%);
		-o-webkit-transform: translateY(-20%);
	}
	to {
		opacity: 1;
		transform: translateY(0);
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		-o-transform: translateY(0);
	}
}
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(20%);
		-webkit-transform: translateY(20%);
		-moz-webkit-transform: translateY(20%);
		-o-webkit-transform: translateY(20%);
	}
	to {
		opacity: 1;
		transform: translateY(0);
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		-o-transform: translateY(0);
	}
}
@keyframes fadeInLeft {
	from {
		opacity: 0;
		transform: translateX(-20%);
	}
	to {
		opacity: 1;
		transform: translateX(0);
		-webk9t-transform: translateX(0);
		-moz-transform: translateX(0);
		-o-transform: translateX(0);
	}
}
@keyframes fadeInRight {
	from {
		opacity: 0;
		transform: translateX(20%);
		-webkit-transform: translateX(20%);
		-moz-transform: translateX(20%);
		-o-transform: translateX(20%);
	}
	to {
		opacity: 1;
		transform: translateX(0);
		-webk9t-transform: translateX(0);
		-moz-transform: translateX(0);
		-o-transform: translateX(0);
	}
}
/* Estado inicial: tudo invisível */
.animate-on-scroll {
  opacity: 0;
}

 
.fade-up {
  transform: translateY(20%);
}

.fade-down {
  transform: translateY(-20%);
}

.fade-left {
  transform: translateX(-20%);
}

.fade-right {
  transform: translateX(20%);
}

 .animate-on-scroll.is-visible {
  opacity: 1;
}

.animate-on-scroll.is-visible.fade-up {
  animation: fadeInUp 0.8s ease-out forwards;
}

.animate-on-scroll.is-visible.fade-down {
  animation: fadeInDown 0.8s ease-out forwards;
}

.animate-on-scroll.is-visible.fade-left {
  animation: fadeInLeft 0.8s ease-out forwards;
}

.animate-on-scroll.is-visible.fade-right {
  animation: fadeInRight 0.8s ease-out forwards;
}

/* Estado inicial dos cards */
.animate-on-scroll .card-animate {
  opacity: 0;
  transform: translateY(20%);
}

 .animate-on-scroll.is-visible .card-animate {
  animation: fadeInUp 0.6s ease-out forwards;
}
 
.animate-on-scroll.is-visible .card-animate:nth-child(1) { animation-delay: 0.1s; }
.animate-on-scroll.is-visible .card-animate:nth-child(2) { animation-delay: 0.2s; }
.animate-on-scroll.is-visible .card-animate:nth-child(3) { animation-delay: 0.3s; }
.animate-on-scroll.is-visible .card-animate:nth-child(4) { animation-delay: 0.4s; }
.animate-on-scroll.is-visible .card-animate:nth-child(5) { animation-delay: 0.5s; }
.animate-on-scroll.is-visible .card-animate:nth-child(6) { animation-delay: 0.6s; }
.animate-on-scroll.is-visible .card-animate:nth-child(7) { animation-delay: 0.7s; }
.animate-on-scroll.is-visible .card-animate:nth-child(8) { animation-delay: 0.8s; }
.animate-on-scroll.is-visible .card-animate:nth-child(9) { animation-delay: 0.9s; }

/*===========================================================================================================*/
/*=========================================== FOOTER ========================================================*/
/*===========================================================================================================*/
 /* ===== Footer ===== */
.site-footer{
  position: relative;
  background: #333;
  color: #eee;
  padding: clamp(28px, 6vw, 72px) 0;
  overflow: hidden;
}

/* folha decorativa à direita */
.footer-leaf{
  position: absolute;
  inset: 0 -10% -20% auto;   /* expande um pouco para além da borda */
  pointer-events: none;
  z-index: 0;
  opacity: .18;              /* discreta */
}
.footer-leaf img{
  position: absolute;
  right: -6%;
  top: 30%;
  max-width: 900px;
  width: 60vw;
  height: auto;
  filter: grayscale(100%) brightness(1.1);
}

@media (max-width: 1011px){
  .footer-leaf{ inset: 0; }  
  .footer-leaf img{
    top: auto;
    bottom: -8%;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    width: 120vw;
    max-width: none;
  }
}

@media (max-width: 400px){
  .footer-leaf{ inset: 0; }  
  .footer-leaf img{
    top: auto;               
    bottom: -2%;             
    right: auto;
    left: 50%;              
    transform: translateX(-50%);
    width: 120vw;            
    max-width: none;
  }
}
/* topo */
.footer-top{
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 50px;
}
.footer-top h2 {
    color: #49735D;
}
ul.contact a {
    color: #F8F7F3;
}
.footer-top .underline{margin: 0;}
.footer-top .btn-layout{margin-left: auto;white-space: nowrap;margin-right: 50px;}

/* grid */
.footer-grid{
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  /* gap: clamp(18px, 4vw, 40px); */
}

/* brand + contato */
.footer-brand .footer-logo{
  display: block;
  width: 200px;
  height: auto;
  margin-bottom: 12px;
}
.footer-brand .contact{
  list-style: none; margin: 0; padding: 0;
}
.footer-brand .contact li{
  display: flex;
  align-items: center;
  gap: 10px;
  color: #ddd;
  margin: 8px 0;
  color: var(--cream, #F8F7F3);
  font-family: Montserrat;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  padding-bottom: 10px;
}
.footer-brand .contact i{ color: #b6c4b9; }

.footer-brand .social{
  margin-top: 10px; display: flex; gap: 10px;
}
.footer-brand .social a{
  width: 28px; height: 28px; display: grid; place-items: center;
  border-radius: 6px; background: rgba(255,255,255,.08); color: #fff;
}
.footer-brand .social a:hover{ background: rgba(255,255,255,.16); }

/* colunas de links */
.footer-cols{
  display: flex;
  justify-self: flex-start;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 3vw, 82px);
  /* margin-left: 50px; */
}
.fcol h4{
  margin: 0 0 8px;
  color: var(--cream, #F8F7F3);
  font-family: Montserrat;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.fcol ul{ list-style: none; margin: 0; padding: 0; }
.fcol li{margin: 10px 0;color: var(--cream, #F8F7F3);font-family: Montserrat;font-size: 16px;font-style: normal;font-weight: 400;line-height: normal;}
.fcol a{
  color: #d7d7d7;
  text-decoration: none;
  color: var(--cream, #F8F7F3);
  font-family: Montserrat;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.fcol a:hover{ color: #fff; text-decoration: underline; }

/* responsivo */
@media (max-width: 1100px){
  .footer-grid{ flex-direction:column;}
 .footer-cols{ flex-direction:column; margin-left:0; }
  .footer-top{ flex-direction: column; align-items: flex-start; }
  .footer-top .btn-layout{ margin-left: 0; }
}
@media (max-width: 700px){
 
  .footer-brand .footer-logo{ width: 170px; }
}
@media (max-width: 460px){
  .footer-cols{ grid-template-columns: 1fr; }
}


/*===========================================================================================================*/
/*=========================================== MOBILE ========================================================*/
/*===========================================================================================================*/
 
@media (max-width: 1200px) {
  
.two-cols {
	flex-flow:column;
}
}

@media (max-width: 1209px){
.container-lg.home{
	padding-left: 20px;
	padding-right: 20px;
}
 
	 
 
	 .hero-banner {
		padding: 20px!important;
	}

.single-news {
padding:0
}
}
@media (max-width:930px){
.content-row {
	flex-flow:column;
}
.content-row.reverse {
     flex-direction: row;
     /* flex-flow: column-reverse; */
}
	 .video .image-block {
    display: block;
    width: 100%;
	   
  }
	 
	.two-cols {
		 gap:10px;
	}

	
}
 @media (max-width:990px){
.site-footer .footer-grid{display: flex;flex-flow: column;}

 }
 @media (min-width:1920px){
 
 

  
 }

@media (max-width:850px){
.events-list {
	flex-flow:column;
	width: 100%;
	margin-bottom: 20px;
}
	
}

@media (max-width: 768px) {
  .footer-left-area .footer-inner {
	   
	  flex-flow: column;
	 }
	.h1-bnn{
		font-size: 40px;
	}
	.hero-banner .highlight{font-size: 60px;}
	.hero-banner_content {
		max-width:100%
	}
.parallax-reviews .parallax-clip{
	padding:20px;
}
.featured-items-grid {
	padding:10px;
}
	.featured-item-footer {flex-direction: column-reverse;align-content: flex-start;}
	.upcoming-event-cta {/* display: flex; */margin-left: 0;/* flex-wrap: wrap; */align-items: flex-start;}
	.upcoming-event-image img {
		max-width:100%;
		
	}

.featured-item-image img {
  display: block;
  width: 100%;
  min-height: auto;
}

	.upcoming-event-item
	{
		justify-content:center;
	}



}
@media (max-width:595px){
.upcoming-event-item {
        justify-content: flex-start; }

	.access-info {
		flex-flow:column;
	}
}
@media (max-width:530px){
.container-lg.home{
	padding-left:20px;
	padding-right:20px;
}
.footer-actions{
	flex-flow:column;
	align-content: flex-start;
}
.site-footer .footer-actions {
    align-items: baseline;
}
	 

 
section.featured-items.section-white.scroll .container {
    padding-left: 5px;
    padding-right: 5px;
}
 
}

 

html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.heading-center {
    text-align: center;
}

.heading-center .underline {
    display: inline-block;   /* limita a largura ao texto */
    position: relative;
    margin-bottom: 50px;
}

.heading-center .underline::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -16px;
    height: 2px;
    width: 100%;             /* 100% = exatamente o texto */
    background: #325c45;
    margin: 0 auto;
}