/**
 * VARIABILI
 */
:root {
	--blue: #005EB8;
	--dark-blue: #001489;
	--orange: #FF7F00;
	--grey: #F1F1F1;
	
	--header-h: 115px;
}

/**
 * Dimensione admin-bar per eventuali header fixed
 */
:root { --admin-bar: 0px; }
@media screen and (max-width: 600px) { #wpadminbar { position: fixed; } }
@media screen and (max-width: 782px) { body.admin-bar { --admin-bar: 46px; } }
@media screen and (min-width: 783px) { body.admin-bar { --admin-bar: 32px; } }



/**
 * Tag generici
 */
html, body {
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.5;
	color: #000;
	overflow-x: hidden;
	min-width: 320px;
}
body { margin-top: var(--header-h); }

strong { font-weight: 600; }
p { margin-bottom: 15px; }
a { color: inherit; text-decoration: underline; }
a:hover { color: var(--orange); text-decoration: underline; }
img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
}
.card_testuale_shortcode figure {
    margin: 0 !important;
}
.card_testuale_shortcode img {
    max-width: 85%;
}
.card_testuale_shortcode a.btn {
    width: 100% !important;
    padding: 10px 15px;
}


/**
 * Bottoni
 */
.menu-btn a,
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--blue);
	/*border: 2px solid var(--blue);*/
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	line-height: 20px;
	border-radius: 100px;
	padding: 10px 50px 11px;
	outline: none;
	cursor: pointer;
	width: auto;
	text-align: center;
	text-decoration: none;
	transition: .2s ease;
	width: fit-content;
}

.btn-1 {
	border: 2px solid #fff;
	background: transparent;
}

.btn-1:hover {
	border-color: var(--dark-blue);
}

.menu-btn a:hover,
.btn:hover { background: var(--dark-blue); color: #fff; text-decoration: none; }

.menu-btn a,
.btn-orange {
	background: var(--orange);
	border-color: var(--orange);
	color: #fff;
}
.btn-orange-rev{
  background: #fff;
  border-color: var(--orange);
  color: var(--orange) !important;
  border-radius: 10px;
  padding-left: 12px;
  padding-right: 12px;
  border: 3px solid !important;
}
.btn-orange-rev:hover{color:#fff !important}
.menu-btn a:hover,
.btn-orange:hover, .btn-orange-rev:hover{ background: #000000; }
#main-menu-mobile .menu-btn a { margin-top: 10px; }

.btn-square { border-radius: 0; }



/**
 * HEADER
 */
#header {
	height: var(--header-h);
	background: #fff;
	position: fixed;
	z-index: 77777;
	width: 100%;
	top: var(--admin-bar);
	left: 0;
}
#header a { text-decoration: none;  }
#header .header-inner {}

/* Top label (go to corporate) */
.top_label {
	background: #333F48;
	color: #fff;
	display: block;
	padding: 2px 0;
	padding-right: 20px;
	position: relative;
	text-decoration: none !important;
}
.top_label:hover {
	color: var(--orange);
}
.top_label:before {
	content: '';
	position: absolute;
	top: 0;
	right: 100%;
	height: 100%;
	width: 50vw;
	background: inherit;
}
#main-menu-mobile .top_label { position: static; display: inline-block; padding-left: 20px; }
#main-menu-mobile .top_label:before { display: none; }

/* Top links */
.top_links { padding-top: 10px; font-size: 16px; }
.top_links a { text-decoration: none !important; }
.top_links a:not(:first-child) { margin-left: 30px; }
.top_links a i svg { fill: var(--orange); height: 16px; }
.top_links a i.telefono { position: relative; top: -2px; }


#header .logo {}
#header .logo img { height: 69px; }
#header .logo .site-title { margin: 0 0 0 30px; line-height: 1; font-size: 24px; pointer-events: none; }
#header .logo .site-title > * { display: block; }
#header .logo .site-title strong {}
#header .logo .site-title small { font-size: 66.6665%; }


/**
 * MAIN MENU DESKTOP
 */
#main-menu-desktop {}
#main-menu-desktop ul {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	align-items: center;
}
#main-menu-desktop ul li { position: relative; }
#main-menu-desktop ul li:not(.menu-btn) a { display: block; padding: 6px 5px 5px; }
#main-menu-desktop ul li:not(.menu-btn):hover > a { color: var(--orange) }

/* 1° livello */
#main-menu-desktop > ul > li:not(:first-child) { margin-left: 20px; }
#main-menu-desktop > ul > li > a {
	text-transform: uppercase;
	font-weight: 700;
}

/* 2° livello */
#main-menu-desktop ul.sub-menu {
	position: absolute;
	top: 100%;
	left: -10px;
	width: max-content;
	background: #fff;
	padding: 15px 0;
}
#main-menu-desktop li.menu-item-has-children:not(:hover) ul.sub-menu { display: none; }
#main-menu-desktop ul.sub-menu > li {
	position: relative;
	display: block;
	width: 100%;
}
#main-menu-desktop ul.sub-menu > li > a { padding-left: 15px; padding-right: 15px; }

/* 3° livello */
#main-menu-desktop ul.sub-menu ul.sub-menu {
	top: -15px;
	left: 100%;
}

@media (max-width: 1679px) {
	#main-menu-desktop > ul > li > a { letter-spacing: -1px; }
}
@media (max-width: 1429px) {
	:root { --header-h: 112px; }
	.top_label { font-size: 16px; }
	.top_links { font-size: 14px; }
	
	#header .logo .site-title { margin-left: 10px; font-size: 18px; }
	#main-menu-desktop a { font-size: 16px; }
	#main-menu-desktop > ul > li:not(:first-child) { margin-left: 7px; }
}
@media (max-width: 767px) {
	:root { --header-h: 68px; }
	#header .logo img { height: 59px; }
}




#main-menu-mobile-toggle {
	padding: 10px;
	cursor: pointer;
	margin-right: -10px;
}
#main-menu-mobile-toggle span {
	display: block;
	width: 35px;
	height: 5px;
	margin-bottom: 5px;
	background: var(--blue);
	border-radius: 20px;
}
#main-menu-mobile-toggle span:last-child { margin-bottom: 0; }
#main-menu-mobile-toggle:hover span { background: var(--orange); }

#main-menu-mobile {
	position: fixed;
	top: var(--admin-bar);
	left: 0;
	right: 0;
	bottom: 0;
	transition: background-color .5s ease, z-index 1ms ease .5s;
	background-color: rgba(0, 0, 0, 0);
	z-index: -1;
}
#main-menu-mobile.open {
	transition: background-color .5s ease, z-index 1ms ease;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 88888;
}

#main-menu-mobile .main-menu-mobile-inner {
	position: fixed;
	top: var(--admin-bar);
	right: 0;
	width: 100%;
	height: 100%;
	background: var(--blue);
	z-index: 88888;
	transition: .5s ease;
	transform: translateX(100%);
	padding: 30px;
	color: #fff;
	font-size: 20px;
}
#main-menu-mobile.open .main-menu-mobile-inner {
	transform: translateX(0);
}

#main-menu-mobile-close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	border: 2px solid #fff;
	border-radius: 50%;
	cursor: pointer;
	background: transparent;
}
#main-menu-mobile-close span {
	display: block;
	height: 2px;
	width: 20px;
	background: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}
#main-menu-mobile-close span + span {
	transform: translate(-50%, -50%) rotate(-45deg);
}

#main-menu-mobile ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
#main-menu-mobile ul li {}
#main-menu-mobile ul li:not(.menu-btn) a {
	padding: 10px 15px;
	display: inline-block;
	text-decoration: none;
	color: inherit;
}
#main-menu-mobile ul li:not(.menu-btn) a:hover {
	text-decoration: underline;
	color: inherit;
}

#main-menu-mobile hr {
	margin: 30px 0;
	border: none;
	background-color: #fff;
	height: 1px;
	width: 100%;
}

@media (min-width: 768px) {
	#main-menu-mobile .main-menu-mobile-inner { width: 500px; }
}



#page-title {
	position: relative;
	padding: 24px 0;
}
#page-title #lvmk-owl-header,
#page-title figure {
	display: none;
}
#page-title #lvmk-owl-header .owl-carousel .owl-item figure {
	width: 100%;
}
#page-title #lvmk-owl-header .owl-carousel,
#page-title #lvmk-owl-header .owl-stage-outer,
#page-title #lvmk-owl-header .owl-stage {
	height: 100%;
}
@media (min-width: 992px) {
	#page-title #lvmk-owl-header,
	#page-title figure {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: calc(50% - 15px);
		height: 100%;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		margin: 0;
	}
	body.page-template-tpl-applications #page-title #lvmk-owl-header,
	body.page-template-tpl-applications #page-title figure {
		padding-bottom: 29%;
		top: 50%;
		transform: translateY(-50%);
		height: 0;
	}
}

#page-title h1 {
	text-transform: uppercase;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 5px;
}

#page-title .btns {
	margin: 30px 0 0;
	display: flex;
	flex-wrap: wrap;
}
#page-title .btns .btn {
	border: none;
	margin: 0 10px 10px 0;
}

#breadcrumbs {
	font-size: 14px;
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
}
#breadcrumbs li:not(:last-child):after {
	content: '|';
	margin: 0 6px;
}
#breadcrumbs li a { text-decoration: none; }
#breadcrumbs li a:hover { text-decoration: underline; color: inherit; }
#breadcrumbs li span {}


#page-bluinfo{padding: 30px 0;}
#page-bluinfo span.elenco_el{padding: 10px; display: inline-block}



body .lvmk_slider-slide > * {
	pointer-events: initial;
}
body .lvmk_slider-slide .lvmk_slider-title {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	color: #fff;
	text-align: left;
	margin: 0;
	padding: 30px 15px;
}
body .lvmk_slider-slide .lvmk_slider-title .sopratitolo {
	font-size: 14px;
	font-weight: 300;
	line-height: 17px;
	margin-bottom: 5px;
}
body .lvmk_slider-slide .lvmk_slider-title .titolo {
	font-size: 30px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 30px;
}

@media (min-width: 768px) {
	body .lvmk_slider {
		--lvmk_slider-height: 39.79%;
	}
	body .lvmk_slider-slide .lvmk_slider-title {
		padding: 30px 80px;
	}
}

#menu-menu-1 > .menu-item > ul.sub-menu{
	display: flex;
	flex-direction: column;
}

.lvmk_slider-title > .sopratitolo,.titolo,.btn.btn-bianco{
	margin-left: 40px;
}


.lvmk_slider-title:before {
	--triangle-w: 80vw;
	--triangle-h: 150vw;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: var(--triangle-h) 0 var(--triangle-h) var(--triangle-w);
	border-color: transparent transparent transparent rgba(20, 37, 100, 0.8);
}
.lvmk_slider-title:after {
	content: "Since 1986 in UK";
	position: absolute;
	bottom: 0;
	left: 7%;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 6vw;
	line-height: 4vw;
}
@media (min-width: 768px) {
	.lvmk_slider-title:before {
		--triangle-w: 42vw;
		--triangle-h: 90vw;
		top: 85%;
		transform: translateY(-50%);
	}
	.lvmk_slider-title:after {
		text-transform: uppercase;
		font-weight: 600;
		font-size: 3.4vw;
		line-height: 2.3vw;
	}
}
@media (max-width: 767px) {
	.lvmk_slider-nav {
		display: none;
	}
}