/*
	Theme Name: vCard Me
	Description: Custom vCards system
	Version: 1.0
	Author: Direction Forward (@direction4ward)
	Author URI: https://directionforward.com
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* vars */
:root {
    --darkblue: #033D68;
    --lightblue: #6a95ae;
    --gold: #666666;
    --white: #ffffff;
    --cream: #F9F5EF;
    /*--fadedblue: #8794b1;*/
}
/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
}
body {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-size: 14px;
	line-height: 1.5em;
	color: #333333;
	background: #f7f7f7;
	overscroll-behavior: none;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color:inherit;
	text-decoration:none;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
	width: 100%;
	margin: 0 auto 0 auto;
	position: relative;
	text-align: center;
}
.holder {
	margin: 0 auto;
	box-shadow: 0 -5px 40px 7px rgba(0,0,0,0.08);
	padding: 2em 0 0 0;
}
main .holder {
	margin-bottom: 4em;
}
/* header */
.header {
 	background-color: var(--darkblue);
	color: var(--white);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
/* logo */
.logo {
	margin: 2em 0 2em 0;
}
.logo-img {
	width: 60px;
}
/* nav */
.nav {

}
/* sidebar */
.sidebar {

}
/* footer */
.footer {
	font-size: 12px;
	opacity: 0.5;
}
.headshot {
	height: 90px;
	width: 90px;
	border-radius: 50%;
	margin: 1em auto 1.5em auto;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.contact-block {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	border-top: 1px solid rgba(255,255,255,0.15);
	justify-content: space-evenly;
	min-height: 59px;
	align-items: stretch;
	margin-top: calc(0.5em + 20px);
}
.contact-block > div {
	width: 100%;
	display: table;
}
.contact-block > div:nth-of-type(2) {
	border-left: 1px solid rgba(255,255,255,0.15);
	border-right: 1px solid rgba(255,255,255,0.15);
}
.contact-block > div > a {
	display: table-cell;
    vertical-align: middle;
	text-transform: uppercase;
	font-size: 11px;
	background-color: transparent;
	transition: background-color 200ms cubic-bezier(.19,.72,.62,.92);
}
.contact-block > div > a:hover {
	background-color: rgba(0,0,0,0.15);
}
.contact-block > div > a i {
	font-size: 18px;
	padding-top: 5px;
}

.notes-holder {
	text-align: left;
	margin-top: 2em;
	padding: 2em 4em 0 4em;
	border-top: 1px solid #eaeaea;
}
.notes-holder p {
	margin: 0 0 0 0;
}
.notes-holder small {
	opacity: 0.75;
}


.main-details-holder {
	text-align: left;
	padding: 0 4em 0 calc(4em + 40px);
}
.main-details {
	color: var(--lightblue);
	position: relative;
	padding-bottom: 1em;
	margin-top: 1em;
	border-bottom: 1px solid #eaeaea;
}
.main-details i {
	position: absolute;
	font-size: 20px;
	width: 40px;
	height: 40px;
	left: -40px;
	top: 0.5em;
}
.main-details span {
	white-space: nowrap;
}
.main-details small {
	opacity: 0.75;
}

.st0 {
	fill: var(--gold);
}
.st1 {
	stroke: var(--gold);
}

.fa-what3words:before {
	content: "•";
	color: transparent;
	background-image: url('https://vcardme.app/wp-content/themes/vcard/img/whatthreewords.svg');
	width: 20px;
	height: 20px;
	position: absolute;
	background-repeat: no-repeat;
	background-position: center center;
}
.fa-signal:before {
	content: "•";
	color: transparent;
	background-image: url('https://vcardme.app/wp-content/themes/vcard/img/signal.svg');
	width: 20px;
	height: 20px;
	position: absolute;
	background-repeat: no-repeat;
	background-position: center center;
}


.action-buttons-holder {
	margin: 2em 0 2em 0;
	padding: 0 4em 0 4em;
}
.action-buttons {
	margin: 2em 0 0 0;
	width: 100%;
	min-height: 50px;
	display: table;
	box-shadow: 0px 10px 14.1px 0.9px rgba(0,0,0,0.24), 0px 4px 19.6px 0.4px rgba(0,0,0,0.16);
	transition: box-shadow 200ms cubic-bezier(.19,.72,.62,.92);
}
.action-buttons:hover {
	box-shadow: 0px 20px 28.2px 0.9px rgba(0,0,0,0.24),0px 8px 40.18px 0.82px rgba(0,0,0,0.16);
}
.action-buttons i {
	margin-right: 10px;
}
.action-buttons a,
.action-buttons form {
	display: table-cell;
	vertical-align: middle;
	position: relative;
}
.action-buttons button {
	position: absolute;
	-webkit-appearance: none;
	padding: 0;
    margin: 0;
	width: 100%;
    height: 100%;
    background: none;
    border: none;
	color: white;
	left: 0;
	top: 0;
}
.action-buttons:nth-of-type(1) {
	background-color: var(--gold);
	color: white;
}
.action-buttons:nth-of-type(2) {
	background-color: white;
	color: var(--gold);
}


.overlay-fade {
	display: none;
	position: fixed;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0,0,0,0.50);
	z-index: 99;
}
.overlay {
	background-color: white;
	max-height: 80vh;
	overflow-y: scroll;
	max-width: 340px;
    width: 100%;
    border: none;
    top: 10vh;
	position: fixed;
	visibility: hidden;
	z-index: -99;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
    left: 50%;
    transform: translateX(-50%);
}
.overlay .wrapper {
	padding-top: calc(1em + 20px);
}
#close-dialog {
	height: 20px;
	text-align: right;
	position: absolute;
	right: 5%;
	top: 5%;
	z-index: 1;
}
#close-dialog img,
#close-dialog svg {
	height: 100%;
	display: inline-block;
}

.crunchify-social {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	text-align: left;
	padding: 1em 2em 2em 2em;
}
.crunchify-social > div {
	flex-basis: 100%;
	margin: 0 0 1em 0;
	height: 25px;
}
.crunchify-social a,
.crunchify-social span {
	position: relative;
	padding-left: calc(2em + 30px);
	line-height: 25px;
}
.crunchify-social img,
.crunchify-social svg {
	position: absolute;
	height: 25px;
	left: 0;
}
.crunchify-social div:nth-of-type(1) img,
.crunchify-social div:nth-of-type(1) svg {
	left: -1px;
}
.crunchify-social div:nth-of-type(2) img,
.crunchify-social div:nth-of-type(2) svg {
	left: 6px;
}
.crunchify-social input {
	width: calc(100% - 2em - 30px);
	height: 100%;
}


/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

@font-face {
	font-family:'Font-Name';
	src:url('fonts/font-name.eot');
	src:url('fonts/font-name.eot?#iefix') format('embedded-opentype'),
		url('fonts/font-name.woff') format('woff'),
		url('fonts/font-name.ttf') format('truetype'),
		url('fonts/font-name.svg#font-name') format('svg');
    font-weight:normal;
    font-style:normal;
}

h1 {
	margin: 0 0 0.5em 0;
	font-size: 22px;
	font-weight: 400;
}
h2 {
	margin: 0 0 0.5em 0;
	font-size: 14px;
	font-weight: 300;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width:320px) {
	.holder {
		width: 100%;
		padding: 1em 0 0 0;
	}
	main .holder {
		padding-bottom: 1em;
	}
}
@media only screen and (min-width:480px) {

}
@media only screen and (min-width:768px) {
	.holder {
		width: 570px;
		padding: 2em 0 0 0;
	}
	main .holder {
		padding-bottom: 2em;
	}
	.overlay {
		left: 0;
		transform: none;
	}


}
@media only screen and (min-width:1024px) {

}
@media only screen and (min-width:1140px) {

}
@media only screen and (min-width:1280px) {

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
