/* CSS Document */
#mobile:not( .mm-menu ) {display: none;}
.EditMode .columns {-webkit-column-count: auto; -moz-column-count: auto; column-count:auto;}
.EditMode img.mask {display:none;}
button:focus { outline:none !important; }
.stButton .stLarge:hover {background-position:0px !important;}
.box .EditableTextEdit {min-width:300px;}
* {box-sizing: border-box; background-repeat:no-repeat;}
.Error input[type=text] {color:red;}
input:focus { outline: none  !important;}
textarea:focus { outline: none  !important;}


.mobile {display:block;}
.desktop {display:none;}
@media only screen and (min-width: 768px) {
.desktop {display:block;}
.mobile {display:none;}
}


/* ----- HTML STYLES ----- */
/* undo default styling of common (X)HTML browsers */
:link,:visited { text-decoration:none }
ul,ol { list-style:none }
ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input,td,tr,th,td, select {margin:0px; padding:0px; border:none;}
p,li {line-height:1.4em; font-size:18px;}
p, li, a, input, select, option, label, textarea, button, span {font-family: "Montserrat", sans-serif; color:#706f6f; font-weight:normal; letter-spacing:0px;}
h1,h2,h3, h1 a, h2 a, h3 a {font-weight:normal; font-family: "Montserrat", sans-serif; color:#706f6f; letter-spacing:0px; line-height: 1.2em;}
h4,h5,h6, h4 a, h5 a, h6 a {font-weight:normal; font-family: "Montserrat", sans-serif; color:#706f6f; letter-spacing:0px;}
a img,:link img,:visited img { border:none; }
address {font-style:normal;}
.ErrorLabel {display:none;}
input {-webkit-appearance: none;}
.videoWrapper {position: relative; padding-bottom: 56.25%; /* 16:9 */ padding-top: 25px; height: 0; margin-bottom:40px; }
.videoWrapper iframe {position: absolute; top: 0;left: 0; width: 100%; height: 100%;}

#container {position: relative; max-width: 100%; margin: 0px auto; text-align: left; overflow:hidden;}
#container>div, header, footer, section {min-width:320px; width: 100%; max-width: 100%; float:left; position:relative;}
.wrapper {margin: 0 auto; width: 1300px; max-width: 100%;}
.content {width: 80%; margin:0 10%;}

@media only screen and (min-width: 768px) {
.content {float: left; width: 90%; max-width: 100%; margin:0 5%; position:relative;}
}



.margin {padding:40px 0;}

#holdingPage {margin:58px auto 0 auto; background-image:url("/wp-content/themes/cpm/assets/images/background.jpg"); background-size:cover; position: relative; max-width: 100%;  text-align: left; }

#holdingPage .content img {margin-top:-59px; position:absolute; top:0px; left:0px;}
#holdingPage .holdingCopy {float:left; background-color:rgba(47,98,139,0.8); width:100%; margin:100px 0; }
#holdingPage .holdingCopy h1 {color:#fff; text-transform:uppercase; font-size:25px; font-weight:normal; width:100%; float:left; border-bottom:1px solid #fff; padding:20px;}
#holdingPage .holdingCopy p {color:#fff; font-size:20px; font-weight:normal; width:100%; float:left;  padding:20px;}
#holdingPage .holdingCopy p a {color:#fff; font-size:20px; font-weight:normal; width:100%; float:left; margin-top:20px;}
#holdingPage .holdingCopy p a:hover {text-decoration:underline;}

@media only screen and (min-width: 768px) {
	#holdingPage .holdingCopy {width:65%; margin:0px;}
    #holdingPage .content {display:flex; align-items: center; justify-content: left; height:85vh;}
	#holdingPage .wrapper {height:85vh;}
	#holdingPage .holdingCopy h1 {padding:20px 50px;}
	#holdingPage .holdingCopy p {padding:20px 50px;}
	.margin {padding:60px 0;}
	
}


/* ----- HEADER ----- */
header a.logo {background-image:url("/wp-content/themes/cpm/assets/images/cpm-logo.png"); width:130px; height:87px; background-size:contain; display:block; float:left; position:relative; z-index:5; margin-top:39px;}
header .menu-header-container {float:right; position:absolute; top:89px; right:0px; z-index:5; background-color:#fff; padding:0 30px 40px 30px; display:none;}
header ul#menu-header {}
header ul#menu-header>li {float:left;}
header ul#menu-header>li.current-menu-item>a, header ul#menu-header>li.current-menu-parent>a {font-weight:bold; border-top:10px solid #fdc300;}
header ul#menu-header>li>a {cursor:pointer; text-transform:uppercase; text-transform:uppercase; font-size:15px; padding:5px 40px 20px 0px; margin-left:40px;}
header ul#menu-header>li>ul {display:none; position:absolute; background-color:#fdc300; padding:10px 0 40px 0; margin:20px 0 0 40px;}
header ul#menu-header>li>ul>li>a {font-weight:bold; font-size:15px; color:#fff; padding:7px 30px 7px 15px; display:block;}
header ul#menu-header>li>ul>li>a:hover {background-color:#2f628b;}
header ul#menu-header>li.active>ul {display:block;}

header, header .content {height:83px;}
.banner {height:330px; background-image:url("/wp-content/themes/cpm/assets/images/background.jpg"); background-size:cover;}
.banner .content {height:330px;}
.banner h1 {position:absolute; bottom:0px; background-color:#2f628b; color:#fff; font-weight:bold; width:125%; font-size:24px; margin-left:-12.5%; padding:15px 80px 15px 12.5%;}
.banner img {position:absolute; right:0px; bottom:30px; width:66px; z-index:10;}

@media only screen and (min-width: 768px) {
header a.logo { width:173px; height:116px; margin-top:49px;}
header, header .content {height:108px;}
.banner {height:465px; background-image:url("/wp-content/themes/cpm/assets/images/background.jpg"); background-size:cover;}
.banner .content {height:465px;}
.banner h1 {width:75%; font-size:30px; right:0px; padding:15px 15px 15px 30px;}
.banner img {position:absolute; right:-5.5555%; bottom:-94px; width:160px;}
}

@media only screen and (min-width: 1024px) {
header .menu-header-container {display:block;}
.banner img {right:0px; z-index:4;}
.banner h1 {width:60%; z-index:4;}
.banner:after {display:block; content:''; background-color:#fff; width:50%; height:66px; position:absolute; right:0px; bottom:0px; z-index:3;}
}

@media only screen and (min-width: 1400px) {
header .menu-header-container {top:40px;}
header a.logo { width:173px; height:116px; margin-top:0px;}
header, header .content {height:59px;}
	.banner h1 {right:150px;}
	.banner img {right:150px;}
	
}


/* ----- HAMBURGER ----- */
#navButton {float:right; margin-right: -12.5%; margin-top:35px;}
header .hamburger{height: 90px; width: 90px; position: relative; margin:auto; padding-top: 20px;  transition:0.3s; cursor: pointer;background-color:#ffffff; padding:20px; z-index:5;}
header .bar{height: 7px; width: 50px; display: block; position: relative; background-color: #fdc300; transition:0.6s; margin-top:25px;}
#navButton a {display:block; position:absolute; width:90px; height:90px; z-index:6;}
#navButton .bar:nth-of-type(1) {position:absolute; top: 0px; transition: background-color 0.6s, top 0.3s ease .3s, transform .3s ease-out .1s ; animation: mrotr 2s, cubic-bezier(.5, .2, .2, 1.01);}
#navButton .bar:nth-of-type(2) {position:absolute; top: 18px; transition: 0.6s; opacity:1;}
#navButton .bar:nth-of-type(3) {position:absolute; top: 36px; transition: background-color 0.6s, top 0.3s  ease .3s, transform .3s ease-out .1s  ; animation:mrotl 2s, cubic-bezier(.5, .2, .2, 1.01);}
#navButton.active .hamburger .bar:nth-of-type(1) {background-color:#fdc300; position:absolute; top:18px; transform:rotate(45deg); transition:  background-color 0.6s, top 0.3s ease .1s, transform .3s ease-out .5s;}
#navButton.active .hamburger .bar:nth-of-type(2) {background-color:#fdc300; position:absolute; opacity: 0; transition: background-color 0.6s,}
#navButton.active .hamburger .bar:nth-of-type(3) {background-color:#fdc300; position:absolute; top:18px; transform:rotate(-45deg); transition: background-color 0.6s, top 0.3s ease .1s, transform .3s ease-out .5s;}

@media only screen and (min-width: 768px) {
#navButton {margin-right: 0px; margin-top:60px;}
}

@media only screen and (min-width: 1024px) {
#navButton {display:none;}
}


/* ----- FOOTER ----- */
footer {background-color:#fdc300; margin-top:80px;}
footer a.logo {background-image:url("/wp-content/themes/cpm/assets/images/cpm-logo.png"); width:173px; height:116px; background-size:contain; display:block; float:left; margin-top:-59px;}
footer .menu-footer-container {float:left; clear:left; margin:30px 0 100px 0;}
footer .menu-footer-container li {float:none;}
footer .menu-footer-container a {color:#fff; font-weight:bold; font-size:15px; text-transform:uppercase;}
footer .copyright {float:left; clear:both; margin:0 0 40px 0;}
footer .copyright p {color:#fff; font-weight:bold; font-size:15px; text-transform:uppercase;}


@media only screen and (min-width: 768px) {
footer .menu-footer-container li {float:left; border-right:2px solid #fff; margin-right:10px; padding-right:10px; line-height:12px;}
footer .menu-footer-container li:last-child {margin-right:0px; padding-right:0px; border-right:0px;}
}


/* ----- COPY ----- */

.intro {background-color:#eaeff3;}
.intro .copy {padding:40px 0;}
.intro .copy p {font-size:20px;}
.copy.large p {font-size:20px;}

.copy {width:100%; float:left;}
.copy p {margin-bottom:20px; font-size:18px;}
.copy ul {margin-left:20px;list-style-type:disc; margin-bottom:15px;}
.copy li {margin-bottom:5px;}
.copy p:last-child {margin-bottom:0px;}
.copy h2 {font-size:26px; font-weight:bold; margin:40px 0 20px 0;}
.copy h3:first-child:before {display:none;}
.copy h3:before {display:block; content:''; width:200px; height:1px; border-top:2px solid #fdc300; padding-bottom:20px;}
.copy h3 {font-size:18px; font-weight:bold; margin-bottom:20px; }
.copy h4, .copy h4 a {color:#000; font-size:24px;}

@media only screen and (min-width: 768px) {
.intro .copy {padding:60px 0;}
.intro .copy {width:75%;}
.intro .copy p {font-size:28px;}
.copy.large p {font-size:28px;}
.copy h4, .copy h4 a  {font-size:30px;}
	
.copy {width:75%;}
}

@media only screen and (min-width: 1024px) {
.intro {background-color:#ffffff;}
.intro .copy  {background-color:#eaeff3;  width:97%; margin-left:-5.5555%; padding-left:5.5555%;}
.intro .copy p {width:80%;}
.copy {width:60%;}
}

@media only screen and (min-width: 1400px) {
.intro .copy  {width:1010px;}
}



#wpforms-72 {float:left; width:100%; margin-top:60px; font-family: "Montserrat", sans-serif; color:#706f6f; font-weight:normal;}
#wpforms-72 .wpforms-field-label {font-size:18px; font-weight:normal; padding-bottom:10px;}
#wpforms-72 input[type=text] {background-color: #eaeff3; border:0px; width:100%; max-width:100%;}
#wpforms-72 textarea {background-color: #eaeff3; border:0px; width:100%; max-width:100%; resize:none;}
#wpforms-72 button[type=submit] {background-color:#fdc300; color:#000; border:0px; font-weight:bold;} 

@media only screen and (min-width: 1024px) {
	#wpforms-72 {width:60%;}
}



/* ----- HOMEPAGE ----- */

#services {float:left; width:100%; margin-top:60px;}
.service {border-left: 2px solid #fdc300; padding-left:30px; margin-bottom:60px; position:relative; }
.service img {margin-bottom:20px;}
.service p {margin-bottom:20px; font-size:16px;}
.service a {display:block; font-size:16px; font-weight:bold; background-image:url("assets/images/plus.png"); padding-left:40px; height:30px; line-height:30px;}

@media only screen and (min-width: 768px) {
	#services {display:flex; flex-wrap:wrap;}
	.service {float:left; width:45%; margin-left:10%; padding-bottom:50px; }
	.service:nth-child(odd) {margin-left:0; clear:left;}
	.service a {position:absolute; bottom:0px;}
}


@media only screen and (min-width: 1024px) {
	.service {flex:1; float:left; width:22%; margin-left:4%; }
	.service:nth-child(odd) {margin-left:4%; clear:none;}
	.service:first-child {margin-left:0%;}
}


.wpforms-confirmation-container-full {border:1px solid #d4d4d4 !important; background-color:#fff !important;}






/* ----- ABOUT US ----- */

#team {}
.staff {float:left; width:100%; border-left:1px solid #fdc300; padding-left:10%; margin-top:60px;}
.staff .image {width:100%; height:230px; background-position:center center; background-size:cover; border-right:40px solid #fdc300; margin-bottom:50px;}
.staff p:first-child {margin-bottom:40px;}


@media only screen and (min-width: 768px) {
	.staff {width:47.5%; float:left; margin-left:5%; padding-left:5%;}
	.staff:nth-child(2n+1) {clear:left; margin-left:0;}
	.staff .image {height:200px;}
	.staff .copy {width:100%;}
}

@media only screen and (min-width: 1024px) {
	.staff {width:31.3333%; float:left; margin-left:3%; padding-left:3%;}
	.staff:nth-child(2n+1) {clear:none; margin-left:3%;}
	.staff:nth-child(3n+1) {clear:left; margin-left:0;}
	.staff .image {height:170px;}
}

@media only screen and (min-width: 1280px) {
#team {width:75%;}
	
}



