/*!
Updated:2017-09-19
Version:NDT 2.4

Author:
Erik Runyon
Marketing Communications:Web

CONTENTS
-----------------------------------------
1. Common
2. Screen
3. Media Queries
4. Themes
5. Grid
6. Plugins
7. Print

BRANDING
-----------------------------------------
1. COLORS
   - Blue (Headings):#0c2340
   - Blue (Links):#004da3
   - Gold:#dcb439

2. FONT STACKS
   - Headings:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif
   - Body:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif

3. GALAXIE POLARIS FONT WEIGHTS
   - 100 light
   - 300 book
   - 400 medium (normal)
   - 700 bold
   - 900 heavy
*/

/*************************************************************************************
 * 1. Common Styles
 ************************************************************************************/
*, *:before, *:after {box-sizing:border-box;}
@-ms-viewport {width:device-width; zoom:1;}
@-o-viewport {width:device-width; zoom:1;}
@viewport {width:device-width; zoom:1;}
html {width:100%; margin:0; padding:0; font-size:100%; overflow-y:scroll; -webkit-text-size-adjust:100%; -moz-text-size-adjust:100%; text-size-adjust:100%; font-smoothing:antialiased;}
body {width:100%; margin:0; padding:0; color:#333; font:1em/1.5em "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {display:block;}
audio, canvas, progress, video {display:inline-block; vertical-align:baseline;}
audio:not([controls]) {display:none; height:0;}
[hidden] {display:none;}
p {margin:0 0 1em;}
a {color:#004da3; background-color:transparent; -webkit-tap-highlight-color:rgba(0,0,0,0);}
a:visited {color:#4a3651;}
a:hover {color:#0c2340}
a:active {color:#aa272f;}
a:focus {outline:thin dotted;}
::-moz-selection {background:#d6e2f1; color:#333; text-shadow:none;}
::-moz-selection,
::selection {background:#d6e2f1; color:#333; text-shadow:none;}
strong, b {font-weight:bold;}
em, i {font-style:italic;}
small {font-size:80%;}
iframe, embed {width:100%;}
sub,
sup {position:relative; vertical-align:baseline; line-height:0; font-size:smaller;}
sup {vertical-align:super;}
sub {vertical-align:sub;}
pre, code, kbd, samp {overflow:auto; font-family:monospace, sans-serif;}
hr {clear:both; width:100%; margin:2em auto; border:3px solid #ccc; border-width:3px 0 0;}

/* Headings
----------------------------------------------------*/
h1,h2,h3,h4,h5,h6 {margin:1.4em 0 0.5em; line-height:1.1em; color:#444; font-weight:600; text-rendering:optimizeLegibility; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; clear: both; }
.alpha h2, 
.alpha h3, 
.alpha h4, 
.alpha h5, 
.alpha h6 { clear: left; }
.alpha .clear { clear:both; }
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a {text-decoration:none; color: #444; }
h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited { color:#555; }
h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover,
h1 a:visited:hover, h2 a:visited:hover, h3 a:visited:hover, h4 a:visited:hover, h5 a:visited:hover, h6 a:visited:hover { text-decoration:none; color: #0c2340; }
h1 a:hover:after ,h2 a:hover:after ,h3 a:hover:after ,h4 a:hover:after ,h5 a:hover:after ,h6 a:hover:after { margin-left: 0.5em; }
h1 { margin-top:0; font-size:2.25rem; }
h2 { font-size:1.8rem; }
h3 { font-size:1.65rem; font-style:normal; }
h4 { font-size:1.35rem; }
h5 { font-size:1.2rem; text-transform:uppercase;  letter-spacing:1px; }
h6 { font-size:1rem; text-transform:uppercase; letter-spacing:1px; }
h1 + h2,
h2 + h3,
h3 + h4,
h4 + h5,
.image-right + h2,
.image-left + h2 {margin-top:0.25em;}
.column h2:first-child,
.column h3:first-child,
.column h4:first-child,
.column h5:first-child,
.column h6:first-child { margin-top: 0; }
.list-heading { border-bottom: 2px solid #ccc; padding-bottom: 0.2em; margin-bottom: 1em; }
.no-js .lazyload { display:none; }

/* Lists
----------------------------------------------------*/
ol, ul {margin:1em 0; padding:0 0 0 2em;}
li {margin:0 0 0.25em;}
nav ul {list-style:none;}
nav ul,
nav li {margin:0; padding:0;}
nav a {text-decoration:none;}
.no-bullets {list-style-type:none; padding-left:0;}
.list-cta {display:grid; gap:0.5rem; margin:1rem 0; padding:0; list-style:none;}
  .list-cta li {margin:0; height:100%;}
  .list-cta a {display:flex; align-items:center; justify-content:center; height:100%; padding:1rem; color:#fff; text-align:center; text-decoration:none; border-radius:0.3rem; background:#0c2340;}
  .list-cta a:hover {background:#1e3858;}

/* Tables
----------------------------------------------------*/
table {width:100%; margin:2em 0; border-collapse:collapse; border-spacing:0; border-bottom:3px solid #d4d4d4;}
tr {border-top:3px solid #ccc;}
tr:nth-child(odd):hover td {background:#ede1bc;}
tr:nth-child(odd) td {background:rgba(0,0,0,0.085);}
th,
thead th {text-align:left; background-color:#0c2340; color:#eee; border:3px solid #0a1d35; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-weight:300; font-size:1.25em;}
tfoot th {text-align:right;}
th, td {padding:0.5em 0.75em;}
  .number {text-align:right;}
td {border-right:3px solid #d4d4d4; border-left:3px solid #d4d4d4;}
td, td img {vertical-align:top;}

/* Form Elements
----------------------------------------------------*/
form { margin:0 0 1em; }
fieldset { padding:0.35em 0.625em 0.75em; border-width: 0 0 1px 0; border-bottom: 1px solid #d4d4d4; margin: 0.25em 0 0.5em; }
legend { padding:0.5em; border:0; }
label {display:block; font-weight:bold; margin-bottom: 0.3em; }
button[type="submit"] {}
button, input, optgroup, select, textarea { margin:0 0 1em; color:inherit; font-size:100%; vertical-align: baseline; max-width: 100%; }
select { width:100%; }
button { width:auto; overflow:visible; }
button, input { line-height:normal; }
button,
select {text-transform:none;}
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {cursor:pointer; -webkit-appearance:button;}
input[type="checkbox"],
input[type="radio"] { padding:0; margin: 0 0.25em 0 0; }
input[type="search"] {-webkit-appearance:textfield;}
button::-moz-focus-inner,
input::-moz-focus-inner {border:0; padding:0;}
button[disabled],
html input[disabled] {cursor:default;}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {height:auto;}
input[type="search"] {-webkit-appearance:textfield; box-sizing:content-box;}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {-webkit-appearance:none;}
textarea {overflow:auto; vertical-align:top;}
optgroup {font-weight:bold;}

summary::-webkit-details-marker { display:none; }
summary { text-indent:-1.5rem; }
summary::before { content:'+'; display:inline-block; text-indent:0; width:1rem; margin-right:0.5rem; text-align:center; }
details[open] summary::before { content:'-'; }


/* Quotes
----------------------------------------------------*/
blockquote {margin:1em; padding:0; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-weight: 600;}
blockquote p {padding-left:0.75em; border-left:3px solid #00843d; line-height:1.4; color:#333; font-size:1.5rem;}
blockquote footer {display:block; margin-top:1em; color:#666; line-height:1.4; font-style:italic; font-size:0.8rem; }
blockquote.pull { float:right; font-style:normal; }

/* Images
----------------------------------------------------*/
svg:not(:root) {overflow:hidden;}
img {max-width:100%; width:auto; height:auto; border:none; vertical-align:bottom; -ms-interpolation-mode:bicubic; box-sizing:content-box;}
.image-default,
.image-right,
.image-left {margin:0 0 1em; font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-style:italic; font-size:0.9rem; color:#777;}
.image-center {text-align:center;}
.image-default a,
.image-right a,
.image-left a {display:block; text-decoration:none; border:none;}
.image-left + h2 {margin-top:0;}
.captioned { line-height: 1.4; }
.captioned img {margin-bottom:0.5em;}

figure {margin:0 0 1em; max-width:100%;}
aside.right,
figure.right {float:right; max-width:100%;}
aside.right p {margin-right:0;}
figure.left {float:left;}
figcaption {display:block; text-align:left; line-height:1.5em;}

/* Icons
  <span class="icon" data-icon="nd-monogram"></span>
  https://dev.conductor.nd.edu/icons/
----------------------------------------------------*/
.icon {display:inline-block; width:1em; height:1em; fill:currentColor;}
[data-icon="nd-monogram"] {fill:#0c2340;}

/* General Classes
----------------------------------------------------*/
.noborder,
.noborder img {border:none !important; box-shadow:none !important}
.webcal {font-weight:bold;}
  .webcal i {font-weight:normal;}
a[href$=".pdf"] {padding:1px 0 0 20px; background:url('/images/icons/pdf.gif') left center no-repeat;}
.ndmark {display:block; width:200px; max-width:100%; text-decoration:none;}
.visibility-hidden {position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden;}

.cf:before, .cf:after {content:"\0020"; display:block; height:0; overflow:hidden;}
.cf:after {clear:both;}
.cf {zoom:1;}

.bars {padding:0 0 30px; background:url('/stylesheets/themes/ndt/v2.4/images/bars-gray.png') bottom left repeat-x;}

.video {position:relative; display:block; text-align:center;}
.fancybox[href^="https://www.youtube.com/embed"]:not(.card-link) { position:relative; } 
.fancybox[href^="https://www.youtube.com/embed"]:not(.card-link)::after { content:''; display:block;}
.fancybox[href^="https://www.youtube.com/embed"]:not(.card-link)::after,
.video .play {position:absolute; top:0; left:0; width:100%; height:100%; margin:0 auto; background:url('/stylesheets/images/play-btn.svg') center center no-repeat; background-size:auto 100%; transition: all 125ms ease; }

.skip-links {position:absolute; left:0; top:0; width:100%; margin-left:0; text-align:center; list-style:outside none;}
.skip-links a {position:absolute; left:-100vw; top:0.5em; transition:0.25s;}
.skip-links a:active,
.skip-links a:focus,
.skip-links a:hover {left:0.5em; width:auto; height:auto; overflow:visible; background:#dcb439; padding:0.5em 1em; color:#0c2340; font-weight:bold; font-size:14px; box-shadow:0 0 10px 0 #000; z-index:10001;}

/* Breadcrumbs
----------------------------------------------------*/
.breadcrumbs { margin:0 0 1em; padding:0; list-style:none; font-size:0.8rem; }
  .breadcrumbs li { display:inline-block; margin:0 4px 0 0; color:#777; }
  .breadcrumbs a { text-decoration: none;  }
    .breadcrumbs a:hover { text-decoration:underline; }
    .breadcrumbs a:visited { color:#555; }

/* Stats */
.stat { text-align:center; padding:2rem; font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; position: relative; }
.stat-number { display:block; font-family: GP, sans-serif; font-size:2.5em; font-weight:600; margin-bottom: 0.4em; line-height: 1.1; }
.stat-text { font-size: 1.2em; }
.stats-row { display:flex; flex-flow:row wrap; margin:2rem 0; }

/* Detail Drawer */
.grid-item .drawer-content { height:0; max-height:0; overflow:hidden; transition:0.6s transform;}
.active-item .drawer-content { height:auto; max-height:999em; }
.drawer-content h2 .icon { height: 0.6em; width: 0.6em; margin: 0.25em 0 0.05em 0.25em; color: #777; }
.page-drawer { display:none; transition:0.6s transform; }
.close-drawer { display:block; position:absolute; top:0; left:0; margin:1rem; border-radius: 100%; padding: 0.5em; text-indent: -999em; width: 2em; height: 2em; background: #777 url(/stylesheets/images/icon-close.svg) 50% 50% / 50% auto no-repeat; transform: scale(1); transition: all 125ms ease; }
.close-drawer:hover { transform: scale(1.03); background-color: #444; }


/* NEWS & EVENTS
----------------------------------------------------*/
article {margin-bottom:4em;}
article header {margin:0 0 1em;}
.additional-links { margin:0 0 1em; padding:0; list-style:none; }
  .additional-links li { display:inline-block; margin:0;}
  .additional-links a { text-decoration:none;}
.entry-title { margin:0 0 0.25em; padding:0; font-size:1.45rem; line-height:1.35em; font-weight: 600; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; }
  .entry-title.page-title {  }
  .entry-title .icon {margin-left:0.25rem; font-size:0.67em; fill:#aaa;}
.meta-item {display:inline-block; margin:0.2em 1em 0 0; color:#333; font-size:1rem; font-weight:normal; font-family:inherit;}
.meta-item b,
.posted-in {color:#777; font-weight:bold;}
.author a {text-decoration:none;}
  .author a:hover {text-decoration:underline;}
.entry-summary {margin:1em 0;}
.description {margin:1em 0;}
.posted-in {display:none;}
.news-hentry .posted-in,
.event .posted-in {display:block;}
.attribution {font-style:italic;}
.article-more span {position:absolute; left:-999em;}

.article { display:flex; flex-flow:column; }
.article-image img { width:100%; }

.page-title { font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-weight: 600; border-bottom: 3px solid #00843d; margin-bottom: 1em; }

/* Events */
.events .vevent {margin-left:1em; margin-right:1em;}
.events-date-header {margin:0 0 0.25em; padding:0; color:#777; font-weight:300; font-size:1.25rem; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
.events .date-string,
.home .events-date-header {display:none;}

.event-list-heading { margin:0; }
.event-list { list-style:none; padding:0; }
.event-list-item { margin-bottom:1rem; }

/* SEARCH
----------------------------------------------------*/
.promotions-results {margin:0 0 2rem; padding:1rem; border:1px solid #777; border-radius:3px; background:#eee;}
  .promotions-results ul,
  .promotions-results li,
  .promotions-results p {margin:0;}
.search-count,
.search-time {font-family:inherit;}
.search-count {margin:0; font-size:1.4rem;}
  .search-query i {font-style:normal; font-weight:700;}
.search-time {margin:0 0 1em; color:#666; font-size:1.2rem;}
.search-sort-select { width:auto; padding:0.5em; }
.search-results {margin:1em 0; padding:0; list-style:none;}
  .search-results li {overflow:hidden; margin:0 0 2rem;}
    .search-record {display:flex; flex-flow:row wrap; margin:0;}
    .search-result-img {max-width:120px; width:100%; margin-right:1rem;}
    .search-result-img + .search-result-text {max-width:calc(100% - 120px - 1em);}
    .search-result-text {}
    .search-record header {margin:0 0 0.5em;}
    .search-result-title {font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-size:1.4rem;}
    .search-result-title b {font-weight:500;}
    .search-result-url {font-size:0.9rem; font-family:inherit; word-break:break-all;}
      .search-result-url a {color:#388222; font-weight:700;}
    .search-result-excerpt {margin:0 0 0.5em; line-height:1.3em;}
    .search-result-excerpt br {display:none;}
    .search-result-meta {color:#777; font-size:0.9rem;}
    
/* Galleries */
  ul.lb-gallery { list-style:none; padding-left:0; clear:both; }
    .lb-gallery li { padding-left:0.375em; padding-right:0.375em; margin-bottom:0.75em; text-align:center;}
  #assets_gallery { margin-bottom:1em; }


/* Fonts 
   https://dev.conductor.nd.edu/fonts/
----------------------------------------------------*/
@font-face {font-family:GPC; font-weight:300; font-style:normal; font-display: swap;
  src:url('https://static.nd.edu/fonts/gp-min/gpc-book.woff2') format('woff2'),
      url('https://static.nd.edu/fonts/gp-min/gpc-book.woff') format('woff'),
      url('https://static.nd.edu/fonts/gp-min/gpc-book.ttf') format('truetype');
}
@font-face {font-family:GPC; font-weight:400; font-style:normal; font-display: swap;
  src:url('https://static.nd.edu/fonts/gp-min/gpc-medium.woff2') format('woff2'),
      url('https://static.nd.edu/fonts/gp-min/gpc-medium.woff') format('woff'),
      url('https://static.nd.edu/fonts/gp-min/gpc-medium.ttf') format('truetype');
}
@font-face {font-family:GPC; font-weight:600; font-style:normal; font-display: swap;
  src:url('https://static.nd.edu/fonts/gp-min/gpc-bold.woff2') format('woff2'),
      url('https://static.nd.edu/fonts/gp-min/gpc-bold.woff') format('woff'),
      url('https://static.nd.edu/fonts/gp-min/gpc-bold.ttf') format('truetype');
}

@font-face {font-family:GP; font-weight:400; font-style:normal; font-display: swap;
  src:url('https://static.nd.edu/fonts/gp-min/gp-book.woff2') format('woff2'),
      url('https://static.nd.edu/fonts/gp-min/gp-book.woff') format('woff'),
      url('https://static.nd.edu/fonts/gp-min/gp-book.ttf') format('truetype');
}
@font-face {font-family:GP; font-weight:600; font-style:normal; font-display: swap;
  src:url('https://static.nd.edu/fonts/gp-min/gp-bold.woff2') format('woff2'),
      url('https://static.nd.edu/fonts/gp-min/gp-bold.woff') format('woff'),
      url('https://static.nd.edu/fonts/gp-min/gp-bold.ttf') format('truetype');
}

/*************************************************************************************
 * 2. Screen Styles
 ************************************************************************************/
@media only screen {
  p {max-width:65em;}
  h1 a:after,h2 a:after,h3 a:after,h4 a:after,h5 a:after,h6 a:after { color: #d39f10; content: "\203A"; font-size: 1.4em; margin-left: 0.25em; display: inline-block; transition: all 125ms ease; font-weight: bold; font-family: Arial, sans-serif; }
  h1 a[id]:after, h2 a[id]:after, h3 a[id]:after, h4 a[id]:after, h5 a[id]:after, h6 a[id]:after { display: none; } /* Hide anchor link carets */
  
  dt { font-weight:700; }
  dd { margin-left:1em; }
  
  .tablewrap {position:relative; overflow-y:auto; margin:0 auto;}

  .embed-inner {position:relative; padding:0;}
  .embed-inner iframe,
  .embed-inner object,
  .embed-inner embed {position:absolute; top:0; left:0; width:100%; height:100%;}
  
  /* Buttons
  ----------------------------------------------------*/
  .btn,
  .more,
  .excerpt_continuation { position:relative; display:inline-block; margin:0.25em 0; padding:0.725em 1.5em 0.6em; cursor:pointer; font-size:1rem; line-height:1.2em; text-decoration:none; text-align:left; vertical-align:middle; font-weight:400; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; color: white; background:#0c2340; border-radius:3px; transform: scale(1); transition: all 125ms ease; }
  .btn:visited { color:#eee; }
  
  .btn:hover,
  .btn.active:hover { box-shadow: none; color:white; background-color:#08172a; transform: scale(1.03); }
  
  .btn:active,
  .more:active { box-shadow:0 0 #06101e; }
  .btn-small {font-size:0.8rem;}
  
  .btn-alt { box-shadow: none; color:#333; background-color:#eec442;}
    .btn-alt:visited { color:#0c2340; }
    .btn-alt:hover { box-shadow:0 3px #c8a434; color:#333; background-color:#e2ba3e; }
    .btn-alt:active { box-shadow: none; }
    
  .btn [data-icon] { margin:0.1rem 0.5rem 0 0; fill:#eec442; }
  .btn-gold [data-icon] {fill:#003269;}
  
  .more,
  .excerpt_continuation,
  .btn-inline { clear:both; display: inline-block; float:none; margin:0.15em 0; padding:0.75em 1.5em; font-size: 1rem; line-height:1.3; font-weight:400; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; background-color: white; background-image: none; color:#0c2340; border-radius:3px; transform: scale(1); transition: all 125ms ease; }
    .more:visited,
    .btn-inline:visited { color: #253f5e; }
    .more:hover,
    .btn-inline:hover { color:#0c2340; background: #d6e2f1; transform: scale(1.03); }
    .more.right { display:block; text-align:right; }
    .more:after { content: "\203A"; margin-left: 0.5em; display: inline-block; }

  /* Stats
  ----------------------------------------------------*/
  .stat { width:100%; position: relative; padding-top: 9em; }
  .stat:before { content: ""; position: absolute; height: 1em; width: 100%; background: url(/stylesheets/images/line-dots.svg) 0 50% / auto 100% repeat-x; transform: translateX(-100%); top: 4rem; }
  .stat:first-child:before { display: none; }
  .stat:after { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border-radius: 100%; border: 0.25em solid rgba(255, 255, 255, 0.25); width: 8rem; height: 8rem; background-color: #4a3651; z-index: 1; background-size: 75% auto; background-position: 50% 50%; background-repeat: no-repeat; }
  
  .stat:nth-child(1):before { display: block; transform: translateX(2em); left: 50%; }
  .stat:nth-child(2):before,
  .stat:nth-child(3):before { display: block; transform: translateX(0); left: -1rem; width: calc(100% + 2rem); }
  
  .stat.icon-hands_helping:after { background-image: url(/stylesheets/images/icon-hands_helping.svg); }
  .stat.icon-dollar:after { background-image: url(/stylesheets/images/icon-dollar.svg); }
  .stat.icon-globe:after { background-image: url(/stylesheets/images/icon-globe.svg); }
  .stat.icon-graduation_cap:after { background-image: url(/stylesheets/images/icon-graduation_cap.svg); }
  
  /* Detail Drawer */
  .drawer-desktop-only { display:none; }
  
  /* Structure
  ----------------------------------------------------*/
  html {height:100%; }
  body {height:100%; padding:0; margin:0;}
  .wrapper {}
  .site-content { padding-top:1em; padding-bottom:1em; }
  .beta { padding:1em 0; border-top:1px solid #dadada; box-shadow:inset 0 1px 0 rgba(255,255,255,0.9); }
  .main,
  .aside {text-shadow:0 1px 0 #fff;}
  .aside {margin-top:1em;}
    .aside img {margin-bottom:1em;}
    .aside ul {padding:0 0 0 1em; list-style:none;}
    .aside li a {text-decoration:none; font-weight:bold; font-size:0.9rem;}
      .aside li a:hover {text-decoration:underline;}
    .aside .entry-title { font-size:1.2rem; }
    .aside article footer {display:none;}
  .page-title { margin:0 0 0.5em; padding:0 0 0.25em; }
  .page-intro { max-width:50em; margin:2em auto 4em; font-size:1.1em; line-height:1.5; } 
  .sidebar > h2 { margin-top:0; }
  .align-center { justify-content: center; }

  /* Header
  ----------------------------------------------------*/
  .site-header {text-align:center; } 
  
  .brandbar,
  .titlebar {overflow:hidden; position:relative;}
    .dept {display:none; border-top:1px solid #000; box-shadow:0 1px rgba(0,122,217,0.4) inset;}
    .brandbar li {margin:0 -0.9375rem; padding:0;}
    .brandbar a {display:block; margin:0 auto; text-decoration:none; height:50px; text-indent:-9999px; overflow:hidden; background-repeat:no-repeat;}
    .brandbar a:focus {background-color:rgba(255,255,255,0.2);}
      .dept-nd a {background-position:left 0;}
      .dept a {background-position:right 0;}
    .titlebar {padding:0.75em 0;}
    .site-title {max-width:80%; margin:0; font-size:2.4em; font-size:1.75rem; line-height:1.75rem; font-weight:300; text-align:left; text-shadow:0 1px rgba(255,255,255,0.7); font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
      .site-title a {display:block; padding:0.5em 0; border:none; color:#0c2340; text-decoration:none;}
      .site-title a:visited {color:#0c2340;}
      .site-title a:hover {text-decoration:none;}
      .site-title a:focus {background-color:rgba(255,255,255,0.2);}
       .subtitled .site-title {margin:0; line-height:1.15em;}
       .site-subtitle {clear:left; margin:0; color:#333; font-family:inherit; font-size:1rem; text-align:left;}

  .header-util {display:none; position:relative; margin:0 auto; padding:0 1em; text-align:center;}
    .search-form {display:none; overflow:hidden; width:91%; margin:0 auto 0.5em; padding:2px 2px 2px 6px; border:1px solid #986633; line-height:1.1em; background-color:#fff; box-shadow:inset 0 1px 2px rgba(0,0,0,0.3), 0 1px rgba(255,255,255,0.45); border-radius:3px;}
    .search-form label {border:0; clip:rect(0 0 0 0); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; width:1px;}
    .search-input {display:inline-block; vertical-align:middle; width:86%; margin:0; padding:0.25em; border:none; font-family:inherit; font-size:1.2rem; color:#444; -webkit-appearance:textfield; background:transparent;}
    .search-button {display:inline-block; float:right; position:relative; margin:0; padding:0; line-height:1rem; border: none; cursor:pointer; transition:all .15s ease-in-out; border-radius:3px; background-color: transparent; }
      .search-button .icon {position:relative; left: 0; width: 2em; height: 2em; top: 0.25em; margin:0;}
      .search-button span {display:inline-block; text-indent:-9999px; overflow:hidden; height:0;}
      .search-button:hover {border: none; background: transparent; color: #cc921f; }
      .search-button:active { background: transparent; }
  .header-util nav ul {margin:0.4em 0 0; text-align:center; line-height:1em;}
  .header-util nav li {display:inline-block; width:32%;}
  .header-util nav a {display:block; padding:0.625em; color:#fff; font-family:"HelveticaNeue", Helvetica, Arial, sans-serif; font-weight:bold; text-decoration:none;   border:1px solid #562e07;}
  
  /* Offscreen Nav
  ----------------------------------------------------*/
  body, html {-ms-overflow-style:none !important;} /* Needed for WinPhone to allow vertical scrolling in nav */
  .nav-mobile {overflow-y:scroll; position:fixed; top:0; bottom:0; transition:0.15s ease; right:-14.755rem; width:14.755rem; height:auto; padding:1em; border-left:1px solid rgba(0,0,0,0.3); background-color:rgba(200,200,200,0.2); box-shadow:0 0 8px 0 rgba(0,0,0,0.25) inset;}
    .lt-ie9 .nav-mobile {display:none;}
  .nav-mobile.active {right:0;}
    .nav-mobile .search-form {display:block; margin:0 auto 1.5em; padding:1px 1px 1px 4px; border:1px solid #888; font-size:0.75rem; line-height:1.1em; background-color:#fff; border-radius:3px;}
    .nav-mobile .search-input { width: calc(100% - 2em); }
  .wrapper {position:relative; right:0; transition:0.15s ease;}
  .wrapper.active {right:14.755rem;}

  /* New mobile nav button */
  .btn-nav-mobile {position:absolute; top:0.8rem; right:0.8rem; display:block; width:2.6rem; height:2.6rem; padding:0.3rem; text-decoration:none; border: none; border-radius:3px; background: transparent; }
    .ni {transition-duration:0.5s; transition-delay:0.2s, 0;}
      line.ni { stroke: #d39f10; transform:rotate(0deg); }
      g.ni { fill: white; }
      .toggled .ni1 { transform:translate(5px, 2px) rotate(45deg); }
      .toggled .ni2 { transform:translate(-3px, 11.4px) rotate(-45deg); }
      .toggled .ni3 { opacity:0;  transform:translate(0, 6px); }

  /* Top Nav
  ----------------------------------------------------*/
  .nav-top {display:none; position:relative; z-index:10; width:100%;  }
    .nav-top li { display:inline-block; vertical-align:top; font-family: GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; }
    .nav-top a { display:table-cell; vertical-align:middle; padding:0.75rem 1rem; text-align:center; transition:all 250ms ease-in-out;}
    .nav-top a:hover { background: #d6e2f1; }
    .nav-top .active a { background:rgba(0,0,0,0.075); }
    
  .nav-primary { background:#fff; z-index: 2; position: relative; }
    .nav-primary a { color:#0c2340; }
    .nav-primary ul { display:flex; justify-content:flex-start; }
    .nav-primary li { font-size: 1.15em; }
  
  .nav-audience { padding:0 180px; border-top:3px solid #ddd; margin-top:-1.8rem; }
  .nav-top .nav-audience { background: #4a3651; text-align:right; display:flex; margin:0; z-index: 0; position: relative; justify-content: flex-end; }
    .nav-top .nav-audience a { color:#fff; font-size: 1em; }
    .nav-top .nav-audience a:hover { background: #36273b; }
  
  .nav-top .nav-item-action {position: absolute; top:0; margin: 0 auto -0.5rem 0;}
    .nav-top .nav-item-apply { left: 0; }
    .nav-top .nav-item-inquire {  right:0; }
    .nav-top .nav-item-action a { background: #00843d; letter-spacing: 0.05em; padding: 1.5rem 2rem 1rem; font-size: 1.4em; text-transform:uppercase; transform: translateY(-0.5rem); transform-origin: center top; border-radius: 0 0 0.2em 0.2em; }
    .nav-top .nav-item-action a:hover { transform: translateY(0); background: #005929; }
    
  .nav-top-clone {  position:fixed; top:0; opacity:0; left:0; right:0; bottom:auto; transform:translateY(-100%); z-index:-1; opacity:0; }
    .nav-top-clone .nav-primary { box-shadow:0 1px 2px rgba(0,0,0,0.2); }
    .nav-top-clone .nav-audience { box-shadow:0 1px 2px rgba(0,0,0,0.2); }
  .nav-top-sticky { transform:translateY(0); opacity:1;  z-index:999; }
  
  /* General Nav
  ----------------------------------------------------*/
  .nav-site {}
  .nav-site ul {padding:0 0 1em;}
    .nav-site ul li {margin:0.2em 0;}
    .nav-site ul a {display:block; padding:0.3em 1em 0.3em 1.5em; text-indent:-1em; line-height:1.2em; text-transform:none; color:#0c2340; font-size:1.45rem; font-weight:500; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; border-bottom:2px solid transparent; transition: all 125ms ease; }
    .nav-site ul a:hover { border-bottom:2px solid transparent; color: #0c2340; background: #d6e2f1; }
    .nav-site a:active,
    .nav-site a:focus { outline:1px dotted #00843d; }
    .nav-site ul > .active > a {color:#0c2340; border: 2px solid transparent; background: rgba(0, 0, 0, 0.075); }
  .nav-site ul ul {padding:0;}
    .nav-site ul ul a {padding:0 0 0 2em; text-indent:-0.6em; color:#444; font-size:1.1rem; font-family:inherit; border:none; font-weight: 400; }
    .nav-site ul ul li {margin:0.5em 0; }
    .nav-site ul ul a:hover { color:#00843d; border:none; background: none; }
    .nav-site ul ul > .active > a {color:#00843d; border:none; font-weight:400; background: none; }
    .nav-site li.last{margin-bottom:1em;}
  .nav-site ul ul ul { margin-left:1em; /*padding-left: 1.5em; border-left: 3px solid #00843d;*/ }
    .nav-site ul ul ul a { font-size: 0.9rem; }
    .nav-site ul ul ul a:hover { background:none; }
    .nav-site ul ul ul .active > a { color:#00843d; font-weight:bold; background: none; }
    .nav-site ul ul ul .active > .current-last {color:#00843d; background: none; }
  .nav-site ul ul ul ul {margin-left:1.5em;}
    .nav-site ul ul ul ul a {padding:0 0 0 1.5em; }
  .nav-site ul ul ul ul ul {margin-left:1.5em;}
  .nav-section {display:none;}
  
  nav a .icon { font-size:1rem; opacity: 0.5; transition: all 250ms ease; margin: auto 0; }
  nav a:hover .icon { opacity: 1; }
  
  
  .header-image { height:30vw; overflow: hidden; background-size: cover; background-repeat: no-repeat; background-position: center center; background-image: url(/stylesheets/images/hdr-campus-700.jpg); }
  body:not(.home) .alpha { margin-top: -7vh; padding: 2em; background: white; }
  body.blank .alpha { margin-top:0;} 
  .home .header-image { height:auto; min-height: 70vh; display: flex; flex-flow:column; background-image: url(/stylesheets/images/hdr-night-sky-700.jpg); }
  .header-actions {}
  .header-action {display:inline-block; margin:0 0.5rem; padding:1.1rem 2rem 1rem; text-transform:uppercase; border-radius:0 0 0.2em 0.2em; background:#00843d; color:#fff; text-decoration:none; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
    .header-action:visited {color:#fff;}
  .policies-forms .header-image { background-image: url(/stylesheets/images/hdr-admissions-700.jpg); }
  .applicants .header-image { background-image: url(/stylesheets/images/hdr-applicants-700.jpg); }
  .degree-programs .header-image { background-image: url(/stylesheets/images/hdr-degree-programs-700.jpg); }
  .faculty-staff .header-image { background-image: url(/stylesheets/images/hdr-faculty-staff-700.jpg); background-position: center bottom; }
  .graduate-training .header-image { background-image: url(/stylesheets/images/hdr-graduate-training-700.jpg); background-position: center bottom; }
  .incoming-students .header-image { background-image: url(/stylesheets/images/hdr-incoming-students-700.jpg); }
  .news .header-image { background-image: url(/stylesheets/images/hdr-news-700.jpg); background-position: center top; }
  .admissions .header-image { background-image: url(/stylesheets/images/hdr-policies-forms-700.jpg); }
  .current-students .header-image { background-image: url(/stylesheets/images/hdr-current-students-700.jpg); background-position: center bottom; }
  .alumni .header-image { background-image: url(/stylesheets/images/hdr-alumni-700.jpg); background-position: center 90%; }
  
  .home .header-image .row-container { width: 100%; padding: 0 1rem; }
  .home .elevator,
  .home .header-feed { display:flex; flex-flow:column; color: white; }
  .home .header-cta { order: 2; }
  .home .header-feed { padding: 2rem 1rem; align-items: center; order: 1; }
    .home .header-feed .event-list-item { padding: 1rem; background: rgba(0, 0, 0, 0.7); }
    .header-feed .event-list-heading { padding: 1rem; font-size: 1.2em; background: #0c2340; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-weight: 600; line-height: 1.3; }
    .header-feed .btn { background-color: #00843d; color: white; display: block; text-align: center; font-weight: 600; }
      .header-feed .btn:hover { background-color: #005929; }
    .header-feed .event-list-heading,
    .header-feed a { color:#fff; }
  
  .elevator { min-height: 65%; position: relative; }
  .elevator:before { display: none; height: 1000%; border-left: 0.25rem solid #d39f10; border-bottom: 0.25rem solid #d39f10; content: ""; position: absolute; left: 1em; bottom: calc(1.95rem + 0.05em + 5vw); width: calc(10% - 1em); }
  .elevator h2 { font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-size:1.33em; font-weight: 600; color: white; background: #0c2340; padding: 1rem; border: 0.2rem solid #d39f10; border-radius: 0.2em; transition: all 125ms ease; white-space: normal; margin: 0 0 2em; }
  .elevator h2:before { content: '\25BA'; display: inline; margin-right: 0.4em; text-decoration: none; font-family: "Helvetica Neue", Helvetica, Verdana, Arial, sans-serif; }
  .elevator a { text-indent:-999em; display:block; height:0; }
  .elevator a:after { content:""; position:absolute; top:0; right:0; left:0; bottom:0; }
  .btn-header-video { position:relative; }
  .btn-header-video:hover h2 { text-decoration: none; color: white; background: #00843d; cursor: pointer; }
  
  /* Home
  ----------------------------------------------------*/
  .home-feature {margin-bottom:2em; text-align:center;}
    .feature-image {overflow:hidden; text-align:center;}
      .feature-image p,
      .feature-image img {margin:0 auto;}
  
  .page-section { position: relative; padding: 4em 0; margin: 2em 0; width: 100%; }    
  .page-section:before { position: absolute; content: ""; height: 100%; left: calc(50% - 50vw); top: 0; width: 100vw; border-top: 0.3em solid white; }
  .page-section:after { content: ""; position: absolute; top: 0.3em; left: 0; height: 0.8rem; width: 15em; background-color: #00843d; }
  
  .home-primary-section.page-section { margin-top: -2em; }
  .home-primary-section.page-section:before { background: #d6e2f1 url(/stylesheets/images/bg-section.png) 50% 50% / cover no-repeat; }
  
  .home-stats { overflow: hidden; }
  .home-stats-section.page-section {  }
  .home-stats-section.page-section:before { background: #4a3651; }
  .home-stats-section .stat { color: white; margin: 0 0 2em; }
  
  .home-primary { margin: 0 auto; position: relative; }
    .home-primary .image-right,
    .home-primary .image-left,
    .home-primary .image-default {float:none; max-width:none; margin:0 0 1em;}
    .home .entry-title {padding:0; border:none; font-size:1.5rem; font-family:inherit;}
  .home-secondary .columns > h2 {margin:0 0 .4em; padding:0 0 0.3em; border-bottom:2px solid #dcb439; font-size:2.25rem;}
    .home-secondary .columns > h2 a {color:#0c2340;}
    .home-secondary .columns .entry-title {font-size:1.675rem;}

  /* Custom Pages
  ----------------------------------------------------*/
  
/* Details/Summary */
details { padding: 1rem; margin-bottom: 2rem; border-radius: 0.5rem; position: relative; }
.no-details details:not([open]) > :not(summary) { display: none; }
summary { font-style:italic; outline:0; position:relative; text-indent:0; padding: 1em 1em 3em 4.5em; transition: all 125ms ease; margin: -1rem -1rem 2rem -1rem; background: #f2f2f2; }
.summary-text { font-size:1.5rem; font-weight:400; margin:0; padding:0; }
summary:after { content: "..."; position: absolute; left: 50%; transform: translateX(-50%); color: #555; font-size: 3em; font-family: serif; bottom: 1.5rem; }
details[open] summary { padding-bottom: 4em; }
summary::before { font-style:normal; line-height:0.8; position:absolute; top:0.67em; left: 1em; margin:0; border: 1px solid #ccc; border-radius: 50%; padding: 0.75em; background: white; width: 2.5em; height: 2.5em; transition: all 125ms ease; }
details[open] summary:after { display: none; }
details summary:hover,
details[open] { background: #f2f2f2; }
details[open] summary { padding-bottom: 1rem; }
details summary:hover:before,
details[open] summary:before { background: #00843d; color: white; }
details[open] summary::before { transform:rotate(0); }
summary { cursor:pointer; margin-bottom: 0; }

  
  /* Cards */
  .card { position:relative; display:flex; flex-flow:column; background: white; height:100%; text-decoration: none; box-shadow: 0 0 0 rgba(0, 0, 0, 0); transform: scale(1); transition: all 250ms ease; }
    .card:hover { box-shadow: 0 0 0.75em rgba(0, 0, 0, 0.3); transform: scale(1.03); }
  .card-body { padding:1rem; border-top: 4px solid transparent; transition: all 250ms ease; order:1; flex-grow:1; }
    .card:hover .card-body { border-color: #00843d; }
  .card-image { overflow:hidden; } 
  .card-image img { max-height:100%; width:100%; } 
  .card-image a { display:block; }
  .card-title { margin:0; font-size:1.1rem; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-weight: 600; line-height: 1.4; }
  .card-link { color: #0c2340; }
  .card-link:visited { color: #08192d; }
  .card-link:hover { text-decoration: none; }
  .card-text { padding:0; margin:0; }
  .card-link::after { content:''; position:absolute; top:0; bottom:0; left:0; right:0; }
  .card-quote {margin:0; font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-weight: 400; font-style:italic; }
  .card-feature .card-body { padding-top:0.5rem; }
  .card-feature { height:auto; margin-bottom:2rem; }
  .card-label { display: block; text-transform: uppercase; font-size: 0.75em; color: #777; letter-spacing: 0.1em; }
    
  /* Grids */
  .grid { list-style:none; padding:0; margin:0; display:flex; flex-flow:row wrap; margin-right:-1rem; }
  .grid-item { margin:0 0 2rem; padding-right:1rem; width:100%; }
  
  .grid .card-body { border-top-color: #0c2340; background: #eee; }
  .home .grid .card-body { background: white; }
  
  .filters { margin-bottom: 3em; }
  
  .commencement-grid { margin: 4em 0 0; }
  .commencement-grid .card-body {  }
  .commencement-grid .card-link { padding-left: calc(3.5rem + 1em); display: block; min-height: 4rem; }
  .commencement-grid .icon { display: inline-block; width: 3rem; height: 4rem; position: absolute; left: 1em; }
  
  /* Link Groups */
  .link-group-wrapper { padding:1rem; margin-bottom:1rem; background:#eee; }
  .link-group-wrapper h2 { margin-top:0; }
  .link-group-wrapper ul { list-style-type: none; padding-left: 0; margin: 1em 0; }
  
  dl.inline { margin:0.5em 0; }
  .inline > dt { display:inline-block; vertical-align:top; margin-right:0.5em; padding:0; }
    .inline > dt::after { content:':'; }
  .inline > dd { display:inline-block; margin:0; }
  
  .fellowship-list-link { display:flex; flex-flow:column; height:100%; font-size:1.25em; justify-content:center; }
  .fellowship-details dt {  margin-top:1rem; margin-right:1rem;  }
  .fellowship-details dd { padding:0; margin-left:0; }
  
  .featured-recipient-list { padding-bottom:2rem; }
  .recipient-details dt { margin-top:1rem; margin-right:1rem;  }
  .recipient-details dd { padding:0; margin:0 0 0.5rem; }
  
  .fellows-story h2,
  .fellows-story h3 { clear:none; }
  
  .recipient-details + .fellows-story h2:first-child { margin-top:0; }
  
  .admissions-apply { padding:4rem 0; }
  .admissions-apply h2 { margin:0; }
  
  .content-schedule ul,
  .content-deadlines ul { list-style-type: none; padding: 0; margin-bottom: 2em; }
  .content-schedule ul li,
  .content-deadlines ul li { margin: 0 0 1em; padding-left: 1em; }
  
  #form-degrees input[type="text"] { width: 100%; padding: 0.3em; }
  #form-staff { margin: 4em auto 2em; }
    .form-staff #select-keywords { width: 100%; font-size: 1.2em; padding: 0.3em; border: 1px solid #ccc; }
    .form-staff input[type="submit"].btn { border: none; min-width: 200px; text-align: center; float: right; }
    
  .filters fieldset { margin-top: 1em; }
  .filters fieldset legend { text-transform: uppercase; letter-spacing: 0.1em; font-size: 0.8rem; color: #555; margin-left: -1rem; }
  .filters fieldset label { padding-left: 1.5rem; text-indent: -0.25rem; }
  .filters fieldset input { margin-left: -1.25rem; }
  /* People Bios */
  .recruitment-story { margin-top:2.5rem; }
  .recruitment-story h2, .recruitment-story h3, .recruitment-story h4, .recruitment-story h5, .recruitment-story h6 { clear:none; }
  .recruitment-story h2 { font-size:1.2rem; text-transform:uppercase; letter-spacing:1px; }
  /* laser page */
  .video-section::before, .video-section::after { content:''; display:block; clear:both; }
  
  /* Footer
  ----------------------------------------------------*/
  .site-footer {position:relative; clear:both; overflow:hidden; text-align:center;  }
    .footer-inner {position:relative; margin:0 auto; padding:0; border-top:1px solid #ddd; }
    .site-footer p {clear:both; margin:0; font-size:0.875rem;}
    
  .social-media-list { list-style:none; padding:0; display:flex; }
  .social-media-list a { color:#333; margin-right:0.5em; font-size:2em;  }
  
  .site-info {margin:1em 0;}
  .site-info li {display:inline-block; margin:0 2%;}
  .site-info a {text-decoration:underline;}
  .address {display:block; margin:0;}
  .site-link,
  .org,
  .site-footer .contact,
  .site-footer .accessibility,
  .tel {display:block;}
  .ndmark {width:200px; margin:2em auto;}
  
  /* fancybox items */
  .fancybox-title { top:calc(100% + 0.5em); bottom:auto; }
  .fancybox-title-float-wrap .child { white-space:normal; border-radius:0.5em; }

}

/*************************************************************************************
 * 3. Media Queries
 ************************************************************************************/

/* 580px
----------------------------------------------------*/
@media only screen and (min-width:36.250em) {
  .image-right {float:right; margin:0 0 1em 1em;}
  .image-left {float:left; margin:0 1em 1em 0;}
  .image-right,
  .image-left {max-width:46%;}
  .image-default {max-width:none;}
  .dept {display:block; border:none;}
  .entry-title {font-size:1.65rem;}
  .list-cta {grid-template-columns:repeat(2, 1fr);}
  
  /* gallery columns */
  .lb-gallery.row { flex-direction:row; flex-wrap:wrap; }
  .row-sm-2 > * { flex-basis:50%; flex-wrap:wrap; }
  .row-sm-3 > * { flex-basis:33.33%; flex-wrap:wrap; }
  .row-sm-4 > * { flex-basis:25%; flex-wrap:wrap; }
  .row-sm-5 > * { flex-basis:20%; flex-wrap:wrap; }
  
  /* Stats
  ----------------------------------------------------*/
  .stat { width:50%; }
}

/* 700px
----------------------------------------------------*/
@media only screen and (min-width:43.75em) {
  
  h1 {font-size:2.4rem;}
  h2 {font-size:1.95rem;}
  h3 {font-size:1.7rem;}
  h4 {font-size:1.5rem;}
  h5 {font-size:1.2rem;}
  h6 {font-size:1rem;}

  blockquote {margin:1em; padding:0;}
    blockquote.pull {width:30%;}

  .tablewrap {background:none;}
  .list-cta {grid-template-columns:repeat(3, 1fr);}

  /* Structure
  ----------------------------------------------------*/
  body, html {-ms-overflow-style:auto !important;}
  body {display:flex; flex-direction:column;}
  .wrapper {display:flex; flex-direction:column;}
  .site-header {flex:0 0 auto;}
  .site-content {flex:1 0 auto; padding-top:2em; padding-bottom:2em;}
    .nav-top-true.home .alpha {display:block; width:auto; left:0; margin:0;}
  .beta {border:none; box-shadow:none;}
  
  .full-width .alpha {flex:0 0 100%; max-width:100%;}
  .full-width .beta {display:none;}
  
  .site-footer {flex:0 0 auto;}

  /* Header
  ----------------------------------------------------*/
  .site-header {text-align:left;}
  .brandbar,
  .titlebar {padding:0;}
    .brandbar li {margin:0;}
    .titlebar.subhead {padding:0.7em 1em;}
    .dept {border-top:none; box-shadow:none; float:right;}
    .dept-nd {float:left;}
  .site-title {float:left; width:auto; margin:0; padding:0; font-size:2.5rem;}
    .site-title a {padding:0.65em 0 0.75em; line-height:1em;}
    .subtitled {float:left; padding:0.65em 0 0.75em;}
      .subtitled .site-title a {padding:0;}
    .site-subtitle {float:left;}
  .btn-nav-mobile { top:1.8rem; }
  .search-input {float:left; width:auto; font-size:0.9rem; line-height:1.4rem;}
  .elevator:before { height: 100%; display: block; }
  .home .header-cta { order: 1; }
  .home .header-feed { padding-top:2rem; order: 2; }
    .header-feed .slate-events { width: 100%; }
  .home .header-actions {margin:0 0 0 auto;}
  
  .header-image { background-image: url(/stylesheets/images/hdr-campus-1200.jpg); }
  .home .header-image { background-image: url(/stylesheets/images/hdr-night-sky-1200.jpg); min-height: 45vw; }
  .policies-forms .header-image { background-image: url(/stylesheets/images/hdr-admissions-1200.jpg); }
  .applicants .header-image { background-image: url(/stylesheets/images/hdr-applicants-1200.jpg); }
  .degree-programs .header-image { background-image: url(/stylesheets/images/hdr-degree-programs-1200.jpg); }
  .faculty-staff .header-image { background-image: url(/stylesheets/images/hdr-faculty-staff-1200.jpg); }
  .graduate-training .header-image { background-image: url(/stylesheets/images/hdr-graduate-training-1200.jpg); }
  .incoming-students .header-image { background-image: url(/stylesheets/images/hdr-incoming-students-1200.jpg); }
  .news .header-image { background-image: url(/stylesheets/images/hdr-news-1200.jpg); }
  .admissions .header-image { background-image: url(/stylesheets/images/hdr-policies-forms-1200.jpg); }
  .current-students .header-image { background-image: url(/stylesheets/images/hdr-current-students-1200.jpg); background-position: center bottom; }
  .alumni .header-image { background-image: url(/stylesheets/images/hdr-alumni-1200.jpg); background-position: center 90%; }
  
    .btn-header-video { position:absolute; bottom:5vw; left:10%; padding:0; }  
    .elevator h2 { margin:0; }

  
  /* Home
  ----------------------------------------------------*/
  .home-primary { margin:0; }
    .home-primary .image-right {max-width:40%; float:right; margin:0 0 1em 1em;}
    .home-primary .image-left {max-width:40%; float:left; margin:0 1em 1em 0;}
    .home-secondary .columns > h2 {margin-top:0;}
    
  .grid-item { padding-right:1rem; width:50%; margin:0 0 1rem; }
  .degree-grid-item,
  .commencement-grid-item { width:50%; }
  
  .stat { padding-top: 10em; }
  .stat:nth-child(1):before { display: block; left: 50%; }
  .stat:nth-child(2):before,
  .stat:nth-child(3):before { display: block; transform: translateX(0); left: 50%; }
  .stat:nth-child(4):before { display: none; }
  .home-stats-section .stat { margin: 0; }
  
  /* Fellowships
  ----------------------------------------------------*/
  .grid-item.fellowship-list-item { width:50%; }
  
  /* Detail Drawer 
  ----------------------------------------------------*/
  .drawer-desktop-only { display:block; }
  .drawer-content .card-label { margin-top:2rem; }
  .drawer-content .card-label + h2 { margin-top:0; }
  .open-drawer:hover { cursor:url('images/icon-close.png'), auto; }
  .grid-item .drawer-content { display:none; }
  .page-drawer { display:flex; flex-flow:column; position:fixed; transform:translateX(30rem); z-index:9999; right:0; top:0; bottom:0; height:100vh; width:30rem; background:#fff; padding:2rem; }
  .open-drawer .page-drawer { transform:translateX(0);  overflow:auto; height:100vh; box-shadow:0 0 1em rgba(0,0,0,0.5); }
  .open-drawer .page-drawer:hover { cursor:auto; }
  .open-drawer .page-drawer img { max-width:20em; }
  body.open-drawer::after { content:''; display:block; position:fixed; top:0; right:0; left:0; bottom:0; background:rgba(0,0,0,0.5); }
 
  /* News */ 
  .article { display:flex; flex-flow:row; }
  .article-image { width:25%; }
  .article-image + .article-body { width:75%; padding-left:1rem; }


  /* Footer
  ----------------------------------------------------*/
  .site-footer {text-align:left;}
    .footer-inner {padding:2rem 0;}
    .ndmark {position:absolute; right:0; top:2.5rem; margin:0;}
    .site-link {display:block;}
    .org {display:inline;}
    
  /* gallery columns */
  .row-md-2 > * { flex-basis:50%; flex-wrap:wrap; }
  .row-md-3 > * { flex-basis:33.33%; flex-wrap:wrap; }
  .row-md-4 > * { flex-basis:25%; flex-wrap:wrap; }
  .row-md-5 > * { flex-basis:20%; flex-wrap:wrap; }
}

/* 960px
----------------------------------------------------*/
@media only screen and (min-width:60em) {
  .display-mobile {display:none !important;}
  .elevator h2 { font-size:1.6em; }
  .events .vevent {margin-left:1.5em;}
  .event .vevent {margin:0;}
  
  .grid-item { width:33.33%; }
  .card-title { font-size:1.2rem; }
  
  /* Stats
  ----------------------------------------------------*/
  .stat { width:25%; }
  .staff-grid-item { width:25%; }
  
  /* Footer
  ----------------------------------------------------*/
  .contact-info {margin:0;}
  .site-link,
  .address,
  .site-link,
  .tel,
  .site-footer .contact,
  .site-footer .accessibility,
  .email {float:left; margin:0 1em 0 0;}
  .site-link {margin-right:0.5em;}
  .phone {clear:left;}

  /* IE8 Over-rides */
  .lt-ie8 .header-util nav li {float:right;}
  .lt-ie8 .search-form {width:300px;}
  .lt-ie8 .search-input {float:left;}
  
  /* gallery columns */
  .row-lg-2 > * { flex-basis:50%; flex-wrap:wrap; }
  .row-lg-3 > * { flex-basis:33.33%; flex-wrap:wrap; }
  .row-lg-4 > * { flex-basis:25%; flex-wrap:wrap; }
  .row-lg-5 > * { flex-basis:20%; flex-wrap:wrap; }
}

/* 1024px
----------------------------------------------------*/
@media only screen and (min-width:64em) {
  .list-cta {grid-template-columns:repeat(4, 1fr);}
  .brandbar {padding:0;}
  
  /* Header
  ----------------------------------------------------*/
  a.nav-skip,
  .btn-nav-mobile {display:none;}
  .alpha a[id] { display:block; padding-top:7rem; margin-top:-7rem; } /* Keep anchors in body below sticky nav */
  
  .header-util {display:block; float:right; top:1.8rem; margin:0; padding:0; text-align:right;}
    .subhead .header-util {top:1.9em;}
    .search-form {display:block; width:auto; margin:0;}
    .header-util nav {display:block; margin:3px 0;}
    .header-util nav ul {margin:0;}
    .header-util nav li {width:auto; display:block; text-align:right;}
    .header-util nav a {font-size:0.825rem; font-weight:normal;}
    .header-util nav a,
    .header-util nav a:hover {display:inline; padding:0; border:0 none; background:none; }
    .header-util nav a:hover { text-decoration:underline; }
    .header-util .search-toggle {display:none;}
    .search-button .icon {width:18px; height:20px;}
    
  .header-image { margin-top:-4rem; padding-top:4rem; }

  /* Navigation
  ----------------------------------------------------*/
  .nav-top-true .nav-top,
  .nav-top-true .nav-section {display:block;}
  .nav-top-true .nav-full,
  .nav-top-true.home .beta {display:none;}
  
  .nav-audience { border-top:0; }
}

/* 1200px
----------------------------------------------------*/
@media only screen and (min-width:75em) {
  .header-image { background-image: url(/stylesheets/images/hdr-campus-1600.jpg); }
  .elevator h2 { font-size:2em; }
  .home .header-image { background-image: url(/stylesheets/images/hdr-night-sky-1600.jpg); }
  .policies-forms .header-image { background-image: url(/stylesheets/images/hdr-admissions-1600.jpg); }
  .applicants .header-image { background-image: url(/stylesheets/images/hdr-applicants-1600.jpg); }
  .degree-programs .header-image { background-image: url(/stylesheets/images/hdr-degree-programs-1600.jpg); }
  .faculty-staff .header-image { background-image: url(/stylesheets/images/hdr-faculty-staff-1600.jpg); }
  .graduate-training .header-image { background-image: url(/stylesheets/images/hdr-graduate-training-1600.jpg); }
  .incoming-students .header-image { background-image: url(/stylesheets/images/hdr-incoming-students-1600.jpg); }
  .news .header-image { background-image: url(/stylesheets/images/hdr-news-1600.jpg); }
  .admissions .header-image { background-image: url(/stylesheets/images/hdr-policies-forms-1600.jpg); }
  .current-students .header-image { background-image: url(/stylesheets/images/hdr-current-students-1600.jpg); background-position: center bottom; }
  .alumni .header-image { background-image: url(/stylesheets/images/hdr-alumni-1600.jpg); background-position: center 90%; }
  
  .staff-grid-item { width:20%; }
}

/* 1600px
----------------------------------------------------*/
@media only screen and (min-width:100em) {
  .header-image { background-image: url(/stylesheets/images/hdr-campus-2200.jpg); }
  .home .header-image { background-image: url(/stylesheets/images/hdr-night-sky-2200.jpg); }
  .policies-forms .header-image { background-image: url(/stylesheets/images/hdr-admissions-2200.jpg); }
  .applicants .header-image { background-image: url(/stylesheets/images/hdr-applicants-2200.jpg); }
  .degree-programs .header-image { background-image: url(/stylesheets/images/hdr-degree-programs-2200.jpg); }
  .faculty-staff .header-image { background-image: url(/stylesheets/images/hdr-faculty-staff-2200.jpg); }
  .graduate-training .header-image { background-image: url(/stylesheets/images/hdr-graduate-training-2200.jpg); }
  .incoming-students .header-image { background-image: url(/stylesheets/images/hdr-incoming-students-2200.jpg); }
  .news .header-image { background-image: url(/stylesheets/images/hdr-news-2200.jpg); }
  .admissions .header-image { background-image: url(/stylesheets/images/hdr-policies-forms-2200.jpg); }
  .current-students .header-image { background-image: url(/stylesheets/images/hdr-current-students-2200.jpg); background-position: center bottom; }
  .alumni .header-image { background-image: url(/stylesheets/images/hdr-alumni-2200.jpg); background-position: center 90%; }
}

/* Hi-res
----------------------------------------------------*/
@media
  only screen and (-webkit-min-device-pixel-ratio:1.5),
  only screen and (min-device-pixel-ratio:1.5),
  only screen and (-webkit-min-device-pixel-ratio:144),
  only screen and (min-resolution:144dpi),
  only screen and (min-resolution:1.5dppx){
    .more { background-image: none; }
    .dept-nd a,
    .dept a {background-size:auto 50px;}
}

/*************************************************************************************
 * 4. Themes
 ************************************************************************************/
@media screen {

  /* Brand Bar
  ----------------------------------------------------*/
  .brandbar { border-bottom: 3px solid #d39f10; background:#0c2340; }
  .dept-nd a   { width:301px; background-image:url('https://static.nd.edu/images/brandbar/dept-nd-white.png'); }
  .dept-prov a { width:235px; background-image:url('https://static.nd.edu/images/brandbar/dept-prov-white.png'); } /* Office of the Provost */
    
  /* Title Bar
  ----------------------------------------------------*/
  .titlebar { background: #0c2340; }
  .titlebar .site-title a { color:#fff; text-shadow:none; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-weight: 600; }
}

/* Hi-res
----------------------------------------------------*/
@media
  only screen and (-webkit-min-device-pixel-ratio:1.5),
  only screen and (min-device-pixel-ratio:1.5),
  only screen and (-webkit-min-device-pixel-ratio:144),
  only screen and (min-resolution:144dpi),
  only screen and (min-resolution:1.5dppx) {
  .dept-nd a {background-image:url('https://static.nd.edu/images/brandbar/dept-nd-white@2x.png');}
  .dept-prov a {background-image:url('https://static.nd.edu/images/brandbar/dept-prov-white@2x.png');} /* Office of the Provost */
}

/*************************************************************************************
 * 5. Grid
 ************************************************************************************/
/* Flexbox 
----------------------------------------------------*/
.row { max-width:80rem; margin:0; display:flex; flex-flow:column; position: relative; }
.row .row { margin:0 -1rem; }
.column,
.columns { padding:0 1rem; }
.small-3 {  flex:0 0 25%; max-width:25%; }
.small-4 { flex:0 0 33.33333%; max-width:33.33333%; }
.small-6 { flex:0 0 50%; max-width:50%; }
.small-8 { flex:0 0 66.66667%; max-width:66.66667%; }
.small-9 { flex:0 0 75%; max-width:75%; }
.small-12 { flex:0 0 auto; max-width:100%; }

/* 700px
----------------------------------------------------*/
@media only screen and (min-width:43.75em) {
  .row { flex-flow:row wrap; margin:0 auto; }
  .row-container {max-width:96%; }
  .column,
  .columns { flex:1 1 0%; }
  .medium-3 { flex:0 0 25%; max-width:25%; }
  .medium-4 { flex:0 0 33.33333%; max-width:33.33333%; }
  .medium-6 { flex:0 0 50%; max-width:50%; }
  .medium-8 { flex:0 0 66.66667%; max-width:66.66667%; }
  .medium-9 { flex:0 0 75%; max-width:75%; }
  .medium-12 { flex:0 0 100%; max-width:100%; }
  .medium-order-1 { order:1; }
  .medium-order-2 { order:2; }
  .medium-order-3 { order:3; }
}

/* 1024px
----------------------------------------------------*/
@media screen and (min-width:64em) {
  .large-3 { flex:0 0 25%; max-width:25%; }
  .large-4 { flex:0 0 33.33333%; max-width:33.33333%; }
  .large-6 { flex:0 0 50%; max-width:50%; }
  .large-8 { flex:0 0 66.66667%; max-width:66.66667%; }
  .large-9 { flex:0 0 75%; max-width:75%; }
  .large-12 { flex:0 0 100%; max-width:100%; }
  .large-order-1 { order:1; }
  .large-order-2 { order:2; }
  .large-order-3 { order:3; }
}

/* 1200px
----------------------------------------------------*/
@media only screen and (min-width:75em) {
  .row-container {max-width:90%;}
}

/* 1360px
----------------------------------------------------*/
@media only screen and (min-width:85em) {
  .row-container {max-width:80em;}
}


/*************************************************************************************
 * 6. Plugins
 ************************************************************************************/
/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp { padding: 0; margin: 0; border: 0; outline: none; vertical-align: top; }
.fancybox-wrap { position: absolute; top: 0; left: 0; z-index: 8020; }
.fancybox-skin { position: relative; background: #f9f9f9; color: #444; text-shadow: none; border-radius: 4px; }
.fancybox-opened { z-index: 8030; }
.fancybox-opened .fancybox-skin { box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); }
.fancybox-outer, .fancybox-inner { position: relative; }
.fancybox-inner { overflow: hidden; }
.fancybox-type-iframe .fancybox-inner { -webkit-overflow-scrolling: touch; }
.fancybox-error { color: #444; font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; margin: 0; padding: 15px; white-space: nowrap; }
.fancybox-image, 
.fancybox-iframe { display: block; width: 100%; height: 100%; }
.fancybox-image { max-width: 100%; max-height: 100%; }
#fancybox-loading, 
.fancybox-close, 
.fancybox-prev span, 
.fancybox-next span { background-image: url('images/fancybox_sprite.png'); }
#fancybox-loading { position: fixed; top: 50%; left: 50%; margin-top: -22px; margin-left: -22px; background-position: 0 -108px; opacity: 0.8; cursor: pointer; z-index: 8060; }
#fancybox-loading div { width: 44px; height: 44px; background: url('images/fancybox_loading.gif') center center no-repeat; }
.fancybox-close { position: absolute; top: -18px; right: -18px; width: 36px; height: 36px; cursor: pointer; z-index: 8040; }
.fancybox-nav { position: absolute; top: 0; width: 40%; height: 100%; cursor: pointer; text-decoration: none; background: transparent url('images/blank.gif'); /* helps IE */ -webkit-tap-highlight-color: rgba(0,0,0,0); z-index: 8040; }
.fancybox-prev { left: 0; }
.fancybox-next { right: 0; }
.fancybox-nav span { position: absolute; top: 50%; width: 36px; height: 34px; margin-top: -18px; cursor: pointer; z-index: 8040; visibility: hidden; } 
.fancybox-prev span { left: 10px; background-position: 0 -36px; }
.fancybox-next span { right: 10px; background-position: 0 -72px; } 
.fancybox-nav:hover span { visibility: visible; }
.fancybox-tmp { position: absolute; top: -99999px; left: -99999px; visibility: hidden; max-width: 99999px; max-height: 99999px; overflow: visible !important; }

/* Overlay helper */
.fancybox-lock { overflow: hidden !important; width: auto; }
.fancybox-lock body { overflow: hidden !important; } 
.fancybox-lock-test { overflow-y: hidden !important; } 
.fancybox-overlay { position: absolute; top: 0; left: 0; overflow: hidden; display: none; z-index: 8010; background: url('images/fancybox_overlay.png'); }
.fancybox-overlay-fixed { position: fixed; bottom: 0; right: 0; }
.fancybox-lock .fancybox-overlay { overflow: auto; overflow-y: scroll; } 

/* Title helper */
.fancybox-title { visibility: hidden; font: normal 13px/20px "Helvetica Neue", Helvetica, Arial, sans-serif; position: relative; text-shadow: none; z-index: 8050; }
.fancybox-opened .fancybox-title { visibility: visible; } 
.fancybox-title-float-wrap { position: absolute; bottom: 0; right: 50%; margin-bottom: -35px; z-index: 8050; text-align: center; }
.fancybox-title-float-wrap .child { display: inline-block; margin-right: -100%; padding: 2px 20px; background: transparent; /* Fallback for web browsers that doesn't support RGBa */ background: rgba(0, 0, 0, 0.8); border-radius: 15px; text-shadow: 0 1px 2px #222; color: #FFF; font-weight: bold; line-height: 24px; white-space: nowrap; }
.fancybox-title-outside-wrap { position: relative; margin-top: 10px; color: #fff; }
.fancybox-title-inside-wrap { padding-top: 10px; }
.fancybox-title-over-wrap { position: absolute; bottom: 0; left: 0; color: #fff; padding: 10px; background: #000; background: rgba(0, 0, 0, .8); }

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){
	#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { background-image: url('fancybox_sprite@2x.png'); background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/ }
	#fancybox-loading div { background-image: url('fancybox_loading@2x.gif'); background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/ }
}

/* Overrides */
.fancybox-skin { background:#000; }
.fancybox-overlay { background:rgba(0,0,0,0.8); }
.fancybox-lock body { height:auto; }


/*************************************************************************************
 * 7. Print Styles
 ************************************************************************************/
@media print {
  @page {margin:0.5cm;}
  body {font-size:13pt; line-height:1.3; font-family:Georgia, "Times New Roman", Times, serif; color:#000;}
  img, tr {page-break-inside:avoid;}
  p, h2, h3 {orphans:3; widows:3;}
  h2, h3 {page-break-after:avoid;}

  /* Styles
  ----------------------------------------------------*/
  a {page-break-inside:avoid;}
  blockquote {page-break-inside:avoid;}
  h1, h2, h3, h4, h5, h6 {page-break-after:avoid; page-break-inside:avoid;}
  img {page-break-inside:avoid; page-break-after:avoid;}
  table, pre {page-break-inside:avoid;}
  ul, ol, dl {page-break-before:avoid;}
  a[href^="javascript:"]:after,
  a[href^="#"]:after {content:"";}
  .ndmark {width:150px;}
  .image-right img {float:right; margin:0 0 1em 2em;}
  .image-left img {float:left; margin:0 2em 1em 0;}
  article {overflow:hidden;}
  .grid { list-style-type: none; }
  .grid-item { list-style-type: none; width: calc(33.333% - 3em); display: inline-block; margin: 1em 1em 3em; }
    .grid-item .card { display: flex; flex-flow: column; }
    .grid-item .card-image { order: 1; }
    .grid-item .card-body { order: 2; }
    .grid-item .card-title { margin-top: 0.5em; }
  
  .stats-row { text-align: center; }
  .stat { width: 25%; display: inline-block; font-size: 70%; padding: 1rem; }
  .card-body .card-title:first-child { font-size: 110%; margin-top: 0.75em; }

  /* HIDDEN
  ----------------------------------------------------*/
  .article-more,
  .breadcrumbs,
  .header-util,
  .skip-links,
  .nav-mobile,
  .nav-site,
  .nav-skip,
  .nav-top,
  .site-footer .social-media-list,
  .btn-nav-mobile,
  .btn.staff-toggle-sort,
  #form-staff,
  #form-degrees,
  .btn, .fancybox { display:none; visibility: hidden; }

  /* STRUCTURE
  ----------------------------------------------------*/
  .site-header {overflow:hidden; position:relative; margin:0 0 20px; padding:0 0 20px; border-bottom:1px solid gray;}
    .brandbar {font-size:12px; text-transform:uppercase; font-family:"Adobe Garamond", Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif;}
      .brandbar i {text-transform:none;}
    .site-title,
    .site-subtitle {margin:0; color:#333; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
    .site-header a,
    .site-title a,
    .site-subtitle a {color:#000; text-decoration:none;}
    .site-title {margin:4px 0 2px; font-size:2rem;}
    .site-subtitle {font-size:1rem;}

  .alpha a:link:after {content:" [link:" attr(href) "] "; font-size:11px; font-family:inherit;}
  .alpha abbr:after {content:" (" attr(title) ")";}

  .site-footer {position:relative; clear:both; margin:20px 0 0; padding:20px 0 0; border-top:1px solid gray;}
    .site-footer p {margin:0;}
    .geo {display:none;}
    .tel {display:block;}
    .site-footer .ndmark {position:absolute; top:20px; right:0;}
}
