@font-face {
  font-family: "MercuryDisplay";
  font-weight: normal;
  font-style: normal;
  src: url("../fonts/MercuryDisplay-Roman.otf") format("opentype");
}

@font-face {
  font-family: "MercuryDisplay";
  font-weight: normal;
  font-style: italic;
  src: url("../fonts/MercuryDisplay-Italic.otf") format("opentype");
}

@font-face {
  font-family: "MercuryDisplay";
  font-weight: 600;
  font-style: normal;
  src: url("../fonts/MercuryDisplay-Semibold.otf") format("opentype");
}

@font-face {
  font-family: "MercuryDisplay";
  font-weight: 600;
  font-style: italic;
  src: url("../fonts/MercuryDisplay-SemIta.otf") format("opentype");
}

@font-face {
  font-family: "MercuryDisplay";
  font-weight: bold;
  font-style: normal;
  src: url("../fonts/MercuryDisplay-Bold.otf") format("opentype");
}

@font-face {
  font-family: "MercuryDisplay";
  font-weight: bold;
  font-style: italic;
  src: url("../fonts/MercuryDisplay-BolIta.otf") format("opentype");
}

/* Benton Sans - Black */
@font-face {
  font-family: "Benton Sans";
  font-display: swap;
  font-weight: 900;
  font-style: normal;
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28002/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c");
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28002/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c#iefix")
      format("embedded-opentype"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28002/fontfile/woff2/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff2"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28002/fontfile/woff/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff");
}

/* Benton Sans - Black Italic */
@font-face {
  font-family: "Benton Sans";
  font-display: swap;
  font-weight: 900;
  font-style: italic;
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28003/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c");
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28003/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c#iefix")
      format("embedded-opentype"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28003/fontfile/woff2/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff2"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28003/fontfile/woff/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff");
}

/* Benton Sans - Bold */
@font-face {
  font-family: "Benton Sans";
  font-display: swap;
  font-weight: bold;
  font-style: normal;
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28004/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c");
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28004/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c#iefix")
      format("embedded-opentype"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28004/fontfile/woff2/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff2"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28004/fontfile/woff/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff");
}

/* Benton Sans - Bold Italic */
@font-face {
  font-family: "Benton Sans";
  font-display: swap;
  font-weight: bold;
  font-style: italic;
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28005/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c");
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28005/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c#iefix")
      format("embedded-opentype"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28005/fontfile/woff2/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff2"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28005/fontfile/woff/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff");
}

/* Benton Sans - Regular */
@font-face {
  font-family: "Benton Sans";
  font-display: swap;
  font-weight: normal;
  font-style: normal;
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28008/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c");
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28008/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c#iefix")
      format("embedded-opentype"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28008/fontfile/woff2/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff2"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28008/fontfile/woff/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff");
}

/* Benton Sans - Regular Italic */
@font-face {
  font-family: "Benton Sans";
  font-display: swap;
  font-weight: normal;
  font-style: italic;
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28007/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c");
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28007/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c#iefix")
      format("embedded-opentype"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28007/fontfile/woff2/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff2"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28007/fontfile/woff/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff");
}

/* Benton Sans - Thin */
@font-face {
  font-family: "Benton Sans";
  font-display: swap;
  font-weight: 300;
  font-style: normal;
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28006/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c");
  src: url("https://cloud.typenetwork.com/projectLicenseWeb/28006/fontfile/eot/?8db28a1d26c3737b1de521bab7c8a129897a039c#iefix")
      format("embedded-opentype"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28006/fontfile/woff2/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff2"),
    url("https://cloud.typenetwork.com/projectLicenseWeb/28006/fontfile/woff/?8db28a1d26c3737b1de521bab7c8a129897a039c")
      format("woff");
}

/** Initialization **************************************************/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
section,
nav {
  border: 0;
  box-sizing: border-box;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}

input,
textarea,
select {
  box-sizing: border-box;
  font-family: "MercuryDisplay", serif;
  font-style: italic;
  -webkit-appearance: none;
}

:focus {
  outline: 0;
}

body {
  background: white;
  color: #000;
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: separate;
  border-spacing: 0;
}

caption,
th,
td {
  font-weight: normal;
  text-align: left;
}

article,
aside,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
  margin: 0;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  *zoom: 1;
}

.hidden {
  display: none;
}

a {
  text-decoration: none;
}

* {
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: transparent;
  -webkit-appearance: none;
  border-radius: 0;
  -webkit-text-size-adjust: 100%;
}

/** Scaffolding **************************************************/
body {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 14px;
  font-style: normal;
  left: 0;
  letter-spacing: 0;
  line-height: 26px;
  position: relative;
  transition: left 0.25s;
}

section {
  margin: 0 auto;
  position: relative;
}

section div.container {
  height: 100%;
  margin: 0 auto;
  position: relative;
}

a.button,
a span.button,
button {
  background: #a37e27;
  border: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "MercuryDisplay", serif;
  font-size: 1rem;
  font-style: italic;
  font-weight: 700;
  height: auto;
  line-height: 1.625;
  min-width: 6.5rem;
  padding: 0.5rem 1.6rem;
  text-align: center;
}

button:disabled {
  background: #ccc;
  color: #666;
  cursor: default;
}

.language-selection ul li,
.student-selection ul li {
  display: inline-block;
}

section a span.button.new {
  background: #bf0000;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-style: normal;
  font-weight: bold;
}

section a {
  color: #a37e27;
  display: inline-block;
  position: relative;
}

section strong.title {
  color: inherit;
  display: block;
  font-family: "MercuryDisplay", serif;
  font-weight: normal;
  position: relative;
}

section h2::before,
section strong.title::before {
  border-top-style: solid;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
}

section.banner {
  background-color: #000;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  overflow: hidden;
  position: relative;
}

section.banner h1 {
  font-family: "MercuryDisplay", serif;
  font-size: 64px;
  font-weight: 600;
  line-height: 64px;
  margin-bottom: 8px;
  position: relative;
  z-index: 2;
}

section.banner h1::before {
  border-top: 5px solid #fff;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
  top: -30px;
  width: 57px;
}

section.banner small {
  display: block;
  font-size: 0;
  font-weight: normal;
  margin-bottom: 12px;
  position: relative;
  text-transform: uppercase;
  z-index: 2;
}

section.banner > small {
  padding-right: 40px;
}

section.banner small div {
  display: inline;
}

section.banner small div a {
  border-bottom: 1px solid #fff;
  color: inherit;
}

section.banner small div a::after {
  color: #fff;
  content: "/";
  display: inline;
  pointer-events: none;
  position: absolute;
}

section.banner .publish-date {
  color: #fff;
  font-weight: 900;
  position: relative;
  z-index: 1;
}

section.banner em {
  cursor: pointer;
  font-family: "MercuryDisplay", serif;
  font-size: 18px;
  font-weight: bold;
  padding-right: 52px;
  position: relative;
  z-index: 2;
}

section.banner em::after {
  background: url("../images/icons_play.svg") center center no-repeat;
  background-size: 100%;
  content: " ";
  display: block;
  height: 38px;
  margin-top: -18px;
  position: absolute;
  right: 0;
  top: 50%;
  width: 38px;
}

section.banner a.button {
  position: relative;
  z-index: 2;
}

section.banner a.exit-video {
  bottom: -50px;
  color: #fff;
  cursor: pointer;
  display: block;
  font-size: 11px !important;
  font-weight: bold;
  position: absolute;
  right: 10px;
  text-transform: uppercase;
  z-index: 2;
  transition: bottom 0.6s ease;
}

section.banner a.exit-video::before {
  display: none;
}

section.banner img {
  display: none;
}

body:not(.homepage) section.banner h1,
body:not(.homepage) section.banner small,
body:not(.homepage) section.banner em,
body:not(.homepage) section.banner ul {
  transition: opacity 0.6s ease;
}

body:not(.homepage) section.banner.play h1,
body:not(.homepage) section.banner.play small,
body:not(.homepage) section.banner.play em,
body:not(.homepage) section.banner.play ul {
  pointer-events: none;
  opacity: 0;
}

body:not(.homepage) section.banner.play a.exit-video {
  bottom: 5px;
  transition: bottom 0.6s ease;
}

body.campus section.banner.landing h1 {
  white-space: pre-line;
}

section.banner::after {
  background: #000;
  content: " ";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  opacity: 0.45;
}

section.banner.landing {
  height: calc(100vh);
}

section.banner.landing h1 {
  position: relative;
}

section.banner.landing ul {
  bottom: 30px;
  left: 50%;
  position: absolute;
  z-index: 2;
  transform: translateX(-50%);
}

section.banner.landing ul li {
  display: inline-block;
  height: 60px;
  line-height: 30px;
  padding: 4px;
  text-align: center;
  vertical-align: bottom;
  width: 172px;
}

section.banner.landing ul li:not(:last-of-type) {
  border-right: 1px solid #fff;
}

section.banner.landing ul li strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-size: 24px;
  font-weight: 600;
}

section.banner.landing ul li strong small {
  display: inline;
}

section.banner.landing ul li small {
  font-size: 12px;
  margin: auto;
  text-transform: none;
}

section.banner.landing ul li img {
  display: block;
  height: 30px;
  margin: 0 auto 4px auto;
  max-width: 32px;
}

footer section div.container {
  font-size: 0;
}

footer section h2 {
  font-size: 30px;
  line-height: 30px;
  position: relative;
}

footer section h2::before {
  border-top-width: 4px;
  left: 0;
  top: -17px;
  width: 34px;
}

footer section ul li a {
  color: inherit;
  display: inline-block;
}

footer section#quick-access {
  display: none;
}

footer section#contact {
  background: #000;
  color: #fff;
}

footer section#contact ul li,
footer section#contact ul li h2 {
  font-weight: bold;
}

footer section#contact ul li.newsletter {
  border-right: none;
}

footer section#contact ul li.newsletter small {
  display: block;
  font-size: 14px;
  line-height: 28px;
  margin-top: -5px;
}

footer section#copyright {
  background: #000;
  color: #a37e27;
  font-weight: bold;
  height: 100px;
  text-transform: uppercase;
}

footer section#copyright div.container {
  align-items: flex-start;
  background: url("../images/icons_logo.png") 0 14px no-repeat;
  background-size: 245px 24px;
  border-top: 1px solid #473711;
  display: flex;
  padding: 25px 90px 0 0;
  text-align: right;
  justify-content: flex-end;
}

footer section#copyright ul {
  display: flex;
  flex-direction: row;
}

footer section#copyright ul li {
  display: flex;
  padding-left: 0;
}

footer section#copyright small {
  font-size: 0;
  position: relative;
  display: flex;
  align-items: center;
  top: -10px;
}

footer section#copyright small span {
  color: #fff;
  font-size: 9px;
  white-space: nowrap;
}

footer section#copyright small li a {
  color: #fff;
  font-size: 9px;
  margin-left: 35px;
  position: relative;
  white-space: nowrap;
}

footer section#copyright small li a::after {
  color: #a37e27;
  content: "/";
  cursor: default;
  font-size: 13px;
  font-weight: normal;
  left: -22px;
  pointer-events: none;
  position: absolute;
  top: 0;
}

footer section#copyright a.go-to-top {
  border: 1px solid #473711;
  display: block;
  height: 50px;
  position: absolute;
  right: 0;
  top: -1px;
  width: 50px;
}

footer section#copyright a.go-to-top::before {
  border-color: #fff;
  border-style: solid;
  border-width: 2px 2px 0 0;
  bottom: 40px;
  content: " ";
  cursor: pointer;
  display: block;
  height: 10px;
  left: 17px;
  position: absolute;
  top: 21px;
  width: 10px;
  transform: rotate(-45deg);
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body {
    font-size: 12px;
    font-weight: 400;
    line-height: 20px;
    padding-top: 60px;
  }

  body.menu {
    left: -100%;
  }

  body.menu header {
    left: 0;
  }

  body.menu header::after {
    right: 0;
  }

  header {
    height: 60px;
    width: 100%;
  }

  header > div {
    height: calc(100vh - 60px);
    margin-top: 60px;
  }

  header::before {
    height: 60px;
  }

  header::after {
    top: 60px;
  }

  header > a {
    top: 20px;
  }

  header > span {
    top: 13px;
  }

  section div.container {
    margin: 0 20px;
  }

  section a:not(.button)::before {
    border-bottom: 1px solid #d1bf93;
    bottom: 2px;
    content: " ";
    display: block;
    left: 0;
    position: absolute;
    width: 100%;
    transition: width 0.5s;
  }

  section strong.title {
    font-size: 32px;
    line-height: 32px;
  }

  section h2::before,
  section strong.title::before {
    border-top-width: 4px;
    top: -21px;
    width: 34px;
  }

  section h2 span {
    display: none;
  }

  section.banner {
    height: 338px;
  }

  section.banner.short {
    height: 200px;
  }

  section.banner h1 {
    font-size: 38px;
    font-weight: 600;
    line-height: 38px;
    margin-bottom: 12px;
    position: relative;
  }

  section.banner h1::before {
    border-top-width: 4px;
    top: -21px;
    width: 34px;
  }

  section.banner sub {
    font-size: 10px;
    margin-top: -9px;
  }

  section.banner sub + h1 {
    margin-top: 16px;
  }

  section.banner sub + h1::before {
    top: -37px;
  }

  section.banner small {
    margin-bottom: 18px;
  }

  section.banner small div {
    display: block;
    height: 20px;
  }

  section.banner small div a,
  section.banner small div span {
    font-size: 10px;
    display: inline-block;
    line-height: 12px;
  }

  section.banner small div a {
    margin-right: 11px;
  }

  section.banner small div a:not(.button)::before {
    display: none;
  }

  section.banner small div a::after {
    right: -9px;
  }

  section.banner small div a:hover {
    padding-bottom: 0;
  }

  section.banner small div:not(:last-of-type) a:last-of-type::after {
    display: none;
  }

  section.banner em {
    font-size: 18px;
    font-weight: 600;
    padding-right: 35px;
  }

  section.banner em::after {
    height: 27px;
    margin-top: -13px;
    width: 27px;
  }

  section.banner.landing ul {
    bottom: 90px;
    font-size: 0;
    width: 200px;
  }

  section.banner.landing ul::before {
    border-left: 1px solid #fff;
    content: " ";
    display: block;
    height: 100%;
    left: 50%;
    position: absolute;
    top: 0;
  }

  section.banner.landing ul li {
    display: inline-block;
    height: 47px;
    line-height: 18px;
    padding: 4px 22px 0 22px;
    width: 50%;
  }

  section.banner.landing ul li:not(.mobile) {
    display: none;
  }

  section.banner.landing ul li:not(:last-of-type) {
    border-right: none;
  }

  section.banner.landing ul li strong {
    font-size: 20px;
    margin-bottom: 6px;
  }

  section.banner.landing ul li small {
    font-size: 11px;
  }

  section.banner.landing ul li img {
    height: 23px;
  }

  section.banner {
    padding: 50px 20px 0 20px;
  }

  section.banner.landing {
    height: calc(100vh - 60px);
    padding-top: 59px;
  }

  section.banner.landing h1 {
    font-size: 62px;
    line-height: 62px;
    margin-bottom: 31px;
  }

  section.banner.landing h1::before {
    border-top-width: 4px;
    top: -21px;
  }

  section.banner.landing a {
    font-size: 12px;
    height: 32px;
    line-height: 32px;
    padding: 0 9px;
  }

  footer section h2 {
    margin-bottom: 26px;
  }

  footer section h2::before {
    top: -21px;
  }

  footer section ul li {
    border-right: none !important;
    display: inline-block;
    float: none;
    font-size: 14px;
    width: 100%;
  }

  footer section ul li a:not(:last-of-type) {
    margin-bottom: 11px;
  }

  footer section ul li a::before {
    bottom: -2px !important;
    display: none !important;
  }

  footer section ul li a::after {
    content: " ";
    display: block;
    height: 11px;
    width: 1px;
  }

  footer section#contact {
    padding: 53px 0 12px 0;
  }

  footer section#contact .contact > ul,
  footer section#contact .connect > ul {
    margin-bottom: 44px;
  }

  footer section#copyright div.container {
    background: none;
    border-top: 0;
    padding: 0;
  }

  footer section#copyright small {
    display: block;
    font-size: 0;
    line-height: 12px;
    padding-bottom: 6px;
    position: relative;
    text-align: left;
    top: -20px;
    width: 100%;
  }

  footer section#copyright small span {
    bottom: -21px;
    display: block;
    font-size: 9px;
    left: 0;
    position: absolute;
  }

  footer section#copyright small a {
    font-size: 9px;
  }

  footer section#copyright small a {
    color: #fff;
    font-size: 9px;
    margin: 0 21px 0 0;
  }

  footer section#copyright small a:not(:last-of-type)::after {
    display: inline;
    left: auto;
    right: -14px;
  }

  footer section#copyright small a:last-of-type::after {
    display: none;
  }

  footer section#copyright small a::before {
    display: none;
  }

  footer section#copyright a.go-to-top {
    top: -1px;
  }

  footer section#contact li.newsletter {
    display: none;
  }
}

/** Mobile Landscape **********/
@media all and (max-width: 767px) and (orientation: landscape) {
  section.banner.landing {
    min-height: 320px;
  }

  section.banner.landing ul {
    display: none;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body {
    padding-top: 73px;
  }

  body.menu {
    left: -320px;
  }

  body.menu header {
    left: calc(100% - 320px);
  }

  body.menu header::after {
    right: calc(-100% + 320px);
  }

  header {
    height: 73px;
    width: 320px;
  }

  header > div {
    height: calc(100vh - 73px);
    margin-top: 73px;
  }

  header::before {
    height: 73px;
  }

  header::after {
    top: 73px;
  }

  header > a {
    top: 26px;
  }

  header > span {
    top: 19px;
  }

  section a:not(.button)::before {
    border-bottom: 1px solid #a37e27;
    bottom: 5px;
    content: " ";
    display: block;
    left: 0;
    position: absolute;
    width: 100%;
    transition: width 0.5s;
  }

  section strong.title {
    font-size: 38px;
    line-height: 45px;
  }

  section h2::before,
  section strong.title::before {
    border-top-width: 5px;
    top: -29px;
    width: 42px;
  }

  section.banner {
    height: 490px;
    padding-top: 102px;
  }

  section.banner.short {
    height: 300px;
  }

  section.banner h1 {
    font-size: 64px;
    font-weight: 600;
    margin-bottom: 18px;
    max-width: 90%;
    position: relative;
  }

  section.banner small div a,
  section.banner small div span {
    font-size: 12px;
    line-height: 16px;
  }

  section.banner small div a {
    border-bottom: 1px solid #fff;
    margin-right: 15px;
  }

  section.banner small div a::before {
    display: none;
  }

  section.banner small div a::after {
    right: -11px;
  }

  section.banner small div a:hover {
    padding-bottom: 0;
  }

  section.banner.landing {
    height: calc(100vh - 73px);
  }

  section.banner.landing h1 {
    font-size: 100px;
    line-height: 108px;
    margin-bottom: 35px;
  }

  section.banner.landing h1::before {
    border-top-width: 6px;
    top: -29px;
    width: 60px;
  }

  section.banner.landing ul {
    bottom: 60px;
    width: 624px;
  }

  section.banner.landing ul li {
    width: 153px;
  }
}

/** Tablet Portrait **********/
@media all and (min-width: 768px) and (max-width: 960px) {
  section.banner {
    padding-left: 72px;
  }

  section div.container {
    width: calc(100% - 144px);
  }

  footer section h2 {
    margin-bottom: 18px;
  }

  footer section h2::before {
    top: -18px;
  }

  footer a:not(.button)::before {
    display: none;
  }

  footer section ul li a {
    display: inline-block;
  }

  footer section#contact div.container {
    padding: 69px 0 47px 0;
  }

  footer section#contact ul li {
    font-size: 0;
    line-height: 14px;
  }

  footer section#contact ul li > ul li {
    display: inline-block;
  }

  footer section#contact ul li.contact {
    margin-bottom: 67px;
  }

  footer section#contact ul li a {
    font-size: 14px;
  }

  footer section#contact ul li > ul li:not(:last-of-type) {
    margin-right: 0.95rem;
  }

  footer section#contact ul li > ul li:not(:last-of-type)::after {
    color: #a37e27;
    content: "/";
    pointer-events: none;
    font-size: 14px;
    margin-left: 0.95rem;
  }

  footer section#contact ul li.newsletter small {
    margin-bottom: 14px;
  }

  footer section#contact ul li.newsletter form input {
    display: inline-block;
    margin-right: 14px;
    vertical-align: top;
    width: 270px;
  }

  footer section#contact ul li.newsletter form button {
    font-size: 14px;
  }

  footer section#copyright div.container {
    background: none;
    justify-content: flex-start;
    text-align: left;
  }

  footer section#copyright small a::before {
    display: none;
  }

  footer section#contact li.newsletter {
    display: none;
  }
}

/** Tablet Landscape **********/
@media all and (min-width: 961px) and (max-width: 1024px) {
  section.banner {
    padding-left: 100px;
  }

  section div.container {
    width: calc(100% - 200px);
  }

  section.banner.landing {
    padding: 105px 0 0 120px;
  }

  footer section#contact div.container {
    padding: 161px 0 71px 0;
  }

  footer section#contact ul > li > ul {
    border-right: 1px solid #473711;
    display: inline-block;
  }

  footer section#contact ul li.newsletter small {
    margin-bottom: 31px;
  }

  footer section#contact ul li.newsletter form input {
    margin-bottom: 19px;
    width: 100%;
  }

  footer section#contact ul li a {
    transition: color 0.25s;
  }

  footer section#contact ul li a:hover {
    color: #b9b9b9;
  }

  footer section#contact ul li a::before {
    display: none;
  }

  footer section#copyright div.container {
    background: none;
    justify-content: flex-start;
    text-align: left;
  }

  footer section#copyright div.container a:not(.go-to-top)::before {
    display: none;
  }

  footer section ul li {
    float: left;
    font-size: 14px;
    line-height: 17px;
    padding-left: 30px;
    position: relative;
    vertical-align: top;
  }

  footer section ul li > ul li {
    display: inline-block;
    padding-left: 0;
    width: 100%;
  }

  footer section ul li:first-of-type {
    padding-left: 0;
  }

  footer section ul li h2 {
    position: absolute;
    top: -67px;
  }

  footer section ul li a:not(:last-of-type) {
    margin-bottom: 11px;
  }

  footer section ul li a::before {
    bottom: -2px !important;
  }

  footer section ul li a::after {
    content: " ";
    display: block;
    height: 11px;
    width: 1px;
  }

  footer section#contact ul li.contact {
    width: 160px;
  }

  footer section#contact ul li.connect {
    width: 190px;
  }

  footer section#contact ul li.newsletter {
    width: calc(100% - 350px);
  }

  footer section#contact ul li.newsletter small {
    width: 320px;
  }
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  html {
    background: #000;
  }

  header {
    left: 100%;
    position: fixed;
    top: 0;
    z-index: 5000;
  }

  header > a {
    background: url("../images/icons_logo.png") top left no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 23px;
    left: 22px;
    position: fixed;
    width: 231px;
  }

  header > div {
    position: relative;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }

  header::before {
    background: #000;
    content: " ";
    display: block;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 5000;
    z-index: -1;
  }

  header::after {
    background: #000;
    content: " ";
    display: block;
    min-height: 100%;
    right: -100%;
    position: fixed;
    width: 100%;
    z-index: -1;
  }

  header > span {
    background: rgba(255, 255, 255, 1);
    border: 18px solid #000;
    cursor: pointer;
    display: block;
    height: 38px !important;
    left: calc(100% - 58px);
    position: fixed;
    width: 54px;
  }

  header > span::before {
    border-top: 2px solid #fff;
    border-bottom: 4px solid transparent;
    content: " ";
    display: block;
    left: 0;
    position: absolute;
    top: -6px;
    width: 18px;
    transition: transform 0.25s;
    transform-origin: top left;
  }

  header > span::after {
    border-bottom: 2px solid #fff;
    border-top: 4px solid transparent;
    content: " ";
    display: block;
    left: 0;
    position: absolute;
    top: 2px;
    width: 18px;
    transition: transform 0.25s;
    transform-origin: bottom left;
  }

  header form#header_search {
    margin-bottom: 24px;
  }

  header form#header_search input {
    background: url("../images/icons_search.png") center right 7px no-repeat;
    border: none;
    border-top: 1px solid #a37e27;
    border-bottom: 1px solid #a37e27;
    color: #fff;
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    height: 60px;
    margin: 0 20px;
    width: calc(100% - 40px);
  }

  header form#header_search button {
    left: -9999px;
    position: absolute;
  }

  header nav {
    font-size: 12px;
    font-weight: bold;
    line-height: 34px;
    margin-bottom: 24px;
    text-transform: uppercase;
  }

  header nav > ul > li {
    margin-bottom: 8px;
  }

  header nav ul li a {
    margin: 0 20px;
  }

  header nav ul > li > a {
    color: #fff;
    display: block;
  }

  header nav ul li > a:active,
  header nav ul li.active > a {
    color: #b9b9b9;
  }

  header nav ul li.active {
    margin-bottom: 15px;
  }

  header nav ul li ul {
    background: #ddd;
    height: 0;
    overflow: hidden;
    position: relative;
    top: 7px;
  }

  header nav ul li ul::before {
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 5px solid #000;
    content: " ";
    display: block;
    height: 0;
    left: 18px;
    position: absolute;
    top: 0;
    width: 0;
    z-index: 2;
  }

  header nav ul li ul li:first-of-type {
    padding-top: 7px;
  }

  header nav ul li ul li:last-of-type {
    padding-bottom: 6px;
  }

  header nav ul li ul li a {
    color: #000;
  }

  header nav > span {
    display: none;
  }

  header div.menu div.full {
    border-top: 1px solid #a37e27;
    margin: 0 20px;
    padding: 36px 0 25px 0;
  }

  header div.menu div.full > a {
    color: #fff;
    display: inline-block;
    font-size: 14px;
    font-family: "MercuryDisplay", serif;
    font-style: italic;
    font-weight: 600;
    height: 40px;
    line-height: 40px;
    text-align: center;
    width: calc(50% - 12px);
  }

  header div.menu div.full > a:first-of-type {
    background: #a37e27;
    border: 1px solid #a37e27;
    margin-right: 20px;
  }

  header div.menu div.full > a:nth-child(2) {
    border: 1px solid #9f9f9f;
  }

  header div.menu div.full > a[data-trigger="language"],
  header div.menu div.full > a[data-trigger="student"] {
    display: none;
  }

  header div.menu div.full small {
    border-top: 1px solid #a37e27;
    display: block;
    font-size: 0;
    line-height: 24px;
    margin-top: 36px;
    padding-top: 29px;
  }

  header div.menu div.full small a {
    color: #fff;
    display: inline-block;
    font-size: 10px;
    margin-right: 15px;
  }

  header div.menu div.sticky,
  header div.video-controls,
  header form#header_contact {
    display: none;
  }

  header a[data-trigger="search"],
  header a[data-trigger="close_search"] {
    display: none !important;
  }

  body.menu header {
    height: 100%;
  }

  body.menu header::before {
    opacity: 1;
  }

  body.menu header > span {
    background: rgba(255, 255, 255, 0);
    width: 0;
  }

  body.menu header > span::before {
    transform: rotate(45deg);
  }

  body.menu header > span::after {
    transform: rotate(-45deg);
  }

  body.video-player header > span {
    background: rgba(255, 255, 255, 0);
    width: 0;
  }

  body.video-player header > span::before {
    transform: rotate(45deg);
  }

  body.video-player header > span::after {
    transform: rotate(-45deg);
  }

  header.video-controls,
  header.video-controls::before,
  header.video-controls::after,
  header.video-controls > a,
  header.video-controls > span {
    transition: margin-top 0.3s;
  }

  header div.video-controls a.video-information {
    display: none;
  }

  section.video div.video-info {
    display: none;
  }

  header.animate {
    transition: left 0.25s;
  }

  header.animate::after {
    transition: right 0.25s;
  }

  header nav ul li.animate ul {
    transition: height 0.3s;
  }

  header nav span.animate {
    transition: background 0.25s, width 0.25s;
  }

  body section.banner video {
    background: #000;
    height: 100%;
    width: 100%;
  }

  section.banner video {
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    opacity: 0;

    transition: opacity 0.6s ease;
  }

  section.banner.play video {
    opacity: 1;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  .mobile-only {
    display: none !important;
  }

  header {
    background: rgba(0, 0, 0, 0.45);
    height: 155px;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 30;
    transition: background 0.35s, top 0.6s ease 0.75s;
  }

  header.opaque {
    background: #000;
  }

  header:hover {
    background-color: rgba(0, 0, 0, 1);
  }

  header > a {
    background: url("../images/icons_logo.png") top left no-repeat;
    background-size: contain;
    content: " ";
    display: block;
    height: 33px;
    left: 52px;
    position: absolute;
    top: 37px;
    width: 330px;
  }

  header > span {
    display: none;
  }

  header nav {
    bottom: 0;
    font-size: 0;
    font-weight: bold;
    position: absolute;
    text-transform: uppercase;
    width: 100%;
  }

  header nav > ul {
    line-height: 0;
    margin-left: 52px;
  }

  header nav > ul > li {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.05em;
    line-height: 26px;
    height: 35px;
  }

  header nav > ul > li > a {
    color: #fff;
    padding: 0 15px;
    padding-bottom: 17px;
    position: relative;
    transition: color 0.25s;
  }

  header nav > ul > li:first-of-type > a {
    padding-left: 0;
  }

  header nav > ul > li:last-of-type > a {
    padding-right: 0;
  }

  header nav > ul > li:hover > a,
  header nav > ul > li.active > a {
    color: #b9b9b9;
  }

  header nav > ul > li.menu-item-has-children > a::before {
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #000;
    content: " ";
    display: block;
    height: 0;
    left: 18px;
    position: absolute;
    top: 24px;
    width: 0;
    z-index: 2;
    opacity: 0;

    transition: top 0.3s 0.1s;
  }

  header nav > ul > li.menu-item-has-children:hover > a::before {
    top: 29px;
    opacity: 1;
  }

  header nav > ul > li:not(:first-of-type) > a::after {
    color: #a37e27;
    content: "/";
    cursor: default;
    font-size: 17px;
    font-weight: normal;
    left: -5px;
    pointer-events: none;
    position: absolute;
    top: -6px;
  }

  header nav ul li ul {
    height: auto !important;
    margin-left: 18px;
    max-height: 0;
    overflow: hidden;
    position: absolute;
    top: 18px;
    z-index: 2;
    opacity: 0;
    transition: top 0.25s, opacity 0.15s, max-height 0s 0.15s;
  }

  header nav ul li:hover ul {
    max-height: 500px;
    top: 33px;
    z-index: 5;
    opacity: 1;
    transition: top 0.3s 0.15s, opacity 0.2s 0.15s;
  }

  header nav ul li:hover ul::after {
    content: " ";
    display: block;
    left: -800px;
    height: calc(100% + 9px);
    position: absolute;
    top: 2px;
    width: calc(100vw + 800px);
    z-index: -1;
  }

  header nav ul li ul li:first-of-type {
    margin-top: 15px;
  }

  header nav ul li ul li {
    line-height: 24px;
  }

  header nav ul li ul li a {
    color: #000;
    transition: color 0.25s;
  }

  header nav ul li ul li a:hover {
    color: #a37e27;
  }

  header nav span {
    background: #ddd;
    display: block;
    height: 0;
    position: absolute;
    top: 35px;
    width: 100%;
  }

  header form#header_search {
    height: 100%;
    left: 50%;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 1040px;
    opacity: 0;
    transform: translateX(-50%);
  }

  header form#header_search input {
    background: url("../images/icons_search.svg") left 6px no-repeat;
    background: url;
    border: none;
    color: #000;
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-size: 28px;
    font-style: normal;
    font-weight: 900;
    padding-left: 33px;
    position: relative;
    text-transform: uppercase;
    top: 50%;
    width: 100%;
    transform: translateY(-50%);
  }

  header form#header_search input::-webkit-input-placeholder {
    color: #000;
  }

  header form#header_search input:-moz-placeholder {
    color: #000;
  }

  header form#header_search input::-moz-placeholder {
    color: #000;
  }

  header form#header_search input:-ms-input-placeholder {
    color: #000;
  }

  header form#header_search button {
    background: none;
    left: -9999px;
    position: absolute;
    top: -9999px;
  }

  header div.menu,
  header div.video-controls {
    position: absolute;
    top: 0;
    width: 100%;
  }

  header div.video-controls {
    font-size: 9px;
    font-weight: bold;
    pointer-events: none;
    right: 52px;
    text-transform: uppercase;
    text-align: right;
    top: 39px;
    opacity: 0;
  }

  header div.video-controls a {
    color: #fff;
  }

  header div.video-controls a:not(:first-of-type) {
    margin-left: 31px;
  }

  header div.video-controls a.video-information {
    display: none;
    position: relative;
    top: 0;
    opacity: 1;
  }

  header div.video-controls.information a.video-information {
    display: inline;
  }

  header div.video-controls a.return-to-video {
    pointer-events: none;
    position: absolute;
    right: 74px;
    top: 15px;
    opacity: 0;
  }

  header div.menu div {
    font-size: 10px;
    font-weight: bold;
    letter-spacing: 0.02em;
    position: absolute;
    right: 52px;
    text-transform: uppercase;
    text-align: right;
    top: 8px;
    width: 100%;
  }

  header div.menu div a {
    color: #fff;
    transition: color 0.25s;
  }

  header div.menu div a:not(:first-of-type) {
    margin-left: 31px;
  }

  header div.menu div small li:not(:first-of-type) {
    margin-left: 28px;
  }

  header div.menu div a:hover {
    color: #b9b9b9;
  }

  header div.menu div.full {
    pointer-events: auto;
  }

  header div.menu div.full > a {
    position: relative;
    top: 0;
    opacity: 1;
  }

  header div.menu div.full > a[data-trigger="language"]::after,
  header div.menu div.full > a[data-trigger="student"]::after {
    background: url("../images/icons_arrow.svg") center center no-repeat;
    content: "";
    cursor: pointer;
    display: block;
    height: 5px;
    position: absolute;
    right: -13px;
    top: calc(50% - 2px);
    width: 8px;
  }

  header div.menu div.full > a[data-trigger="search"] {
    background: url("../images/icons_search.png") top left no-repeat;
    display: inline-block;
    height: 15px;
    position: relative;
    top: 3px;
    width: 15px;
  }

  header div.menu div.full small {
    display: block;
    pointer-events: none;
    height: 40px;
    position: absolute;
    right: 0;
    top: 15px;
    z-index: -1;
    opacity: 0;
  }

  header form#header_contact {
    background: #fff;
    height: calc(100vh - 73px);
    padding: 72px 35px 0 35px;
    position: fixed;
    right: -355px;
    top: 155px;
    width: 355px;
  }

  header.sticky form#header_contact {
    top: 73px;
  }

  header form#header_contact iframe {
    height: calc(100% - 148px);
    width: calc(100% + 68px);
  }

  header form#header_contact > span {
    cursor: pointer;
    display: block;
    font-size: 12px;
    padding-right: 22px;
    position: absolute;
    right: 35px;
    top: 28px;
  }

  header form#header_contact > span::before {
    border-top: 2px solid #000;
    content: " ";
    display: block;
    height: 0;
    position: absolute;
    right: 0;
    top: 7px;
    width: 13px;
    transform: rotate(45deg);
    transform-origin: top left;
  }

  header form#header_contact > span::after {
    border-top: 2px solid #000;
    content: " ";
    display: block;
    height: 0;
    position: absolute;
    right: 5px;
    top: 7px;
    width: 13px;
    transform: rotate(-45deg);
    transform-origin: top right;
  }

  header form#header_contact strong {
    display: block;
    font-family: "MercuryDisplay", serif;
    font-size: 24px;
    font-weight: bold;
    line-height: 26px;
    margin-bottom: 20px;
    position: relative;
  }

  header form#header_contact strong::before {
    border-top: 4px solid #000;
    content: " ";
    display: block;
    left: 0;
    position: absolute;
    top: -15px;
    width: 27px;
  }

  header form#header_contact small {
    display: block;
    font-size: 9px;
    font-weight: bold;
  }

  header form#header_contact fieldset {
    margin-bottom: 24px;
  }

  header form#header_contact input[type="text"] {
    border: 1px solid #d1bf93;
    color: #000;
    display: block;
    font-weight: bold;
    height: 35px;
    text-indent: 11px;
    width: 281px;
  }

  header form#header_contact select {
    left: -9999px;
    position: absolute;
    top: -9999px;
  }

  header form#header_contact input[type="text"]::-webkit-input-placeholder {
    color: #000;
  }

  header form#header_contact input[type="text"]:-moz-placeholder {
    color: #000;
  }

  header form#header_contact input[type="text"]::-moz-placeholder {
    color: #000;
  }

  header form#header_contact input[type="text"]:-ms-input-placeholder {
    color: #000;
  }

  header form#header_contact select:disabled + div.select {
    color: #c8c8c8;
  }

  header form#header_contact div.select {
    border: 1px solid #d1bf93;
    color: #000;
    cursor: pointer;
    display: inline-block;
    font-family: "MercuryDisplay", serif;
    font-size: inherit;
    font-style: italic;
    font-weight: bold;
    height: 35px;
    line-height: 35px;
    position: relative;
    width: 281px;
  }

  header form#header_contact div.select:after {
    border-style: solid;
    border-width: 2px 2px 0 0;
    content: " ";
    display: block;
    height: 9px;
    position: absolute;
    right: 9px;
    top: 7px;
    width: 9px;
    z-index: 2;
    transform: rotate(135deg);
  }

  header form#header_contact div.select small {
    font-size: inherit;
    text-indent: 11px;
  }

  header form#header_contact div.select ul {
    background: #fff;
    border: 1px solid #d1bf93;
    border-top: none;
    display: none;
    left: -1px;
    position: absolute;
    top: 31px;
    width: calc(100% + 2px);
    z-index: 20;
  }

  header form#header_contact div.select ul li {
    line-height: 16px;
    padding: 6px 11px;
  }

  header form#header_contact div.select ul li:hover {
    color: #a9a9a9;
  }

  header form#header_contact div.select.active {
    background: #fff;
    border-bottom-color: #fff;
    color: #000;
  }

  header form#header_contact div.select.active:after {
    display: none;
  }

  header form#header_contact div.select.active ul {
    display: block;
  }

  header form#header_contact input[type="checkbox"] {
    border: 1px solid #d1bf93;
    cursor: pointer;
    float: left;
    height: 15px;
    margin: 0 9px 0 0;
    width: 15px;
  }

  header form#header_contact input[type="checkbox"]::after {
    background: #a37e27;
    content: " ";
    display: block;
    height: 9px;
    margin: 2px;
    width: 9px;
    opacity: 0;
    transition: opacity 0.2s;
  }

  header form#header_contact input[type="checkbox"]:checked::after {
    opacity: 1;
  }

  header form#header_contact label:not(.hidden) {
    display: block;
    font-size: 11px;
    font-weight: bold;
    line-height: 14px;
    margin-bottom: 18px;
  }

  header form#header_contact button {
    background: #a37e27;
    border: none;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-family: "MercuryDisplay", serif;
    font-size: inherit;
    font-style: italic;
    height: 32px;
    line-height: 32px;
    padding: 0;
    text-align: center;
    width: 102px;
  }

  body::after {
    background: #000;
    content: " ";
    display: block;
    height: 100%;
    left: -9999px;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10;
    opacity: 0;
    transition: opacity 0.3s ease, left 0s 0.3s;
  }

  body.request-information-form
    header
    div.menu
    a[data-trigger="request-information"] {
    color: #b9b9b9;
  }

  body.request-information-form header form#header_contact {
    right: 0;
  }

  body.request-information-form::after {
    left: 0;
    opacity: 0.7;
    transition: opacity 0.3s ease, left 0.3s 0.3s;
  }

  header.language div.menu div.full > a,
  header.student div.menu div.full > a {
    top: -15px;
    opacity: 0;
  }

  header.language div.menu div.full small[data-module="language-selection"],
  header.student div.menu div.full small[data-module="student-selection"] {
    pointer-events: auto;
    top: 0;
    z-index: 1;
    opacity: 1;
  }

  header.search {
    background: rgba(255, 255, 255, 1) !important;
  }

  header.search a,
  header.search div.menu {
    pointer-events: none;
  }

  header.search nav {
    pointer-events: none;
    opacity: 0;
  }

  header.search #header_search {
    pointer-events: auto;
    opacity: 1;
  }

  header.search div.menu div a[data-trigger="close_search"] {
    pointer-events: auto;
    opacity: 1;
  }

  header div.menu div a[data-trigger="close_search"] {
    color: #000;
    padding-right: 22px;
    pointer-events: none;
    position: absolute;
    right: 0;
    opacity: 0;
  }

  header div.menu div a[data-trigger="close_search"]::before {
    border-top: 2px solid #000;
    content: " ";
    display: block;
    height: 0;
    position: absolute;
    right: 0;
    top: 7px;
    width: 13px;
    transform: rotate(45deg);
    transform-origin: top left;
  }

  header div.menu div a[data-trigger="close_search"]::after {
    border-top: 2px solid #000;
    content: " ";
    display: block;
    height: 0;
    position: absolute;
    right: 5px;
    top: 7px;
    width: 13px;
    transform: rotate(-45deg);
    transform-origin: top right;
  }

  header div.menu div.sticky {
    padding-right: 19px;
    pointer-events: none;
    top: 39px;
    opacity: 0;
  }

  header div.menu div.sticky a:last-of-type::after {
    border-style: solid;
    border-width: 1px 1px 0 0;
    content: " ";
    cursor: pointer;
    display: block;
    height: 4px;
    position: absolute;
    right: 6px;
    top: 8px;
    width: 4px;
    transform: rotate(135deg);
  }

  header.sticky:not(.active) {
    background-color: rgba(0, 0, 0, 1);
    height: 73px;
  }

  body.video header {
    background-color: rgba(0, 0, 0, 1);
  }

  header.sticky:not(.active) > a {
    top: 24px;
    width: 280px;
    z-index: 100;
  }

  header.sticky:not(.active) nav {
    opacity: 0;
  }

  header.sticky:not(.active) nav ul li {
    z-index: -1;
  }

  header.sticky:not(.active) nav ul li a {
    cursor: default;
    pointer-events: none;
  }

  header.sticky:not(.active) nav ul li ul {
    display: none;
  }

  header.sticky:not(.active) div.menu div.full {
    pointer-events: none;
    top: -7px;
    opacity: 0;
  }

  header.sticky:not(.active) div.menu div.sticky {
    pointer-events: auto;
    top: 24px;
    opacity: 1;
  }

  header.stuck {
    background-color: rgba(0, 0, 0, 1);
  }

  body.video header {
    height: 100% !important;
  }

  body.video-player header nav {
    opacity: 0;
  }

  body.video header.transition {
    transition: background 0.35s, height 0.55s;
  }

  body.video header div.menu {
    pointer-events: none;
    top: -15px;
    opacity: 0;
  }

  body.video:not(.widget):not(.close-widget) header div.video-controls {
    padding-right: 19px;
    pointer-events: auto;
    top: 24px;
    opacity: 1;
  }

  body.video.video-information header div.video-controls a.video-information {
    pointer-events: auto;
    top: -15px;
    opacity: 0;
  }

  body.video.video-information header div.video-controls a.return-to-video {
    pointer-events: auto;
    top: 0;
    opacity: 1;
  }

  header.animate {
    transition: background 0.35s, height 0.55s;
  }

  header.animate > a {
    transition: height 0.35s, top 0.35s, width 0.35s;
  }

  header.animate nav {
    transition: opacity 0.15s 0.15s;
  }

  header nav span.animate {
    transition: height 0.3s ease-in-out;
  }

  header.animate div div.menu div.full {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  header.animate div div.menu div.sticky {
    transition: opacity 0.3s, top 0.3s;
  }

  /* General Transitions */
  header.transition form#header_contact {
    transition: right 0.3s ease, top 0.3s;
  }

  /* Transition from full menu to sticky menu */
  header.sticky:not(.active).animate div.menu div.full {
    transition: opacity 0.3s, top 0.3s;
  }

  header.sticky:not(.active).animate div.menu div.sticky {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  header.sticky:not(.active).transition nav {
    transition: opacity 0.15s;
  }

  /* Transition from sticky menu to full menu */
  header.transition div.menu div.full {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  header.transition div.menu div.sticky {
    transition: opacity 0.3s, top 0.3s;
  }

  /* Transition from menu bar to language bar */
  header.language.transition div.menu div.full > a {
    transition: opacity 0.3s, top 0.3s;
  }

  header.language.transition
    div.menu
    div.full
    small[data-module="language-selection"] {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  /* Transition from language bar to menu bar */
  header.transition div.menu div.full > a {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  header.transition div.menu div.full small {
    transition: opacity 0.3s, top 0.3s;
  }

  /* Transition from menu bar to student bar */
  header.student.transition div.menu div.full > a {
    transition: opacity 0.3s, top 0.3s;
  }

  header.student.transition
    div.menu
    div.full
    small[data-module="student-selection"] {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  /* Transition from menu bar to search bar */
  header.search.transition {
    transition: background 0.3s;
  }

  header.search.transition nav {
    transition: opacity 0.3s;
  }

  header.search.transition #header_search {
    transition: opacity 0.3s;
  }

  /* Transition from menu bar to video bar */
  body.video header.transition div.menu {
    transition: opacity 0.3s, top 0.3s;
  }

  body.video header.transition div.video-controls {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  /* Transition from video bar to menu bar */
  header.transition div.menu {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  header.transition div.video-controls {
    transition: opacity 0.3s, top 0.3s;
  }

  /* Transition from video bar to more information bar */
  header.transition div.video-controls a.video-information {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  header.transition div.video-controls a.return-to-video {
    transition: opacity 0.3s, top 0.3s;
  }

  /* Transition from more information bar to video bar */
  body.video.video-information
    header.transition
    div.video-controls
    a.video-information {
    transition: opacity 0.3s, top 0.3s;
  }

  body.video.video-information
    header.transition
    div.video-controls
    a.return-to-video {
    transition: opacity 0.3s 0.12s, top 0.3s 0.12s;
  }

  section a:not(.button)::before {
    border-bottom: 1px solid #d7c7a1;
    bottom: 5px;
    content: " ";
    display: block;
    left: 0;
    position: absolute;
    width: 0;
    transition: width 0.5s;
  }

  section a:not(.button):hover::before {
    width: 100%;
  }

  section strong.title {
    font-size: 50px;
    line-height: 50px;
  }

  section h2::before,
  section strong.title::before {
    border-top-width: 6px;
    top: -39px;
    width: 56px;
  }

  section.banner {
    background-color: #000;
    height: 100%;
    min-height: 85vh;
  }

  section.banner.short {
    height: 468px;
  }

  section.banner h1 {
    position: relative;
  }

  section.banner small div a,
  section.banner small div span {
    font-size: 12px;
  }

  section.banner small div a {
    border-bottom: 1px solid #fff;
    line-height: 20px;
    margin-right: 15px;
    transition: border 0.4s 0.5s;
  }

  section.banner small div a::before {
    border-bottom-color: #fff;
    bottom: -1px;
    transition: width 0.5s;
  }

  section.banner small div a::after {
    right: -11px;
  }

  section.banner small div a:hover {
    border-bottom-color: transparent;
    padding-bottom: 0;
    transition: border 0.4s 0.1s;
  }

  section.banner small div a:hover::before {
    transition: width 0.5s 0.4s;
  }

  section.banner em {
    transition: opacity 0.6s ease, padding 0.1s ease !important;
  }

  section.banner em:hover {
    padding-right: 57px;
  }

  section.banner.landing ul {
    width: 698px;
  }

  section.banner video {
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    opacity: 0;
    transition: opacity 0.6s ease;
  }

  section.banner.play video {
    opacity: 1;
  }

  body.homepage section.banner video {
    min-height: 100%;
    min-width: 100%;
  }

  body:not(.homepage) section.banner video {
    background: #000;
    height: 100%;
    width: 100%;
  }

  footer section#contact div.container {
    padding: 161px 0 71px 0;
  }

  footer section#contact ul li.newsletter small {
    margin-bottom: 31px;
  }

  footer section#contact ul > li > ul {
    border-right: 1px solid #473711;
    display: inline-block;
  }

  footer section#contact ul li a {
    transition: color 0.25s;
  }

  footer section#contact ul li a:hover {
    color: #b9b9b9;
  }

  footer section#contact ul li a::before {
    display: none;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  section div.container {
    width: 920px;
  }

  section.banner {
    padding: 265px 80px 2rem 118px;
  }

  body.campus section.banner.landing {
    padding: 265px 0 0 150px;
  }

  section.banner.landing h1 {
    font-size: 100px;
    line-height: 102px;
    max-width: 100%;
  }

  section.banner.landing h1::before {
    border-top: 6px solid #fff;
    top: -34px;
  }

  section.banner.landing ul {
    width: 700px;
  }

  section.banner h1 {
    max-width: 75%;
    white-space: normal;
  }

  section.banner.landing h1 + em {
    position: relative;
    top: 32px;
  }

  footer section ul li {
    float: left;
    font-size: 14px;
    line-height: 17px;
    padding-left: 50px;
    position: relative;
    vertical-align: top;
  }

  footer section ul li:first-of-type {
    padding-left: 0;
  }

  footer section ul li > ul li {
    display: inline-block;
    padding-left: 0;
    width: 100%;
  }

  footer section ul li h2 {
    position: absolute;
    top: -67px;
  }

  footer section ul li a:not(:last-of-type) {
    margin-bottom: 11px;
  }

  footer section ul li a::before {
    bottom: -2px !important;
  }

  footer section#contact ul li > ul li {
    display: inline-block;
    float: none;
    margin-bottom: 0.6875rem;
    padding-left: 0;
    width: 100%;
  }

  footer section#contact ul li.contact {
    width: 180px;
  }

  footer section#contact ul li.connect {
    width: 250px;
  }

  footer section#contact ul li.newsletter {
    width: 490px;
  }

  footer section#contact ul li.newsletter small {
    width: 360px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  section div.container {
    width: 1040px;
  }

  section.banner {
    padding: 312px 80px 4rem 118px;
  }

  section.banner.short {
    padding-top: 277px;
  }

  footer section ul li {
    float: left;
    font-size: 14px;
    line-height: 17px;
    padding-left: 66px;
    position: relative;
    vertical-align: top;
  }

  footer section ul li:first-of-type {
    padding-left: 0;
  }

  footer section ul li h2 {
    position: absolute;
    top: -67px;
  }

  footer section ul li a {
    color: inherit;
    display: inline;
  }

  footer section#contact ul li a {
    display: inline-block;
  }

  footer section ul li a::before {
    bottom: -2px !important;
  }

  footer section#contact ul li > ul li {
    display: inline-block;
    float: none;
    margin-bottom: 0.6875rem;
    padding-left: 0;
    width: 100%;
  }

  footer section#contact ul li.contact {
    width: 207px;
  }

  footer section#contact ul li.connect {
    width: 285px;
  }

  footer section#contact ul li.newsletter {
    width: 450px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) and (max-width: 1367px) {
  section.banner.landing {
    padding: 265px 0 0 150px;
  }

  section.banner.landing h1 {
    font-size: 100px;
    line-height: 102px;
    white-space: pre-line;
  }

  section.banner.landing h1::before {
    border-top: 6px solid #fff;
    top: -34px;
  }

  section.banner.landing ul {
    width: 700px;
  }

  section.banner:not(.landing) h1 {
    max-width: 75%;
    white-space: normal;
  }

  section.banner.landing h1 + em {
    position: relative;
    top: 32px;
  }
}

/** Desktop Larger **********/
@media all and (min-width: 1368px) {
  section.banner.landing {
    padding: 340px 80px 0 205px;
  }

  section.banner.landing h1 {
    font-size: 126px;
    line-height: 130px;
    margin-bottom: 30px;
  }

  section.banner.landing h1::before {
    border-top: 7px solid #fff;
    top: -34px;
    width: 70px;
  }

  section.banner.landing h1 + em {
    position: relative;
    top: 40px;
  }

  body.homepage section.banner.landing {
    padding-top: 315px;
  }

  section.banner.landing a {
    font-size: 18px;
    height: 49px;
    line-height: 49px;
    padding: 0 16px;
  }

  section.banner h1 {
    max-width: 1300px;
  }
}

/** Desktop Largest **********/
@media all and (min-width: 1500px) {
  section.banner h1 {
    white-space: pre-line;
  }
}

/** Reusable Content **************************************************/
section.navigation {
  background: #f0f0f0;
  font-size: 0;
  text-align: center;
  text-transform: uppercase;
}

section.navigation.white {
  background: #fff;
}

section.navigation div.container {
  padding: 57px 0;
}

section.navigation div.container div:not(:last-of-type) {
  margin-bottom: 18px;
}

section.navigation a {
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  font-size: 11px;
  font-weight: bold;
  height: 40px;
  line-height: 40px;
  margin: 0 42px;
  text-align: center;
  width: 155px;
  transition: border-color 0.5s, color 0.5s;
}

section.navigation a:hover,
section.navigation a.active {
  border-color: #a37e27;
  color: #a37e27;
}

section.navigation a::before {
  display: none;
}

section.navigation a.apply {
  background: #a37e27;
  border-color: #a37e27;
  color: #fff;
}

section.intro {
  background: #f0f0f0;
  color: #000;
  padding: 76px 0 81px 0;
}

section.intro div.text {
  font-family: "MercuryDisplay", serif;
  font-size: 28px;
  font-weight: 600;
  line-height: 34px;
}

section.intro div.text p:not(:last-of-type) {
  margin-bottom: 4px;
}

section.intro div.text em {
  color: #a37e27;
}

section.intro small {
  display: block;
  font-size: 22px;
  line-height: 26px;
}

section.intro small:first-of-type {
  margin-top: 43px;
}

section.text-intro {
  font-size: 16px;
  line-height: 28px;
  margin-bottom: 80px;
}

section.text-intro.no-margin {
  margin-bottom: 0 !important;
}

section.text-intro.grey {
  background: #f0f0f0;
  margin-bottom: 0;
  padding-bottom: 80px;
}

section.text-intro div.container {
  padding-top: 129px;
}

section.text-intro a.breadcrumb {
  color: #000;
  font-size: 12px;
  font-weight: bold;
  margin-left: 28px;
  position: absolute;
  text-transform: uppercase;
  top: 48px;
}

section.text-intro a.breadcrumb.right {
  display: none;
}

section.text-intro a.breadcrumb::before {
  display: none;
}

section.text-intro a.breadcrumb::after {
  background: url("../images/icons_subsection-arrow.png") top left no-repeat;
  background-size: contain;
  content: " ";
  display: block;
  height: 9px;
  left: -28px;
  position: absolute;
  top: 10px;
  width: 18px;
  transform: scaleX(-1);
}

section.text-intro a.breadcrumb:not(.right) + h2 {
  margin-top: 28px;
}

section.text-intro a::before {
  bottom: 4px;
}

section.text-intro h2 {
  font-size: 34px;
  line-height: 34px;
  margin-bottom: 2px;
  position: relative;
}

section.text-intro h2::before {
  top: -26px;
}

section.text-intro h3 {
  font-family: "MercuryDisplay", serif;
  font-size: 36px;
  font-weight: bold;
  line-height: 36px;
  position: relative;
}

section.text-intro h3::before {
  border-top: 4px solid #000;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
  top: -18px;
  width: 34px;
}

section.text-intro h2 + small,
section.text-intro h3 + small {
  display: block;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 22px;
}

section.text-intro h3 + small {
  margin-top: 11px;
}

section.text-intro h2 + div.text {
  margin-top: 30px;
}

section.text-intro h4 {
  font-size: 18px;
  font-weight: 900;
  margin: 13px 0 4px 0;
}

section.text-intro h5 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 1px;
}

section.text-intro div.text ul > br,
section.text-intro div.text div ul + br {
  display: none;
}

section.text-intro div.text p:not(.break) {
  margin-bottom: 14px;
}

section.text-intro div.text p.break {
  display: block;
  height: 17px;
}

section.text-intro div.text strong {
  font-weight: bold;
}

section.text-intro div.text em {
  font-style: italic;
}

section.text-intro div.text ul {
  margin: 1px 0 14px 0;
}

section.text-intro div.text ul li {
  line-height: 28px;
  padding-left: 11px;
  position: relative;
}

section.text-intro div.text ul li:not(:last-of-type) {
  margin-bottom: 6px;
}

section.text-intro div.text ul:not(:last-of-type) {
  margin-bottom: 7px;
}

section.text-intro div.text ul li::before {
  background: #000;
  content: " ";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  top: 12px;
  width: 3px;
  border-radius: 50%;
}

section.text-intro div.video {
  margin-top: 82px;
}

section.subsections {
  font-size: 0;
}

section.subsections strong.title {
  margin-bottom: 56px;
}

section.subsections div.container > div {
  width: calc(50% - 44px);
}

section.subsections div.subsections {
  display: inline-block;
  margin: 0 88px 0 0;
  vertical-align: top;
}

section.subsections div.subsections > ul {
  border-top: 1px solid #d1bf93;
}

section.subsections div.subsections ul:not(:last-child) {
  margin-bottom: 56px;
}

section.subsections div.subsections > ul > li {
  border-bottom: 1px solid #d1bf93;
}

section.subsections div.subsections ul li > a {
  color: #000;
  display: block;
  font-size: 14px;
  font-weight: bold;
  height: 56px;
  line-height: 59px;
  text-transform: uppercase;
}

section.subsections div.subsections ul li > a::before {
  display: none;
}

section.subsections div.subsections ul li > a::after {
  background: url("../images/icons_subsection-arrow.png") top left no-repeat;
  content: " ";
  display: block;
  height: 16px;
  position: absolute;
  right: 17px;
  top: 19px;
  width: 34px;
  opacity: 0;
  transition: opacity 0.5s, right 0.5s;
}

section.subsections div.subsections ul li > a:hover::after,
section.subsections div.subsections ul li.active > a::after {
  right: 0;
  opacity: 1;
}

section.subsections div.subsections ul li div {
  display: none;
}

section.subsections
  div.subsections
  ul
  li
  div
  section.subsections
  div.subsections
  ul
  li
  div
  p:not(:last-of-type) {
  margin-bottom: 26px;
}

section.subsections div.subsections ul li div strong {
  font-weight: bold;
}

section.subsections div.subsections ul li div em {
  font-style: italic;
}

section.subsections div.subsections ul li div ul > br,
section.subsections div.subsections ul li div ul + br {
  display: none;
}

section.subsections div.subsections ul li div br.break {
  content: " ";
  display: block;
  margin-bottom: 8px;
}

section.subsections div.subsections ul li div br.break.large {
  margin-bottom: 16px;
}

section.subsections div.subsections ul li div ul {
  margin-top: 3px;
}

section.subsections div.subsections ul li div ul li {
  line-height: 20px;
  padding-left: 11px;
  position: relative;
}

section.subsections div.subsections ul li div ul li:not(:last-of-type) {
  margin-bottom: 6px;
}

section.subsections div.subsections ul li div ul:not(:last-of-type) {
  margin-bottom: 7px;
}

section.subsections div.content {
  display: inline-block;
  font-size: 14px;
  line-height: 26px;
  margin-bottom: 64px;
  padding-top: 18px;
  vertical-align: top;
  opacity: 0;
}

section.subsections div.content.active {
  opacity: 1;
}

section.subsections div.content:not(.active) div {
  position: absolute;
}

section.subsections div.content h3 {
  font-family: "MercuryDisplay", serif;
  font-size: 36px;
  font-weight: bold;
  line-height: 36px;
  margin-bottom: 29px;
  position: relative;
}

section.subsections div.content h3::before {
  border-top: 4px solid #000;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
  top: -18px;
  width: 34px;
}

section.subsections div.content p:not(:last-of-type) {
  margin-bottom: 26px;
}

section.subsections div.content strong {
  font-weight: bold;
}

section.subsections div.content em {
  font-style: italic;
}

section.subsections div.content a::before {
  bottom: 3px;
}

section.subsections div.content ul > br,
section.subsections div.content ul + br {
  display: none;
}

section.subsections div.content br.break {
  content: " ";
  display: block;
  margin-bottom: 8px;
}

section.subsections div.content br.break.large {
  margin-bottom: 16px;
}

section.subsections div.content ul {
  margin-top: 3px;
}

section.subsections div.content ul li {
  padding-left: 11px;
  position: relative;
}

section.subsections div.content ul li:not(:last-of-type) {
  margin-bottom: 6px;
}

section.subsections div.content ul:not(:last-of-type) {
  margin-bottom: 7px;
}

section.subsections div.content ul li::before {
  background: #000;
  content: " ";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  top: 11px;
  width: 3px;
  border-radius: 50%;
}

section.subsections + section.text-intro div.container {
  padding-top: 33px;
}

section.campus-blocks {
  font-size: 0;
}

section.campus-blocks > div {
  color: #fff;
  position: relative;
}

section.campus-blocks > div h2,
section.campus-blocks > div div.text,
section.campus-blocks > div a.button {
  position: relative;
  z-index: 2;
}

section.campus-blocks > div h2 {
  white-space: pre-line;
}

section.campus-blocks > div div.text {
  margin-bottom: 16px;
  max-width: 400px;
}

section.campus-blocks > div span {
  background: #000;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
  opacity: 0.55;
}

section.faqs {
  margin-bottom: 0;
}

section.faqs div.container {
  padding-top: 0;
}

section.faqs div.container > ul > li {
  border-bottom: 1px solid #d1bf93;
  padding: 40px 0 4px 0;
}

section.faqs div.container > ul > li > strong,
section.faqs div.container > ul > li div.text div > strong:first-child {
  font-family: "MercuryDisplay", serif;
  font-size: 34px;
  font-weight: 600;
  line-height: 43px;
}

section.faqs div.container > ul > li > strong {
  cursor: pointer;
  display: block;
  margin-bottom: 26px;
  max-width: 92%;
}

section.faqs div.container > ul > li div.text {
  height: 0;
  overflow: hidden;
}

section.faqs div.container > ul > li div.text.transition {
  transition: height 0.75s;
}

section.faqs div.container > ul > li div.text::after {
  content: " ";
  display: block;
  height: 30px;
}

section.faqs div.container > ul > li div.text div {
  overflow: hidden;
  padding-left: 38px;
  position: relative;
  vertical-align: top;
  width: calc(100% - 40px);
}

section.faqs div.container > ul > li div.text div > strong:first-child {
  left: -38px;
  margin-right: -28px;
  position: relative;
}

section.faqs div.container > ul > li div.text p:first-of-type {
  display: inline;
}

section.explore {
  background: #f0f0f0;
  font-size: 0;
  padding: 77px 0 54px 0;
}

section.explore.white {
  background: #fff;
}

section.explore h2 {
  font-size: 30px;
  margin-bottom: 33px;
}

section.explore h2::before {
  border-top-width: 4px;
  font-size: 30px;
  left: 0;
  top: -6px;
  width: 34px;
}

section.explore a {
  border: 1px solid #5a5a5a;
  color: #000;
  display: inline-block;
  font-size: 22px;
  font-weight: bold;
  height: 47px;
  letter-spacing: 0px;
  line-height: 47px;
  margin: 0 18px 18px 0;
  padding: 0 14px;
  transition: background-color 0.5s, color 0.5s;
}

section.explore a:hover {
  background: #000;
  color: #fff;
}

section.explore a::before {
  display: none;
}

section.filters {
  background: #000;
  position: relative;
  z-index: 20;
}

section.filters div.filter-group.data {
  left: -999px;
  position: absolute;
  top: -9999px;
}

section.filters div.filter-group > small {
  font-weight: bold;
  text-transform: uppercase;
}

section.filters div.reset {
  float: right;
  height: 20px;
}

section.filters div.reset > small {
  cursor: pointer;
  font-weight: bold;
  position: relative;
  text-transform: uppercase;
}

section.filters div.filter-group div.filter {
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  height: 33px;
  line-height: 33px;
  padding-left: 10px;
  position: relative;
  text-transform: uppercase;
  vertical-align: middle;
  width: 149px;
}

section.filters div.filter-group div.filter small {
  display: block;
  height: 33px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: pre;
  width: calc(100% - 28px);
}

section.filters div.filter-group div.filter:after {
  border-style: solid;
  border-width: 2px 2px 0 0;
  content: " ";
  display: block;
  height: 9px;
  position: absolute;
  right: 9px;
  top: 7px;
  width: 9px;
  z-index: 2;
  transform: rotate(135deg);
}

section.filters div.filter-group div.filter ul {
  display: none;
  left: -1px;
  position: absolute;
  width: calc(100% + 2px);
  z-index: 20;
}

section.filters div.filter-group div.filter.active ul {
  display: block;
}

section.filters:not(.new) div.filter-group div.filter.active:after {
  display: none;
}

section.filters div.filter-group.subfilter:not(.active) {
  display: none;
}

section.filters.new div.filter-group div.filter ul li:last-of-type button {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 0.83rem;
  font-style: normal;
  font-weight: bold;
  height: 34px;
  letter-spacing: 0.03em;
  line-height: 34px;
  padding: 1px 6px;
  text-transform: uppercase;
  width: 100%;
}

section.quote {
  background-color: #000;
  position: relative;
  width: 100%;
}

section.quote::after {
  background: #000;
  content: " ";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
  opacity: 0.65;
}

section.quote blockquote {
  color: #fff;
  font-family: "MercuryDisplay", serif;
  position: absolute;
  top: calc(50% + 20px);
  z-index: 5;
  transform: translateY(-50%);
}

section.quote blockquote::before {
  border-top: 6px solid #fff;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
  width: 56px;
}

section.quote blockquote sup:first-of-type {
  left: -30px;
  position: absolute;
  top: 0;
}

section.quote blockquote small {
  display: block;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  white-space: pre-line;
}

section.news-events {
  background: #f0f0f0;
}

section.news-events h2 {
  border-top-color: #000;
}

section.news-events div ul li {
  position: relative;
}

section.news-events div ul li a::before {
  display: none;
}

section.news-events div ul li > a:first-of-type {
  display: block;
  height: 226px;
  margin-bottom: 7px;
  width: 100%;
}

section.news-events div ul li.past > a:first-of-type {
  opacity: 0.5;
}

section.news-events div ul li > a:last-of-type {
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  padding-bottom: 100%;
  position: absolute;
  top: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 0.25s;
}

section.news-events div ul li > a:last-of-type small {
  line-height: 20px;
  padding: 17px 16px;
  position: absolute;
  z-index: 2;
}

section.news-events div ul li > a:last-of-type span.button {
  background: #a37e27;
  bottom: 0;
  position: absolute;
  right: 0;
}

section.news-events div ul li > a:last-of-type:hover {
  opacity: 1;
}

section.news-events div ul li em {
  display: block;
  line-height: 18px;
}

section.news-events div ul li strong {
  display: block;
  font-weight: bold;
  line-height: 18px;
}

section.news-events div ul li strong a {
  color: #000;
}

section.news-events.news {
  margin-bottom: 0;
  padding-bottom: 80px;
}

section.news-events.news div.container {
  padding-top: 129px;
}

section.news-events.news h2 {
  font-size: 46px;
  line-height: 46px;
  margin-bottom: 65px;
}

section.news-events.news div.news {
  height: 287px;
  overflow: hidden;
  padding-bottom: 76px;
  position: relative;
  width: 100%;
}

section.news-events.news div.news ul {
  margin-left: 0;
  position: absolute;
  width: 100000px;
}

section.news-events.news div.news ul li {
  float: left;
  font-size: 12px;
  line-height: 14px;
  width: 226px;
}

section.news-events.news div.news ul li:not(:last-of-type) {
  margin-right: 20px;
}

section.news-events.news div.news button {
  background: #000;
  cursor: pointer;
  display: block;
  height: 50px;
  position: absolute;
  text-indent: -9999px;
  top: 88px;
  width: 50px;
  z-index: 3;
}

section.news-events.news div.news button::after {
  border-style: solid;
  border-width: 2px 2px 0 0;
  content: " ";
  display: block;
  height: 12px;
  left: calc(50% - 9px);
  position: absolute;
  top: calc(50% - 7px);
  width: 12px;
  z-index: 2;
  transform: rotate(45deg);
}

section.news-events.news div.news button[data-action="prev"] {
  left: 0;
  transform: rotate(180deg);
}

section.news-events.news div.news button[data-action="next"] {
  right: 0;
}

section.articles {
  padding-top: 110px;
}

section.article {
  padding-top: 55px;
}

section.article.no-padding {
  padding-top: 0 !important;
}

section.articles div.container,
section.article div.container {
  border-top: 1px solid #d1bf93;
}

section.articles ul li {
  border-bottom: 1px solid #d1bf93;
  font-size: 0;
  padding: 45px 0;
  position: relative;
}

section.articles ul li div {
  display: inline-block;
  vertical-align: top;
  width: 40%;
}

section.articles ul li div small {
  display: block;
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 5px;
  position: relative;
  top: -5px;
}

section.articles ul li div strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-size: 34px;
  font-weight: 600;
  line-height: 37px;
  margin-bottom: 13px;
}

section.articles ul li div p {
  font-size: 14px;
  font-weight: 400;
  line-height: 26px;
  margin-bottom: 17px;
}

section.articles ul li div a.button {
  font-size: 14px;
}

section.articles ul li img {
  display: inline-block;
  vertical-align: top;
  width: 50%;
}

section.articles ul li img:first-of-type {
  display: none;
}

section.article div.container {
  border-top: 1px solid #d1bf93;
  padding-top: 32px;
}

section.article div.container.no-padding {
  padding-top: 0 !important;
}

section.article div.container.no-border {
  border-top: none !important;
}

section.article div.event-information {
  border-bottom: 1px solid #d1bf93;
  font-size: 12px;
  font-weight: bold;
  line-height: 34px;
  margin-bottom: 32px;
  padding-bottom: 29px;
  text-transform: uppercase;
}

section.article div.event-information h4 {
  color: #a37e27;
  font-size: 16px;
  font-weight: 900;
  margin: 0;
}

section.article div.event-information a::before {
  bottom: 7px;
}

section.article div.alumni {
  border-bottom: 1px solid #d1bf93;
  font-size: 17px;
  line-height: 24px;
  margin-bottom: 32px;
  padding-bottom: 33px;
  position: relative;
}

section.article div.alumni h6 {
  color: #a37e27;
  font-weight: 300;
}

section.article div.alumni a.button {
  width: auto !important;
}

section.article div.text h3 {
  font-family: "MercuryDisplay", serif;
  font-weight: 600;
  font-size: 34px;
  line-height: 43px;
  margin-bottom: 14px;
}

section.article div.text h3::before {
  display: none;
}

section.article div.text h4 {
  color: #9c7e27;
  margin: 0;
}

section.article div.text a.button,
section.article div.event-information a.button {
  font-size: 12px;
  font-weight: bold;
  width: 100px;
}

section.article div.event-information a.button {
  margin: 27px 0 11px 0;
}

section.article div.text hr {
  border: none;
  border-top: 1px solid #d1bf93;
  content: " ";
  display: inline-block;
  margin: 32px 0;
  width: 100%;
}

section.article div.text img.alignnone {
  display: block;
  height: auto !important;
  width: 100% !important;
}

section.article div.text img.alignleft,
section.article div.text img.alignright {
  margin-bottom: 15px;
}

section.article div.text img.aligncenter {
  display: block;
  margin: 0 auto;
}

@media (min-width: 48em) {
  section.article div.text img.alignleft {
    float: left;
    margin: 0 30px 15px 0;
    max-width: 40%;
  }

  section.article div.text img.alignright {
    float: right;
    margin: 0 0 15px 30px;
    max-width: 40%;
  }
}

section.gallery div.container {
  overflow: hidden;
}

section.gallery div.container.padding {
  padding-top: 32px;
}

section.gallery div.image_container {
  overflow: hidden;
  position: relative;
  width: 100%;
}

section.gallery div.image_container div.images {
  height: 100%;
  left: 0;
  position: absolute;
  width: 50000px;
}

section.gallery div.image_container div.images span.image_bg {
  height: 100%;
  float: left;
}

section.gallery div.image_captions {
  background: #000;
  color: #fff;
  height: 53px;
  line-height: 53px;
  padding-left: 25px;
  position: relative;
}

section.gallery div.image_captions strong {
  opacity: 1;
}

section.gallery div.image_captions strong.animate {
  transition: opacity 0.375s;
}

section.gallery div.image_captions strong.opacity {
  opacity: 0;
}

section.gallery div.image_captions button {
  background: none;
  cursor: pointer;
  display: block;
  height: 36px;
  position: absolute;
  text-indent: -9999px;
  top: 8px;
  width: 36px;
}

section.gallery div.image_captions button::after {
  border-style: solid;
  border-width: 2px 2px 0 0;
  content: " ";
  display: block;
  height: 10px;
  left: calc(50% - 8px);
  position: absolute;
  top: calc(50% - 6px);
  width: 10px;
  z-index: 2;
  transform: rotate(45deg);
}

section.gallery div.image_captions button[data-action="prev"] {
  right: 47px;
  transform: rotate(180deg);
}

section.gallery div.image_captions button[data-action="next"] {
  right: 11px;
}

div.share {
  color: #000;
  display: inline-block;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 11px;
  font-weight: bold;
  height: 24px;
  line-height: 24px;
  overflow: hidden;
  padding: 0 15px 0 40px;
  position: relative;
  text-transform: uppercase;
}

div.share.template {
  display: none;
}

div.share::before {
  background: url("../images/icons_share.svg") top left no-repeat;
  content: " ";
  cursor: pointer;
  display: block;
  height: 24px;
  left: 0;
  position: absolute;
  top: 0;
  width: 31px;
}

div.share strong,
div.share span {
  top: 0;
  transition: opacity 0.5s, top 0.5s;
}

div.share strong {
  cursor: pointer;
  position: absolute;
  transition: opacity 0.5s 0.15s, top 0.5s 0.15s;
}

div.share span {
  position: relative;
  top: 15px;
  opacity: 0;
  transition: opacity 0.5s, top 0.5s;
}

div.share span a {
  color: #000;
}

div.share span a:not(:last-of-type) {
  margin-right: 25px;
}

div.share span a:not(:last-of-type)::after {
  color: #a37e27;
  content: "/";
  display: inline;
  font-size: 16px;
  font-weight: 300;
  pointer-events: none;
  position: absolute;
  right: -19px;
  top: -1px;
}

div.share span a::before {
  border-bottom-color: #000;
}

div.share:hover strong {
  top: -15px;
  opacity: 0;
  transition: opacity 0.5s, top 0.5s;
}

div.share:hover span {
  top: 0;
  opacity: 1;
  transition: opacity 0.5s 0.15s, top 0.5s 0.15s;
}

div.share-article {
  border-top: 1px solid #d1bf93;
  border-bottom: 1px solid #d1bf93;
  height: 110px;
  margin-top: 50px;
}

div.share-article div.share {
  left: 50%;
  top: 50%;
  transform: translate3D(-50%, -50%, 0);
}

section h2 div.share {
  margin-left: 23px;
  top: 3px;
}

section h2 div.share span {
  display: block;
}

section.form iframe {
  display: block;
  width: 100%;
}

section.form h2 {
  font-size: 30px;
  margin-bottom: 33px;
}

section.form h2::before {
  border-top-width: 4px;
  font-size: 30px;
  left: 0;
  top: -6px;
  width: 34px;
}

div.video {
  aspect-ratio: 16/9;
  background-color: #000;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  width: 100%;
}

body.course div.video {
  margin-bottom: 1.5rem;
}

div.video.playing a[data-trigger="exit-video"] {
  cursor: pointer;
  display: block;
  height: 44px;
  position: absolute;
  right: 26px;
  top: 26px;
  width: 42px;
  display: NONE;
}

div.video.playing a[data-trigger="exit-video"]::before,
div.video.playing a[data-trigger="exit-video"]::after {
  border-top: 1px solid #fff;
  content: " ";
  display: block;
  height: 0;
  position: absolute;
  right: -15px;
  top: 21px;
  width: 58px;
}

div.video.playing a[data-trigger="exit-video"]::before {
  transform: rotate(45deg);
}

div.video.playing a[data-trigger="exit-video"]::after {
  transform: rotate(-45deg);
}

div.video img {
  display: block;
  height: 0;
  left: -9999px;
  position: absolute;
  top: -9999px;
  width: 0;
}

div.video iframe,
section.video iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

div.video:not(.playing) {
  cursor: pointer;
}

body:not(.course) div.video div::after {
  background: #000;
  content: " ";
  height: 100%;
  left: -9999px;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.5s, left 0s 0.5s;
}

div.video:not(.playing) div::after {
  left: 0;
  opacity: 0.65;
}

div.container div.video {
  height: 0;
  padding-bottom: 56%;
}

div.video video {
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

section.video {
  height: calc(100% - 73px);
  left: -9999px;
  overflow: hidden;
  position: fixed;
  top: 73px;
  width: 100%;
  z-index: 6000;
  opacity: 0;
  transition: opacity 1.5s 1.3s;
}

body.video {
  height: 100%;
  overflow: hidden;
}

body.video:not(.widget) section.video {
  left: 0;
  transition: opacity 0.5s;
}

body.video:not(.widget) section.video.ready {
  opacity: 1;
}

.image_bg {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
}

.image_bg.contain {
  background-position: top left;
  background-size: contain;
}

.image_bg img.bg_image {
  display: none;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  section.navigation {
    font-size: 11px;
    overflow: hidden;
  }

  section.navigation div.container {
    height: auto;
    margin: 0;
    padding: 0;
    width: 100%;
  }

  section.navigation a {
    border: none;
    display: block;
    height: 55px;
    line-height: 55px;
    margin: 0 auto;
    width: auto;
  }

  section.navigation div.container div:not(:last-of-type) {
    margin-bottom: 0;
  }

  section.navigation div.container a {
    border-bottom: 1px solid #b2b2b2;
  }

  section.navigation div.container div:last-of-type a:last-of-type {
    border-bottom: none;
  }

  section.intro {
    background: #f0f0f0;
    color: #000;
    padding: 24px 0;
  }

  section.intro div.text {
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
  }

  section.intro div.text p:not(:last-of-type) {
    margin-bottom: 0;
  }

  section.intro small {
    display: block;
    font-size: 12px;
    font-weight: normal;
    line-height: 16px;
  }

  section.intro small:first-of-type {
    margin-top: 15px;
  }

  section.text-intro {
    font-size: 12px;
    line-height: 20px;
    margin-bottom: 23px;
  }

  section.text-intro.grey {
    margin-bottom: 0;
    padding-bottom: 23px;
  }

  section.text-intro div.container {
    padding-top: 47px;
  }

  section.text-intro.back div.container {
    padding-top: 47px;
  }

  section.text-intro a.breadcrumb {
    top: 32px;
  }

  section.text-intro a.breadcrumb::after {
    top: 5px;
  }

  section.text-intro a.breadcrumb.right {
    display: inline-block;
    margin-left: 0;
  }

  section.text-intro a.breadcrumb.right::after {
    left: auto;
    right: -28px;
    transform: none;
  }

  section.text-intro a.breadcrumb + h2 {
    margin-top: 53px !important;
  }

  section.text-intro a::before {
    bottom: 2px;
  }

  section.text-intro h2 {
    font-size: 26px;
    line-height: 30px;
    margin-bottom: 7px;
  }

  section.text-intro h2::before {
    top: -18px;
  }

  section.text-intro h2 + small,
  section.text-intro h3 + small {
    font-size: 14px;
    margin-top: 5px;
  }

  section.text-intro h4 {
    font-size: 14px;
    margin-bottom: 7px;
  }

  section.text-intro h5 {
    font-size: 14px;
  }

  section.text-intro div.text ul {
    margin-bottom: 8px;
  }

  section.text-intro div.text ul li {
    line-height: 20px;
  }

  section.text-intro div.text ul li::before {
    top: 8px;
  }

  section.text-intro div.text p:not(.break) {
    margin-bottom: 8px;
  }

  section.text-intro div.text p.break {
    height: 11px;
  }

  section.text-intro div.text p {
    word-wrap: break-word;
  }

  section.text-intro div.video {
    margin-top: 18px;
  }

  section.news-events.news {
    padding-bottom: 26px;
  }

  section.news-events.news div.container {
    padding-top: 50px;
  }

  section.news-events.news h2 {
    font-size: 30px;
    line-height: 30px;
    margin-bottom: 34px;
  }

  section.news-events div ul li > a:last-of-type {
    pointer-events: none;
  }

  section.subsections div.container > div {
    width: 100%;
  }

  section.subsections div.subsections {
    display: block;
    margin: 0 auto;
    width: 100%;
  }

  section.subsections div.content ul {
    margin-top: 3px;
  }

  section.subsections div.subsections ul:not(:last-child) {
    margin-bottom: 56px;
  }

  section.subsections div.content ul li {
    line-height: 18px;
  }

  section.subsections div.content ul li::before {
    height: 3px;
    top: 7px;
    width: 3px;
  }

  section.subsections div.subsections ul li > a {
    border-bottom: none;
    height: auto;
    line-height: 22px;
    padding: 19px 25px 15px 0;
  }

  section.subsections div.subsections ul li > a::after {
    background: url("../images/icons_subsection-arrow.png") bottom right
      no-repeat;
    background-size: 19px 12px;
    content: " ";
    display: block;
    height: 12px;
    position: absolute;
    right: 6px;
    top: 19px;
    width: 19px;
    opacity: 1;
    transform: rotate(90deg);
    transition: transform 0.3s;
  }

  section.subsections div.subsections ul li > a:hover::after,
  section.subsections div.subsections ul li.active > a::after {
    right: 6px;
  }

  section.subsections div.subsections ul li div {
    display: block;
    font-size: 12px;
    line-height: 20px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.75s;
  }

  section.subsections div.subsections ul li div::before {
    content: " ";
    display: block;
    height: 5px;
  }

  section.subsections div.subsections ul li div::after {
    content: " ";
    display: block;
    padding-bottom: 19px;
  }

  section.subsections div.subsections ul li div h3 {
    display: none;
  }

  section.subsections div.subsections ul li div p:not(:last-of-type) {
    margin-bottom: 20px;
  }

  section.subsections div.subsections ul li div strong {
    font-size: 14px;
    font-weight: bold;
    line-height: 17px;
  }

  section.subsections div.subsections ul li div br.break {
    content: " ";
    display: block;
    height: 12px;
  }

  section.subsections div.subsections ul li div br.break.large {
    height: 21px;
  }

  section.subsections div.subsections ul li div ul li {
    line-height: 18px;
    padding-left: 13px;
    position: relative;
  }

  section.subsections div.subsections ul li div ul:not(:last-of-type) {
    margin-bottom: 17px;
  }

  section.subsections div.subsections ul li div ul li::before {
    background: #000;
    content: " ";
    display: block;
    height: 3px;
    left: 2px;
    position: absolute;
    top: 7px;
    width: 3px;
    border-radius: 50%;
  }

  section.subsections div.subsections ul li.active a::after {
    right: 6px;
    transform: rotate(270deg);
  }

  section.subsections div.subsections ul li.active div {
    max-height: 1500px;
  }

  section.subsections div.content {
    display: none;
  }

  section.subsections + section.text-intro div.container {
    padding-top: 33px;
  }

  section.campus-blocks > div {
    font-size: 12px;
    height: calc(100vw);
    line-height: 20px;
    padding: 70px 20px 0 20px;
  }

  section.campus-blocks > div h2 {
    font-size: 30px;
    line-height: 30px;
    margin-bottom: 22px;
  }

  section.campus-blocks > div a.button {
    font-size: 12px;
    height: 30px;
    line-height: 30px;
    padding: 0 10px;
  }

  section.articles,
  section.article {
    padding-top: 33px;
  }

  section.article div.container {
    margin-bottom: 33px;
    padding-top: 27px;
  }

  section.article div.container.no-margin {
    margin-bottom: 0 !important;
  }

  section.articles,
  section.articles div.container {
    margin-bottom: 0;
  }

  section.articles ul li {
    padding: 33px 0;
  }

  section.articles ul li:last-of-type {
    border-bottom: none;
  }

  section.articles ul li div {
    margin-right: 0;
    width: 100%;
  }

  section.articles ul li div small {
    top: 0;
  }

  section.articles ul li div strong {
    font-size: 22px;
    line-height: 26px;
    margin-bottom: 8px;
  }

  section.articles ul li div p {
    font-size: 12px;
    line-height: 20px;
  }

  section.articles ul li img:first-of-type {
    display: block;
    margin-bottom: 9px;
    width: 100%;
  }

  section.articles ul li img:last-of-type {
    display: none;
  }

  section.article div.container {
    padding-top: 23px;
  }

  section.article div.event-information {
    font-size: 10px;
    line-height: 28px;
    margin-bottom: 20px;
    padding-bottom: 22px;
  }

  section.article div.event-information h4 {
    font-size: 12px;
    line-height: 12px;
    margin: 5px 0 9px 0;
  }

  section.article div.alumni {
    border-bottom: 1px solid #d1bf93;
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 28px;
    padding-bottom: 26px;
  }

  section.article div.alumni h6 {
    color: #a37e27;
    font-weight: 300;
  }

  section.article div.alumni h6 + a.button {
    margin-top: 18px;
  }

  section.article div.alumni a.button {
    margin-top: 8px;
  }

  section.article div.text h3 {
    font-size: 28px;
    line-height: 32px;
  }

  section.article div.text h5 {
    margin-bottom: 0;
  }

  section.article div.text hr {
    margin: 24px 0 26px 0;
  }

  section.article div.text hr + h3 {
    margin-top: 4px;
  }

  section.faqs {
    padding: 0 0 32px 0;
  }

  section.faqs div.container {
    padding-top: 0;
  }

  section.faqs div.container > ul > li {
    padding: 30px 0 4px 0;
  }

  section.faqs div.container > ul > li > strong,
  section.faqs div.container > ul > li div.text div > strong:first-child {
    font-size: 24px;
    line-height: 26px;
  }

  section.faqs div.container > ul > li > strong {
    margin-bottom: 26px;
  }

  section.faqs div.container > ul > li div.text div {
    padding-left: 28px;
    width: calc(100% - 30px);
  }

  section.faqs div.container > ul > li div.text div > strong:first-child {
    left: -28px;
    margin-right: -18px;
  }

  section.faqs div.container > ul > li div.text::after {
    height: 22px;
  }

  section.faqs div.container > ul > li div.text {
    margin-right: 13px;
  }

  section.faqs div.container h2 {
    margin-top: 47px;
  }

  section.faqs div.container h2:not(:first-of-type) {
    margin-top: 67px;
  }

  section.explore {
    padding: 53px 0 24px 0;
  }

  section.explore h2 {
    margin-bottom: 23px;
  }

  section.explore h2::before {
    border-top-width: 4px;
    top: -21px;
    width: 34px;
  }

  section.explore a {
    font-size: 14px;
    font-weight: bold;
    height: auto;
    line-height: 18px;
    margin: 0 11px 11px 0;
    padding: 6px 8px;
  }

  section.filters {
    max-height: 44px;
  }

  section.filters small.toggle_filters {
    height: 44px;
    line-height: 44px;
    margin-left: 20px;
  }

  section.filters div.filter-group > small {
    width: 40%;
  }

  section.filters div.filter-group div.filter {
    width: 60%;
  }

  section.filters div.filters {
    padding: 22px 20px;
  }

  section.filters div.reset {
    right: 20px;
    top: 12px;
  }

  div.video {
    padding-bottom: 56%;
  }

  div.video:not(.playing):not(.image)::before,
  div.video.small:not(.playing)::before {
    border-width: 5px;
    height: 70px;
    width: 70px;
  }

  div.video:not(.playing):not(.image)::after,
  div.video.small:not(.playing)::after {
    border-top-width: 14px;
    border-bottom-width: 14px;
    border-left-width: 21px;
  }

  div.video small {
    display: none;
  }

  section.form div.container {
    padding-top: 49px !important;
  }

  section.form h2 {
    margin-bottom: 23px;
  }

  section.form h2::before {
    border-top-width: 4px;
    top: -21px;
    width: 34px;
  }

  section.form iframe {
    height: 280px;
  }

  section.video iframe {
    height: calc(100% - 60px);
  }

  div.share strong {
    top: -20px;
  }

  div.share span {
    top: 2px;
    opacity: 1;
  }

  div.share span a:not(:last-of-type) {
    margin-right: 19px;
  }

  div.share span a:not(:last-of-type)::after {
    right: -16px;
  }

  section h2 div.share {
    display: block;
    line-height: 18px;
    margin: 20px 0 0;
    top: 0;
  }

  div.share-article {
    margin-top: 35px;
  }

  section.quote div.container {
    padding: 50px 0;
  }

  section.quote blockquote {
    font-size: 30px;
    line-height: 30px;
    position: relative;
    top: 3px;
    transform: none;
  }

  section.quote blockquote::before {
    border-top-width: 4px;
    top: -22px;
    width: 34px;
  }

  section.quote blockquote small {
    font-size: 14px;
    line-height: 20px;
    margin-top: 30px;
  }

  section.gallery {
    overflow: hidden;
    width: 100%;
  }

  section.gallery div.container {
    overflow: visible;
  }

  section.gallery div.container.padding {
    padding-top: 23px;
  }

  section.gallery div.image_container {
    padding-bottom: 56%;
  }

  section.gallery div.image_container div.images span.image_bg {
    width: calc(100vw - 40px);
  }

  section.gallery div.image_captions {
    position: static;
  }

  section.gallery div.image_captions strong {
    display: block;
    font-size: 12px;
    line-height: 18px;
    padding-right: 20px;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
  }

  section.gallery div.image_captions button {
    background: #000;
    height: 40px;
    top: calc(50% - 20px);
    width: 40px;
    z-index: 3;
  }

  section.gallery div.image_captions button[data-action="prev"] {
    left: -20px;
  }

  section.gallery div.image_captions button[data-action="next"] {
    right: -20px;
  }

  footer section#copyright ul {
    flex-direction: column;
  }

  footer section#copyright ul li {
    margin-bottom: 0.5rem;
  }

  footer section#copyright small li a {
    margin-left: 0;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  section.navigation a {
    margin: 0 15px;
  }

  section.intro {
    padding: 57px 0 62px 0;
  }

  section.text-intro {
    margin-bottom: 48px;
  }

  section.text-intro.grey {
    margin-bottom: 0;
    padding-bottom: 48px;
  }

  section.text-intro div.container {
    padding-top: 91px;
  }

  section.text-intro a.breadcrumb {
    top: 32px;
  }

  section.text-intro a.breadcrumb + h2 {
    margin-top: 38px;
  }

  section.text-intro a.breadcrumb::after {
    top: 10px;
  }

  section.text-intro a:not(.button)::before {
    /*bottom: 6px;*/
    bottom: 4px;
  }

  section.subsections div.container > div {
    width: 100%;
  }

  section.subsections div.subsections {
    display: block;
    margin: 0 auto;
    width: 100%;
  }

  section.subsections div.subsections ul:not(:last-child) {
    margin-bottom: 56px;
  }

  section.subsections div.subsections ul li > a {
    border-bottom: none;
  }

  section.subsections div.subsections ul li > a::after {
    background: url("../images/icons_subsection-arrow.png") bottom right
      no-repeat;
    background-size: 19px 12px;
    content: " ";
    display: block;
    height: 12px;
    position: absolute;
    right: 6px;
    top: 19px;
    width: 19px;
    opacity: 1;
    transform: rotate(90deg);
    transition: transform 0.3s;
  }

  section.subsections div.subsections ul li > a:hover::after {
    right: 6px;
  }

  section.subsections div.subsections ul li div {
    display: block;
    font-size: 14px;
    line-height: 26px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.75s;
  }

  section.subsections div.subsections ul li div::after {
    content: " ";
    display: block;
    padding-bottom: 19px;
  }

  section.subsections div.subsections ul li div h3 {
    display: none;
  }

  section.subsections div.subsections ul li div p:not(:last-of-type) {
    margin-bottom: 20px;
  }

  section.subsections div.subsections p a::before {
    bottom: 3px;
  }

  section.subsections div.subsections ul li.active a::after {
    right: 6px;
    transform: rotate(270deg);
  }

  section.subsections div.subsections ul li.active div {
    max-height: 1500px;
  }

  section.subsections div.content {
    display: none;
  }

  section.subsections + section.text-intro div.container {
    padding-top: 33px;
  }

  section.campus-blocks > div {
    font-size: 15px;
    line-height: 24px;
    height: 455px;
    padding: 76px 50px 0 50px;
  }

  section.campus-blocks > div h2 {
    font-size: 38px;
    line-height: 38px;
    margin-bottom: 17px;
  }

  section.campus-blocks > div a.button {
    font-size: 14px;
    height: 36px;
    line-height: 36px;
    padding: 0 10px;
  }

  section.articles,
  section.article {
    padding-top: 55px;
  }

  section.articles div.container,
  section.article div.container {
    margin-bottom: 55px;
  }

  section.article div.container {
    padding-top: 32px;
  }

  section.articles ul li {
    padding: 23px 0;
  }

  section.articles ul li div {
    margin-right: 40px;
    width: calc(50% - 40px);
  }

  section.articles ul li div small {
    display: block;
    font-size: 12px;
    font-weight: bold;
    margin: -5px 0 0 0;
    top: 0;
  }

  section.articles ul li div strong {
    display: block;
    font-family: "MercuryDisplay", serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 26px;
    margin-bottom: 9px;
  }

  section.articles ul li div p {
    font-size: 12px;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 17px;
  }

  section.articles ul li div a.button {
    font-size: 14px;
  }

  section.faqs div.container {
    padding-top: 0;
  }

  section.faqs div.container > ul > li div.text a::before {
    bottom: 3px;
  }

  section.explore {
    padding: 48px 0 28px 0;
  }

  section.explore a {
    font-size: 20px;
    height: 43px;
    line-height: 43px;
    margin: 0 14px 14px 0;
  }

  section.filters {
    max-height: 79px;
  }

  section.filters small.toggle_filters {
    height: 79px;
    line-height: 79px;
  }

  section.filters div.filter-group > small {
    width: 50%;
  }

  section.filters div.filter-group div.filter {
    width: 50%;
  }

  section.filters div.reset {
    top: 26px;
  }

  section.form div.container {
    padding-top: 53px !important;
  }

  div.share strong {
    top: -15px;
  }

  div.share span {
    top: 0;
    opacity: 1;
  }

  section h2 div.share {
    display: block;
    margin: 35px 0 0;
    top: 0;
  }

  section.quote {
    height: 440px;
  }

  section.quote blockquote {
    font-size: 40px;
    line-height: 40px;
  }

  section.quote blockquote::before {
    border-top-width: 5px;
    top: -33px;
    width: 42px;
  }

  section.quote blockquote small {
    font-size: 16px;
    line-height: 22px;
    margin-top: 40px;
  }

  section.gallery div.image_container {
    height: 429px;
  }
}

/** Tablet Portrait **********/
@media all and (min-width: 768px) and (max-width: 960px) {
  section.filters small.toggle_filters {
    margin-left: 72px;
  }

  section.filters div.filters {
    padding: 22px 72px;
  }

  section.filters div.reset {
    right: 72px;
  }

  section.gallery div.image_container div.images span.image_bg {
    width: calc(100vw - 144px);
  }
}

/** Tablet Landscape **********/
@media all and (min-width: 961px) and (max-width: 1024px) {
  section.filters small.toggle_filters {
    margin-left: 100px;
  }

  section.filters div.filters {
    padding: 22px 100px;
  }

  section.filters div.reset {
    right: 100px;
  }

  section.gallery div.image_container div.images span.image_bg {
    width: calc(100vw - 200px);
  }
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  section.subsections a,
  section.intro div.text a,
  section.text-intro div.text a:not(.button) {
    border-bottom: 1px solid #d1bf93;
    display: inline;
  }

  section.subsections a::before,
  section.intro div.text a::before,
  section.text-intro div.text a::before {
    display: none;
  }

  body.video-player {
    height: 100%;
    overflow: hidden;
  }

  section.text-intro a.breadcrumb::before {
    display: none;
  }

  section.subsections strong.title {
    margin-bottom: 26px;
  }

  body.media-gallery section.article div.alumni h3 {
    max-width: 600px;
  }

  section.filters {
    font-size: 12px;
    overflow: hidden;
  }

  section.filters div.container {
    margin: 0;
    width: 100%;
  }

  section.filters.active {
    max-height: 371px;
    overflow: visible;
  }

  section.filters small.toggle_filters {
    color: #fff;
    cursor: pointer;
    display: block;
    font-size: 11px;
    font-weight: bold;
    text-transform: uppercase;
  }

  section.filters div.filters {
    background: #fff;
  }

  section.filters div.filter-group {
    font-size: 0;
    height: 35px;
    position: relative;
  }

  section.filters div.filter-group > small {
    display: inline-block;
    font-size: 12px;
  }

  section.filters div.filter-group div.filter {
    border: 1px solid #808080;
    font-size: 10px;
  }

  section.filters div.filter-group:not(:last-of-type) {
    margin-bottom: 27px;
  }

  section.filters div.filter-group div.filter ul {
    background: #000;
    padding-top: 7px;
    top: 32px;
  }

  section.filters div.filter-group div.filter ul li {
    color: #a9a9a9;
    line-height: 16px;
    padding: 12px 10px;
  }

  section.filters:not(.new) div.filter-group div.filter ul li:hover {
    color: #fff;
  }

  section.filters:not(.new) div.filter-group div.filter.active {
    background: #000;
    border-color: #000;
    color: #fff;
  }

  section.filters div.reset {
    color: #fff;
    font-size: 11px;
    position: absolute;
  }

  section.filters.new div.filter-group div.filter ul li.active {
    color: #fff;
  }

  section.filters.new div.filter-group div.filter ul li:last-of-type {
    padding: 7px 0 0 0;
  }

  section.filters.white {
    background: #fff;
  }

  section.filters.white small.toggle_filters,
  section.filters.white div.reset {
    color: #000;
  }

  section.filters.white div.filters {
    background: #000;
    color: #fff;
  }

  section.filters.white div.filter-group div.filter {
    border: 1px solid #7f7f7f;
  }

  section.filters.white div.filter-group div.filter ul {
    background: #fff;
  }

  section.filters.white div.filter-group div.filter ul li:hover {
    color: #000;
  }

  section.filters.white div.filter-group div.filter.active {
    background: #fff;
    border-color: #fff;
    color: #000;
  }

  section.video {
    height: calc(100% - 60px);
    top: 60px;
    z-index: 4000;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  section.campus-blocks > div {
    display: inline-block;
    vertical-align: top;
    width: 50%;
  }

  section.article div.alumni a.button {
    bottom: 39px;
    position: absolute;
    right: 0;
  }

  body.media-gallery section.article div.alumni a.button {
    bottom: 51px;
  }

  section.form iframe {
    height: 230px;
  }

  section.faqs div.container h2 {
    margin-top: 83px;
    padding-bottom: 40px;
  }

  section.faqs div.container h2:not(:first-of-type) {
    margin-top: 116px;
  }

  section.faqs div.container > ul > li {
    padding: 33px 0 11px 0;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  section h2 div.share {
    position: absolute;
    top: 16px;
  }

  section.intro a::before {
    border-bottom-color: #a37e27;
    bottom: 3px;
  }

  section.subsections div.container > div {
    margin-bottom: 64px;
  }

  section.subsections div.content p a::before {
    bottom: 2px;
  }

  section.campus-blocks > div {
    font-size: 16px;
    line-height: 28px;
    height: 760px;
    padding: 106px 72px 0 72px;
  }

  section.campus-blocks > div h2 {
    font-size: 46px;
    line-height: 46px;
    margin-bottom: 20px;
  }

  section.campus-blocks > div a.button {
    font-size: 15px;
    height: 40px;
    line-height: 40px;
  }

  section.articles ul li div {
    margin-right: 10%;
  }

  section.faqs div.container > ul > li div.text a::before {
    bottom: 2px;
  }

  body.media-gallery section.article div.alumni h3 {
    max-width: 700px;
  }

  section.filters {
    height: 74px;
    line-height: 74px;
    max-height: 74px;
    position: relative;
    z-index: 20;
  }

  section.filters small.toggle_filters {
    display: none;
  }

  section.filters div.filter-group {
    display: inline-block;
  }

  section.filters div.filter-group div.filter.wide {
    width: 178px;
  }

  section.filters.new div.filter-group {
    display: -webkit-inline-flex;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
  }

  section.filters.new div.filter-group:not(:last-of-type) {
    margin-right: 30px;
  }

  section.filters.new div.filter-group > small {
    display: none;
  }

  section.filters.new div.filter-group div.filter {
    margin-right: 0;
  }

  section.filters.new div.filter-group div.filter small {
    display: block;
    height: 33px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: pre;
    width: calc(100% - 28px);
  }

  section.filters.new div.filter-group div.filter ul li.active {
    color: #000 !important;
  }

  section.filters.new div.filter-group div.filter ul li:not(.disabled):hover {
    color: #848484;
  }

  section.filters.new div.filter-group div.filter ul li.disabled {
    cursor: default;
    opacity: 0.5;
  }

  section.filters.new div.filter-group div.filter ul li:last-of-type {
    padding: 7px 0 0 0;
  }

  section.filters div.filter-group > small {
    color: #fff;
    margin-right: 30px;
  }

  section.filters div.reset > small {
    color: #fff;
    font-size: 11px;
    transition: color 0.25s;
  }

  section.filters div.reset > small:hover {
    color: #a9a9a9;
  }

  section.filters div.filter-group div.filter {
    border: 1px solid #6f6f6f;
    color: #fff;
    font-size: 11px;
    padding-left: 10px;
  }

  section.filters div.filter-group div.filter ul {
    background: #fff;
    padding-top: 7px;
    top: 32px;
  }

  section.filters div.filter-group div.filter ul li {
    color: #888;
    line-height: 16px;
    padding: 7px 10px;
  }

  section.filters:not(.new) div.filter-group div.filter ul li:hover {
    color: #000;
  }

  section.filters:not(.new) div.filter-group div.filter.active {
    background: #fff;
    border-color: #fff;
    color: #000;
  }

  div.share-article div.share {
    margin-left: 87px;
  }

  section.form div.container {
    padding-top: 76px !important;
  }

  section.video div.video-info {
    background: #fff;
    height: 100%;
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 2;
    transition: top 0.5s 0.35s;
  }

  body.video section.video div.video-info div.container {
    padding-top: 120px;
    opacity: 0;
    transition: opacity 0.35s, left 0s 0.4s;
  }

  body.video section.video div.video-info div.container > strong {
    display: block;
    font-family: "MercuryDisplay", serif;
    font-size: 34px;
    font-weight: 600;
    line-height: 43px;
    margin-bottom: 34px;
  }

  body.video section.video div.video-info div.text {
    font-size: 16px;
    line-height: 28px;
    margin-bottom: 41px;
  }

  body.video.video-information section.video div.video-info {
    left: 0;
    top: 0;
    transition: top 0.5s;
  }

  body.video.video-information section.video div.video-info div.container {
    opacity: 1;
    transition: opacity 0.25s 0.55s;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  section.faqs {
    padding: 22px 0 67px 0;
  }

  section.filters.new div.filter-group:not(:last-of-type) > div.filter {
    width: 142px;
  }

  section.filters div.filter-group > small {
    margin-right: 18px;
  }

  section.filters div.filter-group div.filter {
    margin-right: 14px;
  }

  section.news-events.news div.news ul {
    margin-left: calc(50% - 460px);
  }

  section.quote {
    height: 588px;
  }

  section.quote blockquote {
    font-size: 54px;
    line-height: 54px;
  }

  section.quote blockquote::before {
    top: -31px;
  }

  section.quote blockquote small {
    font-size: 22px;
    line-height: 28px;
    margin-top: 40px;
  }

  section.gallery div.image_container {
    height: 440px;
  }

  section.gallery div.image_container div.images span.image_bg {
    width: 920px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  section.faqs {
    padding: 46px 0 67px 0;
  }

  section.filters.new div.filter-group:not(:last-of-type) > div.filter {
    width: 160px;
  }

  section.filters div.filter-group div.filter {
    margin-right: 40px;
  }

  section.news-events.news div.news ul {
    margin-left: calc(50% - 520px);
  }

  section.quote {
    height: 730px;
  }

  section.quote blockquote {
    font-size: 66px;
    line-height: 68px;
  }

  section.quote blockquote::before {
    top: -34px;
  }

  section.quote blockquote small {
    font-size: 22px;
    line-height: 28px;
    margin-top: 43px;
  }

  section.gallery div.image_container {
    height: 577px;
  }

  section.gallery div.image_container div.images span.image_bg {
    width: 1040px;
  }
}

/** Homepage **************************************************/
body.homepage section.banner > span {
  border-style: solid;
  border-width: 2px 2px 0 0;
  bottom: 40px;
  cursor: pointer;
  display: block;
  height: 12px;
  left: calc(50% - 5px);
  position: absolute;
  width: 12px;
  z-index: 2;
  transform: rotate(135deg);
}

body.homepage section.banner #ticker + span {
  bottom: 106px;
}

body.homepage section.campuses {
  width: 100%;
}

body.homepage section.campuses h2 {
  border-top-color: #000;
  margin-bottom: 32px;
}

body.homepage section.campuses div.campus {
  position: relative;
  top: 0;
}

body.homepage section.campuses div.campus h3 {
  font-size: 24px;
  font-weight: bold;
  left: 50%;
  line-height: 28px;
  position: absolute;
  text-align: center;
  transform: translateX(-50%);
}

body.homepage section.campuses div.campus h3::after {
  border-left: 2px solid #a37e27;
  content: " ";
  display: block;
  height: 120px;
  left: calc(50% - 1px);
  opacity: 0.5;
  position: absolute;
}

body.homepage section.campuses div.campus > div {
  display: block;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

body.homepage section.campuses div.campus div em {
  color: #fff;
  font-family: "MercuryDisplay", serif;
  font-size: 31px;
  font-weight: bold;
  left: 50%;
  line-height: 32px;
  padding: 0 40px;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 332px;
  opacity: 1;
  transform: translate(-50%, -50%);
}

body.homepage section.campuses div.campus div span:first-of-type {
  bottom: -32px;
  height: 32px;
  overflow: hidden;
  position: absolute;
  right: -1px;
  width: 100px;
}

body.homepage section.campuses div.campus div span:first-of-type a.button {
  bottom: 0;
  font-size: 14px;
  height: 32px;
  line-height: 32px;
  position: absolute;
  width: 100px;
  opacity: 1;
}

body.homepage section.campuses div.campus > div::before,
body.homepage section.campuses div.campus > div::after,
body.homepage section.campuses div.campus div span:last-of-type::before,
body.homepage section.campuses div.campus div span:last-of-type::after {
  border-color: #fff;
  border-style: solid;
  border-width: 0;
  content: " ";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
  z-index: -1;
}

body.homepage section.campuses div.campus > div::before {
  border-top-width: 1px;
  left: 0;
  top: -1px;
}

body.homepage section.campuses div.campus > div::after {
  border-bottom-width: 1px;
  bottom: 0;
  right: -1px;
  top: auto;
}

body.homepage section.campuses div.campus div span:last-of-type::before {
  border-left-width: 1px;
  bottom: 0;
  left: 0;
  top: auto;
}

body.homepage section.campuses div.campus div span:last-of-type::after {
  border-right-width: 1px;
  right: -1px;
  top: -1px;
}

body.homepage section.campuses div.campus.tile {
  float: left;
  height: 230px;
  width: 332px;
}

body.homepage section.campuses div.campus.tile h3::after {
  border-left: 1px solid #a37e27;
  height: 93px;
  left: 50%;
}

body.homepage section.campuses div.campus.tile div {
  height: calc(100% - 60px);
  width: calc(100% - 60px);
}

body.homepage section.campuses div.campus.tile div em {
  left: 0;
  width: 100%;
  transform: none;
}

body.homepage section.campuses div.campus.tile div em h3 {
  display: none;
}

body.homepage section.campuses div.campus.tile div em p {
  display: inline;
  font-size: inherit;
  line-height: inherit;
}

body.homepage section.campuses div.campus.tile div em sup {
  border-top: 6px solid #a37e27;
  display: block;
  margin: 36px auto 24px auto;
  width: 47px;
}

body.homepage section.campuses div.campus.tile div em sub {
  display: block;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 12px;
  line-height: 26px;
  text-transform: uppercase;
}

body.homepage section.campuses div.campus.tile div em sub p {
  font-size: 12px;
}

body.homepage section.campuses div.campus.tile div em sub p a {
  color: #fff;
  margin: 0 12px;
}

body.homepage section.campuses div.campus.tile div em sub p a::before {
  border-bottom-color: #fff;
  bottom: 3px;
}

body.homepage section.campuses div.campus.london {
  width: 100%;
}

body.homepage section.campuses div.campus.los-angeles,
body.homepage section.campuses div.campus.new-york {
  float: left;
}

body.homepage section.campuses div.campus.london div {
  height: 196px;
  width: 488px;
}

body.homepage section.campuses div.campus.los-angeles div,
body.homepage section.campuses div.campus.new-york div {
  height: 230px;
  width: 332px;
}

body.homepage section.campus-blocks div.text.links {
  font-weight: 700;
  position: absolute;
  text-transform: uppercase;
}

body.homepage section.campus-blocks div.text.links a {
  color: #fff;
}

body.homepage section.campus-blocks div.text.links a::before {
  border-bottom-color: #fff;
}

body.homepage section.news-events div.container div {
  float: left;
  vertical-align: top;
  width: 50%;
}

body.homepage section.news-events div h3 {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 43px;
  text-align: center;
}

body.homepage section.news-events div h3 span {
  display: none;
}

body.homepage section.news-events div ul li {
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 34px;
  position: relative;
}

body.homepage section.news-events div ul li a::before {
  display: none;
}

body.homepage section.news-events div > a.button {
  display: block;
  height: 32px;
  line-height: 32px;
  margin: 0 auto;
  width: 100px;
}

body.homepage section.news-events div.news {
  border-right: 1px solid #ddd4be;
  padding-right: 47px;
}

body.homepage section.news-events div.news ul li {
  float: left;
  width: calc(50% - 10px);
}

body.homepage section.news-events div.news ul li img:first-of-type,
body.homepage section.news-events div.events ul li img:first-of-type {
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
  opacity: 0;
  z-index: -1;
}

body.homepage section.news-events div.news ul li:nth-child(odd) {
  margin-right: 20px;
}

body.homepage section.news-events div.events {
  padding-left: 47px;
}

body.homepage section.news-events div.events ul li {
  width: 100%;
}

body.homepage section.social {
  background: #f0f0f0;
}

body.homepage section.social ul {
  font-size: 0;
  line-height: 0;
}

body.homepage section.social ul li {
  display: inline-block;
  position: relative;
  width: 25%;
}

body.homepage section.social ul li:nth-last-of-type(-n + 5) {
  display: none;
}

body.homepage section.social ul li.video {
  cursor: pointer;
  width: 50%;
}

body.homepage section.social ul li.video a {
  position: relative;
}

body.homepage section.social ul li a {
  display: block;
  height: 100%;
  width: 100%;
}

body.homepage section.social ul li a::before {
  background-position: center center;
  background-repeat: no-repeat;
  border: 7px solid #fff;
  bottom: auto;
  content: " ";
  display: block;
  height: 107px;
  left: 50%;
  margin: -58px 0 0 -58px;
  position: absolute;
  right: 0;
  top: 50%;
  width: 107px;
  z-index: 4;
  opacity: 0;
  border-radius: 50%;
  transform: scale(0.9);
  transition: transform 0.25s, opacity 0.25s;
}

body.homepage section.social ul li.video a::before {
  background-image: url("../images/icons_video.png");
}

body.homepage section.social ul li:not(.video) a::before {
  background-image: url("../images/icons_instagram.png");
}

body.homepage section.social ul li img:first-of-type {
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
  opacity: 0;
  z-index: -1;
}

body.homepage section.social ul li a:hover::before {
  opacity: 1;
  transform: scale(1);
}

body.homepage section.social ul li a::after {
  background: #000;
  content: " ";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 3;
  opacity: 0;
  transition: opacity 0.25s;
}

body.homepage section.social ul li a:hover::after {
  opacity: 0.75;
}

body.homepage footer section#quick-access {
  display: block;
}

body.homepage footer section#quick-access > div > ul > li {
  border-right: 1px solid #d7c7a1;
}

body.homepage footer section#quick-access > div > ul > li > ul li {
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  line-height: 17px;
  margin-bottom: 0.7rem;
  padding-left: 0;
  width: 100%;
}

body.homepage footer section#quick-access ul li.general {
  border-right: none;
}

body.homepage footer section#quick-access ul li a:not(:last-of-type) {
  margin-bottom: 11px;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.homepage section.banner #ticker {
    display: none;
  }

  body.homepage section.banner.landing > span {
    bottom: 30px;
  }

  body.homepage > section h2::before {
    border-top-width: 5px;
    top: -31px;
    width: 42px;
  }

  body.homepage section.campuses {
    padding: 64px 0 32px 0;
  }

  body.homepage section.campuses p {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 22px;
  }

  body.homepage section.campuses div.campus.tile {
    height: auto;
    margin-bottom: 18px;
    padding-bottom: 100%;
  }

  body.homepage section.campuses div.campus.tile h3 {
    display: none;
  }

  body.homepage section.campuses div.campus.tile div em {
    display: block;
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-size: 28px;
    line-height: 36px;
    padding: 0;
    top: 50%;
    transform: translateY(-50%);
  }

  body.homepage section.campuses div.campus.tile div em h3 {
    display: block;
    left: 0;
    position: relative;
    text-align: center;
    top: 0;
    white-space: nowrap;
    width: 100%;
    transform: none;
  }

  body.homepage section.campuses div.campus.tile div em > p {
    display: none;
  }

  body.homepage section.campuses div.campus.tile div em sup {
    margin-top: 28px;
    width: 47px;
  }

  body.homepage section.campuses div.campus.tile div em sub {
    margin: 0 auto;
    max-width: 360px;
  }

  body.homepage section.campuses div.campus.tile div em sub p a::before {
    display: none;
  }

  body.homepage section.campuses div.campus.london,
  body.homepage section.campuses div.campus.los-angeles,
  body.homepage section.campuses div.campus.new-york {
    float: none;
    height: auto;
    margin-bottom: 18px;
    padding-bottom: 100%;
    width: 100%;
  }

  body.homepage section.campuses div.campus.los-angeles {
    margin-bottom: 0;
  }

  body.homepage section.campuses div.campus h3 {
    color: #fff;
    top: 50%;
    transform: translate(-50%, -50%);
  }

  body.homepage section.campuses div.campus h3::after {
    display: none;
  }

  body.homepage section.campuses div.campus h3 strong {
    display: block;
  }

  body.homepage section.campuses div.campus em {
    display: none;
  }

  body.homepage section.campuses div.campus:not(.tile) > div:first-of-type {
    height: calc(100% - 146px) !important;
    width: calc(100% - 120px) !important;
  }

  body.homepage section.campus-blocks h2 {
    white-space: normal;
  }

  body.homepage section.campus-blocks div.text.links {
    bottom: 5px;
    font-size: 10px;
  }

  body.homepage section.campus-blocks div.text.links a {
    line-height: 20px;
    margin-top: 10px;
  }

  body.homepage section.news-events {
    padding: 65px 0 32px 0;
  }

  body.homepage section.news-events h2 {
    display: none;
  }

  body.homepage section.news-events div h3 {
    font-family: "MercuryDisplay", serif;
    font-size: 35px;
    font-weight: bold;
    margin-bottom: 41px;
    text-align: left;
    text-indent: -999px;
  }

  body.homepage section.news-events div h3::before {
    border-top: 5px solid #000;
    content: " ";
    display: block;
    left: 0;
    position: absolute;
    top: -16px;
    width: 42px;
  }

  body.homepage section.news-events div h3 span {
    display: block;
    text-indent: 0;
  }

  body.homepage section.news-events div.container div {
    border-right: 0;
    display: block;
    float: none;
    padding: 0;
    position: relative;
    width: 100%;
  }

  body.homepage section.news-events div.news ul li {
    float: none;
    width: 100%;
  }

  body.homepage section.news-events div ul li {
    margin-bottom: 13px;
    padding-bottom: 24px;
  }

  body.homepage section.news-events div ul li:first-of-type {
    border-bottom: 1px solid #ddd4be;
    margin-bottom: 29px;
  }

  body.homepage section.news-events div ul li > a:first-of-type {
    height: auto;
    margin-bottom: 18px;
  }

  body.homepage section.news-events div ul li > a:last-of-type {
    background: none;
    display: inline;
    font-size: 12px;
    line-height: 20px;
    padding-bottom: 0;
    pointer-events: none;
    position: relative;
    opacity: 1;
  }

  body.homepage section.news-events div ul li > a:last-of-type small {
    color: #000;
    display: inline;
    padding: 0;
    pointer-events: none;
    position: relative;
  }

  body.homepage section.news-events div ul li > a:last-of-type span.button {
    background: none;
    border-bottom: 1px solid #a37e27;
    color: #a37e27;
    display: inline-block;
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-style: normal;
    height: auto;
    line-height: 14px;
    padding: 0;
    pointer-events: auto;
    position: relative;
  }

  body.homepage section.news-events div ul li em {
    display: block;
    font-size: 14px;
    line-height: 17px;
    margin-bottom: 9px;
    white-space: pre-line;
  }

  body.homepage section.news-events div ul li strong a {
    font-size: 16px;
    line-height: 20px;
  }

  body.homepage section.news-events div ul li:nth-child(2) > a:first-of-type {
    display: none;
  }

  body.homepage section.news-events div ul li:nth-child(n + 3) {
    display: none;
  }

  body.homepage section.news-events div.container div > a.button {
    font-size: 14px;
    margin: 0;
  }

  body.homepage section.news-events div.news {
    margin-bottom: 82px;
  }

  body.homepage section.social div.container {
    padding: 65px 0 35px 0;
  }

  body.homepage section.social ul li {
    width: 50%;
  }

  body.homepage section.social ul li.video {
    width: 100%;
  }

  body.homepage footer section#quick-access div.container {
    padding: 49px 0 17px 0;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.homepage section.banner #ticker a {
    font-size: 15px;
    left: 22px;
    max-width: calc(100% - 104px - 22px);
  }

  body.homepage section.banner #ticker button.prev {
    right: 64px;
  }

  body.homepage section.banner #ticker button.next {
    right: 20px;
  }

  body.homepage section.campuses div.container {
    padding-top: 94px;
  }

  body.homepage section.campuses p {
    margin-bottom: 57px;
  }

  body.homepage section.campuses.old div.container {
    padding-bottom: 70px;
  }

  body.homepage section.campuses.old p {
    margin-bottom: 159px;
  }

  body.homepage section.campuses h2 span:first-of-type {
    display: inline;
  }

  body.homepage section.campuses h2 span:nth-child(3)::before {
    content: " ";
    display: block;
  }

  body.homepage section.campuses.new div.container > p {
    margin-bottom: 191px;
  }

  body.homepage section.campuses div.campus.tile {
    margin-bottom: 168px;
    padding-bottom: 67%;
  }

  body.homepage section.campuses div.campus.tile div em {
    font-size: 28px;
    line-height: 36px;
    padding: 0 60px;
    top: 50%;
    transform: translateY(-50%);
  }

  body.homepage section.campuses div.campus.tile div em p br {
    display: none;
  }

  body.homepage section.campuses div.campus.tile div em sup {
    margin-top: 32px;
    width: 47px;
  }

  body.homepage section.campuses div.campus.tile div em sub {
    margin: 0 auto;
    max-width: 360px;
  }

  body.homepage section.campuses div.campus.london,
  body.homepage section.campuses div.campus.los-angeles,
  body.homepage section.campuses div.campus.new-york {
    float: none;
    margin-bottom: 168px;
    padding-bottom: 67%;
    width: 100%;
  }

  body.homepage section.campuses div.campus.los-angeles {
    margin-bottom: 0;
  }

  body.homepage section.campuses div.campus h3 {
    top: -110px;
  }

  body.homepage section.campuses div.campus h3::after {
    top: 65px;
  }

  body.homepage section.campuses div.campus h3 strong {
    display: block;
  }

  body.homepage section.campuses div.campus:not(.tile) > div:first-of-type {
    height: 196px !important;
    width: 488px !important;
  }

  body.homepage section.campus-blocks div.text.links {
    bottom: 20px;
  }

  body.homepage section.news-events div.container {
    padding: 93px 0 70px 0;
  }

  body.homepage section.news-events h2 {
    margin-bottom: 83px;
  }

  body.homepage section.news-events div.news ul li {
    width: 100%;
  }

  body.homepage section.news-events div ul li em {
    white-space: pre-line;
  }

  body.homepage section.news-events div ul li > a:first-of-type {
    height: auto;
  }

  body.homepage section.news-events div ul li > a:last-of-type {
    padding-bottom: 100%;
  }

  body.homepage section.news-events div.news ul li:nth-child(n + 3) {
    display: none;
  }

  body.homepage footer section#quick-access div.container {
    padding: 69px 0 44px 0;
  }

  body.homepage footer section#quick-access h2 {
    margin-bottom: 41px;
    position: relative;
  }

  body.homepage footer section#quick-access ul {
    margin-left: -42px;
    width: 705px;
    column-count: 3;
    column-rule: 1px outset #d7c7a1;
    -webkit-column-count: 3;
    -webkit-column-rule: 1px outset #d7c7a1;
    -moz-column-count: 3;
    -moz-column-rule: 1px outset #d7c7a1;
  }

  body.homepage footer section#quick-access ul li {
    border-right: none;
    display: block;
    position: relative;
  }

  body.homepage footer section#quick-access ul li:not(:last-of-type) {
    margin-bottom: 11px;
  }

  body.homepage footer section#quick-access ul li a {
    display: block;
  }

  body.homepage footer section#quick-access ul li:first-of-type a,
  body.homepage
    footer
    section#quick-access
    ul
    li:nth-of-type(2)
    a:nth-child(-n + 2) {
    margin-left: 42px;
    width: 190px;
  }

  body.homepage
    footer
    section#quick-access
    ul
    li:nth-of-type(3)
    a:nth-child(n + 5),
  body.homepage footer section#quick-access ul li:nth-of-type(4) a {
    margin-left: 37px;
    width: 165px;
  }

  body.homepage
    footer
    section#quick-access
    ul
    li:nth-of-type(3)
    a:nth-child(5) {
    display: inline-block;
  }

  body.homepage footer section#quick-access ul li h2 {
    position: absolute;
    top: -67px;
  }

  body.homepage footer section#quick-access ul li a::before {
    display: none;
  }

  body.homepage section.social div.container {
    padding: 23px 0 35px 0;
  }
}

/** Tablet Portrait **********/
@media all and (min-width: 768px) and (max-width: 960px) {
  body.homepage section.banner #ticker a strong {
    display: block;
  }

  body.homepage
    footer
    section#quick-access
    ul
    li:nth-of-type(2)
    a:nth-child(n + 3),
  body.homepage
    footer
    section#quick-access
    ul
    li:nth-of-type(3)
    a:nth-child(-n + 4) {
    margin-left: 42px;
  }
}

/** Tablet Landscape **********/
@media all and (min-width: 961px) and (max-width: 1024px) {
  body.homepage
    footer
    section#quick-access
    ul
    li:nth-of-type(2)
    a:nth-child(-n + 3) {
    margin-left: 10px;
  }
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  body.homepage section.banner.landing > span::after {
    background: none;
    content: " ";
    display: block;
    height: 50px;
    left: -19px;
    position: absolute;
    top: -19px;
    width: 50px;
  }

  body.homepage section.banner video {
    display: none;
  }

  body.homepage section.campus-blocks div.text.links p {
    display: inline;
  }

  body.homepage section.campus-blocks div.text.links p:not(:last-of-type) {
    margin-right: 5px;
  }

  body.homepage section.campuses div.campus.tile {
    float: none;
    width: 100%;
  }

  body.homepage section.campuses div.campus.tile:last-of-type {
    margin-bottom: 0;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.homepage section.banner #ticker {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    height: 66px;
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 2;
    transition: bottom 0.6s ease 0.75s;
  }

  body.homepage section.banner #ticker a {
    color: #fff;
    display: block;
    font-weight: 300;
    height: auto;
    line-height: normal;
    padding: 0;
    position: absolute;
    pointer-events: none;
    top: 50%;
    opacity: 0;
    transform: translateY(-50%);
    transition: opacity ease-out 0.4s;
  }

  body.homepage section.banner #ticker a.active {
    pointer-events: auto;
    opacity: 1;
    transition: opacity ease-out 0.6s 0.4s;
  }

  body.homepage section.banner #ticker a::before {
    display: none;
  }

  body.homepage section.banner #ticker a strong {
    color: #a37e27;
    font-weight: bold;
  }

  body.homepage section.banner #ticker button {
    background: none;
    display: block;
    height: 20px;
    padding: 0;
    position: absolute;
    top: 50%;
    width: 20px;
    transform: translateY(-50%);
  }

  body.homepage section.banner #ticker button::after {
    border-style: solid;
    border-width: 2px 2px 0 0;
    content: " ";
    display: block;
    height: 8px;
    left: calc(50% - 6px);
    position: absolute;
    top: calc(50% - 5px);
    width: 8px;
    z-index: 2;
    transform: rotate(45deg);
  }

  body.homepage section.banner #ticker button.prev {
    transform: rotate(180deg) translateY(50%);
  }

  body.homepage section.campuses p {
    font-size: 18px;
    line-height: 28px;
  }

  body.homepage section.campus-blocks div.text.links {
    font-size: 12px;
    padding-right: 40px;
  }

  body.homepage section.campus-blocks div.text.links a {
    line-height: 28px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.homepage section.banner h1 {
    margin-bottom: 20px;
  }

  body.homepage section.banner #ticker a {
    left: 52px;
    max-width: calc(100% - 180px - 52px);
  }

  body.homepage section.banner #ticker button.prev {
    right: 117px;
  }

  body.homepage section.banner #ticker button.next {
    right: 52px;
  }

  body.homepage.init header:not(.sticky) {
    top: -155px;
  }

  body.homepage.init header nav {
    display: none;
  }

  body.homepage.init section.banner #ticker {
    bottom: -66px;
  }

  body.homepage section.banner {
    background-image: none !important;
  }

  body.homepage section.banner h1,
  body.homepage section.banner a.button {
    position: relative;
    opacity: 1;
    transition: opacity 0.7s ease 1.6s;
  }

  body.homepage section.banner > span {
    opacity: 1;
    transition: opacity 1s ease 2.6s, bottom 1s ease 2.6s;
  }

  body.homepage.init section.banner > span {
    bottom: 60px;
  }

  body.homepage.init section.banner h1,
  body.homepage.init section.banner a.button,
  body.homepage.init section.banner > span {
    opacity: 0;
  }

  body.homepage section.campuses div.container {
    overflow: hidden;
    padding-bottom: 100px;
    padding-top: 133px;
  }

  body.homepage section.campuses div.container > p {
    margin-bottom: 191px;
  }

  body.homepage section.campuses.old div.container {
    padding-bottom: 206px;
  }

  body.homepage section.campuses.old p {
    margin-bottom: 191px;
  }

  body.homepage section.campuses h2 span:nth-child(3)::before {
    content: " ";
    display: block;
  }

  body.homepage section.campuses div.campus.tile:not(.bottom) {
    margin-bottom: 205px;
  }

  body.homepage section.campuses div.campus.tile h3 {
    top: -119px;
  }

  body.homepage section.campuses div.campus.tile h3::after {
    top: 43px;
  }

  body.homepage section.campuses div.campus.tile div em {
    font-size: 31px;
    line-height: 36px;
    padding: 0 20px;
    top: 125px;
  }

  body.homepage section.campuses div.campus.tile div em sup {
    border-top: 6px solid #a37e27;
    display: block;
    margin: 36px auto 24px auto;
    width: 47px;
  }

  body.homepage section.campuses div.campus.tile div em sub {
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-size: 12px;
    line-height: 26px;
    text-transform: uppercase;
  }

  body.homepage section.campuses div.campus.tile div em sub p a {
    color: #fff;
    margin: 0 12px;
  }

  body.homepage section.campuses div.campus.tile div em sub p a::before {
    border-bottom-color: #fff;
    bottom: 3px;
  }

  body.homepage section.campuses div.campus:not(.active) {
    top: 150px;
    opacity: 0;
  }

  body.homepage section.campuses div.campus:not(.active) > div::before,
  body.homepage section.campuses div.campus:not(.active) > div::after {
    width: 0;
  }

  body.homepage
    section.campuses
    div.campus:not(.active)
    div
    span:first-of-type
    a.button {
    bottom: 32px;
    opacity: 0;
  }

  body.homepage
    section.campuses
    div.campus:not(.active)
    div
    span:last-of-type::before,
  body.homepage
    section.campuses
    div.campus:not(.active)
    div
    span:last-of-type::after {
    height: 0;
  }

  body.homepage section.campuses div.campus:not(.active) div em {
    top: calc(50% + 10px);
    opacity: 0;
  }

  body.homepage section.campuses div.campus.animate {
    transition: opacity 1s ease, top 1s ease;
  }

  body.homepage section.campuses div.campus.animate > div::before {
    transition: width 0.8s ease 0.8s;
  }

  body.homepage section.campuses div.campus.animate > div::after {
    transition: width 0.8s ease 0.8s;
  }

  body.homepage
    section.campuses
    div.campus.animate
    div
    span:last-of-type::before {
    transition: height 0.8s ease 0.8s;
  }

  body.homepage
    section.campuses
    div.campus.animate
    div
    span:last-of-type::after {
    transition: height 0.8s ease 0.8s;
  }

  body.homepage section.campuses div.campus.animate div em {
    transition: opacity 0.6s ease 1s, top 0.6s ease 1s;
  }

  body.homepage
    section.campuses
    div.campus.animate
    div
    span:first-of-type
    a.button {
    transition: bottom 0.6s ease 1s, opacity 0.6s ease 1s;
  }

  body.homepage section.campus-blocks div.text.links {
    bottom: 45px;
  }

  body.homepage section.campus-blocks div.text.links p:not(:last-of-type) {
    margin-bottom: 10px;
  }

  body.homepage section.news-events {
    padding: 133px 0 94px 0;
  }

  body.homepage section.news-events h2 {
    margin-bottom: 84px;
  }

  body.homepage section.news-events div.events ul li > a:last-of-type {
    height: 226px;
    padding-bottom: 0;
  }

  body.homepage section.social div.container {
    padding: 42px 0 65px 0;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.homepage section.campuses div.campus h3 {
    width: 100%;
  }

  body.homepage section.campuses div.campus.tile {
    height: 558px;
    width: calc(50% - 20px);
  }

  body.homepage section.campuses div.campus.tile:nth-child(odd) {
    margin-right: 40px;
  }

  body.homepage section.campuses div.campus.tile div em {
    font-size: 28px;
    line-height: 32px;
    padding: 0 25px;
    top: 87px;
  }

  body.homepage section.campuses div.campus.tile div em p br {
    display: none;
  }

  body.homepage section.campuses div.campus.tile div em sup {
    margin-top: 32px;
    width: 47px;
  }

  body.homepage section.campuses div.campus.london {
    height: 552px;
    margin-bottom: 40px;
  }

  body.homepage section.campuses div.campus.los-angeles,
  body.homepage section.campuses div.campus.new-york {
    height: 558px;
    width: calc(50% - 20px);
  }

  body.homepage section.campuses div.campus.new-york {
    margin-right: 40px;
  }

  body.homepage section.campuses div.campus.los-angeles h3,
  body.homepage section.campuses div.campus.new-york h3 {
    bottom: -112px;
  }

  body.homepage section.campuses div.campus.london h3 {
    top: -97px;
  }

  body.homepage section.campuses div.campus.london h3::after {
    top: 35px;
  }

  body.homepage section.campuses div.campus.los-angeles h3::after,
  body.homepage section.campuses div.campus.new-york h3::after {
    bottom: 37px;
  }

  body.homepage section.news-events div ul li > a:first-of-type,
  body.homepage section.news-events div.events ul li > a:last-of-type {
    height: 196px;
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 7) {
    display: none;
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 4) {
    display: inline-block;
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 3) {
    display: none;
  }

  body.homepage footer section#quick-access div.container {
    padding: 91px 0 77px 0;
  }

  body.homepage footer section#quick-access h2 {
    margin-bottom: 41px;
    position: relative;
  }

  body.homepage footer section#quick-access ul li.campuses {
    width: 180px;
  }

  body.homepage footer section#quick-access ul li.programs {
    width: 245px;
  }

  body.homepage footer section#quick-access ul li.courses {
    width: 279px;
  }

  body.homepage footer section#quick-access ul li.general {
    width: 216px;
  }
}

/** Desktop Intermediate **********/
@media all and (min-width: 1025px) and (max-width: 1100px) {
  body.homepage section.banner #ticker a {
    font-size: 16px;
  }
}

/** Desktop Intermediate **********/
@media all and (min-width: 1101px) and (max-width: 1280px) {
  body.homepage section.banner #ticker a {
    font-size: 18px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  body.homepage section.banner #ticker a {
    font-size: 20px;
  }

  body.homepage section.campuses div.campus.tile {
    height: 630px;
    width: calc(50% - 23px);
  }

  body.homepage section.campuses div.campus.tile:nth-child(odd) {
    margin-right: 46px;
  }

  body.homepage section.campuses div.campus.tile div em {
    font-size: 31px;
    left: 0;
    line-height: 36px;
    padding: 0 20px;
    top: 125px;
    width: 100%;
    transform: none;
  }

  body.homepage section.campuses div.campus.tile div em sup {
    border-top: 6px solid #a37e27;
    display: block;
    margin: 36px auto 24px auto;
    width: 47px;
  }

  body.homepage section.campuses div.campus.london {
    height: 624px;
    margin-bottom: 46px;
  }

  body.homepage section.campuses div.campus.los-angeles,
  body.homepage section.campuses div.campus.new-york {
    height: 630px;
    width: calc(50% - 23px);
  }

  body.homepage section.campuses div.campus.new-york {
    margin-right: 46px;
  }

  body.homepage section.campuses div.campus.london div em {
    width: 488px;
  }

  body.homepage section.campuses div.campus.los-angeles h3,
  body.homepage section.campuses div.campus.new-york h3 {
    bottom: -112px;
  }

  body.homepage section.campuses div.campus.london h3 {
    top: -97px;
  }

  body.homepage section.campuses div.campus.london h3::after {
    top: 35px;
  }

  body.homepage section.campuses div.campus.los-angeles h3::after,
  body.homepage section.campuses div.campus.new-york h3::after {
    bottom: 37px;
  }

  body.homepage section.social ul li {
    width: 20%;
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 6) {
    display: none;
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 4) {
    display: inline-block;
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 2) {
    display: none;
  }

  body.homepage section.social ul li.video {
    width: 40%;
  }

  body.homepage footer section#quick-access div.container {
    padding: 91px 0 77px 0;
  }

  body.homepage footer section#quick-access h2 {
    margin-bottom: 41px;
    position: relative;
  }

  body.homepage footer section#quick-access ul li.campuses {
    width: 207px;
  }

  body.homepage footer section#quick-access ul li.programs {
    width: 280px;
  }

  body.homepage footer section#quick-access ul li.courses {
    width: 315px;
  }

  body.homepage footer section#quick-access ul li.general {
    width: 238px;
  }
}

@media all and (min-width: 1500px) {
  body.homepage section.social ul li {
    width: calc(100% / 6);
  }

  body.homepage section.social ul li.video {
    width: calc(100% / 3);
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 6) {
    display: inline-block;
  }

  body.homepage section.social ul li:nth-last-of-type(-n + 2) {
    display: none;
  }
}

/** About **************************************************/
body.about.overview section.highlight:after {
  background: #000;
  content: " ";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

body.about.overview section.highlight p {
  color: #fff;
  font-family: "MercuryDisplay", serif;
  font-weight: 600;
  z-index: 2;
}

body.about.overview section.overview strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-size: 38px;
  font-weight: 600;
  line-height: 45px;
  margin-bottom: 29px;
}

body.about.overview section.overview p {
  min-height: 1px;
}

body.about.overview section.overview img {
  position: absolute;
  top: 0;
}

body.about.overview section.overview div.container div {
  position: relative;
}

body.about.overview section.overview div.overview-left img {
  right: 0;
}

body.about.overview section.overview div.overview-right img {
  left: 0;
}

body.about.our-expertise section.navigation.expertise-navigation {
  background: #000;
  color: #fff;
  font-size: 0;
  text-align: center;
  text-transform: uppercase;
}

body.about.our-expertise section.navigation.expertise-navigation div.container {
  padding: 17px 0;
}

body.about.our-expertise section.navigation.expertise-navigation small {
  font-size: 11px;
  font-weight: bold;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

body.about.our-expertise section.navigation.expertise-navigation a {
  border: 1px solid #9f9f9f;
  color: #fff;
  display: inline-block;
  font-size: 11px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  transition: border-color 0.5s, color 0.5s;
}

body.about.our-expertise section.navigation.expertise-navigation a:hover,
body.about.our-expertise section.navigation.expertise-navigation a.active {
  border-color: #a37e27;
  color: #a37e27;
}

body.about.our-expertise section.navigation.expertise-navigation a::before {
  display: none;
}

body.about.our-expertise section.expertise {
  opacity: 0;
  pointer-events: auto;
  position: relative;
  top: 0;
  z-index: 1;
  transition: opacity 0.375s;
}

body.about.our-expertise section.expertise.show {
  opacity: 1;
}

body.about.our-expertise section.expertise:not(.active) {
  left: 50%;
  pointer-events: none;
  position: absolute;
  z-index: -1;
  transform: translateX(-50%);
}

body.about.our-expertise section.expertise div.container {
  padding: 71px 0 54px 0;
}

body.about.our-expertise section.expertise h2 {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 24px;
  font-weight: bold;
  line-height: 24px;
  margin-bottom: 33px;
}

body.about.our-expertise section.expertise h2::before {
  display: none;
}

body.about.our-expertise section.expertise div.video {
  margin-bottom: 10px;
}

body.about.our-expertise section.expertise div.video + small {
  display: block;
  font-weight: bold;
  margin: 0 0 58px 50%;
  text-transform: uppercase;
}

body.about.our-expertise section.expertise strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-size: 64px;
  font-weight: 600;
  left: 0;
  line-height: 68px;
  padding-right: 50px;
  position: absolute;
  width: 50%;
}

body.about.our-expertise section.expertise div.text {
  margin-left: 50%;
  width: 50%;
}

body.about.our-expertise section.expertise div.text strong {
  font-weight: bold;
}

body.about.our-expertise section.expertise div.text em {
  font-style: italic;
}

body.about.graduate-careers section.article.text-intro {
  padding-top: 0;
}

body.about.graduate-careers section.article.text-intro div.container {
  border-top: none;
}

body.about.graduate-careers section.article.text-intro h2 {
  margin-bottom: 32px;
}

body.about.graduate-careers section.graduate-careers p {
  font-family: "MercuryDisplay", serif;
  font-size: 66px;
  line-height: 68px;
  margin-bottom: 118px;
  position: relative;
}

body.about.graduate-careers section.graduate-careers p::before {
  border-top: 6px solid #000;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
  top: -34px;
  width: 56px;
}

body.about.graduate-careers section.graduate-careers strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-size: 46px;
  font-weight: bold;
  line-height: 46px;
  margin-bottom: 72px;
  position: relative;
}

body.about.graduate-careers section.graduate-careers strong::before {
  border-top: 6px solid #000;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
  top: -34px;
  width: 56px;
}

body.about.graduate-careers section.graduate-careers ul.working-in {
  font-size: 0;
  margin-bottom: 73px;
}

body.about.graduate-careers section.graduate-careers ul.working-in li {
  display: inline-block;
  width: 25%;
}

body.about.graduate-careers section.graduate-careers ul.working-in li small {
  color: #a37e27;
  display: block;
  font-size: 23px;
  line-height: 23px;
  margin-bottom: 5px;
  white-space: pre-line;
}

body.about.graduate-careers section.graduate-careers ul.working-in li em {
  font-family: "MercuryDisplay", serif;
  font-size: 109px;
  font-weight: bold;
  line-height: 109px;
}

body.about.graduate-careers section.graduate-careers div.video {
  margin-bottom: 110px;
}

body.about.graduate-careers section.graduate-careers {
  font-size: 0;
}

body.about.graduate-careers section.graduate-careers ul.working-at {
  font-size: 0;
}

body.about.graduate-careers section.graduate-careers ul.working-at li {
  float: left;
  height: 140px;
  position: relative;
  width: 50%;
}

body.about.graduate-careers section.graduate-careers ul.working-at li img {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

body.about.graduate-careers section.graduate-careers div.logos {
  display: inline-block;
  width: 50%;
}

body.about.careers section.text-intro {
  margin-bottom: 47px;
}

body.about.careers section.subsections + section.text-intro {
  padding-top: 38px;
}

body.about.careers section.profile {
  font-size: 14px;
  line-height: 26px;
  margin-bottom: 75px;
  min-height: 240px;
}

body.about.careers section.profile div.container {
  padding: 18px 0 0 298px;
}

body.about.careers section.profile h3 {
  font-family: "MercuryDisplay", serif;
  font-size: 36px;
  font-weight: bold;
  line-height: 36px;
  position: relative;
}

body.about.careers section.profile h3::before {
  border-top: 4px solid #000;
  content: " ";
  display: block;
  left: 0;
  position: absolute;
  top: -18px;
  width: 34px;
}

body.about.careers section.profile h3 + small {
  display: block;
  font-size: 16px;
  font-weight: bold;
  margin-top: 11px;
  margin-bottom: 25px;
}

body.about.careers section.profile img {
  height: 240px;
  left: 0;
  position: absolute;
  top: 0;
  width: 240px;
}

body.about.careers section.profile div.text strong {
  font-weight: bold;
}

body.about.careers section.profile div.text em {
  font-style: italic;
}

body.about.our-faculty section.faculty div.container {
  background: #333;
  width: 100%;
}

body.about.our-faculty section.faculty ul li {
  background: #333;
  display: block;
  float: left;
  height: auto;
  overflow: hidden;
  position: relative;
  transition: opacity 0.375s;
}

body.about.our-faculty section.faculty ul li:not(.loaded) {
  opacity: 0;
}

body.about.our-faculty section.faculty ul li strong {
  bottom: -19px;
  color: #fff;
  display: block;
  font-size: 300px;
  font-weight: 100;
  left: 0;
  line-height: 300px;
  position: absolute;
}

/*  body.about.our-faculty section.faculty ul li strong.flat { left: 0; }*/
body.about.our-faculty section.faculty ul li img {
  display: block;
  height: 100%;
  width: 100%;
}

body.about.our-faculty section.faculty ul li img:first-of-type {
  left: 0;
  position: absolute;
  top: 0;
}

body.about.our-faculty section.faculty ul li img:last-of-type {
  position: relative;
  opacity: 0;
}

body.about.our-faculty section.faculty ul li a {
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
}

body.about.our-faculty section.faculty ul li a::before {
  display: none;
}

body.about.our-faculty section.faculty ul li a span,
body.about.our-faculty section.faculty ul li a::after {
  border: none;
  bottom: auto;
  content: " ";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

body.about.our-faculty section.faculty ul li a span {
  opacity: 0.85;
  background: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0) 0,
    rgba(0, 0, 0, 0.95) 100%
  );
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0,
    rgba(0, 0, 0, 0.95) 100%
  );
  transition: opacity 0.375s;
}

body.about.our-faculty section.faculty ul li a::after {
  opacity: 0;
  background: -webkit-linear-gradient(
    bottom,
    rgba(0, 0, 0, 0) 0,
    rgba(0, 0, 0, 0.95) 110%
  );
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0) 0,
    rgba(0, 0, 0, 0.95) 110%
  );
  transition: all 0.375s;
}

body.about.our-faculty section.faculty ul li a em {
  bottom: 20px;
  color: #fff;
  display: block;
  font-size: 18px;
  font-weight: bold;
  line-height: 19px;
  padding: 0 24px;
  position: absolute;
  z-index: 2;
  transition: bottom 0.375s;
}

body.about.our-faculty section.faculty ul li a em small {
  display: block;
  font-size: 14px;
  font-weight: normal;
}

body.about.our-faculty section.faculty ul li a sub {
  bottom: 15px;
  color: #fff;
  display: block;
  font-size: 10px;
  font-weight: bold;
  left: 0;
  position: absolute;
  text-transform: uppercase;
  z-index: 2;
  opacity: 0;
  transition: all 0.375s;
}

body.about.our-faculty_detail section.text-intro {
  margin-bottom: 57px;
}

body.about.our-faculty_detail section.text-intro h2 {
  margin-bottom: 5px;
}

body.about.our-faculty_detail section.text-intro h2 + small {
  line-height: 24px;
}

body.about.our-faculty_detail section.text-intro div.contact {
  font-size: 14px;
  line-height: 36px;
  position: absolute;
  right: 0;
  top: 275px;
}

body.about.our-faculty_detail section.text-intro div.contact strong {
  display: block;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 6px;
}

body.about.our-faculty_detail section.text-intro div.contact small {
  display: block;
  padding-left: 28px;
  position: relative;
}

body.about.our-faculty_detail section.text-intro div.contact small a {
  color: inherit;
  transition: color 0.25s;
}

body.about.our-faculty_detail section.text-intro div.contact small a:hover {
  color: #b9b9b9;
}

body.about.our-faculty_detail section.text-intro div.contact small a::before {
  display: none;
}

body.about.our-faculty_detail section.text-intro div.contact small a::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  content: " ";
  display: block;
  left: -28px;
  position: absolute;
  top: 50%;
  width: 17px;
  transform: translateY(-50%);
}

body.about.our-faculty_detail
  section.text-intro
  div.contact
  small
  a.phone::after {
  background-image: url("../images/icons_phone.svg");
  height: 18px;
}

body.about.our-faculty_detail
  section.text-intro
  div.contact
  small
  a.email::after {
  background-image: url("../images/icons_email.svg");
  height: 18px;
}

body.about.our-faculty_detail
  section.text-intro
  div.contact
  small
  a.twitter::after {
  background-image: url("../images/icons_twitter.svg");
  height: 18px;
}

body.about.meet-our-alumni section.alumni {
  padding: 95px 0 55px 0;
}

body.about.meet-our-alumni section.alumni div.container {
  border-top: 1px solid #d1bf93;
}

body.about.meet-our-alumni section.alumni ul li {
  border-bottom: 1px solid #d1bf93;
}

body.about.meet-our-alumni section.alumni ul li div h3 {
  font-family: "MercuryDisplay", serif;
  font-weight: 600;
  margin-bottom: 17px;
}

body.about.meet-our-alumni section.alumni ul li div em {
  color: #a37e27;
  display: block;
  font-size: 17px;
  line-height: 24px;
}

body.about.meet-our-alumni section.alumni ul li div div.video-info {
  display: none;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.about.overview section.intro,
  body.about.overview section.highlight {
    margin-bottom: 18px;
  }

  body.about.overview section.highlight {
    margin-bottom: 29px;
    padding: 36px 0;
  }

  body.about.overview section.highlight:after {
    opacity: 0.55;
  }

  body.about.overview section.highlight p {
    font-size: 16px;
    line-height: 20px;
    position: relative;
  }

  body.about.overview section.overview {
    margin-bottom: 23px;
  }

  body.about.overview section.overview strong {
    font-size: 24px;
    font-weight: bold;
    line-height: 28px;
    margin-bottom: 10px;
  }

  body.about.overview section.overview p {
    font-size: 12px;
    line-height: 20px;
    width: auto;
  }

  body.about.overview section.overview img {
    display: block;
    height: 140px;
    margin-bottom: 25px;
    position: static;
    width: 140px;
  }

  body.about.overview section.highlight + section.overview img {
    display: none;
  }

  body.about.our-expertise section.navigation.expertise-navigation {
    height: auto;
  }

  body.about.our-expertise
    section.navigation.expertise-navigation
    div.container {
    padding: 0;
  }

  body.about.our-expertise
    section.navigation.expertise-navigation
    div.container:before {
    display: none;
  }

  body.about.our-expertise section.navigation.expertise-navigation a {
    border: none;
    border-bottom: 1px solid #999;
    display: block;
    height: 55px;
    line-height: 55px;
    margin: 0 auto;
  }

  body.about.our-expertise section.navigation.expertise-navigation a.active {
    border-color: #999;
  }

  body.about.our-expertise
    section.navigation.expertise-navigation
    a:last-of-type {
    border-bottom: none;
  }

  body.about.our-expertise section.expertise div.container {
    padding: 24px 0 33px 0;
  }

  body.about.our-expertise section.expertise h2 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 23px;
  }

  body.about.our-expertise section.expertise div.video + small {
    font-size: 9px;
    line-height: 9px;
    margin: 0 0 19px 0;
  }

  body.about.our-expertise section.expertise strong {
    font-size: 22px;
    font-weight: bold;
    line-height: 28px;
  }

  body.about.graduate-careers section.article.text-intro div.container {
    padding-top: 47px;
  }

  body.about.graduate-careers
    section.article.text-intro
    h2:not(:first-of-type) {
    margin-top: 53px;
  }

  body.about.graduate-careers section.graduate-careers p {
    font-size: 22px;
    font-weight: bold;
    line-height: 26px;
    margin-bottom: 57px;
  }

  body.about.graduate-careers section.graduate-careers p::before {
    border-top: 4px solid #000;
    top: -17px;
    width: 34px;
  }

  body.about.graduate-careers section.graduate-careers strong {
    font-size: 30px;
    line-height: 30px;
    margin-bottom: 72px;
  }

  body.about.graduate-careers section.graduate-careers strong::before {
    border-top: 4px solid #000;
    top: -17px;
    width: 34px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-in {
    font-size: 0;
    margin-bottom: 31px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-in li {
    display: inline-block;
    width: 50%;
  }

  body.about.graduate-careers
    section.graduate-careers
    ul.working-in
    li:nth-child(-n + 2) {
    margin-bottom: 34px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-in li small {
    font-size: 16px;
    line-height: 16px;
    margin-bottom: 1px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-in li em {
    font-size: 66px;
    line-height: 66px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-at li {
    width: 100%;
  }

  body.about.graduate-careers section.graduate-careers ul.working-at li img {
    max-width: 80%;
  }

  body.about.graduate-careers section.graduate-careers div.video {
    margin-bottom: 50px;
  }

  body.about.careers section.text-intro {
    margin-bottom: 23px;
  }

  body.about.careers section.profile {
    font-size: 12px;
    line-height: 20px;
    margin-bottom: 23px;
    min-height: auto;
  }

  body.about.careers section.profile div.container {
    padding: 0;
  }

  body.about.graduate-careers
    section.graduate-careers
    div.container.logo-container
    strong {
    margin-bottom: 26px;
  }

  body.about.careers section.profile h3 + small {
    font-size: 14px;
    margin-top: 5px;
    margin-bottom: 22px;
  }

  body.about.careers section.profile img {
    display: block;
    height: 140px;
    margin-bottom: 40px;
    position: static;
    width: 140px;
  }

  body.about.our-faculty section.letters {
    background: #000;
    font-size: 0;
    padding: 14px 0 5px 0;
  }

  body.about.our-faculty section.letters a {
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 8px;
    text-align: center;
    width: calc(100% / 13);
  }

  body.about.our-faculty section.letters a::before {
    display: none;
  }

  body.about.our-faculty section.letters a.disabled {
    color: #666;
    cursor: default;
    pointer-events: none;
  }

  body.about.our-faculty section.filters {
    background: #fff;
  }

  body.about.our-faculty section.filters small.toggle_filters,
  body.about.our-faculty section.filters div.reset {
    color: #000;
  }

  body.about.our-faculty section.filters div.filters {
    background: #000;
    color: #fff;
  }

  body.about.our-faculty section.filters div.filters div.filter.active {
    background: #fff;
    border-color: #fff;
    color: #000;
  }

  body.about.our-faculty section.filters div.filters div.filter ul {
    background: #fff;
  }

  body.about.our-faculty section.filters div.filters div.filter ul li {
    color: #000;
  }

  body.about.our-faculty
    section.filters
    div.filter-group
    div.filter
    ul
    li:hover {
    color: #fff;
  }

  body.about.our-faculty section.faculty div.container {
    margin: 0;
    width: 100%;
  }

  body.about.our-faculty section.faculty ul li {
    height: calc(100vw);
    width: 100%;
  }

  body.about.our-faculty section.faculty ul li strong {
    bottom: 0;
  }

  body.about.our-faculty section.faculty ul li img:first-of-type {
    left: 0;
    position: absolute;
    top: 0;
    transition: none;
  }

  body.about.our-faculty section.faculty ul li:not(.loaded) img:first-of-type {
    opacity: 1;
  }

  body.about.our-faculty_detail section.text-intro {
    margin-bottom: 32px;
  }

  body.about.our-faculty_detail section.text-intro div.image_bg {
    padding-bottom: 100%;
    width: 100%;
  }

  body.about.our-faculty_detail section.subsections {
    padding-bottom: 32px;
  }

  body.about.our-faculty_detail section.subsections ul + div.video {
    margin-top: 32px;
  }

  body.about.meet-our-alumni section.alumni {
    padding: 30px 0;
  }

  body.about.meet-our-alumni section.alumni div.container {
    border-top: 1px solid #d1bf93;
  }

  body.about.meet-our-alumni section.alumni ul li {
    padding: 20px 0 25px 0;
  }

  body.about.meet-our-alumni section.alumni ul li div h3 {
    font-size: 42px;
    line-height: 37px;
  }

  body.about.meet-our-alumni section.alumni ul li div em {
    font-size: 12px;
    line-height: 14px;
    margin-bottom: 6px;
  }

  body.about.meet-our-alumni section.alumni ul li div em:last-of-type {
    margin-bottom: 28px;
  }

  body.about.meet-our-alumni section.alumni ul li div strong,
  body.about.meet-our-alumni section.alumni ul li div p {
    display: none;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.about.overview section.intro,
  body.about.overview section.overview,
  body.about.overview section.highlight {
    margin-bottom: 50px;
  }

  body.about.overview section.highlight {
    height: 455px;
  }

  body.about.overview section.highlight p {
    font-size: 30px;
    line-height: 34px;
  }

  body.about.overview section.overview {
    width: 100%;
  }

  body.about.overview section.overview p {
    font-size: 15px;
    line-height: 22px;
  }

  body.about.our-expertise
    section.navigation.expertise-navigation
    div.container {
    width: 100%;
  }

  body.about.our-expertise
    section.navigation.expertise-navigation
    div.container {
    padding: 25px 0;
  }

  body.about.our-expertise section.expertise div.video + small {
    margin: 0 0 58px 0;
  }

  body.about.our-expertise section.expertise strong {
    font-size: 54px;
    line-height: 58px;
  }

  body.about.graduate-careers section.article.text-intro div.container {
    padding-top: 91px;
  }

  body.about.graduate-careers
    section.article.text-intro
    h2:not(:first-of-type) {
    margin-top: 91px;
  }

  body.about.graduate-careers section.graduate-careers p {
    font-size: 56px;
    line-height: 68px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-in li {
    width: 50%;
  }

  body.about.graduate-careers
    section.graduate-careers
    ul.working-in
    li:nth-child(-n + 2) {
    margin-bottom: 60px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-in li em {
    font-size: 100px;
    line-height: 100px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-at li img {
    transform: translate(-50%, -50%) scale(0.65);
  }

  body.about.careers section.text-intro {
    margin-bottom: 47px;
  }

  body.about.careers section.profile {
    min-height: auto;
  }

  body.about.careers section.profile div.container {
    padding: 0;
  }

  body.about.careers section.profile h3 + small {
    margin-top: 11px;
    margin-bottom: 22px;
  }

  body.about.careers section.profile img {
    display: block;
    height: 240px;
    margin-bottom: 40px;
    position: static;
    width: 240px;
  }

  body.about.our-faculty_detail section.text-intro div.image_bg {
    height: 250px;
    top: -160px;
    width: 250px;
  }

  body.about.our-faculty section.faculty ul li {
    width: calc(100% / 3);
  }

  body.about.our-faculty_detail section.text-intro {
    margin-bottom: 11px;
  }

  body.about.our-faculty_detail section.subsections {
    padding-bottom: 42px;
  }

  body.about.our-faculty_detail section.subsections ul + div.video {
    margin-top: 42px;
  }

  body.about.meet-our-alumni section.alumni {
    padding-top: 71px;
  }

  body.about.meet-our-alumni section.alumni ul li {
    height: 330px;
  }

  body.about.meet-our-alumni section.alumni ul li div h3 {
    font-size: 90px;
    line-height: 90px;
    white-space: pre-line;
  }

  body.about.meet-our-alumni section.alumni ul li.active div:first-of-type {
    top: -5px;
    opacity: 0;
    transition: opacity 0.5s, top 0.5s;
  }

  body.about.meet-our-alumni section.alumni ul li.active div:last-of-type {
    margin-top: 2px;
    pointer-events: auto;
    opacity: 1;
    transition: opacity 0.5s 0.15s, margin-top 0.5s 0.15s;
  }
}

/** Tablet Portrait **********/
@media all and (min-width: 768px) and (max-width: 960px) {
  section div.container {
    width: calc(100% - 144px);
  }

  body.about.overview section.overview strong {
    font-size: 21px;
    line-height: 25px;
    margin-bottom: 16px;
  }

  body.about.overview section.overview p {
    font-size: 15px;
    line-height: 22px;
  }

  body.about.overview section.overview img {
    height: 301px;
    width: 301px;
  }

  body.about.overview section.overview div.container div {
    min-height: 301px;
  }

  body.about.overview section.overview div.overview-left {
    padding-right: 316px;
  }

  body.about.overview section.overview div.overview-right {
    padding-left: 316px;
  }

  body.about.our-expertise section.navigation.expertise-navigation a {
    margin: 0 11px;
  }

  body.about.our-faculty section.faculty ul li strong {
    bottom: -11px;
    font-size: 200px;
    line-height: 200px;
  }
}

/** Tablet Landscape **********/
@media all and (min-width: 961px) and (max-width: 1024px) {
  body.about.overview section.overview strong {
    font-size: 30px;
    line-height: 34px;
    margin-bottom: 22px;
  }

  body.about.overview section.overview p {
    font-size: 16px;
    line-height: 24px;
  }

  body.about.overview section.overview img {
    height: 328px;
    width: 328px;
  }

  body.about.overview section.overview div.container div {
    min-height: 328px;
  }

  body.about.overview section.overview div.overview-left {
    padding-right: 353px;
  }

  body.about.overview section.overview div.overview-right {
    padding-left: 353px;
  }

  body.about.our-expertise section.navigation.expertise-navigation a {
    margin: 0 16px;
  }

  body.about.our-faculty section.faculty ul li strong {
    font-size: 260px;
    line-height: 260px;
  }
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  body.about.our-expertise section.navigation.expertise-navigation small {
    display: none;
  }

  body.about.our-expertise section.expertise strong {
    margin-bottom: 20px;
    padding-right: 0;
    position: static;
    width: auto;
  }

  body.about.our-expertise section.expertise div.text {
    margin-left: 0;
    width: auto;
  }

  body.about.our-faculty_detail section.text-intro h2 + small {
    margin-bottom: 10px;
  }

  body.about.our-faculty_detail section.text-intro div.contact {
    margin-bottom: 6px;
    position: relative;
    top: 0;
  }

  body.about.our-faculty_detail section.text-intro div.contact strong {
    display: none;
  }

  body.about.our-faculty_detail section.text-intro div.contact small {
    display: inline;
    font-size: 0;
  }

  body.about.our-faculty_detail section.text-intro div.text p:last-of-type {
    margin-bottom: 25px;
  }

  body.about.our-faculty_detail section.subsections ul {
    margin-bottom: 0;
  }
}

/** Tablet, Desktop Small & Large **********/
@media all and (min-width: 768px) {
  body.about.overview section.highlight:after {
    opacity: 0.45;
  }

  body.about.overview section.highlight p {
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }

  body.about.overview section.overview img {
    position: absolute;
    top: 0;
  }

  body.about.overview section.overview div.overview-left img {
    right: 0;
  }

  body.about.overview section.overview div.overview-right img {
    left: 0;
  }

  body.about.our-expertise
    section.navigation.expertise-navigation
    a:first-of-type {
    margin-left: 0;
  }

  body.about.our-expertise
    section.navigation.expertise-navigation
    a:last-of-type {
    margin-right: 0;
  }

  body.about.our-faculty section.letters {
    display: none;
  }

  body.about.our-faculty_detail section.text-intro div.image_bg {
    position: absolute;
    right: 0;
  }

  body.about.meet-our-alumni section.alumni ul li div em {
    font-size: 17px;
    line-height: 24px;
  }

  body.about.meet-our-alumni section.alumni ul li div strong {
    display: block;
    font-family: "MercuryDisplay", serif;
    font-size: 45px;
    font-weight: 600;
    line-height: 45px;
    margin-bottom: 18px;
  }

  body.about.meet-our-alumni section.alumni ul li div p {
    font-size: 16px;
    line-height: 28px;
    width: 75%;
  }

  body.about.meet-our-alumni section.alumni ul li div a.button {
    bottom: 0;
    position: absolute;
    right: 0;
  }

  body.about.meet-our-alumni section.alumni ul li {
    overflow: hidden;
    position: relative;
    z-index: 2;
    transition: opacity 0.5s;
  }

  body.about.meet-our-alumni section.alumni ul li div {
    margin-top: 24px;
    width: 100%;
    transition: opacity 0.5s, top 0.5s;
  }

  body.about.meet-our-alumni section.alumni ul li div:last-of-type {
    margin-top: 17px;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity 0.5s, margin-top 0.5s;
  }

  body.about.meet-our-alumni section.alumni ul li div:first-of-type {
    position: absolute;
    top: 10px;
    transition: opacity 0.5s 0.15s, top 0.5s 0.15s;
  }

  body.about.meet-our-alumni section.alumni ul li div:last-of-type {
    margin-top: 17px;
    pointer-events: none;
    position: relative;
    top: 50%;
    opacity: 0;
    transform: translateY(-50%);
    transition: opacity 0.5s, margin-top 0.5s;
  }

  body.about.meet-our-alumni section.alumni > span {
    background-size: cover;
    background-attachment: fixed;
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.5s;
  }

  body.about.graduate-careers section.article.text-intro {
    padding-top: 0;
  }

  body.about.graduate-careers
    section.graduate-careers
    div.container.logo-container
    strong {
    margin-bottom: 26px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.about.overview section.overview strong {
    margin-bottom: 29px;
  }

  body.about.overview section.highlight p {
    font-size: 44px;
    line-height: 48px;
  }

  body.about.overview section.overview p {
    font-size: 16px;
    line-height: 28px;
  }

  body.about.our-expertise section.expertise div.text p a::before {
    bottom: 3px;
  }

  body.about.graduate-careers section.article.text-intro div.container {
    padding-top: 129px;
  }

  body.about.graduate-careers
    section.article.text-intro
    h2:not(:first-of-type) {
    margin-top: 129px;
  }

  body.about.our-faculty section.faculty ul li a:hover span {
    opacity: 0.2;
  }

  body.about.our-faculty section.faculty ul li a:hover::after {
    opacity: 0.2;
  }

  body.about.our-faculty section.faculty ul li a:hover em {
    bottom: 45px;
  }

  body.about.our-faculty section.faculty ul li a:hover sub {
    left: 24px;
    opacity: 1;
  }

  body.about.our-faculty_detail section.text-intro div.container {
    padding: 151px 564px 0 0;
  }

  body.about.our-faculty_detail section.text-intro a.breadcrumb {
    top: 29px;
  }

  body.about.our-faculty_detail section.text-intro a.breadcrumb + h2 {
    margin-top: 0;
  }

  body.about.our-faculty_detail section.text-intro div.contact {
    font-size: 14px;
    line-height: 36px;
    position: absolute;
    right: 0;
    top: 275px;
    width: 474px;
  }

  body.about.our-faculty_detail section.text-intro div.contact small a.phone {
    cursor: default;
    pointer-events: none;
  }

  body.about.our-faculty_detail section.text-intro + section.subsections {
    margin-top: 80px;
  }

  body.about.our-faculty_detail section.text-intro div.image_bg {
    height: 438px;
    top: -176px;
    width: 474px;
  }

  body.about.meet-our-alumni section.alumni ul li {
    height: 240px;
  }

  body.about.meet-our-alumni section.alumni ul li.inactive {
    opacity: 0.4;
  }

  body.about.meet-our-alumni section.alumni ul li:hover div:first-of-type {
    top: -5px;
    opacity: 0;
    transition: opacity 0.5s, top 0.5s;
  }

  body.about.meet-our-alumni section.alumni ul li:hover div:last-of-type {
    margin-top: 2px;
    pointer-events: auto;
    opacity: 1;
    transition: opacity 0.5s 0.15s, margin-top 0.5s 0.15s;
  }

  body.about.meet-our-alumni section.alumni ul li div h3 {
    font-size: 90px;
    line-height: 90px;
  }

  body.about.meet-our-alumni section.alumni > span.active {
    opacity: 0.25;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.about.overview section.intro,
  body.about.overview section.overview,
  body.about.overview section.highlight {
    margin-bottom: 75px;
  }

  body.about.overview section.highlight {
    height: 650px;
  }

  body.about.overview section.overview img {
    height: 440px;
    width: 440px;
  }

  body.about.overview section.overview strong {
    font-size: 34px;
    line-height: 41px;
  }

  body.about.overview section.overview div.container div {
    min-height: 440px;
  }

  body.about.overview section.overview div.overview-left {
    padding-right: 482px;
  }

  body.about.overview section.overview div.overview-right {
    padding-left: 482px;
  }

  body.about.our-expertise section.navigation.expertise-navigation a {
    margin: 0 19px;
  }

  body.about.our-expertise section.expertise strong {
    font-size: 54px;
    line-height: 58px;
    margin-top: -16px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-in li em {
    font-size: 100px;
    line-height: 100px;
  }

  body.about.graduate-careers section.graduate-careers ul.working-at li img {
    transform: translate(-50%, -50%) scale(0.9);
  }

  body.about.our-faculty section.faculty ul li {
    width: calc(100% / 3);
  }

  body.about.our-faculty section.faculty ul li strong {
    bottom: -24px;
    font-size: 300px;
    line-height: 300px;
  }
}

/** Desktop Small (Intermediary) **********/
@media all and (min-width: 1100px) {
  body.about.our-faculty section.faculty ul li strong {
    bottom: -20px;
    font-size: 270px;
    line-height: 270px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  body.about.overview section.intro,
  body.about.overview section.overview,
  body.about.overview section.highlight {
    margin-bottom: 100px;
  }

  body.about.overview section.highlight {
    height: 730px;
  }

  body.about.overview section.overview img {
    height: 518px;
    width: 518px;
  }

  body.about.overview section.overview div.container div {
    min-height: 518px;
  }

  body.about.overview section.overview div.overview-left {
    padding-right: 560px;
  }

  body.about.overview section.overview div.overview-right {
    padding-left: 560px;
  }

  body.about.our-expertise section.navigation.expertise-navigation a {
    margin: 0 32px;
  }

  body.about.our-expertise section.expertise strong {
    margin-top: -19px;
  }

  body.about.our-faculty section.faculty ul li {
    width: 25%;
  }

  body.about.our-faculty section.faculty ul li strong {
    font-size: 260px;
    line-height: 260px;
  }
}

/** Desktop HD **********/
@media all and (min-width: 1500px) {
  body.about.our-faculty section.faculty ul li {
    width: 20%;
  }

  body.about.our-faculty section.faculty ul li strong {
    bottom: -17px;
    font-size: 230px;
    line-height: 230px;
  }
}

/** Desktop HD (Intermediary) **********/
@media all and (min-width: 1750px) {
  body.about.our-faculty section.faculty ul li strong {
    bottom: -21px;
    font-size: 270px;
    line-height: 270px;
  }
}

/** Alumni **************************************************/
body.alumni.overview section.text-intro:not(:last-of-type),
body.alumni.networking section.text-intro:not(:last-of-type) {
  margin-bottom: 0;
}

body.alumni.benefits section.alumni-benefits div.container {
  border-top: 1px solid #d1bf93;
}

body.alumni.benefits section.alumni-benefits ul li {
  border-bottom: 1px solid #d1bf93;
  padding: 40px 0 40px 266px;
  position: relative;
}

body.alumni.benefits section.alumni-benefits ul li h4 {
  color: #a37e27;
  font-size: 158px;
  font-weight: bold;
  left: 0;
  line-height: 158px;
  position: absolute;
  top: 29px;
}

body.alumni.benefits section.alumni-benefits ul li > strong {
  display: block;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 16px;
}

body.alumni.benefits section.alumni-benefits ul li p {
  font-size: 16px;
  line-height: 28px;
}

body.alumni.benefits section.alumni-benefits ul li p br.break {
  content: " ";
  display: block;
  height: 16px;
}

/** News and Events **************************************************/
body.news-events.media-gallery section.intro {
  margin-bottom: 55px;
}

body.news-events section#gallery #carousel div.slide {
  color: #666;
}

body.news-events section#gallery #carousel div.slide a.image_bg::before {
  display: none;
}

body.news-events section#gallery #carousel div.slide div.video-info {
  display: none;
}

body.news-events section#gallery #carousel div.slide p {
  line-height: 20px;
}

body.news-events section#gallery #carousel div.slide p a {
  color: #a37e27;
}

body.news-events.media-gallery section.gallery {
  background: #fff;
  font-size: 0;
}

body.news-events.media-gallery section.gallery ul li {
  display: inline-block;
  vertical-align: top;
}

body.news-events.media-gallery section.gallery ul li a {
  height: 100%;
}

body.news-events.media-gallery section.gallery ul li a:nth-of-type(2) {
  background: rgba(0, 0, 0, 0.45);
  padding-bottom: 0;
  pointer-events: none;
}

body.news-events.media-gallery section.gallery ul li:hover a:nth-of-type(2) {
  pointer-events: auto;
  opacity: 1;
}

body.news-events.media-gallery section.gallery ul li p {
  line-height: 20px;
}

body.news-events.media-gallery section.gallery ul li div.video-info {
  display: none;
}

body.news-events.media-gallery section.gallery:not(.two-column) div.container {
  margin-bottom: 55px;
}

body.news-events.media-gallery section.gallery h2 {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-weight: bold;
  position: relative;
}

body.news-events.publications section.text-intro div.text div strong {
  display: block;
  line-height: 22px;
}

body.news-events.publications
  section.text-intro
  div.text
  div
  strong:first-of-type {
  margin-bottom: 6px;
}

body.news-events.publications section.text-intro div.text strong {
  font-weight: bold;
}

body.news-events.publications
  section.text-intro#featured-publications
  div.featured-publication {
  position: relative;
}

body.news-events.publications section.text-intro #publications {
  height: 220px;
  overflow: hidden;
  position: relative;
}

body.news-events.publications
  section.text-intro
  #publications
  #publications_container
  ul
  li
  a::before {
  display: none;
}

body.news-events.publications
  section.text-intro
  #publications
  #publications_container {
  position: absolute;
  width: 100000px;
}

body.news-events.publications
  section.text-intro
  #publications
  #publications_container
  ul {
  font-size: 0;
  left: 0;
}

body.news-events.publications
  section.text-intro
  #publications
  #publications_container
  ul
  li {
  border: 2px solid transparent;
  display: inline-block;
  height: 220px;
  margin-right: 16px;
  padding: 10px 14px;
  vertical-align: top;
  width: 160px;
  transition: border-color 0.375s ease-out;
}

body.news-events.publications
  section.text-intro
  #publications
  #publications_container
  ul
  li.active {
  border-color: #a37e27;
}

body.news-events.publications
  section.text-intro
  #publications
  #publications_container
  ul
  li
  a {
  cursor: pointer;
  display: block;
  height: 196px;
  width: 128px;
}

body.news-events.publications section.text-intro #publication_preview {
  opacity: 1;
  transition: opacity 0.375s ease-out;
}

body.news-events.publications section.text-intro #publication_preview.next {
  opacity: 0;
}

body.news-events section#gallery div.slide {
  color: #000 !important;
}

body.news-events section#gallery div.slide small {
  display: block;
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 5px;
  position: relative;
  top: -5px;
}

body.news-events section#gallery div.slide strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-size: 34px;
  font-weight: 600;
  line-height: 37px;
  margin-bottom: 13px;
}

body.news-events section#gallery div.slide p {
  font-size: 14px;
  font-weight: 400;
  line-height: 26px;
  margin-bottom: 17px;
}

body.news-events.events section#gallery div.slide a:nth-of-type(2) {
  pointer-events: none;
  opacity: 0 !important;
}

body.news-events.events section.text-intro#featured-events {
  padding-top: 0;
}

body.news-events.events section.text-intro#featured-events div.container {
  margin-bottom: 0;
  padding-top: 0;
}

body.news-events.events section.calendar div.container {
  width: 100%;
}

body.news-events.events section.calendar #calendar #calendar_header {
  background: #000;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  height: 58px;
  line-height: 58px;
  position: relative;
  text-align: center;
  text-transform: uppercase;
}

body.news-events.events section.calendar #calendar #calendar_header button {
  background: url("../images/icons_subsection-arrow.png") top left no-repeat;
  background-size: auto 15px;
  display: block;
  height: 15px;
  position: absolute;
  top: 21px;
  width: 25px;
}

body.news-events.events
  section.calendar
  #calendar
  #calendar_header
  button[data-action="prev"] {
  left: 10px;
  transform: rotate(180deg);
}

body.news-events.events
  section.calendar
  #calendar
  #calendar_header
  button[data-action="next"] {
  right: 10px;
}

body.news-events.events section#events {
  background: #f0f0f0;
}

body.news-events.events section#events strong.empty {
  border-top: 4px solid #000;
  border-bottom: 1px solid #767676;
  display: block;
  position: relative;
  opacity: 0;
  transition: opacity 0.375s;
}

body.news-events.events section#events.empty strong.empty {
  opacity: 1;
}

body.news-events.events section#events:not(.empty) strong.empty {
  display: none;
}

body.news-events.events section#events ul#event-list li {
  display: none;
  position: relative;
  opacity: 1;
  transition: opacity 0.375s;
}

body.news-events.events section#events ul#event-list li:not(.loaded) {
  pointer-events: none;
  opacity: 0;
}

body.news-events.events section#events ul#event-list li:not(:last-of-type) {
  margin-bottom: 48px;
}

body.news-events.events section#events ul#event-list li strong {
  border-bottom: 4px solid #000;
  display: block;
  font-weight: 900;
  text-transform: uppercase;
}

body.news-events.events section#events ul#event-list li em {
  border-bottom: 1px solid #767676;
  display: block;
}

body.news-events.events section#events ul#event-list li span.image_bg {
  float: left;
}

body.news-events.events section#events ul#event-list li p {
  float: left;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.news-events.media-gallery section.intro {
    margin-bottom: 20px;
  }

  section#gallery #carousel div.slide {
    line-height: 24px;
  }

  section#gallery #carousel div.slide h2 {
    margin-bottom: 20px;
  }

  section#gallery #carousel div.slide p:not(:last-of-type) {
    margin-bottom: 12px;
  }

  body.news-events.media-gallery
    section.gallery:not(.two-column)
    div.container {
    padding-top: 55px;
  }

  body.news-events section#gallery #carousel {
    margin: 0 20px;
    position: relative;
  }

  body.news-events section#gallery #carousel div.slide p {
    font-size: 12px;
  }

  body.news-events section#gallery #carousel div.slide,
  body.news-events.media-gallery section.gallery ul li {
    font-size: 12px;
    margin-bottom: 30px;
    width: 100%;
  }

  body.news-events section#gallery #carousel div.slide > a:nth-of-type(1),
  body.news-events.media-gallery section.gallery ul li > a:nth-of-type(1) {
    height: auto;
    padding: 0 0 56.2% 0;
    pointer-events: none;
    position: absolute;
    width: 100%;
  }

  body.news-events section#gallery #carousel div.slide a:nth-of-type(2),
  body.news-events section.gallery ul li > a:nth-of-type(2) {
    background: none;
    display: block;
    font-size: 12px;
    line-height: 20px;
    padding-top: calc(56.2% + 12px);
    padding-bottom: 0;
    pointer-events: auto;
    position: relative;
    z-index: 2;
    opacity: 1;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)::before {
    display: none;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2) {
    margin-bottom: 12px;
    padding-top: 56.2%;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(1)::before,
  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(1)::before {
    border: 5px solid #fff;
    content: " ";
    display: block;
    height: 70px;
    left: 50%;
    position: absolute;
    right: 0;
    top: 50%;
    width: 70px;
    z-index: 4;
    border-radius: 50%;
    transform: translate(-50%, -50%);
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(1)::after,
  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(1)::after {
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 21px solid #fff;
    content: " ";
    display: block;
    height: 0;
    left: 50%;
    margin-left: 2px;
    position: absolute;
    top: 50%;
    width: 0;
    z-index: 4;
    transform: translate(-50%, -50%);
  }

  body.news-events.media-gallery section.gallery ul li a:nth-of-type(2) {
    background: none;
  }

  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(2)
    small {
    color: #000;
    display: inline;
    padding: 0;
    pointer-events: none;
    position: relative;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)
    span.button,
  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(2)
    span.button {
    display: none;
  }

  body.news-events.events section#gallery #carousel div.slide a.button {
    color: #fff;
    font-size: 13px;
  }

  body.news-events section#gallery button {
    display: none;
  }

  body.news-events.media-gallery section.gallery h2 {
    font-size: 30px;
    line-height: 32px;
    margin-bottom: 72px;
  }

  body.news-events.media-gallery section.gallery h2::before {
    border-top: 4px solid #000;
    top: -18px;
    width: 34px;
  }

  body.news-events.events section#gallery #carousel div.slide {
    border-bottom: 1px solid #d1bf93;
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 33px;
    padding-bottom: 33px;
  }

  body.news-events.events section#gallery #carousel div.slide a:nth-of-type(1) {
    margin-bottom: 15px;
    position: relative;
  }

  body.news-events.events section#gallery #carousel div.slide a:nth-of-type(2) {
    display: none;
  }

  body.news-events.events section#gallery #carousel div.slide small {
    display: none;
  }

  body.news-events.events section#gallery #carousel div.slide strong {
    border-bottom: 4px solid #000;
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-weight: 900;
    font-size: 16px;
    margin-bottom: 0;
    padding-bottom: 7px;
    text-transform: uppercase;
  }

  body.news-events.events section#gallery #carousel div.slide em {
    border-bottom: 1px solid #767676;
    display: block;
    margin-bottom: 11px;
    padding: 7px 0 6px;
  }

  body.news-events.events section#gallery #carousel div.slide p {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 13px;
  }

  body.news-events.publications section.text-intro h3 {
    font-size: 30px;
    line-height: 34px;
    margin-bottom: 12px;
  }

  body.news-events.publications section.text-intro div.text div {
    line-height: 17px;
    margin-bottom: 10px;
  }

  body.news-events.publications section.text-intro div.text div strong {
    margin-bottom: 7px;
  }

  body.news-events.publications section.text-intro#featured-publications h2 {
    margin-bottom: 26px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication:not(:last-of-type) {
    margin-bottom: 30px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication
    div.text
    span.image_bg {
    padding-bottom: 134%;
    margin-bottom: 50px;
    width: 100%;
  }

  body.news-events.publications section.text-intro #publications {
    margin-bottom: 68px;
  }

  body.news-events.publications section.text-intro #publications button {
    display: none;
  }

  body.news-events section#gallery div.slide small {
    top: 0;
  }

  body.news-events section#gallery div.slide strong {
    font-size: 22px;
    line-height: 26px;
    margin-bottom: 8px;
  }

  body.news-events section#gallery div.slide p {
    font-size: 12px;
    line-height: 20px;
  }

  body.news-events.events section.text-intro#intro {
    margin-bottom: 19px;
  }

  body.news-events.events section#events {
    min-height: 242px;
  }

  body.news-events.events section.calendar #calendar {
    display: none;
  }

  body.news-events.events section#events strong.empty {
    padding: 6px 0 7px 0;
  }

  body.news-events.events section#events div.container {
    padding-top: 20px;
  }

  body.news-events.events section#events ul#event-list li {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 0 !important;
    padding-top: calc(100vw - 40px + 50px);
  }

  body.news-events.events section#events ul#event-list li:first-of-type {
    padding-top: calc(100vw - 40px + 17px);
  }

  body.news-events.events
    section#events
    ul#event-list
    li:first-of-type
    span.image_bg {
    top: 0;
  }

  body.news-events.events section#events ul#event-list li:last-of-type {
    margin-bottom: 29px !important;
  }

  body.news-events.events section#events ul#event-list li span.image_bg {
    padding-bottom: 100%;
    position: absolute;
    top: 33px;
    width: 100%;
  }

  body.news-events.events section#events ul#event-list li:not(:last-of-type) {
    border-bottom: 1px solid #d1bf93;
    padding-bottom: 33px;
  }

  body.news-events.events section#events ul#event-list li strong {
    font-size: 16px;
    padding-bottom: 7px;
  }

  body.news-events.events section#events ul#event-list li em {
    margin-bottom: 11px;
    padding: 7px 0 6px 0;
  }

  body.news-events.events section#events ul#event-list li a.button {
    margin-top: 13px;
  }
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  body.news-events.events section.filters div.filters div.filter-group {
    margin-bottom: 0;
  }

  body.news-events.events
    section.filters
    div.filters
    div.filter-group.subfilter {
    margin-top: 27px;
  }

  body.news-events.events section.calendar div.container {
    margin: 0;
    width: 100%;
  }

  body.news-events.events section.calendar #calendar {
    height: 58px;
    overflow: hidden;
    position: relative;
    top: 0 !important;
    z-index: 20;
  }

  body.news-events.events section.calendar #calendar #calendar_days,
  body.news-events.events section.calendar #calendar #calendar_dates {
    display: none;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.news-events.media-gallery
    section.gallery:not(.two-column)
    div.container {
    padding-top: 85px;
  }

  body.news-events section#gallery {
    margin-bottom: 43px;
  }

  body.news-events section#gallery #carousel div.slide a.image_bg {
    margin-bottom: 12px;
  }

  body.news-events.events section#gallery #carousel div.slide small,
  body.news-events.events section#gallery #carousel div.slide strong,
  body.news-events.events section#gallery #carousel div.slide em,
  body.news-events.events section#gallery #carousel div.slide p {
    padding: 0 20px;
  }

  body.news-events section#gallery #carousel div.slide a:nth-of-type(2)::after {
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 30px solid #fff;
  }

  body.news-events
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)::before {
    border: 8px solid #fff;
    height: 140px;
    width: 140px;
  }

  body.news-events.media-gallery section.gallery ul li {
    margin: 0 20px 20px 0;
    width: calc(50% - 10px);
  }

  body.news-events.media-gallery section.gallery ul li a {
    height: calc((50vw - 10px) * 0.526);
  }

  body.news-events.media-gallery section.gallery ul li:nth-child(2n + 2) {
    margin-right: 0;
  }

  body.news-events.media-gallery section.gallery ul li a:nth-of-type(1) {
    pointer-events: none;
  }

  body.news-events.media-gallery section.gallery ul li a:nth-of-type(2)::after {
    border-top: 16px solid transparent;
    border-bottom: 16px solid transparent;
    border-left: 24px solid #fff;
  }

  body.news-events.media-gallery
    section.gallery
    ul
    li
    a:nth-of-type(2)::before {
    border: 6px solid #fff;
    height: 112px;
    width: 112px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication:not(:last-of-type) {
    margin-bottom: 51px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication
    div.text
    h3 {
    margin: 21px 0 0 222px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication
    div.text
    span.image_bg {
    float: left;
    height: 272px;
    margin-right: 20px;
    width: 202px;
  }

  body.news-events.publications section.text-intro #publications {
    margin-bottom: 65px;
  }

  body.news-events.events section#events {
    min-height: 242px;
  }

  body.news-events.events section#events div.container {
    padding: 48px 0;
  }

  body.news-events.events section#events ul#event-list {
    width: 100%;
  }

  body.news-events.events section#events ul#event-list li {
    font-size: 14px;
    line-height: 22px;
  }

  body.news-events.events section#events ul#event-list li em {
    font-size: 16px;
  }

  body.news-events.events section#events ul#event-list li p {
    width: calc(100% - 146px);
  }

  body.news-events.events section#events ul#event-list li span.image_bg {
    height: 126px;
    width: 126px;
  }
}

/** Tablet Portrait **********/
@media all and (min-width: 768px) and (max-width: 960px) {
  body.news-events.media-gallery section#gallery #carousel[data-slide="0"] {
    left: calc(50vw - (50vw - 52px));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="1"] {
    left: calc(50vw - (50vw - 52px) - (100vw - 101px));
  }

  body.news-events.media-gallery
    section#gallery.single
    #carousel[data-slide="1"] {
    left: calc(50vw - (50vw - 44px));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="2"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 2));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="3"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 3));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="4"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 4));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="5"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 5));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="6"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 6));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="7"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 7));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="8"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 8));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="9"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 9));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="10"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 10));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="11"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 11));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="12"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 12));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="13"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 13));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="14"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 14));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="15"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 15));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="16"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 16));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="17"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 17));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="18"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 18));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="19"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 19));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="20"] {
    left: calc(50vw - (50vw - 52px) - ((100vw - 101px) * 20));
  }

  body.news-events.media-gallery section#gallery #carousel div.slide {
    margin: 0 20px;
    width: calc(100vw - 144px);
  }

  body.news-events.media-gallery section#gallery #carousel div.slide a {
    height: calc((100vw - 144px) * 0.56);
    margin-bottom: 14px;
    width: calc(100vw - 144px);
  }

  body.news-events.media-gallery section#gallery button {
    top: calc((((100vw - 144px) * 0.56) / 2) - 25px);
  }
}

/** Tablet Landscape **********/
@media all and (min-width: 961px) and (max-width: 1024px) {
  body.news-events.media-gallery section#gallery #carousel[data-slide="0"] {
    left: calc(50vw - (50vw - 80px));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="1"] {
    left: calc(50vw - (50vw - 80px) - (100vw - 157px));
  }

  body.news-events.media-gallery
    section#gallery.single
    #carousel[data-slide="1"] {
    left: calc(50vw - (50vw - 72px));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="2"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 2));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="3"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 3));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="4"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 4));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="5"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 5));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="6"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 6));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="7"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 7));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="8"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 8));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="9"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 9));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="10"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 10));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="11"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 11));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="12"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 12));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="13"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 13));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="14"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 14));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="15"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 15));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="16"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 16));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="17"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 17));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="18"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 18));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="19"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 19));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="20"] {
    left: calc(50vw - (50vw - 80px) - ((100vw - 157px) * 20));
  }

  body.news-events.media-gallery section#gallery #carousel div.slide {
    margin: 0 20px;
    width: calc(100vw - 200px);
  }

  body.news-events.media-gallery section#gallery #carousel div.slide a {
    height: calc((100vw - 200px) * 0.56);
    margin-bottom: 14px;
    width: calc(100vw - 200px);
  }

  body.news-events.media-gallery section#gallery button {
    top: calc((((100vw - 200px) * 0.56) / 2) - 25px);
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.news-events section#gallery {
    overflow: hidden;
  }

  body.news-events.events section#gallery #carousel {
    display: flex;
    justify-content: center;
    margin-bottom: 60px;
  }

  body.news-events.events section#gallery #carousel div.slide {
    width: calc((100% - 40px) / 3);
  }

  body.news-events.events
    section#gallery
    #carousel
    div.slide:not(:last-of-type) {
    margin-right: 20px;
  }

  body.news-events.events section#gallery #carousel div.slide a {
    padding-top: 56%;
  }

  body.news-events.events section#gallery #carousel div.slide p {
    display: none;
  }

  body.news-events.media-gallery section#gallery #carousel div.slide p {
    font-size: 14px;
  }

  body.news-events.media-gallery section#gallery #carousel {
    font-size: 0;
    position: relative;
    width: 100000px;
    transition: left 0.4s, margin-left 0.4s;
  }

  body.news-events.media-gallery section#gallery #carousel.prev {
    margin-left: 30px;
  }

  body.news-events.media-gallery section#gallery #carousel.next {
    margin-left: -30px;
  }

  body.news-events.media-gallery section#gallery #carousel div.slide {
    display: inline-block;
    position: relative;
    vertical-align: top;
  }

  body.news-events.media-gallery section#gallery #carousel div.slide h2,
  body.news-events.media-gallery section#gallery #carousel div.slide p {
    opacity: 0;
    transition: opacity 0.4s;
  }

  body.news-events.media-gallery section#gallery #carousel div.slide.active h2,
  body.news-events.media-gallery section#gallery #carousel div.slide.active p {
    opacity: 1;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide:not(.active) {
    cursor: pointer;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide:not(.active)
    iframe {
    pointer-events: none;
  }

  body.news-events section#gallery #carousel div.slide a:nth-of-type(2) {
    background: rgba(0, 0, 0, 0.35);
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 0.25s, background 0.25s;
  }

  body.news-events section#gallery #carousel div.slide a.button {
    display: none;
  }

  body.news-events.events section#gallery #carousel div.slide em {
    display: none;
  }

  body.news-events
    section#gallery
    #carousel
    div.slide:not(.active)
    a:nth-of-type(2) {
    pointer-events: none;
  }

  body.news-events section#gallery #carousel div.slide a:nth-of-type(2):hover,
  body.news-events section#gallery #carousel div.slide.active a:nth-of-type(2) {
    opacity: 1;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2):hover {
    background: rgba(0, 0, 0, 0.45);
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)::before {
    content: " ";
    display: block;
    left: 50%;
    position: absolute;
    right: 0;
    top: 50%;
    z-index: 4;
    opacity: 0;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: opacity 0.25s;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)::after {
    content: " ";
    display: block;
    height: 0;
    left: 50%;
    margin-left: 2px;
    position: absolute;
    top: 50%;
    width: 0;
    z-index: 4;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity 0.25s;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2):hover::before,
  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide.active
    a:nth-of-type(2)::before,
  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2):hover::after,
  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide.active
    a:nth-of-type(2)::after {
    opacity: 1;
  }

  body.news-events
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)
    span.button {
    bottom: 0;
    font-size: 14px;
    position: absolute;
    right: 0;
  }

  body.news-events.events section#gallery button {
    display: none;
  }

  body.news-events.media-gallery section#gallery button {
    cursor: pointer;
    display: block;
    height: 50px;
    position: absolute;
    width: 50px;
    z-index: 3;
  }

  body.news-events.media-gallery section#gallery.single button {
    display: none;
  }

  body.news-events.media-gallery section#gallery button[data-action="prev"] {
    left: 0;
    transform: rotate(180deg);
  }

  body.news-events.media-gallery section#gallery button[data-action="next"] {
    right: 0;
  }

  body.news-events.media-gallery section#gallery button::after {
    border-style: solid;
    border-width: 2px 2px 0 0;
    content: "";
    display: block;
    height: 12px;
    left: calc(50% - 9px);
    position: absolute;
    top: calc(50% - 7px);
    width: 12px;
    z-index: 2;
    transform: rotate(45deg);
  }

  body.news-events.media-gallery section.gallery h2 {
    font-size: 46px;
    line-height: 46px;
    margin-bottom: 72px;
  }

  body.news-events.media-gallery section.gallery h2::before {
    border-top: 6px solid #000;
    top: -34px;
    width: 56px;
  }

  body.news-events.media-gallery section.gallery ul li {
    font-size: 14px;
  }

  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(2)::before {
    content: " ";
    display: block;
    left: 50%;
    position: absolute;
    right: 0;
    top: 50%;
    z-index: 4;
    opacity: 0;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: opacity 0.25s;
  }

  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(2)::after {
    content: " ";
    display: block;
    height: 0;
    left: 50%;
    margin-left: 2px;
    position: absolute;
    top: 50%;
    width: 0;
    z-index: 4;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity 0.25s;
  }

  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(2):hover::before,
  body.news-events.media-gallery
    section.gallery
    ul
    li
    > a:nth-of-type(2):hover::after {
    opacity: 1;
  }

  body.news-events.publications section.text-intro h3 {
    margin-bottom: 15px;
  }

  body.news-events.publications section.text-intro div.text div {
    margin-bottom: 19px;
  }

  body.news-events.publications section.text-intro#featured-publications h2 {
    margin-bottom: 66px;
  }

  body.news-events.publications section.text-intro #publications::before {
    content: " ";
    display: block;
    height: 220px;
    left: 0;
    position: absolute;
    top: 0;
    width: 140px;
    z-index: 2;
    background: -moz-linear-gradient(
      left,
      rgba(240, 240, 240, 1) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 0) 72%,
      rgba(240, 240, 240, 0) 100%
    );
    background: -webkit-gradient(
      linear,
      left top,
      right top,
      color-stop(0%, rgba(240, 240, 240, 1)),
      color-stop(50%, rgba(240, 240, 240, 1)),
      color-stop(72%, rgba(240, 240, 240, 0)),
      color-stop(100%, rgba(240, 240, 240, 0))
    );
    background: -webkit-linear-gradient(
      left,
      rgba(240, 240, 240, 1) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 0) 72%,
      rgba(240, 240, 240, 0) 100%
    );
    background: -o-linear-gradient(
      left,
      rgba(240, 240, 240, 1) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 0) 72%,
      rgba(240, 240, 240, 0) 100%
    );
    background: -ms-linear-gradient(
      left,
      rgba(240, 240, 240, 1) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 0) 72%,
      rgba(240, 240, 240, 0) 100%
    );
    background: linear-gradient(
      to right,
      rgba(240, 240, 240, 1) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 0) 72%,
      rgba(240, 240, 240, 0) 100%
    );
  }

  body.news-events.publications section.text-intro #publications::after {
    content: " ";
    display: block;
    height: 220px;
    position: absolute;
    right: 0;
    top: 0;
    width: 140px;
    z-index: 2;
    background: -moz-linear-gradient(
      left,
      rgba(240, 240, 240, 0) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 1) 72%,
      rgba(240, 240, 240, 1) 100%
    );
    background: -webkit-gradient(
      linear,
      left top,
      right top,
      color-stop(0%, rgba(240, 240, 240, 0)),
      color-stop(50%, rgba(240, 240, 240, 1)),
      color-stop(72%, rgba(240, 240, 240, 1)),
      color-stop(100%, rgba(240, 240, 240, 1))
    );
    background: -webkit-linear-gradient(
      left,
      rgba(240, 240, 240, 0) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 1) 72%,
      rgba(240, 240, 240, 1) 100%
    );
    background: -o-linear-gradient(
      left,
      rgba(240, 240, 240, 0) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 1) 72%,
      rgba(240, 240, 240, 1) 100%
    );
    background: -ms-linear-gradient(
      left,
      rgba(240, 240, 240, 0) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 1) 72%,
      rgba(240, 240, 240, 1) 100%
    );
    background: linear-gradient(
      to right,
      rgba(240, 240, 240, 0) 0%,
      rgba(240, 240, 240, 1) 50%,
      rgba(240, 240, 240, 1) 72%,
      rgba(240, 240, 240, 1) 100%
    );
  }

  body.news-events.publications section.text-intro #publications button {
    background: url("../images/icons_publication-arrow.png") center right
      no-repeat;
    cursor: pointer;
    display: block;
    height: 220px;
    position: absolute;
    text-indent: -9999px;
    top: 0;
    width: 144px;
    z-index: 3;
  }

  body.news-events.publications
    section.text-intro
    #publications
    button[data-action="prev"] {
    left: 0;
    transform: rotate(180deg);
  }

  body.news-events.publications
    section.text-intro
    #publications
    button[data-action="next"] {
    right: 0;
  }

  body.news-events.events section.text-intro#intro {
    margin-bottom: 29px;
  }

  body.news-events.events section#events strong.empty {
    line-height: 30px;
    padding: 15px 0 13px 0;
    top: 42px;
  }

  body.news-events.events section#events ul#event-list li strong {
    font-size: 18px;
    padding-bottom: 14px;
  }

  body.news-events.events section#events ul#event-list li em {
    line-height: 30px;
    margin-bottom: 35px;
    padding: 15px 0 13px 0;
  }

  body.news-events.events section#events ul#event-list li p {
    margin-top: -3px;
  }

  body.news-events.events section#events ul#event-list li span.image_bg {
    margin-right: 20px;
  }

  body.news-events.events section#events ul#event-list li a.button {
    margin-top: 13px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.news-events section#gallery #carousel div.slide {
    line-height: 28px;
  }

  body.news-events section#gallery #carousel div.slide h2 {
    margin-bottom: 18px;
  }

  body.news-events section#gallery #carousel div.slide p:not(:last-of-type) {
    margin-bottom: 14px;
  }

  body.news-events section#gallery #carousel div.slide a.image_bg {
    margin-bottom: 16px;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)::after {
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 48px solid #fff;
  }

  body.news-events.media-gallery
    section#gallery
    #carousel
    div.slide
    a:nth-of-type(2)::before {
    border: 12px solid #fff;
    height: 210px;
    width: 210px;
  }

  body.news-events section#gallery #carousel div.slide small,
  body.news-events section#gallery #carousel div.slide strong,
  body.news-events section#gallery #carousel div.slide em,
  body.news-events section#gallery #carousel div.slide p {
    padding: 0 28px;
  }

  body.news-events.media-gallery section.gallery ul li {
    margin: 0 20px 62px 0;
  }

  body.news-events.media-gallery section.gallery:not(.two-column) ul li {
    width: calc((100% - 40px) / 3);
  }

  body.news-events.media-gallery section.gallery.two-column ul li {
    width: calc(50% - 10px);
  }

  body.news-events.media-gallery section.gallery:not(.two-column) ul li a {
    height: 175px;
  }

  body.news-events.media-gallery section.gallery.two-column ul li a {
    height: 325px;
  }

  body.news-events.media-gallery section.gallery ul li a.image_bg {
    margin-bottom: 16px;
  }

  body.news-events.media-gallery
    section.gallery:not(.two-column)
    ul
    li:nth-child(3n + 3),
  body.news-events.media-gallery
    section.gallery.two-column
    ul
    li:nth-child(even) {
    margin-right: 0;
  }

  body.news-events.media-gallery
    section.gallery.two-column
    ul
    li
    > a:nth-of-type(2)::after {
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 30px solid #fff;
  }

  body.news-events.media-gallery
    section.gallery.two-column
    ul
    li
    > a:nth-of-type(2)::before {
    border: 8px solid #fff;
    height: 140px;
    width: 140px;
  }

  body.news-events.media-gallery
    section.gallery:not(.two-column)
    ul
    li
    > a:nth-of-type(2)::after {
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 21px solid #fff;
  }

  body.news-events.media-gallery
    section.gallery:not(.two-column)
    ul
    li
    > a:nth-of-type(2)::before {
    border: 5px solid #fff;
    height: 70px;
    width: 70px;
  }

  body.news-events.media-gallery
    section.gallery:not(.two-column)
    div.container {
    padding-top: 55px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication:not(:last-of-type) {
    margin-bottom: 90px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication {
    min-height: 440px;
    padding: 21px 0 0 368px;
  }

  body.news-events.publications
    section.text-intro#featured-publications
    div.featured-publication
    div.text
    span.image_bg {
    height: 440px;
    left: 0;
    position: absolute;
    top: 0;
    width: 328px;
  }

  body.news-events.publications section.text-intro #publications {
    margin-bottom: 96px;
  }

  body.news-events.events section.text-intro.grey {
    padding-bottom: 50px;
  }

  body.news-events.events section.text-intro.grey div.container {
    padding-top: 109px;
  }

  body.news-events.events div.events {
    position: relative;
  }

  body.news-events.events section#events {
    min-height: 707px;
  }

  body.news-events.events section#events div.container {
    padding: 90px 0;
  }

  body.news-events.events section#events ul#event-list li {
    font-size: 16px;
    line-height: 28px;
  }

  body.news-events.events section.calendar {
    position: absolute;
    top: 73px;
    z-index: 20;
  }

  body.news-events.events section.calendar #calendar {
    border: 1px solid #bdbdbd;
    background: #fff;
    overflow: hidden;
    position: absolute;
    top: 132px;
    opacity: 1;
    transition: opacity 0.375s;
  }

  body.news-events.events section.calendar #calendar.fixed {
    position: fixed;
  }

  body.news-events.events section.calendar #calendar.fixed.locked {
    position: absolute;
  }

  body.news-events.events section.calendar #calendar.loading {
    pointer-events: none;
    opacity: 0;
  }

  body.news-events.events section.calendar #calendar.animate {
    transition: height ease-out 0.4s, opacity 0.375s;
  }

  body.news-events.events section.calendar #calendar[data-rows="4"] {
    height: 335px;
  }

  body.news-events.events section.calendar #calendar[data-rows="5"] {
    height: 390px;
  }

  body.news-events.events section.calendar #calendar[data-rows="6"] {
    height: 445px;
  }

  body.news-events.events section.calendar #calendar #calendar_header {
    border-bottom: 1px solid #bdbdbd;
  }

  body.news-events.events section.calendar #calendar ul#calendar_days {
    font-size: 0;
  }

  body.news-events.events section.calendar #calendar ul#calendar_days li {
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    height: 55px;
    line-height: 55px;
    text-align: center;
    text-transform: uppercase;
  }

  body.news-events.events section.calendar #calendar #calendar_dates {
    left: 0;
    position: absolute;
    width: 6000000px;
  }

  body.news-events.events section.calendar #calendar.animate #calendar_dates {
    transition: left ease-out 0.4s;
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="1"]
    #calendar_dates {
    left: calc(-473px * 1);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="2"]
    #calendar_dates {
    left: calc(-473px * 2);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="3"]
    #calendar_dates {
    left: calc(-473px * 3);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="4"]
    #calendar_dates {
    left: calc(-473px * 4);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="5"]
    #calendar_dates {
    left: calc(-473px * 5);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="6"]
    #calendar_dates {
    left: calc(-473px * 6);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="7"]
    #calendar_dates {
    left: calc(-473px * 7);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="8"]
    #calendar_dates {
    left: calc(-473px * 8);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="9"]
    #calendar_dates {
    left: calc(-473px * 9);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="10"]
    #calendar_dates {
    left: calc(-473px * 10);
  }

  body.news-events.events
    section.calendar
    #calendar[data-month="11"]
    #calendar_dates {
    left: calc(-473px * 11);
  }

  body.news-events.events section.calendar #calendar #calendar_dates ul {
    float: left;
    font-size: 0;
    width: 473px;
  }

  body.news-events.events section.calendar #calendar #calendar_dates ul li {
    background-color: #fff;
    color: #000;
    cursor: default;
    display: inline-block;
    font-size: 16px;
    height: 55px;
    line-height: 55px;
    text-align: center;
    vertical-align: top;
    transition: background ease-in 0.2s, color ease-in 0.2s;
  }

  body.news-events.events
    section.calendar
    #calendar
    #calendar_dates
    ul
    li[data-event] {
    background-color: #f1f1f1;
    cursor: pointer;
  }

  body.news-events.events
    section.calendar
    #calendar
    #calendar_dates
    ul
    li[data-event]:hover,
  body.news-events.events
    section.calendar
    #calendar
    #calendar_dates
    ul
    li[data-event].active {
    background-color: #b5b5b5;
  }

  body.news-events.events
    section.calendar
    #calendar
    #calendar_dates
    ul
    li.today {
    background-color: #a37e27;
    color: #fff;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.news-events section#gallery {
    margin-bottom: 59px;
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="0"] {
    left: calc(50% - 488px);
  }

  body.news-events.media-gallery
    section#gallery.single
    #carousel[data-slide="1"] {
    left: calc(50% - 488px);
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="1"] {
    left: calc(50% - 488px - 976px);
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="2"] {
    left: calc(50% - 488px - (976px * 2));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="3"] {
    left: calc(50% - 488px - (976px * 3));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="4"] {
    left: calc(50% - 488px - (976px * 4));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="5"] {
    left: calc(50% - 488px - (976px * 5));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="6"] {
    left: calc(50% - 488px - (976px * 6));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="7"] {
    left: calc(50% - 488px - (976px * 7));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="8"] {
    left: calc(50% - 488px - (976px * 8));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="9"] {
    left: calc(50% - 488px - (976px * 9));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="10"] {
    left: calc(50% - 488px - (976px * 10));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="11"] {
    left: calc(50% - 488px - (976px * 11));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="12"] {
    left: calc(50% - 488px - (976px * 12));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="13"] {
    left: calc(50% - 488px - (976px * 13));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="14"] {
    left: calc(50% - 488px - (976px * 14));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="15"] {
    left: calc(50% - 488px - (976px * 15));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="16"] {
    left: calc(50% - 488px - (976px * 16));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="17"] {
    left: calc(50% - 488px - (976px * 17));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="18"] {
    left: calc(50% - 488px - (976px * 18));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="19"] {
    left: calc(50% - 488px - (976px * 19));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="20"] {
    left: calc(50% - 488px - (976px * 20));
  }

  body.news-events.media-gallery section#gallery #carousel div.slide {
    margin: 0 28px;
    width: 920px;
  }

  body.news-events.media-gallery section#gallery #carousel div.slide a {
    height: 517px;
    width: 920px;
  }

  body.news-events section#gallery button {
    top: 233px;
  }

  body.news-events.events section.calendar {
    right: calc(50% - 460px);
    width: 443px;
  }

  body.news-events.events section.calendar #calendar {
    width: 443px;
  }

  body.news-events.events section.calendar #calendar ul#calendar_days li,
  body.news-events.events section.calendar #calendar #calendar_dates ul li {
    width: 63px;
  }

  body.news-events.events section#events ul#event-list,
  body.news-events.events section#events strong.empty {
    width: 443px;
  }

  body.news-events.events section#events ul#event-list li span.image_bg {
    height: 145px;
    width: 145px;
  }

  body.news-events.events section#events ul#event-list li p {
    width: 278px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  body.news-events.media-gallery section#gallery {
    margin-bottom: 84px;
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="0"] {
    left: calc(50% - 548px);
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="1"] {
    left: calc(50% - 548px - 1096px);
  }

  body.news-events.media-gallery
    section#gallery.single
    #carousel[data-slide="1"] {
    left: calc(50% - 548px);
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="2"] {
    left: calc(50% - 548px - (1096px * 2));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="3"] {
    left: calc(50% - 548px - (1096px * 3));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="4"] {
    left: calc(50% - 548px - (1096px * 4));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="5"] {
    left: calc(50% - 548px - (1096px * 5));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="6"] {
    left: calc(50% - 548px - (1096px * 6));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="7"] {
    left: calc(50% - 548px - (1096px * 7));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="8"] {
    left: calc(50% - 548px - (1096px * 8));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="9"] {
    left: calc(50% - 548px - (1096px * 9));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="10"] {
    left: calc(50% - 548px - (1096px * 10));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="11"] {
    left: calc(50% - 548px - (1096px * 11));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="12"] {
    left: calc(50% - 548px - (1096px * 12));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="13"] {
    left: calc(50% - 548px - (1096px * 13));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="14"] {
    left: calc(50% - 548px - (1096px * 14));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="15"] {
    left: calc(50% - 548px - (1096px * 15));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="16"] {
    left: calc(50% - 548px - (1096px * 16));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="17"] {
    left: calc(50% - 548px - (1096px * 17));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="18"] {
    left: calc(50% - 548px - (1096px * 18));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="19"] {
    left: calc(50% - 548px - (1096px * 19));
  }

  body.news-events.media-gallery section#gallery #carousel[data-slide="20"] {
    left: calc(50% - 548px - (1096px * 20));
  }

  body.news-events.media-gallery section#gallery #carousel div.slide {
    margin: 0 28px;
    width: 1040px;
  }

  body.news-events.media-gallery section#gallery #carousel div.slide a {
    height: 583px;
    width: 100%;
  }

  body.news-events section#gallery button {
    top: 266px;
  }

  body.news-events.events section.calendar {
    position: absolute;
    right: calc(50% - 520px);
    width: 473px;
  }

  body.news-events.events section.calendar #calendar {
    width: 473px;
  }

  body.news-events.events section.calendar #calendar ul#calendar_days li,
  body.news-events.events section.calendar #calendar #calendar_dates ul li {
    width: 67px;
  }

  body.news-events.events section#events ul#event-list,
  body.news-events.events section#events strong.empty {
    width: 510px;
  }

  body.news-events.events section#events ul#event-list li span.image_bg {
    height: 225px;
    width: 225px;
  }

  body.news-events.events section#events ul#event-list li p {
    width: 265px;
  }
}

/** Programmes **************************************************/
body.programme section.text-intro div.text p:not(:last-of-type) {
  margin-bottom: 14px;
}

section.courses div.container > strong {
  display: none;
  font-size: 30px;
  text-align: center;
}

section.courses.empty div.container {
  height: 344px;
  line-height: 344px;
  padding: 0;
}

section.courses.empty div.container > strong {
  display: block;
}

section.courses ul li:not(.loaded) {
  pointer-events: none;
  opacity: 0;
}

body.programme section.explore {
  background: #fff;
}

body.programme section.explore.white {
  background: #f0f0f0;
}

body.summer-study section.text-intro.summer-study {
  background: #f0f0f0;
  margin-bottom: 0;
}

body.summer-study section.text-intro.summer-study div.container {
  padding: 61px 0 71px 0;
}

body.summer-study section.text-intro.summer-study div.video {
  margin-top: 0;
}

body.summer-study section.text-intro.summer-study div.video div::after {
  display: none;
}

body.summer-study section.text-intro.summer-study h3 {
  margin-bottom: 29px;
}

body.summer-study section.text-intro.summer-study div.text {
  font-size: 14px;
  line-height: 26px;
}

body.summer-study section.text-intro.summer-study div.text:last-of-type {
  margin-bottom: 34px;
}

body.summer-study section.text-intro.summer-study a.button {
  font-size: 14px;
}

body.campus #highlights {
  background: #f0f0f0;
}

body.campus #highlights.white {
  background: #fff;
}

body.campus #highlights section.highlight:first-of-type {
  margin-top: 0;
}

body.campus #highlights section.highlight:last-of-type {
  margin-bottom: 0;
}

body.campus #highlights section.highlight h2 {
  text-transform: none;
}

body.campus #highlights section.highlight strong {
  font-weight: 700;
}

body.campus section.programmes {
  background: #f0f0f0;
  margin-bottom: 0;
}

body.campus section.programmes.white {
  background: #fff;
}

body.campus section.programmes > div.container:first-of-type {
  margin-bottom: 66px;
}

body.campus section.programmes div.programme {
  position: relative;
  width: 100%;
}

body.campus section.programmes div.programme div.container {
  height: auto;
  padding: 0;
}

body.campus section.programmes div.programme > div {
  height: 100%;
  position: absolute;
  width: 100%;
}

body.campus section.programmes div.programme > div > div {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}

body.campus section.programmes div.programme h3 {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-weight: 900;
  margin-bottom: 29px;
  text-align: center;
  text-transform: uppercase;
}

body.campus section.programmes div.programme h3::before {
  display: none;
}

body.campus section.programmes div.programme div.front {
  text-align: center;
  width: 100%;
  z-index: 2;
}

body.campus section.programmes div.programme div.front div {
  left: 0;
  position: absolute;
  z-index: 2;
  top: calc(50% + 10px);
  width: 100%;
  transform: translateY(-50%);
}

body.campus section.programmes div.programme div.front h3 {
  color: #fff;
}

body.campus section.programmes div.programme div.front:after {
  background: #000;
  content: " ";
  display: block;
  left: 0;
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
  opacity: 0.65;
}

body.campus section.programmes div.programme div.back {
  background: #fff;
  margin: 0 auto;
  padding: 66px 0 45px 0;
  text-align: center;
}

body.campus section.programmes div.programme div.back p {
  font-size: 16px;
  line-height: 28px;
  margin-bottom: 20px;
  text-align: left;
}

body.campus section.programmes div.programme div.back p em {
  font-style: italic;
}

body.campus section.programmes div.programme div.back a.button {
  margin: 0 auto;
}

body.campus section.programmes div.programme div.back span {
  cursor: pointer;
  display: block;
  height: 44px;
  position: absolute;
  right: 26px;
  top: 26px;
  width: 42px;
}

body.campus section.programmes div.programme div.back span::before,
body.campus section.programmes div.programme div.back span::after {
  border-top: 1px solid #a37e27;
  content: " ";
  display: block;
  height: 0;
  position: absolute;
  right: -8px;
  top: 21px;
  width: 58px;
}

body.campus section.programmes div.programme div.back span::before {
  transform: rotate(45deg);
}

body.campus section.programmes div.programme div.back span::after {
  transform: rotate(-45deg);
}

.flip-card-wrap {
  height: 30rem;
  aspect-ratio: 1/1;
  overflow: hidden;
  perspective: 1000px;
  position: relative;
  width: 100%;
}

.flip-card {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: transform 0.5s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip-card-back {
  background-color: #fff;
  transform: rotateX(-180deg);
}

.flip-card-front .flip-card-content {
  position: relative;
  text-align: center;
  z-index: 1;
}

.flip-card-back .flip-card-content {
  max-width: 65rem;
  padding: 3.5rem 3rem;
}

.flip-card-front .flip-card-content h3,
.flip-card-back .flip-card-content h3 {
  color: #fff;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-weight: 900;
  margin-bottom: 1.875rem;
  text-transform: uppercase;
}

.flip-card-back .flip-card-content h3 {
  display: none;
}

.flip-card-front .flip-card-content h3::before,
.flip-card-back .flip-card-content h3::before {
  content: none;
}

.flip-card-back .flip-card-content p {
  font-size: 0.875rem;
  text-align: left;
}

.flip-card-back .flip-card-content .button {
  margin-top: 1rem;
}

.flipped .flip-card-front {
  transform: rotateX(180deg);
}

.flipped .flip-card-back {
  transform: rotateX(0);
}

.flip-card-wrap .flip-card-close {
  cursor: pointer;
  display: block;
  height: 2rem;
  position: absolute;
  right: 1rem;
  top: 1rem;
  width: 2rem;
}

.flip-card-wrap .flip-card-close::before,
.flip-card-wrap .flip-card-close::after {
  border-top: 1px solid #a37e27;
  content: " ";
  display: block;
  height: 0;
  position: absolute;
  top: 50%;
  width: 100%;
}

.flip-card-wrap .flip-card-close::before {
  transform: rotate(45deg);
}

.flip-card-wrap .flip-card-close::after {
  transform: rotate(-45deg);
}

.flip-card-wrap .flip-card-front::after {
  background: #000;
  content: " ";
  display: block;
  left: 0;
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
  opacity: 0.65;
}

@media (min-width: 37.5rem) {
  .flip-card-wrap {
    height: 25rem;
  }

  .flip-card-back .flip-card-content {
    text-align: center;
  }

  .flip-card-back .flip-card-content h3 {
    color: #000;
    display: block;
  }

  .flip-card-back .flip-card-content p {
    font-size: 1rem;
  }

  .flip-card-wrap .flip-card-close {
    height: 2.75rem;
    right: 1.625rem;
    top: 1.625rem;
    width: 2.75rem;
  }
}

body.campus section.campus-facts h2 {
  margin-bottom: 86px;
}

body.campus section.campus-facts {
  font-size: 0;
}

body.campus section.campus-facts div.container > div {
  display: inline-block;
  vertical-align: top;
  width: calc((100% / 3) - 1px);
}

body.campus section.campus-facts ul {
  display: block;
}

body.campus section.campus-facts ul li {
  border-right: 1px solid #a37e27;
  display: inline-block;
  font-size: 12px;
  line-height: 17px;
  padding: 14px 0 27px 0;
  position: relative;
  vertical-align: top;
  width: 50%;
}

body.campus
  section.campus-facts
  div.container
  > div:first-of-type
  ul
  li:first-of-type::before {
  border-left: 1px solid #a37e27;
  content: " ";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
}

body.campus section.campus-facts ul li em {
  color: #a37e27;
  display: block;
  font-size: 173px;
  font-weight: bold;
  line-height: 173px;
  margin-bottom: 18px;
  text-align: center;
}

body.campus section.campus-facts ul li strong {
  display: block;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 17px;
  padding: 0 13px;
}

body.campus section.campus-facts ul li p {
  padding: 0 13px;
}

body.campus section.news-events.white {
  background: #fff;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  section.courses div.container > strong {
    font-size: 14px;
    white-space: pre-line;
  }

  section.courses.empty div.container {
    height: auto;
    line-height: 20px;
    padding: 50px 0;
  }

  section.courses.empty div.container > strong {
    display: block;
  }

  body.summer-study section.text-intro.summer-study div.container {
    padding-bottom: 34px;
  }

  body.summer-study section.text-intro.summer-study h3 {
    font-size: 26px;
    line-height: 28px;
  }

  body.summer-study section.text-intro.summer-study div.text {
    font-size: 12px;
    line-height: 20px;
  }

  body.campus #highlights {
    padding: 46px 0 30px;
  }

  body.campus #highlights section.highlight {
    padding: 0 20px;
  }

  body.campus #highlights section.highlight {
    margin-bottom: 68px;
  }

  body.campus #highlights section.highlight h2 {
    font-size: 26px;
    line-height: 28px;
    margin-bottom: 19px;
  }

  body.campus #highlights section.highlight h2::before {
    border-top-width: 2px;
    top: -10px;
    width: 23px;
  }

  body.campus #highlights section.highlight p:last-of-type {
    margin-bottom: 29px;
  }

  body.campus #highlights section.highlight figure,
  body.campus #highlights section.highlight iframe {
    height: calc((100vw - 36px) * 0.56);
    width: 100%;
  }

  body.campus #highlights section.highlight p:not(:last-of-type) {
    margin-bottom: 8px;
  }

  body.campus section.programmes {
    margin-bottom: 2px;
  }

  body.campus section.programmes > div.container:first-of-type {
    margin-bottom: 17px;
  }

  body.campus section.programmes div.programme {
    height: auto !important;
  }

  body.campus section.programmes div.programme > div {
    height: auto;
    position: relative;
  }

  body.campus section.programmes div.programme > div > div {
    height: auto;
    position: relative;
  }

  body.campus section.programmes div.programme.flip > div {
    transform: none;
  }

  body.campus section.programmes div.programme h3 {
    font-size: 22px;
    line-height: 26px;
    margin-bottom: 0;
    white-space: pre-line;
  }

  body.campus section.programmes div.programme div.front {
    padding-bottom: 41%;
  }

  body.campus section.programmes div.programme div.front div {
    top: 50%;
  }

  body.campus section.programmes div.programme div.front a.button {
    display: none;
  }

  body.campus section.programmes div.programme div.back {
    max-height: 0;
    overflow: hidden;
    padding: 0;
    transition: max-height 0.75s;
    transform: none;
  }

  body.campus section.programmes div.programme.flip div.back {
    max-height: 500px;
  }

  body.campus section.programmes div.programme div.back h3 {
    display: none;
  }

  body.campus section.programmes div.programme div.back p {
    font-size: 12px;
    line-height: 20px;
    margin-bottom: 26px;
  }

  body.campus section.programmes div.programme div.back p:first-of-type {
    padding-top: 14px;
  }

  body.campus section.programmes div.programme div.back a.button {
    font-size: 14px;
    margin-bottom: 27px;
  }

  body.campus section.programmes div.programme div.back span {
    display: none;
  }

  body.campus section.campus-facts {
    margin-bottom: 31px;
  }

  body.campus section.campus-facts div.container > div {
    display: block;
    width: auto;
  }

  body.campus section.campus-facts h2 {
    margin-bottom: 20px;
  }

  body.campus section.campus-facts ul {
    display: block;
  }

  body.campus section.campus-facts ul li {
    border-right: none;
    display: block;
    line-height: 20px;
    margin-top: 20px;
    padding: 0;
    width: auto;
  }

  body.campus section.campus-facts ul li {
    border-right: none;
    border-bottom: 1px solid #a37e27;
    display: block;
    line-height: 20px;
    margin-top: 30px;
    padding: 0 0 25px 0;
    width: auto;
  }

  body.campus
    section.campus-facts
    div.container
    > div:last-of-type
    ul
    li:last-of-type {
    border-bottom: none;
    padding-bottom: 0;
  }

  body.campus
    section.campus-facts
    div.container
    > div:first-of-type
    ul
    li:first-of-type::before {
    display: none;
  }

  body.campus section.campus-facts ul li em {
    font-size: 150px;
    line-height: 150px;
    margin-bottom: 0;
    padding-left: 13px;
    text-align: left;
  }

  body.campus section.campus-facts ul li strong {
    margin-bottom: 10px;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.campus #highlights section.highlight:nth-of-type(odd) figure,
  body.campus #highlights section.highlight:nth-of-type(odd) iframe,
  body.campus #highlights section.highlight:nth-of-type(even) div {
    float: left;
  }

  body.campus #highlights section.highlight:nth-of-type(even) figure,
  body.campus #highlights section.highlight:nth-of-type(even) iframe,
  body.campus #highlights section.highlight:nth-of-type(odd) div {
    float: right;
  }

  body.campus #highlights section.highlight p:not(:last-of-type) {
    margin-bottom: 14px;
  }

  body.campus section.programmes div.programme {
    min-height: 334px;
  }

  body.campus section.programmes div.programme div.back div.container {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.programme section.text-intro div.text {
    line-height: 28px;
  }

  body.summer-study section.text-intro:not(.summer-study) {
    margin-bottom: 42px;
  }

  body.campus #highlights {
    padding: 85px 0 70px;
  }

  body.campus #highlights section.highlight {
    font-size: 16px;
    line-height: 28px;
    padding: 0 73px;
  }

  body.campus #highlights section.highlight {
    margin-bottom: 92px;
    padding: 0 73px;
  }

  body.campus #highlights section.highlight h2 {
    font-size: 36px;
    line-height: 39px;
    margin-bottom: 22px;
  }

  body.campus #highlights section.highlight h2::before {
    border-top-width: 3px;
    top: -18px;
    width: 27px;
  }

  body.campus #highlights section.highlight p:last-of-type {
    margin-bottom: 34px;
  }

  body.campus #highlights section.highlight figure,
  body.campus #highlights section.highlight iframe {
    height: calc((100vw - 146px) * 0.56);
    width: 100%;
  }

  body.campus section.programmes > div.container:first-of-type {
    margin-bottom: 28px;
  }

  body.campus section.programmes div.programme div.back p {
    font-size: 14px;
    line-height: 28px;
  }

  body.campus section.programmes div.programme div.back p a::before {
    bottom: 3px;
  }

  body.campus section.campus-facts {
    margin-bottom: 31px;
  }

  body.campus section.campus-facts div.container > div {
    border-left: 1px solid #a37e27;
    border-right: 1px solid #a37e27;
    display: block;
    width: auto;
  }

  body.campus
    section.campus-facts
    div.container
    > div:first-of-type
    ul
    li:first-of-type::before {
    display: none;
  }

  body.campus section.campus-facts div.container > div:not(:last-of-type) {
    margin-bottom: 26px;
  }

  body.campus section.campus-facts h2 {
    margin-bottom: 43px;
  }

  body.campus section.campus-facts ul li {
    line-height: 20px;
    padding: 0 26px 26px 26px;
    width: 50%;
  }

  body.campus section.campus-facts ul li:first-of-type {
    border-right: 1px solid #a37e27;
  }

  body.campus section.campus-facts ul li:last-of-type {
    border-left: 1px solid #a37e27;
    border-right: none;
    left: -1px;
  }

  body.campus section.campus-facts ul li em {
    font-size: 150px;
    left: 10px;
    line-height: 150px;
    margin-bottom: 0;
    position: relative;
    text-align: left;
  }

  body.campus section.campus-facts ul li strong {
    margin-bottom: 20px;
  }

  body.campus section.news div.container {
    padding-top: 91px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.campus #highlights {
    padding: 125px 0 70px;
  }

  body.campus #highlights section.highlight h2 {
    font-size: 36px;
    line-height: 40px;
    margin-bottom: 22px;
    width: 380px;
  }

  body.campus #highlights section.highlight h2::before {
    border-top-width: 4px;
    top: -21px;
    width: 33px;
  }

  body.campus #highlights section.highlight p {
    font-size: 16px;
    line-height: 28px;
  }

  body.campus #highlights section.highlight:nth-of-type(even) div {
    margin-right: 62px;
  }

  body.campus #highlights section.highlight:nth-of-type(odd) div {
    margin-left: 62px;
  }

  body.campus section.programmes div.programme div.back p a::before {
    bottom: 2px;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.campus #highlights section.highlight {
    margin-bottom: 125px;
  }

  body.campus #highlights section.highlight {
    margin: 105px auto;
    padding: 0 52px;
  }

  body.campus #highlights section.highlight figure,
  body.campus #highlights section.highlight iframe {
    height: 278px;
    width: 496px;
  }

  body.campus #highlights section.highlight div {
    width: calc(100% - 496px - 62px);
  }

  body.programme section.text-intro div.text {
    line-height: 28px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  body.campus #highlights section.highlight {
    max-width: 1040px;
  }

  body.campus #highlights section.highlight {
    margin: 118px auto;
  }

  body.campus #highlights section.highlight figure,
  body.campus #highlights section.highlight iframe {
    width: 562px;
  }

  body.campus #highlights section.highlight figure,
  body.campus #highlights section.highlight iframe {
    height: 316px;
  }

  body.campus #highlights section.highlight div {
    width: calc(100% - 562px - 62px);
  }

  body.course section.text-intro div.text {
    line-height: 28px;
  }
}

/** Course Catalogue **************************************************/

/** Mobile **********/
@media all and (max-width: 767px) {
  body.course-catalogue {
    padding-top: 60px;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.course-catalogue {
    padding-top: 73px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.course-catalogue {
    padding-top: 155px;
  }

  body.course-catalogue header {
    background: #000;
  }
}

/** Curriculum **************************************************/

body.curriculum section.curriculum h2 {
  display: none;
  font-size: 46px;
  line-height: 44px;
}

body.curriculum section.curriculum h2::before {
  top: -26px;
}

body.curriculum #curriculums.multiple section.curriculum h2 {
  display: block;
}

body.curriculum section.curriculum ul li a.course {
  color: #000;
  cursor: pointer;
  display: block;
  padding-right: 100px;
  position: relative;
}

body.curriculum section.curriculum ul li a.course::before {
  display: none;
  transition: none;
}

body.curriculum section.curriculum ul li a.course:not(.no-credit)::before {
  border-top: 1px solid #bfbfbf;
  border-bottom: 0;
  bottom: auto;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
}

body.curriculum section.curriculum ul li a.course em {
  background: #fff;
  position: relative;
  z-index: 2;
}

body.curriculum section.curriculum ul li a.course em:first-of-type {
  box-shadow: 16px 0 0 #fff, -16px 0 0 #fff;
}

body.curriculum section.curriculum ul li a.course em:last-of-type {
  display: inline-block;
  height: 100%;
  padding-left: 16px;
  right: 0;
  position: absolute;
  top: 0;
  vertical-align: top;
}

body.curriculum section.curriculum ul li a.course.no-credit em:last-of-type {
  display: none;
}

body.curriculum section.curriculum ul li > div {
  height: 0;
  overflow: hidden;
}

body.curriculum section.curriculum ul li > div.animate {
  transition: height ease-out 0.2s;
}

body.curriculum section.curriculum ul li > div div p strong {
  font-weight: bold;
}

body.curriculum section.curriculum ul li > div div p em {
  color: #a37e27;
  display: block;
  font-size: 12px;
  line-height: 16px;
  margin-bottom: 16px;
}

body.curriculum section.curriculum div.program .semesters,
body.curriculum
  section.curriculum
  div.program
  .semesters
  div.semester:not(:last-of-type) {
  border-bottom: 1px solid #a37e37;
}

body.curriculum section.curriculum div.program .semesters div.semester h3 {
  font-weight: bold;
}

body.curriculum section.curriculum div.program .semesters div.semester > em {
  color: #a37e27;
  display: block;
  font-style: italic;
}

body.curriculum section.curriculum .electives a.show-electives {
  background-color: #000;
  background-image: url("../images/icons_plus.gif");
  background-repeat: no-repeat;
  color: #fff;
  cursor: pointer;
  font-family: "MercuryDisplay", serif;
  font-size: 16px;
  font-style: italic;
  font-weight: bold;
  height: 46px;
  line-height: 46px;
  width: 100%;
}

body.curriculum section.curriculum .electives a.show-electives::before {
  display: none;
}

body.curriculum section.curriculum .electives > div {
  height: 0;
  overflow: hidden;
}

body.curriculum section.curriculum .electives > div.animate {
  transition: height ease-out 0.2s;
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  body.curriculum section.curriculum ul.programs {
    display: none;
  }

  body.curriculum section.curriculum ul li a.course {
    padding-bottom: 0 !important;
  }

  body.curriculum section.curriculum ul li.active a.course em:first-of-type {
    font-weight: bold;
  }

  body.curriculum section.curriculum div.split ul li > div div > strong {
    display: none;
  }

  body.curriculum section.curriculum div.program:not(:first-of-type) {
    padding-top: 30px;
  }

  body.curriculum section.curriculum div.program figure {
    display: none;
  }

  body.curriculum section.curriculum div.program > h3 {
    background: #000;
    color: #fff;
    font-family: "MercuryDisplay", serif;
    font-size: 16px;
    font-style: italic;
    font-weight: bold;
    height: 46px;
    line-height: 46px;
    text-indent: 13px;
    width: 100%;
  }

  body.curriculum section.curriculum .electives {
    padding-top: 30px;
  }

  body.curriculum section.curriculum .electives a.show-electives {
    margin-bottom: 18px;
  }

  body.curriculum section.curriculum .electives ul {
    padding-left: 12px;
  }

  body.curriculum section.curriculum .electives ul li.active a.course {
    font-weight: bold;
  }
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.curriculum section.curriculum {
    padding-bottom: 18px;
  }

  body.curriculum #curriculums.multiple section.curriculum:first-of-type {
    padding-top: 32px;
  }

  body.curriculum section.curriculum:not(:first-of-type) {
    padding-top: 31px;
  }

  body.curriculum section.curriculum h2 {
    font-size: 30px;
    line-height: 32px;
    margin-bottom: 20px;
  }

  body.curriculum section.curriculum h2::before {
    top: -18px;
  }

  body.curriculum section.curriculum ul li {
    font-size: 12px;
    padding-bottom: 6px;
  }

  body.curriculum section.curriculum ul li a.course::before {
    top: 14px;
  }

  body.curriculum section.curriculum ul li p {
    padding-top: 6px;
  }

  body.curriculum section.curriculum ul li p:last-of-type {
    padding-bottom: 11px;
  }

  body.curriculum section.curriculum ul li > div div a.request-information {
    font-size: 12px;
    height: 30px;
    line-height: 30px;
    margin-bottom: 11px;
    padding: 0 10px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester {
    padding: 30px 0 19px 12px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester h3 {
    font-size: 16px;
    line-height: 14px;
    margin-bottom: 11px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester > em {
    line-height: 16px;
    margin-bottom: 10px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester > p {
    font-size: 8px;
    line-height: 10px;
    padding-top: 11px;
  }

  body.curriculum section.curriculum .electives a.show-electives {
    background-position: 11px center;
    text-indent: 31px;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.curriculum section.text-intro {
    margin-bottom: 53px;
  }

  body.curriculum section.curriculum {
    padding-bottom: 43px;
  }

  body.curriculum #curriculums.multiple section.curriculum:first-of-type {
    padding-top: 8px;
  }

  body.curriculum section.curriculum:not(:first-of-type) {
    padding-top: 23px;
  }

  body.curriculum section.curriculum h2 {
    margin-bottom: 30px;
  }

  body.curriculum section.curriculum ul li > div div a.request-information {
    font-size: 14px;
    height: 36px;
    line-height: 36px;
    margin-bottom: 8px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester {
    padding: 29px 0 29px 12px;
  }

  body.curriculum section.curriculum .electives a.show-electives {
    text-indent: 42px;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.curriculum section.curriculum ul li {
    font-size: 14px;
    padding-bottom: 6px;
  }

  body.curriculum section.curriculum ul li a.course {
    font-size: 16px;
    line-height: 27px;
  }

  body.curriculum section.curriculum ul li a.course::before {
    top: 19px;
  }

  body.curriculum section.curriculum ul li > div div {
    line-height: 24px;
  }

  body.curriculum section.curriculum ul li > div div p:first-of-type {
    padding-top: 12px;
  }

  body.curriculum section.curriculum ul li > div div a.request-information {
    margin-top: 15px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester h3 {
    font-size: 18px;
    margin-bottom: 6px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester > em {
    line-height: 19px;
    margin-bottom: 16px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester > p {
    font-size: 10px;
    line-height: 12px;
    padding-bottom: 7px;
    padding-top: 17px;
  }

  body.curriculum
    section.curriculum
    div.program
    .semesters
    div.semester
    ul
    li
    > div
    div {
    padding-left: 28px;
  }

  body.curriculum section.curriculum .electives a.show-electives {
    background-position: 16px center;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.curriculum section.text-intro {
    margin-bottom: 53px;
  }

  body.curriculum section.curriculum {
    padding-bottom: 61px;
  }

  body.curriculum #curriculums.multiple section.curriculum:first-of-type {
    padding-top: 38px;
  }

  body.curriculum section.curriculum:not(:first-of-type) {
    padding-top: 44px;
  }

  body.curriculum section.curriculum h2 {
    margin-bottom: 50px;
  }

  body.curriculum section.curriculum ul li > div div a.request-information {
    font-size: 15px;
    height: 40px;
    line-height: 40px;
  }

  body.curriculum section.curriculum ul.programs {
    border-bottom: 1px solid #a37e27;
    font-size: 0;
    padding-bottom: 46px;
  }

  body.curriculum section.curriculum ul.programs li {
    display: inline-block;
    vertical-align: top;
  }

  body.curriculum section.curriculum ul.programs li a {
    border: 1px solid #bfbfbf;
    color: #000;
    display: block;
    font-family: "MercuryDisplay", serif;
    font-size: 16px;
    font-style: italic;
    font-weight: bold;
    height: 45px;
    line-height: 45px;
    text-align: center;
    transition: background ease-in 0.2s, color ease-in 0.2s;
  }

  body.curriculum
    section.curriculum
    ul.programs
    li:not(.five):not(.four):not(:first-of-type) {
    margin-left: 11px;
  }

  body.curriculum
    section.curriculum
    ul.programs
    li:not(.five):not(.four):not(:last-of-type) {
    margin-right: 11px;
  }

  body.curriculum section.curriculum ul.programs.one li,
  body.curriculum section.curriculum ul.programs.two li {
    width: calc((100% - 22px) / 2);
  }

  body.curriculum section.curriculum ul.programs.three li {
    width: calc((100% - 44px) / 3);
  }

  body.curriculum section.curriculum ul.programs.five li {
    width: calc((100% - 44px) / 3);
  }

  body.curriculum section.curriculum ul.programs li.five:not(:nth-child(2)) {
    margin-right: 11px;
  }

  body.curriculum
    section.curriculum
    ul.programs
    li.five:not(:first-of-type):not(:nth-child(3)) {
    margin-left: 11px;
  }

  body.curriculum section.curriculum ul.programs.six li {
    width: calc((100% - 44px) / 3);
  }

  body.curriculum
    section.curriculum
    ul.programs
    li.six:not(:last-of-type):not(:nth-child(2)) {
    margin-right: 11px;
  }

  body.curriculum
    section.curriculum
    ul.programs
    li.six:not(:first-of-type):not(:nth-child(3)) {
    margin-left: 11px;
  }

  body.curriculum section.curriculum ul.programs li a::before {
    display: none;
  }

  body.curriculum section.curriculum ul.programs li a:hover,
  body.curriculum section.curriculum ul.programs li a.active {
    background: #000;
    color: #fff;
  }

  body.curriculum section.curriculum div.program {
    padding-top: 46px;
    position: relative;
  }

  body.curriculum section.curriculum div.program:not(.active) {
    display: none;
  }

  body.curriculum section.curriculum div.program figure {
    display: block;
    height: 222px;
    left: 0;
    position: absolute;
    top: 46px;
    width: 222px;
  }

  body.curriculum section.curriculum div.program > h3 {
    display: none;
  }

  body.curriculum section.curriculum div.program .semesters {
    padding-left: 256px;
  }

  body.curriculum section.curriculum div.program .semesters div.semester {
    padding-bottom: 35px;
  }

  body.curriculum
    section.curriculum
    div.program
    .semesters
    div.semester:not(:first-of-type) {
    padding-top: 39px;
  }

  body.curriculum
    section.curriculum
    div.program
    .semesters
    div.semester
    ul
    li.active
    a.course
    em:first-of-type {
    font-weight: bold;
  }

  body.curriculum
    section.curriculum
    div.program
    .semesters
    div.semester
    ul
    li:not(:last-of-type)
    > div
    div
    a.button {
    margin-bottom: 32px;
  }

  body.curriculum
    section.curriculum
    div.program
    .semesters
    div.semester
    ul
    li:last-of-type
    > div
    div
    a.button {
    margin-bottom: 8px;
  }

  body.curriculum section.curriculum .electives {
    padding-top: 32px;
  }

  body.curriculum section.curriculum .electives a.show-electives {
    margin-bottom: 23px;
    text-align: center;
  }

  body.curriculum section.curriculum div.split ul {
    font-size: 0;
  }

  body.curriculum section.curriculum div.split ul li {
    display: inline-block;
    vertical-align: top;
    width: 50%;
  }

  body.curriculum section.curriculum div.split ul li:last-of-type {
    margin-bottom: 14px;
  }

  body.curriculum section.curriculum div.split ul li:nth-child(odd) {
    padding-right: 24px;
  }

  body.curriculum section.curriculum div.split ul li:nth-child(odd) > div {
    width: calc(200% + 48px);
  }

  body.curriculum section.curriculum div.split ul li:nth-child(even) {
    padding-left: 56px;
  }

  body.curriculum section.curriculum div.split ul li:nth-child(even) > div {
    left: calc(-100% - 112px);
    position: relative;
    width: calc(200% + 112px);
  }

  body.curriculum section.curriculum div.split ul li > div div {
    border-top: 1px solid #bfbfbf;
    border-bottom: 1px solid #bfbfbf;
    margin: 40px 0 35px 0;
    padding-left: 0 !important;
  }

  body.curriculum section.curriculum div.split ul li:last-child > div div,
  body.curriculum
    section.curriculum
    div.split
    ul
    li:nth-last-of-type(-n + 2):not(:nth-child(even))
    > div
    div {
    margin-bottom: 0;
  }

  body.curriculum section.curriculum div.split ul li > div div > strong {
    display: block;
    font-weight: bold;
    padding-top: 19px;
  }

  body.curriculum section.curriculum div.split ul li > div div p:last-of-type {
    padding-bottom: 15px;
  }

  body.curriculum section.curriculum div.split ul li > div div a.button {
    margin-bottom: 23px;
  }

  body.curriculum section.curriculum div.split ul li.fadeout > div div {
    border-bottom: none;
  }

  body.curriculum section.curriculum div.split ul li.fadeout > div div * {
    opacity: 0;
  }

  body.curriculum section.curriculum div.split ul li a.course {
    padding-right: 60px;
  }

  body.curriculum section.curriculum div.split ul li a.course::after {
    display: none;
  }

  body.curriculum section.curriculum div.split ul li.active a.course {
    color: #a37e27;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.curriculum section.curriculum ul.programs.four li {
    width: calc((100% - 22px) / 2);
  }

  body.curriculum
    section.curriculum
    ul.programs
    li.four:not(:last-of-type):not(:nth-child(2)) {
    margin-right: 11px;
  }

  body.curriculum
    section.curriculum
    ul.programs
    li.four:not(:first-of-type):not(:nth-child(3)) {
    margin-left: 11px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  body.curriculum section.curriculum ul.programs.four li {
    width: calc((100% - 66px) / 4);
  }

  body.curriculum section.curriculum ul.programs li.four:not(:first-of-type) {
    margin-left: 11px;
  }

  body.curriculum section.curriculum ul.programs li.four:not(:last-of-type) {
    margin-right: 11px;
  }
}

/** Alumni **************************************************/
body.alumni.overview section.text-intro#featured-alumni div.container {
  border-bottom: 1px solid #d1bf93;
  position: relative;
}

body.alumni.overview section.text-intro {
  margin-bottom: 0;
}

body.alumni.overview section.text-intro.grey {
  margin-bottom: 0;
  overflow: hidden;
  padding-bottom: 23px;
}

body.alumni.benefits #alumni_benefits section.text-intro div.container {
  padding-top: 0;
}

body.alumni.benefits #alumni_benefits section.text-intro ul {
  border-top: 1px solid #d1bf93;
}

body.alumni.benefits #alumni_benefits section.text-intro ul li {
  border-bottom: 1px solid #d1bf93;
  padding: 41px 0 41px 268px;
  position: relative;
}

body.alumni.benefits #alumni_benefits section.text-intro ul li > em {
  color: #a37e27;
  display: block;
  font-size: 173px;
  font-weight: bold;
  left: 0;
  line-height: 173px;
  position: absolute;
  top: 29px;
}

body.alumni.benefits #alumni_benefits section.text-intro ul li h5 {
  margin-bottom: 14px;
}

body.alumni.directory section.text-intro {
  margin-bottom: 32px;
}

body.alumni.directory section#directory {
  background: #f0f0f0;
  font-size: 0;
}

body.alumni.directory section#directory #directory_login {
  border-right: 1px solid #d1bf93;
  display: inline-block;
  padding: 10px 0 4px 0;
  vertical-align: top;
  width: 378px;
}

body.alumni.directory section#directory #directory_login small {
  margin-bottom: 31px;
}

body.alumni.directory section#directory #directory_register {
  display: inline-block;
  padding: 10px 0 0 52px;
  vertical-align: top;
  width: calc(100% - 378px);
}

body.alumni.directory section#directory h2 {
  font-size: 30px;
  line-height: 30px;
  margin-bottom: 44px;
}

body.alumni.directory section#directory h2::before {
  border-top-width: 4px;
  left: 0;
  top: -17px;
  width: 34px;
}

body.alumni.directory section#directory h2 a::before {
  display: none;
}

body.alumni.directory section#directory small {
  display: block;
  font-size: 11px;
  font-weight: bold;
  line-height: 13px;
}

body.alumni.directory section#directory small a::before {
  bottom: -2px;
}

body.alumni.directory section#directory form input {
  border: 1px solid #d1bf93;
  color: #000;
  display: block;
  font-size: 14px;
  font-weight: bold;
  height: 33px;
  margin-bottom: 18px;
  padding-left: 11px;
  width: 281px;
}

body.alumni.directory section#directory form input::-webkit-input-placeholder {
  color: #000;
}

body.alumni.directory section#directory form input:-moz-placeholder {
  color: #000;
}

body.alumni.directory section#directory form input::-moz-placeholder {
  color: #000;
}

body.alumni.directory section#directory form input:-ms-input-placeholder {
  color: #000;
}

body.alumni.directory section#directory form button {
  background: #a37e27;
  border: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "MercuryDisplay", serif;
  font-size: 14px;
  font-style: italic;
  height: 32px;
  line-height: 32px;
  padding: 0;
  text-align: center;
  width: 102px;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.alumni.overview section.text-intro div.container,
  body.alumni.networking #alumni_details section.text-intro div.container {
    padding-top: 47px;
  }

  body.alumni.overview section.text-intro#featured-alumni div.container {
    padding-bottom: 30px;
  }

  body.alumni.overview section.text-intro#featured-alumni div.video {
    margin: 17px 0 54px 0;
  }

  body.alumni.overview #alumni_details section.text-intro:last-of-type {
    margin-bottom: 23px;
  }

  body.alumni.overview
    #alumni_news
    section.text-intro:first-of-type
    div.container,
  body.alumni.networking
    #alumni_details
    section.text-intro:first-of-type
    div.container {
    padding-top: 47px;
  }

  body.alumni.benefits #alumni_benefits section.text-intro ul li {
    padding: 5px 0 25px 0;
  }

  body.alumni.benefits #alumni_benefits section.text-intro ul li > em {
    margin-bottom: 28px;
    position: relative;
    top: 19px;
  }

  body.alumni.benefits #alumni_benefits section.text-intro ul li h5 {
    margin-bottom: 10px;
  }

  body.alumni.directory section#directory div.container {
    padding: 50px 0 30px 0;
  }

  body.alumni.directory section#directory h2 {
    margin-bottom: 18px;
  }

  body.alumni.directory section#directory small {
    line-height: 14px;
  }

  body.alumni.directory section#directory small a::before {
    display: none;
  }

  body.alumni.directory section#directory #directory_login {
    border-right: none;
    display: block;
    margin-bottom: 21px;
    padding: 0;
    width: 100%;
  }

  body.alumni.directory section#directory #directory_login small {
    margin-bottom: 16px;
  }

  body.alumni.directory section#directory #directory_register {
    display: block;
    padding: 0 0 25px 0;
    width: 100%;
  }

  body.alumni.directory section#directory #directory_register h2 {
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-size: 11px;
    line-height: 14px;
    margin-bottom: 14px;
  }

  body.alumni.directory section#directory #directory_register h2::before {
    display: none;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.alumni.overview section.text-intro div.container,
  body.alumni.networking #alumni_details section.text-intro div.container {
    padding-top: 91px;
  }

  body.alumni.overview section.text-intro#featured-alumni div.video {
    margin: 35px 0 72px 0;
  }

  body.alumni.overview #alumni_details section.text-intro:last-of-type {
    margin-bottom: 48px;
  }

  body.alumni.overview
    #alumni_news
    section.text-intro:first-of-type
    div.container {
    padding-top: 91px;
  }

  body.alumni.overview #alumni_news section.news-events div.container {
    padding-top: 79px;
  }

  body.alumni.directory section#directory div.container {
    padding: 60px 0 40px 0;
  }

  body.alumni.directory section#directory small a::before {
    display: none;
  }

  body.alumni.directory section#directory #directory_login {
    padding: 10px 0 4px 0;
    width: 298px;
  }

  body.alumni.directory section#directory #directory_register {
    padding: 10px 0 0 40px;
    width: calc(100% - 298px);
  }
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  body.alumni.overview section.text-intro#featured-alumni h2 div.share {
    display: none;
  }

  body.alumni.overview section.text-intro#featured-alumni div.text div.share {
    margin-top: 20px;
    width: 100%;
  }

  body.alumni.overview section.text-intro#featured-alumni div.text {
    margin-top: 10px;
  }

  body.alumni.overview section.text-intro#featured-alumni a.button {
    margin-top: 17px;
  }

  body.alumni.directory section#directory div.container iframe {
    display: none;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.alumni.overview section.text-intro#featured-alumni div.container {
    padding-bottom: 48px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.alumni.overview section.text-intro div.container,
  body.alumni.networking #alumni_details section.text-intro div.container {
    padding-top: 74px;
  }

  body.alumni.overview section.text-intro#featured-alumni div.container,
  body.alumni.networking
    #alumni_details
    section.text-intro:first-of-type
    div.container {
    padding-top: 88px;
  }

  body.alumni.overview section.text-intro#featured-alumni div.video {
    margin: 48px 0 88px 0;
  }

  body.alumni.overview section.text-intro#featured-alumni div.text div.share {
    display: none;
  }

  body.alumni.overview section.text-intro#featured-alumni a.button {
    bottom: 53px;
    position: absolute;
    right: 0;
  }

  body.alumni.overview #alumni_details section.text-intro:last-of-type {
    margin-bottom: 77px;
  }

  body.alumni.overview #alumni_news section.text-intro {
    padding-bottom: 0;
  }

  body.alumni.overview
    #alumni_news
    section.text-intro:first-of-type
    div.container {
    padding-top: 129px;
  }

  body.alumni.overview #alumni_news section.news-events div.container {
    padding-top: 79px;
  }

  body.alumni.directory {
    padding-top: 155px;
  }

  body.alumni.directory header {
    background: #000;
  }

  body.alumni.directory section#directory div.container iframe {
    height: 690px;
    width: 100%;
  }

  body.alumni.directory section#directory div.container h2,
  body.alumni.directory section#directory div.container p {
    display: none;
  }
}

/** Admissions **************************************************/

body.admissions h5 {
  font-weight: bold;
  margin-bottom: 4px;
}

body.admissions.partnerships div.partnership {
  position: relative;
}

body.admissions.request-information
  section.text-intro#admission-contacts
  div.container {
  padding-top: 0;
}

body.admissions.request-information section#request-information {
  background: #f0f0f0;
  font-size: 0;
  padding-bottom: 48px;
}

body.admissions.request-information section#request-information div.container {
  padding-top: 86px;
}

body.admissions.request-information section#request-information h2 {
  font-size: 36px;
  line-height: 36px;
  margin-bottom: 44px;
}

body.admissions.request-information section#request-information h2::before {
  border-top-width: 4px;
  left: 0;
  top: -17px;
  width: 34px;
}

body.admissions.request-information section#request-information h2 a::before {
  display: none;
}

body.admissions.request-information section#request-information iframe {
  height: 610px;
}

body.admissions.request-information section#request-information small {
  display: block;
  font-size: 11px;
  font-weight: bold;
  line-height: 13px;
}

body.admissions.request-information
  section#request-information
  small
  a::before {
  bottom: -2px;
}

body.admissions.request-information section#request-information form > div {
  display: inline-block;
  font-size: 0;
  vertical-align: top;
  width: calc(50% - 15px);
}

body.admissions.request-information
  section#request-information
  form
  > div:first-of-type {
  margin-right: 30px;
}

body.admissions.request-information section#request-information fieldset {
  margin-bottom: 24px;
}

body.admissions.request-information section#request-information form input,
body.admissions.request-information section#request-information form textarea {
  border: 1px solid #d1bf93;
  color: #000;
  display: block;
  font-size: 14px;
  font-weight: bold;
  height: 35px;
  text-indent: 11px;
  width: 100%;
}

body.admissions.request-information section#request-information form textarea {
  height: 212px;
  margin-bottom: 0;
  padding: 11px 6px;
  resize: none;
}

body.admissions.request-information section#request-information form select {
  left: -9999px;
  position: absolute;
  top: -9999px;
}

body.admissions.request-information
  section#request-information
  form
  input::-webkit-input-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  input:-moz-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  input::-moz-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  input:-ms-input-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  textarea::-webkit-input-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  textarea:-moz-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  textarea::-moz-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  textarea:-ms-input-placeholder {
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  select:disabled
  + div.select {
  color: #c8c8c8;
}

body.admissions.request-information
  section#request-information
  form
  div.select {
  background: #fff;
  border: 1px solid #d1bf93;
  color: #000;
  cursor: pointer;
  display: inline-block;
  font-family: "MercuryDisplay", serif;
  font-size: inherit;
  font-style: italic;
  font-weight: bold;
  height: 35px;
  line-height: 35px;
  position: relative;
  width: 100%;
}

body.admissions.request-information
  section#request-information
  form
  div.select:after {
  border-style: solid;
  border-width: 2px 2px 0 0;
  content: " ";
  display: block;
  height: 9px;
  position: absolute;
  right: 9px;
  top: 7px;
  width: 9px;
  z-index: 2;
  transform: rotate(135deg);
}

body.admissions.request-information
  section#request-information
  form
  div.select
  small {
  font-size: 14px;
  line-height: 32px;
  text-indent: 11px;
}

body.admissions.request-information
  section#request-information
  form
  div.select
  ul {
  background: #fff;
  border: 1px solid #d1bf93;
  border-top: none;
  display: none;
  left: -1px;
  position: absolute;
  top: 31px;
  width: calc(100% + 2px);
  z-index: 20;
}

body.admissions.request-information
  section#request-information
  form
  div.select
  ul
  li {
  line-height: 16px;
  padding: 6px 11px;
}

body.admissions.request-information
  section#request-information
  form
  div.select
  ul
  li:hover {
  color: #a9a9a9;
}

body.admissions.request-information
  section#request-information
  form
  div.select.active {
  background: #fff;
  border-bottom-color: #fff;
  color: #000;
}

body.admissions.request-information
  section#request-information
  form
  div.select.active:after {
  display: none;
}

body.admissions.request-information
  section#request-information
  form
  div.select.active
  ul {
  display: block;
}

body.admissions.request-information
  section#request-information
  form
  input[type="checkbox"] {
  border: 1px solid #d1bf93;
  cursor: pointer;
  float: left;
  height: 15px;
  margin: 0 9px 0 0;
  width: 15px;
}

body.admissions.request-information
  section#request-information
  form
  input[type="checkbox"]::after {
  background: #a37e27;
  content: " ";
  display: block;
  height: 9px;
  margin: 2px;
  width: 9px;
  opacity: 0;
  transition: opacity 0.2s;
}

body.admissions.request-information
  section#request-information
  form
  input[type="checkbox"]:checked::after {
  opacity: 1;
}

body.admissions.request-information
  section#request-information
  form
  label:not(.hidden) {
  display: block;
  font-size: 11px;
  font-weight: bold;
  line-height: 14px;
  margin-bottom: 18px;
}

body.admissions.request-information section#request-information form button {
  background: #a37e27;
  border: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "MercuryDisplay", serif;
  font-size: 14px;
  font-style: italic;
  height: 35px;
  line-height: 35px;
  padding: 0;
  text-align: center;
  width: 102px;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.admissions section.text-intro h5 {
    font-size: 14px;
    line-height: 18px;
  }

  body.admissions section.text-intro h5 a::before {
    bottom: 0;
  }

  body.admissions.sections
    section.text-intro:nth-child(n + 2):not(:last-of-type)
    div.container {
    border-bottom: 1px solid #d1bf93;
  }

  body.admissions.partnerships div.partnership {
    margin-top: 39px;
  }

  body.admissions.partnerships section.text-intro.grey {
    padding-bottom: 18px;
  }

  body.admissions.partnerships div.partnership span.image_bg {
    display: block;
    height: 45px;
    margin-bottom: 19px;
  }

  body.admissions.request-information
    section#request-information
    div.container {
    padding-top: 52px;
  }

  body.admissions.request-information div.admission-contact:not(:last-of-type) {
    margin-bottom: 30px;
  }

  body.admissions.request-information div.admission-contact span {
    margin-bottom: 17px;
    padding-bottom: 52%;
    position: relative;
    width: 100%;
  }

  body.admissions.request-information section#request-information h2 {
    margin-bottom: 30px;
  }

  body.admissions.request-information section#request-information iframe {
    width: 100%;
  }

  body.admissions.request-information section#request-information form > div {
    display: block;
    width: 100%;
  }

  body.admissions.request-information
    section#request-information
    form
    > div:first-of-type {
    margin-right: 0;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.admissions section.text-intro h5 a::before {
    bottom: 2px;
  }

  body.admissions.sections div.admissions_container {
    margin-bottom: 51px;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) div.container {
    border-bottom: 1px solid #d1bf93;
    padding-top: 0;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) h2 {
    font-size: 36px;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) h2::before {
    border-top-width: 4px;
    left: 0;
    top: -17px;
    width: 34px;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) h5 {
    font-size: 16px;
  }

  body.admissions.partnerships div.partnership {
    margin-top: 57px;
  }

  body.admissions.partnerships section.text-intro.grey {
    padding-bottom: 17px;
  }

  body.admissions.request-information div.admission-contact {
    padding-left: 206px;
    position: relative;
  }

  body.admissions.request-information div.admission-contact:not(:last-of-type) {
    margin-bottom: 74px;
  }

  body.admissions.request-information div.admission-contact:last-of-type {
    margin-bottom: 26px;
  }

  body.admissions.request-information div.admission-contact span {
    height: 170px;
    width: 170px;
  }
}

/** Tablet & Mobile **********/
@media all and (max-width: 1024px) {
  body.admissions.sections section.text-intro:nth-child(3) div.container {
    border-top: 1px solid #d1bf93;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) {
    margin-bottom: 0;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) div.container {
    padding-top: 0;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) h2::after {
    background: url("../images/icons_subsection-arrow.png") bottom right
      no-repeat;
    background-size: 19px 12px;
    content: " ";
    display: block;
    height: 12px;
    position: absolute;
    right: 6px;
    top: 19px;
    width: 19px;
    opacity: 1;
    transform: rotate(90deg);
    transition: transform 0.3s;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) div.text {
    margin-top: 0;
    max-height: 0;
    overflow: hidden;
    padding-right: 40px;
    transition: max-height 0.75s;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2).active div.text {
    max-height: 2000px;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) h2 {
    color: #000;
    cursor: pointer;
    display: block;
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-size: 14px;
    font-weight: bold;
    line-height: 22px;
    margin-bottom: 0;
    padding: 17px 40px 15px 0;
    text-transform: uppercase;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) h2::before {
    display: none;
  }

  body.admissions.sections
    section.text-intro:nth-child(n + 2).active
    h2::after {
    right: 6px;
    transform: rotate(270deg);
  }

  body.admissions.requirements div.table-of-contents {
    display: none;
  }

  body.admissions.request-information div#ri {
    position: relative;
    top: -60px;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.admissions section.text-intro h5 {
    font-size: 18px;
  }

  body.admissions.partnerships div.partnership {
    padding-left: 220px;
  }

  body.admissions.partnerships div.partnership span.image_bg {
    display: block;
    height: 120px;
    left: 0;
    position: absolute;
    top: 6px;
    width: 190px;
  }

  body.admissions.request-information section.text-intro#intro {
    margin-bottom: 54px;
  }

  body.admissions.request-information div.admission-contact span {
    left: 0;
    position: absolute;
    top: 6px;
  }
}

/** Tablet Portrait **********/
@media all and (min-width: 768px) and (max-width: 960px) {
  body.admissions.partnerships div.partnership {
    padding-left: 172px;
  }

  body.admissions.partnerships div.partnership span.image_bg {
    width: 142px;
  }

  body.admissions.request-information section#request-information iframe {
    width: 60%;
  }
}

/** Tablet Landscape **********/
@media all and (min-width: 960px) and (max-width: 1024px) {
  body.admissions.request-information section#request-information iframe {
    width: 50%;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.admissions section.text-intro h5 a::before {
    bottom: 2px;
  }

  body.admissions.overview #intro {
    margin-bottom: 57px;
  }

  body.admissions.sections section.text-intro {
    margin-bottom: 62px;
  }

  body.admissions.sections section.text-intro h2 {
    font-size: 36px;
  }

  body.admissions.sections section.text-intro h2::before {
    border-top-width: 4px;
    left: 0;
    top: -17px;
    width: 34px;
  }

  body.admissions.sections section.text-intro:nth-child(n + 2) div.container {
    padding-top: 0;
  }

  body.admissions.requirements div.admissions_container {
    margin: 0 auto;
    position: relative;
  }

  body.admissions.requirements div.table-of-contents {
    border-top: 4px solid #000;
    left: 0;
    font-size: 12px;
    font-weight: bold;
    line-height: 22px;
    padding-top: 33px;
    position: absolute;
    text-align: right;
    text-transform: uppercase;
    top: 123px;
    width: 213px;
    z-index: 10;
    backface-visibility: hidden;
    perspective: 1000;
  }

  body.admissions.requirements div.table-of-contents a {
    color: #999;
    transition: color 0.25s;
  }

  body.admissions.requirements
    div.table-of-contents
    a:not(:last-of-type)::after {
    display: block;
    margin-bottom: 22px;
  }

  body.admissions.requirements div.table-of-contents a:hover,
  body.admissions.requirements div.table-of-contents a.active {
    color: #000;
  }

  body.admissions.requirements div.table-of-contents a::after {
    content: " ";
    display: block;
  }

  body.admissions.requirements section.text-intro div.container {
    padding-left: 273px;
  }

  body.admissions.partnerships div.partnership {
    margin-top: 87px;
  }

  body.admissions.partnerships section.text-intro.grey {
    padding-bottom: 48px;
  }

  body.admissions.request-information section.text-intro#admission-contacts {
    margin-bottom: 7px;
  }

  body.admissions.request-information div.admission-contact {
    float: left;
    margin-bottom: 64px;
    padding-left: 158px;
    position: relative;
    width: calc(50% - 25px);
  }

  body.admissions.request-information div.admission-contact:nth-child(odd) {
    margin-right: 50px;
  }

  body.admissions.request-information div.admission-contact span {
    height: 128px;
    width: 128px;
  }

  body.admissions.request-information section#request-information iframe {
    width: 50%;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.admissions.requirements div.admissions_container {
    width: 920px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  body.admissions.requirements div.admissions_container {
    width: 1040px;
  }
}

/** Contact **************************************************/
body.contact.overview
  section.text-intro
  div.contact
  > div:last-of-type
  span.image_bg {
  display: block;
  width: 100%;
}

body.contact section.banner h1 {
  position: relative;
  white-space: pre-line;
}

body.contact.campus section#contact-map {
  width: 100%;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.contact.overview section.text-intro div.contact > div:first-of-type {
    margin-bottom: 18px;
  }

  body.contact.overview
    section.text-intro
    div.contact
    > div:last-of-type
    span.image_bg {
    margin-bottom: 21px;
    padding-bottom: 59%;
  }

  body.contact.overview section.text-intro div.contact:not(:last-of-type) {
    margin-bottom: 60px;
  }

  body.contact section.banner h1 {
    font-size: 62px;
    line-height: 62px;
    margin-bottom: 31px;
  }

  body.contact section.banner h1::before {
    border-top-width: 4px;
    top: -21px;
  }

  body.contact.campus section#contact-map {
    height: calc(56vw) !important;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.contact.overview section.text-intro#campus-contacts {
    margin-bottom: 38px;
  }

  body.contact.overview section.text-intro div.contact:not(:last-of-type) {
    margin-bottom: 87px;
  }

  body.contact.overview
    section.text-intro
    div.contact
    > div:last-of-type
    span.image_bg {
    padding-bottom: 48%;
  }

  body.contact section.banner {
    padding-top: 100px;
  }

  body.contact section.banner h1 {
    font-size: 87px;
    line-height: 90px;
  }

  body.contact section.banner h1::before {
    border-top-width: 6px;
    top: -29px;
    width: 60px;
  }

  body.contact.campus section#contact-map {
    height: 440px !important;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.contact.overview
    section.text-intro
    div.contact
    > div:last-of-type
    span.image_bg {
    margin-bottom: 21px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.contact.overview section.text-intro#campus-contacts {
    margin-bottom: 46px;
  }

  body.contact.overview section.text-intro div.contact > div {
    float: left;
    width: 50%;
  }

  body.contact.overview section.text-intro div.contact > div:first-of-type h2 {
    white-space: pre-line;
  }

  body.contact.overview
    section.text-intro
    div.contact
    > div:last-of-type
    span.image_bg {
    height: 320px;
    width: calc(50vw - 9px);
  }

  body.contact.overview section.text-intro div.contact:not(:last-of-type) {
    margin-bottom: 71px;
  }

  body.contact.overview section.text-intro div.contact > div:last-of-type {
    margin-top: -34px;
  }

  body.contact section.banner {
    padding: 265px 0 0 150px;
  }

  body.contact section.banner h1 {
    font-size: 100px;
    line-height: 102px;
  }

  body.contact section.banner h1::before {
    border-top: 6px solid #fff;
    top: -34px;
  }

  body.contact.campus section.text-intro {
    margin-bottom: 48px;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.contact.campus section#contact-map {
    height: 588px !important;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.contact.overview
    section.text-intro
    div.contact
    > div:last-of-type
    span.image_bg {
    max-width: 750px;
  }

  body.contact section.banner {
    padding: 265px 0 0 150px;
  }

  body.contact section.banner h1 {
    font-size: 100px;
    line-height: 102px;
  }

  body.contact section.banner h1::before {
    border-top: 6px solid #fff;
    top: -34px;
  }

  body.contact.campus section#contact-map {
    height: 610px !important;
  }
}

/** Desktop Larger **********/
@media all and (min-width: 1367px) {
  body.contact section.banner h1 {
    font-size: 126px;
    line-height: 130px;
  }

  body.contact section.banner h1::before {
    border-top: 7px solid #fff;
    top: -34px;
    width: 70px;
  }
}

/** Language **************************************************/
body.language.inner section.text-intro.campuses div.campus div.video {
  margin-top: 0;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.language.inner section.text-intro.campuses div.campus {
    margin-bottom: 28px;
  }

  body.language.landing
    section.text-intro#intro
    + section.text-intro#explore
    div.container {
    padding-top: 36px;
  }

  body.language.inner section.text-intro.campuses div.text:first-of-type {
    margin-bottom: 15px;
  }

  body.language.inner section.text-intro.campuses div.campus div.text {
    margin-bottom: 29px;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.language.landing section.text-intro#intro {
    margin-bottom: 43px;
  }

  body.language.landing
    section.text-intro#intro
    + section.text-intro#explore
    div.container {
    padding-top: 43px;
  }

  body.language.landing section.text-intro#explore div.container {
    padding-top: 96px;
  }

  body.language.inner section.text-intro.campuses div.campus {
    margin-bottom: 56px;
  }

  body.language.inner section.text-intro.campuses div.text:first-of-type {
    margin-bottom: 17px;
  }

  body.language.inner section.text-intro.campuses div.campus div.text {
    margin-bottom: 58px;
  }
}

/** Search **************************************************/

body.search section.search {
  background: #fff;
  margin-bottom: 55px;
}

body.search section.search ul li {
  float: left;
  position: relative;
  transition: opacity 0.375s, transform 0.5s ease-out;
}

body.search section.search ul li:not(.loaded) {
  pointer-events: none;
  opacity: 0;
}

body.search section.search ul li a {
  display: block;
  margin-bottom: 11px;
}

body.search section.search ul li a::before {
  display: none;
}

body.search section.search ul li em {
  color: #a37e27;
  display: block;
  font-size: 10px;
  font-weight: bold;
  text-transform: uppercase;
}

body.search section.search ul li strong {
  display: block;
  font-family: "MercuryDisplay", serif;
}

body.search section.search ul li strong {
  font-size: 20px;
  font-weight: 600;
  line-height: 24px;
  margin-bottom: 14px;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.search section.search_header {
    padding: 30px 0;
  }

  body.search section.search_header small {
    display: block;
    font-size: 14px;
    font-weight: bold;
    margin: 0 auto;
    text-align: center;
  }

  body.search section.search_header form,
  body.search section.search_header button {
    display: none;
  }

  body.search section.search {
    padding-top: 20px;
  }

  body.search section.search ul li {
    margin-bottom: 30px;
    width: 100%;
  }

  body.search section.search ul li > a {
    height: auto;
    margin-bottom: 12px;
    padding: 0 0 56.2% 0;
  }

  body.search section.search ul li em {
    margin-bottom: 4px;
  }

  body.search section.search ul li em {
    margin-bottom: 9px;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.search section.search ul li {
    width: calc(50% - 10px);
  }

  body.search section.search ul li a {
    height: calc((50vw - 10px) * 0.526);
  }

  body.search section.search ul li:nth-child(2n + 2) {
    margin-right: 0;
  }

  body.search section.search ul li:nth-child(2n + 1) {
    clear: left;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.search section.search_header {
    height: 339px;
    text-align: center;
    text-transform: uppercase;
  }

  body.search section.search_header div.container {
    height: auto;
    top: 50%;
    transform: translateY(-50%);
  }

  body.search section.search_header small {
    background: url("../images/icons_search-results.png") left 7px no-repeat;
    color: #929292;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    margin: 0 auto 18px auto;
    padding-left: 17px;
  }

  body.search section.search_header small span {
    display: none;
  }

  body.search section.search_header form input {
    background: none;
    border: none;
    display: block;
    font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
    font-size: 33px;
    font-style: normal;
    font-weight: 900;
    line-height: 37px;
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase;
  }

  body.search section.search_header button {
    background: none;
    color: #a37e27;
    font-family: inherit;
    font-size: 10px;
    font-style: normal;
    font-weight: bold;
    height: auto;
    line-height: normal;
    padding: 0;
    text-transform: uppercase;
  }

  body.search section.search {
    padding-top: 60px;
  }

  body.search section.search ul li {
    margin: 0 20px 44px 0;
  }

  body.search section.search ul li em {
    margin-bottom: 8px;
  }

  body.search section.search ul li strong {
    margin-bottom: 14px;
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.search header:not(.search) {
    background-color: #000;
  }

  body.search section.search_header {
    margin-top: 155px;
  }

  body.search section.search ul li {
    font-size: 12px;
    line-height: 22px;
    margin: 0 20px 44px 0;
  }

  body.search section.search ul li em small {
    color: #000;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  body.search section.search ul li {
    width: 292px;
  }

  body.search section.search ul li:nth-child(3n + 1) {
    clear: left;
  }

  body.search section.search ul li:nth-child(3n + 3) {
    margin-right: 0;
  }

  body.search section.search ul li a {
    height: 154px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  body.search section.search ul li {
    width: 332px;
  }

  body.search section.search ul li:nth-child(3n + 1) {
    clear: left;
  }

  body.search section.search ul li:nth-child(3n + 3) {
    margin-right: 0;
  }

  body.search section.search ul li a {
    height: 175px;
  }
}

/** Pages **************************************************/
body.pages section.article div.container {
  border-top: none;
  margin-bottom: 0;
  padding-top: 0;
}

body.pages section.article div.container hr:first-child {
  margin-top: 0;
}

body.pages section.share div.share-article {
  margin-top: 0;
}

body.pages table {
  border: none;
  border-collapse: collapse;
  width: 100%;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.pages section.article {
    margin-bottom: 15px;
  }

  body.pages section.share {
    margin-bottom: 23px;
  }

  body.pages section.article div.container h2:first-child {
    margin-top: 14px;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  body.pages section.article {
    margin-bottom: 66px;
  }

  body.pages section.article div.container h2:first-child {
    padding-top: 74px;
  }

  body.pages section.article div.container h2:first-child::before {
    top: 40px;
  }

  body.pages section.share {
    margin-bottom: 80px;
  }
}

/** Individual Rights **************************************************/
body.pages #individual-rights {
  background: #f0f0f0;
  margin-bottom: 0;
  padding-bottom: 20px;
}

body.pages #individual-rights div.container {
  height: auto;
  max-width: 520px;
}

body.pages section#form {
  background: #f0f0f0;
  color: #666;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 11px;
  line-height: 14px;
  padding-bottom: 100px;
}

body.pages section#form div.container {
  height: auto;
  max-width: 520px;
}

body.pages section#form fieldset {
  margin-bottom: 18px;
  position: relative;
}

body.pages section#form form input[type="text"],
body.pages section#form form select,
body.pages section#form form textarea {
  background: #fff;
  border: 1px solid #d1bf93;
  color: #000;
  display: block;
  font-size: 14px;
  font-weight: bold;
  height: 35px;
  position: relative;
  text-indent: 11px;
  width: 100%;
}

body.pages section#form form select::-ms-expand {
  display: none;
}

body.pages section#form form select option {
  color: #000;
  font-weight: bold;
}

body.pages section#form form textarea {
  height: 94px;
  resize: none;
  padding: 11px;
  text-indent: 0;
}

body.pages section#form form fieldset span.help-block {
  bottom: -15px;
  color: red;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 9px;
  position: absolute;
  right: 7px;
  text-transform: uppercase;
}

body.pages section#form form div#iagree {
  border: none !important;
  font-family: "MercuryDisplay", serif;
  font-size: 14px;
  font-style: italic;
  font-weight: bold;
}

body.pages section#form form div.checkbox {
  height: 30px;
  padding-left: 30px;
  position: relative;
}

body.pages section#form form div.checkbox input[type="checkbox"] {
  border: none;
  cursor: pointer;
  display: inline-block;
  height: 20px;
  left: -3px;
  position: absolute;
  top: 0;
  width: 0;
}

body.pages section#form form div.checkbox input[type="checkbox"]::after {
  background: #fff;
  border: 1px solid #d1bf93;
  content: "";
  display: inline-block;
  height: 20px;
  left: 0;
  position: absolute;
  top: 0;
  width: 20px;
}

body.pages
  section#form
  form
  div.checkbox
  input[type="checkbox"]:checked::after {
  background: #a37e27;
}

body.pages section#form form div.checkbox span.help-block {
  left: 30px;
  right: auto;
}

body.pages section#form form div.select {
  position: relative;
}

body.pages section#form form div.select::after {
  border-color: #000;
  border-style: solid;
  border-width: 2px 2px 0 0;
  bottom: 15px;
  content: " ";
  display: block;
  height: 9px;
  pointer-events: none;
  position: absolute;
  right: 15px;
  width: 9px;
  z-index: 2;
  transform: rotate(135deg);
}

body.pages section#form form input[type="text"]::-webkit-input-placeholder {
  color: #000;
}

body.pages section#form form input[type="text"]:-moz-placeholder {
  color: #000;
}

body.pages section#form form input[type="text"]::-moz-placeholder {
  color: #000;
}

body.pages section#form form input[type="text"]:-ms-input-placeholder {
  color: #000;
}

body.pages section#form form textarea::-webkit-input-placeholder {
  color: #000;
}

body.pages section#form form textarea:-moz-placeholder {
  color: #000;
}

body.pages section#form form textarea::-moz-placeholder {
  color: #000;
}

body.pages section#form form textarea:-ms-input-placeholder {
  color: #000;
}

body.pages section#form form fieldset.submit button {
  background: #a37e27;
  border: none;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "MercuryDisplay", serif;
  font-size: 16px;
  font-style: italic;
  font-weight: bold;
  height: 32px;
  line-height: 32px;
  padding: 0;
  text-align: center;
  width: 102px;
}

body.pages section#form form fieldset.submit span.help-block {
  display: none;
  float: right;
  position: relative;
  top: 3px;
  width: 150px;
}

body.pages section#form form.thank-you fieldset.submit span.help-block {
  display: block;
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  body.pages #individual-rights div.container {
    padding-top: 300px;
  }
}

/** Widget **************************************************/

section#widget {
  height: 100%;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition: opacity 0s 1.2s;
  width: 100%;
  z-index: 6000;
}

section#widget > div {
  position: relative;
}

section#widget > div a::before {
  display: none;
}

section#widget div#widget-info a.logo {
  background-image: url("../images/icons_logo-black.png");
  background-repeat: no-repeat;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  text-indent: -9999px;
  transition: clip ease 0.4s 0.8s;
  width: 100%;
}

section#widget div#widget-info strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-weight: bold;
  white-space: pre-line;
}

section#widget div#widget-info p {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
}

section#widget div#widget-info em {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-weight: bold;
}

section#widget div#widget-info em a {
  border-bottom: 1px solid #000;
  color: inherit;
  display: inline-block;
  line-height: 28px;
  transition: color 0.25s;
}

section#widget div#widget-info em a:hover {
  color: #a37e27;
}

section#widget div#widget-info::after {
  background: #fff;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transition: width ease 0.4s 0.8s;
  width: 0;
  z-index: -1;
}

section#widget div#widget-selections a[widget] {
  color: #fff;
  cursor: pointer;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-weight: bold;
  position: absolute;
  text-transform: uppercase;
  z-index: 20;
}

section#widget div#widget-selections div[widget-selection] {
  background: #000;
  color: #fff;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-weight: bold;
  height: calc(100% / 3);
  opacity: 0;
  overflow: hidden;
  position: absolute;
  width: 100%;
}

section#widget div#widget-selections div[widget-selection] > div {
  height: 100%;
  position: absolute;
  width: 100%;
}

.preserve3d section#widget div#widget-selections div[widget-selection] {
  perspective: 1000;
  transform: perspective(1000px);
  transform-style: preserve-3d;
}

.preserve3d section#widget div#widget-selections div[widget-selection] > div {
  transform: perspective(1000px);
  transform-style: preserve-3d;
}

.preserve3d
  section#widget
  div#widget-selections:not(.reset)
  div[widget-selection]
  > div {
  transition: transform 0.5s;
}

.preserve3d section#widget div#widget-selections div[widget-selection] div.list,
.preserve3d
  section#widget
  div#widget-selections
  div[widget-selection]
  div.selection {
  backface-visibility: hidden;
  transform: rotateX(0deg);
  transform-style: preserve-3d;
  transition: transform 0.5s;
}

.preserve3d
  section#widget
  div#widget-selections
  div[widget-selection]
  div.selection {
  transform: rotateX(180deg);
}

.preserve3d
  section#widget
  div#widget-selections
  div[widget-selection]
  div.list {
  transform: rotateX(0deg);
}

.preserve3d
  section#widget
  div#widget-selections
  div[widget-selection].selection
  > div {
  transform: rotateX(180deg);
}

.preserve3d
  section#widget
  div#widget-selections
  div[widget-selection].selection
  div.list {
  transform: rotateX(180deg);
}

.preserve3d
  section#widget
  div#widget-selections
  div[widget-selection].selection
  div.selection {
  transform: rotateX(0deg);
}

.no-preserve3d
  section#widget
  div#widget-selections
  div[widget-selection]
  div.list {
  opacity: 1;
  transition: opacity ease-out 0.2s 0.2s;
}

.no-preserve3d
  section#widget
  div#widget-selections
  div[widget-selection]
  div.selection {
  opacity: 0;
  pointer-events: none;
  transition: opacity ease-out 0.2s;
}

.no-preserve3d
  section#widget
  div#widget-selections
  div[widget-selection].selection
  div.list {
  opacity: 0;
  pointer-events: none;
  transition: opacity ease-out 0.2s;
}

.no-preserve3d
  section#widget
  div#widget-selections
  div[widget-selection].selection
  div.selection {
  opacity: 1;
  pointer-events: auto;
  transition: opacity ease-out 0.2s 0.2s;
}

section#widget div#widget-selections div[widget-selection] strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-weight: bold;
}

section#widget div#widget-selections div[widget-selection] a {
  color: inherit;
  transition: color 0.25s;
}

section#widget div#widget-selections div[widget-selection] a[widget="back"] {
  background: url("../images/icons_widget_back.svg") left center no-repeat;
  background-size: 16px auto;
  padding-left: 22px;
}

section#widget div#widget-selections div[widget-selection] a:hover {
  color: #b9b9b9;
}

section#widget div#widget-selections div[widget-selection] div.widget-content {
  font-size: 0;
  left: 0;
  position: absolute;
  top: 50%;
  width: 100%;
}

section#widget
  div#widget-selections
  div[widget-selection="course"]
  div.widget-content {
  transform: translateY(-50%);
}

section#widget div#widget-selections div[widget-selection] div.list,
section#widget div#widget-selections div[widget-selection] div.selection {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
}

section#widget div#widget-selections div[widget-selection] div.list {
  width: 100%;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  strong {
  color: #a37e27;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul {
  font-size: 0;
  height: 120px;
  width: 510px;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul
  li {
  font-size: 13px;
  line-height: 24px;
  opacity: 1;
  text-transform: uppercase;
  transition: opacity ease 0.2s;
  vertical-align: top;
  width: 255px;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul
  li.pairing {
  opacity: 0;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul
  li.unavailable {
  display: none;
}

section#widget
  div#widget-selections
  div[widget-selection="course"]
  div.list
  div.widget-content
  ul
  li {
  display: inline-block;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul
  li
  a {
  cursor: pointer;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul
  li
  span,
section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul
  li
  strong,
section#widget
  div#widget-selections
  div[widget-selection]
  div.list
  div.widget-content
  ul
  li
  p {
  display: none;
}

section#widget div#widget-selections div[widget-selection] div.selection {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 2;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.selection::after {
  background: rgba(0, 0, 0, 0.5);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.selection
  div.widget-content {
  display: block;
  text-align: center;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.selection
  div.widget-content
  strong {
  margin-bottom: calc(5.68vh);
  position: relative;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.selection
  div.widget-content
  strong::after {
  border-top: 5px solid #a37e27;
  content: "";
  display: block;
  bottom: calc(-3.36vh);
  left: calc(50% - 24px);
  position: absolute;
  width: 48px;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.selection
  div.widget-content
  p {
  text-transform: uppercase;
  white-space: pre-line;
}

section#widget
  div#widget-selections
  div[widget-selection]
  div.selection
  a.learn-more {
  left: 50%;
  position: absolute;
  text-transform: uppercase;
  transform: translateX(-50%);
}

section#widget div#widget-selections div[widget-selection="campus"] {
  border-bottom: 1px solid #808080;
  top: 0;
  transition: opacity ease 0.4s 0.4s;
}

section#widget div#widget-selections div[widget-selection="program"] {
  border-bottom: 1px solid #808080;
  top: calc(100% / 3);
  transition: opacity ease 0.4s 0.2s;
}

section#widget div#widget-selections div[widget-selection="course"] {
  top: calc((100% / 3) * 2);
  transition: opacity ease 0.4s;
}

section#widget div#widget-selections.selected div[widget-selection] {
  transition: opacity ease 0s 0s !important;
}

section#widget div#widget-selections div.course {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  content: "";
  display: block;
  height: calc((100% / 3) * 2);
  position: absolute;
  right: -100%;
  transition: right ease 0.4s 0.4s;
  top: 0;
  width: 100%;
  z-index: 10;
}

section#widget div#widget-selections.selected:not(.close) div.course {
  right: 0;
}

section#widget div#widget-selections div.course::after {
  background: rgba(0, 0, 0, 0.7);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

section#widget div#widget-selections div.course strong {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-weight: bold;
  position: relative;
  text-align: center;
}

section#widget div#widget-selections div.course strong::after {
  border-top: 5px solid #a37e27;
  content: "";
  display: block;
  bottom: -28px;
  left: calc(50% - 24px);
  position: absolute;
  width: 48px;
}

section#widget div#widget-selections div.course em {
  display: block;
  font-family: "MercuryDisplay", serif;
  font-weight: bold;
  position: relative;
}

section#widget div#widget-selections div.course em::before {
  content: "";
  display: block;
  position: absolute;
}

section#widget div#widget-selections div.course p {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
}

section#widget div#widget-selections div.course a.button {
  font-weight: bold;
}

section#widget div#widget-selections div.course p + a.button {
  margin-right: 27px;
}

section#widget div#widget-selections div.contact {
  background: #eee;
  bottom: 0;
  content: "";
  display: block;
  height: calc(100% / 3);
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 10;
  transition: transform ease 0.4s;
  transform: translateY(100%);
}

section#widget div#widget-selections div.contact div.text {
  margin-top: 0;
}

section#widget div#widget-selections div.contact p {
  font-size: 12px;
  font-weight: bold;
  line-height: 16px;
  max-width: 450px;
}

section#widget div#widget-selections.selected:not(.close) div.contact {
  transform: translateY(0);
}

section#widget div#widget-selections div.contact div.container {
  width: auto;
}

body.widget section#widget {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0s 0.6s;
}

body.widget section#widget div#widget-info a.logo {
  clip: rect(0, 768px, 33px, 0);
  transition: clip ease 0.4s 0.6s;
}

body.widget section#widget div#widget-info::after {
  transition: width ease 0.4s 0.6s;
  width: 100%;
}

body.widget section#widget div#widget-selections > div {
  opacity: 1;
}

body.widget
  section#widget
  div#widget-selections
  div[widget-selection="campus"] {
  transition: opacity ease 0.4s 1s;
}

body.widget
  section#widget
  div#widget-selections
  div[widget-selection="program"] {
  transition: opacity ease 0.4s 1.2s;
}

body.widget
  section#widget
  div#widget-selections
  div[widget-selection="course"] {
  transition: opacity ease 0.4s 1.4s;
}

body.widget header div.video-controls a[data-trigger="exit-video"] {
  position: relative;
  z-index: 7000;
}

/** Mobile **********/
@media all and (max-width: 767px) {
  body.homepage section.banner a[widget="open"] {
    display: none;
  }

  section#widget {
    display: none;
  }
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  section#widget div#widget-info strong {
    font-size: 32px;
    line-height: 38px;
  }

  section#widget div#widget-info p {
    font-size: 15px;
    line-height: 28px;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content {
    padding-left: 52px;
    transform: translateY(-50%);
  }

  section#widget div#widget-selections div[widget-selection] strong {
    font-size: 28px;
  }
}

/** Tablet & Desktop Small **********/
@media all and (min-width: 768px) and (max-width: 1280px) {
  section#widget div#widget-selections a[widget] {
    font-size: 12px;
    top: 14px;
  }

  section#widget div#widget-selections a[widget="close"] {
    right: 20px;
  }

  section#widget div#widget-selections div[widget-selection] a[widget="back"] {
    left: 20px;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content
    strong {
    margin-bottom: calc(2.5vh);
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.selection
    div.widget-content {
    transform: translateY(-50%) translateY(-10px);
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.selection
    div.widget-content
    p {
    font-size: 11px;
    line-height: 22px;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.selection
    a.learn-more {
    bottom: 8px;
    font-size: 9px;
  }

  section#widget div#widget-selections div.course {
    padding: 41px 40px 0;
  }

  section#widget div#widget-selections div.course strong {
    font-size: 36px;
    margin-bottom: 83px;
  }

  section#widget div#widget-selections div.course em {
    font-size: 32px;
    margin-bottom: 25px;
  }

  section#widget div#widget-selections div.course em::before {
    border-top: 3px solid #fff;
    top: -11px;
    width: 27px;
  }

  section#widget div#widget-selections div.course p {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 26px;
  }

  section#widget div#widget-selections div.contact div.container {
    margin: 0 40px;
  }
}

/** Tablet  **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  body.widget header span,
  body.close-widget header span {
    display: none;
  }

  body.widget header::before {
    height: 100%;
    transition: height ease-out 0.4s;
  }

  body.close-widget header::before {
    transition: height ease-out 0.4s 1.2s;
  }

  body.homepage section.banner a[widget="open"] {
    font-size: 16px;
    height: 40px;
    line-height: 40px;
  }

  section#widget div#widget-info a.logo {
    background-position: 22px 0;
    background-size: 231px auto;
    clip: rect(0, 0, 23px, 0);
    height: 23px;
    top: 26px;
  }

  section#widget div#widget-selections div.contact h2 {
    margin-bottom: 6px;
  }

  section#widget div#widget-selections div.contact div.container {
    padding-top: 40px !important;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content
    ul {
    height: 135px;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content
    ul
    li {
    line-height: 27px;
  }
}

/** Tablet 768 **********/
@media all and (min-width: 768px) and (max-width: 1023px) {
  section#widget div#widget-info {
    padding: 87px 52px 36px;
  }

  section#widget div#widget-info strong {
    margin-bottom: 16px;
  }

  section#widget div#widget-info p {
    max-width: 530px;
  }

  section#widget div#widget-info em {
    display: none !important;
  }

  section#widget div#widget-selections {
    height: calc(100% - 267px);
    left: 0;
    position: absolute;
    top: 267px;
    width: 100%;
  }

  section#widget div#widget-selections a[widget="close"] {
    color: #000;
    position: fixed;
  }

  section#widget div#widget-selections div.contact iframe {
    height: 49px;
  }
}

/** Tablet 1024 & Desktop Small **********/
@media all and (min-width: 1024px) and (max-width: 1280px) {
  section#widget div#widget-info a.logo {
    background-position: 32px 0;
  }

  section#widget div#widget-info em {
    font-size: 26px;
  }

  section#widget div#widget-selections div.contact h2 {
    margin-bottom: 10px;
  }

  section#widget div#widget-selections div.contact p {
    margin-bottom: 18px;
  }
}

/** Tablet 1024 & Desktop **********/
@media all and (min-width: 1024px) {
  section#widget {
    align-items: center;
    display: flex;
    flex: 1;
  }

  section#widget > div {
    height: 100%;
  }

  section#widget div#widget-info {
    padding: 144px 22px 0;
  }

  section#widget div#widget-info {
    width: 40%;
  }

  section#widget div#widget-info strong {
    margin-bottom: 29px;
  }

  section#widget div#widget-info strong span {
    display: block;
  }

  section#widget div#widget-info p {
    margin-bottom: 70px;
  }

  section#widget div#widget-info em {
    line-height: 33px;
  }

  section#widget div#widget-selections {
    width: 60%;
  }

  section#widget div#widget-selections div.contact section.form {
    margin-bottom: 0;
    padding-bottom: 0;
    position: static;
  }

  section#widget div#widget-selections div.contact div.container {
    height: auto;
    padding-top: 0 !important;
    position: absolute;
    top: 50%;
    width: calc(100% - 100px);
    transform: translateY(-50%) translateY(7px);
  }
}

/** Desktop **/
@media all and (min-width: 1025px) {
  section#widget div#widget-info {
    padding: 144px 32px 0;
  }

  section#widget div#widget-info a.logo {
    background-size: 280px auto;
    clip: rect(0, 0, 33px, 0);
    height: 33px;
    top: 24px;
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  section#widget div#widget-info a.logo {
    background-position: 50px 0;
  }

  section#widget div#widget-selections a[widget] {
    font-size: 12px;
    top: 24px;
  }

  section#widget div#widget-selections a[widget="close"] {
    right: 36px;
  }

  section#widget div#widget-selections div[widget-selection] a[widget="back"] {
    left: 36px;
  }

  section#widget div#widget-info {
    padding: 144px 50px 0;
  }

  section#widget div#widget-info strong {
    font-size: 38px;
    line-height: 45px;
  }

  section#widget div#widget-info p {
    font-size: 16px;
  }

  section#widget div#widget-info em {
    font-size: 28px;
  }

  section#widget div#widget-selections div.list {
    padding-left: 85px;
  }

  section#widget div#widget-selections div[widget-selection] strong {
    font-size: 31px;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.widget-content {
    transform: translateY(-50%) translateY(-16px);
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content
    strong {
    margin-bottom: calc(2.2vh);
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.selection
    div.widget-content
    p {
    font-size: 12px;
    line-height: 26px;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.selection
    a.learn-more {
    bottom: 14px;
    font-size: 10px;
  }

  section#widget div#widget-selections div.course {
    padding: 54px 50px 0;
  }

  section#widget div#widget-selections div.course strong {
    font-size: 44px;
    margin-bottom: 74px;
  }

  section#widget div#widget-selections div.course em {
    font-size: 38px;
    margin-bottom: 32px;
  }

  section#widget div#widget-selections div.course em::before {
    border-top: 4px solid #fff;
    top: -16px;
    width: 34px;
  }

  section#widget div#widget-selections div.course p {
    font-size: 16px;
    line-height: 28px;
    margin-bottom: 32px;
  }

  section#widget div#widget-selections div.contact div.container {
    margin: 0 50px;
  }

  section#widget div#widget-selections div.contact h2 {
    margin-bottom: 18px;
  }

  section#widget div#widget-selections div.contact p {
    margin-bottom: 23px;
  }
}

/** Desktop Small & Medium **/
@media all and (min-width: 1025px) and (max-width: 1399px) {
  section#widget div#widget-selections div.course em {
    font-size: 30px;
  }

  section#widget div#widget-selections div.course p {
    font-size: 14px;
    line-height: 22px;
  }
}

/** Desktop Medium **/
@media all and (min-width: 1280px) and (max-width: 1399px) {
  section#widget div#widget-selections div.contact iframe {
    height: 49px;
  }
}

/** Desktop Larger **********/
@media all and (min-width: 1400px) {
  section#widget div#widget-info em span:not(:first-of-type) {
    display: block;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content
    strong {
    margin-bottom: calc(3.47vh);
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content
    ul {
    height: 135px;
  }

  section#widget
    div#widget-selections
    div[widget-selection]
    div.list
    div.widget-content
    ul
    li {
    line-height: 27px;
  }

  section#widget div#widget-selections div.course strong {
    margin-bottom: 119px;
  }

  section#widget div#widget-selections div.course em {
    margin-bottom: 38px;
  }

  section#widget div#widget-selections div.course p {
    margin-bottom: 38px;
    padding-right: 100px;
  }
}

/**** NEW UTILITIES ****/

@media screen and (min-width: 64em) {
  .nav-offset {
    padding-top: 9.6875rem;
  }
}

/* Images */

.img-block {
  background-color: #333;
  background-position: 50% 50%;
  background-size: cover;
  bottom: 0;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.img-block-inner {
  bottom: 1.5rem;
  left: 1.5rem;
  position: absolute;
  right: 1.5rem;
  top: 1.5rem;
  z-index: 1;
}

.image-float img {
  width: 100%;
}

.fill:before {
  content: "";
  display: block;
  padding-top: 100%;
}

@media screen and (min-width: 48em) {
  .image-float img {
    max-width: 21.875rem;
    width: auto;
  }

  .image-float:nth-child(odd) img {
    float: left;
    margin-right: 1.875rem;
  }

  .image-float:nth-child(even) img {
    float: right;
    margin-left: 1.875rem;
  }
}

.nowrap {
  white-space: nowrap;
}

@media screen and (min-width: 48em) {
  .hide-medium {
    display: none !important;
  }
}

.bg-white {
  background-color: #fff !important;
}

.bg-grey-light {
  background-color: #f0f0f0 !important;
}

.bg-grey-med {
  background-color: #666 !important;
  color: #fff !important;
}

.overlay:after {
  background-color: rgba(0, 0, 0, 0.4);
  bottom: 0;
  content: "";
  left: 0;
  right: 0;
  top: 0;
  position: absolute;
}

/* Alignment */

.flex-center-x,
.flex-center-x > * {
  justify-content: center;
}

.tac {
  text-align: center !important;
}

.tal {
  text-align: left !important;
}

.tar {
  text-align: right !important;
}

.small-tac {
  text-align: center !important;
}

.small-tal {
  text-align: left !important;
}

.small-tar {
  text-align: right !important;
}

.left {
  float: left !important;
}

.right {
  float: right !important;
}

.nofloat {
  float: none !important;
}

.small-fl {
  float: left !important;
}

.small-fr {
  float: right !important;
}

.small-fn {
  float: none !important;
}

@media only screen and (min-width: 48em) {
  .medium-tac {
    text-align: center !important;
  }

  .medium-tal {
    text-align: left !important;
  }

  .medium-tar {
    text-align: right !important;
  }

  .medium-fl {
    float: left !important;
  }

  .medium-fr {
    float: right !important;
  }

  .medium-fn {
    float: none !important;
  }
}

@media only screen and (min-width: 64em) {
  .large-tac {
    text-align: center !important;
  }

  .large-tal {
    text-align: left !important;
  }

  .large-tar {
    text-align: right !important;
  }

  .large-fl {
    float: left !important;
  }

  .large-fr {
    float: right !important;
  }

  .large-fn {
    float: none !important;
  }
}

.nomar {
  margin: 0 !important;
}

.nomar-left {
  margin-left: 0 !important;
}

.nomar-right {
  margin-right: 0 !important;
}

.nopad {
  padding: 0 !important;
}

.nopad-left {
  padding-left: 0 !important;
}

.nopad-right {
  padding-right: 0 !important;
}

#requestinfo {
  margin-top: -8.9375rem;
  padding-top: 8.9375rem;
}

section.text-intro div.container.center-container {
  padding-top: 6.25rem;
  text-align: center;
}

.no-top-bar:before {
  content: none !important;
}

.offscreen {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
}

.ellipsis,
.ellipsis > * {
  overflow: hidden !important;
}

section.text-intro div.container.center-container h1:before,
section.text-intro div.container.center-container h2:before,
section.text-intro div.container.center-container h3:before,
section.text-intro div.container.center-container h4:before,
section.text-intro div.container.center-container h5:before,
section.text-intro div.container.center-container h6:before {
  content: none;
}

.unstyled-list {
  list-style: none;
  margin-top: 0;
  padding-left: 0;
}

.unstyled-list > li {
  line-height: normal;
  margin-top: 0;
}

.inline-list > li {
  display: inline-block;
}

/**** GLOBAL ****/

/* Typography */

h1,
h2,
h3 {
  font-family: "MercuryDisplay", serif;
  position: relative;
}

h1 {
  font-size: 2.375rem;
  font-weight: 600;
  line-height: 1.1;
  margin-bottom: 1.5rem;
}

h2 {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.1;
  margin-bottom: 1.5rem;
}

h3 {
  font-size: 1.625rem;
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 1.5rem;
}

h4 {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.75;
  margin-bottom: 1rem;
}

.overlay h1,
.overlay h2,
.overlay h3,
.overlay h4,
.overlay p {
  color: #fff;
}

.subheader p,
p.subheader {
  font-size: 1.125rem;
  line-height: 1.6;
}

p {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.75;
  margin-bottom: 1rem;
}

@media only screen and (min-width: 48em) {
  h1 {
    font-size: 4rem;
  }

  h2 {
    font-size: 3.25rem;
  }

  h3 {
    font-size: 2.125rem;
  }
}

body strong {
  font-weight: bold;
}

/* Images */

img {
  max-width: 100%;
  height: auto;
}

/* New Buttons */

.button-group {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 1rem;
}

.button.outline-button {
  background-color: transparent;
  border: 1px solid #a37e27;
  color: #a37e27;
}

/**** NEW FORMS ****/

.contact-form .form-field {
  display: inline-block;
  margin-bottom: 2.5rem;
  width: 100%;
}

.contact-form .form-field.full-width-field {
  width: 100%;
}

.contact-form .form-field.full-width-field:nth-child(odd) {
  padding-right: 0;
}

.contact-form .input-wrap input,
.contact-form .input-wrap select,
.contact-form .input-wrap textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border-bottom: 0.0625rem solid #000;
  border-left: none;
  border-right: none;
  border-top: none;
  color: #000;
  display: block;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  height: 1.95rem;
  line-height: 1.3;
  outline: none;
  padding: 0.35rem 0 0.35rem 0.375rem;
  transition: border-color 0.2s ease-out;
  width: 100%;
}

.contact-form .input-wrap input::-webkit-input-placeholder,
.contact-form .input-wrap select::-webkit-input-placeholder,
.contact-form .input-wrap textarea::-webkit-input-placeholder {
  color: inherit;
}

.contact-form
  .input-wrap
  input::placeholder
  .contact-form
  .input-wrap
  select::placeholder
  .contact-form
  .input-wrap
  textarea::placeholder {
  color: inherit;
}

/* Select */

.contact-form .input-wrap.arrow select,
.contact-form .input-wrap .arrow {
  background-image: url("../images/icons_arrow_black.svg");
  background-position: center right 7px;
  background-repeat: no-repeat;
  background-size: 9px;
}

.contact-form .input-wrap select option {
  color: #222;
}

.contact-form .input-wrap select[disabled] {
  opacity: 0.4;
}

/* Styled-Select */

.input-wrap.styled-select {
  background: transparent;
  border-bottom: 0.0625rem solid #000;
  border-left: none;
  border-right: none;
  border-top: none;
  display: block;
  position: relative;
  transition: border-color 0.3s;
  width: 100%;
}

.input-wrap .styled-select-inner {
  background: transparent;
  color: #000;
  cursor: pointer;
  display: block;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  height: 1.95rem;
  line-height: 1.3;
  padding: 0.35rem 0 0.35rem 0.375rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.styled-select-dropdown {
  background-color: #eee;
  border-top: 1px solid #ccc;
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  height: auto;
  left: -9999px;
  max-height: 20rem;
  opacity: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding-bottom: 0.35rem;
  padding-top: 0.35rem;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.styled-select-dropdown label {
  background-color: #eee;
  color: #000;
  cursor: pointer;
  display: block;
  font-size: 1rem;
  line-height: 1.2;
  margin-bottom: 0 !important;
  padding: 0.6rem 0.4rem;
  position: relative;
}

.styled-select-dropdown label:before {
  background-image: url("../images/checkmark_thin_gold.svg");
  background-repeat: no-repeat;
  content: "";
  height: 0.7rem;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0.8rem;
}

.styled-select-dropdown label.checked:before {
  opacity: 1;
}

.styled-select label:hover {
  background-color: #cac3b6;
  color: #000;
}

.styled-select label.checked {
  background-color: #ddd;
}

.styled-select label.checked:hover {
  background-color: #c3bba3;
}

.styled-select-dropdown label span {
  display: inline-block;
  padding-left: 1.05rem;
  width: 100%;
}

.styled-select .program-select-group label {
  padding-left: 2.1rem;
}

.open .styled-select-dropdown {
  left: 0;
  opacity: 1;
}

/* Text Area */

.contact-form .input-wrap textarea {
  resize: none;
  transition: height 0.3s;
}

.contact-form .input-wrap textarea.active-textarea {
  height: 8rem;
}

/* Checkboxes */

.contact-form .form-field.checkbox-wrap {
  display: inline-block;
  font-size: 0.9rem;
  line-height: 1.2;
  padding-left: 0.0625rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.checkbox-wrap input + div {
  background-color: #fff;
  background-size: 65% 65%;
  background-position: center center;
  background-repeat: no-repeat;
  border: none;
  box-shadow: 0 0 0 0.0625rem #000;
  height: 1rem;
  pointer-events: none;
  position: absolute;
  transition: box-shadow 0.3s;
  width: 1rem;
}

.checkbox-wrap input:focus + div {
  box-shadow: 0 0 0 0.0625rem #a0a0a0;
}

.checkbox-wrap input:checked + div {
  color: #fff;
  background-color: #a37e27;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTYuNCwxTDUuNywxLjdMMi45LDQuNUwyLjEsMy43TDEuNCwzTDAsNC40bDAuNywwLjdsMS41LDEuNWwwLjcsMC43bDAuNy0wLjdsMy41LTMuNWwwLjctMC43TDYuNCwxTDYuNCwxeiINCgkvPg0KPC9zdmc+DQo=);
}

.checkbox-wrap input:active + div {
  color: #fff;
  background-color: #a37e27;
}

.checkbox-wrap .checkbox-text {
  color: #000;
  display: inline-block;
  font-size: 0.8rem;
  line-height: 1.3;
  padding-left: 1.8rem;
  transition: color 0.3s;
}

.contact-form a {
  color: inherit;
  text-decoration: underline;
}

.contact-form a:before {
  content: none;
}

.contact-form a:hover {
  text-decoration: none;
}

section .contact-form a:not(.button)::before {
  content: none;
}

.contact-form .submit-button {
  font-size: 1.1rem;
  font-weight: 600;
  height: 2.8rem;
  min-width: 6rem;
}

/* Form Messages */

.form-error-message {
  display: none;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 1rem;
}

/* Field Errors */

.contact-form .error .input-wrap input,
.contact-form .error .input-wrap select,
.contact-form .error .input-wrap textarea {
  border-bottom-color: #d63638 !important;
  color: #d63638 !important;
}

.contact-form .error .input-wrap.styled-select {
  border-bottom-color: #d63638 !important;
}

.contact-form .error .input-wrap .styled-select-inner {
  color: #d63638 !important;
}

.contact-form .error.checkbox-wrap input + div {
  box-shadow: 0 0 0 0.0625rem #d63638 !important;
  background-color: #d63638 !important;
}

.contact-form .error.checkbox-wrap .checkbox-text {
  color: #d63638 !important;
}

/* Dark Background Fields */

.bg-grey-med .contact-form .input-wrap input,
.bg-grey-med .contact-form .input-wrap select,
.bg-grey-med .contact-form .input-wrap textarea {
  border-bottom-color: #fff;
  color: #fff;
}

/* Dark Background Selects */

.bg-grey-med .contact-form .input-wrap.styled-select {
  border-bottom-color: #fff;
}

.bg-grey-med .contact-form .styled-select-dropdown {
  background-color: #ddd;
}

.bg-grey-med .contact-form .styled-select-dropdown label {
  background-color: #ddd;
}

.bg-grey-med .contact-form .styled-select-inner {
  color: #fff;
}

.bg-grey-med .contact-form .styled-select label:hover {
  background-color: #cac3b6;
}

.bg-grey-med .contact-form .styled-select label.checked {
  background-color: #ccc;
}

.bg-grey-med .contact-form .styled-select label.checked:hover {
  background-color: #c3bba3;
}

.bg-grey-med .contact-form .input-wrap.arrow select,
.bg-grey-med .contact-form .input-wrap .arrow {
  background-image: url("../images/icons_arrow.svg");
}

/* Dark Background Checkboxes */

.bg-grey-med .checkbox-wrap input + div {
  box-shadow: 0 0 0 0.0625rem #fff;
}

.bg-grey-med .checkbox-wrap .checkbox-text {
  color: #fff;
}

/* Dark Background Error States */

.bg-grey-med .contact-form .error .input-wrap input,
.bg-grey-med .contact-form .error .input-wrap select,
.bg-grey-med .contact-form .error .input-wrap textarea,
.bg-grey-med .contact-form .error .input-wrap.styled-select {
  border-bottom-color: #ff9395 !important;
  color: #ff9395 !important;
}

.bg-grey-med .contact-form .error.checkbox-wrap input + div {
  box-shadow: 0 0 0 0.0625rem #ff9395 !important;
  background-color: #ff9395 !important;
}

.bg-grey-med .contact-form .error .styled-select-inner span,
.bg-grey-med .contact-form .error.checkbox-wrap .checkbox-text {
  color: #ff9395 !important;
}

@media screen and (min-width: 30em) {
  .contact-form .form-field {
    float: left;
    margin-bottom: 3.125rem;
    width: 50%;
  }

  .contact-form .form-field.form-field-right-pad {
    padding-right: 1rem;
  }

  .contact-form .form-field.form-field-left-pad {
    padding-left: 1rem;
  }

  .contact-form .submit-button {
    width: auto;
  }
}

@media screen and (min-width: 64em) {
  .contact-form .input-wrap input,
  .contact-form .input-wrap select,
  .contact-form .input-wrap textarea,
  .contact-form .input-wrap .styled-select-inner {
    padding-left: 0.625rem;
  }

  .styled-select-dropdown label {
    padding-bottom: 0.4rem;
    padding-top: 0.4rem;
  }
}

/**** Contact Footer Block ****/

.contact-block {
  color: #000;
  display: inline-block;
  width: 100%;
}

.contact-block .container {
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
}

.contact-block h2 {
  font-family: "MercuryDisplay", serif;
  font-size: 2.875rem;
  line-height: 1.1;
  font-weight: 500;
}

.contact-block h2:before {
  content: none;
}

.contact-block p {
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 1.875rem;
}

@media screen and (min-width: 30em) {
  .contact-block .container {
    padding-bottom: 3rem;
    padding-top: 3rem;
  }
}

@media screen and (min-width: 64em) {
  .contact-block .container {
    display: flex;
    padding-bottom: 4rem;
    padding-top: 4rem;
  }

  .contact-block-col-left {
    padding-right: 7rem;
    width: 50%;
  }

  .contact-block-col-right {
    width: 50%;
  }

  .contact-block h2 {
    font-size: 3.25rem;
  }

  .contact-block p {
    margin-bottom: 3rem;
  }
}

/**** Contact Homepage Block ****/

.home-contact-block {
  background-image: url("../images/homepage-enquiry.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}

.home-contact-block .container {
  display: block;
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
  z-index: 1;
}

.home-contact-header {
  margin-bottom: 2rem;
  text-align: center;
}

.home-contact-header h2 {
  margin-bottom: 1.375rem;
}

.home-contact-header h2:before {
  content: none;
}

.home-contact-header p {
  font-size: 0.875rem;
}

.home-contact-block .form-field.checkbox-wrap {
  margin-top: 1rem;
}

.home-contact-block .form-field.checkbox-wrap > div {
  margin: auto;
  max-width: 31rem;
}

.home-contact-block .submit-button {
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 30em) {
  .home-contact-block .container {
    padding-bottom: 4.5rem;
    padding-top: 4.5rem;
    max-width: 47rem;
  }
}

@media screen and (min-width: 64em) {
  .home-contact-block .container {
    padding-bottom: 8rem;
    padding-top: 8rem;
  }

  .home-contact-header {
    margin-bottom: 4.5rem;
  }

  .home-contact-header h2 {
    margin-bottom: 1.6rem;
  }

  .home-contact-header p {
    font-size: 1.125rem;
  }
}

/**** Contact Page ****/

.contact-page .container {
  padding-bottom: 2rem;
  padding-top: 4rem;
}

.contact-page strong {
  font-weight: bold;
}

.contact-page h2 {
  margin-bottom: 3rem;
}

.contact-page p {
  margin-bottom: 3rem;
}

.contact-page-form {
  margin-bottom: 4rem;
}

.contact-info-list li {
  line-height: 1.5;
  margin-bottom: 2rem;
}

.contact-info-list li:last-child {
  margin-bottom: 0;
}

.contact-info-list li a[href^="tel"] {
  color: inherit;
  cursor: default;
  text-decoration: none;
}

.contact-info-list li a[href^="tel"]:focus,
.contact-info-list li a[href^="tel"]:visited,
.contact-info-list li a[href^="tel"]:hover {
  color: inherit;
  text-decoration: none;
}

.contact-info-list li a[href^="tel"]:before {
  content: none;
}

@media screen and (max-width: 47.9375rem) and (min-width: 30em) {
  .contact-info-list {
    display: inline-block;
    width: 100%;
  }

  .contact-info-list li {
    float: left;
    width: 50%;
  }
}

@media screen and (min-width: 48em) {
  .contact-page .container {
    padding-bottom: 6rem;
    padding-top: 8rem;
  }

  .contact-page-col-wrap {
    display: flex;
  }

  .contact-page-col-left {
    order: 1;
    width: 40%;
  }

  .contact-page-col-right {
    order: 2;
    width: 60%;
  }

  .contact-page-form {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 64em) {
  .contact-page .container {
    padding-bottom: 6rem;
    padding-top: 19rem;
  }

  .contact-page-col-left {
    width: 45%;
  }

  .contact-page-col-right {
    width: 55%;
  }
}

/**** MASTHEADS ****/

/* Masthead General */

.masthead {
  align-items: center;
  background-color: #dcdcdc;
  background-position: 50% 50%;
  background-size: cover;
  display: flex;
  height: auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.masthead h1,
.masthead h2 {
  margin-bottom: 0;
}

.masthead .subheader {
  margin-top: 1.5rem;
}

.masthead-inner {
  padding-bottom: 3rem;
  padding-top: 3rem;
  position: relative;
  width: 100%;
  z-index: 2;
}

.masthead-inner > div {
  display: table-cell;
  vertical-align: middle;
}

/* Masthead Short */

.masthead-short {
  min-height: 50vh;
}

@media screen and (min-width: 48em) {
  .masthead-inner {
    padding-bottom: 4rem;
    padding-top: 4rem;
  }
}

@media only screen and (min-width: 64.0625em) {
  .masthead {
    padding-top: 9.6875rem;
  }

  .masthead-inner {
    padding-bottom: 6rem;
    padding-top: 6rem;
  }

  /* Masthead Short */

  .masthead-short {
    min-height: 36rem;
  }
}

/* No-Image Banners */

section.banner.no-banner-image {
  height: auto;
  padding-bottom: 2rem;
}

@media screen and (min-width: 48em) {
  section.banner.no-banner-image {
    padding-bottom: 5rem;
  }
}

@media screen and (min-width: 64em) {
  section.banner.no-banner-image {
    padding-bottom: 6rem;
  }
}

@media screen and (min-width: 80em) {
  section.banner.no-banner-image {
    padding-bottom: 8rem;
  }
}

/* SECTION HEADER */

@media only screen and (min-width: 48em) {
  h2.section-header {
    margin-bottom: 3.75rem;
  }
}

/**** CONTENT BLOCK ****/

/* Content Block Spacing */

.content-block {
  position: relative;
}

.content-block {
  padding-bottom: 3rem;
  padding-top: 3rem;
}

.content-block:nth-child(even) {
  background-color: #f4f4f4;
}

.content-block:nth-child(odd) {
  background-color: #fff;
}

@media only screen and (min-width: 48em) {
  .content-block {
    padding-bottom: 4rem;
    padding-top: 4rem;
  }
}

@media only screen and (min-width: 64em) {
  .content-block {
    padding-bottom: 6rem;
    padding-top: 6rem;
  }
}

/**** FLEXIBLE BLOCKS ****/

/* Typography */

.flexible-content h1:before,
.flexible-content h2:before,
.flexible-content h3:before {
  content: none;
}

.flexible-content .subheader p {
  font-size: 1.125rem;
}

.flexible-content p {
  line-height: 1.6;
}

/* Video Block */

.flexible-content .video-block {
  margin-bottom: 3rem;
  margin-top: 2rem;
}

/* Content Moguls */

.content-mogul {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 4rem;
}

.content-mogul:last-child {
  margin-bottom: 0;
}

.content-mogul:nth-child(odd) {
  flex-direction: row-reverse;
}

.content-mogul-image {
  margin-bottom: 1rem;
}

.content-mogul-text .button {
  margin-top: 1rem;
}

@media only screen and (min-width: 64em) {
  .content-mogul {
    column-gap: 1rem;
    flex-wrap: nowrap;
  }
}

/**** ALERTS ****/

.alert-box {
  display: inline-block;
  margin-bottom: 2rem;
  min-height: auto;
  padding: 1rem;
  position: relative;
  width: 100%;
}

.alert-box p {
  color: inherit;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 0.875rem;
  line-height: 1.1;
  margin-bottom: 0;
}

.alert-box p + p {
  margin-top: 0.7rem;
}

.alert-box p a {
  border-bottom-color: inherit;
  border-bottom-style: solid;
  border-bottom-width: 0.0625rem;
  color: inherit;
  line-height: 1;
  text-decoration: none;
  transition: border-bottom-color 0.2s;
}

.alert-box p a:before {
  content: none;
}

.alert-box p a:hover {
  border-bottom-color: transparent;
  text-decoration: none;
}

.alert-box.warning-box,
.alert-box.notify-box,
.alert-box.new-box,
.alert-box.general-box {
  border-left-style: solid;
  border-left-width: 0.375rem;
}

/* Red Box */
.alert-box.warning-box {
  background-color: #f1e0e0;
  border-left-color: #de3b3b;
  color: #de3b3b;
}

/* Orange Box */
.alert-box.notify-box {
  background-color: #f3e5da;
  border-left-color: #e87e39;
  color: #e87e39;
}

/* Green Box */
.alert-box.new-box {
  background-color: #e2ebe2;
  border-left-color: #5f8b40;
  color: #5f8b40;
}

/* Blue Box */
.alert-box.general-box {
  background-color: #e2e7ee;
  border-left-color: #204c86;
  color: #204c86;
}

/**** COURSES ****/

/* New Course Catalog */

.catalog-block.courses {
  background-color: #efefef;
}

.catalog-block .courses-list {
  display: grid;
  grid-gap: 1.25rem;
  grid-template-columns: 1fr;
  margin: 0 auto;
  padding-bottom: 1.5rem;
  padding-top: 1.5rem;
  max-width: 16rem;
}

.catalog-block .empty .courses-list {
  display: none;
}

.catalog-block .courses-list-course {
  display: inline-block;
  transition: opacity 0.3s;
}

.catalog-block .courses-list-card {
  background-color: #fff;
  color: #333;
  display: inline-block;
  max-width: 15.3125rem;
  min-height: 22.5rem;
  min-width: 15.3125rem;
  outline-color: transparent;
  outline-style: solid;
  outline-width: 0.0625rem;
  position: relative;
  transition: outline-color 0.2s;
  vertical-align: top;
  width: 100%;
}

.catalog-block a.courses-list-card::before,
.catalog-block a.courses-list-card:hover::before {
  content: none;
}

.catalog-block .courses-list-card:hover {
  outline-color: #aaa;
}

.courses-list-flag-wrap {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  left: 1rem;
  position: absolute;
  top: 1rem;
}

.courses-list-campus,
.courses-list-status {
  align-items: center;
  display: inline-flex;
  float: left;
  height: 1.5625rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  width: auto;
}

.courses-list-campus > span,
.courses-list-status > span {
  color: #fff;
  line-height: 1;
}

.courses-list-campus {
  background-color: #000;
}

.courses-list-campus > span {
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
}

.courses-list-status > span {
  font-family: "MercuryDisplay", serif;
  font-size: 0.875rem;
  font-style: italic;
  font-weight: 600;
}

.courses-list-status.new {
  background-color: #5f8b40;
}

.courses-list-status.featured {
  background-color: #b29042;
}

.courses-list-status.limited-space {
  background-color: #e87e39;
}

.courses-list-status.course-closed {
  background-color: #de3b3b;
}

.courses-list-status.cancelled {
  background-color: #de3b3b;
}

.courses-list-status.early-booking-rate {
  background-color: #204c86;
}

.courses-list-status.postponed {
  background-color: #777;
}

.catalog-block .courses-list-image {
  background-position: 50% 50%;
  background-size: cover;
  height: 10rem;
  width: 100%;
}

.catalog-block .courses-list-inner {
  min-height: 9.2rem;
  padding: 1rem;
}

.catalog-block .courses-list-type {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 0.3125rem;
}

.catalog-block .courses-list-title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
}

.catalog-block .courses-list-footer-wrap {
  min-height: 3.1rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0;
}

.catalog-block .courses-list-date {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
}

.catalog-block .courses-list-duration {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.2;
}

.catalog-block .courses-list-date + .courses-list-duration {
  margin-top: 0.3rem;
}

@media screen and (min-width: 30em) {
  .catalog-block .courses-list {
    grid-template-columns: 1fr 1fr;
    max-width: 31.9rem;
  }

  .catalog-block .courses-list-card {
    min-width: 100%;
  }
}

@media screen and (min-width: 64em) {
  .catalog-block.courses {
    padding-bottom: 2rem;
  }

  .catalog-block .courses-list {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    max-width: 100%;
  }
}

@media screen and (max-width: 80em) and (min-width: 64em) {
  .catalog-block .courses-list-title {
    font-size: 1.15rem;
  }
}

/* New Course Templates */

.course .masthead .courses-list-flag-wrap {
  flex-direction: row;
  left: auto;
  margin-bottom: 1rem;
  position: relative;
  top: auto;
}

/* Course Banner */

.page-subnav {
  background-color: #333;
  display: inline-block;
  height: 4.375rem;
  left: -1000rem;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 3.75rem;
  transition: opacity 0.3s 0s, left 0s 0.3s;
  width: 100%;
  z-index: 1001;
}

.show.page-subnav {
  left: 0;
  opacity: 1;
  transition: opacity 0.3s 0.3s, left 0s 0.3s;
}

.page-subnav .page-subnav-title {
  display: none;
}

.page-subnav .page-subnav-button {
  left: 1.4rem;
  position: absolute;
  right: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity 0.2s;
}

@media screen and (min-width: 30rem) {
  .page-subnav .page-subnav-button {
    left: auto;
  }
}

@media screen and (min-width: 48em) {
  .page-subnav {
    top: 4.5625rem;
  }

  .page-subnav .page-subnav-title {
    color: #fff;
    display: inline-block;
    font-family: "MercuryDisplay", serif;
    font-size: 1.75rem;
    font-weight: 700;
    left: 1.375rem;
    line-height: 1;
    overflow: hidden;
    padding-right: 12rem;
    position: absolute;
    text-overflow: ellipsis;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    white-space: nowrap;
  }
}

@media screen and (min-width: 64em) {
  .page-subnav .page-subnav-title {
    font-size: 2rem;
    left: 3.2rem;
  }

  .page-subnav .page-subnav-button {
    right: 3.5rem;
  }
}

/**** COURSE SIDEBAR & DESCRIPTION ****/

ul.meta-detail {
  background-color: transparent;
  border: 0.0625rem solid #d1bf93;
  display: inline-block;
  margin-bottom: 0;
  margin-top: 1rem;
  overflow: hidden;
  padding: 1.875rem;
  position: relative;
  width: 100%;
}

ul.meta-detail > li {
  font-size: 100%;
  line-height: normal;
  margin-bottom: 1.1rem;
}

ul.meta-detail > li:last-child {
  margin-bottom: 0;
}

ul.meta-detail .detail-title {
  font-size: 0.8125rem;
  font-weight: 700;
  margin-bottom: 0.2rem;
}

ul.meta-detail .detail-title a {
  font-weight: 700;
  font-size: 0.76rem;
  letter-spacing: 0.04rem;
  position: relative;
  top: -0.08rem;
  margin-left: 0.7rem;
}

ul.meta-detail .detail-copy {
  font-family: "MercuryDisplay", serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.45rem;
}

ul.meta-detail .detail-copy a {
  color: inherit;
  text-decoration: underline;
}

ul.meta-detail .detail-copy a:hover {
  color: inherit;
  text-decoration: none;
}

ul.meta-detail .detail-copy small {
  display: inline-block;
  font-size: 0.85rem;
  line-height: 1.2rem;
  margin-top: 0.2rem;
}

ul.meta-detail .detail-copy .break {
  display: inline;
}

/* Price */

ul.meta-detail .detail-price-primary .detail-copy,
ul.meta-detail .detail-price-secondary .detail-copy {
  font-family: "MercuryDisplay", serif;
  font-weight: 400;
  line-height: 1;
  margin-bottom: 0.7rem;
}

ul.meta-detail .detail-price-primary .detail-copy {
  font-size: 2.5rem;
}

ul.meta-detail .detail-price-secondary .detail-copy {
  font-size: 2.0625rem;
}

ul.meta-detail .detail-price-fine-print {
  color: #222;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 0.6875rem;
  font-style: italic;
  margin-bottom: 0.8rem;
}

ul.meta-detail .detail-price-link a {
  color: #666;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 0.8125rem;
  text-decoration: underline;
}

ul.meta-detail .detail-price-link a:before {
  content: none;
}

ul.meta-detail .detail-price-link a:hover {
  text-decoration: none;
}

/* Contact */

ul.meta-detail .meta-detail-contact {
  border-top: 0.0625rem solid #d1bf93;
  padding-top: 1.1rem;
}

.meta-detail-contact a {
  color: #a37e27;
  display: block;
  line-height: 1.5;
  text-decoration: underline;
}

section .meta-detail-contact a:before {
  content: none;
}

.meta-detail-contact a:hover {
  text-decoration: none;
}

@media only screen and (min-width: 30em) {
  ul.meta-detail {
    padding: 1.8rem;
  }
}

@media only screen and (min-width: 48em) {
  ul.meta-detail {
    margin-top: 0;
    max-width: 18rem;
  }

  ul.meta-detail .detail-copy .break {
    display: block;
  }
}

@media only screen and (min-width: 64em) {
  .course-block-sidebar {
    padding-right: 2.8rem;
  }
}

/* Content Moguls Block */

section#homepage-news ul li {
  display: -webkit-flex;
  display: flex;
  position: relative;
  z-index: 2;
}

section#homepage-news ul li figure {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

section#homepage-news ul li div small {
  display: block;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 14px;
  text-transform: uppercase;
}

section#homepage-news ul li div strong {
  display: block;
  font-weight: bold;
}

section#homepage-news ul li div a.button {
  background: transparent;
  border: 1px solid #a37e27;
  color: #a37e27;
  font-weight: bold;
}

section#homepage-news ul li:nth-child(even)::after {
  background: #f0f0f0;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  z-index: -1;
}

/** Mobile & Tablet **********/
@media all and (max-width: 1024px) {
  section#homepage-news ul li div p {
    line-height: 24px;
  }
}

/** Mobile **********/
@media all and (max-width: 767px) {
  section#homepage-news div.container {
    margin: 0 auto;
  }

  section#homepage-news ul {
    padding-top: 46px;
  }

  section.alternating-moguls#homepage-news ul {
    padding-top: 0;
  }

  section#homepage-news ul li {
    align-items: flex-start;
    flex-direction: column;
    padding: 0 20px 46px;
  }

  section#homepage-news ul li figure {
    margin-left: -20px;
    margin-bottom: 46px;
    padding-bottom: 78%;
    width: 100%;
  }

  section#homepage-news ul li div small {
    margin-bottom: 25px;
  }

  section#homepage-news ul li div strong {
    font-size: 32px;
    line-height: 39px;
    margin-bottom: 29px;
  }

  section#homepage-news ul li div p {
    font-size: 15px;
  }

  section#homepage-news ul li div p:last-of-type {
    margin-bottom: 38px;
  }

  section#homepage-news ul li div a.button {
    width: 187px;
  }

  section#homepage-news ul li:nth-child(even):not(:last-child) {
    margin-bottom: 45px;
  }

  section#homepage-news ul li:nth-child(even)::after {
    height: calc(100% - 45px);
    top: 45px;
    width: 100%;
  }
}

section.alternating-moguls#homepage-news ul li:first-child {
  padding-top: 0;
}

section.alternating-moguls#homepage-news ul li:last-child {
  padding-bottom: 0;
}

/** Tablet & Desktop **********/
@media all and (min-width: 768px) {
  section#homepage-news ul li div {
    flex: 1;
  }

  section#homepage-news ul li:nth-child(odd) {
    flex-direction: row-reverse;
  }
}

/** Tablet **********/
@media all and (min-width: 768px) and (max-width: 1024px) {
  section#homepage-news ul li {
    padding: 46px 0;
  }

  section#homepage-news ul li figure {
    margin-top: 83px;
    padding-bottom: calc(68% * 0.61);
    width: 68%;
  }

  section#homepage-news ul li div small {
    margin-bottom: 18px;
  }

  section#homepage-news ul li div strong {
    font-size: 24px;
    line-height: 29px;
    margin-bottom: 23px;
  }

  section#homepage-news ul li div p {
    font-size: 14px;
  }

  section#homepage-news ul li div p:last-of-type {
    margin-bottom: 28px;
  }

  section#homepage-news ul li div a.button {
    width: 162px;
  }

  section#homepage-news ul li:nth-child(odd) figure {
    margin-left: 36px;
  }

  section#homepage-news ul li:nth-child(even) figure {
    margin-right: 36px;
  }
}

/** Tablet SM **********/
@media all and (min-width: 768px) and (max-width: 960px) {
  section#homepage-news ul li:nth-child(odd) figure {
    margin-right: -77px;
  }

  section#homepage-news ul li:nth-child(even) figure {
    margin-left: -77px;
  }

  section#homepage-news ul li:nth-child(even)::after {
    width: calc(100% + 77px);
  }
}

/** Tablet LG **********/
@media all and (min-width: 961px) and (max-width: 1024px) {
  section#homepage-news ul li:nth-child(odd) figure {
    margin-right: -100px;
  }

  section#homepage-news ul li:nth-child(even) figure {
    margin-left: -100px;
  }

  section#homepage-news ul li:nth-child(even)::after {
    width: calc(100% + 100px);
  }
}

/** Desktop Small & Large **********/
@media all and (min-width: 1025px) {
  section#homepage-news ul li figure {
    margin-top: 83px;
    padding-bottom: calc(68% * 0.56);
    width: 66%;
  }

  section#homepage-news ul li div a.button {
    width: 187px;
  }
}

/** Desktop Small **********/
@media all and (min-width: 1025px) and (max-width: 1280px) {
  section#homepage-news ul li {
    padding: 60px 0;
  }

  section#homepage-news ul li div small {
    margin-bottom: 25px;
  }

  section#homepage-news ul li div strong {
    font-size: 32px;
    line-height: 39px;
    margin-bottom: 29px;
  }

  section#homepage-news ul li div p {
    font-size: 15px;
    line-height: 24px;
  }

  section#homepage-news ul li div p:last-of-type {
    margin-bottom: 38px;
  }

  section#homepage-news ul li:nth-child(odd) figure {
    margin-left: 50px;
    margin-right: -48px;
  }

  section#homepage-news ul li:nth-child(even) figure {
    margin-left: -48px;
    margin-right: 50px;
  }

  section#homepage-news ul li:nth-child(even)::after {
    width: calc(100% + 48px);
  }
}

/** Desktop Large **********/
@media all and (min-width: 1281px) {
  section#homepage-news ul li {
    padding: 75px 0;
  }

  section#homepage-news ul li div small {
    margin-bottom: 32px;
  }

  section#homepage-news ul li div strong {
    font-size: 40px;
    line-height: 49px;
    margin-bottom: 38px;
  }

  section#homepage-news ul li div p {
    font-size: 18px;
    line-height: 30px;
  }

  section#homepage-news ul li div p:last-of-type {
    margin-bottom: 50px;
  }

  section#homepage-news ul li div a.button {
    font-size: 16px;
  }

  section#homepage-news ul li:nth-child(odd) figure {
    margin-left: 86px;
    margin-right: -116px;
  }

  section#homepage-news ul li:nth-child(even) figure {
    margin-left: -116px;
    margin-right: 86px;
  }

  section#homepage-news ul li:nth-child(even)::after {
    width: calc(100% + 116px);
  }
}

/* Bullet Points Block */

.bullet-points-block h2 {
  margin-bottom: 1.875rem;
}

.bullet-points-block h2:before {
  content: none;
}

.bullet-points-block ul {
  margin-left: 2rem;
}

.bullet-points-block li {
  position: relative;
}

.bullet-points-block li:before {
  color: #d1bf93;
  content: "\2022";
  font-size: 2.4rem;
  left: -2rem;
  line-height: 1;
  position: absolute;
  top: -0.3rem;
}

/* Faculty Block */

.faculty-member:not(:last-child) {
  margin-bottom: 4.2rem;
}

.faculty-member-image > div {
  display: inline-block;
  height: auto;
  margin-bottom: 1.2rem;
  max-width: 31.25rem;
  position: relative;
  width: 100%;
}

.faculty-member-text h3 {
  margin-bottom: 0.3rem;
}

.faculty-member-description {
  margin-bottom: 2rem;
}

@media only screen and (min-width: 48em) {
  .faculty-member-image > div {
    margin-bottom: 1.5rem;
  }

  .faculty-member-position {
    margin-bottom: 1.5rem;
  }

  .faculty-member-description {
    margin-bottom: 3rem;
  }
}

@media only screen and (min-width: 64em) {
  .faculty-member-image > div {
    margin-bottom: 0;
  }

  .faculty-member-text {
    padding-left: 2.8rem;
  }
}

/* Sample Schedule */

.sample-schedule-list {
  display: flex;
  flex-flow: row wrap;
}

.sample-schedule-list-item span {
  font-weight: 700;
  margin-inline-end: 0.1rem;
}

/* Old Course Template */

/* Text Intro Inner */

@media screen and (min-width: 64.0625rem) {
  .text-intro-inner.sidebar-on {
    display: inline-block;
    max-width: 75%;
  }
}

/* Quick Access Course Sidebar */

.quick-access-sidebar {
  display: inline-block;
  margin-bottom: 3rem;
  width: 100%;
}

.quick-access-sidebar > div {
  border-left: 0.0625rem solid #a37e27;
  padding-left: 1.2rem;
}

.quick-access-sidebar li {
  line-height: normal;
  margin-bottom: 0.2rem;
}

.quick-access-sidebar a {
  line-height: 1.2;
}

@media screen and (min-width: 64.0625rem) {
  .quick-access-sidebar {
    display: inline-block;
    margin-bottom: 0;
    margin-left: 4rem;
    margin-top: 1rem;
    vertical-align: top;
    width: 17%;
  }
}

/* Next Steps Widget */

.next-steps-block h2 {
  margin-bottom: 1.5rem;
}

.next-steps-links {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  text-align: left;
}

li.next-steps-link {
  margin-bottom: 0.75rem;
  margin-top: 0.75rem;
}

li.next-steps-link a {
  border-left-color: #d1bf93;
  border-left-style: solid;
  border-left-width: 0.3125rem;
  color: #333;
  font-size: 1.125rem;
  line-height: 1.3;
  padding-top: 0.1rem;
  padding-left: 0.9rem;
  text-decoration: none;
  transition: border-left-color 0.2s;
}

li.next-steps-link a:hover,
li.next-steps-link a:focus,
li.next-steps-link a:active {
  border-left-color: #a37e27;
}

section li.next-steps-link a:before {
  content: none;
  border-bottom: none;
}

@media only screen and (min-width: 30em) {
  .next-steps-links {
    flex-direction: row;
    justify-content: space-between;
  }

  li.next-steps-link {
    width: 50%;
  }

  li.next-steps-link:not(:last-child) {
    padding-right: 2rem;
  }
}

@media only screen and (min-width: 48em) {
  li.next-steps-link {
    width: auto;
  }
}

/* Accordion Two Column Block */

section.accordion-two-col-block div.container > div,
section.accordion-two-col-block div.content {
  margin-bottom: 0;
  padding-top: 0;
}

section.accordion-two-col-block div.content h3 {
  font-weight: 400;
}

section.accordion-two-col-block div.content ul,
section.accordion-two-col-block div.content ol {
  padding-left: 1rem;
}

section.accordion-two-col-block div.content ul li,
section.accordion-two-col-block div.content ol li {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.75;
}

section.accordion-two-col-block div.content ul li {
  list-style: disc;
}

section.accordion-two-col-block div.content ul li::before,
section.accordion-two-col-block div.content ol li::before {
  content: none;
}

/* Temp Accordion */

section.faqs.text-intro.temp-accordion div.container {
  margin-left: 0 !important;
}

section.article .temp-accordion div.container {
  padding-top: 0 !important;
}

section.text-intro.temp-accordion div.container > ul > li::before {
  content: none !important;
}

section.faqs.temp-accordion div.container > ul > li > strong,
section.faqs.temp-accordion
  div.container
  > ul
  > li
  div.text
  div
  > strong:first-child {
  font-size: 1.625rem;
  line-height: 1;
}

section.faqs.temp-accordion div.container > ul > li div.text div {
  padding-left: 0;
}

section.temp-accordion ul ul {
  padding-left: 1rem;
}

section.temp-accordion li li {
  padding-left: 0;
}

/**** LANDING PAGES ****/

.masthead-landing {
  height: calc(100vh - 3.75rem);
  height: calc(100dvh - 3.75rem);
}

@media only screen and (min-width: 48rem) {
  .masthead-landing {
    height: calc(100vh - 4.5625rem);
    height: calc(100dvh - 4.5625rem);
  }

  .masthead-landing .masthead-inner {
    margin-left: 0;
    padding-left: 4.5rem;
  }

  .masthead-landing .masthead-inner .columns {
    padding: 0;
  }
}

@media only screen and (min-width: 64rem) {
  .masthead-landing {
    height: 100vh;
  }

  .masthead-landing .masthead-inner {
    padding-left: 7.375rem;
  }
}

/* PROGRAM NEWS */

.program-news {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
}

.program-news .container {
  padding-bottom: 2rem;
  padding-top: 3.125rem;
}

.program-news h2 {
  font-size: 1.875rem;
  line-height: 1.875rem;
  margin-bottom: 2.125rem;
}

.program-news-items {
  display: grid;
  row-gap: 1.5rem;
}

.program-news-item a {
  color: #000;
  text-decoration: none;
  width: 100%;
}

section .program-news-item a:not(.button)::before {
  content: none;
}

.program-news-item-inner {
  aspect-ratio: 1.6;
  display: block;
  overflow: hidden;
  position: relative;
}

.program-news-item-desc {
  display: none;
}

.program-news-item-image {
  aspect-ratio: 1;
}

.program-news-item-image > img {
  object-fit: cover;
  object-position: center;
  display: block;
  height: 100%;
}

.program-news-item-title {
  display: inline-block;
  font-size: 0.75rem;
  line-height: 1.5;
  margin-top: 0.4375rem;
}

@media only screen and (min-width: 30rem) {
  .program-news-items {
    gap: 1.3rem;
    grid-auto-flow: row;
    grid-template-columns: 1fr 1fr;
  }
}

@media only screen and (min-width: 64em) {
  .program-news .container {
    padding-bottom: 5rem;
    padding-top: 8.0625rem;
  }

  .program-news h2 {
    font-size: 2.875rem;
    line-height: 2.875rem;
    margin-bottom: 4.0625rem;
  }

  .program-news-items {
    column-gap: 1.3rem;
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-auto-columns: 1fr;
  }

  .program-news-item-inner {
    aspect-ratio: 1;
  }

  .program-news-item-desc {
    background-color: rgba(0, 0, 0, 0.8);
    display: inline-block;
    inset: 0;
    line-height: 0;
    opacity: 0;
    padding: 1.0625rem 1rem 4rem;
    position: absolute;
    transition: opacity 0.25s;
    width: 100%;
  }

  span.program-news-item-desc > span {
    color: #fff;
    font-size: 0.75rem;
    line-height: 1.65;
    height: 100%;
    display: inline-block;
    width: 100%;
    overflow: overlay;
  }

  .program-news-item-desc::after {
    background-color: #a37e27;
    bottom: 0;
    color: #fff;
    content: "Read more";
    display: inline-block;
    font-family: "MercuryDisplay", serif;
    font-size: 1rem;
    font-style: italic;
    font-weight: 700;
    height: auto;
    line-height: 1.625;
    padding: 0.5rem 1.6rem;
    position: absolute;
    right: 0;
    text-align: center;
  }

  .program-news-item > a:hover .program-news-item-desc {
    opacity: 1;
  }
}

/**** COOKIE CONSENT BANNER ****/

#iubenda-cs-banner {
  background-color: #000;
  bottom: 0;
  display: block;
  left: 0;
  padding: 1rem;
  position: fixed;
  right: 0;
  width: 100%;
  z-index: 1001;
}

.iubenda-cs-content {
  position: relative;
  margin: 0 auto;
  max-width: 60rem;
}

.iubenda-banner-content {
  color: #fff;
  display: block;
  font-family: "Benton Sans", "Helvetica", Arial, sans-serif;
  font-size: 0.825rem;
  line-height: 1.5;
  padding-right: 2rem;
}

.iubenda-banner-content a {
  color: #fff !important;
  text-decoration: underline !important;
}

.iubenda-banner-content a:hover {
  text-decoration: none !important;
}

.iubenda-cs-close-btn {
  color: #ddd;
  font-size: 1.6rem;
  position: absolute;
  right: 0;
}

.iubenda-cs-close-btn:hover {
  color: #fff;
}

@media only screen and (min-width: 48em) {
  #iubenda-cs-banner {
    padding: 2rem;
  }

  .iubenda-banner-content {
    padding-right: 3rem;
  }
}
