﻿

@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url("https://use.typekit.net/tre2slm.css");

/*

font-family: "futura-pt-condensed", sans-serif;
font-weight: 700;
font-style: normal;

.jost-<uniquifier> {
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}


.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}



*/
:root{
    --teal:#1C6B6B; /* Deep Teal */
    --coral:#F50039;  /* Warm Coral */
    --cream:#F4ECE6; /* Warm Cream */
    --charcoal:#2B2F33;    /* Charcoal */
    --sage:#A3C8C2; /* Muted Sage */
    --ltsage:#E8F2F0;
    --ltcoral:#FFF0F4;
    --deepblue: #204C5C;
    --foottext: #5A7B86; /* #2B2F33; */

  }
  
x {
	color:#FFF0F4;
}  
body { margin:0; }
h1,h2,h3,h2,h5,h6 {   font-family: "Jost", sans-serif; }
p,ul,ol,li { font-family: "Roboto", sans-serif; }


.space-top { padding-top:25px; }
.space-bot { padding-bottom:25px; }
.space-top-lg { padding-top:40px; }

.grid {
	max-width: 1200px;
	margin: 0 auto;
	width:100%;
}
.barTop {
	background-color: #7DA9E6;
	width:100%;
	height: 15px;
}
.barFooter {
	background-color:var(--deepblue);
	width:100%;
	min-height: 350px;
	padding:30px 0;
}

.barHeader {
	background-color: #1C1C15;
	width:100%;
	min-height: 100px;
}
.barMenu {  padding: 0px 0px 10px 0px; min-height:45px; }

.headerCo {
	font-size:1.5em;
	font-weight:200;
	color:white;
	text-transform:uppercase;
	text-align:center;
	letter-spacing:3px;
	margin-top:35px;
}
.headerServ {
	font-size:2.2em;
	color:white;
	text-align:center;
}
.headerServ span {
	font-weight:100;
	color:#CCCCCC;
}
.headLogoBox {
	width:100%;
	text-align:center;
}
.headLogo {
	max-height:200px;
	height:100%;
	text-align:center;
	display:block;
	margin:0 auto;
}

.ctaBlock {
	width: 90%;
	margin: 10px auto;
	padding: 20px 20px 0 20px;
	border-top: 1px white solid;
	text-align:center;
}
.ctaHeadline {
  font-family: "Roboto", sans-serif;
	font-size:1.2em;
	font-weight:500;
	color:--red;
	text-transform:uppercase;
	letter-spacing:4px;
	text-align:center;
	margin-bottom:.4em;
}
.ctaPhone {
	font-family: "Roboto", sans-serif;
	font-size:1.4em;
	font-weight:500;
	color: var(--red);
	padding-right:25px;
}
.footAdr {
	font-family: "Roboto", sans-serif;
	text-transform:uppercase;
	font-size:1em;
	font-weight:normal;
	text-align:center;
	color: #ffffff;
	margin-bottom:20px;		
}
.footPhone {
	font-family: "Jost", sans-serif;
	font-size:2.5em;
	font-weight:500;
	text-align:right;
	color: #ffffff;
	margin-bottom:0px;	
	margin-top:75px;
}
.footEM {
	font-family: "Roboto", sans-serif;
	text-transform:uppercase;
	font-size:0.9em;
	font-weight:normal;
	text-align:right;
	color: #ffffff;
	text-transform:uppercase;
	letter-spacing:1px;
	
}
.footLine {
	width:100%;
	color: var(--foottext);
	margin: 25px 0;
	border-style:none;
	border-top-style: solid;
	border-top-width:1px;
}
.footServing {
	font-family: "Roboto", sans-serif;
	font-size:1em;
	font-weight:normal;
	text-align:center;
	color: var(--foottext);
	margin-bottom:20px;	
	letter-spacing:4px;
	text-transform:uppercase;
}
.footSHead, .footSHeadT {
	font-family: "Roboto", sans-serif;
	font-size:1em;
	font-weight:bold;
	text-align:left;
	color: var(--ligthblue);
	margin-bottom:15px;	
}
.footServ, .footServT {
	font-family: "Roboto", sans-serif;
	font-size:1em;
	font-weight:normal;
	text-align:left;
	margin-bottom:10px;	
}
#footTowns a,
#footTowns a:link,
#footTowns a:visited {
	color: var(--foottext);
	
}
#footTowns a:active,
#footTowns a:hover {
	color: var(--coral);
}
a div.footSHeadT:hover,
a div.footServT:hover {
	color: var(--coral);
}

.lineRight {
	border-right:1px var(--dkGray) solid;
	margin-right:20px;
}
.servHL {
	font-family: "Roboto", sans-serif;
	font-size:1.25em;
	color: #ffffff;
	color: var(--ligthblue);
	font-weight:bold;
	
	text-align:center;	
	text-transform:uppercase;
	margin-top:20px;
	margin-bottom:10px;	
}
.servImg {
	border-radius: 5px;
	display:block;
	margin: 5px auto;
	max-height:200px;
	border:1px var(--dkGray) solid;
}
.spaceBot { margin-bottom:30px; }
.spaceTop { margin-top:30px; }


img.framed {
  box-shadow:
    -30px -30px 0 -25px var(--red),
    30px 30px 0 -25px var(--dkGray);
  opacity:.75;
}
img.framed:hover {
  box-shadow:
    -30px -30px 0 -25px var(--dkGray),  30px 30px 0 -25px var(--red);
  opacity: 1;
}
img.framedHov {
  box-shadow:
    -30px -30px 0 -25px var(--dkGray),  30px 30px 0 -25px var(--red);
  opacity: 1;
}


a:hover > .servBox .servHL, .servHL:hover {
	color: var(--coral);
	text-decoration:none!important;
}
a:hover {
	 text-decoration: none;
}
a:hover .footServ, a:hover .footSHead,
a:hover .footServT, a:hover .footSHeadT {
	color:var(--foottext);
}
a:hover .footEM { color: var(--coral); }
a:hover .footPhone { color: var(--coral); }
a:visited .footEM,a:active .footEM { color: var(--foottext); text-decoration:none; }
a:visited .footPhone, a:active .footPhone { color: white; text-decoration:none; }


/* -----------SF OVERRIDES -------------------------------------------------*/
.sf-menu {
	font-family: "Roboto", sans-serif;
	color: var(-dkGray);
	text-transform:uppercase;	
	font-size:1em;	
	font-weight:normal;	
}
ul.sf-menu li a i {
	font-family: "Font Awesome 6 Free"; 
	font-weight: 900;
}

/* -----------IVORY OVERRIDES ----------------------------------------------*/
.iv-btn.btn-primary {
	background-color: var(--red);
	border-color: var(--red);
	color: #fff;
}
.iv-btn.btn-primary:hover, .iv-btn.btn-primary:focus {
	outline: none;
	background-color: var(--dkGray);
	border-color: var(--dkGray);
}

.servCol {
	border: 1px #85A7E5 dotted;
	border-radius:10px;
	background-color:#F8F8F8;
	padding:20px;
}
ul.blueDot li::before {
	content: "\2022\00a0\00a0";
	color: var(--red);
	font-weight:bold;
	margin-bottom: 1rem;
	margin-left: 1em;
	list-style-position: inside;
	text-indent: 1em;
	font-size:1em;
}
.barTopTitle {
	color: var(--blue);
	font-size:1px;
	display:none;
}
	
.no-border {
	border:none;
}
.contactIcon {
	color: var(--red);
	float:left;
	margin: 10px 30px 20px 0px;
	display:inline-block;
	font-size:2em;
	border-right:1px #85A7E5 solid;
	padding-right:30px;
}

.contactHL {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-size: 1.8em;
	color: #2A6C6B;
	line-height:normal;
}
.contactAddr {
	font-family: "Roboto", sans-serif;
	font-size: 1.2em;
	line-height:normal;	
	padding-top:5px;
}
.contactPhone {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-size: 2em;
	color: #EB003D;
	line-height:normal;
	margin-top:0;
}
.contactEM {
	font-family: "Roboto", sans-serif;
	font-size: 1.5em;
	line-height:normal;	
	padding-top:0;	
	padding-bottom:10px;
	margin-top:0;	
}


.contactForm {
	font-family: "Roboto", sans-serif;
    font-size: 1em;
    line-height: normal;
    padding: 20px;
    border-left: 3px var(--red) solid;
    border-radius: 10px;
    background-color: #f6f6f6;
}

.fldHalf {width:29%!important; display:inline-block!important;}
.fldCity {width:30%!important; display:inline-block!important;}
.fldState {width:10%!important; display:inline-block!important;}
.fldZip {width:15%!important; display:inline-block!important;}
#cForm {display:none; margin-bottom: 25px; }

.estNote {
	font-family: "Roboto", sans-serif;
	font-size:1em;
	line-height:normal;
	color:var(--blue);
	width:85%;
	border-top: 1px var(--blue) solid;
	border-bottom: 1px var(--blue) solid;	
	padding:10px;
	display:block;
	margin-left:50px;
	margin-bottom:20px;
}

.menu-container {
  display: flex;           /* ✅ make it a row */
  align-items: center;     /* center icons vertically */
  background-color: var(--coral);
  width: 100%;
  height: 50px;
  margin-left: auto;
  position: relative;      /* good for future layering */
  /* remove min-width to avoid wrapping in narrower cols */
  /* min-width: 500px; */
}

.menu-icon {
  flex: 0 0 50px;          /* ✅ lock circle size */
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #154C5C;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: 1;
}

/* keep the half-outside look */
.left-icon  { margin-left:  -25px; }
.right-icon { margin-right: -25px; }

.menu-icon i {
  font-size: 22px;
  color: #fff;
}

.menu-content {
  flex: 1;                  /* ✅ fills the space between icons */
  text-align: center;
  color: white;
  font-weight: 500;
}
.menu-content .sf-menu { 
  display: flex; 
  gap: 12px;                     /* adjust to taste */
}

.slogan {

	font-family: "Jost", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-style: normal;
	color:#FFFFFF;
	font-size:2.4em;
	text-align:center;
	margin-top:30px;
}
.slogan2 {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-style: normal;
	font-size:1.25em;
	color: var(--ltsage);;
	text-align:center;
	margin-top:0;
	margin-bottom:30px;	
}
.sloganSM {

	font-family: "Jost", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-style: normal;
	color:#FFFFFF;
	font-size:1,8em;
	text-align:center;
	margin-top:30px;

}
.slogan2SM {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-style: normal;
	font-size:1.1em;
	color: var(--ltsage);;
	text-align:center;
	margin-top:0;
	margin-bottom:30px;	
}
.barSloganSM {
	background-color:#369A8B;
	width:100%;
	border-radius:7px;	
}
.servBox {
	background-color:var(--ltsage);
	padding: 20px 30px;
	margin:50px 20px 20px 50px;
	padding-bottom:100px;
	position:relative;
	border-radius:7px;
	border-right: 2px #D0D0DB solid;
	border-bottom: 2px #D0D0DB solid;	
}
.servBox h2 {
	font-family: "Jost", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-style: normal;
	color:var(--teal);
	text-transform:uppercase;
	font-size:2em;
	display:inline-block;
	position:relative;
	top:-10px;
	left:40px;	
}
.servBox ul {
  columns: 2;                 
  column-gap: 20px;           
  -webkit-columns: 2;
  -moz-columns: 2;

  position: relative;
  left: 70px;
  padding-right: 20px;
  width:calc(100% - 60px);

  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: normal;
  font-size: 1.1em;
  line-height: 1.25em;
  list-style: disc;
}

.servBox ul li::marker {
  color: var(--teal);
	font-size:1.1em;  
}
.roundIcon {
	height:100px; 
	width:100px;
	border-radius:50%;
	background-color:var(--ltsage);
	position:absolute;
	top:-45px;
	left:-45px;
}
.roundIcon img {
	display:block;
	border-radius:50%;
	height:100%;
	min-height:100px;
	padding:10px;
}
.servBtn {
	background-color:var(--coral);
	padding:7px;
	text-align:center;
	color:#ffffff;
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-size:1.1em;
	max-width:200px;
	width:80%;
	margin:15px auto;
	display:block;
	border-radius:20px;
	border:2px #F50039 solid;
	position:absolute;
	bottom:20px;
	left: 50%;
	transform: translateX(-50%);	
}
.servFoot:hover {
	border:2px #F50039 solid;	
	background-color: #C87066;
	color:#ffffff;
}
.equal-row {
  display: flex;         /* make columns flex items */
  flex-wrap: wrap;       /* still wrap on small screens */
}

.equal-row > .col-6 {
  display: flex;         /* make the column stretch to same height */
}

.equal-row .servBox {
  flex: 1;                /* stretch all boxes equally */
  display: flex;         
  flex-direction: column; /* normal stacked layout inside */

  
}

.homeBio {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-style: normal;
	line-height:normal;
	font-size:1.1em;
	color: var(--teal);
	padding-left:40px;
	margin-left:20px;
	border-left: 2px #EB003D solid;
	line-height:1.4em;
	padding-top:10px;
	padding-bottom:10px;	
}

.logo {
  width: 250px;
  height: 250px;
  background-color: #154C5C;
  -webkit-mask: url("/images/CCM-Logo-Blk-nowords-tight.svg") no-repeat center;
  -webkit-mask-size: contain;
  mask: url("/images/CCM-Logo-Blk-nowords-tight.svg") no-repeat center;
  mask-size: contain;
}

.mainCo {
	color:#154C5C;
	text-transform:uppercase;
	text-align:center;
	width:100%;
	margin-bottom:40px;
	font-family: "futura-pt-condensed", sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size:3em;

}
.row-bottom { align-items: flex-end !important; }
.slideRow {
	background-color:#FAFAFA;
	padding:20px 0;
	width:100%;
}
.slideIMG {
	max-width:100%;
	height:auto;
}

.ctaHL {

	font-family: "Jost", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-style: normal;
	color:var(--coral);
	font-size:1.5em;
	line-height:normal;
	text-align:right;
	margin:0;

}
.ctaText {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-style: normal;
	line-height:normal;
	font-size:1em;
	color: var(--teal);
	text-align:right;
}
.ctaBtn {
	background-color:#F50039;
	text-align:center;
	color:#ffffff;
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-size:1em;
	padding:5px 20px;
	margin:0 auto;
	display:block;
	border-radius:20px;
	border:2px #F50039 solid;
	
}
.ctaCall {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-style: normal;
	line-height:normal;
	font-size:1em;
	text-align:center;
	line-height:normal;
	margin:0;
	font-size:.9em;
	text-transform:uppercase;
	
}
.ctaPH {
	font-family: "Jost", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-style: normal;
	color:#369A8B;
	font-size:1.5em;
	line-height:normal;
	text-align:center;	
	margin:0;
}
.ctaLineRight {
	margin-right:20px;
	padding-right:20px;
	border-right: 2px #F50039 solid;
	width:50%;
	float:left;
}

.ctaBox {
	xborder:1px #C25F55 solid;
	border-radius:10px;
	padding:30px;
	background-color:var(--ltcoral);
}
.quote {
  position: relative;
  font-family: "Roboto", sans-serif;
  font-style: italic;
  width: 75%;
  text-align: right;
  line-height: normal;
  margin: 0px auto;
  color: #369A8B;
  font-size: 1.1em;
  padding: 40px 50px; /* room for icons */
}

/* the duotone icons */
.q-open,
.q-close {
  position: absolute;
  font-size: 3em;
  line-height: 1;
  pointer-events: none;

  /* Duotone color layers */
  --fa-primary-color: #C25F55;
  --fa-secondary-color: #C25F55;
  --fa-primary-opacity: 0.3;
  --fa-secondary-opacity: 0.1;
}

.q-open {
  top: 15px;
  left: 0;
}

.q-close {
  bottom: 5px;
  right: -10px;
}

.quoteAttrib {
	  font-family: "Roboto", sans-serif;
	  font-style:normal;
	  width:75%;
	  margin:0 auto;	  
	  text-align:right;
	  line-height:normal;
	  color: #C25F55;
	  font-size:1em;
}
.quoteAfter {
	margin:20px;
	border-bottom:1px #efefef solid;
	padding-bottom:20px;
	
}
.barSlogan {
	background-color:#369A8B;
	width:100%;
}
.footLogo {
	width:180px;
}

.LogoCoBox {
	display:inline-block;
	text-align:center;
}


.mPhone,
.mobMenuPhone {
  font-weight: bold;
  margin-left: 40px;
  margin-right:-10px;
  font-size:1.1em;
  padding-top:4px!important;
  padding-right:20px;
  color:#ffffff;
  text-decoration:none;
 }
/* stop theme from painting over our layers */
.sf-menu .phoneItem > a,
.sf-menu .phoneItem:hover > a,
.sf-menu .phoneItem.sfHover > a,
.sf-menu .phoneItem > a:focus,
.sf-menu .phoneItem > a:active {
  background: transparent !important;
  box-shadow: none !important;
  color: #fff;
}

/* make the anchor the visual bar */
.sf-menu .phoneItem > a {
  position: relative;
  display: inline-block;
  height: 43px;
  line-height: 43px;
  padding: 0 28px 0 16px;      /* right room before the notch */
  text-decoration: none;
  z-index: 1;
  margin-right:-20px;
}

/* ::before = the hover rectangle (dark) */
.sf-menu .phoneItem > a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #154C5C;         /* hover color */
  border-radius: 6px;          /* optional: left corners */
  opacity: 0;                  /* hidden until hover */
  transition: opacity .2s;
  z-index: -1; 

}

/* ::after = the circular "cutout" painted in bar color */
.sf-menu .phoneItem > a::after {
  content: "";
  position: absolute;
  top: 50%;
  right:0;
  transform: translate(50%, -50%); /* center circle on right edge */
  width: 50px;                     /* match your icon diameter (36) */
  height: 50px;
  border-radius: 50%;
  background: var(--coral);        /* same as bar behind */
  opacity: 0;                      /* hidden until hover */
  transition: opacity .2s;
  z-index: 0;                      /* above ::before, below text */
}

/* show both when the LI is hovered (covers Superfish behavior) */
.sf-menu .phoneItem:hover > a::before,
.sf-menu .phoneItem.sfHover > a::before,
.sf-menu .phoneItem:hover > a::after,
.sf-menu .phoneItem.sfHover > a::after {
  opacity: 1;
}

.footSocial {
	font-size:2.3em;
	color:#ffffff;
	text-align:center;
	width:100%;
	margin-top:80px;
}
.footSocial a {	color: #ffffff;}
.footSocial a:hover { color: var(--coral)}

.slideIMG {	position:relative;}
/*
.slideCap {
	position:absolute;
	left: 0;
	width:76%;
	top: 25%;
	background-color:rgba(245, 0, 57, 0.9);
	color:#ffffff;
	padding:20px 50px 20px 80px;
	border-top-right-radius:10px;
	border-bottom-right-radius:10px;	
}*/
.slideCap h2 {

	font-family: "Jost", sans-serif;
	font-weight:bold;
	color:#ffffff;
	font-size:2.2em;
	line-height: normal;
	
}
.slideCap h5 {

	font-family: "Roboto", sans-serif;
	color:#ffffff;
	font-size:1.3em;
	line-height: normal;	
	
}
.sf-menu ul li {
	background: rgba(245, 0, 57, 0.7);
}
.headerR {
	padding-left:50px;
	padding-right:25px;
	
}
.mobMenuIcon {
	float:left;	
	display:block;
	margin-left:10px;
}

.simple-slider {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 40px auto;
	aspect-ratio: 1200 / 330;
	contain: layout;
	padding-bottom: 40px;		
}

@media (max-width: 750px) {
	.simple-slider {
		aspect-ratio: auto;
		height: 200px;
	}
}

.simple-slider .slide {
	position: absolute;
	inset: 0;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
	transition: opacity .24s ease;
	will-change: opacity;
	display: block; /* ensure visible for opacity swap */
}

.simple-slider .slide.is-active {
	opacity: 1;
	pointer-events: auto;
}

.simple-slider .slideIMG {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	z-index: 0;
}

.simple-slider .slideCap {
	position: absolute;
	left: 0;
	top: 25%;
	width: 76%;
	max-width: 920px;
	background: rgba(245, 0, 57, 0.5);
	color: #fff;
	padding: 20px 50px 20px 80px;
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
	z-index: 1;
	box-sizing: border-box;
}

@media (max-width: 750px) {
	.simple-slider .slideCap {
		top: auto;
		bottom: 12px;
		width: calc(100% - 24px);
		max-width: none;
		margin-left: 12px;
		padding: 14px 18px;
		border-top-right-radius: 8px;
		border-bottom-right-radius: 8px;
	}
}

@media (max-width: 500px) {
	.simple-slider .slideCap {
		bottom: 8px;
		margin-left: 8px;
		width: calc(100% - 16px);
		padding: 10px 14px;
		border-top-right-radius: 6px;
		border-bottom-right-radius: 6px;
	}
}

.simple-slider .nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	border: 0;
	background: rgba(0, 0, 0, .35);
	color: #fff;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	cursor: pointer;
	z-index: 2;
}
.simple-slider .nav:hover {
	background: rgba(0, 0, 0, .55);
}

.simple-slider .nav.prev {
	left: 10px;
}

.simple-slider .nav.next {
	right: 10px;
}

.simple-slider .dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -20px;
	display: flex;
	gap: 8px;
	justify-content: center;
	z-index: 3;
}

.simple-slider .dots button {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: 0;
	cursor: pointer;
	background: rgba(0, 0, 0, 0.5);
}

.simple-slider .dots button[aria-current=true] {
	background: rgba(235, 0, 61, 0.5);
}
.headPic img {
	width:100%;
	max-width:580px;
	border-radius:10px;
	height:auto;
	margin-bottom:20px;

}
.headline1 {
	
	font-family: "Jost", sans-serif;
	font-weight:bold;
	color: #2A6C6B;
	font-size:2em;
	line-height: normal;
	padding:30px;
	width:130%;
	margin-left:-10%;
	background-color:#efefef;
	border-radius:7px;
	padding-right:20%;	
	line-height:normal;
}

.headline3 {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: normal;
  font-size: 1.1em;
  line-height: 1.25em;

}
h3.headline3 strong {
	font-weight:bold;
}
.row-bottom-align {
  align-items: flex-end;   /* aligns children columns to bottom */
  position:relative;
}

.servList {
  columns: 2;                 
  column-gap: 20px;           
  -webkit-columns: 2;
  -moz-columns: 2;

  position: relative;
  left: 70px;
  padding-right: 20px;
  width:calc(100% - 60px);

  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: normal;
  font-size: 1.1em;
  line-height: 1.25em;
  list-style: disc;
  margin-bottom: 20px;
}

.servList li::marker {
  color: var(--teal);
	font-size:1.1em;  
}
.servCat {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-size: 1.5em;
	color: #2A6C6B;
	text-transform:uppercase;  
	background: linear-gradient(to right, #efefef, #ffffff);
	padding:10px;
	border-top-left-radius: 7px;
	border-bottom-left-radius: 7px;	
}
.servIntro {
	font-family: "Roboto", sans-serif;
	color: #2A6C6B;	
	font-optical-sizing: auto;
	font-weight: normal;
	font-size: 1.1em;
	margin: 0 20px 15px 40px;;
	line-height:normal;
	
}
.servPics {
	margin:40px auto;
}
.servPics img {
	max-width:49%;
	padding:5px;
	display:inline-block;
}

.checklist{
  --icon-color:#F50039;
  --text-color:#154C5C;
  list-style:none;
  margin:0;
  padding:0;
}
.checklist li{
  position:relative;
  padding-left:1.75em;
  padding-top:0;
  margin:.35em 0;
  color:var(--text-color);
 
  margin-left:40px;
  font-family: "Jost", sans-serif!important;
  font-size:1.2em;  
  line-height:1.25em;
}

.checklist li::before{
  content:"\f14a";
  position:absolute;
  left:0;
  top:.1em;
  font-size:1.2em!important;
  line-height:1;
  color:var(--icon-color);

  /* FA7/FA6 variable shorthand (preferred) */
  font: var(--fa-font-regular);
}

/* Fallback when variables aren’t exposed (compat mode, older kits) */
@supports not (font: var(--fa-font-regular)){
  .checklist li::before{
    /* Try FA7 then FA6 family names */
    font-family:
      "Font Awesome 7 Free",
      "Font Awesome 7 Classic",
      "Font Awesome 6 Free",
      "Font Awesome 6 Classic",
      "Font Awesome 5 Free";
    font-weight:400; /* Regular */
  }
}

/* Optional: make the list use Solid icons by adding .solid */
.checklist.solid li::before{
  font: var(--fa-font-solid);
}
@supports not (font: var(--fa-font-regular)){
  .checklist.solid li::before{
    font-family:
      "Font Awesome 7 Free",
      "Font Awesome 7 Classic",
      "Font Awesome 6 Free",
      "Font Awesome 6 Classic",
      "Font Awesome 5 Free";
    font-weight:900; /* Solid weight */
  }
}

.introCheck{
  --icon-color:#F50039;
  --text-color:#154C5C;
  list-style:none;
  margin:0;
  padding:0;
}
.introCheck li{
  position:relative;
  padding-left:1.5em;
  margin:.35em 0;
  color:var(--text-color);
  line-height:normal;
  margin-left:40px;
  font-family: "Jost", sans-serif!important;
  font-size:1.05em;  
}

.introCheck li::before{
  content:"\f14a";
  position:absolute;
  left:0;
  top:.25em;
  font-size:1.05em!important;
  line-height:1;
  color:var(--icon-color);

  /* FA7/FA6 variable shorthand (preferred) */
  font: var(--fa-font-regular);
}

/* Fallback when variables aren’t exposed (compat mode, older kits) */
@supports not (font: var(--fa-font-regular)){
	.introCheck li::before{
    /* Try FA7 then FA6 family names */
    font-family:
      "Font Awesome 7 Free",
      "Font Awesome 7 Classic",
      "Font Awesome 6 Free",
      "Font Awesome 6 Classic",
      "Font Awesome 5 Free";
    font-weight:400; /* Regular */
  }
}

/* Optional: make the list use Solid icons by adding .solid */
.introCheck.solid li::before{
  font: var(--fa-font-solid);
}
@supports not (font: var(--fa-font-regular)){
  .introCheck.solid li::before{
    font-family:
      "Font Awesome 7 Free",
      "Font Awesome 7 Classic",
      "Font Awesome 6 Free",
      "Font Awesome 6 Classic",
      "Font Awesome 5 Free";
    font-weight:900; /* Solid weight */
  }
}

.servIntro {
	font-size:1.2em;
	text-transform:uppercase;
	text-align:center;
	color: #204C5C;
	font-weight:bold;
}
.headshot {
	width:80%;
	border-radius:5px;
	display:block;
	margin:0 auto;
	margin-top:10px;
}
.meetKeith {
	font-family: "Jost", sans-serif; 
	color: #2A6C6B;
	text-align:center;
}
.meetKeithAbout {
	font-family: "Jost", sans-serif; 
	color: #2A6C6B;
	
}

.keithCaption {
	text-align:center;
	margin:20px auto;
	color: #2A6C6B;
	font-weight:bold;	
	font-size: 1.2em;
}
.meetLine {
	background-color:#fbfbfb;
	border-top: 1px #dddddd solid;
	border-bottom: 1px #dddddd solid;
}
.homeIntro {
	font-size:1.05em;
	margin:0 20px 0 calc( 25% + 35px );
	color:#204C5C;
	font-family: "Roboto", sans-serif;
}
p strong {
	font-weight:bold!important;
}

.gitrdone {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-size: 1.8em;
	color: #EB003D;
	line-height:normal;
	text-align:center;
}
.gitrdoneP {
	text-align:center;
}

.notOnList {
	font-size:1.1em;
	color:#459B8B;
	font-style:italic;
	text-align:center;
	margin-top:3em;
}
ul.checklist li strong {
	font-weight:bold!important;
  	font-family: "Jost", sans-serif;	
}
#qForm {
	display:none;
}
.formFN { display:inline-block; width:35%; }
.formLN { display:inline-block; width:64%; }
.formFP {
	margin:5px 10px;
	color:gray;
	line-height:normal;
	font-size:.9em;
}
.subBtn {
	background-color:#EB003D!important;
	color:#ffffff!important;
}