/* Shorcodes: wwscta
======================================================================== */
.ctaViv::after {
	clear: both;
	content: " ";
	display: block;
}
.ctaViv {
	margin: auto;
	width: 60%;
	display: table;
}
.ctaViv .text,
.ctaViv .button {
	text-transform: uppercase;
	display: table-cell;
	vertical-align: middle;
}
.ctaViv .text {
	font-size: 18px;
	font-weight: bolder;
	width: 75%;
}
.ctaViv .button { width: 25%; }

.ctaViv .button a {
	/* background-color: #1e4a80;	*/
	background-color: #000;
	color: #fff;
	display: inline-block;
	float: right;
	font-size: 12px;
	font-weight: 400;
	min-width: 100%;
	padding: 10px;
	text-align: center;
}
.ctaViv .button a:hover {
	background-color: #005e92;
}

	/* Media Queries - bs3: 
	================================================== */
	/* Large Devices, Wide Screens */
	@media only screen and (min-width : 1200px) { }
	@media only screen and (max-width : 1200px) { }

	/* Medium Devices, Desktops */
	@media only screen and (min-width: 992px) and (max-width: 1200px) {}

	/* Smaller than standard 960 (devices and browsers) */
	@media only screen and (max-width: 992px) { }

	/* Tablet Portrait size to standard 960 (devices and browsers) */
	@media only screen and (min-width: 768px) and (max-width: 992px) {}

	/* All Mobile Sizes (devices and browser) */
	@media only screen and (max-width: 767px) {
		.ctaViv { width: 100%; }
	}

	/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
	@media only screen and (min-width: 480px) and (max-width: 767px) {}

	/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
	@media only screen and (max-width: 479px) {
		.ctaViv .text,
		.ctaViv .button {
			display: block;
			float: left;
			width: 100%;
		}
		.ctaViv .text { margin-bottom: 10px; }
	}

/* Shorcodes: check list 
======================================================================== */
.vivChecklist li::before {
	color: #30802c;
	color: #e07000;
	content: '\e901';
	font-family: viv;
	font-size: 20px;
	margin-left: -25px;
	padding-right: 5px
}
.vivChecklist {}
.vivChecklist ul{
	padding-left: 0px;
}
.vivChecklist li {
	list-style: none;
}
.vivChecklist li {
	font-size: 15px;
	line-height: 28px;
	line-height: 21px;
	list-style: outside none none;
	margin-bottom: 15px;
	padding-left: 20px;
}
/* Shorcodes: viv_info
======================================================================== */

.infoViv .left::after,
.infoViv::after {
	clear: both;
	content: " ";
	display: block;
}
.infoViv,
.infoViv p,
.infoViv .left .contact a{ color: #000; }
.infoViv {}
.infoViv .left{
	width: 30%;
	display: inline-block;
	float: left;
}
.infoViv .left .img{
	width: 35%;
	padding-top: 50%;
	float: left;
	display: inline-block;

	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;	
}
.infoViv .left .quote::before,
.infoViv .left .quote::after {
	color: #30802c;
	display: inline-block;
	font-family: viv;
	font-size: 28px;
	position: absolute;
	vertical-align: middle;
}
.infoViv .left .quote::before {
	content: "\e902";	
	padding-right: 3px;
	top: 0px;
	left: 0px;
}
.infoViv .left .quote::after {	
	content: "\e900";
	padding-left: 3px;
	right: 0px;
	bottom: 0px;
}
.infoViv .left .quote {
	display: inline-block;
	float: right;
	font-size: 20px;
	font-style: italic;
	line-height: 30px;
	padding: 7px 35px 1px;
	position: relative;
	text-align: center;
	width: 65%;
}
.infoViv .left .contact {
	border-top: 1px solid #30802c;
	border-top: 1px solid rgba(48,128,43,0.3);
	display: inline-block;
	float: right;
	font-size: 20px;
	margin: 10px 15px 0;
	padding-top: 10px;
	text-align: center;
	width: calc(65% - 30px);
}
.infoViv .left .contact a:hover{ text-decoration: underline; }
.infoViv .text {
	display: inline-block;
	float: right;
	font-size: 15px;
	line-height: 30px;
	padding-left: 30px;
	width: 70%;
}

/* ------ sidebar ------ */
.infoViv.sidebar {
	background-color: #ecf4ec;
	padding: 10px;
}
.infoViv.sidebar  .left,
.infoViv.sidebar  .text {
	width: 100%;
	padding: 0px;
}
.infoViv.sidebar  .left .img {
	padding-top: 130px;
	width: 90px;
}	
.infoViv.sidebar  .left .quote { margin-top: 10px; }
.infoViv.sidebar  .left .quote,
.infoViv.sidebar  .left .contact {
	width: calc(100% - 100px);
	margin: 0;
	text-align: center;
	font-size: 19px;	
}	
.infoViv.sidebar  .text {
	font-size: 14px;
	line-height: 27px;
}	


	/* Media Queries - bs3: 
	================================================== */
	/* Large Devices, Wide Screens */
	@media only screen and (min-width : 1200px) { }
	@media only screen and (max-width : 1200px) { }

	/* Medium Devices, Desktops */
	@media only screen and (min-width: 992px) and (max-width: 1200px) {}

	/* Smaller than standard 960 (devices and browsers) */
	@media only screen and (max-width: 992px) {
		.infoViv .left,
		.infoViv .text {
			width: 100%;
			padding: 0px;
		}
		.infoViv .left .img {
			padding-top: 130px;
			width: 110px;
		}	
		.infoViv .left .quote { margin-top: 10px; }
		.infoViv .left .quote,
		.infoViv .left .contact {
			width: calc(100% - 130px);
			text-align: left;
			margin: 0;
		}	
		.infoViv .text {
			font-size: 14px;
			line-height: 27px;
		}		
	}

	/* Tablet Portrait size to standard 960 (devices and browsers) */
	@media only screen and (min-width: 768px) and (max-width: 992px) {}

	/* All Mobile Sizes (devices and browser) */
	@media only screen and (max-width: 767px) {	}

	/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
	@media only screen and (min-width: 480px) and (max-width: 767px) {}

	/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
	@media only screen and (max-width: 479px) {
		.infoViv .left .img { width: 90px; }
		.infoViv .left .quote,
		.infoViv .left .contact {
			width: calc(100% - 100px);
			text-align: center;
			font-size: 19px;
		}	
	
	}

