@charset "utf-8";
@import url("https://use.typekit.net/oto5xss.css");
@font-face {
  font-family: "Bodoni Sans";
  src: url("../fonts/bodonisanstext-regular.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}


.container,
.container-lg {
	margin: auto;
	max-width: 100%;
}





@media (min-width: 1141px) {
    .container {
        max-width: 1140px;
    }
}
@media (min-width: 1920px) {
    .container {
        max-width: 1740px;
    }
}
@media (max-width: 1200px) {
    .container {
        padding: 0 20px;
    }
}
/*===========================================================================================================*/
/*=========================================== GENERAL SETTINGS ==============================================*/
/*===========================================================================================================*/
body {
  margin: 0;
  padding: 0;
  font-size: 10px;
  background-color: var(--main, #004F62);
  -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 {
  margin: 0 0 0;
  color: rgba(33, 33, 33, 0.80);
  font-family: "Bodoni Sans";
  font-size: 21px;
  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;
}
li {}
td, th {}
a {
  color: #FFF;
  font-family: bodoni sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-decoration: none;
}
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: #FFF;
  font-family: Barlow;
  font-size: 30px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.h1-eyebrown{
  color: #FFF;
  font-family: "Playfair Display";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.h1-style {
  color: #FFF;
  font-family: "Playfair Display";
  font-size: 30px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.h1-bnn {
  color: #FFF;
  font-family: Barlow;
  font-size: 82px;
  font-style: normal;
  font-weight: 400;
  line-height: 94.836%;
  margin-bottom: 20px;
}

.interior .h1-bnn {
	color: #424242;
	font-family: Barlow;
	font-size: 50px;
	font-style: normal;
	font-weight: 600;
	line-height: 94.836%; /* 47.418px */
	margin-bottom: 0px;
	/* z-index: 40; */
}

h2 {
  color: #FFF;
  font-family: Barlow;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.h2-eyebrown{
  color: #FFF;
  font-family: "Playfair Display";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

h3 {
  color: #FFF;
  font-family: Barlow;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
h4 {
  color: #FFF;
  font-family: Barlow;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.p-bnn {
  color: #FFF;
  font-family: Barlow;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.interior .p-bnn{
	color: var(--main, #004F62);
	font-family: Barlow;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	z-index: 9;
}
.interior .subtitle-bar{
	margin:10px;
	margin-left: 0;
}
.bg-white{
  background-color:#FFF;
}
.bg-grey{
  background-color:#F9F9F9;
}
.center {
    justify-self: anchor-center;
}

/*===========================================================================================================*/
/*=========================================== TOP ===========================================================*/
/*===========================================================================================================*/
.menu {
  display: block;
  position: relative;
  z-index: 11;
  top: 0;
  left: 0;
  right: 0;
  padding: 0;
  transition: all .4s ease;
  opacity: 1;
  background: #FFF;
  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; */
  align-items: center;
  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, #0677A1);
  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, #003865);
}
.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, #0677A1);
  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, #0677A1);
  -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, #0677A1);
  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: 222px;
  transition: all .3s ease;
  display: flex;
  width: 442px;
  height: 45px;
  padding: 0.008px 0.016px 0px 0px;
  justify-content: center;
  align-items: flex-start;
  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: 20px 60px;
}
.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: var(--teal, #0677A1);
  text-shadow: none;
  padding: 10px 18px!important;
  border-bottom: solid 0px transparent;
}
.menu .collapse-menu > li > ul > li a:hover {
  color: var(--teal, #0677A1);
}
.menu .collapse-menu > li > ul > li a:focus {
  color: var(--teal, #0677A1);
  text-decoration: none;
}
.menu .collapse-menu > li > ul > li.current-menu-item a {
  color: var(--teal, #0677A1);
}
.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: 12px;
}
.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: center;
	/* justify-content: space-around; */
}
.menu .collapse-menu li {
	color: var(--Primary-Color, #1B597E);
	font-family: 'Bodoni Sans';
	font-size: 20px;
	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: var(--Primary-Color, #1B597E);
	font-family: 'Bodoni Sans';
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
.menu .collapse-menu li.current-menu-item > a,
.menu .collapse-menu li.current-page-ancestor > a {
	color: var(--teal, #0677A1);
	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, #0677A1);
	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, #0677A1);
}

.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: var(--main-color, #007580);
    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, #007580);
    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;
}

.eyebrow-menu {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-end;
  gap: 30px;
}

.eyebrow-menu li a {
  text-decoration: none;
  color: var(--main, #004F62);
  font-family: Barlow;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

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

.menuBtn {
    display: flex;
    place-self: flex-end;
    /* width: 420px; */
}
.menu i.fa.fa-chevron-down {
    font-size: 15px;
    padding-top: 4px;
}
.menuBtn a {
    padding:10px 44px;
    margin-right:5px;
    max-height: 55px;
    /* width: 180px; */
}
.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: #0e385e;
	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: #0e385e;
}
.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; */
}
.navigation-overlay > ul > li.current-menu-item > a,
.navigation-overlay > ul > li.current-menu-ancestor > a {
  text-decoration: none;
  color: #0e385e;
}
.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 #0677A1;
  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: #0e385e;
  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: #0e385e;
}
.navigation-overlay > ul > li > ul li a:focus {
  text-decoration: none;
  color: #0e385e;
}
.navigation-overlay > ul > li > ul li a:focus span {
	border-color: #0e385e;
}
.navigation-overlay > ul > li.current-menu-ancestor > ul li.current-menu-item a {
  text-decoration: none;
  color: #0e385e;
}
.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
}


body.behaved {
  overflow: hidden;
}
body.actived {
  overflow: hidden;
}
.page {
  background-color: #F9F9F9;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 993px) {
  /*============== TOP ================*/
  .menu .navigation,
  .menu .mobile-nav,
  
  .navigation-overlay {
    display: none !important;
  }
	
	
}
@media screen and (max-width: 991px) {
	.menu > .container {
		padding: 20px 20px;
		align-items: start;
		gap: 20px;
		align-items: anchor-center;
	}
	.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: 0px 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, #003E6B);
  width: 60%!important;
  }
  .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 */
}

 .menu .collapse-menu > li > ul { overflow: hidden; }

 .menu .collapse-menu > li:hover > ul,
.menu .collapse-menu > li:focus-within > ul {
  overflow: visible;
}

 .menu .sub-menu li { position: relative; }

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

 .menu .sub-menu li:hover > .sub-menu {
  display: block;
}

 .menu .collapse-menu > li > ul > li { position: relative; }

 .menu .collapse-menu > li > ul > li > ul {
  position: absolute;
  top: 0;
  left: 100%;
  min-width: 250px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0px 6px 10px 0px rgba(6,28,24,0.15), 0px 3px 3px -5px rgba(6,28,24,0.20);
  padding: 7px 0;
  opacity: 0;
  pointer-events: none;
  transform: translateY(4px);
  transition: opacity .2s ease, transform .2s ease;
  z-index: 1000;
}

 .menu .collapse-menu > li > ul > li:hover > ul,
.menu .collapse-menu > li > ul > li:focus-within > ul {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

 .menu .collapse-menu > li > ul > li > ul > li a {
  display: block;
  color: var(--teal, #0677A1);
  padding: 10px 18px !important;
  white-space: nowrap;
}
.menu .collapse-menu > li > ul > li > ul > li:hover {
  background: #fcfcfc;
}
 .navigation-overlay ul ul ul {
  border-left: 2px dashed #0677A1;
  margin-left: 18px;
}
.navigation-overlay ul ul ul li a {
  font-size: 20px; 
}

 .menu .collapse-menu > li > ul > li { position: relative; }

 .menu .collapse-menu > li > ul > li.menu-item-has-children::after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  width: 14px;          
  height: 100%;
 }

 .menu .collapse-menu > li > ul > li > ul {
  left: 100%;
  margin-left: 0;      
  /* OU: left: calc(100% - 6px); para sobrepor 6px */
}

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


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

/* Container */
.container,
.container-lg {
	margin: auto;
	max-width: 100%;
	padding: 0 60px;
}
.container {
	max-width: 1440px;
}
@media (min-width: 1920px) {
	.container {
	    max-width: 1440px;
	}
}



/*===========================================================================================================*/
/*=========================================== HOME ======================================================*/
/*===========================================================================================================*/
.homebnn {
  position: relative;
  display: flex;
  align-items: stretch;
  min-height: 100vh;
  overflow: hidden;
}

.homebnn-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.homebnn-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.10), rgba(0, 0, 0, 0.10)),
              linear-gradient(66deg, rgba(27, 89, 126, 0.00), rgba(27, 89, 126, 0.20) 130.84%);
  z-index: 2;
}

.homebnn-img {
  position: absolute;
  left: 0;
  top: -15%;
  width: 100%;
  height: 130%;
  object-fit: cover;
  object-position: center;
  will-change: transform;
}

.homebnn-content {
  position: relative;
  z-index: 3;
  display: flex;
  /* align-items: center; */
  min-height: 100vh;
  margin-left: 0;
  padding: revert-layer;
  margin-right: 0;
  /* padding-right: 50%; */
}

.homebnn-text {
  background: #fff;
  padding: 50px 220px;
  border-radius: 0 9999px 9999px 0;
  padding-left: 80px;
  width: 100%;
  align-content: center;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.05);
}

.homebnn-title {
  color: #1B597E;
  font-family: "Bodoni Sans";
  font-size: 96px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 80px;
}

.homebnn-title span {
  display: block;
  font-weight: 600;
}

.homebnn-desc {
  margin-top: 20px;
  max-width: 563px;
  color: #212121;
  font-family: "Bodoni Sans";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.homebnn-buttons {
  margin-top: 30px;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

@media (max-width: 991px) {
  .homebnn {
    /* flex-direction: column; */
  }
.homebnn-buttons a{
	font-size:19px;
}
  .homebnn-text {
    
    padding: 40px 20px;
    max-width: 100%;
  }

  .homebnn-title {
    font-size: 3.2rem;
    margin-bottom: 20px;
  }

  .homebnn-desc {
    font-size: 0.95rem;
  }

  .homebnn-content {
    min-height: auto;
    padding: 0px!important;
  }
}
 
.featured-serv {
  padding: 80px 60px 80px;
  background: #FFF;
}

.featured-serv-head {
  text-align: center;
  margin-bottom: 60px;
}

.featured-serv-head h2 {
  margin-bottom: 10px;
  color: #212121;
  text-align: center;
  font-family: "Bodoni Sans";
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.featured-serv-head p {
  color: rgba(33, 33, 33, 0.70);
  text-align: center;
  font-family: "Bodoni Sans";
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* Grid layout */
.featured-serv-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}

.featured-serv-card {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 14px;
  padding: 24px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
  border-radius: 32px;
  border: 1px solid rgba(33, 33, 33, 0.12);
  background: #FAFAFA;
}

.featured-serv-card:hover{
 box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}


/* Novo layout de ícone + imagem */
.featured-serv-media {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 20px;
}

.featured-serv-icon {
  background: #1b597e;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}



.featured-serv-img img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
  object-fit: cover;
}
.featured-serv-media .featured-serv-icon img {
  width: 58px;
  height: 70px;
  fill: #fff;	 
}

/* Conteúdo */
.featured-serv-content h3 {
  margin-bottom: 10px;
  color: #212121;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #212121;
  font-family: "Bodoni Sans";
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}


.news-details-content h3 {
    margin-bottom: 10px;
    color: #212121;
    -webkit-text-stroke-width: 0.2px;
    -webkit-text-stroke-color: #212121;
    font-family: "Bodoni Sans";
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.news-details-content h2 {
    margin-bottom: 10px;
    color: #212121;
    -webkit-text-stroke-width: 0.2px;
    -webkit-text-stroke-color: #212121;
    font-family: "Bodoni Sans";
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
.news-details-content h1 {
    margin-bottom: 10px;
    color: #212121;
    -webkit-text-stroke-width: 0.2px;
    -webkit-text-stroke-color: #212121;
    font-family: "Bodoni Sans";
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}
.featured-serv-content p {
  color: rgba(33, 33, 33, 0.70);
  font-family: "Bodoni Sans";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
}

/* Responsivo */
@media (max-width: 991px) {
  .featured-serv-grid {
    grid-template-columns: 1fr;
  }

  .featured-serv-card {
    padding: 20px;
  }

  .featured-serv-media {
    flex-direction: row;
    align-items: flex-start;
  }

}

.home-approach {
  padding: 80px 0;
}

.home-approach-grid {
  display: flex;
  flex-flow: column;
  /* grid-template-columns: 1fr 1fr; */
  gap: 60px;
  align-items: center;
}
.home-approach-cards i.fa-solid.fa-chevron-right {font-size: 15px;}
.home-approach-img {
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  width: 100%;
  max-height: 920px;
}

.home-approach-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 32px;
}

 
.home-approach-img::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 32px;
  background: rgba(0, 0, 0, 0);  
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  pointer-events: none;
  z-index: 2;
}

 
.home-approach-eyebrow {
  margin-bottom: 20px;
  color: #1B597E;
  font-family: 'Bodoni Sans';
  font-size: 32px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
}

.home-approach-title {
  font-family: "Bodoni Sans";
  margin-bottom: 40px;
  color: #212121;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.home-approach-desc {
  font-family: 'Bodoni Sans';
  margin-bottom: 40px;
  color: rgba(33, 33, 33, 0.70);
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* Cards */
.home-approach-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 40px;
  /* max-height: 30px; */
}

.home-approach-card {
  border: 1px solid #ddd;
  border-radius: 12px;
  padding: 20px;
  background: #F9F9F9;
  transition: box-shadow 0.3s ease;
}

.home-approach-card:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
}

.home-approach-card h3 {
  margin-bottom: 16px;
  color: #212121;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #212121;
  font-family: "Bodoni Sans";
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.home-approach-card p {
  color: rgba(33, 33, 33, 0.80);
  font-family: 'Bodoni Sans';
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
}
.home-approach-content {
    display: grid;
    grid-template-columns: 0.65fr 1fr;
    gap: 60px;
}

.home-approach-cards .btn-layout {justify-content: center;}


 
@media (max-width: 991px) {
  .home-approach-grid {
    /* grid-template-columns: 1fr; */
  }

  .home-approach-img {
    max-height: 520px;
  }

  .home-approach-cards {
    grid-template-columns: 1fr;
  }

  .home-approach-title {
    font-size: 28px;
  }
}

.home-team {
  padding: 80px 0;
  text-align: center;
  background: #FFF;
}

.home-team-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.6fr 0.8fr;
  align-items: center;
  gap: 40px;
}

.home-team-member img {
  width: 100%;
  max-width: 280px;
  border-radius: 24px;
  /* margin: 0 auto 16px; */
  display: block;
  max-height: 310px;
}

.home-team-member h3 {
  margin-bottom: 8px;
  color: #212121;
  font-family: "Bodoni Sans";
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-align: left;
  margin-top: 24px;
}

.home-team-member a {
  display: block;
  text-decoration: underline;
  margin-bottom: 4px;
  color: var(--Primary-Color, #1B597E);
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-align: left;
}

.home-team-member p {
  font-size: 16px;
  color: #555;
  margin: 0;
  color: var(--Primary-Color, #1B597E);
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-align: left;
}

.home-team-center {
  text-align: center;
}

.home-team-logo {
  width: 158px;
  height: 158px;
  /* margin: 0 auto 20px; */
}

.home-team-center h2 {
  font-family: "Bodoni Sans";
  margin-bottom: 10px;
  color: #212121;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.home-team-center p {
  font-family: 'Bodoni Sans';
  margin-bottom: 30px;
  color: rgba(33, 33, 33, 0.70);
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.home-team-grid .home-team-member:last-of-type {justify-self: flex-end;}

 
/* ===== Home Team – mobile ===== */
@media (max-width: 991px) {
  .home-team { padding: 48px 0; }

  .home-team-grid{
    display: grid;
    grid-template-columns: 1fr;    
    gap: 28px;
  }

 
  .home-team-center{ order: 1; }
  .home-team-member:first-of-type{ order: 2; }
  .home-team-member:last-of-type{ order: 3; }

  
  .home-team-logo{ width: 96px; height: auto; margin: 0 auto 12px; }
  .home-team-center h2{ font-size: 36px; margin-bottom: 8px; }
  .home-team-center p{ font-size: 16px; margin-bottom: 18px; }
  .home-team-center .btn-layout{ margin: 0 auto; display: inline-block; }

  
  .home-team-member{ text-align: center; }
  .home-team-member img{
    max-width: 220px;
    max-height: none;
    margin: 0 auto 14px;
    border-radius: 18px;
    width: 100%;
    height: auto;
  }
  .home-team-member h3{
    font-size: 26px;
    margin: 6px 0 6px;
    text-align: center;
  }
  .home-team-member a,
  .home-team-member p{
    font-size: 15px;
    text-align: center;
  }

   
  .home-team-grid .home-team-member:last-of-type{ justify-self: center; }
}


.home-blog {
  padding: 80px 0;
}

.home-blog-head {
  text-align: center;
  margin-bottom: 60px;
}

.home-blog-head h2 {
  font-family: "Bodoni Sans";
  margin-bottom: 10px;
  color: #212121;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.home-blog-head p {
  font-family: 'Bodoni Sans';
  color: rgba(33, 33, 33, 0.70);
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* Grid de posts */
.home-blog-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
  margin-bottom: 40px;
}

.home-blog-card {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 16px;
  padding: 20px;
  transition: box-shadow 0.3s ease;
}

.home-blog-card:hover {
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

.home-blog-img img {
  width: 100%;
  max-height: 306px;
  border-radius: 12px;
  object-fit: cover;
  margin-bottom: 16px;
}

 
.home-blog-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  color: #212121;
  font-family: "Bodoni Sans";
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 20px; /* 100% */
  margin-top: 24px;
  margin-bottom: 20px;
}

.home-blog-author {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}

.home-blog-date {
  color: #9A9A9A;
  font-family: 'Bodoni Sans';
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 16px; /* 80% */
}

/* Título e resumo */
.home-blog-card h3 {
  margin-bottom: 8px;
  overflow: hidden;
  color: #212121;
  text-overflow: ellipsis;
  font-family: "Bodoni Sans";
  font-size: 32px;
  font-weight: 600;
  line-height: normal;
}

.home-blog-img {
}

.home-blog-btn {
    justify-self: center;
}

.home-blog-card p {
  overflow: hidden;
  color: #212121;
  text-overflow: ellipsis;
  font-family: 'Bodoni Sans';
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px; /* 133.333% */
}

 

/* Responsivo */
@media (max-width: 991px) {
  .home-blog-grid {
    grid-template-columns: 1fr;
  }
}


/*===========================================================================================================*/
/*=========================================== INTERIOR ======================================================*/
/*===========================================================================================================*/
.internal-header {
  padding: 60px 0;
  text-align: center;
  background: #fff;
}

.internal-header .internal-subtitle {
  display: block;
  position: relative;
  color: #1B597E;
  font-family: 'Bodoni Sans';
  font-size: 32px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 24px;
}

.internal-header .internal-title {
  margin: 0;
  color: #1B597E;
  text-align: center;
  font-family: "Bodoni Sans";
  font-size: 72px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 24px;
}

.internal-header p {
    color: #212121;
    text-align: center;
    font-family: 'Bodoni Sans';
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.approachP p {color: rgba(33, 33, 33, 0.70);text-align: left;}


@media (max-width: 768px) {
  .internal-header {
    padding: 40px 20px;
  }

  .internal-header .internal-title {
    font-size: 58px;
  }

  .internal-header .internal-subtitle {
    /* font-size: 14px; */
  }
}

.about-row:nth-child(even) {
  background: #f9f9f9;
}

 
.about-row:nth-child(even) .about-img {
  order: 2;
}
.about-row:nth-child(even) .about-content {
  order: 1;
}
 .about-rows  .container-lg {
    padding:  0 0;
}

.about-rows {padding: 70px 0;background:#fff;}

.about-row {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 48px;
  align-items: start;
  margin-bottom: 80px;
  padding: 80px 60px;
}
.about-row:last-child { margin-bottom: 0; }

 

/* Imagem P&B com cantos arredondados */
.about-img {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  align-self: center;
}
.about-img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  border-radius: 24px;
}
.about-img::after{
  content:"";
  position:absolute; inset:0;
  border-radius:24px;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  pointer-events:none;
}
.about-row p{color: rgba(33, 33, 33, 0.70);font-size: 24px;font-style: normal;font-weight: 400;line-height: normal;margin-bottom: 20px;}

/* Conteúdo */
.about-row .about-eyebrow{
  margin-bottom:12px;
  color: #1B597E;
  font-size: 32px;
  font-style: italic;
  font-family: 'Bodoni Sans';
  font-weight: 400;
  line-height: normal;
}
.about-title{
  font-family:"Bodoni Sans";
  margin:0 0 18px;
  color: #212121;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.about-text{
  font-family:'Bodoni Sans', serif;
  margin-bottom:14px;
  color: rgba(33, 33, 33, 0.70);
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.about-text.small{ color:rgba(33,33,33,.70); }


.about-row p strong{
	color: #212121;
	font-family: "Bodoni Sans";
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.about-quote{
  font-family:"Bodoni Sans";
  font-size:20px;
  color:#212121;
  margin:18px 0 10px;
  font-weight:600;
}

 
@media (max-width: 991px){
  .about-row{
    display: flex;
    gap: 22px;
    flex-flow: column;
    margin-bottom: 56px;
    padding: 20px;
  }
  .about-row .about-img{ order:2; }
  .about-row.reverse .about-content{ order:1; }

  .about-title{ font-size:32px; }
  .about-text{ font-size:16px; }

 
.about-row:nth-child(odd) .about-img {
  order: 1;
}
.about-row:nth-child(odd) .about-content {
  order: 2;
}
.about-row:nth-child(even) .about-img {
  order: 1;
}
.about-row:nth-child(even) .about-content {
  order: 2;
}
}

.home-values {
  padding: 80px 0;
  background: #F9F9F9;
}

.section-header {
  text-align: center;
  margin-bottom: 50px;
}

.section-header .eyebrow {
  font-family: 'Bodoni Sans';
  display: block;
  margin-bottom: 12px;
  color: #1B597E;
  font-size: 32px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
}

.section-header h2 {
  font-family: "Bodoni Sans";
  color: #212121;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.values-grid {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
  justify-content: center;
}

.value-item {
  border-radius: 16px;
  padding: 30px 24px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.05);
  text-align: left;
  border: 1px solid rgba(33, 33, 33, 0.12);
  background: #F9F9F9;
  max-width: 350px;
  /* width: 100%; */
}

.value-item {}

.value-icon {
  background: #1B597E;
  color: #fff;
  font-size: 20px;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-bottom: 24px;
}

.value-item h3 {
  color: #212121;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #212121;
  font-family: "Bodoni Sans";
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin-bottom: 24px;
}

.value-item p {
  color: rgba(33, 33, 33, 0.70);
  font-family: 'Bodoni Sans';
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.pillars {
  padding: 80px 0;
  background: #F9F9F9;
  text-align: -webkit-center;
}

.pillars-head {
  text-align: center;
  margin-bottom: 40px;
}

.pillars-head h2 {
  font-family: "Bodoni Sans";
  margin: 0;
  color: #212121;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* Grid */
.pillars-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 28px 36px;
  /* max-width: 1010px; */
  /* justify-self: center; */
}

/* Card */
.pillars-card {
  border: 1px solid rgba(33, 33, 33, 0.12);
  background: #FAFAFA;
  border-radius: 16px;
  padding: 15px 28px;
  text-align: center;
  box-shadow: 0 4px 16px rgba(0,0,0,.04);
}

 
.pillars-icon {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1B597E;
  color: #fff;
}
.pillars-icon i {
  font-size: 20px;
  line-height: 1;
}

 
.pillars-card h3 {
  margin: 0 0 10px;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #212121;
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  color: #212121;
  text-align: center;
  font-family: 'Bodoni Sans';
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 36px */
}

.pillars-card p {
  margin: 0;
  color: rgba(33,33,33,.75);
  font-family: "Bodoni Sans", serif;
  font-size: 20px;
  line-height: 1.5;
}
 
@media (max-width: 991px) {
  .pillars-grid { grid-template-columns: 1fr; }
  .pillars-head h2 { font-size: 36px; }
}


.callsec h3{
	  font-family: "Bodoni Sans";
  margin: 0;
  color: #212121;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
	margin-bottom:20px
}
.callsec {
	background:#FFF
}
/* ===== Sets Apart ===== */
.sets-row{
  display:grid;
  grid-template-columns: 1.05fr 1fr;  
  gap: 88px;
  align-items: center;
}
.sets-btn-wrap{
  text-align:center;
  margin-top: 44px;
}

.sets-media{
  margin:0;
  position:relative;
  border-radius:24px;
  overflow:hidden;
}
.sets-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  border-radius:24px;
  aspect-ratio: 16/9;
}
 
.sets-media::after{
  content:"";
  position:absolute; inset:0;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  pointer-events:none;
}

.sets-content h2{
  margin:0 0 20px;
  font-family:"Bodoni Sans";
  color: #212121;
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

 ul.sets-list strong {
    display: contents;
}
.sets-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 40px;
  width: 80%;
}
.sets-list li{
  font-family:"Bodoni Sans";
  display:flex;
  align-items:flex-start;
  gap:10px;
  color: #212121;
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 36px */
}
.sets-list i{
  color:#1B597E;
  font-size: 20px;
  margin-top: 9px; 
}
@media (max-width: 1355px){
 .sets-list{
	 width:100%;
	 }
.sets-content{
	scale:0.8;
}
 }
@media (max-width: 991px){
  .sets-row{
    grid-template-columns: 1fr;  
    gap:24px;
  }
.sets-content{
	scale:1;
}
  .sets-content h2{ font-size:36px; }
  .sets-list{
    grid-template-columns: 1fr;  
    gap:14px 0;
  }
}

.approach-steps {
  padding: 70px 0;
  background: #F9F9F9;
  text-align: center;
}

.steps-title {
  font-family: "Bodoni Sans";
  font-weight: 400;
  font-size: 40px;
  color: #212121;
  margin-bottom: 42px;
}

 .steps-row{
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 18px;
}

 .timeline-step{
  flex: 1 1 20%;
  min-width: 160px;
  position: relative;
  padding: 0 10px;
}

 
.step-circle{
  width: 96px;
  height: 96px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: #1B597E;
  position: relative;
  z-index: 2;  
  display: grid;
  place-items: center;
  overflow: hidden;  
}
 
.step-circle span{
  color: #FFF;
  font-family: 'Bodoni Sans';
  font-size: 80px;
  font-weight: 400;
  line-height: 1;
  margin-bottom: 22px;
  transform: translateY(2px);
  margin-top: -5px;
}

 /*
.step-circle::after{
  content: "";
  position: absolute;
  inset: 0;
  background: url('<?php bloginfo('stylesheet_directory'); ?>/assets/img/reflex.svg') center/cover no-repeat;
  z-index: 3;
  pointer-events: none;
  mix-blend-mode: screen;  
  opacity: .9;
} */

/* textos */
.timeline-step h3{
  font-family: "Bodoni Sans";
  color: #212121;
  text-align: center;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #FFF;
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.timeline-step p{
  font-family: "Bodoni Sans";
  max-width: 220px;
  margin: 0 auto;
  color: rgba(33, 33, 33, 0.70);
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
}

/* ===== conectores entre os steps =====
   são adicionados dentro de cada .timeline-step (menos o último)
   e se estendem em direção ao próximo item.
*/


.timeline-step .connector:nth-child(even){
  position: absolute;
  top: -4px;            
  width: 70%;
  height: 50px;         
  transform: translateX(0);
   
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 1;           
  pointer-events: none;
}

.timeline-step:nth-child(odd) .connector {
  top: -4px;
  left: 68%;
}

.timeline-step:nth-child(even) .connector {
  position: absolute;
  top: 56px;             
  left: 68%;
   
}


.step-circle::after{
  content:"";
  position:absolute; inset:0;
  background: url('../img/reflex.svg') center/cover no-repeat;
  pointer-events:none;
  opacity:.9;
}

.timeline-step:nth-child(odd) .connector{
  background-image: url('../img/lineup.svg');
}
.timeline-step:nth-child(even) .connector{
  background-image: url('../img/linedown.svg');
}

.timeline-step .connector{
  background-repeat:no-repeat;
  /* background-position:left center; */
  background-size: contain;
  /* width: 84%; */
}

/* último item não tem conector */
.timeline-step:last-child .connector{ display: none; }

/* ===== responsivo ===== */
@media (max-width: 900px){
  .steps-row{
    flex-direction: column;
    align-items: center;
    gap: 28px;
  }
  .timeline-step{
    width: 100%;
    max-width: 340px;
  }
  .timeline-step .connector{ display:none; } 
}

.featured-serv-wrapper {
  display: grid;
  grid-template-columns: 400px 1fr;
  min-height: 400px;
  gap: 74px;
}

/* ===== Bloco Azul ===== */
.featured-serv-aside {
  background-color: #1B597E;
  color: #fff;
  padding: 80px 40px;
  display: flex;
  flex-direction: column;
  /* justify-content: center; */
  width: 100%;
  height: 100%;
  border-radius: 8px;
}
.featured-serv-aside h3 {
  font-family: "Bodoni Sans", serif;
  text-align: center;
  margin-bottom: 50px;
  position: relative;
  color: #FFF;
  font-size: 35px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.featured-serv-aside h3::before,
.featured-serv-aside h3::after {
  content: "—";
  margin: 0 8px;
  color: #fff;
}
.featured-serv-aside ul {
  list-style: none;
  padding: 0;
  margin: 0 0 80px;
  text-align: center;
  border-bottom: 1px solid #E6E6E6;
}
.featured-serv-aside li {
  margin-bottom: 12px;
  color: #FFF;
  font-family: "Bodoni Sans";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.featured-serv-aside li:last-child {
	margin-bottom:28px

}
 

 
.featured-serv-main {
  display: flex;
  flex-flow: column;
  gap: 40px;
  padding: 40px;
  /* align-items: center; */
  padding-top: 0;
}
.featured-serv-media {
  margin: 0;
  border-radius: 16px;
  overflow: hidden;
}
.featured-serv-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.featured-serv-subtitle {
  display: inline-block;
  font-family: "Bodoni Sans";
  margin-bottom: 20px;
  color: #1B597E;
  font-size: 32px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
}
.featured-serv-content h2 {
  font-family: "Bodoni Sans", serif;
  margin-bottom: 20px;
  color: #212121;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.featured-serv-content p {
  font-family: 'Bodoni Sans';
  color: rgba(33, 33, 33, 0.70);
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* ===== Responsivo ===== */
@media (max-width: 991px) {
  .featured-serv-wrapper {
    display: flex;
    grid-template-columns: 1fr;
    flex-flow: column-reverse;
  }
  .featured-serv-main {
    grid-template-columns: 1fr;
    padding: 20px;
  }
}


.service-focus {
  padding: 80px 0px;
  background: #fafafa;
  text-align: center;
}

.service-focus .section-title {
  font-family: "Bodoni Sans", serif;
  font-size: 32px;
  font-weight: 400;
  margin-bottom: 44px;
  color: #212121;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.service-focus-grid {
  display: flex;
  flex-wrap: wrap;         
  gap: 40px;
  justify-content: center; 
}

.service-focus-item {
  width: 450px;
  padding: 0 10px;
}


.service-focus-item .featured-serv-icon {
  background: #1B597E;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
}

.service-focus-item .featured-serv-icon svg {
  width: 66px;
  height: 66px;
  fill: #fff;
}

.service-focus-item h3 {
  font-family: "Bodoni Sans";
  margin-bottom: 15px;
  color: #212121;
  text-align: center;
  -webkit-text-stroke-width: 0.2px;
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.service-focus-item p {
  font-family: "Bodoni Sans";
  color: rgba(33, 33, 33, 0.70);
  text-align: center;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
}

@media (max-width: 768px) {
  .service-focus-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}

 

/* ===== Traits (cards) ===== */
.traits {padding: 40px 0;background: #FFF;}

.traits-grid{
  display: flex;           
  flex-wrap: wrap;         
  gap: 28px;              
  justify-content: center; 
}

.trait-card{
  width: 450px;           /* largura fixa do card */
  position: relative;
  border: 1px solid rgba(33,33,33,.12);
  background: #FAFAFA;
  border-radius: 16px;
  padding: 28px;
  box-shadow: 0 4px 16px rgba(0,0,0,.04);
}


.trait-icon{
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #1B597E;
  display: grid;
  place-items: center;
  margin-bottom: 24px;
}

.trait-icon img{
  width: 38px;
  height: auto;
  display: block;
}

.trait-card h3{
  margin: 0 0 8px;
  font-family: "Bodoni Sans";
  color: #212121;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #212121;
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.trait-card p{
  margin: 0;
  font-family: "Bodoni Sans";
  color: rgba(33, 33, 33, 0.70);
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
}

.traits-grid:has(> .trait-card:nth-child(2):last-child) {
  grid-template-columns: repeat(2, 360px);
  justify-content: center;
}
/* Responsivo */
@media (max-width: 991px){
  .traits-grid{ grid-template-columns: 1fr; }
}

/* Section */
.fees-title{
  font-family: "Bodoni Sans", serif;
  margin: 0 0 28px;
  color: #212121;
  text-align: center;
  font-size: 56px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.fees-note.toptable {margin-bottom: 30px;text-align: left;}
.fees-note.toptable p {
    font-family: 'Bodoni Sans';
    color: rgba(33, 33, 33, 0.70);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 25px;
}

.fees-note.toptable ul {
    justify-items: center;
    margin: 10px 0 25px;
}

.fees-note.toptable li {justify-self: left;font-family: 'Bodoni Sans';color: rgba(33, 33, 33, 0.70);font-size: 20px;font-style: normal;font-weight: 400;line-height: normal;margin-bottom: 12px;}
.fees-table-wrap{
  /* background:#fff; */
  /* border-radius: 12px; */
  /* box-shadow: 0 10px 24px rgba(0,0,0,.06); */
  /* overflow: hidden; */
}

/* Table base */
.fees-table{
  width: 100%;
  border-collapse: collapse;
  font-family: "Bodoni Sans";
}

.fees-table thead th{
  background:#1B597E;
  text-align:left;
  padding: 16px 20px;
  letter-spacing:.02em;
  color: #FFF;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #FFF;
  font-family: 'Bodoni Sans';
  font-size: 30px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.fees-table tbody td{
  padding: 16px 20px;
  border-top: 1px solid rgba(0,0,0,.06);
  color: #212121;
  -webkit-text-stroke-width: 0.2px;
  font-family: "Bodoni San";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* zebra */
.fees-table tbody tr:nth-child(odd){ background:#FAFAFA; }
.fees-table tbody tr:nth-child(even){background: #E6E6E6;}

/* Note */
.fees-note{
  margin-top: 12px;
  color: #212121;
  text-align: center;
  -webkit-text-stroke-width: 0.2px;
  font-family: 'Bodoni Sans';
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* ---------- Mobile cards ---------- */
@media (max-width: 768px){
  .fees-title{/* font-size: 32px; */}

  .fees-table thead{
    
    position: absolute;
    width:1px; height:1px; overflow:hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .fees-table, .fees-table tbody, .fees-table tr, .fees-table td{
    display: block;
    width: 100%;
    justify-self: center;
  }

  .fees-table tbody tr{
    background:#fff !important;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 12px;
    margin: 14px 14px;
    box-shadow: 0 6px 16px rgba(0,0,0,.05);
    overflow: hidden;
  }

  .fees-table tbody td{
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 12px;
    align-items: start;
    border: none;
    padding: 14px 16px;
    font-size: 1.1rem;
  }

  .fees-table tbody td::before{
    content: attr(data-label);
    font-family: "Bodoni Sans", serif;
    color:#1B597E;
    font-size: 14px;
    letter-spacing:.02em;
  }

   .fees-table tbody td + td{
    border-top: 1px dashed rgba(0,0,0,.08);
  }
}


/* ===== Team hero ===== */
.team-hero { padding: 10px 0 0; background:#fff; }
.team-hero-media {
  border-radius: 18px;
  overflow: hidden;
  /* height: 1000px; */
}
.team-hero-media {
  --swiper-theme-color: #8ACFBA;            
  --swiper-pagination-color: #8ACFBA;        
  --swiper-navigation-color: #8ACFBA;        
}
.team-hero-media .swiper-button-prev,
.team-hero-media .swiper-button-next {
  display: none !important;
}

figure.team-hero-media {}
.team-hero-media img{
  width:100%;
  /* height: 1800px; */
  display:block;
  object-fit:cover;
}

/* ===== Team section layout ===== */
.team-section {background:#fff;padding: 40px 60px 30px;}
.team-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  align-items: start;
}
section.team-section.section-white .container-lg {
    padding: 0;
}

/* Left column */
.team-eyebrow{
  display:inline-block;
  font-family:'Bodoni Sans';
  margin-bottom: 8px;
  color: #1B597E;
  font-size: 32px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
}
.team-title{
  font-family:"Bodoni Sans", serif;
  margin: 0 0 12px;
  color: #212121;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.team-intro{
  font-family:'Bodoni Sans';
  margin-bottom: 26px;
  color: rgba(33, 33, 33, 0.70);
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.team-subtitle{
  font-family:"Bodoni Sans", serif;
  margin: 24px 0 14px;
  color: #212121;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.team-content ul.checklist li:before {
    top: 3px;
}
.container-lg.team-grid {
    padding-right: 0;
    /* display: grid; */
}
 .checklist{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.checklist li{
  position:relative;
  padding-left: 43px;
  font-family:'Bodoni Sans';
  color: #212121;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 30px */
}
.checklist li::before{
  content:"";
  position:absolute;
  left:0;
  top:6px;
  width: 24px;
  height: 24px;
  border-radius:50%;
  background:#1B597E;
  box-shadow: 0 0 0 3px rgba(27,89,126,.15);
}
.checklist li::after{
  content:"\f00c"; /* fa-check */
  font-family:"Font Awesome 6 Pro";
  color:#fff;
  font-weight:900;
  position:absolute;
  left: 5px;
  top: 7px;
  font-size: 15px;
  line-height:1;
}

/* Right column – teal card */
.team-card{
    background: #1B597E;
    border-radius: 16px;
    padding: 80px 50px;
    color: #fff;
    /* margin: 40px 60px 50px; */
    height: 100%;
    width: 100%;
    justify-self: center;
    margin-top: 40px;
    /* box-shadow: 0 10px 28px rgba(0,0,0,.12); */

}

.team-card-name {
  position: relative;
  display: inline-block;   
  padding-bottom: 20px;
   
}

.team-card-name::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 450px;  
  height: 1px;
  background-color: #fff;
  opacity: 1;
}
.team-card-title {
  position: relative;
  display: inline-block;
  padding-bottom: 20px;
  /* padding-top:20px; */
}

.team-card-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 450px;
  height: 1px;
  background-color: #fff;
  opacity: 1;
}

.team-card-bio {
     padding-bottom: 20px;
     padding-top: 10px;
}

.team-card-bio::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 450px;  
  height: 1px;
  background-color: #fff;
  opacity: 1;
  
}



.team-card-inner{
   border-radius:12px;
   display: flex;
   gap: 100px;
   justify-content: unset;
 }
 
.team-card-name{
  margin: 0 0 8px;
  color: #FFF;
  font-family: "Bodoni Sans";
  font-size: 36px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.team-card-title {
	color: #212121;
	font-family: 'Bodoni Sans';
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
.asideleft {align-content: flex-start;}

.asideright {
}
.team-card-title strong {
	color: #000;
	font-family: "Bodoni Sans";
	font-size: 36px;
	font-style: normal;
	font-weight: 400;
	margin-right: 5px;
	line-height: normal;
}
.team-card-bio p{
  margin: 10px 0 18px;
  color: #FFF;
  font-family: "Bodoni Sans";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

 .team-socials{
  display:flex;
  gap:10px;
  margin-bottom: 40px;
}
.team-socials .fa-brands,
.team-socials .fa-regular{ transform: translateY(0.5px); }

 .team-cta{ display:inline-block; }

/* ===== Responsivo ===== */
@media (max-width: 991px){
  .team-grid{
    grid-template-columns: 1fr;
    gap: 24px;
    /* padding: 20px!important; */
  }
.team-section {background:#fff;padding: 20px 20px 80px;}

  .team-title{ font-size: 36px; }
  .team-intro{ font-size: 18px; }
  .team-card{order: 2;justify-self: center;width: 100%;}
  .team-content{ order: 1; }
	.team-card-title::after, .team-card-name::after, .team-card-bio::after {
		display:none;
	}
		.team-card-title, .team-card-name, .team-card-bio {
			border-bottom: 1px white solid;
		}


}

 .team-card-name,
.team-card-title,
.team-card-bio{
  position: relative;
  display: block;
  padding-right: 10px;
  /* padding-bottom: 16px; */
  /* margin-bottom: 16px; */
  max-width: 1010px;
}

 .team-card-name::after,
.team-card-title::after,
.team-card-bio::after{
  content: "";
  position: absolute;
  inset-inline: 0;
  /* left:0; right:0; respeita padding do card */
  bottom: 9px;
  height: 1px;
  background-color: #fff;
  opacity: 1;
  max-width: var(--divider-width, 420px);
  margin-inline: 0;            /* alinhar à esquerda; use auto para centralizar */
}

/* Alinhar à esquerda (padrão) */
.team-card-name::after,
.team-card-title::after,
.team-card-bio::after{
  left: 0;
  right: auto;
}

 a.phone-blue {
    background: none!important;
    border-radius: 0;
    margin-left: 30px;
}

 @media (max-width: 991px){
 .team-socials{margin-top:20px;}
  .team-grid{grid-template-columns: 1fr;gap: 24px;/* padding: 20px!important; */}
  .team-card{order: 2;justify-self: center;width: 100%;padding-left: 20px;padding-right: 20px;}
	.team-card-inner {flex-flow:column;gap: 0px;}
   .team-card-name::after,
  .team-card-title::after,
  .team-card-bio::after{
    max-width: none;           
    inset-inline: 0;            
    left: 0; right: 0;
    transform: none;
  }
.asideright {
    align-self: anchor-center;
}
}


/* ===== Cabeçalho da página de news ===== */
.news-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 40px;
}

.news-head-left h2 {
  margin: 0 0 10px;
  color: #212121;
  font-family: "Bodoni Sans";
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.news-head-left p {
  font-size: 18px;
  color: #555;
  margin: 0;
}

/* ===== Filtros ===== */
.news-head-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
section.home-blog.section-white.news-section {
    background: #FFF;
}
.news-head-filters .filter {
  display: inline-block;
  padding: 12px 18px;
  background: #F9F9F9;
  /* border: 1px solid #1B597E; */
  border-radius: 10px;
  text-decoration: none;
  transition: all 0.3s ease;
  color: #757575;
  font-family: 'Bodoni Sans';
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 20px */
}

.news-head-filters .filter:hover {
  background: #1B597E;
  color: #fff;
}

.news-head-filters .filter.active {
  background: #1B597E;
  color: #fff;
}


/* ===== Responsivo ===== */
@media (max-width: 768px) {
  .news-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .news-head-filters {
    justify-content: flex-start;
  }
}


.internal-header .home-blog-meta {justify-content: center;}
.news-details-banner {
    max-height: 594px;
}

.news-details-content h2 {
    color: #212121;
    font-family: "Bodoni Sans";
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 44px;
}
.news-details-grid {
  display: grid;
  grid-template-columns: 1fr 450px;
  gap: 45px;
  margin-top: 50px;
}

section.news-details.section-white {
    background: white;
}

.news-details-content p {
    margin-bottom: 50px;
}

.news-details-content ul li {
    color: #161722;
    font-family: "Bodoni Sans Text";
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 32px; /* 133.333% */
}
.news-details-content ul{
    margin-bottom:20px;
}
 aside.news-sidebar h3 {
    color: #212121;
    font-family: "Bodoni Sans Text";
    font-size: 48px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    margin-bottom: 32px;
}

.news-details-banner img {
  width: 100%;
  border-radius: 12px;
  margin-bottom: 30px;
  max-height: 594px;
  object-fit: cover;
}

.news-sidebar .home-blog-card {
  margin-bottom: 20px;
}

@media (max-width: 991px) {
  .news-details-grid {
    grid-template-columns: 1fr;
  }
}
/* ===== Contact - layout ===== */
.contact-grid{
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 108px;
  align-items: start;
}

.contact-eyebrow{
  font-family:'Bodoni Sans';
  display:inline-block;
  margin-bottom:14px;
  color: #1B597E;
  font-size: 32px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
}

.contact-title{
  font-family:"Bodoni Sans", serif;
  margin: 0 0 24px;
  color: #212121;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.contact-copy p{
  font-family:'Bodoni Sans';
  margin:0 0 14px;
  color: rgba(33, 33, 33, 0.70);
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 36px */
}

/* ===== Cartão ===== */
.contact-card{
  background:#fff;
  border-radius:16px;
  padding:28px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  border:1px solid rgba(33,33,33,.08);
}

.contact-card h3{
  font-family:"Bodoni Sans";
  margin:0 0 14px;
  color: #212121;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

section.contact-hero.section-white {
    background: white;
}
/* Placeholder do form (substituir por Gravity Forms) */
.contact-form-placeholder{
  display:grid;
  gap:14px;
}

.contact-form-placeholder input,
.contact-form-placeholder textarea{
  width:100%;
  border:1px solid #8bb1c6;
  border-radius:10px;
  padding:14px 16px;
  font-size:16px;
  outline:none;
  background:#fff;
}

.contact-form-placeholder input:focus,
.contact-form-placeholder textarea:focus{
  box-shadow:0 0 0 3px rgba(27,89,126,.15);
  border-color:#1B597E;
}

.contact-form-placeholder .btn-layout{
  justify-self:start;
}

/* ===== Responsivo ===== */
@media (max-width: 991px){
  .contact-grid{
    grid-template-columns: 1fr;
    gap:24px;
  }
  .contact-title{ font-size:38px; }
  .contact-card{ padding:22px; }
}


/* ===== Contact – Map section ===== */
.contact-locations-grid{
  display:grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 0;
  align-items:stretch;
}

/* Card */
.location-card{
  background:#1B597E;
  color:#fff;
  border-radius:16px;
  padding:34px 38px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
  justify-items: center;
  padding: 20%;
}

.location-title{
  margin:0 0 18px;
  font-family:"Bodoni Sans";
  color: #FFF;
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%; /* 36px */
  letter-spacing: 0.48px;
}

.location-list{
  list-style:none;
  padding:0; margin:0;
  display:grid; gap:18px;
}

.location-list li{
  display:grid;
  grid-template-columns: 26px 1fr;
  align-items:start;
  gap:12px;
  color: #FFF;
  font-family: 'Bodoni Sans';
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 24px */
  letter-spacing: 0.32px;
}

.location-list i{
  font-size:18px;
  color:#CDE7DD; /* leve contraste no ícone */
  transform: translateY(2px);
}

.location-list a{
  color:#fff;
  text-decoration:none;
  border-bottom:1px solid transparent;
  color: #FFF;
  font-family: 'Bodoni Sans';
  font-size: 19px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 24px */
  letter-spacing: 0.32px;
}
.location-list a:hover{ border-bottom-color:rgba(255,255,255,.6); }

/* Mapa */
.location-map{
  border-radius:16px;
  overflow:hidden;
  height: 624px;
  /* box-shadow:0 10px 30px rgba(0,0,0,.08); */
  /* background:#eee; */
  align-content: center;
}
section.contact-locations.section-white .container-lg {
    padding: 0px 0;
}
.location-map {}
.location-map iframe{
  display:block;
  width:100%;
  height: 85%;
  border:0;
}

/* Responsivo */
@media (max-width: 991px){
  .contact-locations-grid{
    grid-template-columns:1fr;
    display: flex;
    flex-flow: column-reverse;
  }
  .location-map iframe{
    height: 100%;
  }
	section.contact-locations.section-white {
	    padding: 0;
	}
.location-card {
	border-radius:0;
}
.location-map{border-radius:0}
}

.news-details-grid a {
    color: rgba(33, 33, 33, 0.80);
}

section.section-white.scroll.errorpage h2 {
    font-family: "Bodoni Sans";
    margin-bottom: 20px;
    color: #FFF;
    text-align: left;
    font-size: 64px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    color: black;
}

section.section-white.scroll.errorpage p {
    margin: 0 0 0;
    color: rgba(33, 33, 33, 0.80);
    font-family: "Bodoni Sans";
    font-size: 25px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px; /* 133.333% */
    margin-bottom: 15px;
}

/*===========================================================================================================*/
/*=========================================== 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);
	}
}

/*===========================================================================================================*/
/*=========================================== BOTTOM ========================================================*/
/*===========================================================================================================*/
.parallax-bottom {
  position: relative;
  min-height: 530px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

 
.parallax-bottom-img {
  position: absolute;
  top: -15%;
  left: 0;
  height: 130%;
  width: 100%;
  object-fit: cover;
  object-position: center;
  will-change: transform;
  z-index: 1;
  transform: translateY(0px);
}

 


.parallax-bottom-img {
  position: absolute;
  left: 0;
  top: -15%;
  width: 100%;
  height: 130%;
  object-fit: cover;
  object-position: bottom;
  will-change: transform;
  /* NÃO use transition aqui */
}

/* Overlay azul */
.parallax-bottom-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(27, 89, 126, 0.80), rgba(27, 89, 126, 0.80));
  z-index: 2;
  pointer-events: none;
}

/* Conteúdo sobreposto */
.parallax-bottom-content {
  position: relative;
  z-index: 3;
  color: #fff;
  padding: 60px 20px;
}

.parallax-bottom-content h2 {
  font-family: "Bodoni Sans";
  margin-bottom: 20px;
  color: #FFF;
  text-align: center;
  font-size: 64px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.parallax-bottom-content p {
  font-family: 'Bodoni Sans';
  margin-bottom: 44px;
  color: #FFF;
  text-align: center;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px; /* 120% */
}

/* Responsivo */
@media (max-width: 768px) {
  .parallax-bottom-content h2 {
    font-size: 34px;
  }

  .parallax-bottom-img {
    height: 140%;
  }
}


.bottom-team {padding-bottom: 80px;background:#fff;}

.bottom-team-grid{
  display:grid;
  grid-template-columns: 0.9fr 1fr 1fr;
  gap: 32px;
  align-items:start;
}

/* Intro */
.bottom-team-intro {padding-right:10px;align-self: center;max-width: 450px;}
.bottom-team-logo {width: 160px;height:auto;margin-bottom:18px;}
.bottom-team-intro h2{
  font-family:"Bodoni Sans";
  margin: 0 0 0px;
  color: #212121;
  text-align: left;
  font-size: 56px;
  font-weight: 400;
  line-height: normal;
}
.bottom-team-intro p{
  font-family:"Bodoni Sans";
  color:rgba(33,33,33,.8);
  font-size:18px;
  line-height:1.6;
  color: rgba(33, 33, 33, 0.70);
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* Card */
.teamcard{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  background:#eee;
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
}
.teamcard-media{
  position:relative;
  aspect-ratio: 4/5;
  overflow:hidden;
}
.teamcard-media img{
  width:100%; height:100%;
  object-fit:cover; object-position:center;
  display:block;
}

/* Overlay gradiente */
.teamcard-media::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.60) 100%);
  pointer-events:none;
}

/* Texto */
.teamcard-content{
  position:absolute;
  left:0; right:0; bottom:0;
  padding:18px 22px;
  color:#fff;
  z-index:2;
}
.teamcard-content h3{
  margin:0 0 6px;
  font-family:"Bodoni Sans";
  color: #FFF;
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.teamcard-content span{
  display:block;
  color: var(--Grays-White, var(--Grays-White, #FFF));
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

/* o link ocupa o card inteiro */
.teamcard a{
  display:block;
  position:relative;
  border-radius:24px;
  overflow:hidden;
  cursor:pointer;
  text-decoration:none;
  color:inherit;  
}

 
.teamcard-media img{
  /* filter: grayscale(100%); */
  transition:
    transform .6s cubic-bezier(.22,.61,.36,1),
    filter .35s ease;
  will-change: transform, filter;
}

 
.teamcard-media::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.60) 100%);
  pointer-events:none;
  z-index:1;
}

 
.teamcard-content{
  position:absolute; left:0; right:0; bottom:0;
  padding:18px 22px; color:#fff; z-index:2;
}

 
.teamcard a:hover .teamcard-media img,
.teamcard a:focus-visible .teamcard-media img{
  filter: none;
  transform: scale(1.06) translateY(-4px);
}

 
.teamcard a:focus-visible{
  outline: 2px solid #1B597E;
  outline-offset: 3px;
  border-radius:24px;
}


/* Responsivo */
@media (max-width: 991px){
  .bottom-team-grid{
    /* display: flex; */
    /* flex-flow: column; */
    grid-template-columns: 1fr;
    gap:24px;
    justify-self: anchor-center;
  }
.teamcard {
	max-width: 650px;
	/* place-self: center; */
}
  .bottom-team-intro{
    text-align:center;
    padding-right:0;
    max-width: 100%;
    justify-items: center;
  }
  .bottom-team-logo{ margin:0 auto 12px; }
  .teamcard-media{aspect-ratio: 1;}
.teamcard-media img{
object-position:top;
}
}


 



/*===========================================================================================================*/
/*=========================================== FOOTER ========================================================*/
/*===========================================================================================================*/


.site-footer {
  position: relative;
  background-color: #f9f9f9;
  padding: 100px 60px;
  overflow: hidden;
}

.site-footer::before {
  content: "";
  position: absolute;
  top: -15px;
  left: 0;
  width: 100%;
  height: 107%;
  background: url('/wp-content/uploads/2025/07/footer-background.png') center/contain no-repeat;
  opacity: 0.1;
  z-index: 0;
  pointer-events: none;
}

.footer-wrapper {
  position: relative;
  z-index: 1;
  display:flex;
  /* gap: 98px; */
  flex-wrap: wrap;
  place-content: space-between;
}
.footer-left {
  /* flex: 1 1 200px; */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-right: 30px;
  border-right: 1px solid rgba(33, 33, 33, 0.20);
}

.footer-left {}

.footer-logo {
  max-width: 310px;
  margin-bottom: 20px;
}

.footer-socials a {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 width: 48px;
 height: 48px;
 color: #FFF;
 font-size: 24px;
 margin-right: 15px;
 border-radius: 50%;
 background: #8ACFBA;
 transition: opacity 0.2s ease;
 text-decoration: none;
}

.footer-socials a:hover {
  opacity: 0.7;
}

.footer-middle {
  /* flex: 2 1 300px; */
  /* margin-right: 180px; */
}

.footer-middle h4 {
  margin-bottom: 15px;
  color: var(--Dark, #212121);
  font-family: "Bodoni Sans";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.footer-links > li {
  margin-bottom: 10px;
  color: var(--Primary-Color, #1B597E);
  font-family: 'Bodoni Sans';
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.footer-links a {
  color: #000;
  text-decoration: none;
  font-size: 16px;
}

.footer-links ul {
  margin-top: 5px;
  padding-left: 20px;
}

.footer-links ul li {
  font-size: 14px;
  /* text-transform: uppercase; */
  margin-bottom: 4px;
}

.footer-right {
  /* flex: 1 1 300px; */
}

.footer-right h4 {
  margin-bottom: 15px;
  color: var(--Dark, #212121);
  font-family: "Bodoni Sans";
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.footer-form {
  display: flex;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
  overflow: hidden;
  padding: 24px;
  flex-flow: column;
}

.footer-form input {
  flex: 1;
  padding: 14px;
  border: none;
  font-size: 15px;
  outline: none;
}

.footer-form button {
  background: #1b597e;
  color: #fff;
  padding: 0 20px;
  font-size: 15px;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.2s ease;
}

.footer-form button:hover {
  background: #154865;
}

.footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-links > li {
  margin-bottom: 10px;
}

.footer-parent {
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 500;
}

.footer-toggle {
  font-size: 12px;
  color: #1B597E;
  display: inline-block;
}

.footer-links a {
  text-decoration: none;
  display: inline-block;
  color: var(--Primary-Color, #1B597E);
  font-family: 'Bodoni Sans';
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.footer-links .sub-menu {
  list-style: none;
  padding-left: 16px;
  margin-top: 6px;
}

.footer-links .sub-menu li {
  position: relative;
  padding-left: 12px;
  margin-bottom: 6px;
}

.footer-links .sub-menu li::before {
  content: "›";
  position: absolute;
  left: 0;
  color: #11456C;
  font-size: 20px;
  line-height: 1;
}

@media (max-width: 1149px) {
	.footer-wrapper {
		flex-direction: column-reverse;
		gap: 20px;
		
	}

	.footer-left {
		border-right:none;
	}
.site-footer.container{
	padding:20px
}
} 
@media (max-width: 768px) {
  .footer-wrapper {
     
  }

  .footer-left,
  .footer-middle,
  .footer-right {
    flex: 1 1 100%;
    max-width: 100%;
    /* flex-flow: column-reverse; */
    /* gap: 20px; */
  }

  .footer-form {
    flex-direction: column;
  }

  .footer-form input,
  .footer-form button {
    width: 100%;
    border-radius: 0;
  }

  .footer-form button {
    border-top: 1px solid #ddd;
  }

  .footer-socials {
    /* justify-content: center; */
  }
}

/*===========================================================================================================*/
/*=========================================== MOBILE ========================================================*/
/*===========================================================================================================*/
@media (min-width: 1920px){
  .about-content p{
    font-size:24px;
  }
.about-row .about-eyebrow {
 font-size:45px
}
  .about-row p strong {
      font-size:30px;
  }
}

@media (min-width: 992px){
  .hideDesk{
    display:none!important;
  }
}
@media (max-width: 991px){
.container, .container-lg {
    padding: 0 20px;
	}
.values-grid {
	width:100%
}

.featured-serv {
	padding-left:20px;
	padding-right:20px;
}
.home-approach-grid{padding-left:0px;}

.value-item {
 max-width:100%;
}
.values-grid {}
 .hideMob {
    display: none!important;
}
	.footer-left{
        flex-flow: column-reverse;
        gap: 20px;
}
	.footer-form a{
		margin-top:5px
	}
  .menuBtn{
    display:none;
  }
.home-approach-cards { 
  max-height: none;   
}
.home-approach-content {
	display:flex;
	flex-flow:column;
}
	.home-approach-card {
	justify-items: center;
	}
  .btn-layout.hideDesk{
    margin-top:10px;
  }
}

@media (max-width: 782px) {
.home-approach-grid{padding-left:0px;}

}

@media (max-width: 768px){
	.featured-serv-icon {
		width:50px;
		height:50px;
	}
.featured-serv-media .featured-serv-icon img {
  width: 28px;
  height: 35px;
  fill: #fff;	 
}
	.featured-serv-icon svg {
		width: 28px;
	    height: 60px;
	}

.sets-media img {
	aspect-ratio:1;
}
}
@media (max-width: 465px){
.featured-serv-aside h3 {
  font-size:26px;
}

}

ul.footer-links .fa-solid {
    display: none;
}

p.smallcopy {
    font-size: 11px;
    /* max-width: 260px; */
    margin-top: 20px;
    text-align: center;
    text-transform: capitalize;
}

p.smallcopy a {
    font-size: 11px;
    color:var(--Primary-Color, #1B597E);
}   