/*------ T4 Direct Edit -------- */
a.t4Edit-page{display:inline-block;width:14px;height:20px;background:url(/media/massey-cancer-center-archive/annual-report/imgs/pencil.gif) no-repeat;text-align:left;text-indent:-9999px}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

img, embed {
  height: auto !important;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

body {
  font-family: "Helvetica Neue", Helvetica, sans-serif;
  font-size: 16px;
  line-height: 26px;
}

h1, h2, h3, h4 {
  font-family: "Roboto Slab", serif;
  font-weight: 700;
}

h1 {
  color: #222;
  font-size: 48px;
  line-height: 50px;
  margin: 20px 0;
}

h2 {
  color: #006894;
  font-size: 32px;
  line-height: 38px;
  margin: 30px 0 15px 0;
}

h3 {
  color: #333;
  font-size: 26px;
  line-height: 34px;
  margin: 20px 0;
}

h4 {
  color: #333;
  font-size: 23px;
  font-weight: 400;
  line-height: 30px;
  margin: 20px 0 10px;
}

h5 {
  color: #333;
  font-size: 19px;
  font-weight: 400;
  border-bottom: 1px solid #ccc;
  padding-bottom: 10px;
}

b, strong {
  font-weight: bold;
}

i {
  font-style: italic;
}

a:focus, input:focus {
  border: none;
}

/* Layout
------------------------------------------------------*/
.wrapper {
  background: #000;
}

/* Header
------------------------------------------------------*/
.masthead {
  padding: 30px 0 20px;
}

.title h1 {
  font-size: 28px;
  line-height: 30px;
  margin: 0;
}
.title h1 a {
  color: #fff;
}

.search input {
  -moz-border-radius: 20px / 20px;
  -webkit-border-radius: 20px 20px;
  border-radius: 20px / 20px;
  font-size: 13px;
  padding-left: 15px;
  outline: none;
}

#searchform {width:50%;float:right;}
.subscribeButton {
  color: #fff;
  font-family: "Roboto Slab",serif;
  background: #B02E01;
  padding: 4px 10px;
  float: left;font-size: 13px;
  top: 0px;
  position: relative;
  line-height:25px;
  font-weight: bold;
  text-transform: uppercase;
}
.subscribeButton:hover {background:#B02E01;}
li.subscribeMobile {display:none;}

/* Feature
------------------------------------------------------*/
.feature {
  position: relative;
}

.flex-caption {
  position: absolute;
  width: 100%;
  height: auto;
  padding: 0 45px 30px 45px;
  text-align: center;
  margin: 0 auto;
  top: inherit;
  left: 0;
  right: 0;
  bottom: 0;
  color: #fff;
  background: -moz-linear-gradient(top, transparent 0%, transparent 1%, rgba(0, 0, 0, 0.75) 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, transparent), color-stop(1%, transparent), color-stop(100%, rgba(0, 0, 0, 0.75)));
  background: -webkit-linear-gradient(top, transparent 0%, transparent 1%, rgba(0, 0, 0, 0.75) 100%);
  background: -o-linear-gradient(top, transparent 0%, transparent 1%, rgba(0, 0, 0, 0.75) 100%);
  background: -ms-linear-gradient(top, transparent 0%, transparent 1%, rgba(0, 0, 0, 0.75) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0.95) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 );
}
.flex-caption h2 {
  color: #fff;
  font-family: "Roboto Slab", serif;
  font-size: 50px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.5), 0 1px 20px rgba(0, 0, 0, 0.25);
}
.flex-caption p {
  font-size: 19px;
  line-height: 24px;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5), 0 1px 4px rgba(0, 0, 0, 0.5);
}

/* Intro content (I want to)
------------------------------------------------------*/
.intro-content-wrapper {
  background: #006894;
  border-top: 5px solid #F8b300;
  border-bottom: 5px solid #F8b300;
  margin-top: -100px;
  padding: 50px 0;
  text-align: center;
}

.intro-content header {
  padding: 90px 0 0;
}
.intro-content h1 {
  color: #fff;
  font-size: 48px;
  margin: 0 0 25px;
}
.intro-content li {
  border-right: 2px solid #8dcac8;
}
.intro-content li:first-child {
  border-left: 3px solid #8dcac8;
}
.intro-content a {
  color: #fff;
  font-family: "Roboto Slab", serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 19px;
  display: block;
  padding: 10px;
  border-right: 1px solid #8dcac8;
  min-height: 97px;
}
.intro-content a:hover {
  background: #082d47;
}

/* Primary content
------------------------------------------------------*/
.primary-content {
  background: #f6f6f6;
  padding: 30px 0;
}

body.sub .primary-content {
  background: #fff;
}

.announcements h2, .poll h2 {
  color: #333;
  font-family: "Roboto Slab", serif;
  font-size: 26px;
  border-bottom: 1px solid #b4b4b4;
  margin: 15px 0;
  padding-bottom: 10px;
}

.announcements a {
  color: #006894;
  font-weight: bold;
}
.announcements a:hover {
  text-decoration: underline;
}
.announcements li {
  font-size: 16px;
  line-height: 24px;
  margin: 30px 0 15px;
}

/* Content
------------------------------------------------------*/
.content {
  padding: 0 15px 60px;
  min-height: 500px;
}
.content header {
  margin-bottom: 30px;
}
.content ul {
  list-style-type: disc;
  margin: 15px 0 15px 30px;
}
.content ul ul {
  list-style-type: circle;
  margin: 0 0 10px 30px;
}
.content ol {
  list-style-type: decimal;
  margin: 15px 0 15px 30px;
}
.content li {
  margin-bottom: 2px;
}
.content p {
  margin-bottom: 15px;
}
.content a {
  color: #006894;
  font-weight: 700;
}
.content a:hover {
  text-decoration: underline;
}

/* Secondary content (CTA - Get in touch)
------------------------------------------------------*/
.secondary-content {
  background: #006894;
}

.cta-contact {
  text-align: center;
}
.cta-contact h2 {
  margin: 0;
}
.cta-contact a {
  color: #fff;
  display: block;
  padding: 30px 0;
}
.cta-contact a:hover {
  text-decoration: underline;
}

/* Footer
------------------------------------------------------*/
footer {
  background: #000;
  color: #fff;
  font-size: 1rem;
  line-height: 20px;
  padding: 30px 0;
  /* Social */
  /* end social */
}
footer p {
  margin-bottom: 0;
}
footer a {
  color: #FFB300;
  font-weight: bold;
}
footer a:hover {
  text-decoration: underline;
}
footer .updated {
  margin-top: 15px;
}
footer .social {
  text-align: right;
  margin: 0;
}
footer .social li {
  display: inline-block;
}
footer .social a {
  font-size: 15px;
  text-align: center;
  padding: 8px 0px;
  color: #fff;
  display: inline-block;
  margin-right: 10px;
}
footer .fa {
  width: 30px;
  height: 30px;
  padding: 8px;
  border: solid 0px transparent;
  border-radius: 50%;
}
footer .fa-facebook {
  background-color:#3B5998;
}
footer .fa-linkedin {
  background-color:#0e76a8;
}
footer .fa-twitter {
  background-color:#00aced;
}
footer .fa-instagram {
  background-color:#cd486b
}
footer .fa-youtube {
  background-color:#ff0000;
}
footer .t4Edit-page {
 background:url(/media/technology-services/styleassets/images/pencil.gif) no-repeat 2px 5px;
display:inline-block;
  height:20px;
  text-align:left;
  text-indent:-9999px;
  width:14px;
}

.dei_message {
    max-width: 800px;
    color: #FFB300; /* VCU Gold */
    font-style: italic;
    line-height: 1.5rem;
    text-align: center;
    margin: 0 auto;
    padding: 1rem;
    width: 100%;
}
@media (min-width: 1024px) {
    .dei_message {
        text-align: center;
    }
}

footer .text-only {
	text-align: center;
    padding-top: 1em;
}

/* end footer */
/*--------------------------------------------------
	Main nav
----------------------------------------------------*/
nav {
  background: #222;
  position: relative;
}

nav.row {
  min-width: 0 !important;
}

nav a#pull {
  display: none;
}

nav ul {
  margin: 0;
  padding: 0;
}

nav li {
  padding: 0;
}

nav ul li a, nav a {
  color: #fff;
  font-size: 18px;
  font-family: "Roboto Slab", serif;
  font-style: normal;
  font-weight: 500;
  padding: 1em 0;
  text-align: center;
  display: block;
}

.mainNav a:hover {
  background: #ffb300;
  color: #000;
}

.mainNav .current, .mainNav .current:hover {
  background: #222;
  color: #fff;
  border-bottom: 5px solid #FFb300;
}

.mainNav table {
 display: none;
}

#search-mobile,
#mobile-search,
.sub-nav {
  display: none;
}

body.who .nav-who a,
body.courses .nav-courses a,
body.support .nav-support a {
  background: #f16a56;
}

/*--------------------------------------------------
	Sub nav
----------------------------------------------------*/
.subNav {
  background: #DEDEDE;
  text-align: center;
}

.subNav li {
  float: none;
  display: inline-block;
}

.subNav li a {
  color: #000;
  border-bottom: 4px solid #DEDEDE;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  padding: 10px 20px;
}

.subNav a:hover,
.subNav .current {
  border-bottom: 4px solid #000000;
}

.text-center {
  text-align: center;
}

/*
	Table of Contents
		- Images
		- Buttons
		- Callout box
		- New entry
		- Poll
		- Accordion
		- Go to top
*/
/* Images
------------------------------------------- */
img.left {
  margin: 0 25px 25px 0;
}

/* Buttons
------------------------------------------- */
a.button, input.button {
  background: #f16a56;
  color: #fff;
  display: inline-block;
  font-family: "Roboto Slab", serif;
  font-size: 21px;
  margin: 20px 0 0;
  padding: 10px 30px;
  border: none;
  text-align: center;
  cursor: pointer;
}

a.button:hover, input.button:hover {
  background: #6a210e;
  text-decoration: none;
}

/* Tables
------------------------------------------- */

table {
  margin-bottom: 15px;
}

table td {
  border: 1px dashed #bbbbbb; padding: 5px;
}


/* Callout box
------------------------------------------- */
.callout {
  background: #f3f6f9;
  padding: 25px;
  width: 100%;
  max-width: 350px;
}
.callout h1 {
  font-size: 24px;
  line-height: 26px;
  border-bottom: 1px solid #216fb5;
  padding-bottom: 10px;
  margin: 0 0 15px;
}
.callout.right {
  margin: 0 0 25px 25px;
}
.callout ul {
  margin-top: 0;
}

ul.no-bullet {
  list-style-type: none;
  margin: 0;
}

/* News entry
------------------------------------------- */
.news-entry {
  border-bottom: 1px solid #ccc;
  margin-bottom: 30px;
  padding-bottom: 20px;
}
.news-entry h3 {
  margin-bottom: 10px;
}

/* Poll
------------------------------------------- */
#qp_rb_186627 {
  display: none;
}

.answer > div:nth-child(2) {
  background: #f16a56 !important;
  border: none !important;
  height: auto !important;
}

.poll form {
  background: #fff;
  padding: 30px 20px 40px;
}
.poll .question {
  background: #082d47;
  color: #fff;
  display: block;
  padding: 15px 25px;
}
.poll .answer {
  display: block;
  padding-top: 5px;
  padding-bottom: 5px;
  clear: both;
  cursor: pointer;
}
.poll .answer span {
  display: block;
  padding-left: 30px;
  margin-bottom: 10px;
  line-height: 18px;
}
.poll input[type="radio"] {
  float: left;
  width: 25px;
  margin-left: -25px;
  margin-top: -1px;
  padding: 0px;
  height: 18px;
}
.poll input[type="submit"] {
  background: #f16a56;
  color: #fff;
  font-family: "Roboto Slab", serif;
  font-size: 21px;
  margin: 25px 0 0;
  padding: 10px 30px;
  border: none;
  text-align: center;
  cursor: pointer;
}
.poll input[type="submit"]:hover {
  background: #6a210e;
}

/* Accordion
------------------------------------------- */
ul.accordion {
  margin: 0 0 22px 0;
  border-bottom: 1px solid #ccc;
}
ul.accordion ul {
  list-style-type: disc;
}
ul.accordion ul ul {
  list-style-type: circle;
}

ul.accordion:last-child {
  border-bottom: none;
}

ul.accordion > li {
  background: none;
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.accordion > li .content {
  display: none;
  padding: 15px;
  min-height: 0;
}

ul.accordion > li.active .content {
  background: white;
  display: block;
  padding: 0;
}

ul.accordion h2 {
  margin-bottom: 5px;
}

ul.accordion h3 {
  font-size: 18px;
  margin-bottom: 10px;
  border-bottom: none;
}

.read-more {
  cursor: pointer;
}

a.read-more:after {
  content: "";
  display: inline-block;
  border: solid 6px;
  border-color: transparent transparent transparent #f16a56;
  margin: 0 0 0 10px;
}

li.active a.read-more:after {
  content: "";
  display: inline-block;
  border: solid 6px;
  border-color: #f16a56 transparent transparent transparent;
  margin: 0 0 0 10px;
}

/* Go to top
------------------------------------------- */
#gotop {
  background: url(/media/archive-ocpe/images/layout/gotop.png) no-repeat scroll 0 0 transparent;
  bottom: 55px;
  display: block;
  height: 58px;
  overflow: hidden;
  position: fixed;
  right: 25px;
  text-indent: 9999px;
  width: 58px;
  z-index: 999;
}

/* News styles
------------------------------------------ */
.news-back-link {
	display: inline-block;
	margin: 0 0 15px 0;
}

.news-article .image {
    display: none;
}

.news-article.has-image .image {
    display: block;
	width: 100%;
    height: 333px;
    background-size: cover;
    background-position: center center;
}

/*Targeting a specific image by filename to apply custom styling without affecting other images (Ethics of AI)*/
a.image[style*="EthicsofAIbloggraphic.png"] {
  background-position: left center !important;
}

div.image[style*="EthicsofAIbloggraphic.png"] {
  background-position: left center !important;
}


.news-article .article-meta {
	color: #bbb;
    margin: 20px 0;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.news-item-list .news-item {
	background-color: #f3f6f9;
    box-sizing: border-box;
    padding: 20px;
    font-size: 0;
    margin-bottom: 20px;
}

.announcements .news-item {
    background-color: #fff;
}

.news-item-list .news-item .image {
	display: inline-block;
    width: 33%;
    height: 200px;
    vertical-align: top;
    background-size: cover;
    background-position: center center;
}

.announcements .news-item-list .news-item .image {
    height: 100px;
}

.news-item-list .news-item.no-image .image {
    display: none;
}

.news-item-list .news-item .text {
	display: inline-block;
    width: 67%;
    font-size: 14px;
    line-height: 18px;
    vertical-align: top;
    box-sizing: border-box;
    padding-left: 20px;
}

.news-item-list .news-item.no-image .text {
	width: 100%;
    padding-left: 0;
}

.news-item-list .news-item .title-link {
    font-size: 16px;
    line-height: 18px;
    margin-bottom: 10px;
    display: inline-block;
}

.news-item-list .news-item .excerpt {
    margin-bottom: 10px;
    display: block;
}

.news-item-list .news-item .read-more-link {
    display: inline-block;
    background-color: #B02E01;
    padding: 10px 15px;
    color: #fff;
    margin-top: 10px;
}

.news-item-list .news-item .read-more-link:hover {
    text-decoration: none;
    background: #B02E01;
}

.news-pagination a {
    display: inline-block;
    background-color: #000000;
    padding: 15px 20px;
    color: #fff;
    margin-top: 10px;
    cursor: pointer;
}

.news-pagination a:hover {
	text-decoration: none;
    background: #DEDEDE;
    color: #000;
}

.news-pagination a.next-page {
	float: right;
}

.news-pagination a.previous-page {
	float: left;
}

/* Form Elements
------------------------------------------------------*/

fieldset label {
  display: inline-block;
}

/* Screen Reader
------------------------------------------------------*/

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  border: 0
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  -webkit-clip-path: none;
  clip-path: none
}

/* Skip Links
------------------------------------------------------*/

a.skip-links-item {
  font-size: 14px;
  text-decoration: underline;
  position: absolute;
  left: 15px;
  top: -100px;
  z-index: 10000;
  height: auto;
  margin: 0 auto;
  padding: 10px 15px;
  background-color: transparent;
  color: #ffba00;
  outline: none;
  transition: top .2s, background-color .2s;
}

a.skip-links-item:active, a.skip-links-item:focus {
  top: 0;
  background-color: #272727;
}

#skip-links {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  margin-left: 0;
  list-style: outside none;
}



@media only screen and (max-width: 1000px) {.subscribeButton {float:right;margin-bottom:10px;}}

@media only screen and (max-width: 767px) {
  /* Main nav
------------------------ */  
  li.subscribeMobile {display:block;}

  nav ul.block-grid {
    display: none;
    height: auto;
  }

  nav li {
    width: 100% !important;
    display: block;
    border: none;
    float: none;
  }

  nav ul li a, nav a {
    font-size: 16px;
    width: 100%;
    padding-left: 15px;
    text-align: left;
  }

  nav a#pull {
    width: 100%;
    display: inline-block;
    position: relative;
  }

  .subNav a, .subNav a:hover, .subNav .current {
    border-bottom: none;
  }

  /* Search - mobile
  ------------------------ */
  #search-mobile {
    /* background: url(../images/layout/icon-search.png) center 10px no-repeat; */
    color: #000;
    width: 10%;
    display: inline-block !important;
    position: absolute;
    top: 0;
    right: 0px;
    text-indent: -9999px;
  }

  #search input {
    float: left;
    width: 80%;
    margin-top: 20px;
  }

  input#submit {
    border: none;
    background: #000;
    cursor: pointer;
    color: #fff;
    width: 18%;
    margin-left: 2%;
    padding: 8px 0;
  }

  .wrapper {
    padding-bottom: 0 !important;
  }

  /* Intro content
  ------------------------ */
  .intro-content-wrapper {
    border-top: 5px solid #f16a56;
    margin-top: 0;
    padding: 25px 0;
    text-align: center;
  }

  .cta {
    padding: 0;
  }

  .intro-content header {
    padding-top: 0;
  }
  .intro-content a {
    border-right: none;
    min-height: 0;
  }
  .intro-content li:first-child {
    border-left: none;
  }
  .intro-content li {
    border-right: none;
  }

  /* Callout boxe
  ------------------------ */
  .callout.right {
    max-width: 100% !important;
    margin: 0 0 25px 0;
  }

  	/* Feature
	------------------------------------------------------*/
	.flex-caption h2 {
	  font-size: 40px;
	  margin-bottom: 10px;
	}
	.flex-caption p {
	  font-size: 17px;
	  line-height: 21px;
	}
}
@media only screen and (max-width: 450px) {
	/* Feature
	------------------------------------------------------*/
	.flex-caption p {
	  display: none;
	}
    
    /* News
    ------------------------------------------------------*/
    .news-article.has-image .image {
      height: 200px;
    }
    .news-item-list .news-item .image, .announcements .news-item-list .news-item .image {
      height: 100px;
    }
}







