/* ----------------------------------------------------------------
Copyright (c) Demosphere International Inc.
No permission is granted for any purpose without prior
written consent from Demosphere International Inc.
-------------------------------------------------------------------*/

/* PAGE STRUCTURE */
* { box-sizing: border-box; }
body { margin: 0; padding: 0; height: 100%; background: #051745; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* Page Wrapper */
#design-wrapper { margin: 0; padding: 0; width: 100%; overflow-x: hidden; }
#design-wrapper .container { width: 100%; max-width: 1600px; }
#design-wrapper .container-fluid { padding: 0; }

/* Header */
#design-header-wrapper { position: relative; margin: 0; padding: 0 15px; width: 100%; height: 153px; background: #fff url('../images/shadow.png') repeat-x; border-top: 1px solid #fff; border-bottom: 2px solid #071f5d; box-sizing: border-box; z-index: 400; }
#design-header-inner { position: relative; margin: 0 auto; width: 100%; height: 150px; }
#design-logo { position: absolute; top: 4px; left: 0; z-index: 401; }
#design-logo img { height: 160px; transition: all ease-in-out .3s; }
#design-logo a { display: inline-block; }

/* Nav */
#design-nav-wrapper { position: absolute; top: 50px; left: 0; margin: 0; padding: 0; width: 100%; height: 50px; text-align: right; transition: all ease-in-out .3s; box-sizing: border-box; }
#design-container-main-nav { width: 100%; height: 50px; box-sizing: border-box; transition: all ease-in-out .3s; }

/* Main */
#design-main-top { padding: 0; width: 100%; background: #000; box-sizing: border-box; }
#design-main-1,
#design-main-3 { padding: 30px 0; width: 100%; background: #ededed url('../images/shadow.png') repeat-x; border-top: 1px solid #ededed; box-sizing: border-box; }
#design-main-2,
#design-sponsors { padding: 30px 0; width: 100%; background: #fff; box-sizing: border-box; }
#design-sponsors { text-align: center; }
#design-sitemap { padding: 30px 0; width: 100%; background: #071f5d; border-top: 4px solid #cf112b; }

.main-home #design-container-9 { text-align: center; }
.main-dept #design-main-top { padding-top: 40px; background: #fff url('../images/shadow.png') repeat-x; border-top: 1px solid #fff; }

/* Footer */
#design-footer { margin: 0; padding: 30px 0; background: #051745; }
#design-footer #design-footer-left { float: left; }
#design-footer #design-footer-right { float: right; }
#design-footer #design-footer-left .design-copyright,
#design-footer #design-footer-left .design-copyright a { font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 400; line-height: 1.5; color: rgba(255,255,255,0.5); text-decoration: none; }
#design-footer #design-footer-left .design-copyright:first-of-type { margin-top: 5px; font-weight: 700; }
#design-footer .dii-logo { height: 45px; }


/* CONTENT */

/* General */
body .dii-content { overflow: visible; position: relative; margin: 0; padding: 0; background: none; font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 15px; color: #000; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body .dii-content a { color: #cf112b; }
body .dii-content a:hover { color: #b70f26; }

/* Titles */
body .dii-content-title { margin: 0 0 5px 0; padding: 0 0 4px 0; border: none; }
body .dii-content-title a { padding: 0; font-family: 'futura-pt-condensed', sans-serif; font-size: 36px; font-weight: 800; color: #071f5d; line-height: 1.1; text-decoration: none; text-transform: uppercase; }
body .dii-content-title a:hover { color: #071f5d; }
body .dii-content-calendar h2,
body .dii-content-rawcode h2 { margin-bottom: 6px; padding: 4px; font-family: 'futura-pt-condensed', sans-serif; font-size: 36px; font-weight: 800; color: #071f5d; line-height: 1.1; text-transform: uppercase; }

body .main-home #design-main-2 .dii-content-title a { font-size: 28px; line-height: 1.0; text-transform: uppercase; }

/* Section Headers */
body .dii-content.dii-content-header { position: relative; margin: 0 0 10px 0; padding: 0; height: 100%; box-sizing: border-box; }
body .dii-content.dii-content-header h2 { display: inline-block; padding: 10px 14px; height: 100%; background: #071f5d; border-top: 3px solid #cf112b; font-family: 'futura-pt-condensed', sans-serif; font-size: 24px; font-weight: 800; color: #fff; line-height: 1.0; text-transform: uppercase; box-sizing: border-box; }
body #design-main-1 .dii-content.dii-content-header,
body #design-main-2 .dii-content.dii-content-header,
body #design-main-3 .dii-content.dii-content-header { margin-bottom: 15px; text-align: center; }
body #design-main-1 .dii-content.dii-content-header h2,
body #design-main-2 .dii-content.dii-content-header h2,
body #design-main-3 .dii-content.dii-content-header h2 { padding: 0; background: none; border: none; font-size: 45px; font-weight: 700; color: #071f5d; text-align: center; }
body #design-sponsors .dii-content.dii-content-header h2 { padding: 0; background: none; border: none; color: #071f5d; text-align: center; }
body #design-sitemap .dii-content.dii-content-header h2 { padding: 0; background: none; border: none; font-size: 26px; font-weight: 700; text-transform: none; }

body .dii-content:not(.dii-content-header) h2 { margin: 0; font-family: 'futura-pt-condensed', sans-serif; font-size: 24px; font-weight: 700; color: #cf112b; text-transform: uppercase; }

/* Links */
body .dii-content-linkview > a { padding: 10px 8px; font-size: 14px; font-weight: 400; color: #000; border-bottom: 1px dotted rgba(0,0,0,0.2); line-height: 1.2; }
body .dii-content-linkview > a:hover { color: #cf112b; text-decoration: none; }
body .dii-content-linkview { padding: 0; }
body .dii-content-linkview,
body .dii-content-calendar,
body .dii-content-rawcode { margin: 0 5px; }

body .main-home #design-main-1 .dii-content-linkview > a { display: table-cell; padding: 0; font-family: 'futura-pt-condensed', sans-serif; font-size: 46px; font-weight: 800; color: #fff; border: none; line-height: 0.9; text-align: center; text-transform: uppercase; transition: all ease-in-out .3s; vertical-align: middle; }
body .main-home #design-main-1 .dii-content-linkview > a:hover { color: #fff; text-decoration: none; }
body .main-home #design-main-1 .dii-content-linkview { display: table; padding: 0 60px; width: 100%; height: 300px; background: #071f5d; box-sizing: border-box; }
body .main-home #design-main-1 .dii-content-linkview:hover { background: #092775; }

body .main-home #design-main-2 .dii-content-linkview > a { padding: 10px 25px; font-family: 'futura-pt-condensed', sans-serif; font-size: 20px; font-weight: 700; color: #fff; border: none; line-height: 1.0; text-transform: uppercase; transition: all ease-in-out .3s; }
body .main-home #design-main-2 .dii-content-linkview > a:hover { color: #fff; text-decoration: none; }
body .main-home #design-main-2 .dii-content-linkview { display: inline-block; background: #cf112b; }
body .main-home #design-main-2 .dii-content-linkview:hover { display: inline-block; background: #e71330; }

/* Images */
#design-main .dii-content .dii-content-title-photo,
#design-sponsors .dii-content .dii-content-title-photo,
#design-sitemap .dii-content .dii-content-title-photo { margin: 0; padding: 0; border: none; }
#design-sponsors .dii-content.dii-content-image { position: relative; display: inline-block; margin: 10px 15px; }
#design-sponsors .dii-content .dii-content-title-photo img { max-height: 110px; }

.design-program { margin-bottom: 15px; }
.design-program .dii-content-title-photo img { max-height: 600px; }
.design-program .dii-content-image h2.dii-content-title { display: table-cell; position: relative; width: 100%; height: 300px; padding: 0; border: none; font-family: 'futura-pt-condensed', sans-serif; font-size: 46px; font-weight: 800; color: #fff; line-height: 0.9; text-align: center; text-shadow: 0px 0px 6px rgba(0,0,0,0.5); text-transform: uppercase; vertical-align: middle; box-sizing: border-box; background-repeat: no-repeat; background-position: center; background-size: cover; z-index: 1; }
.design-program .dii-content-image { display: table; position: relative; padding: 0; width: 100%; height: 300px; background: #071f5d; }
.design-program .dii-content-image h2::before { position: absolute; z-index: -1; content: ''; display: block; width: 100%; height: 300px; top: 0; background: #071f5d; opacity: 0.3; transition: all .3s ease-in-out; }
.design-program .dii-content-image:hover h2::before { opacity: 0.4; }
.design-program .dii-content-image > a { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 300px; z-index: 4; }
.design-program .dii-content-image > a img { display: none !important; }
.design-program .dii-content .dii-content-title-photo { margin: 0; padding: 0; border: none; }

/* Articles */
body .dii-content.dii-content-article h3.dii-content-subtitle { padding: 0 0 4px 0; font-size: 15px; font-weight: 400; color: #666; }
body .dii-content .dii-content-story { margin-top: 0; padding: 4px 0; border: none; color: #000; }
body .dii-content .dii-content-story * { font-size: 15px; line-height: 1.4; }
body .dii-content .dii-content-story a { color: #cf112b; text-decoration: none; }
body .dii-content .dii-content-story a:hover { color: #b70f26; }
body .dii-content .dii-content-story ul { margin-bottom: 15px; margin-top: -5px; padding-left: 30px; }
body .dii-content .dii-content-story ul li { margin-bottom: 5px; }
body .dii-content-continue { text-align: left; }
body .dii-content-continue a { font-family: 'futura-pt-condensed', sans-serif; font-size: 15px; font-weight: 800; color: #cf112b; text-decoration: none; transition: all ease-in-out .3s; }
body .dii-content-continue a:hover { color: #b70f26; }
body .dii-content-continue a::before { content: "Read More "; }
body .dii-content-continue a::after { content: "..."; }

body .main-home #design-container-1 .dii-content-article { display: inline-block; margin: 0 1% 30px 1%; max-width: 31.333333333333333%; }
body .main-home #design-container-1 .dii-content .dii-content-story,
body .main-home #design-container-1 .dii-content .dii-content-story p { font-family: 'Montserrat', sans-serif; font-size: 15px; font-weight: 400; color: #000; line-height: 1.2; }
body .main-home #design-container-1 .dii-content .dii-content-story img { max-width: 240px !important; max-height: 240px !important; }

body .main-dept .dii-content .dii-content-story h2 { margin: 0.5em 0 0.25em; font-family: 'futura-pt-condensed', sans-serif; font-size: 22px; font-weight: 800; color: #071f5d; text-transform: uppercase; }
body .main-dept .dii-content .dii-content-story h2:first-of-type { margin-top: 0; }
body .main-dept .dii-content .dii-content-story h3 { margin: 0.25em 0 0.125em; font-family: 'futura-pt-condensed', sans-serif; font-size: 18px; font-weight: 800; color: #cf112b; text-transform: uppercase; }

body #design-sitemap .dii-content .dii-content-story { margin: 0; padding: 0; color: #fff; border-top: 0; }
body #design-sitemap .dii-content .dii-content-story * { font-size: 15px;  }
body #design-sitemap .dii-content .dii-content-story a { color: #fff; }
body #design-sitemap .dii-content .dii-content-story a:hover { color: rgba(255,255,255,0.5); }

body #design-container-15 .dii-content .dii-content-story img { max-width: 40px !important; max-height: 40px !important; transition: all ease-in-out .3s; }
body #design-container-15 .dii-content .dii-content-story img:hover { opacity: 0.8; }

body .main-dept .dii-content .dii-content-story table { margin-bottom: 15px; width: 100%; font-family: 'Montserrat', sans-serif; font-size: 15px; border-collapse: collapse; }
body .main-dept .dii-content .dii-content-story table th,
body .main-dept .dii-content .dii-content-story table td { padding: 8px; border: 1px solid #ccc; font-size: 15px; }
body .main-dept .dii-content .dii-content-story table th { background-color: #071f5d; font-family: 'Montserrat', sans-serif; font-size: 17px; font-weight: 700; color: #fff; text-align: left; }
body .main-dept .dii-content .dii-content-story table tr { background-color: #fff; }
body .main-dept .dii-content .dii-content-story table tr:nth-child(even) { background-color: #f0f0f0; }

body .dii-content.dii-content-event { margin-top: 4px; padding: 8px; }

/* Calendars */
body .dii-calendar-wall .fc-button { margin-bottom: 2px; }
body .dii-calendar-wall .fc-header-title { padding: 2px 4px; font-family: 'futura-pt-condensed', sans-serif; color: #cf112b; font-size: 18px; font-weight: 700; text-transform: uppercase; }
body .dii-content-calendar .dii-calendar-wall table.fc-header td.fc-header-right span.fc-header-title h2 { font-size: 18px; }
body .dii-calendar-upcoming-events .dii-bold { font-weight: 400; }
body .dii-calendar-upcoming-events li { padding: 10px; border-bottom: 1px dotted rgba(0,0,0,0.2); }
body .dii-calendar-upcoming-events li:hover { }
body .dii-calendar-upcoming-events li h4 { padding: 2px 0 0 0; font-family: 'futura-pt-condensed', sans-serif; font-size: 18px; font-weight: 700; color: #cf112b; line-height: 1.2; text-transform: uppercase; }
body .dii-calendar-upcoming-events li h3 a { padding: 4px 0 0 0; font-size: 15px; font-weight: 400; color: #000; line-height: 1.2; }
body .dii-calendar-upcoming-events li h3 a:hover { background: none; font-size: 15px; color: #cf112b; text-decoration: none; }

/* Rotator */
body .dii-content.dii-content-rotator { margin: 0; box-sizing: border-box; }
body .dii-content.dii-content-rotator article { background-color: #000; }

body .dii-content-rotator .list-none { min-height: 100px; }
body .dii-content-rotator article .article-wrapper { padding: 20px 0; background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%); box-sizing: border-box; }
body .dii-content-rotator article .article-inner { margin: 0 auto; padding: 0 15px; max-width: 1600px; text-align: center; box-sizing: border-box; }
body .dii-content-rotator article h2.no-url,
body .dii-content-rotator article h2 a { display: block; font-family: 'futura-pt-condensed', sans-serif; font-size: 55px; font-weight: 800; color: #fff; text-align: center; text-transform: uppercase; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body .dii-content-rotator article h2 a:hover { background: none; color: #cf112b; text-decoration: none; }
body .dii-content-rotator article h3 { display: block; margin-bottom: 10px; padding: 6px 0 0 0; font-family: 'Montserrat', sans-serif; font-size: 15px; font-weight: 400; color: #fff; text-align: center; }
body .dii-content-rotator article .article-story { display: block; padding: 0 8px; font-family: 'Montserrat', sans-serif; font-size: 14px; font-weight: 400; color: #fff; text-align: center; }
body .dii-content-rotator article .article-more { float: none; display: inline-block; margin-top: 10px; padding: 8px 15px; height: 100%; background: #cf112b; border-radius: 0; font-family: 'futura-pt-condensed', sans-serif; font-size: 20px; font-weight: 700; color: #fff; line-height: 1.0; text-align: center; text-transform: uppercase; }
body .dii-content-rotator article .article-more:hover { background: #e71330; color: #fff; text-decoration: none; }
body .dii-content-rotator article .article-more:before { content: "read more"; }
body .dii-content-rotator article .article-more:after { content: ""; }

body .dii-content-rotator .dii-rotator-nav { position: absolute; top: auto; left: auto; bottom: 10px; padding: 0 15px; width: 100%; max-width: 1600px; background: none; border: none; text-align: center; }
body .dii-content-rotator .dii-rotator-nav i { margin: 0 6px; font-size: 12px; color: rgba(255,255,255,0.4); }
body .dii-content-rotator .dii-rotator-nav i.rotator-active { color: rgba(255,255,255,1.0); }
body .dii-content-rotator .dii-rotator-nav i:hover:not(.fa-circle) { color: #fff; }
body .dii-content-rotator .rotator-group .group-nav:hover { background: none; text-decoration: none; }
body .dii-content-rotator .rotator-group .group-item span { opacity: 1.0; background: rgba(255,255,255,0.7); font-family: 'futura-pt-condensed', sans-serif; font-size: 18px; font-weight: 700; color: #000; line-height: 1.0; text-transform: uppercase; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body .dii-content-rotator .rotator-group .group-item span:hover { background: rgba(255,255,255,1.0); color: #cf112b; }


/* MENUS */
#design-container-main-nav .dii-content-nav-menu > ul > li > a.dii-sub-menu-link { display: block; height: 50px; margin: 0; padding: 0 30px; background: none; border: none; font-family: 'futura-pt', sans-serif; font-size: 17px; font-weight: 800; color: #071f5d; line-height: 50px; box-sizing: border-box; }
#design-container-main-nav .dii-content-nav-menu > ul > li:last-child > a.dii-sub-menu-link{ background: #cf112b; color: #fff; }
#design-container-main-nav .dii-content-nav-menu > ul > li:hover > a.dii-sub-menu-link { color: #fff; transition: all ease-in-out .3s; cursor: pointer; }
#design-container-main-nav .dii-content-nav-menu > ul > li:before { content: ''; position: absolute; width: 100%; height: 0; left: 0; bottom: 0; background: #071f5d; opacity: 1; transition: all ease-in-out 0.2s; }
#design-container-main-nav .dii-content-nav-menu > ul > li:hover:before { height: 100%; }
#design-container-main-nav .dii-content-nav-menu.theme-none ul li:hover { background: none; } /* no theme hover override */
#design-container-main-nav .dii-content-nav-menu > ul ul { padding: 0; background-color: #071f5d; border-radius: 0; }
#design-container-main-nav .dii-content-nav-menu ul ul li a { padding: 10px; font-size: 14px; font-weight: 400; color: #fff; line-height: 1.2; letter-spacing: 0; text-align: left; text-transform: none; }
#design-container-main-nav .dii-content-nav-menu > ul > li:hover > ul { top: 50px; }
#design-container-main-nav .dii-content-nav-menu > ul ul li:hover > a.dii-sub-menu-link { background: #cf112b; color: #fff; transition: all ease-in-out .3s; }
#design-container-main-nav .dii-content-nav-menu li.dii-menu-item-sub-menu > a.dii-sub-menu-icon::before { content: "\f054"; color: rgba(255,255,255,0.4); }

#design-main .dii-content-nav-menu.theme-blue > ul { background: none; border: none; border-radius: 0; box-shadow: none; z-index: 10; }
#design-main .dii-content-nav-menu.theme-blue > ul > li > a.dii-sub-menu-link { margin: 0 0 3px 0; padding: 10px; border-radius: 0; font-family: 'Montserrat', sans-serif; font-size: 15px; font-weight: 400; text-transform: none; line-height: 1.0; letter-spacing: 0; }
#design-main .dii-content-nav-menu.theme-blue.horizontal > ul > li > a.dii-sub-menu-link { padding: 10px 15px; }
#design-main .dii-content-nav-menu:not(.theme-none):not(.dii-is-mobile) > ul > li.dii-menu-item-sub-menu:hover > ul,
#design-main .dii-content-nav-menu:not(.theme-none) > ul > li.dii-menu-item-sub-menu > ul.show { top: 34px; left: 0; }

#design-sitemap .dii-content-nav-menu.theme-none > ul > li > a.dii-sub-menu-link { padding: 6px 0; font-family: 'Montserrat', sans-serif; font-size: 15px; font-weight: 400; color: #fff; line-height: 1.4; }
#design-sitemap .dii-content-nav-menu.theme-none > ul > li:hover > a.dii-sub-menu-link { background: none; color: rgba(255,255,255,0.5); }
#design-sitemap .dii-content-nav-menu.theme-none ul li:hover { background: none; }


/* MOBILE */
@media screen and (max-width: 1200px) {

  #design-header-wrapper { height: 133px; }
  #design-header-inner { height: 130px; }
  #design-logo img { height: 135px; }

  #design-nav-wrapper { top: 45px; }
  #design-container-main-nav .dii-content-nav-menu > ul > li > a.dii-sub-menu-link { padding: 0 20px; font-size: 16px; }

}

@media screen and (min-width: 1025px) {

  .admin-mode #design-header-wrapper.header-fixed { top: 70px; }

  #design-header-wrapper.header-fixed { position: fixed; top: 0; height: 110px; z-index: 201; border-bottom: none; box-shadow: 0px 0px 8px 2px rgba(0,0,0,0.2); }
  #design-header-wrapper.header-fixed #design-logo img { height: 100px; }
  #design-header-wrapper.header-fixed #design-nav-wrapper { top: 30px; }
  #design-main.header-fixed { margin-top: 110px; }

  #design-header-wrapper { padding: 0 30px; }

  body #design-main-1 .dii-content.dii-content-header h2,
  body #design-main-2 .dii-content.dii-content-header h2,
  body #design-main-3 .dii-content.dii-content-header h2 { font-size: 55px; }

}

@media screen and (max-width: 1024px) {

  #design-header-wrapper { padding: 0; }
  #design-header-wrapper { height: 113px; }
  #design-header-inner { height: 110px; }
  #design-logo { left: 15px; }
  #design-logo img { height: 115px; }

  #design-nav-wrapper { top: 30px; padding-right: 15px; }
  #design-container-main-nav .dii-content-nav-menu > ul > li > a.dii-sub-menu-link { padding: 0 15px; font-size: 15px; }

  body .main-home #design-main-2 .dii-content-article { max-width: 48%; }

}

@media screen and (max-width: 900px) {

  #design-logo { top: 5px; left: 10px; }
  #design-logo img { height: 100px; }

  #design-nav-wrapper { top: 57px; padding: 0; }
  #design-nav-wrapper #design-container-main-nav #ww-btn-main-nav { padding: 0 10px; height: 50px; background: none; border: none; font-family: 'futura-pt-condensed', sans-serif; font-size: 18px; font-weight: 800; color: #071f5d; line-height: 50px; text-align: right; text-transform: uppercase; box-sizing: border-box; }
  #design-nav-wrapper #design-container-main-nav #ww-btn-main-nav i { margin: 0 10px 0 0; height: 50px; font-size: 22px; line-height: 50px; text-align: right; }
  #design-nav-wrapper #design-container-main-nav #ww-btn-main-nav i.caret { display: none; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu > ul { padding: 10px 5px; width: 100%; background: #071f5d; box-sizing: border-box; z-index: 201; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu > ul > li > a.dii-sub-menu-link { padding: 10px; width: 100%; height: auto; background-image: none; font-size: 15px; color: #fff; line-height: 1.1; text-align: left; text-shadow: none; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu > ul > li > a.dii-sub-menu-link:after { content: ''; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu > ul > li:hover > a.dii-sub-menu-link { background: #cf112b; color: #fff; border-radius: 0; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu > ul > li:hover > ul { top: 39px; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu > ul li.dii-menu-item-sub-menu > ul { background: #071f5d; color: #fff; text-shadow: none; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu.horizontal li.dii-menu-item-sub-menu > a.dii-sub-menu-icon::before { line-height: 38px !important; }
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu ul li ul.show,
  #design-nav-wrapper #design-container-main-nav .dii-content-nav-menu:not(.dii-is-mobile) ul li:hover > ul { left: 0; width: 100%; background: #030f2e; }

}

@media screen and (max-width: 667px) {

  #design-footer { margin: 0; width: 100%; }
  #design-footer #design-footer-left,
  #design-footer #design-footer-right { display: block; margin: 0; width: 100%; text-align: center; }
  #design-footer #design-footer-right { margin-top: 10px; }

  body .main-home #design-main-2 .dii-content-article { max-width: 98%; }

}

@media only screen and (max-width: 450px) {

  #design-main div.container { padding: 0 15px; }

}
