/*=======================================================================
*** PORTO_SUB STYLE SHEET***  Created by WTW Design Group 2017
========================================================================*/

body {
    font-family: Calibri, Arial, Helvetica, sans-serif;
    font-size: 18px;
    line-height: 1.3em;
    color: #000 !important;
}

p {
    color: #000;
    line-height: 1.3em;
}


/* Changing this will affect the block title, site name and date field in recent published posts */

.block h2.block-title,
#site-name,
.view-recent-published-post .views-field-created {
    /* font-family: add your font family here */
    /*font-family: Georgia, Palatino, serif;*/
    font-family: Calibri, Arial, Helvetica, sans-serif;
}

.node__submitted {
    display: none;
}

/* Changing it will affect all the h1,h2,h3,h4,h5,h6, primary links (main site links), slogan text  */

h1,
h2,
h3,
h4,
h5,
h6,
#navigation-bar,
#slogan,
#header-bottom .block-menu,
#header-top .block-menu {
    /* font-family: add your font family here */
    /*font-family: Georgia, Palatino, serif;*/
    font-family: Calibri, Arial, Helvetica, sans-serif;
    font-weight: normal;
}

h2,
.node h2.title a,
.node h2.title a:link,
.node h2.title a:visited {
    color: #808285;
    font-size: 175%;
    /*font-weight: bold;*/
}

.node h2.title,
.node .applies-to {
    padding-bottom: 20px;
    background: url(../images/longdivider.jpg) left bottom no-repeat;
    margin-bottom: 20px;
}

.node .applies-to {
    font-weight: normal;
}

.node .applies-to span {
    color: #0179bb;
    font-weight: bold;
}

h2 span {
    color: #808285;
    font-size: 100%;
}

.sidebar h2 span {
    font-size: 90%;
    color: #014373;
}

h3 {
    color: #232323;
    font-size: 115%;
}

h4 {
    color: #232323;
    font-size: 105%;
}

h5 {
    color: #232323;
    font-size: 100%;
    font-family: Calibri, Arial, Helvetica, sans-serif;
}

.block p {
    margin: 0.7em 0 0.7em;
}

a {
    color: #0179bb;
}

a:hover,
a:focus {
    text-decoration: underline;
}

.header-logo {
    height: 54px !important;
    width: auto !important;
}

.header-logo img {
    width: auto !important;
}

.color-primary,
html #footer.color-primary,
html #footer.color-primary .footer-copyright {
    background: #104373;
    border-top-color: #104373;
}

html .alert-primary {
    background: #0179bb;
    border-color: #0179bb;
    color: #fff;
}

/* change highlight CSS */
/* Highlights for policy changes */
/*#content-content p.changes, */p.changes,
/*#content-content li.changes, */li.changes,
/*#content-content tr.changes, */tr.changes,
td.changes {
        padding-right: 10px;
        border-right: 4px solid #ccc;
}

ol, ul {
    line-height: 1.3em;
}
li {
    margin: 0.5em 0 0.5em;
    line-height: 1.3em;
}
ol.roman {
    list-style: upper-roman;
    margin-left: 1.6em;
    padding-bottom: 1em;
    padding-left:1em;
    margin-bottom: 1.5em;
    background: url(../images/longdivider.jpg) left bottom no-repeat;
}
ol.roman>li {
    margin-bottom: 1.5em;
}
ol.alpha {
    list-style-type: upper-alpha !important;
}
ol.lower-alpha {
    list-style-type: lower-alpha !important;
}
ol.numeric {
    list-style: decimal !important;
}
ol.no-style, ul.no-style {
    list-style: none !important;
}
ol.bottom-rule {
    padding-bottom: 10px;
    background: url(../images/longdivider.jpg) left bottom no-repeat;
    margin-bottom: 10px;
}
span.lower-case {
    text-transform: lowercase;
}

/* - - - - - Main menu customization - - - - - */

@media (min-width: 992px) {
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li a {
        font-size: 105% !important;
        color: #104373;
    }
    /* for the active and hover colors */
    #header .header-nav-main nav > ul > li.active > a,
    #header .header-nav-main nav > ul > li.open > a,
    #header .header-nav-main nav > ul > li:hover > a,
    #mainNav > li.active > a,
    #mainNav > li.active > a.is-active,
    #mainNav > li.active > a:hover,
    #mainNav > li.active > a:focus {
        background: #104373;
        color: #fff;
    }
    #header .header-nav-main nav > ul > li > a {
        padding-bottom: 15px !important;
        font-size: 20px;
    }
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li > a {
        color: #014373;
    }
    /* for the carrats */
    #header .header-nav-main nav > ul > li.dropdown > a:after {
        border-color: #014373 transparent transparent transparent;
    }
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu > a:after {
        border-color: transparent transparent transparent #104373;
    }
    /* to remove the top border of the dropdown menu */
    #header .header-nav-main nav > ul > li.dropdown .dropdown-menu {
        border-top: none;
    }
    /* to add active/hover/focus background color to sub-menu */
    /*#header .header-nav-main nav > ul > li.dropdown .dropdown-menu li.dropdown-submenu.active {
        background-color:rgba(16, 67, 115, .5);
    }*/
    #mainNav .dropdown-menu > .active > a,
    #mainNav .dropdown-menu > li > a:hover,
    #mainNav .dropdown-menu > li > a:focus {
        background: rgba(16, 67, 115, .1) !important;
    }
}


/* - - - - - Homepage Banner - - - - - */

.banner-image-wrapper{
    background-color: #013e6a;
    box-shadow: inset 0px -7px 35px -7px rgba(0,0,0,0.5);
}

#home-slider{
    text-align: center;
}

#block-searchform-5 {
    position: relative;
    margin: 0 auto;
    z-index: 10;
}

@media only screen and (min-width: 768px) {
    #block-searchform-5 {
        width: 750px;
    }
}

@media only screen and (min-width: 992px) {
    #block-searchform-5 {
        width: 950px;
    }
}

@media only screen and (min-width: 1200px) {
    #block-searchform-5 {
        width: 1170px;
    }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    #block-searchform-5 {
        margin: 0 25px;
    }
}

@media only screen and (min-device-width: 320px) and (max-device-width: 767px) {
    #block-searchform-5 {
        margin: 0 15px;
    }
}

@media only screen and (max-width: 784px) {
    #block-searchform-5 {
        margin-left: 15px;
    }
}

/* - - - - - UM header logo - - - - - */
.sticky-header-active .header-nav {
    position: relative;
    top: 35px;
}

.sticky-header-active #block-umlogo {
    display: none;
}
@media (max-width:990px){
    #block-umlogo{
        margin-top: -45px;
    }
}
@media (max-width:650px){
    #block-umlogo .align-right{
        float: left;
    }
    #block-umlogo {
        position: absolute;
        top: 45px;
        left: 15px;
        right: 54px;
    }
    html:not(.sticky-header-active) #header .header-logo {
        top: 50px;
    }
    html:not(.sticky-header-active) #header .header-btn-collapse-nav {
        margin-top: 0;
    }
    header#header{
        min-height: 150px !important;
    }
    .region-primary-menu{
        margin-top: 75px;
    }
}

/* - - - - - Search Box - - - - - */

#block-searchform-5  form#search-block-form {
    position: absolute;
    left: 0;
    top: 75px;
    width: 400px;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 409px) {
    #block-searchform-5 form#search-block-form {
        width: 300px;
    }
}

@media only screen and (min-device-width: 410px) and (max-device-width: 430px) {
    #block-searchform-5 form#search-block-form {
        width: 380px;
    }
}


/* Search Input */


/* container */

form#search-block-form .form-type-search {
    width: 100%;
}


/* input field */

form#search-block-form .form-search {
    width: 100%;
    height: 46px;
    padding: 4px 5px;
    background-color: #fff;
    border: 1px solid #cdcdcd;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    font-size: 1em;
    font-family: "Droid Sans", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
    color: #014373;
    -webkit-box-shadow: 2px 2px 4px #000;
    box-shadow: 2px 2px 4px #000;
}


/* Search Submit */
.region-right-sidebar .block-search form:after {
    display: none;
}

/* container */

form#search-block-form .form-wrapper {
    position: absolute;
    top: 3px;
    right: 3px;
    width: 40px;
    height: 40px;
}
.region-right-sidebar #block-searchform-3 {
    width: 100%;
    position: relative;
    top: -2.5rem;
    left: 0;
    margin-bottom: 10px;
}

/* input field */

form#search-block-form .form-submit {
    width: 40px;
    height: 40px;
    padding: 0;
    border: none;
    background: url(../images/searchicon.gif) top right no-repeat;
    color: transparent;
}

/* - - - - - Default Search Results - - - - - */
.item-list .search-results li {
    padding-bottom: 1rem;
    background: url(../images/shortdivider.gif) left bottom no-repeat;
    margin-bottom: 1rem;
}
.search-results h3 {
    margin-bottom: 0;
}
.item-list .search-results li a {
    background: none;
    padding-bottom: 0;
}
/* - - - - - Sidebars - - - - - */

.region-right-sidebar {
    padding-top: 4rem;
}

.sidebar .region > div {
    margin-bottom: 4rem;
}

.sidebar-list h2 {
    color: #014373;
    margin-bottom: 1rem;
}

.item-list ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.item-list li,
.sidebar-list .item-list li {
    margin: 0;
    padding: 0;
    list-style: none;
    line-height: 1.3em;
}

.item-list li a {
    display: block;
    margin: 0;
    padding: .75rem 0 1.5rem;
    padding-left: 0;
    border: none;
    background: url(../images/shortdivider.gif) left bottom no-repeat;
    font-size: 2rem;
}


/* - - - - - Page Banners - - - - - */


/* to show only page title in breadcrumbs block */

.page-header {
    background: #003e69 url(../images/banner-sub1.jpg) top right no-repeat;
    border: none;
    min-height: 110px;
}

.page-header h1.page-title {
    display: block;
    width: 1170px;
    margin: 0 auto;
    padding: 0;
    border: none !important;
}

.page-header h1.page-title span {
    padding: 1rem;
    border: none;
    color: #fff;
    font-size: 140%;
    font-weight: 500;
    letter-spacing: 0.02em;
}

/* to hide page view counts */
.node__links {
    display: none;
}

/* custom page title banners for basic pages */
.page-title-banner {
    background: url(/themes/porto_sub/images/banner-sub1.jpg) no-repeat;
    background-size: cover;
    padding: 1.5em 0 1.5em 0;
    font-weight: normal;
    position: relative;
    margin-bottom: 16px;
}
.page-title-banner h1.page-title {
    color: #ffffff;
    font-weight: normal;
    line-height: 1.2em;
    margin: 0;
    padding: 0;
    font-size: 220%;
    letter-spacing: 0.02em;
}
/* container css */
.page-title-banner h1.page-title  {
    width: 1170px;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}


/* - - - - - Footer - - - - - */

#footer.color {
    padding-top: 0;
    padding-bottom: 15px;
}

#footer.color .footer-copyright {
    font-size: 120%;
    margin-top: 0;
}

#footer.color p,
#footer.color a {
    color: #aaa;
}

#block-porto-sub-copyrightstyle2 {
    float: left;
}

#footer .footer-copyright nav ul {
    margin-top: 3px;
}

#footer nav i.fa,
#footer nav li.dropdown a:after {
    display: none;
}

#footer.color .nav>li>a {
    padding: 3px 10px;
    color: #aaa;
}

#footer.color .footer-copyright nav ul li {
    border-color: rgba(255, 255, 255, 0.15)
}

#footer p a:hover,
#footer p a:focus,
#footer nav li.dropdown a:hover,
#footer nav li.dropdown a:focus {
    color: #fff;
    text-decoration: underline;
}


/*Front page*/

.front-quote {
    font-family: Georgia, "Times New Roman", Times, serif;
    color: #014373;
    padding: 23px 0;
    font-size: 1.23em;
    line-height: 1.4em;
    font-style: italic;
}

.homepage-teasers h4,
.homepage-teasers p {
    font-size: 20px;
    color: #000;
}

.homepage-teasers h2 {
    color: #014373;
    font-size: 3rem;
}

.homepage-teasers #about {
    padding-left: 55px;
    background: url(../images/talkicon.png) left top no-repeat;
}

.homepage-teasers #authority {
    padding-left: 55px;
    background: url(../images/flagicon.png) left top no-repeat;
}

.homepage-teasers #relationship {
    padding-left: 55px;
    background: url(../images/puzzleicon.png) left top no-repeat;
}

.homepage-teasers #email {
    padding-left: 55px;
    padding-bottom: 20px;
    background: url(../images/emailicon.png) left top no-repeat;
    background-size: 42px;
}

.homepage-teasers #about h4,
.homepage-teasers #authority h4,
.homepage-teasers #relationship h4 {
    padding-top: 5px;
}


/* - - - - - Policy custom content nodes  .node--type-policy - - - - - */
/*
.region-before-content {
    background: url(../images/banner-sub1.jpg) top right no-repeat;

}
*/

/* Policy & Org Chart headers */
.node--type-policy div.spg-number,
.node--type-org-chart div.spg-number {
    display: block;
    float: right;
    text-align: right;
    width: 10%;
    padding-left: 20px;
}
.node--type-policy h2.title,
.node--type-org-chart h2.title,
.applies-to {
    padding-bottom: 20px;
    background: url(../images/longdivider.jpg) left bottom no-repeat;
    margin-bottom: 20px;
}
.applies-to span {
    color: #0179bb;
    font-weight: bold;
}
.node--type-policy h2.title span,
.node--type-org-chart h2.title span,
.spg-number {
    color: #0179bb !important;
}
.spg-number {
    padding-top: 0.7em;
    font-size: 1.2em;
}
#inpage-search-wrap {
    margin-bottom: 3em;
}

/* policy & org chart header search form */
#block-searchform-4.policy-header,
#block-org-chart-page-header.policy-header {
 background: url(../images/banner-sub1.jpg) no-repeat;
    background-size: cover;
    padding: 1.5em 0 1.5em 0;
   font-weight: normal;
   position: relative;
    margin-bottom: 20px;
}

#block-org-chart-page-header.policy-header.container,
#block-searchform-4.policy-header.container {
 background: none !important;
}
#block-searchform-4 h2,
#block-org-chart-page-header h2 {
    color: #ffffff;
    font-weight: normal;
    line-height: 1.2em;
    margin: 0;
    padding: 0;
    font-size: 220%;
    letter-spacing: 0.02em;
}
#block-searchform-4 form#search-block-form,
#block-org-chart-page-header form#search-block-form {
    position: absolute;
    width: 25%;
    left: 75%;
    top: 0;
}

/* individual policies - meta footer */
.field--name-field-file-attachments table#attachments {
    width: 100%;
    margin: 1.5em 0;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    border-top: #ccc 0.5px solid;
    background: url(../images/longdivider.jpg) left bottom no-repeat;
}
.node--type-policy fieldset {
    float: left;
    margin: 0;
    margin-top: 0px;
    margin-right: 40px;
    padding: 0;
    padding-left: 20px;
    background: transparent url(../images/short-vertical-divider.gif) left top no-repeat;
    border: none;
    font-size: 85%;
    max-width: 40%;
}

@media (max-width: 1080px){
    .node--type-policy fieldset.col-1,
    .node--type-policy fieldset.col-2 {
        max-width: 50%;
    }
    .node--type-policy fieldset.col-3 {
        width: 100%;
        max-width: 100%;
        clear: both;
    }
}

.node--type-policy .field {
    margin-bottom: 1em;
}
.node--type-policy fieldset legend {
    border: none !important;
}
.node--type-policy .fieldset-wrapper .field__label {
    color: #014373;
    font-weight: bold;
}
.node--type-policy .fieldset-wrapper .field__label:after {
    content: ":";
}

/* /about/policy-hierarchy "Hierarchy of legal and policy requirements"  previously #node-85 */

.hierarchywrap {
    text-align: center;
    width: 600px;
    margin: 0px auto;
    padding: 0px;
    padding-top: 5px;
}

.hierarchywrap .outerborder {
    border: #999999 1px solid;
    padding: 10px;
    margin: -4px auto 0 auto;
    text-align: center;
}

.hierarchywrap .outerborder h3 {
    font-size: 14px;
    font-family: 'Calibri', arial, sans-serif;
    font-weight: 500;
    color: #333333;
    margin: 0;
}

.hierarchywrap .outerborder p {
    font-size: 12px;
    font-family: 'Calibri', arial, sans-serif;
    font-weight: normal;
    color: #333333;
    margin: 0 0 10px 0;
}

.hierarchywrap .innerbox {
    background-color: #c8eefe;
    padding: 10px;
    border: #069 1px solid;
    margin: 0 auto 10px auto;
}

.hierarchywrap .innerbox p {
    font-size: 12px;
    font-family: 'Calibri', arial, sans-serif;
    font-weight: normal;
    color: #333333;
    margin: 0;
}

.hierarchywrap .connector {
    width: inherit;
    color: #999999;
    text-align: center;
    margin: 0;
    padding: 0;
}

#block-orgcharthierarchy > ul > li > a{
    display: none;
}

#block-orgcharthierarchy > ul > li > ul{
    margin-left: 0;
}

#block-orgcharthierarchy li {
    margin: 0.5em 0 0.5em;
    line-height: 1.3em;
    list-style-image: none;
    list-style: none;
}

/*
/org-charts/organizational-structure "Orgainzational Structure"  previously #node-79
and policies/a-z, policies/number, policies/recently-changed, policies/sorted-table
 */
.org-chart-table h2 {  /* duplicate of .node--type-policy h2.title */
    padding-bottom: 20px;
    background: url(../images/longdivider.jpg) left bottom no-repeat;
    margin-bottom: 20px;
    color: #0179bb;
}

.org-chart-table table,
.policy-table table,
.field--name-field-file-attachments table {
        width: 95%;
    margin-left: 0;
    margin-right: 5%;
    border: #6D6D6D 1px solid;
    border-left: none;
    border-right: none;
}
.org-chart-table tr,
.policy-table tr,
.field--name-field-file-attachments tr {
    border-bottom: 1px solid #dadada;
}
.org-chart-table tr:nth-child(odd),
.policy-table tr:nth-child(odd),
.field--name-field-file-attachments tr:nth-child(odd) {
    background-color: #f8f8f8;
}
.org-chart-table tr:hover,
.policy-table tr:hover,
.field--name-field-file-attachments tr:hover {
    background-color: #eee;
}
.org-chart-table td,
.org-chart-table th,
.policy-table td,
.policy-table th,
.field--name-field-file-attachments td,
.field--name-field-file-attachments th {
    padding: 7px 5px;
    min-width: 20%;
   /* white-space: nowrap;*/
   vertical-align: top;
}
.org-chart-table th,
.policy-table th,
.field--name-field-file-attachments th {
    vertical-align: bottom;
}
/* policy tables */
.policy-table td.views-field-field-spg-number,
.policy-table td.views-field-field-date-issued,
.policy-table td.views-field-field-last-update {
    white-space: nowrap;
}
.policy-table td.is-active {
    background: #ededed;
}
.policy-table .form--inline .form-actions {
    clear: none;
    float: left;
    width: 30%;
    padding-top: 1.75em;
}



/* Print View styles */
#print-footer, #print-header{
    display: none;
}

@media print{
    #header .header-nav-main, #block-searchform-4 form#search-block-form, #block-org-chart-page-header form#search-block-form, #inpage-search-wrap, #header .header-btn-collapse-nav, footer, header, #block-searchform-3, #block-searchform-5, #block-frontpagesliderbackground{
        display: none !important;
    }
    #block-umlogo a[href]:after, .header-logo a[href]:after{
        content: none !important;
    }
    #block-umlogo img{
        float: right !important;
    }
    #header .header-body{
        border-bottom-color: #fff !important;
    }
    #block-searchform-4.policy-header, #block-org-chart-page-header.policy-header{
        padding: 0 !important;
    }
    footer:before{
        content: 'Copyright';
    }
    #print-footer, #print-header{
    display: block !important;
    margin-bottom: 30px;
    }

}

/*Breadcrumbs */
.breadcrumb {
    font-size: .8em;
    background-color: white;
    padding-top: 25px;
}


/* - - - - - Webforms - - - - - */

.captcha{
    max-width: none !important;
    background: none !important;
    padding: 0 15px;
}


/* - - - - - Policy section overrides - - - - - */

   .node--type-policy p {
      margin: 0; padding: 0;
      margin-bottom: 1rem;
   }
    .node--type-policy .last {
        padding-top: .25rem;
       background: url(../images/longdivider.jpg) left top no-repeat;
    }
    .node--type-policy .footnote {
        padding-top: .5rem;
        font-size: 90%;
       background: url(../images/longdivider.jpg) left top no-repeat;
    }
   .node--type-policy h3,
   .node--type-policy h4,
   .node--type-policy h5
      {
      margin: 0; padding: 0;
      margin-bottom:1rem;
      font-size:100%;
      font-weight: normal;
   }
   .node--type-policy h4,
   .node--type-policy h5 {
      text-transform: uppercase;
   }
   .node--type-policy ol {
      list-style-type: upper-roman;
   }
   .node--type-policy ol ol {
      list-style-type: upper-alpha;
      font-weight: normal;
   }
   .node--type-policy ol ol ol {
      list-style-type: decimal;
   }
   .node--type-policy ol ol ol ol {
      list-style-type: lower-alpha;
   }
   .node--type-policy ol ol ol ol ol {
      counter-reset: paren-num;
   }
   .node--type-policy ol ol ol ol ol li {
      list-style: none;
   }
   .node--type-policy ol ol ol ol ol li:before {
      content: "(" counter(paren-num, decimal) ") ";
      counter-increment: paren-num;
   }
   .node--type-policy ol ol ol ol ol ol {
      counter-reset: paren-alpha;
   }
   .node--type-policy  ol ol ol ol ol ol li {
      list-style: none;
   }
   .node--type-policy ol ol ol ol ol ol li:before {
      content: "(" counter(paren-alpha, lower-alpha) ") ";
      counter-increment: paren-alpha;
   }
   .node--type-policy ul {
      list-style-type: decimal;
      font-weight: normal;
   }
	/* Tables within policies */
    .node--type-policy table {
        margin: 2rem 0;
        border: 1px solid rgba(0, 0, 0, 0.1);
    }
	.node--type-policy table th,
	.node--type-policy table td {
		padding: .5rem;
	}
	.node--type-policy td {
		vertical-align: top;
	}
	.node--type-policy table tr.dark td,
	.node--type-policy table tr.dark th,
    .node--type-policy table tr.odd td,
    .node--type-policy table tr.odd th{
		background: rgba(0, 0, 0, 0.1);
	}
    .node--type-policy table li {
        margin: 0 0 1em;
    }
    .node--type-policy tfoot tr {
        font-size: 90%;
    }
/* - - - - - Org Chart section overrides - - - - - */
	.node--type-org-chart .footnotes {
		font-size: 75%;
	}
	/* as a "tree"*/
	ul.tree {
		font-size: 90%
	}
	ul.tree,
	ul.tree ul {
		list-style-type: none;
		background: url(/themes/porto_sub/images/org-tree-vline.png) left repeat-y;
		margin: 0;
		padding: 0;
	}
	ul.tree ul {
		margin-left: 10px;
	}
	ul.tree li {
		margin: 0;
		padding: 0 12px 5px;
		background: url(/themes/porto_sub/images/org-tree-node.png) no-repeat;
	}
	ul.tree li:last-child {
		background: #fff url(/themes/porto_sub/images/org-tree-lastnode.png) no-repeat;
	}
	ul.tree>li:first-of-type {
		background-image: none;
	}