/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary,
div {
	display: block;
		box-sizing: border-box;

}
* {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;

}

dfn {
	font-style: italic;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}


legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body {
	color: #777;
	font-family: Verdana, sans-serif;
	font-weight: normal;
	line-height: 1.6;
	font-size: 0.9em;
	background: #fff; /* Fallback for when there is no custom background color defined. */
	overflow-x: hidden;
}

h2,
h3,
h4,
h5,
h6 {
	/*clear: both;*/
	margin: 0;
	padding: 0;
}

p {
	margin-bottom: 1.5em;
	font-size: 1em;
	font-weight: 400;
}
h2 {
	font-size: 1.2em;
	color: #777;
	margin-bottom: 5px;
	padding-bottom: 5px;
  border-bottom: 1px solid #ff9933;
}
h3 {
	font-size: 0.9em;
}
h4 {
	font-size: 1.1em;
	margin-bottom: 1em;
}
h5 {
	font-size: 0.9em;
	color: #777;
	font-weight: normal;
	margin-bottom: 10px;
}

p.date {
	font-weight: bold;
	font-size: 0.9em;
	margin: -20px 0 0 0;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: rgba(245, 245, 245, 1);
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #777;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}
.clear {
	clear: both
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}


ul,
ol {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}
/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}


/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	text-decoration: none;
	color: #504e74;
}

a:hover,
a:focus,
a:active {
	color: #ff9933;
}

a:focus {
	outline: 0;
}

a:hover,
a:active {
	outline: 0;
}


/*--------------------------------------------------------------
# GENERAL
--------------------------------------------------------------*/
.wrapper {
	max-width: 1060px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
}
/*--------------------------------------------------------------
# MOBILE MENU
--------------------------------------------------------------*/

#mob-menuToggle
{
  display: none;
  position: relative;
  top: 20px;
  left: 30px;
  
  z-index: 1;
}

#mob-menuToggle input
{
  display: none;
  width: 40px;
  height: 32px;
  position: absolute;
  top: -7px;
  left: -5px;
  
  cursor: pointer;
  
  opacity: 0; /* hide this */
  z-index: 2; /* and place it over the hamburger */
  
  -webkit-touch-callout: none;
  
}

/*
 * Just a quick hamburger
 */
#mob-menuToggle span
{
  display: none;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  
  background: #ff9933;
  border-radius: 3px;
  
  z-index: 1;
  
  transform-origin: 4px 0px;
  
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}

#mob-menuToggle span:first-child
{
  transform-origin: 0% 0%;
}

#mob-menuToggle span:nth-last-child(2)
{
  transform-origin: 0% 100%;
}

/* 
 * Transform all the slices of hamburger
 * into a crossmark.
 */
#mob-menuToggle input:checked ~ span
{
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background: #232323;
}

/*
 * But let's hide the middle one.
 */
#mob-menuToggle input:checked ~ span:nth-last-child(3)
{
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

/*
 * Ohyeah and the last one should go the other direction
 */
#mob-menuToggle input:checked ~ span:nth-last-child(2)
{
  opacity: 1;
  transform: rotate(-45deg) translate(0, -1px);
}

/*
 * Make this absolute positioned
 * at the top left of the screen
 */
#mob-menu
{
  position: absolute;
  width: 300px;
  margin: -100px 0 0 -50px;
  padding: 30px 50px;
  padding-top: 125px;
  height: 110vh;
  min-height: 600px;
  background: #ededed;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  /* to stop flickering of text in safari */
  
  transform-origin: 0% 0%;
  transform: translate(-100%, 0);
  
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

#mob-menu li
{
  padding: 0 0 5px 0;
  font-size: 14px;
  line-height: 1.4;
}

/*
 * And let's fade it in from the left
 */
#mob-menuToggle input:checked ~ ul
{
  transform: scale(1.0, 1.0);
  opacity: 1;
}

/*--------------------------------------------------------------
# HEADER
--------------------------------------------------------------*/
header {
    width: 100%;
    margin: 30px 0 60px 0;
}
.logo {
	display: inline-block;
	width: 35%;
	margin: 0 0 0 0;
	vertical-align: top;
}
.logo h1 a {
background: url('images/ibologo.png') no-repeat;
width: 100%;
height: 120px;
display: block;
}
.logo h1 span {
display: none;
}
.tagline {
	display: inline-block;
	width: 60%;
	margin: 5px 0 0 0;
	vertical-align: top;
}
.tagline h2 {
	font-size: 1.4em;
	color: #504e74;
	font-weight: normal;
	border-bottom: none;
}
.tagline h2 span {
	font-weight: bold;
}
/*--------------------------------------------------------------
## GOOGLE CUSTOM SEARCH
--------------------------------------------------------------*/
.gsc-control-cse .gsc-table-result {
	font-family : inherit;
}

.gsc-control-cse .gsc-input-box {
	height : inherit;
}

input.gsc-input,
.gsc-input-box,
.gsc-input-box-hover,
.gsc-input-box-focus,
.gsc-search-button, input.gsc-search-button-v2 {
	box-sizing  : content-box;
	line-height : normal;
	margin-top  : 0px;
}
.cse .gsc-search-button input.gsc-search-button-v2, input.gsc-search-button-v2 {
	padding: 6px !important;
}
.gsc-table-result, .gsc-thumbnail-inside, .gsc-url-top {
	padding-left: 0 !important;
}
.gsc-result .gs-title {
    height: 1.5em !important;
}
/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.navbar {
	width: 100%;
	background-color: #504e74;
	padding: 5px 0 3px 0;
	margin-top: 20px;
}
.google-search {
	display: inline-block;
	width: 30%;
	margin: 0 5% 0 0;
	vertical-align: middle;
}

.main-navigation {
	display: inline-block;
	width: 60%;
padding: 10px 0;
	margin: 0;
	vertical-align: middle;
}

.main-navigation ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  }
.main-navigation ul li {
	float: left;
	display: block;
	}
.main-navigation ul li a {
	display: inline-block;
	font-size: 1em;
	margin: 0 65px 0 0;
	vertical-align: middle;
	color: #fff;
}
.main-navigation ul li:last-child a {
	margin: 0;
}
.main-navigation ul li.icon {
	display: none;
}
.main-navigation ul li a:hover, 
.main-navigation ul li a.current, 
li a.current {
	color: #ff9933;
}


/*--------------------------------------------------------------
## HOME 
--------------------------------------------------------------*/
.left-col {
	display: inline-block;
	width: 35%;
	vertical-align: top;
}
ul.left-links {
	margin: 30px 0 0 0;
font-size: 1.1em;
text-transform: uppercase;
line-height: 1.3;
}
ul.left-links li a {
background: transparent url("images/bullet.png")no-repeat;
width: 100%;
padding: 0px 55px;
margin-bottom: 30px;
display: block;
}
ul.left-links li a:hover {
background-image: url('images/bullet_over.png');
background-repeat: no-repeat;
}
ul.left-links li span {
	font-weight: bold;
	display: block;
}
ul.left-links li a {
	display: block;
}
.right-col {
	display: inline-block;
	width: 64%;
	margin: 0 0 0 0;
	vertical-align: top;
}
ul.recent-pubs {
  list-style-type: none;
  width:100%;
}
ul.recent-pubs li img {
  float: left;
  margin: 0 15px 0 0;
  padding-bottom: 15px;
}
ul.recent-pubs li {
  padding: 20px 0;
  overflow: auto;
  border-bottom: 1px solid #ff9933;
}
ul.recent-pubs li a p:not(.date) {
	color: #777;
}
/*--------------------------------------------------------------
## PAGES 
--------------------------------------------------------------*/
ul.normal {
  list-style-type: none;
  width:100%;
  padding-top: 30px;
}
ul.normal li {
  padding: 15px 0;
  overflow: auto;
  border-bottom: 1px solid #ff9933;
      font-size: 1.1em;
}
.column-group {
  border-top: 1px solid #ff9933;
  margin-top: 50px;
  padding-top: 10px;
}
.column-50 {
	display: inline-block;
	width: 48%;
	vertical-align: top;
}
.column-20 {
	display: inline-block;
	width: 20%;
	vertical-align: top;
}
.column-group-line {
  border-bottom: 1px solid #ff9933;
  margin: 10px 0;
  padding: 20px 0 10px 0;
}
span.style4 {
	padding: 0 10px;
}
span.pubType, 
body.pubannuals em {
	font-size: 0.9em;
	padding-right: 5px;
	font-weight: normal;
}
.supps {
	padding-left: 20px;
	margin: -1.5em 0 1.5em 0;
}
body.sitemap .column-group-line {
  padding: 20px 0 20px 0;
  line-height: 2em;
}
body.sitemap .column-group-line b, 
body.sitemap .column-group-line strong {
	display: block;
	padding-top: 10px;
}
/*--------------------------------------------------------------
## FOOTER
--------------------------------------------------------------*/
footer {
	margin: 100px 0 30px 0;
}
.social {
	width: 32px;
	height: auto;
	margin: 0 10px 30px 0;
}
footer .google-search {
	width: 35%;
	vertical-align: middle;
}
footer .right-col ul {
	display: inline-block;
	width: 55%;
	vertical-align: middle;
}
footer .right-col ul li {
	display: inline-block;
	font-size: 12px;
	margin: 0 5px;
	vertical-align: middle;
}
footer .right-col ul li:last-child {
	margin: 0 0 0 5px;
}

/*
|--------------------------------------------------------------------------
| UItoTop jQuery Plugin 1.2
| http://www.mattvarone.com/web-design/uitotop-jquery-plugin/
|--------------------------------------------------------------------------
*/

#toTop {
  display:none;
  text-decoration:none;
  position:fixed;
  bottom:10px;
  right:10px;
  overflow:hidden;
  width:51px;
  height:51px;
  border:none;
  text-indent:100%;
  background:url('js-totop/ui.totop.png') no-repeat left top;
}

#toTopHover {
  background:url('js-totop/ui.totop.png') no-repeat left -51px;
  width:51px;
  height:51px;
  display:block;
  overflow:hidden;
  float:left;
  opacity: 0;
  -moz-opacity: 0;
  filter:alpha(opacity=0);
}

#toTop:active, #toTop:focus {
  outline:none;
}
.wrapper .right-col #Agencies ul {
    list-style-type: none;
}
.wrapper .right-col #Agencies a {
    display: block;
}
#Agencies ul ul {
    display: none;
    position: absolute;
}
#Agencies ul li:hover >  ul {
    display: block;
}
#Agencies ul ul li {
    float: none;
}
.wrapper .right-col {
}







/*--------------------------------------------------------------
## MEDIA QUERIES
--------------------------------------------------------------*/
@media screen and (max-width:950px) {
.main-navigation ul li a {
	margin: 0 20px 0 0;
}
ul.left-links li a {
background: url('images/bullet.png') no-repeat left top;
padding: 0px 55px;
margin-bottom: 10px;
height: 75px;
font-size: 0.9em;
text-transform: uppercase;
line-height: 1.2;
}

}

@media screen and (max-width:680px) {
header {
    margin: 40px 0 40px 0;
}
.tagline h2 {
	font-size: 1.2em;
}
.google-search {
	width: 100%;
}	
.main-navigation {
	display: none;
}	
#mob-menuToggle, #mob-menuToggle input, #mob-menuToggle span {
	display: block;
}
.logo, .tagline, .left-col, .right-col {
	width: 48%;
}
section.left-col {
	display: none;
}
section.right-col {
	width: 100%;
}
ul.recent-pubs li img {
  float: none;
  margin: 0 0 15px 0;
}
.column-50, .column-20 {
	width: 100%;
}
footer .google-search {
	width: 100%;
}
footer .right-col ul {
	width: 100%;
}

}

@media screen and (max-width:440px) {
.left-col, .right-col {
	width: 100%;
}

}
