/*!
International Theme Base Styles
Based on NDT 2.4
Updated:2018-06-14
Author: Shawn Maust, Nevin McElwrath, Erik Runyon
        Marketing Communications:Web

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

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

   - Gold: d2a43e
   - Green: 029a45
   - Red: b52023
   - Purple: 584170
   - Turquoise: 07a6b5
   - Orange: b76620

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
*/

:root {
  --accent-color: #0c2340;
}

/*************************************************************************************
 * 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%; -ms-text-size-adjust:100%; text-size-adjust:100%; -webkit-font-smoothing:antialiased; }
body {width:100%;margin:0;padding:0;color:#333; }
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 ,
a:visited{ color:#05a; text-decoration:underline; background-color:transparent; -webkit-tap-highlight-color:rgba(0,0,0,0); transition: all 125ms ease; }
a:hover { color:#173355; }
a:active { color:#aa272f; }
a:focus { outline: 0.125rem solid #15a6b5; }
::-moz-selection,
::-moz-selection { background:#0058cf; color:#fff; text-shadow:none; }
::-moz-selection,
::selection { background:#0058cf; color:#fff; 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; position:relative; width:100%; height:0.5rem; margin:2em auto; border:none; border-top:0.2rem solid #0c2340; }
  hr::after { content:''; display:block; position:absolute; -webkit-transform:translateX(-50%); transform:translateX(-50%); left:50%; top:0; height:0.3rem; width: 15%; background:#0c2340; }

/* Fonts
   https://dev.conductor.nd.edu/fonts/
----------------------------------------------------*/
@font-face {font-family:GPC; font-weight:200; font-style:normal;
  src:url('https://static.nd.edu/fonts/gp-min/gpc-light.woff2') format('woff2'),
      url('https://static.nd.edu/fonts/gp-min/gpc-light.woff') format('woff'),
      url('https://static.nd.edu/fonts/gp-min/gpc-light.ttf') format('truetype');
}
@font-face {font-family:GPC; font-weight:300; font-style:normal;
  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;
  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:GP; font-weight:400; font-style:normal;
  src:url('https://static.nd.edu/fonts/gp-min/gp-medium.woff2') format('woff2'),
      url('https://static.nd.edu/fonts/gp-min/gp-medium.woff') format('woff'),
      url('https://static.nd.edu/fonts/gp-min/gp-medium.ttf') format('truetype');
}
@font-face {font-family:GP; font-weight:700; font-style:normal;
  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');
}

/* Headings
----------------------------------------------------*/
h1,h2,h3,h4,h5,h6 {margin:1.4em 0 0.25em;line-height:1.4;/* color:#0c2340; */font-weight:400;text-shadow: none;text-rendering:optimizeLegibility;font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a { text-decoration:none; }
h1 a:visited,h2 a:visited,h3 a:visited,h4 a:visited,h5 a:visited,h6 a:visited { color: #163153; }
h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover {text-decoration:underline;}
h1 {margin-top:0; font-size:2.25rem; }
h2 {font-size:1.8rem;}
h3 {font-size:1.65rem; }
h4 {font-size:1.35rem; font-weight:700; }
h5 {font-size:1.2rem; font-weight:400; text-transform:uppercase; letter-spacing:1px;}
h6 {font-size:1rem; font-weight:400; text-transform:uppercase; letter-spacing:1px;}
h1 + h2,
h2 + h3,
h3 + h4,
h4 + h5,
.image-right + h2,
.image-left + h2 {margin-top:0;}

/* 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;}

dl { width: 100%; }
dl dt,
dl dd { padding: 0.25em; display: inline-block; vertical-align: top; }
dl dt { font-weight: bold; text-align: right; width: 30%; }
dl dd { text-align: left; margin: 0; width: 65%; }

/* Tables
----------------------------------------------------*/
table {   }
th,
thead th{text-align:left;background-color: #ccc;color: #0c2340;font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;font-weight: 400;font-size:1.25em;}

.bg-primary.bg-primary.bg-primary.bg-primary, .bg-primary h1, .bg-primary h2, .bg-primary h3, .bg-primary h4, .bg-primary h5 {background: #0c2340 !important;color: #ffffff !important;}
.mat-raised-button.mat-primary.mat-primary {background: #0c2340 !important;}
tfoot th {text-align:right;}
th, td {padding:0.5em 0.75em;}
  .number {text-align:right;}
td, td img {vertical-align:top;}
table p { margin: 0; }
.table-responsive {box-shadow: none !important;border: 1px solid #eee !important; clear:both; }

/* Form Elements
----------------------------------------------------*/
form {margin:0 0 1em;}
form p { max-width:100%; }
fieldset {margin:0 2px; padding:0.35em 0.625em 0.75em; border:1px solid #c0c0c0;}
legend {padding:0; border:0;}
label {/* display:block; *//* font-weight:bold; */}
button, input, optgroup, select, textarea { margin:0 0 1em; color:inherit; font-size:100%; vertical-align:baseline;}
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;}
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 { cursor:pointer; }

/* Quotes
----------------------------------------------------*/
blockquote {margin:1em; padding:0; font-family:Georgia, "Times New Roman", Times, serif; font-weight:400;}
blockquote p { font-size:1.25em;}
blockquote footer {display:block; margin-top:1em; line-height:1.1; font-size:1em; font-style:normal; font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
blockquote cite { font-style:normal; font-size:0.9em; }
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 { position:relative; margin:0 0 1em; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; font-style:italic; font-size:0.9rem; color:#777;}
.image-default dl,
.image-right dl,
.image-left dl { font-style: normal; color: #333; }
.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-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 img {margin-bottom:0.5em;}
.image-label { margin:0.5em 0 0.25em; display:inline-block; }

figure {margin:0 0 1em;}
figure,
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;}
.hidden { display:none; }
.alert {/* overflow:auto; */}


/*************************************************************************************
 * 2. Screen Styles
 ************************************************************************************/
@media only screen {
  p {max-width:65em;}
  .image-default img,
  .image-right img,
  .image-left img { display:block; }
  .tablewrap {position:relative; overflow-y:auto; margin:0 auto;}

  /* Buttons
  ----------------------------------------------------*/
  .btn,
  .more,
  .excerpt_continuation {position:relative;font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;display:inline-block;white-space:nowrap;margin:0.25em 0;padding: 0.725em 1em 0.6em;cursor:pointer;font-size: 0.85rem;line-height:1.2em;text-decoration:none;text-align: center;vertical-align:middle;font-weight:400; color: white;background: #0c2340;border: 0.125rem solid transparent;border-radius:0.25rem;transition:all 0.2s;letter-spacing: 0.03em;margin-right: 0.5rem;}

  .btn:hover,
  .more:hover { color:#fff; -webkit-transform: scale(1.05); transform: scale(1.05); box-shadow:0 0 0.5rem rgba(0,0,0,0.2); }

  .btn:active,
  .more:active { -webkit-transform: scale(1.025); transform: scale(1.025); }

  .btn:focus,
  .more:focus { box-shadow: 0 0 0.25rem #07a6b5; border-color:#07a6b5; outline: none; }

  .btn:visited,
  .more:visited { color:#eee; }

  .btn-inline,
  .more { background:transparent; color:#0c2340; border: 0.125rem solid transparent; text-transform: none; letter-spacing: normal; box-shadow: none; }
  .btn-inline:hover,
  .more:hover { background:#e1e8f2; color:#0c2340; box-shadow: none; }
  .btn-inline:visited,
  .more:visited { border-color: #e1e8f2; color: #06162b; }

  .more,
  .btn-inline { min-width: unset; }

  .more::after,
  .excerpt_continuation::after { content:' \203a'; font-size:1.25em; }

  /* Graphic Elements */
  .colored-border { position:relative; border-bottom:0 !important; }
  .colored-border::after { content:''; display:block; height:0.25rem; position:absolute; left:0; right:0; bottom:0; background:url(colored-bars.png) 50% 50% / 100% no-repeat; }


  /* Structure
  ----------------------------------------------------*/
  html {height:100%; background:#fff; }
  body {min-height:100%; padding:0; margin:0; background:#fff; }
  main { box-shadow:none; }
  .wrapper { overflow-x:hidden; }
  .site-content { padding-bottom:1em;}
  .beta {padding:1em 0; border-top:1px solid #dadada; box-shadow:inset 0 1px 0 rgba(255,255,255,0.9);}
  .aside {margin-top:1em;}
  .page-title { font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; margin:0 0 .35em; padding:0 0 0.25em; font-weight: 700; }

  /* Header
  ----------------------------------------------------*/
  .site-header {text-align:center;}
  .site-title,
   #pageheader h1 {max-width:80%; margin:0; font-size:2.4em; line-height:1.1; font-weight:300; text-align:left; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; letter-spacing: 0.06em; }
     #pageheader h1 {display:block; padding:0.5em 0; border:none; color:#fff; text-decoration:none;}
    #pageheader h4 { color: #ccc; display:block; margin:0; letter-spacing:0.15em; font-size:1em; line-height:1; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; margin-bottom: 0.3em }
  .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; line-height:1.1; font-weight:300; text-align:left; font-family:GPC, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; letter-spacing: 0.06em; }
      .site-title a {display:block; padding:0.5em 0; border:none; color:#fff; text-decoration:none;}
      .site-title a:hover {text-decoration:none; color:#fff; }
      .site-title a:focus {background-color:rgba(255,255,255,0.2);}
      .site-title a span { color: #ccc; display:block; font-size:0.4em; letter-spacing:0.15em; line-height:1; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; margin-bottom: 0.3em }
       .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;}


  /* Offscreen Nav
  ----------------------------------------------------*/
  body, html {-ms-overflow-style:none !important;} /* Needed for WinPhone to allow vertical scrolling in nav */
  .wrapper {position:relative; right:0; transition:0.15s ease;}
  .navbar-toggle { padding:0.5rem 0.3rem; margin:0 0.3rem; text-decoration:none; border:1px solid #001227; border-radius:3px; background:#0c2340;}

  /* Top Nav
  ----------------------------------------------------*/
  #pagenav { background:#fff; box-shadow:0 1px 1px rgba(0,0,0,0.1); border:0; }
    #pagenav li {display:inline-block; vertical-align:top; font-family:GP, Helvetica, Arial, Verdana, sans-serif; font-size:1rem;}
    #pagenav li a { text-transform:uppercase; vertical-align:middle; padding:0.75em 1em; color:#0c2340; text-align:center; transition:all 250ms ease-in-out; font-size:0.85em; }
    #pagenav a { color:#0c2340; }
    #pagenav .dropdown-menu li { display:block; }
    #pagenav .dropdown-menu a { text-align:left; }

    #pagenav .open > a,
    #pagenav .active > a { background:#e0e0e0; }
    #pagenav li a:hover { color: #029a45; }

    #pagenav .fullname-xs { color:#0c2340; padding:0.3rem 0; font-family:GP, Helvetica, Arial, Verdana, sans-serif; }

  #pagebody { margin-top:1rem; min-height:none; }
  #pagebodycontentheader h2 { clear:both; padding-top:1rem; }

  #pagebodysidebar .sidebar-nav { width:auto; box-shadow:none; border:none; }
  #announcements-frame .announcements-top { background:#0c2340; color:#fff;  font-family:GP, Helvetica, Arial, Verdana, sans-serif; }

  .heading { padding: 0.5em 3em 0 0; }

  /* Page Content
  ----------------------------------------------------*/
  .aside { margin:1rem 0; padding:1.5rem; color:#fff; background: #0c2340; }
  .aside h2,
  .aside h3,
  .aside h4,
  .aside h5 { margin-top:0; color:#fff; text-shadow:none; }

  .td-brochure-program-name.td-brochure-program-name {font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; color:#fff !important; background:#0c2340 !important; box-shadow: none!important; border:none !important;}
  .dropdown-menu>li>a { white-space:normal; }
  /* Panels */
  .panel .panel-heading {background: #0c2340;color: #fff;border-color:inherit;font-family: GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
  .panel.panel-primary { border-color:#eee; box-shadow:none; }
  .mat-grid-tile { box-shadow:0 1px 1px #ccc !important; }

  /* Forms
  ----------------------------------------------------*/
  label { margin:0.25rem 0; font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;}
  .form-input { width:100%; margin:0; color:#444; padding: 0.44444rem; height: 2.05556rem; border: 1px solid #ccc; transition: all 125ms ease; font-family: sans-serif; }
  .form-select { width:100%; margin:0; overflow:hidden; }
  .form-reset,
  .form-submit { background:none; border:1px solid #ccc; margin:1rem 0 0; font-family:inherit; padding:0.25rem 1rem; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; }
  select { -webkit-appearance: none !important; -moz-appearance: none !important; border-radius: 0; background: #FAFAFA url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+") 100% center no-repeat; border: 1px solid #ccc; color: #444; font-family: sans-serif; font-size: 0.77778rem; line-height: normal; padding: 0.44444rem; height: 2.05556rem; }
  .form-input:focus,
  select:focus { border-color: #0c2340; }

  /* Summary/Detail */
  details { margin-bottom:1rem;  font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif; background:#f6f6f6; border:1px solid rgba(0,0,0,0.1);}
  summary { font-size:1.3rem; line-height:1.1; position:relative;  font-family:GPC; padding:0.5rem 0.5rem 0.5rem 2.5rem; display:flex; flex-flow:row wrap; align-items:center;  }
  summary h2 { font-size:1.5rem; margin:0; }
  summary span { display:block; font-size:0.8rem; width:100%; font-family:GP, "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;  }
  summary::-webkit-details-marker { display: none }
  summary:before { content: "+";  position:absolute; left:0.5rem; font-size:1.5rem; display:inline-block; text-align: center; width:1.5rem; }
    details[open] summary:before { content: "-"; }
    details[open] summary { border-bottom:1px solid rgba(0,0,0,0.1);}

  /* Footer
  ----------------------------------------------------*/
  #pagefooter { background:#fff; border-color:#eee;}

}

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

/* 580px
----------------------------------------------------*/
@media only screen and (min-width:36.250em) {
  .image-right,
  .image-left {max-width:none;}
  .dept {display:block; border:none;}
}


/* 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;}

  .image-right img,
  .image-left img {max-width:auto;}
  .tablewrap {background:none;}
  .image-label { max-width: 50%; position:absolute; top:-0.5px; right:0; padding:0.5rem 1rem; margin:0; background:#fff; }
  .image-label.bl { top:auto; left:0; right:auto; bottom:0; padding-left:0; }
  .image-label.br { top:auto; bottom:0; padding-right:0; }

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

  .site-header {text-align:left;}
  .brandbar,
  .titlebar {padding:0;}
    .brandbar li {margin:0;}
  .brandbar.colored-border { padding-bottom: 0.25rem; }


  .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.75rem;}
    .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;}


  /* Content
  ----------------------------------------------------*/
  .aside { float:right; margin-top:0; margin-left:1rem; max-width:40%; }

  /* Summary/Details
  ----------------------------------------------------*/
  summary { flex-flow:row; }

  /* Footer
  ----------------------------------------------------*/
  .site-footer {text-align:left; }
    .footer-social { position:absolute; top:2.2rem; right:250px;  }
    .footer-inner {padding:2rem 0;  position:relative;}
    .ndmark {position:absolute; right:0; top:2.5rem; margin:0;}
    .site-link {display:block;}
    .org {display:inline;}
}

/* 960px
----------------------------------------------------*/
@media only screen and (min-width:60em) {

  .contact-info {margin:0;}
  .site-link,
  .address,
  .site-link,
  .tel,
  .email {float:left; margin:0 1em 0 0;}
  .site-link {margin-right:0.5em;}
  .address,
  .phone {clear:left;}
  .footer-social { right:50%; -webkit-transform:translateX(100%); transform:translateX(100%);  }

  #pagebodysidebar { padding: 0 1rem 1rem;max-width: 25%;}

  /* IE8 Over-rides */
  .lt-ie8 .header-util nav li {float:right;}
  .lt-ie8 .search-form {width:300px;}
  .lt-ie8 .search-input {float:left;}
}

/* 1024px
----------------------------------------------------*/
@media only screen and (min-width:64em) {
  .site-header { position:relative; }
}

/* 1200px
----------------------------------------------------*/
@media only screen and (min-width: 75em) { }

/* 1280px
----------------------------------------------------*/
@media only screen and (min-width: 80em) { }

/* 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 {
  #pageheader { background:#0c2340; color:#fff; position:relative; }
  .dept-nd a   {width:301px; background-image:url('https://static.nd.edu/images/brandbar/dept-nd-white.png');}
  .dept-intr a {width:325px; background-image:url('https://static.nd.edu/images/brandbar/dept-intr-white.png');} /* Office of Internationalization */
  .brandbar { background:#0c2340;}
  .titlebar { background:#0c2340; color:#fff; }
}

/* 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-intr a {background-image:url('https://static.nd.edu/images/brandbar/dept-intr-white@2x.png');}
}

@supports(--css: variables) { }

/*************************************************************************************
 * 5. Grid
 ************************************************************************************/

/* Flexbox
----------------------------------------------------*/
.row { max-width:80rem;  width:100%; display:flex; flex-flow:column; }
.container-fluid { max-width:80rem; }
.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),
  print  {

  .row {flex-flow:row wrap; }
  .row.row { margin: 0 auto !important;}
  .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%; }

  .page-content {/* padding: 0 0 1rem; */}
}

/* 1024px
----------------------------------------------------*/
@media only 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%; }
}

/* 1200px
----------------------------------------------------*/
@media only screen and (min-width:75em) {
  .ribbon { margin:0 calc(-50vw + 50%); padding:2rem calc(50vw - 50% + 1rem); }
}

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


/*************************************************************************************
 * 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;}
  canvas { max-width:100%; }
  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;}

  /* HIDDEN
  ----------------------------------------------------*/
  .article-more,
  .breadcrumbs,
  .header-util,
  .skip-links,
  .nav-mobile,
  .nav-site,
  .nav-skip,
  .nav-top,
  .btn-nav-mobile {display:none;}

  /* 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 {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;}
}