/*
Theme Name: Legal Joint Venture
Text Domain: legaljv
Version: 1.20231213.01

Description: LegalJV 2023 theme.
Author: INTG
Author URI: https://intg.pt/
*/

/*
Cores
Brand Green: #0f7139
Gold: #ccad7e
Light cool gray: #e5f5ff
Medium cool gray: #c9d7e0
Cool gray: #b3c0c8
Dark cool gray: #9ba6ad
Dark gray: #444
*/

/* DEV */
.intg-dev-sizes {
	height: 25px;
	display: inline-block;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 99999;
	opacity: 0.5;
}
body {
/*	padding-bottom: 25px; /* DEV BANNER */
}

/* BOOTSTRAP */
@media (min-width: 1200px) { /* XL> */
	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl {
		max-width: 1040px;
	}
}
/* BOOTSTRAP */

/* GLOBAL */
body {
	font-family: 'Lato', sans-serif;
	line-height: 1.5em;
}
::selection { /* text selection background color */
	background-color: #b7d4c3; /* Verde marca 30% */
}
.ljv-content-block {
	margin-bottom: 6rem;
}
.ljv-zoom {
  transition: transform .2s;
}
.ljv-zoom:hover {
  transform: scale(1.1);
}
/* /GLOBAL */

/* BACKGROUND */
.ljv-bg-green {
	background-color: #0f7139;
}

/* BREADCRUMBS */
.ljv-breadcrumbs-block {
	font-size: 0.9em;
	font-weight: 400;
	margin-bottom: 50px;
	line-height: 2em;
}
.ljv-breadcrumbs a {
	font-weight: 400;
	color: #0f7139;
	padding-bottom: 2px;
}
.ljv-breadcrumbs a span {
	font-weight: 700;
}
.ljv-breadcrumbs a:before {
	content: "\f060";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 0.9rem;
	color: #0f7139;
	margin-right: 5px;
}
.ljv-breadcrumbs-block a:hover {
	color: #0f7139;
	border-bottom: 2px solid #0f7139;
}
@media (min-width: 768px) { /* MD> */
	.ljv-breadcrumbs-block {
		font-size: 1em;
	}
	.ljv-breadcrumbs a {
		padding-bottom: 3px;
	}
}
/* /BREADCRUMBS */

/* TEXT */
strong {
	font-weight: 700;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'EB Garamond', serif;
	font-weight: 400;
	line-height: 1.25em;
}
.ljv-title-xlight {
	font-weight: 200;
}
p, #ljv-maincontent li {
	font-family: 'EB Garamond', serif;
	line-height: 1.45em;
	font-size: 1.25em;
}
#ljv-maincontent p.ljv-plist {
	border-left: 2px solid #0f7139;
	padding-left: 15px;
}
.in-text-center {
	text-align: center;
}
.in-text-left {
	text-align: left;
}
.in-text-right {
	text-align: right;
}
.ljv-columncount-2 {
	column-count: 0;
	column-gap: 40px;
}
.ljv-columncount-2 p {
	break-inside: avoid-column;
}
p.ljv-column-break {
	break-inside: auto;
}
@media (min-width: 768px) { /* MD> */
	.ljv-columncount-2 {
		column-count: 2;
	}
}
body.home h2 {
	font-size: 2.5rem;
	line-height: 1.25em;
}
body.home h3 {
	font-family: 'Lato', sans-serif;
	font-size: 1rem;
	line-height: 1.25em;
	color: #b3c0c8;
	text-transform: uppercase;
	padding: 0;
	margin: 0 0 0.25rem 0;
}
body.home h3:before {
	content: "//";
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	text-decoration: inherit;
	color: #9ba6ad;
	padding-right: 0.25em;
}
#ljv-maincontent-title {
	padding-bottom: 4em;
}
#ljv-maincontent-title h1 {
	color: #0f7139;
	font-size: 3rem;
	line-height: 1.1em;
	margin: 0;
	padding: 0;
}
#ljv-maincontent-title h2 {
	font-family: 'Lato', sans-serif;
	font-size: 1.2rem;
	line-height: 1.1em;
	color: #9ba6ad;
	text-transform: uppercase;
	padding: 0;
	margin: 0;
	margin-bottom: 0.15em;
}
.ljv-columncount-2 {
	column-count: 0;
	column-gap: 40px;
}
.ljv-columncount-2 p {
	break-inside: avoid-column;
}
p.ljv-column-break {
	break-inside: auto;
}
@media (min-width: 768px) { /* MD> */
	.ljv-columncount-2 {
		column-count: 2;
	}
	#ljv-maincontent-title h1 {
		font-size: 4rem;
	}
	#ljv-maincontent-title h2 {
		font-size: 1.3rem;
	}
}
/* /TEXT */


/* Links */
a,
a:hover {
	outline: none;
	text-decoration: none;
	color: black;
}
/* /Links */

/* COLORS */
.ljv-black {
	color: black;
}
.ljv-white {
	color: white;
}
.ljv-green {
	color: #0f7139;
}
.ljv-gold {
	color: #ccad7e;
}
.ljv-lightcoolgray {
	color: #e5f5ff;
}
.ljv-mediumcoolgray {
	color: #c9d7e0;
}
.ljv-coolgray {
	color: #b3c0c8;
}
.ljv-darkcoolgray {
	color: #9ba6ad;
}
.ljv-darkgray {
	color: #555;
}
/* /COLORS */


/* ACCESSIBILITY */
.screenreader-text {
  position: absolute;
  left: -999px;
  width: 1px;
  height: 1px;
  top: auto;
}
.screenreader-text:focus {
  color: black;
  display: inline-block;
  height: auto;
  width: auto;
  position: static;
  margin: auto;
}
/* /ACCESSIBILITY */

/* WRAPPER */
#ljv-site-container {
	background-color: #0f7139;
	position: relative;
	/* width: 100vw; */
	overflow: hidden; /* Cria problema com scroll em Safari? Usar overflow. */
	/* transition: all .5s cubic-bezier(.6,.2,.1,1); /* Desnecessário */
}
#ljv-site-wrapper {
	min-height: 100vh;
	z-index: 10;
	transition:	all .4s cubic-bezier(.6,.2,.1,1)
}
#ljv-site-wrapper-content {
	background-color: white;
	display: inline-block;
	width: 100vw;
}
#ljv-site-wrapper-nav {
	display: inline-block;
	top: 0;
	left: auto;
	right: auto;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;
/*	background: #231f20; */
	background-color: #042211;
	transition:	all .4s cubic-bezier(.6,.2,.1,1)
}
#ljv-site-wrapper-nav.ljv-site-wrapper-nav-closed {
	display: none;
}
#ljv-site-wrapper-nav .ljv-site-wrapper-nav-container {
	position: fixed;
	box-sizing: content-box;
	width: 100%;
	height: 100%;
	padding-bottom: 0;
	overflow-y: scroll;
}
@media (max-width: 575.98px) { /* <XS */
	#ljv-site-wrapper-nav {
		display: inline-block;
		position: fixed;
		/*top: 5rem;*/
		top: 0;
		right: auto;
		bottom: 0;
		left: 100vw;
		width: 100%;
		height: 100%;
	}
	#ljv-site-container.ljv-mobilemenu-active #ljv-site-wrapper-nav {
		left: 0;
		right: 0;
	}
	#ljv-site-wrapper-nav.ljv-site-wrapper-nav-closed {
		display: inline-block;
	}
	#ljv-site-wrapper-nav.ljv-site-wrapper-nav-closed .ljv-menu-mobile-close {
		display: none;
	}
}
@media (min-width: 576px) { /* SM> */
	#ljv-site-wrapper {
		width: calc(100vw + 400px);
	}
	#ljv-site-container.ljv-mobilemenu-active #ljv-site-wrapper {
		margin-left: -25rem; /* mostra menu */
	}
	#ljv-site-wrapper-nav {
		position: absolute;
		top: 0;
		right: auto;
		bottom: 0;
		left: auto;
		width: 25rem;
		height: 100%;
	}
	#ljv-site-wrapper-nav .ljv-site-wrapper-nav-container {
		width: 25rem;
	}
}
/* /WRAPPER */

/* HEADER */
.ljv-site-header {
	padding-top: 20px;
	padding-bottom: 80px;
	margin-bottom: 0px;
}
body.home .ljv-site-header {
	padding-bottom: 20px;
	margin-bottom: 0px;
}
body.equipa.membro-equipa .ljv-site-header {
	padding-bottom: 40px;
}
.ljv-header-right {
	flex: 1;
	text-align: right;
}
.ljv-logo-top {
	width: 150px;
	height: auto;
	margin-right: 25px;
}
.ljv-logo-top .ljv-logo-legaljv {
	max-width: 100%;
}
.ljv-menu-mobile-trigger-container {
	height: 40px;
}
.ljv-menu-mobile-trigger-main {
	display: inline-block;
	width: 2.5rem;
	height: 2.5rem;
	margin: 0;
	font-size: 1.5rem;
	cursor: pointer;
	border: none;
	position: relative;
}
.ljv-menu-mobile-trigger-main:focus {
	outline: 0;
}
.ljv-menu-mobile-trigger-main:before {
	content: "\f0c9";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #1d1d1b;
	vertical-align: middle;
	position: absolute;
	margin-left: 50%;
	margin-top: 50%;
	transform: translate(-50%,-50%);
}
.ljv-mobilemenu-active .ljv-menu-mobile-trigger-main:before {
	content: "\f00d";
}
.ljv-menu-mobile-close {
	font-size: 1.2rem;
	font-weight: 400;
	color: #829188;
	line-height: 1em;
	padding-top: 2rem;
}
.ljv-menu-mobile-close a {
	display: inline-block;
	color: #829188;
	padding: 1rem;
	padding-left: 0;
}
.ljv-menu-mobile-close a:before {
	background-color: #829188;
	content: "";
	display: inline-block;
	height: 2px;
	top: -2px;
	right: .5rem;
	position: relative;
	vertical-align: middle;
	width: 3.5rem;
}
/* /HEADER */

/* MENU MAIN */
#ljv-menu-main {
	display: none;
}
#ljv-menu-main ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-transform: uppercase;
}
#ljv-menu-main ul li {
	display: inline-block;
	padding-left: 1.5rem;
}
#ljv-menu-main ul li:first-child {
	padding-left: 0;
}
#ljv-menu-main ul li,
#ljv-menu-main ul li a {
	color: #0f7139;
}
#ljv-menu-main ul li,
#ljv-menu-main ul li a:hover {
	color: #0f7139;
}
@media (min-width: 768px) { /* MD> */
}
@media (min-width: 992px) { /* LG> */
	#ljv-menu-main {
		display: inline-block;
		margin-top: 15px;
	}
	#ljv-menu-main ul li {
		display: inline-block;
		padding-left: 3rem;
	}
	#ljv-menu-main ul li a:after {
		background-color: #0f7139;
		content: '';
		margin-top: 15px;
		height: 2px;
		display: block;
	}
	#ljv-menu-main ul li.current-menu-item a:after {
		width: 100%;
	}
	#ljv-menu-main ul li a:after {
		width: 0%;
		transform: translate(-50%,0);
		margin-left: 50%;
		transition: all .2s .05s ease-out;
	}
	#ljv-menu-main ul li a:hover:after {
		width: 100%;
	}
}
body.sobre #ljv-menu-main ul li.menu-item-01 a:after,
body.equipa #ljv-menu-main ul li.menu-item-02 a:after,
body.areas #ljv-menu-main ul li.menu-item-03 a:after,
body.contactos #ljv-menu-main ul li.menu-item-04 a:after {
	background-color: #0f7139;
	content: '';
	margin-top: 15px;
	height: 2px;
	display: block;
}
body.sobre #ljv-menu-main ul li.menu-item-01 a:after,
body.equipa #ljv-menu-main ul li.menu-item-02 a:after,
body.areas #ljv-menu-main ul li.menu-item-03 a:after,
body.contactos #ljv-menu-main ul li.menu-item-04 a:after {
	width: 100%;
}

/* /MENU MAIN */


/* MENU MOBILE */
#ljv-site-wrapper-nav ul.menu {
	list-style: none;
	color: white;
	padding: 1.5rem 0 3.5rem 0;
	margin: 0;
	margin-right: 1.5rem;
	font-size: 1.2rem;
	line-height: 1.25em;
	font-weight: 300;
}
#ljv-site-wrapper-nav ul.menu a {
}
#ljv-site-wrapper-nav ul.menu li.menu-item-has-children {
	position: relative;
}
#ljv-site-wrapper-nav ul.menu li.menu-item-has-children > a:after {
	content: "\f0d7";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1.4rem;
	color: white;
	vertical-align: middle;
	position: absolute;
	right: 0;
}
#ljv-site-wrapper-nav ul.menu li.menu-item-has-children.menu-item-has-children-active > a:after {
	content: "\f0d8";
}
#ljv-site-wrapper-nav ul.menu ul.sub-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	margin-left: 3.5rem;
	border-left: 2px solid white;
}
#ljv-site-wrapper-nav ul.menu a {
	color: white;
	display: block;
	padding: 1rem 1.25rem 1rem 3.5rem;
	transition: all .3s .1s;
}
#ljv-site-wrapper-nav ul.menu ul.sub-menu a {
	padding: 0.5rem 1.25rem 0.5rem 1.5rem;
	transition: all .3s .1s;
}
@media (min-width: 576px) { /* SM> identificar iOS/Android? */
	#ljv-site-wrapper-nav ul.menu a:hover {
		padding-left: 5rem;
	}
	#ljv-site-wrapper-nav ul.menu ul.sub-menu a:hover {
		padding-left: 2.5rem;
	}
}
body.home #ljv-site-wrapper-nav ul.menu li.menu-item-00m > a {
	color: #ccad7e;
}
body.sobre #ljv-site-wrapper-nav ul.menu li.menu-item-01m > a {
	color: #ccad7e;
}
body.equipa #ljv-site-wrapper-nav ul.menu li.menu-item-02m > a {
	color: #ccad7e;
}
body.areas #ljv-site-wrapper-nav ul.menu li.menu-item-03m > a {
	color: #ccad7e;
}
body.contactos #ljv-site-wrapper-nav ul.menu li.menu-item-04m > a {
	color: #ccad7e;
}
/* /MENU MOBILE */


/* LANGUAGE PICKER */
.ljv-menu-languagepicker {
	position: relative;
	width: 55px;
	margin-left: 1.5rem;
	margin-right: 12px;
	height: 40px;
	z-index: 900;
}
.ljv-menu-languagepicker ul {
	position: absolute;
	top: 0;
	left: 0;
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: white;
	font-size: 0.9rem;
	transition: box-shadow 0.05s ease-in-out;
}
body.home .ljv-menu-languagepicker ul {
	background-color: white;
}
@media (min-width: 992px) {
	.ljv-menu-languagepicker ul {
	}
}
.ljv-menu-languagepicker ul:hover {
	box-shadow: 0px 8px 20px 0px rgba(0,0,0,0.15);
}
.ljv-menu-languagepicker ul:hover li {
	background-color: rgba(179,192,200,0.3);
}
.ljv-menu-languagepicker ul li {
	display: none;
	text-align: center;
	transition: background-color 0.2s ease-in-out;
}
.ljv-menu-languagepicker ul li a {
	display: block;
	padding: 10px 15px;
	color: #1d1d1b;
}
.ljv-menu-languagepicker ul li:hover {
	background-color: rgba(179,192,200,0.6);
}
.ljv-menu-languagepicker ul li:first-child a {
	padding: 8px 22px 8px 12px;
}
.ljv-menu-languagepicker ul li:first-child {
	display: inherit;
	opacity: 1;
/*	background-color: rgba(0,0,0,0.08); */
	font-weight: 800;
}
.ljv-menu-languagepicker ul li:first-child:after {
	content: "\f0d7";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1rem;
	color: #1d1d1b;
	position: absolute;
	right: 7px;
	top: 8px;
}
.ljv-menu-languagepicker ul:hover li:first-child:after {
	content: "\f0d8";
}
.ljv-menu-languagepicker ul:hover li {
	display: inherit;
}
/* /LANGUAGE PICKER */

/* HOME HERO */
.ljv-home-hero {
	background-color: #b3c0c8;
	background-image: url(/images/fotos/hero-handshake-business.jpg);
	background-position: center center;
	background-size: cover;
}
.ljv-home-hero .ljv-hero-left {
	background: linear-gradient(to right, rgba(201,215,224,0.9) 91.5%, rgba(201,215,224,0) 8.5%);
	padding-top: 4.5em;
	padding-bottom: 4.5em;
}
.ljv-home-hero .ljv-hero-left h1 {
	font-size: 3.5rem;
	line-height: 1.1em;
	margin-bottom: 3rem;
}
.ljv-button {
	margin: 0;
	padding: 0.5em 1em 0.7em 1em;
	line-height: 1em;
	border: 1px solid #1d1d1b;
	font-size: 1rem;
}
.ljv-button:after {
	content: "\f061";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	text-decoration: inherit;
	color: #1d1d1b;
	padding-left: 0.5em;
	vertical-align: middle;
}
a.ljv-button {
	color: #1d1d1b;
	line-height: 1em;
}
a.ljv-button:hover {
	color: white;
	background-color: #1d1d1b;
	border: #1d1d1b;
}
a.ljv-button:hover:after {
	color: white;
}
.ljv-home-hero .ljv-button {
	padding-left: 0.7em;
	padding-right: 0.7em;
}
.ljv-home-hero a.ljv-button {
	letter-spacing: -0.5px;
}
@media (min-width: 576px) { /* SM> */
	.ljv-home-hero .ljv-hero-left {
		background: linear-gradient(to right, rgba(201,215,224,0.9) 66.66%, rgba(201,215,224,0) 33.34%);
		padding-top: 7em;
		padding-bottom: 7em;
	}
	.ljv-home-hero .ljv-hero-left h1 {
		font-size: 4.25rem;
	}
	.ljv-home-hero a.ljv-button {
		letter-spacing: normal;
	}
	.ljv-home-hero .ljv-button {
		padding-left: 1em;
		padding-right: 1em;
	}
}
@media (min-width: 768px) { /* MD> */
	.ljv-home-hero .ljv-hero-left {
		background: linear-gradient(to right, rgba(201,215,224,0.9) 50%, rgba(201,215,224,0) 50%);
		padding-top: 8em;
		padding-bottom: 8em;
	}
}
@media (min-width: 992px) { /* LG> */
	.ljv-home-hero .ljv-hero-left h1 {
		font-size: 5rem;
	}
}
/* /HOME HERO */


/* AREAS HOME */
.ljv-areas-home {
	background-image: url(/images/fotos/areas-background.jpg);
	background-position: center center;
	background-size: cover;
}
.ljv-areas-home-green {
	background: linear-gradient(to right, rgba(15,113,57,0.85) 0%, rgba(15,113,57,0.95) 100%);
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.ljv-areas-home-title {
	padding-top: 1rem;
}
.ljv-areas-home-title h2 a {
	color: white;
	text-decoration: none;
}
.ljv-area-home-block {
	font-family: 'EB Garamond', serif;
	font-weight: 300;
	font-size: 1.25rem;
	line-height: 1.2em;
	color: white;
	border-bottom: 1px solid rgba(255,255,255,0.25);
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	min-height: 85px;
}
.ljv-areas-home .ljv-areas-home-list a {
	color: white;
	width: 48%;
	margin-right: 4%;
	float: left;
	display: inline-block;
}
.ljv-areas-home .ljv-areas-home-list a:nth-child(2n+2) {
	margin-right: 0;
}
.ljv-areas-home .ljv-areas-home-list a:hover {
	background: linear-gradient(to bottom, rgba(255,255,255,0) 40%, rgba(255,255,255,0.25) 90%);
}
@media (min-width: 576px) { /* SM> */
	.ljv-area-home-block {
		min-height: 70px;
	}
}
@media (min-width: 768px) { /* MD> */
	.ljv-areas-home-green {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
	.ljv-area-home-block {
		letter-spacing: -0.5px;
	}
}
@media (max-width: 991.98px) { /* <MD */
}
@media (min-width: 992px) { /* LG> */
	.ljv-areas-home .ljv-areas-home-list a {
/*		width: 31.2%; 3 columns */
/*		margin-right: 3.2%; 3 columns */
	}
	.ljv-areas-home .ljv-areas-home-list a:nth-child(3n+3) {
/*		margin-right: 0; 3 columns */
	}
}
/* /AREAS HOME */


/* AREAS PAGE */
.ljv-areas-page {
	background-color: #eff3f6; /* Medium cool gray 30% */
	padding: 30px;
	padding-top: 0;
	margin-top: 4em;
}
.ljv-areas-page-title {
	padding-top: 30px;
}
.ljv-areas-page-title h3 {
	font-family: 'Lato', sans-serif;
	font-size: 1rem;
	line-height: 1.25em;
	color: #9ba6ad;
	text-transform: uppercase;
	padding: 0;
	margin: 0 0 0.25rem 0;
}
.ljv-areas-page-title h3:before {
	content: "//";
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	text-decoration: inherit;
	color: #9ba6ad;
	padding-right: 0.25em;
}
.ljv-areas-page-title h2 a {
	color: #0f7139;
	text-decoration: none;
}
.ljv-areas-page-title h2:hover a {
	background: none;
}
.ljv-area-page-block {
	font-family: 'EB Garamond', serif;
	font-weight: 300;
	font-size: 1.25rem;
	line-height: 1.2em;
	color: black;
	border-bottom: 1px solid #0f7139;
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	min-height: 70px;
}
.ljv-areas-page .ljv-areas-page-list a {
	color: black;
	width: 48%;
	margin-right: 4%;
	float: left;
	display: inline-block;
}
.ljv-areas-page .ljv-areas-page-list a:nth-child(2n+2) {
	margin-right: 0;
}
.ljv-areas-page .ljv-areas-page-list a:hover {
	background: linear-gradient(to bottom, rgba(155,166,173,0) 40%, rgba(155,166,173,0.25) 90%);
/*	background: linear-gradient(to bottom, rgba(15,113,57,0) 40%, rgba(15,113,57,0.25) 90%); */
}
@media (min-width: 768px) { /* MD> */
	.ljv-area-page-block {
		letter-spacing: -0.5px;
	}
}
@media (max-width: 991.98px) { /* <MD */
}
@media (min-width: 992px) { /* LG> */
	.ljv-areas-page .ljv-areas-page-list a {
/*		width: 31.2%; 3 columns */
/*		margin-right: 3.2%; */
	}
	.ljv-areas-page .ljv-areas-page-list a:nth-child(3n+3) {
/*		margin-right: 0; 3 columns */
	}
}
/* /AREAS PAGE */


/* HOME SOBRE */
.ljv-home-sobre-txt {
	padding-top: 4rem;
}
.ljv-home-sobre-foto {
	padding-top: 4rem;
}
body.home .ljv-home-sobre-title h2 {
	font-size: 2.25em;
	line-height: 1.2em;
	margin-bottom: 2rem;
}
.ljv-home-sobre-txt p {
	font-family: 'EB Garamond', serif;
	font-size: 1.2rem;
	font-weight: 500;
}
.ljv-home-sobre-resumo {
	margin-top: 3rem;
	margin-bottom: 2rem;
}
.ljv-home-sobre-resumo img {
	max-width: 56px;
	margin-right: 1rem;
	float: left;
	margin-bottom: 0;
}
.ljv-home-sobre-resumo p {
	font-family: 'EB Garamond', serif;
	font-size: 1.3rem;
	line-height: 1.3em;
	color: #0f7139;
}
.ljv-home-sobre-resumo > div {
	margin-bottom: 1rem;
}
@media (min-width: 576px) { /* SM> */
	.ljv-home-sobre-resumo img {
		float: none;
		margin-bottom: 0.5rem;
	}
	body.home .ljv-home-sobre-title h2 {
		font-size: 2.15em;
	}
	.ljv-home-sobre-txt p {
		font-size: 1.25rem;
	}
}
@media (min-width: 768px) { /* MD> */
	.ljv-home-sobre-resumo {
		margin-top: 4rem;
		margin-bottom: 3rem;
	}
	.ljv-home-sobre-resumo > div {
		margin-bottom: 0;
	}
	.ljv-home-sobre-resumo img {
		float: none;
		margin-bottom: 0.5rem;
	}
	body.home .ljv-home-sobre-title h2 {
		font-size: 2.5em;
	}
	.ljv-home-sobre-txt p {
		font-size: 1.3rem;
	}
}
@media (min-width: 992px) { /* LG> */
	.ljv-home-sobre-foto {
		padding-top: 0;
	}
	.ljv-home-sobre-resumo img {
		float: left;
		margin-bottom: 0;
	}
	.ljv-home-sobre-txt p {
		font-size: 1.4rem;
	}
}
/* /HOME SOBRE */


/* TAGLINE */
.ljv-tagline  {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
.ljv-tagline-txt {
	font-family: 'EB Garamond', serif;
	color: white;
	font-size: 2.25rem;
	line-height: 1.25em;
	color: white;
	margin-bottom: 0;
}
.ljv-tagline-logo {
	max-width: 200px;
}
@media (min-width: 576px) { /* SM> */
	.ljv-tagline-txt {
		font-size: 2rem;
		margin-right: 4rem;
	}
}
@media (min-width: 768px) { /* MD> */
	.ljv-tagline-txt {
		font-size: 2.5rem;
	}
}
/* /TAGLINE */


/* EQUIPA HOME */
.ljv-home-equipa {
	padding-top: 4rem;
	padding-bottom: 4rem;
}
.ljv-home-equipa h2 {
	margin-bottom: 3rem;
}
.ljv-home-equipa-membro-container .col-6:nth-child(2n+1) {
	padding-left: 0;
}
.ljv-home-equipa-membro-container .col-6:nth-child(2n+2) {
	padding-right: 0;
}
.ljv-home-equipa-membro-container a {
	display: inline;
	padding: 0;
	margin: 0;
}
.ljv-home-equipa-membro {
	padding-top: 150%;
	background-size: cover;
	background-position: center center;
	background-repeat: none;
	position: relative;
	margin-bottom: 30px;
	transition: opacity .2s;
}
.ljv-home-equipa-membro:hover {
	opacity: 0.8;
}
.ljv-home-membro-css {
	background-image: url(/images/equipa/cristina-santos-silva.jpg);
}
.ljv-home-membro-haf {
	background-image: url(/images/equipa/helena-azeredo-farinha.jpg);
}
.ljv-home-membro-mrr {
	background-image: url(/images/equipa/margarida-ramires-ramos.jpg);
}
.ljv-home-membro-nr {
	background-image: url(/images/equipa/nuno-rangel.jpg);
}
.ljv-home-equipa-membro-nome {
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: rgba(15,113,57,0.75);
	color: white;
	width: 100%;
	padding: 10px 5px 12.5px 10px;
}
.ljv-home-equipa-membro-nome h4,
.ljv-home-equipa-membro-nome p {
	color: white;
	margin: 0;
	padding: 0;
}
.ljv-home-equipa-membro-nome h4 {
	font-size: 1.1rem;
	line-height: 1em;
}
.ljv-home-membro-haf .ljv-home-equipa-membro-nome h4,
.ljv-home-membro-mrr .ljv-home-equipa-membro-nome h4,
.ljv-home-membro-css .ljv-home-equipa-membro-nome h4, {
	letter-spacing: -1px;
}
.ljv-home-equipa-membro-nome p {
	font-family: 'Lato', sans-serif;
	font-size: 0.65rem;
	line-height: 1em;
	font-weight: 300;
	text-transform: uppercase;
	margin-top: 0.5em;
}
@media (min-width: 576px) { /* SM> */
	.ljv-home-equipa-membro {
		padding-top: 135%;
	}
	.ljv-home-equipa-membro-nome {
		padding: 15px 10px 20px 20px;
	}
	.ljv-home-equipa-membro-nome h4 {
		font-size: 1.3rem;
		line-height: 1.2em;
		letter-spacing: normal;
	}
	.ljv-home-equipa-membro-nome p {
		font-size: 0.8rem;
	}
}
@media (min-width: 768px) { /* MD> */
	.ljv-home-equipa-membro {
		padding-top: 120%;
	}
	.ljv-home-equipa-membro-nome {
		padding: 30px;
	}
	.ljv-home-equipa-membro-nome h4 {
		font-size: 1.5rem;
		line-height: 1.2em;
		letter-spacing: normal;
	}
	.ljv-home-equipa-membro-nome p {
		font-size: 0.9rem;
	}
}
/* /EQUIPA HOME */


/* EQUIPA PAGE */
.ljv-equipa-membro {
	padding-top: 75%;
	background-size: cover;
	background-position: center center;
	background-repeat: none;
	position: relative;
	margin-bottom: 0.75em;
}
.ljv-membro-css {
	background-image: url(/images/equipa/cristina-santos-silva-cv.jpg);
}
.ljv-membro-haf {
	background-image: url(/images/equipa/helena-azeredo-farinha-cv.jpg);
}
.ljv-membro-mrr {
	background-image: url(/images/equipa/margarida-ramires-ramos-cv.jpg);
}
.ljv-membro-nr {
	background-image: url(/images/equipa/nuno-rangel-cv.jpg);
}
.ljv-equipa-membro-container {
	margin-bottom: 2.5em;
	transition: opacity .2s;
}
.ljv-equipa-membro-container:hover {
	opacity: 0.8;
}
.ljv-equipa-membro-container a,
.ljv-equipa-membro-container a h4,
.ljv-equipa-membro-container h4,
.ljv-equipa-membro-container a p,
.ljv-equipa-membro-container p {
	margin: 0;
	padding: 0;
	text-decoration: none !important;
}
.ljv-equipa-membro-container a h4,
.ljv-equipa-membro-container h4 {
	color: #0f7139;
	font-size: 1.5rem;
	line-height: 1.2em;
}
.ljv-equipa-membro-container a p,
.ljv-equipa-membro-container p {
	color: #1d1d1b;
	font-family: 'Lato', sans-serif;
	font-size: 1rem;
	line-height: 1em;
	font-weight: 400;
	text-transform: uppercase;
	margin-top: 0.5em;
}
.ljv-equipa-membro-container .col-6:nth-child(2n+1) {
	padding-left: 0;
}
.ljv-equipa-membro-container .col-6:nth-child(2n+2) {
	padding-right: 0;
}
.ljv-equipa-membro-container a {
	display: inline;
	padding: 0;
	margin: 0;
}
@media (min-width: 576px) { /* SM> */
}
@media (min-width: 768px) { /* MD> */
	.ljv-equipa-membro-container a h4,
	.ljv-equipa-membro-container h4 {
		font-size: 1.75rem;
	}
}
/* /EQUIPA PAGE */


/* EQUIPA MEMBRO */
#ljv-membro-cv {
	padding-bottom: 2.5em;
}
#ljv-membro-cv h1 {
	color: #0f7139;
	font-size: 2.25rem;
	line-height: 1.1em;
	margin: 0;
	margin-bottom: 0.15em;
	padding: 0;
}
#ljv-membro-cv h2 {
	font-family: 'Lato', sans-serif;
	font-size: 1.1rem;
	line-height: 1.1em;
	color: #9ba6ad;
	text-transform: uppercase;
	padding: 0;
	margin: 0;
	margin-bottom: 1em;
}
#ljv-membro-cv h3 {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-size: 1.2rem;
	color: #0f7139;
	margin-top: 2em;
	text-transform: uppercase;
}
#ljv-membro-cv p {
	margin-bottom: 0.5em;
}
.ljv-membro-foto {
	padding-top: 75%;
	background-position: center center;
	background-size: cover;
	background-repeat: none;
}
.ljv-membro-foto.ljv-membro-css {
	background-image: url(/images/equipa/cristina-santos-silva-cv.jpg);
}
.ljv-membro-foto.ljv-membro-haf {
	background-position: right center;
	background-image: url(/images/equipa/helena-azeredo-farinha-cv.jpg);
}
.ljv-membro-foto.ljv-membro-mrr {
	background-image: url(/images/equipa/margarida-ramires-ramos-cv.jpg);
}
.ljv-membro-foto.ljv-membro-nr {
	background-image: url(/images/equipa/nuno-rangel-cv.jpg);
}
.ljv-membro-vcard-container {
	margin-top: 2em;
}
.ljv-membro-vcard-button {
	color: white;
	background-color: #9ba6ad;
	font-weight: 300;
	font-size: 0.9em;
	line-height: 1.2em;
	display: inline-block;
	padding: 10px 15px;
	padding-left: 60px;
	position: relative;
	margin-bottom: 2.5em;
	border-radius: 4px;
	transition:	all .25s cubic-bezier(.6,.2,.1,1);
}
.ljv-membro-vcard-button:before {
	content: "\f2bd";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 2.25em;
	color: white;
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translate(0,-50%);
}
.ljv-membro-vcard-button span {
	text-transform: uppercase;
	font-weight: 700;
}
.ljv-membro-vcard-button:hover,
.ljv-membro-vcard-button:hover a {
	background-color: #7e919d;
}
.ljv-membro-quote {
	font-size: 0.9em;
	line-height: 1.2em;
	padding: 15px;
	padding-left: 4.5em;
	font-style: italic;
	position: relative;
	background-color: rgba(179,192,200,0.15);
}
..ljv-membro-quote p {
	line-height: 1.2em;
}
.ljv-membro-quote:before {
		content: "\201C";
		font-family: 'EB Garamond', serif;
		font-size: 6rem;
		line-height: 1em;
		font-weight: 400;
		text-decoration: none;
		color: #0f7139;
		position: absolute;
		left: 8px;
		top: 5px;
}
@media (min-width: 768px) { /* MD> */
	#ljv-membro-cv h1 {
		font-size: 2.75rem;
	}
	#ljv-membro-cv h2 {
		font-size: 1.25rem;
		margin-bottom: 2em;
	}
	#ljv-membro-cv h3 {
		font-size: 1.25rem;
		margin-top: 3em;
	}
	#ljv-membro-cv {
		padding-left: 30px;
	}
	.ljv-membro-foto {
		padding-top: 100%;
		margin-bottom: 2em;
	}
	.ljv-membro-quote {
		background-color: white;
	}
	.ljv-membro-vcard-container {
		float: right;
		margin-top: 1em;
	}
}
@media (min-width: 992px) { /* LG> */
	#ljv-membro-cv {
		padding-left: 45px;
	}
}	
/* /EQUIPA MEMBRO */


/* AREAS PAGE */
.ljv-area-block-container {
	margin-bottom: 30px;
}
.row.display-flex {
	display: flex;
  flex-wrap: wrap;
}
.row.display-flex > [class*='col-'] {
	align-items: stretch;
}
.ljv-area-block-bg {
	background-image: none;
	background-size: cover;
	color: black;
}
.ljv-area-block-bg.ljv-area-cp {
	background-image: url(/images/fotos/areas-contratacao-publica.jpg);
	background-position: center 50%;
}
.ljv-area-block-bg.ljv-area-en {
	background-image: url(/images/fotos/area-energia.jpg);
	background-position: center 25%;
}
.ljv-area-block-bg.ljv-area-am {
	background-image: url(/images/fotos/areas-ambiente.jpg);
}
.ljv-area-block-bg.ljv-area-iu {
	background-image: url(/images/fotos/areas-urbanismo.jpg);
	background-position: center 60%;
}
.ljv-area-block-bg.ljv-area-co {
	background-image: url(/images/fotos/areas-concessoes.jpg);
	background-position: center 50%;
}
.ljv-area-block-bg.ljv-area-ct {
	background-image: url(/images/fotos/areas-imobiliario-construcao.jpg);
	background-position: center 50%;
}
.ljv-area-block-bg.ljv-area-ca {
	background-image: url(/images/fotos/areas-contencioso-administrativo-arbitragem.jpg);
	background-position: center 75%;
}
.ljv-area-block-bg.ljv-area-so {
	background-image: url(/images/fotos/areas-societario.jpg);
	background-position: center 80%;
}
.ljv-area-block-bg.ljv-area-tr {
	background-image: url(/images/fotos/area-trabalho.jpg);
	background-position: center 75%;
}
.ljv-area-block-bg.ljv-area-fs {
	background-image: url(/images/fotos/areas-familia-sucessoes.jpg);
	background-position: center 25%;
}
.ljv-area-block-bg.ljv-area-pe {
	background-image: url(/images/fotos/areas-penal.jpg);
	background-position: center 75%;
}
.ljv-area-block-gradient {
	background: linear-gradient(to bottom, rgba(15,113,57,0.7) 0%, rgba(15,113,57,1) 100%);
}
.ljv-area-block {
	background-color: rgba(228,235,239,1);
	padding: 15px;
	padding-bottom: 45px;
	position: relative;
	transition: all .2s .05s ease-out;
}
.ljv-area-block h3 {
	color: #0f7139;
	font-size: 1.5em;
	line-height: 1.1em;
}
.ljv-area-block p {
	color: black;
	font-size: 1.1em;
}
.ljv-area-block-bg:hover .ljv-area-block h3,
.ljv-area-block-bg:hover .ljv-area-block p,
.ljv-area-block-bg:hover .ljv-area-block-link,
.ljv-area-block-bg:hover .ljv-area-block-link:after {
	color: white;
}
.ljv-area-block-bg:hover .ljv-area-block {
	background-color: rgba(228,235,239,0);
}
.ljv-area-block-link {
	position: absolute;
	bottom: 15px;
	right: 15px;
}
.ljv-area-block-link:after {
	content: "\f061";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	text-decoration: inherit;
	color: #1d1d1b;
	padding-left: 0.5em;
	vertical-align: middle;
}
/* /AREAS PAGE */

/* SOBRE PAGE */
.ljv-sobre-hero-container {
	margin-top: 3.5em;
	margin-bottom: 3.5em;
}
.ljv-sobre-hero {
	background-color: #b3c0c8;
	background-image: url(/images/fotos/hero-handshake-business.jpg);
	background-position: center center;
	background-size: cover;
}
.ljv-sobre-hero .ljv-hero-left {
	background: linear-gradient(to right, rgba(15,113,57,0.9) 70%, rgba(15,113,57,0) 30%);
}
.ljv-sobre-hero p {
	font-family: 'EB Garamond', serif;
	font-weight: 400;
	font-size: 1.75rem;
	line-height: 1.25em;
	margin-bottom: 3em;
	color: white;
}
.ljv-sobre-hero .ljv-sobre-hero-txt {
	padding: 30px 30px 30px 45px;
}
.ljv-sobre-resumo {
	margin-top: 3rem;
	margin-bottom: 2rem;
}
.ljv-sobre-resumo img {
	max-width: 75px;
	margin-right: 1rem;
	margin-bottom: 1rem;
}
.ljv-sobre-resumo h3 {
	font-family: 'EB Garamond', serif;
	font-size: 1.5rem;
	line-height: 1.25em;
	color: #0f7139;
}
.ljv-sobre-resumo-equipa,
.ljv-sobre-resumo-servicos {
	margin-bottom: 1.5em;
}
@media (min-width: 576px) { /* SM> */
	.ljv-sobre-hero .ljv-hero-left {
		background: linear-gradient(to right, rgba(15,113,57,0.9) 50%, rgba(15,113,57,0) 50%);
	}
	.ljv-sobre-hero p {
		font-size: 2.25rem;
	}
}
@media (min-width: 768px) { /* MD> */
	.ljv-sobre-resumo {
		margin-top: 4rem;
		margin-bottom: 3rem;
	}
	.ljv-sobre-resumo-equipa,
	.ljv-sobre-resumo-servicos {
		margin-bottom: 0;
	}
}
@media (min-width: 992px) { /* LG> */
	.ljv-sobre-hero .ljv-hero-left {
		background: linear-gradient(to left, rgba(15,113,57,0) 67%, rgba(15,113,57,0.9) 33%);
	}
	.ljv-sobre-hero p {
		font-size: 2.5rem;
	}
}
/* /SOBRE */


/* CONTACTOS */
.ljv-contactos-container span {
	font-weight: 900;
	color: #0f7139;
	text-transform: uppercase;
	font-family: 'Lato', sans-serif;
	font-size: 0.9em;
}
.ljv-contactos-container small {
	font-size: 70%;
	line-height: 1em;
}
.ljv-contactos-container a:hover {
	color: #0f7139;
	border-bottom: 2px solid #0f7139;
}
/* /CONTACTOS */


/* FOOTER TOP */
body.contactos .ljv-footer-top {
	margin-top: 100px;
}
.ljv-footer-top {
	font-family: 'Lato', sans-serif;
	background-color: #c9d7e0;
	padding-top: 50px;
	padding-bottom: 50px;
}
.ljv-footer-top .ljv-footer-top-txt {
	display: inline-block;
	font-size: 1.5rem;
	line-height: 1.3em;
	font-weight: 300;
	margin-bottom: 0.5em;
}
.ljv-footer-top .ljv-footer-top-txt span {
	font-weight: 700;
	display: block;
}
.ljv-footer-top-phone {
	display: block;
	font-size: 1.3rem;
	line-height: 0.75em;
	font-weight: 300;
	white-space: nowrap;
}
.ljv-footer-top-phone a {
	color: #1d1d1b;
}
.ljv-footer-top-phone .ljv-txt-tel {
	font-size: 0.7em;
	font-weight: 700;
}
.ljv-footer-top-phone .ljv-txt-351 {
	font-size: 0.7em;
}
.ljv-footer-top-phone small {
	font-size: 0.55em;
}
.ljv-footer-top p {
	font-family: 'Lato', sans-serif;
	margin: 0;
	padding: 0;
}
@media (min-width: 576px) { /* SM> */
	.ljv-footer-top .ljv-footer-top-txt {
		margin-bottom: 0;
	}
	.ljv-footer-top .ljv-footer-top-txt:after {
		content: "\f061";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		text-decoration: inherit;
		color: #1d1d1b;
		padding-left: 0.5em;
		vertical-align: middle;
	}
	.ljv-footer-top-phone {
		display: inline-block;
	}
}
@media (min-width: 992px) { /* LG> */
	body.contactos .ljv-footer-top {
		margin-top: 150px;
	}
	.ljv-footer-top .ljv-footer-top-txt span {
		display: inline-block;
	}
	.ljv-footer-top .ljv-footer-top-txt {
		font-size: 1.7rem;
	}
	.ljv-footer-top-phone {
		font-size: 1.5rem;
	}
	.ljv-footer-main-newsletter input {
		width: 80%;
	}
}
@media (min-width: 1200px) { /* XL> */
	.ljv-footer-top .ljv-footer-top-txt {
		font-size: 1.8rem;
	}
	.ljv-footer-top-phone {
		font-size: 1.6rem;
	}
}
/* /FOOTER TOP */

/* FOOTER */
#ljv-footer {
	font-family: 'Lato', sans-serif;
	color: white;
	padding-top: 4rem;
	padding-bottom: 1rem;
	font-weight: 300;
	margin-top: 100px;
}
body.home #ljv-footer,
body.contactos #ljv-footer {
	margin-top: 0;
}
#ljv-footer a {
	color: white;
}
#ljv-footer a:hover {
	border-bottom: 2px solid white;
}
.ljv-logo-legaljv-footer {
	max-width: 160px;
	height: auto;
	margin-bottom: 2rem;
}
#ljv-footer p {
	font-family: 'Lato', sans-serif;
	font-size: 1.1em;
}
#ljv-footer .ljv-footer-contact {
	font-size: 1rem;
}
#ljv-footer .lgv-footer-chamada {
	font-size: 0.65rem;
}
#ljv-footer .ljv-footer-telefone {
	line-height: 1em;
}
@media (min-width: 576px) { /* SM> */
	#ljv-footer p {
		font-size: 1.25em;
	}
	#ljv-footer .lgv-footer-chamada {
		font-size: 0.7rem;
	}

}
/* /FOOTER */

/* COPYRIGHT */
#ljv-footer .ljv-copyright {
	padding-top: 50px;
}
#ljv-footer .ljv-copyright,
#ljv-footer .ljv-copyright p,
#ljv-footer .ljv-copyright a {
	font-size: 1em;
}
#ljv-footer .ljv-copyright p {
	font-weight: 600;
}
#ljv-footer .ljv-copyright a {
	font-weight: 400;
}
