@font-face { font-family: 'Alegreya SC'; font-style: normal; font-weight: 400; src: url('/assets/AlegreyaSC.woff2') format('woff2'); }
@font-face { font-family: 'ConcielianBreak'; font-style: normal; font-weight: 400; src: url('/assets/ConcielianBreak.ttf') format('truetype'); }

a, a:visited, a:hover, a:active { color: inherit; text-decoration: none; }
ol { list-style-type: none; }
body { background-color: black; background-image: url('/assets/hex.png'); background-repeat: repeat-y; background-position: center; background-attachment: fixed; font-size: 12pt; padding: 0; margin: 0; }
body * { padding: 0; margin: 0; }
div.poc { font-family: monospace; margin: 1em 4em; word-wrap: break-word; }
em.mission { font-weight: bold; }
footer { background-color: #232323; color: #808080; }
footer > * a:hover { color: #e48b00; }
footer > nav { display: flex; justify-content: center; margin-bottom: 1.5em !important; font-family: 'Alegreya SC', sans-serif; font-size: .9em; }
footer > nav > section ul:last-child { border-right: solid 1px rgba(0, 0, 0, 0.4); }
footer > nav > section ul { text-shadow: -1px -1px 1px #000000; }
footer > nav > ul { font-weight: bold; list-style-type: none; text-align: center; margin: 0 auto; line-height: 1.6em; flex: 0 0 33.3%; border-right: solid 1px #3a3a3a; }
footer > nav > ul:last-child { border-right: none; }
footer { padding-top: 2em; }
header div ul { color: white; font-family: 'Alegreya SC', sans-serif; color: white; font-weight: bold; font-size: 10pt; }
nav#primary img { max-width: 100%; }
nav#primary > ul { display: flex; justify-content: space-evenly; align-items: center; font-family: 'Alegreya SC', sans-serif; font-size: 15pt; }
nav#primary ul li a.active { color: #cf1616; }
nav#primary ul li a:hover { color: #e48b00; }
nav#primary ul li { display: inline-block; }
nav#primary ul li#menuicon { color: #fe903c; display: none; border-style: solid; border-color: #904c00; border-width: 2px; border-radius: 3px; padding: 10px; }
nav#secondary > ul { color: #b5b6bc; position: absolute; right: 10px; top: 7px; font-family: sans-serif; }
nav#secondary ul li { display: inline-block; }
nav#secondary a:hover { color: #e48b00; }

a.blue { color:blue; }
a.toolurl { text-decoration: underline; color: blue; }
a.underline { text-decoration: underline; }
article.main-column a.blog_author { color: black; }
article.main-column a.blog_title { color: #a60505; }
article.main-column a { color: blue; }
article.main-column a.lightgray { color: #aaaaaa; }

.a-responsive {}
.blog_archive_entry { margin: 0.5em; 0em; font-weight: bold; }
#blog_archive_list { list-style-type: none; }
#breadcrumb a { color: #bd1414; font-weight: bold; }
#breadcrumb { background-color: black; font-family: 'Alegreya SC', sans-serif; color: #6a4102; }
#breadcrumb li { background: url('/assets/arrow-bullet.png') no-repeat left 10px; display: inline-block; padding: 0 1.0em 0 1.5em; }
#breadcrumb li:first-child { background: none; padding-left: 0; }
#breadcrumb { line-height: 2.5em; padding-top: 3px; font-size: .8em; margin-left: 10px; }
.by { display:inline; }
#contact-bar a.footer-email { background: url('/assets/mail-icon.png') 0px center no-repeat; padding-left: 32px; }
#contact-bar a.footer-phone { background: url('/assets/phone-icon.png') 0px center no-repeat; padding-left: 24px; }
#contact-bar { text-align: center; font-size: 1.1em; font-family: 'Alegreya SC', sans-serif}
#contact-block input:not([type=checkbox]),
#contact-block textarea { width: 100%; box-sizing: border-box; padding: 0.5em 1em; margin-bottom: 0.5em; font-size: 1em; border-radius: 5px; border: solid 1px rgba(0, 0, 0, 0.3); }
#contact-block input[type=button] { border: solid 3px #558855; background: #77aa77; color: #eeffee; font-weight: bold; font-size: 1.3em; padding: 0.35em 1em; margin-top: 1em; box-shadow: 0px 0px 10px 3px rgba(0, 0, 0, .3); }
#contact-block textarea { min-height: 15em; }
#contactError { color: red; font-weight: bold; }
#contact-form-title { display: none; }
.contact_services { font-size: 0.8em; margin-bottom: 2em; }
.contact_services input { float: right; }
.contact_services ul { list-style-type: none; width: 95%; margin: auto; }
#contact-spacer { margin-right: 2em; }
#contactThankYou { display: none; text-align: center; color: #E38B00; }
#copyright { width: 100%; text-align: center; font-size: 0.85em; font-style: italic; margin-top: 2em; font-family: 'Alegreya SC', sans-serif}
.ctr { text-align: center; }
.date { display: inline; }
.extrc-responsive { display: inline-block; vertical-align: middle; }
.flex_2col { display: flex; }
.flex_2col > div { flex: 0 0 50%; }
.flex_2col > div > h1:first-child,
.flex_2col > div > h2:first-child { margin-top: 0 !important; }
.fl { float: left; margin: 1em 1em 0 0; }
.fr { max-width: 100%; float: right; margin: 0 0 1em 1em; }
.img-responsive { max-width: 100%; }
.home-footer-message { text-align: center; color: white; font-weight: bold; font-size: 14pt; padding-top: 15px; padding-bottom: 15px; }
.home-slideshow-img { width: 100%; opacity: 0.4; }
.home-slideshow-text { position: absolute; top: 5%; color: white; font-family: 'Alegreya SC', serif; font-size: 30pt; text-shadow: 1px 1px #555555; padding-left: 50px; padding-right: 50px; }
.home-slideshow-slide { display: none; width: 100%; background-color: black; }
.main-column { max-width: 980px; margin: 0 auto; position: relative; }
.main-content { box-shadow: 0px 0px 10px #888888 inset; }
#next:hover { color: #e48b00; background-color: rgba(50, 50, 50, 0.8); }
#next { cursor: pointer; position: absolute; top: 50%; width: auto; margin-top: -22px;  padding: 16px; color: #888888; font-weight: bold; font-size: 18px; transition: 0.6s ease; right: 0; border-radius: 3px 0 0 3px; }
.our-mission { font-family: 'ConcielianBreak', serif; font-size: 30pt; text-align: center; letter-spacing: 2px; text-shadow: 2px 2px #333333; }
#page .archives h3 { clear: both; font-size: 1.5em; color: #a60505; margin-bottom: 25px; }
#page .archives { padding: 2em 3em; box-sizing: border-box; line-height: 1.5em; background-color: #ffffff; color: #505050; max-width: 980px; margin: 0 auto; text-align: center; box-shadow: 0px 0px 10px #888888 inset; }
#page article .article-meta { margin: 0 30px; }
#page article a.toolurl { padding: 0em 0em 0em 2em; }
#page article { background-color: #ffffff; color: #505050; }
#page article.blog { margin-bottom: 40px; }
#page article.blog ol { list-style-type: decimal; margin-left: 20px; }
#page article dd { margin-bottom: 2em; padding: 0 2em; }
#page article dt { font-weight: bold; font-size: 1.1em; margin-bottom: .5em; padding: 0 2em; }
#page article h1 { font-family: 'Alegreya SC', sans-serif; font-size: 3em; color: #cf1616; text-align: center; margin: .5em 0; clear: both; padding-bottom: 0.5em; }
#page article h2.blog_title { margin: 0 30px; font-size: 1.5em; text-align: left; }
#page article h2 { font-family: 'Alegreya SC', sans-serif; font-size: 2em; color: #d77b00; text-align: center; margin: 1.5em 0 .5em 0; clear: both; }
#page article h3 { font-family: 'Alegreya SC', sans-serif; font-size: 1.3em; margin: 1.5em 0 .5em 0; margin: 30px 30px 0px 30px; }
#page article hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 3em 0; padding: 0; }
#page article img { border: solid 1px rgba(0, 0, 0, .2); }
#page article img.screenshot { display: block; max-width: 95%; margin: 0 auto; }
#page article.homepage img { border: unset; }
#page article li { margin: 0 4em; }
#page article { padding: 2em 0em; line-height: 1.5em; word-break: break-word; }
#page article.homepage { background-color: black; padding: 0; line-height: 3em; box-shadow: unset; margin-top: 15px; }
#page article p.blog_summary { margin: 20px 60px 0 60px; }
#page article p { margin: 1em 2em; }
#page article p.tooldesc { margin: 1em 4em; }
#page article pre { margin: 1em 4em; overflow-x: scroll; }
#page article.homepage p { margin: 0; }
#page article p.summary { font-size: 1.3em; color: #9e7444; margin-bottom: 1em; }
#page article #sitemap li { margin: 1em 3em; }
#page-banner { background-color: #eaeaea; }
#page-banner div { max-width: 980px; max-height: 225px; overflow: hidden;  }
#page-banner-services div { max-width: 980px; overflow: hidden; }
#page .contact_services p { margin: .75em 0 .75em 0; font-weight: bold; background-color: #DBDBDB; border-radius: 5px 5px 0 0; padding: .25em 1em; }
#page { font-family: sans-serif; }
.page-image-header { margin-bottom: -4px; }
#page-banner-image-container { position: relative; }
#page-banner-image { width: 100%; max-width: 100%; margin-bottom: -4px; }
#page-banner-title { position: absolute; top: 40%; left: 65%; color: #ffb500; font-family: 'ConcielianBreak', sans-serif; font-size: 40pt; text-shadow: 3px 3px black; font-weight: normal; }
.Company#page-banner-title { top: 50%; left: 50%; transform: translate(-50%, -50%); }
.p-responsive { display: none; vertical-align: middle; }
#responsive-menu { display: none; position: absolute; top: 0; left: 0; z-index: 666; background-color: black; border-color: #904c00; border-width: 1px; border-style: solid; box-shadow: 0px 0px 15px #904c00 inset; }
#responsive-menu ul li { display: block; text-align: center; font-size: 16pt; padding: 15px; }
.service-list a.svc-link { font-weight: bold; font-family: sans-serif; font-size: 0.9em; color: #606060; display: block; width: 100%; height: 100%; text-align: center; line-height: 14em; border: solid 1px rgba(200, 200, 200, 0.6); transition: background-color .25s, color .35s, border .35s, box-shadow .35s; }
.service-list a.svc-link:hover { background-color: rgba(0, 0, 0, 0.05); color: #000000; border: solid 1px rgba(200, 200, 200, 1); box-shadow: 1px 1px 15px rgba(0, 0, 0, 0.4); }
.service-list { display: flex; flex-wrap: wrap; justify-content: space-evenly; padding: 0 2em 0 2em; }
.service-list > div { background-position: center center; background-repeat: no-repeat; flex: 0 0 24%; height: 8em; margin-top: 5px; }
.slide-fade { animation-name: slide-fade; animation-duration: 2s; }
#sitemap a:hover { text-decoration: underline; }
#sitemap a, #sitemap a:visited { color: #666666; }
#sitemap { font-weight: bold; font-size: 1.3em; }
#sitemap li li { font-size: .6em; margin: .5em 1em; }
#sitemap ul { list-style-type: none; }
#svc-app { background-image: url('/assets/application.png'); }
#svc-cloud { background-image: url('/assets/cloud.png'); }
#svc-hipaa { background-image: url('/assets/hipaa.png'); }
#svc-intrusion { background-image: url('/assets/intrusion.png'); }
#svc-mobile { background-image: url('/assets/mobile.png'); }
#svc-pci { background-image: url('/assets/pci.png'); }
#svc-pentest { background-image: url('/assets/shield.png'); }
#svc-research { background-image: url('/assets/research.png'); }
#svc-risk { background-image: url('/assets/flowchart.png'); }
#svc-socialengineering { background-image: url('/assets/mask.png'); }
#svc-training { background-image: url('/assets/training.png'); }
.text-spacer { margin-bottom: 75px; }
#the-header { background: black; }

@keyframes slide-fade { from { opacity: 0.4; } to { opacity: 1; } }

@media screen and (max-width: 980px) {
  nav#primary ul li#menuicon { display: block; text-align: center; }
  nav#primary ul li.mainmenu-li { display: none; }
  nav#primary > ul { justify-content: space-evenly; top: unset; }
  nav#secondary > ul { position: relative; display: block; background-color: black; text-align: center; padding-bottom: 15px; color: #bd1414; right: unset; }
  nav#footer { display: none; }
  .flex_2col { display: block; }
  #contact-form-title { display: block; }
  #contact-spacer { margin-left: 2em; }
  #page article.services { padding: 0; }
  #page article hr { margin: unset; }
  #page article h1.h1-responsive { font-size: 25pt; }
  .img-responsive { float: unset; display: block; margin: 0 auto; margin-bottom: 10px; }
  .p-responsive { display: inline-block; }
  .a-responsive { display: block; }
  .service-list { padding: 0 0 5px 0; }
  .service-list > div { flex: 0 0 49%; margin-left: 2px; margin-right: 2px; }
  .svc-empty { display: none; }
  #breadcrumb { display: none; }
  .our-mission { font-size: 18pt; }
  .home-slideshow-text { font-size: 18pt; }
  footer { padding-top: 1em; padding-bottom: 1em; }
  #page-banner-title { font-size: 30pt; }
}

@media screen and (max-width: 725px) {
  .our-mission { font-size: 13pt; }
  #page article.homepage { padding: 0; line-height: 1.5em; }
  .home-slideshow-text { font-size: 12pt; padding-left: 10px; padding-right: 10px; }
  .text-spacer { margin-bottom: 15px; }
  .home-footer-message { font-size: 10pt; }
  #contact-bar { text-align: center; font-size: 0.9em; }
  #page-banner-title { top: 50%; left: 50%; transform: translate(-50%, -50%); }
  #page article h2 { font-size: 1.5em; }
  div.poc { font-family: monospace; margin: 1em 2em; }
}
