@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i|Lobster:400|Montserrat:200&display=swap');
:root {
  --purple: #5f2a78;
  --ltpurple: #ae94bb;
  --green: #2f8396;
  --ltblue: #def9ff;
  --ltgray: #efefef;
}
* {
	box-sizing: border-box;
}

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
  font-family: "Open Sans", sans-serif;
}
::-moz-selection {
  background: #2f839666;
  text-shadow: none;
}

::selection {
  background: #2f839666;
  text-shadow: none;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}
textarea {
  resize: vertical;
}
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
h1 {
	font-family: "Lobster", display;
	font-size: 7vw;
	font-weight: 400;
}
h2 {
	font-family: 'Montserrat', sans-serif;
	line-height: 1.5em;
}
footer p {
	font-size: 1em;
}
.phone {
	text-align: center;
}
.phone a {
	display: inline-block;
	color: white;
	line-height: 44px;
	border-radius: 22px;
	text-decoration: none;
	background-color: var(--green);
	letter-spacing: 1px;
	padding: 0px 15px;
	margin: 10px 0px;
}
#nav {
	display: none;
	position: relative;
	overflow-y: hidden;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}
.nav a {
	display: block;
	text-decoration: none;
	text-transform: uppercase;
	padding: 10px 0px;
}
.logo {
	max-width: 200px;
	min-width: 150px;
}
.brandingtop {
	text-align: center;
	padding: 30px 0px;
}
.brandingtop img {
	width: 70px;
}
.container {
	padding: 20px 20px;
}
#observerroot {
	position: -moz-fixed;
	position: fixed;
	width: 100%;
	height: 50px;
	top: -50px;
}
header .container {
	display: flex;
	margin: 20px;
	flex-direction: column;
	padding: 0px;
}
.header > a {
	line-height: 64px;
}
#menusymbol {
	position: absolute;
	right: 20px;
	top: 30px;
}
.revealmenu {
	display: block !important;
}
footer .container {
	background-color: var(--purple);
	color: white;
	text-align: center;
	padding: 2em 1em;
	font-size: 0.85em;
}
footer .container a {
	color: white;
	text-decoration: none;
}
.copyright {
	font-size: 0.85em;
}
.col4 {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax(170px, 1fr));
	grid-gap: 20px;
	grid-auto-flow: row;
}
.col2 {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax(280px, 1fr));
	-webkit-grid-gap: 20px;
	grid-gap: 20px;
}
.col3 {
	display: grid;
	grid-template-columns: repeat( 1, minmax(267px, 1fr));
	grid-gap: 20px;
}
col2, .col4 {
	
}
.row {
	max-width: 1200px;
	margin: 0px auto;
}
.caringprofessionals {
	background-color: rgb(170,170,170);
	background-image: url('../img/hospitalworkers.jpg');
	background-position: center top;
	background-size: cover;
	background-blend-mode: multiply;
	color: white;
}
.herohome {
	background: url('../img/herohome.jpg') no-repeat 0, 0 #5f2a78;
	background-size: cover;
	background-blend-mode: overlay;
	padding: 150px 50px 50px;
}
.heroservices {
	background: url('../img/heroservices.jpg') no-repeat 0, 0 #878787;
	text-align: center;
	background-size: cover;
	background-position: center top;
	background-blend-mode: overlay;
	padding: 150px 50px 50px;
}
.heroinsurance {
	background-color: #878787;
	background-image: url('../img/heroinsurance.jpg');
	text-align: center;
	background-size: cover;
	background-position: center top;
	background-blend-mode: multiply;
	padding: 150px 50px 50px;
}
.herocareers {
	background-color: #878787;
	background-image: url('../img/herocareers.jpg');
	text-align: center;
	background-size: cover;
	background-position: center top;
	background-blend-mode: multiply;
	padding: 150px 50px 50px;
}
.herocontact {
	background-color: #878787;
	background-image: url('../img/herocontact.jpg');
	text-align: center;
	background-size: cover;
	background-position: center top;
	background-blend-mode: multiply;
	padding: 150px 50px 50px;
}
.greenline {
	background-color: var(--green);
	width: 25%;
	margin: 0 auto;
	height: 3px;
}
.fullwidth {
	width: 100%;
}
.subtitle {
	font-size: 2.5em;
	font-size: 3vw;
}
.greenpill {
	color: white;
	background-color: var(--green);
	padding: 1em 4em ;
	-webkit-border-radius: 1.7em;
	border-radius: 1.7em;
	text-decoration: none;
	transition: background-color 1.2s;
	display: inline-block;
	margin: 30px 0px;
}
.greenpill:hover {
	background-color: #00def2;
}
.bggray {
	background-color: var(--ltgray);
}
.bgblue {
	background-color: var(--ltblue);
}
.bgpurple {
	background-color: var(--purple);
}
.green {
	color: var(--green);
}
.brandingjoin {
	position: relative;
}
.brandingjoin::before {
	content: url('../img/todaysicon.svg');
	width: 70px;
	position: absolute;
	transform: translate(50%, -50px);
	right: 50%;
}
.servicon {
	text-align: center;
	font-weight: bold;
	text-decoration: none;
	color: inherit;
	margin-bottom: 20px;
}
.servicon img {
	width: 100%;
	max-width: 267px;
}
.summary {
	background-color: white;
	padding: 15px;
	display: flex;
	flex-flow: column nowrap;
}
p.checkmark {
	position: relative;
	margin-left: 30px; 
}
.summary p:last-child {
	margin-top: auto;
}
.checkmark::before {
	content: "\2714";
	color: white;
	background-color: var(--green);
	line-height: 24px;
	text-align: center;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	position: absolute;
	top: 1px;
	left: -30px;
}
ul.ticks {
	list-style-type: none;
}
ul.ticks li {
	margin-bottom: 20px;
	-webkit-column-break-inside: avoid;
			  page-break-inside: avoid;
				   break-inside: avoid;
}
ul.ticks > li {
	font-weight: bold;
	position: relative;
}
ul.ticks ul li {
	font-weight: 400;
}
ul.ticks > li::before {
	content: "\2714";
	color: white;
	background-color: var(--green);
	line-height: 24px;
	text-align: center;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	position: absolute;
	margin-left: -40px;
}
.serviceintro {
	margin-bottom: 2em;
}
.serviceintro h2 {
	font-weight: 400;
	font-size: 2.2em;
}
.servicetext h3 {
	color: gray;
}
* Fading animation */
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}
.testimonials h2 {
	font-weight: 400;
	font-size: 36px;
	letter-spacing: 2px;
	color: gray;
	margin-top: 0px;
}
.testimonial {
	width: 200px;
	height: 200px;
	border-radius: 50%;
	margin: 0px auto;
	overflow: hidden;
}
.testimonial img {
	width: 100%;
}
.caption {
	max-width: 720px;
	margin: 0px auto;
	text-align: center;
}
.slider {
	width: 100%;
	overflow-x: hidden;
	display: flex;
}
.slide {
	width: 100%;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	justify-content: center;
	align-items: center;
	transition: margin-left 1.5s;
}
.next {
	margin-left: -100%;
}
.previous {
	margin-left: 100%;
}
.lastSlide {
	order: 2;
}
.aboutvisual {
	background-color: rgba(0, 0, 0, 0.6);
	background-size: cover;
}
.col3 .aboutvisual {
	position: relative;
	height: 236px;
	z-index: -1;
}
.col4 .aboutvisual {
	position: relative;
	height: 174px;
	z-index: -1;
}
.overlaycaption {
	background-color: rgba(0, 0, 0, 0.6);
	padding: 10px;
	color: white;
	position: absolute;
	bottom: 0px;
	margin: 0;
	width: 100%;
}
.aboutitem {
	padding: 20px;
	font-family: "Montserrat", sans-serif;
	font-size: 2em;
	background-color: var(--ltgray);
	color: gray;
	cursor: pointer;
	border: 1px solid #dedede;
	z-index: 1;
}
.active > span {
	transform: rotate(180deg);
}
.body {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.2s ease-out;
	background-color: white;
	z-index: 0;
	box-shadow: inset 0px 10px 5px rgba(0, 0, 0, 0.2);
}
.body p {
	margin: 0px;
	padding: 15px 20px;
}
footer .col4 div:not(:first-child) {
	border-radius: 25px;
	background-color: rgba(255,255,255,0.05);
}
.row {
	margin-bottom: 1em;
}
.formblock {
	padding: 10%;
	background-color: #206472;
}
form input[type=text], form input[type=email], form input[type=tel], form input[type=file], form textarea {
	padding: 20px;
	width: 100%;
	margin-bottom: 30px;
	font-family: "Montserrat", "Open Sans", sans-serif;
	font-size: 1.2em;
	color: gray;
}
.upload-btn-wrapper {
	position: relative;
	overflow: hidden;
	display: inline-block;
}
.btn {
	border: 1px solid gray;
	color: gray;
	background-color: white;
	padding: 20px 20px;
	border-radius: 8px;
	font-family: "Montserrat", "Open Sans", sans-serif;
	font-size: 1.2em;
}
.upload-btn-wrapper input[type=file] {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	cursor: pointer;
	width: 100%;
}
form input[type=submit] {
	display: block;
	width: 200px;
	text-align: center;
	color: white;
	margin: 30px auto 0px;
	cursor: pointer;
	background-color: #2F8396;
	padding: 20px;
	border-radius: 28px;
	border: none;
	transition: all 0.6s linear;
}
form input[type=submit]:hover {
	background-color: #0f4a56;
	box-shadow: 0px 10px 10px rgba(0,0,0,0.7);
}
.instruction {
	font-size: 10px;
	color: white;
	letter-spacing:  1px;
	text-transform: uppercase;
	margin-top: -10px;
}
a.download {
	display: inline-block;
	padding: 20px;
	width: 70%;
	border: 2px solid white;
	color: white;
	text-align: center;
	text-decoration: none;
	border-radius: 32px;
	margin: 30px 0px;
	transition: all 0.6s;
}
a.download:hover {
	background-color: white;
	color: var(--green);
	box-shadow: 0px 10px 10px rgba(0,0,0,0.7);
}
.contactboxes div {
	margin-bottom: 2em;
}
.contactreceptionist {
	display: flex;
	justify-content: center;
	align-items: center;
}
.thankyou {
	padding: 15px 20px;
	background-color: inherit;
	margin-top: 20px;
	position: relative;
	display: none;
	-webkit-filter: invert(1);
	filter: invert(1);
	-webkit-user-select: none;       
	-moz-user-select: none;
	user-select: none;
	border: 1px solid white;
}
.thankyou:before {
	content: '\02715';
	position: absolute;
	top: 5px;
	right: 8px;
}





/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
  display: none !important;
}

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}
.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}
.invisible {
  visibility: hidden;
}
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}
.reverse {
	color: white;
}
.center {
	text-align: center;
}
.columns {
	-webkit-columns: auto;
	-moz-columns: auto;
	columns: auto;
}


    /*==========  Mobile First Method  ==========*/

/* Custom, iPhone Retina */ 
@media only screen and (min-width : 320px) {
	header.ieclearfix {
		background-color: var(--ltgray);
		box-shadow: 0px 5px 15px rgba(0,0,0,0.5);
		width: 100%;
		position: -moz-fixed;
		position: fixed;
		z-index: 1;
	}
	header + div.container {
		padding-top: 200px;
	}
	.nav a {
		text-align: center;
		padding: 20px 0px;
		border-bottom: 1px solid var(--green);
		background-color: rgba(47, 131, 150, 0.6);
		color: white;
	}
}

/* Extra Small Devices, Phones */ 
@media only screen and (min-width : 576px) {
	.columns {
		-webkit-columns: 2;
		-moz-columns: 2;
		columns: 2;
		-webkit-column-gap: 2em;
		-moz-column-gap: 2em;
		column-gap: 2em;
	}
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
	header + div.container {
		padding-top: 150px;
	}
	.header {
		display: flex;
		align-content: center;
	}
	header .container {
		flex-direction: row;
	}
	.menu {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		flex-grow: 2;
		font-size: 0.9em;
		text-align: right;
	}
	.nav a {
		display: inline-block;
		padding: 10px 0px;
		color: inherit;
		background-color: transparent;
		margin-right: 1em;
		border-bottom: 4px solid transparent;
		text-align: right;
	}
	.nav a:hover {
		border-bottom: 4px solid var(--green);
	}
	.current {
		border-bottom-color: var(--purple) !important;
	}
	#menusymbol {
		display: none;
	}
	#nav {
		display: block;
	}
	.col2 {
		grid-template-columns: repeat( 2, minmax(267px, 1fr));
	}
	.col3 {
		grid-template-columns: repeat( 3, minmax(267px, 1fr));
	}
	.servicesphoto {
		
	}
	div.servicephoto {
		flex-basis: 120%;
	}
	.heroabout {
		padding: 150px 50px 50px;
	}
	.columns:nt {
		-webkit-columns: 3;
		-moz-columns: 3;
		columns: 3;
	}
	.servicestext {
		padding: 0px 20px;
	}
	.watermark {
		background-image: url('../img/todaysWatermark.png');
		background-repeat: no-repeat;
		background-position: 95% 90%;
	}
	.watermark_center {
		background-position: center center;
	}
	.contactreceptionist {
		justify-content: flex-end;
	}
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	.container {
		padding: 50px;
	}
	header .container {
		width: 90%;
		margin: 0px auto;
		padding: 15px 0px;
	}
	div.wide {
		font-size: 1.4em;
		max-width: 900px;
		margin: 1em auto;
		line-height: 1.75em
	}
}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {
	h1 {
		font-size: 90px;
	}
}
    
@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    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) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

