@font-face { font-family: "brother"; src: url("../fonts/brothbol-071211005EmigreWebOnly.woff2") format("woff2"); font-weight: normal; font-style: normal; font-display: block; }
@font-face { font-family: "lato"; src: url("../fonts/lato-reg-webfont.woff2") format("woff2"); font-weight: normal; font-style: normal; font-display: block; }
@font-face { font-family: "lato"; src: url("../fonts/lato-bol-webfont.woff2") format("woff2"); font-weight: bold; font-style: normal; font-display: block; }
@font-face { font-family: "lato"; src: url("../fonts/lato-bla-webfont.woff2") format("woff2"); font-weight: 900; font-style: normal; font-display: block; }
@font-face { font-family: "lato"; src: url("../fonts/lato-regita-webfont.woff2") format("woff2"); font-weight: normal; font-style: italic; font-display: block; }
@font-face { font-family: "merriweatherlight_italic"; src: url("../fonts/merriweather-lightitalic-webfont.woff2") format("woff2"); font-weight: normal; font-style: normal; font-display: block; }
@font-face { font-family: "merriweatheritalic"; src: url("../fonts/merriweather-italic-webfont.woff2") format("woff2"); font-weight: normal; font-style: normal; font-display: block; }
@font-face { font-family: "merriweatherregular"; src: url("../fonts/merriweather-regular-webfont.woff2") format("woff2"); font-weight: normal; font-style: normal; font-display: block; }
@font-face { font-family: "montserratbold"; src: url("../fonts/montserrat-bold-webfont.woff2") format("woff2"); font-weight: normal; font-style: normal; font-display: block; }
@font-face { font-family: "montserratregular"; src: url("../fonts/montserrat-regular-webfont.woff2") format("woff2"); font-weight: normal; font-style: normal; font-display: block; }

:root {
  --plum: #3b2337;
  --plum-deep: #3c2337;
  --plum-text: #3e2337;
  --plum-card: #352030;
  --gold: #b49f5f;
  --gold-text: #8f7a3f;
  --gold-link: #91784d;
  --grey-bg: #ededed;
  --grey-field: #efefef;
  --ink: #3b2337;
  --sans: lato, helvetica, arial, sans-serif;
  --display: brother, helvetica, arial, sans-serif;
  --serif-italic: merriweatheritalic, georgia, serif;
  --serif-light-italic: merriweatherlight_italic, georgia, serif;
  --serif: merriweatherregular, georgia, serif;
  --montserrat: montserratregular, helvetica, arial, sans-serif;
  --header-band: 155px;
  --header-height: 186px;
  --content-max: 900px;
  --section-max: 795px;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { height: 100%; -webkit-text-size-adjust: 100%; }
body { background: #fff; color: #000; text-align: center; font: normal 0.6875rem/1.5 var(--sans); min-height: 100vh; display: flex; flex-direction: column; }
img { border: 0; max-width: 100%; height: auto; }
picture { display: contents; }
button, input, textarea { font: inherit; color: inherit; }
ul { list-style: none; }

.skip-link { position: absolute; top: -100px; left: 1rem; z-index: 10000; background: var(--gold); color: #fff; padding: .75rem 1.25rem; font: bold 1rem var(--sans); text-transform: uppercase; text-decoration: none; }
.skip-link:focus { top: 1rem; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }

/* Header: fixed plum band with a centred notch, logo hanging through the notch */
header { position: fixed; top: 0; left: 0; width: 100%; height: var(--header-height); z-index: 9999; pointer-events: none; }
header > nav, header .mobile-logo-area { pointer-events: auto; }
header > nav { position: relative; width: 100%; height: var(--header-height); }
header > nav::before { content: ""; position: absolute; inset: 0 0 auto 0; height: var(--header-band); background: var(--plum-deep); }
header > nav::after { content: ""; position: absolute; top: var(--header-band); left: 50%; width: 0; height: 0; margin-left: -65px; border-left: 65px solid transparent; border-right: 65px solid transparent; border-top: 23px solid var(--plum-deep); }
header > nav ul { position: relative; width: 100%; max-width: 60rem; margin: 0 auto; display: flex; justify-content: center; }
header > nav li a { display: block; padding: 10px 20px; color: #fff; text-transform: uppercase; text-decoration: none; font-weight: bold; }
header > nav li a:hover { color: #aa914f; }
.hide-small { display: none; }
#l_logo { position: absolute; top: 60px; left: 50%; width: 133px; height: 79px; margin-left: -66px; }
#l_logo a { display: block; width: 133px; height: 79px; background: url("../images/bently_foundation_logo.svg") no-repeat center center / contain; text-indent: -9999px; padding: 0; }
@media (min-width: 768px) {
  .hide-small { display: inline-block; margin-top: 20px; margin-bottom: 45px; }
  .first-item-nav { margin-left: 21px; }
}
@media (max-width: 767.98px) {
  #l_logo { top: 50px; }
}

/* Mobile menu */
.mobile-logo-area { position: absolute; top: 0; left: 0; width: 100%; height: var(--header-height); z-index: 9999; }
.hamburger-icon { display: block; position: absolute; right: 1rem; top: 4.6rem; width: 1.875rem; height: 1.875rem; overflow: hidden; border: 0; background: transparent; cursor: pointer; font-size: 0; text-indent: -9999px; appearance: none; }
.hamburger-icon span { display: block; position: absolute; top: .851rem; left: 0; right: 0; height: .15rem; background: #fff; transition: background 0s 100ms; }
.hamburger-icon span::before, .hamburger-icon span::after { content: ""; position: absolute; left: 0; width: 100%; height: .15rem; background: #fff; }
.hamburger-icon span::before { top: -.375rem; transition: top 100ms 100ms, transform 100ms 100ms; }
.hamburger-icon span::after { bottom: -.375rem; transition: bottom 100ms, transform 100ms; }
.hamburger-icon.is-active span { background: none; }
.hamburger-icon.is-active span::before { top: 0; transform: rotate(45deg); }
.hamburger-icon.is-active span::after { bottom: 0; transform: rotate(-45deg); }
.hamburger-icon.is-active span::before, .hamburger-icon.is-active span::after { transition-delay: 0s, 100ms; }
.overlay { position: fixed; inset: 0; width: 100%; height: 100%; overflow: hidden; z-index: 9997; background: rgba(57, 51, 51, .9); }
[aria-hidden="true"].overlay { transition: opacity 1s, z-index 0s 1s; z-index: -1; opacity: 0; }
[aria-hidden="false"].overlay { transition: opacity 1s; z-index: 1; opacity: 1; }
.overlay .mobile-menu { position: relative; top: 156px; height: 100%; text-align: center; }
.overlay ul { display: inline-block; position: relative; height: 100%; margin: 0 auto; padding: 1.5rem 0 .8rem; }
.overlay ul li a { position: relative; color: #fff; font: 1rem/1.5 var(--sans); text-decoration: none; }
.overlay ul li a:hover, .overlay ul li a:focus { color: #e3fcb1; }
.mobile-link-border-bottom::after { content: ""; position: absolute; left: 0; right: 0; bottom: -2px; width: 4rem; height: 2px; margin: 0 auto; background: #fff; }
.mobile-link-border-top::before { content: ""; position: absolute; left: 0; right: 0; top: -2px; width: 4rem; height: 2px; margin: 0 auto; background: #fff; }
.overlay-heritage { opacity: 0; visibility: hidden; transition: opacity .5s, visibility 0s .5s; }
.overlay-heritage.open { opacity: 1; visibility: visible; transition: opacity .5s; }
.overlay-heritage .mobile-menu { perspective: 1200px; }
.overlay-heritage .mobile-menu ul { opacity: .4; transform: translateY(-25%) rotateX(35deg); transition: transform .5s, opacity .5s; }
.overlay-heritage.open .mobile-menu ul { opacity: 1; transform: rotateX(0deg); }
.overlay-heritage.close .mobile-menu ul { transform: translateY(25%) rotateX(-35deg); }
@media (max-height: 30.5em) {
  .overlay .mobile-menu { height: 70%; font-size: 2rem; }
  .overlay ul li { min-height: 2rem; }
}
@media (min-width: 768px) {
  .mobile-logo-area, .mobile-menu, .hamburger-icon { display: none; }
}

/* Page frame */
#page-wrap { flex: 1 0 auto; width: 100%; }
footer { flex-shrink: 0; width: 100%; }
#content-wrap { padding-top: 0; }
@media (min-width: 40em) { #content-wrap { padding-top: 3rem; } }
section { margin: 0 auto; padding: 83px 0 87px; max-width: var(--section-max); }
.contain_to_grid { max-width: var(--content-max); margin: 0 auto; }
.grey_bg { background: var(--grey-bg); }
.reverse_bg { background: #fff; }
.centered_text { padding: 0 90px; }
.centered_text p { font: normal 1.25rem/1.5 var(--sans); }
.centered_text p a { color: #000; text-decoration: underline; font: normal 1rem/1.5 var(--sans); }
.centered_text blockquote { font: normal 1.25rem/1.5 var(--serif-italic); color: var(--gold-link); }
.centered_text cite { display: block; padding-top: 11px; font: 900 .875rem/1.5 var(--sans); font-style: normal; color: var(--plum-text); text-transform: uppercase; text-align: center; }
.centered_text h6 { margin-top: 18px; }
.centered_text h6 a { color: var(--gold-link); font: 700 .75rem/1.6 var(--sans); text-transform: uppercase; text-decoration: none; }
section h2 { color: var(--plum-text); font: bold 2.625rem/1.15 var(--display); margin-bottom: 47px; }
.no_body_copy { margin-bottom: 0; }
section h4 { font: normal 1.25rem/1.25 var(--display); color: var(--plum-deep); padding: 0 30px; text-align: center; }
section li p { font: normal .875rem/1.5 var(--sans); padding: 20px 30px; text-align: center; }
.vertical_center { position: relative; top: 50%; transform: translateY(-50%); }
.callout { position: relative; width: 100%; height: 80px; color: #fff; background: var(--gold); margin-bottom: -12px; }
.callout h3 { font: bold 1.5rem/1.2 var(--display); padding: 0; }
.decoration img { width: 100%; margin-top: -87px; }
@media (max-width: 960px) { .contain_to_grid { max-width: 700px; } }
@media (max-width: 768px) {
  .contain_to_grid { max-width: 480px; }
  .centered_text { padding: 0 30px; }
}
@media (max-width: 500px) {
  .contain_to_grid { width: min(300px, 100%); }
  .centered_text { padding: 0; }
}

/* Two-column sections: about, team bio, news posts, contact */
.about, .bio, .news article, .contact { display: grid; grid-template-columns: 29% 65%; column-gap: 6%; align-items: start; }
.about > .centered_text { grid-column: 1 / -1; }
.right a { color: #000; }
.right img { width: 100%; }
.left img { width: 100%; }
.left img + img { margin-top: 1.5rem; }
@media (max-width: 768px) {
  .about, .bio, .news article, .contact { grid-template-columns: 100%; column-gap: 0; }
  .right { margin: 50px auto; width: 100%; }
  .left { width: 100%; margin: 0 auto; }
  .left img { width: 50%; margin: 30px 0 0; }
}

/* Home */
.fotorama-small-only { display: none; }
.mission { position: relative; margin-top: 20px; width: 100%; height: 100%; }
.byline { position: absolute; inset: 0; height: 200px; width: 100%; margin: auto; z-index: 2; }
.byline h2 { color: var(--plum-deep); text-align: center; font: normal 3rem/1.5 var(--display); }
.byline h2 em { display: block; position: relative; height: 30px; background: url("../images/we_promote.svg") no-repeat center center / contain; text-indent: -9999px; }
.byline h2 span { display: inline-block; position: relative; top: 16px; width: 45px; height: 39px; background: url("../images/ampersand.svg") no-repeat right center / contain; text-indent: -9999px; }
#floated_list { display: flex; gap: 3rem; }
#floated_list li { flex: 1 1 33%; }
#floated_list li p { padding: 40px 0; }
@media (max-width: 768px) {
  .byline { height: 130px; }
  .byline h2 { font-size: 2.5rem; }
  .byline h2 span { width: 35px; height: 30px; }
  .byline h2 em { height: 24px; }
  #floated_list { flex-direction: column; align-items: center; gap: 0; }
  #floated_list li { flex: none; width: min(480px, 100%); }
}
@media (max-width: 500px) {
  .mission { margin-top: 43px; }
  .fotorama-medium-up { display: none; }
  .fotorama-small-only { display: block; }
  #floated_list li { width: min(300px, 100%); }
  .byline { height: 70px; }
  .byline h2 { font-size: 1.25rem; }
  .byline h2 span { width: 17px; height: 15px; top: 8px; }
  .byline h2 em { height: 16px; }
}

/* About */
.about h3 { font: normal 1.25rem/1.5 var(--serif-italic); color: var(--gold-link); text-align: left; }
.about ul { text-align: left; font: normal .875rem/1.5 var(--sans); list-style: disc; padding-left: 1.5em; }
.about p { margin-bottom: 30px; }
@media (max-width: 960px) { .about h3 { padding-left: 5%; } }
@media (max-width: 768px) {
  .about h3 { width: 90%; margin: 0 auto; }
  .about ul { width: 80%; margin: 0 auto; }
}

/* Leadership team */
.alternate_wrapper { width: 100%; text-align: left; }
.alternate_wrapper:nth-of-type(odd) { background: var(--grey-bg); }
.alternate_wrapper h3 { color: var(--plum-text); font: bold 1.25rem/1.2 var(--display); text-transform: uppercase; }
.alternate_wrapper h4 { color: var(--plum-text); font: normal 1rem/1.25 var(--serif-light-italic); text-align: left; padding: 0; margin-top: 3px; }
.alternate_wrapper h5 { font: normal .75rem/1.25 var(--serif); border-top: 1px solid rgba(153, 153, 153, .36); border-bottom: 1px solid rgba(153, 153, 153, .36); margin-top: 10px; padding: 5px 0; color: rgba(153, 153, 153, .69); }
.alternate_wrapper p { font-size: 1rem; color: #3e303d; margin-top: 18px; }
.alternate_wrapper p a { color: var(--gold-link); font: 700 .75rem/1.6 var(--sans); text-transform: uppercase; text-decoration: none; }
.alternate_wrapper p a:hover { color: #000; }
.team-spacer { margin-top: 6rem; }
.bio_lede h2 { margin-bottom: 0; }
.bio_lede h4 { color: var(--plum-text); font: normal 1rem/1.25 var(--serif-light-italic); margin-top: 15px; }
.bio_lede h5 { font: normal .75rem/1.25 var(--serif); margin-top: 10px; padding: 5px 0; color: rgba(153, 153, 153, .69); }
.bio blockquote p { font: normal 1rem/1.6 var(--serif-italic); color: var(--gold-link); text-align: left; padding-right: 15px; }
.bio blockquote p::before { content: "\201C"; }
.bio blockquote p::after { content: "\201D"; }
.bio cite { display: block; margin-top: 3px; font: 900 .6875rem/1.6 var(--sans); font-style: normal; text-align: left; text-transform: uppercase; color: var(--ink); }
.bio p { font: normal .875rem/1.7 var(--sans); color: var(--ink); text-align: left; }
.bio p + p { margin-top: 20px; }
@media (max-width: 960px) { .bio { width: 90%; margin: 0 auto; } }
@media (max-width: 768px) {
  .bio-no-quote { margin: 0 !important; }
  img.bio-photo { width: 46%; margin: 0 2% 0 0; }
  .bio blockquote p { padding-right: 2%; }
  img.bio-photo-no-quote { width: 46%; margin: 0 27% 20px; }
}
@media (max-width: 500px) {
  img.bio-photo { width: 96%; margin: 0 auto 20px; }
  .bio blockquote p { width: 96%; }
}

/* News */
.news { margin-top: 30px; padding-top: 7rem; }
@media (min-width: 40em) { .news { padding-top: 15rem; } }
.news h2 { color: var(--ink); text-align: left; font: normal 1.125rem/1.3 var(--display); text-transform: uppercase; margin-bottom: 5px; }
.news h2 a { color: var(--ink); text-decoration: none; }
.news h2 a:hover { color: #000; text-decoration: underline; }
.news p { margin-top: 0; font: 900 .75rem/1.5 var(--sans); text-align: left; text-transform: uppercase; color: var(--ink); }
.news article { margin-bottom: 4.5rem; }
.news article:last-of-type { margin-bottom: 0; }
.news article img { width: 100%; margin-bottom: 28px; }
.embedded { position: relative; padding-bottom: 56.25%; height: 0; margin-bottom: 28px; }
.embedded iframe { position: absolute; inset: 0; width: 100%; height: 100%; }
.news .right p, .news .newscontent { font: normal .875rem/1.7 var(--sans); color: var(--ink); text-align: left; text-transform: none; }
.news .right p a { text-decoration: underline; color: var(--ink); }
.news .right blockquote { margin: 30px 0 0; }
.news .right blockquote p { font: italic 1.125rem/1.5 var(--sans); color: var(--gold-link); }
.news .right blockquote p::before { content: "\201C"; }
.news .right blockquote p::after { content: "\201D"; }
.news .right blockquote cite { display: block; font: 900 .75rem/1.5 var(--sans); font-style: normal; text-transform: uppercase; color: #422a3c; text-align: left; }
.news .right blockquote cite::before { content: "\2014 "; }
.news .newscontent { margin-top: 30px; }
.news .right > :first-child { margin-top: 0; }
.news .right > .newscontent:first-child > p:first-child { padding-top: 0; }
.news .newscontent p { padding: 10px 0; }
.news .newscontent p:first-of-type { padding-top: 0; }
.news .right .outtro p { font-size: .75rem; margin-top: .75rem; text-transform: uppercase; }

/* Grants index */
.curtain .contain_to_grid { padding-bottom: 0; }
.curtain h2 { padding-top: 20px; margin-bottom: 40px; }
#inner-header-not-fixed { background: #fff; width: 100%; max-width: 100%; margin-top: 0; padding: 105px 0 0; height: 350px; }
.fixed_subnav { width: 100%; z-index: 9999; text-align: left; }
.fixed_subnav.callout { height: auto; min-height: 80px; padding: .75rem 0; margin-bottom: 0; }
.inner-subnav-wrapper { width: 94%; max-width: 75rem; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.25rem; }
.inner-subnav-wrapper label { display: inline-flex; align-items: center; gap: .4rem; font: bold .875rem/1.2 var(--sans); cursor: pointer; }
.inner-subnav-wrapper input[type="radio"] { width: 1rem; height: 1rem; margin: 0; accent-color: var(--plum-deep); cursor: pointer; }
.continentList { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.25rem; flex-basis: 100%; }
#allContinentsWrapper { display: none; }
.search { flex: 1 1 12rem; max-width: 15rem; height: 2rem; padding: 0 .5rem; border: 0; background: var(--grey-field); font: normal 1rem/1.3 var(--sans); color: var(--plum-card); }
.search:focus { outline: 3px solid var(--plum-deep); outline-offset: 0; }
.clear { height: 2rem; padding: 0 .75rem; border: 2px solid var(--grey-bg); background: var(--grey-bg); color: var(--plum-card); font: normal .875rem/1.3 var(--sans); cursor: pointer; transition: border-color 100ms; }
.clear:hover, .clear:focus-visible { border-color: var(--plum-card); }
@media (min-width: 65em) {
  .inner-subnav-wrapper label { font-size: 1rem; }
  .inner-subnav-wrapper { gap: .5rem 2rem; }
  .continentList { gap: .5rem 2rem; }
  .clear { font-size: 1rem; margin-right: 2rem; }
}
.grantIndex { width: 94%; max-width: 75rem; margin: 0 auto; }
.grantsIndexList { display: grid; grid-template-columns: repeat(12, 1fr); gap: 1.5rem; margin: 2.2rem 0 1.5rem; }
.grantsIndexList li { overflow: hidden; height: 0; padding-top: 56.25%; position: relative; grid-column: span 12; }
@media (min-width: 40em) { .grantsIndexList li { grid-column: span 6; } }
.figureWrapper { position: absolute; inset: 0; background: var(--plum-card); }
.figureWrapper img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 1; transition: filter 100ms; }
.figureWrapper h3 { position: absolute; left: 1.5rem; top: 1.5rem; text-align: left; font: bold 2rem/1.1 var(--display); z-index: 2; color: #fff; }
.figureWrapper p { position: absolute; bottom: 1.5rem; left: 1.5rem; font: bold .8rem/1.4 var(--sans); z-index: 2; color: #fff; text-align: left; margin: 0; }
.figureWrapper p span { font-weight: normal; }
@media (hover: hover) {
  .figureWrapper img, .figureWrapper h3, .figureWrapper p { filter: sepia(66%); }
  .grantsIndexList a:hover img, .grantsIndexList a:hover h3, .grantsIndexList a:hover p, .grantsIndexList a:focus-visible img, .grantsIndexList a:focus-visible h3, .grantsIndexList a:focus-visible p { filter: sepia(0%); }
}
.no-result { display: none; }
.no-result h2 { font: bold 2.625rem/1.15 var(--display); }

/* Single grant */
.singleGrantCurtain { margin-top: 8rem; }
@media (min-width: 40em) { .singleGrantCurtain { margin-top: 5rem; } }
.singleGrant { width: 94%; margin: 0 auto; }
.singleGrant p { font-size: 1rem; text-align: left; margin-bottom: .5rem; }
.singleGrant figcaption p { font-size: 1rem; margin-bottom: 1rem; }
.singleGrant img { max-width: 100%; height: auto; }
.singleGrant li { margin: 1rem 0; }
.singleGrant li img { width: 100%; }
.singleGrant .fotorama { margin-top: 1.5rem; background: #eaeaea; }
.logo_container { max-width: 20rem; margin: 0 auto; }
.logo_container img { padding: 5px; }
@media (min-width: 40em) {
  .logo_container { display: flex; align-items: center; justify-content: center; }
  .logo_container img { flex: 1 1 50%; min-width: 0; }
}
.grantTitle { color: var(--plum-text); font: bold 2.625rem/1.15 var(--display); margin: 1.5rem 0; }

/* Forms: contact and subscribe */
.contact { margin-top: -120px; }
.contact aside h3, #formtitle { color: var(--gold-text); text-align: left; font: normal 1.25rem/1.3 var(--display); text-transform: uppercase; margin-bottom: 20px; }
fieldset { border: 0; margin: 0; padding: 0; }
label { display: block; font: normal 1rem/1.3 var(--sans); text-align: left; margin-bottom: 10px; }
.contact-form .cf, #subForm .cf { display: flex; gap: 2%; }
#namegroup, #emailgroup { flex: 1 1 49%; min-width: 0; }
input[type="text"], input[type="email"], textarea { width: 100%; border: 2px solid transparent; background: var(--grey-field); font: normal 1.25rem/1.3 var(--sans); padding: 0 .5rem; transition: border-color 150ms, background 150ms; }
input[type="text"], input[type="email"] { height: 40px; }
textarea { resize: vertical; min-height: 7rem; padding: .5rem; }
input[type="text"]:focus, input[type="email"]:focus, textarea:focus { outline: 0; border-color: var(--plum-deep); background: #fff; }
#messagelabel { margin-top: 20px; }
.button, button[type="submit"] { display: inline-block; margin: 20px 0 1.25rem; padding: 1rem 2rem 1.0625rem; border: 0; border-radius: 0; background: var(--gold); color: #fff; font: normal .9375rem/1 var(--sans); text-transform: uppercase; letter-spacing: .06em; text-align: center; text-decoration: none; cursor: pointer; appearance: none; transition: background-color 300ms ease-out; }
.button:hover, button[type="submit"]:hover { background-color: var(--plum-deep); }
.button:focus-visible, button[type="submit"]:focus-visible { outline: 3px solid var(--plum-deep); outline-offset: 2px; }
.contact-form button[type="submit"] { float: right; }
.contact-form fieldset::after { content: ""; display: block; clear: both; }
@media (max-width: 768px) {
  .contact .left, .contact .right { width: 100%; margin: 0 auto; }
}
@media (max-width: 500px) {
  .contact-form .cf, #subForm .cf { flex-direction: column; gap: 0; }
  #emailgroup { margin-top: 20px; }
  .contact-form button[type="submit"] { float: none; width: 100%; }
}

/* Message pages */
#message_focus p { font: normal 1rem/1.5 var(--sans); }
#message_focus h2 { padding: 0 1rem; overflow-wrap: anywhere; }
@media (max-width: 500px) { #message_focus h2 { font-size: 2rem; } }

/* Footer */
footer { background: var(--plum); }
#footwrap { display: flex; gap: 1%; align-items: flex-start; width: 100%; max-width: 60rem; margin: 0 auto; padding: 40px 1rem 2.5rem; }
footer h6 { flex: 0 0 37%; font: bold 1rem/1.5 var(--sans); text-align: left; color: #887e86; margin: 0; }
footer p { flex: 0 0 62%; margin-top: 7px; font: normal .6875rem/1.2 var(--sans); color: #80747d; text-align: left; }
@media (max-width: 960px) { #footwrap { max-width: 750px; } }
@media (max-width: 768px) {
  #footwrap { max-width: 450px; }
  footer h6 { font-size: .875rem; margin-top: 5px; }
}
@media (max-width: 500px) { #footwrap { max-width: 300px; padding-left: 0; padding-right: 0; } }

/* Wild Night event page */
.event-hero { width: 100%; height: 580px; background: url("../images/wild-night-hero.jpg") center center / cover; }
.event-hero-title { height: 0; text-indent: 100%; white-space: nowrap; overflow: hidden; }
.wild-night-padding-override { padding: 33px 0; }
.host-category { padding: 0 0 14px; }
.event-lead h2 { color: var(--plum-text); font: bold 2.625rem/1 var(--display); }
.heading-horizontal-line { position: relative; text-align: center; top: 10px; margin-bottom: 10px; }
.heading-horizontal-line span { background: #fff; padding: 0 100px; position: relative; z-index: 1; }
.heading-horizontal-line::before { content: ""; display: block; position: absolute; top: 55%; left: 0; width: 100%; height: 2px; background: var(--grey-bg); }
.heading-horizontal-line-gold { position: relative; text-align: center; top: 20px; margin-bottom: 20px; }
.heading-horizontal-line-gold span { background: #fff; padding: 0 15px; position: relative; z-index: 1; font: normal 1.1875rem/1.5 var(--display); text-transform: uppercase; color: var(--gold); }
.heading-horizontal-line-gold::before { content: ""; display: block; position: absolute; top: 55%; left: 0; width: 100%; height: 1px; background: linear-gradient(to right, rgba(180, 159, 95, 0) 0%, rgba(180, 159, 95, .48) 10%, #b49f5f 24%, #b49f5f 50%, #b49f5f 80%, rgba(180, 159, 95, .49) 90%, rgba(180, 159, 95, 0) 100%); }
.sponsor-amount { color: var(--gold); }
.event-details { margin-top: 0; font: normal 1.5rem/1.4 var(--montserrat); text-transform: none; color: #050503; }
.event-details span { display: block; text-transform: uppercase; }
.event-address { font: normal 1.1875rem/1.5 var(--montserrat); color: #050503; min-width: 100%; margin: 0; }
.event-description p { font: normal 1rem/1.5 var(--montserrat); color: #3f3f3f; }
.event-description span { text-transform: uppercase; }
.event-description h3 { font: normal 1.1875rem/1.5 var(--montserrat); text-transform: none; }
.event-learn-more { color: #3f3f3f; }
.event-learn-more:last-of-type { padding-bottom: 0; }
.event-learn-more a { color: var(--gold-text); text-decoration: underline; font-weight: 600; }
.event-learn-more a:hover { color: var(--plum-text); }
.event-callout { height: 150px; }
.event-callout h3 { width: 900px; max-width: 98%; margin: 0 auto; padding-bottom: 10px; font-size: 1.9375rem; line-height: 1; }
.event-callout h3 span { font-size: 2.875rem; display: block; }
h3.host { font: normal 1.1875rem/1.5 var(--montserrat); text-transform: none; }
.full { margin-top: 20px; width: 96%; display: inline-block; }
.half { margin-top: 20px; width: 48%; display: inline-block; vertical-align: top; }
.half-centered { width: 50%; display: inline-block; margin: 13px auto 0; }
.full h3, .half h3, .half-centered h3 { max-width: 70%; margin: 0 auto; }
.event-button { width: 70%; margin: 34px auto 30px; padding-left: 0; padding-right: 0; font-weight: bold; font-size: 1.3125rem; color: #fff; text-decoration: none; background: var(--plum-deep); }
.event-button:hover { background-color: var(--gold); }
.packet-callout { padding-bottom: 33px; width: 96%; margin: 0 auto; }
.packet-callout p { font: bold 1rem/1.5 montserratbold, helvetica, arial, sans-serif; }
.packet-callout p a { color: var(--gold-text); text-decoration: underline; text-transform: uppercase; font-weight: 600; }
.logos-row img, .logos-row h4 { display: inline-block; margin: 20px 20px 0; max-width: 137px; height: auto; vertical-align: middle; }
.logos-row .dual-sponsorship { max-width: 274px; }
.logos-row img { opacity: .4; transition: opacity 200ms; }
.logos-row a img:hover { opacity: 1; }
.larger-logos img { max-width: 172px; }
.logos-row h4 { color: #9c9c9c; font-size: 1.125rem; line-height: 1.3; width: 137px; }
.logos-row h4 span { display: block; font-size: .75rem; line-height: 1.3; }
.logos-row h4 a { color: #9c9c9c; text-decoration: none; transition: color 200ms; }
.logos-row h4 a:hover { color: #000; }
#dunstan-link { display: inline-block; width: 114px; height: 112px; vertical-align: middle; margin: 20px 20px 0; }
#dunstan { display: inline-block; width: 114px; height: 112px; background: url("../images/dunstan-rollover.png") 50% 100% / cover; }
#dunstan:hover { background-position: 50% 0; }
.wider-individual-logo { max-width: 177px !important; margin-left: 0 !important; margin-right: 0 !important; }
.video-container { margin: 20px auto 30px; }
@media (max-width: 768px) {
  .event-hero { height: 450px; background-image: url("../images/wild-night-hero-small.jpg"); }
  .heading-horizontal-line span { padding: 0 30px; }
  .event-callout h3 { font-size: 1.5rem; }
  .event-callout h3 span { font-size: 2.25rem; }
  .event-button { width: 96%; font-size: 1rem; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .event-hero { background-image: url("../images/wild-night-hero-medium.jpg"); }
}
@media (max-width: 500px) {
  .event-hero { height: 300px; background-position: top right; }
  .event-lead h2 { font-size: 1.875rem; }
  .heading-horizontal-line span { padding: 0 10px; }
  .event-details { font-size: 1.125rem; }
  .event-callout h3 { padding-top: 10px; }
  .half, .half-centered { width: 96%; margin: 20px auto 0; }
  .half + .half { margin-top: 0; }
}

/* Fotorama overrides */
.fotorama__nav--dots .fotorama__nav__frame { width: 28px !important; height: 60px !important; }
.fotorama__nav { position: absolute !important; margin-top: -60px !important; z-index: 2 !important; }
.fotorama__dot { width: 10px !important; height: 10px !important; background: #fff !important; border-color: #fff !important; border-radius: 50% !important; }
.fotorama__nav__frame.fotorama__active .fotorama__dot { width: 14px !important; height: 14px !important; background: transparent !important; margin-top: -4px !important; margin-left: -4px !important; }
.fotorama__nav::after, .fotorama__stage::after, .fotorama__nav::before, .fotorama__stage::before { background-image: none; }

/* Spacing helpers, last so they win over component padding */
.mission, .padding-top { padding-top: 7rem; }
@media (min-width: 40em) { .mission, .padding-top { padding-top: 5rem; } }
