@charset "UTF-8";
@import"https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Lora:ital,wght@0,400..700;1,400..700&display=swap";

*,
:after,
:before {
 box-sizing: border-box;
 margin: 0;
 padding: 0
}

html {
 font-size: 62.5%;
 height: 100%;
 scroll-behavior: smooth;
 width: 100%
}

body {
 font-family: sans-serif;
 font-size: 1.6rem;
 min-height: 100vh;
 text-rendering: optimizeSpeed
}

ol,
ul {
 list-style: none;
 padding: 0
}

a:not([class]) {
 -webkit-text-decoration-skip: ink;
 text-decoration-skip-ink: auto
}

img {
 display: block;
 max-width: 100%
}

button,
input,
select,
textarea {
 font: inherit
}

:focus {
 outline: 1px dashed #fff;
 outline-offset: 1px
}

button:focus:not(:focus-visible) {
 outline: none
}

button:focus-visible {
 outline: 1px dashed #fff;
 outline-offset: 1px
}

body:not(.user-is-tabbing) a:focus,
body:not(.user-is-tabbing) button:focus,
body:not(.user-is-tabbing) input:focus,
body:not(.user-is-tabbing) select:focus,
body:not(.user-is-tabbing) textarea:focus {
 outline: none
}

body,
html {
 margin: 0;
 padding: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
 display: block
}

table {
 border-collapse: collapse;
 border-spacing: 0
}

caption,
td,
th {
 padding: 0;
 text-align: left;
 vertical-align: middle
}

blockquote,
q {
 quotes: ""
}

blockquote:after,
blockquote:before,
q:after,
q:before {
 content: ""
}

q {
 quotes: none
}

.Content1Column h4,
.Content2Column h4,
h1,
h2,
h3,
h4,
h5,
h6 {
 font-weight: 400
}

abbr[title] {
 border-bottom: 1px dotted
}

b,
strong {
 font-weight: 700
}

address,
dfn {
 font-style: normal
}

mark {
 background: #ff0;
 color: #000
}

code,
kbd,
pre,
samp {
 font-family: monospace, monospace;
 font-size: 1em
}

pre {
 white-space: pre-wrap;
 word-wrap: break-word
}

small,
sub,
sup {
 font-size: 75%
}

sub,
sup {
 line-height: 0;
 position: relative;
 vertical-align: baseline
}

sup {
 top: -.5em
}

sub {
 bottom: -.25em
}

nav ol,
nav ul {
 list-style: none
}

button {
 background: none;
 border: none;
 cursor: pointer;
 height: auto;
 line-height: normal;
 margin: 0;
 padding: 0;
 width: auto
}

input,
select,
textarea {
 font-size: 100%;
 margin: 0;
 vertical-align: baseline
}

audio[controls],
canvas,
video {
 display: inline-block
}

body .acme-news-ticker {
 background: #012e67
}

body .acme-news-ticker-controls,
body .acme-news-ticker-label {
 background: #011734
}

body .acme-news-ticker-close {
 background: #000102
}

body {
 font-family: Lato, serif;
 line-height: 1.5;
 margin: 0;
 overflow-x: hidden;
 padding: 0;
 position: relative;
 text-align: center
}

@media only screen and (max-width:990px) {
 body {
  min-width: 300px;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch
 }
}

body a {
 color: #00bfff
}

body a,
body a:focus,
body a:hover {
 -webkit-text-decoration: none;
 text-decoration: none
}

.body_6739 {
 background: #012e67
}

.body_6739 #wrapper {
 overflow: visible
}

.body_6739 * {
 box-sizing: border-box
}

.body_6739 .wrapper-inside {
 max-width: 100%;
 position: static;
 width: 100%
}

.body_6739 #mainholder {
 margin: 0;
 padding: 0;
 position: inherit
}

.body_6739 #mainholder h2 {
 line-height: 1
}

#wrapper {
 margin: 0 auto;
 overflow: hidden;
 text-align: center
}

.wrapper {
 height: 100%;
 margin: 0 auto;
 max-width: 100%;
 position: relative;
 width: 990px
}

@media only screen and (max-width:990px) {
 .wrapper {
  width: 100%
 }
}

.wrapper-inside {
 margin: 0 auto;
 max-width: 100%;
 padding: 0;
 position: relative
}

@media only screen and (max-width:990px) {
 .wrapper-inside {
  max-width: 100%
 }
}

#mainholder {
 clear: both;
 margin: 0 auto;
 padding: 0;
 text-align: left;
 width: 100%
}

#mainholder td,
#mainholder tr {
 border: 1px solid #bfbfbf
}

#mainholder td {
 padding: 5px
}

#mainholder .tablenoborderpadded,
#mainholder .tablenoborderpadded td,
#mainholder .tablenoborderpadded tr {
 border: 0 !important
}

.Content1Column {
 margin: 0 auto;
 padding: 50px 30px;
 width: 1600px
}

.Content2Column {
 float: left;
 margin: 0;
 padding: 50px 5% 50px 10%;
 width: 65vw
}

.Content1Column,
.Content2Column {
 max-width: 100%;
 min-height: 350px;
 overflow: hidden
}

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

 .Content1Column,
 .Content2Column {
  box-shadow: none;
  box-sizing: border-box;
  display: block;
  float: none;
  margin: 0 auto;
  padding: 30px 2.5%;
  width: 100%
 }
}

.Content1Column img,
.Content2Column img {
 height: auto;
 max-width: 100%
}

.Content1Column a img,
.Content1Column img,
.Content1Column img a,
.Content1Column p a img,
.Content2Column a img,
.Content2Column img,
.Content2Column img a,
.Content2Column p a img {
 border: 0;
 -webkit-text-decoration: none;
 text-decoration: none;
 vertical-align: middle
}

.Content1Column h1,
.Content2Column h1 {
 color: #012e67;
 font-family: Lora, serif;
 font-size: max(25px, min(3vw, 80px));
 font-weight: 700;
 line-height: 1.2;
 margin: 0 0 20px
}

.Content1Column h2,
.Content2Column h2 {
 color: #cc0933;
 font-family: Lato, serif;
 font-size: calc(max(25px, min(3vw, 80px))*.75);
 font-weight: 600;
 line-height: 1.3;
 margin: 25px 0 20px
}

.Content1Column h3,
.Content1Column h4,
.Content2Column h3,
.Content2Column h4 {
 background: #012e67;
 color: #fff;
 font-family: Lato, serif;
 font-size: max(15px, min(1vw, 20px));
 font-weight: 600;
 margin: 25px 0 10px;
 padding: 15px 10px;
 text-align: center
}

.Content1Column h4,
.Content2Column h4 {
 background-color: #cc0933;
 background-position: 10px;
 background-repeat: no-repeat;
 padding-left: 30px
}

.Content1Column h4.open,
.Content2Column h4.open {
 background-image: url(/i/design/expanding-faq/minus-white.png)
}

.Content1Column h4.closed,
.Content2Column h4.closed {
 background-image: url(/i/design/expanding-faq/plus-white.png)
}

.Content1Column h5,
.Content2Column h5 {
 font-size: 12px
}

.Content1Column h6,
.Content1Column small,
.Content2Column h6,
.Content2Column small {
 font-size: 10px
}

.Content1Column p,
.Content2Column p {
 margin: 12px 0
}

.Content1Column li,
.Content2Column li {
 background: url(/i/design/svg/ic-list-bullet.svg) no-repeat 0;
 background-size: 8px;
 margin: 2px 0;
 padding: 0 0 0 23px
}

.Content1Column hr,
.Content2Column hr {
 background-color: #f2f2f2;
 border-width: 0;
 color: #f2f2f2;
 height: 1px
}

.ColumnRight {
 border-radius: 0;
 display: inline-block;
 float: right;
 margin: 0 0 20px;
 min-height: 250px;
 padding: 0;
 position: relative;
 width: 33vw
}

.ColumnRight:before {
 background: #012e67;
 border-top: 2px solid #fff;
 content: "";
 display: block;
 height: 1000%;
 pointer-events: none;
 position: absolute;
 right: 0;
 top: 0;
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 33vw
}

@media only screen and (max-width:990px) {
 .ColumnRight:before {
  display: none
 }

 .ColumnRight {
  background: #012e67;
  box-sizing: border-box;
  display: block;
  float: none;
  margin: 0 auto 20px;
  padding: 0;
  width: 95%
 }
}

.ColumnRight ul {
 list-style: none;
 margin: 0;
 padding: 0
}

.ColumnRight ul li a {
 display: block
}

#activeRP {
 background-color: #ffffff1a
}

#SideHeadingPages {
 margin: auto;
 overflow: hidden;
 position: relative;
 z-index: 1
}

@media only screen and (max-width:990px) {
 #SideHeadingPages {
  margin: auto
 }
}

#SideHeadingPages h2 {
 color: #fff;
 display: block;
 font-family: Lora, serif;
 font-size: calc(max(15px, min(1vw, 20px))*1.5);
 font-weight: 700;
 line-height: 1;
 margin: 0 auto;
 padding: 50px 10% 20px;
 text-align: left;
 z-index: 1
}

@media only screen and (max-width:990px) {
 #SideHeadingPages h2 {
  padding: 20px 5%;
  text-align: center
 }
}

#SideHeadingPages ul.SideList {
 padding: 0 0 30px
}

#SideHeadingPages ul.SideList li {
 display: block;
 text-align: left;
 width: 100%
}

#SideHeadingPages ul.SideList li a {
 color: #fff;
 display: block;
 font-size: calc(max(15px, min(1vw, 20px))*.9);
 padding: 8px 10%;
 position: relative;
 transition: .3s
}

#SideHeadingPages ul.SideList li a:before {
 background: #fff;
 border-radius: 10px;
 bottom: 0;
 content: "";
 display: block;
 height: 2px;
 pointer-events: none;
 position: absolute;
 right: 0;
 transition: .4s;
 transition: .5s cubic-bezier(.09, .82, .165, 1);
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 0
}

#SideHeadingPages ul.SideList li a.child {
 background: url(/i/design/svg/ic-related-pages.svg) no-repeat left 10% center;
 background-size: 10px;
 font-size: calc(max(15px, min(1vw, 20px))*.9);
 padding-left: calc(10% + 20px)
}

@media only screen and (min-width:990px) {
 #SideHeadingPages ul.SideList li a:hover {
  background-color: #ffffff1a
 }

 #SideHeadingPages ul.SideList li a:hover:before {
  left: 0;
  right: auto;
  width: 100%
 }
}

.body_6739 #slider {
 height: calc(100vh - 200px);
 min-height: 550px;
 position: relative
}

@media only screen and (max-width:990px) {
 .body_6739 #slider {
  height: 700px;
  min-height: 700px
 }
}

@media only screen and (max-width:1500px) {
 body:not(.body_6739) #slider {
  height: 500px;
  min-height: 500px
 }
}

@media only screen and (max-width:990px) {
 body:not(.body_6739) #slider {
  height: 450px;
  min-height: 450px
 }
}

#slider {
 min-height: 500px;
 width: 100%;
 z-index: 1
}

#slider,
.backstretch {
 position: relative
}

.backstretch img {
 top: 0 !important
}

@media only screen and (max-width:990px) {
 .backstretch img {
  left: -25% !important;
  -o-object-fit: cover !important;
  object-fit: cover !important;
  width: 125% !important
 }
}

@media only screen and (min-width:990px) {
 .backstretch {
  animation: appear 2s ease 1 forwards;
  opacity: 0
 }

 @keyframes appear {
  0% {
   opacity: 0
  }

  to {
   opacity: 1
  }
 }
}

.strapline {
 background: #cc0933;
 bottom: 120px;
 color: #fff;
 display: inline-block;
 font-family: Lora, serif;
 font-size: calc(max(25px, min(3vw, 80px))/.8);
 left: 5%;
 line-height: 1;
 margin: 0 auto;
 max-width: 95%;
 padding: 10px 30px 20px;
 position: absolute;
 text-align: left;
 z-index: 99
}

@media only screen and (max-width:990px) {
 .strapline {
  left: 0;
  margin: auto;
  padding: 20px;
  right: 0;
  text-align: center
 }
}

@media only screen and (min-width:991px) {
 #mobileMenuToggle {
  display: none
 }

 nav#navholder {
  background: #fff;
  left: 0;
  margin: 0 auto;
  max-width: 100%;
  position: absolute;
  right: 0;
  top: 200px;
  width: 100%;
  z-index: 9998
 }

 nav#navholder .wrapper {
  border-top: 1px solid rgba(1, 46, 103, .2);
  padding: 15px 0;
  width: 90%
 }

 ul.nav {
  display: flex;
  justify-content: space-around;
  margin: 0 auto;
  max-width: 100%;
  width: 1100px
 }

 ul.nav>li:hover>a,
 ul.nav>li>a:hover {
  -webkit-text-decoration: none;
  text-decoration: none
 }

 ul.nav>li:hover>a:before,
 ul.nav>li>a:hover:before {
  left: 0;
  right: auto;
  width: 100%
 }

 ul.nav>li {
  background: none;
  margin: 0;
  padding: 0;
  position: relative;
  transition: background-color .4s, color .4s;
  white-space: nowrap
 }

 ul.nav>li>a {
  border-radius: inherit;
  color: #012e67;
  display: block;
  font-size: max(15px, min(1vw, 20px));
  position: relative;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: .4s;
  white-space: normal
 }

 ul.nav>li>a:before {
  background: #cc0933;
  bottom: -5px;
  content: "";
  display: block;
  height: 2px;
  left: auto;
  pointer-events: none;
  position: absolute;
  right: 0;
  transition: .5s cubic-bezier(.09, .82, .165, 1);
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  width: 0
 }

 ul.nav>li li {
  border-bottom: 1px solid hsla(0, 0%, 100%, .1);
  display: block;
  padding: 0;
  position: relative
 }

 ul.nav>li li a {
  background: none;
  box-shadow: none;
  color: #fff;
  display: block;
  font-size: 13px;
  max-width: 300px;
  min-width: 220px;
  padding: 8px 25px 8px 10px;
  text-align: left;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: .3s;
  white-space: normal
 }

 ul.nav>li li a:before {
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  pointer-events: none;
  position: absolute;
  right: 0;
  transition: .5s cubic-bezier(.09, .82, .165, 1);
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  width: 0
 }
}

@media only screen and (min-width:991px) and (min-width:990px) {
 ul.nav>li li a:hover {
  background: #011734
 }

 ul.nav>li li a:hover:before {
  left: 0;
  right: auto;
  width: 100%
 }
}

@media only screen and (min-width:991px) {
 ul.nav>li li a.parent:after {
  content: "▶";
  font-size: 10px;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  transition: .3s
 }

 ul.nav>li li a.parent:hover:after {
  right: 8px
 }

 ul.nav>li ul {
  background: #01234e;
  border-radius: 5px;
  box-shadow: 0 0 0 1px #ffffff80, 0 0 10px #0003;
  left: -999em;
  margin: 0;
  opacity: 0;
  padding: 10px;
  position: absolute;
  transition: all .3s ease-in-out;
  visibility: hidden
 }

 ul.nav>li ul li:hover ul {
  left: 100%;
  opacity: 1;
  pointer-events: all;
  top: 0;
  transition: all .3s ease-in-out;
  -webkit-user-select: all;
  -moz-user-select: all;
  user-select: all;
  visibility: visible
 }

 ul.nav>li:hover ul {
  left: auto;
  margin-left: -20px;
  opacity: 1;
  visibility: visible;
  z-index: 99
 }

 ul.nav>li:hover ul ul {
  background: #011e44;
  left: 100%;
  margin: 0 0 0 -5px;
  opacity: 0;
  pointer-events: none;
  top: 0;
  transition: all .3s ease-in-out;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  visibility: hidden
 }

 ul.nav>li:hover ul ul li {
  background: #011e44
 }

 ul.nav li ul.multi-column-nav {
  -moz-column-count: 2;
  column-count: 2;
  max-height: 600px
 }

 ul.nav li ul.multi-column-nav .parent+ul {
  overflow: auto
 }

 #navholder.fixed {
  animation: move-down 1s ease forwards;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  background: #fff url(/i/design/school-logo.png) no-repeat left 20px center;
  background-size: 50px;
  box-shadow: 10px 10px 10px #0000001a;
  left: 0;
  margin: 0 auto;
  max-width: none;
  position: fixed;
  right: 0;
  width: 100%
 }

 #navholder.fixed .wrapper {
  margin: 0 auto;
  width: 990px
 }

 #navholder.fixed ul.nav {
  text-align: center
 }

 @keyframes move-down {
  0% {
   opacity: 0;
   top: -50px
  }

  to {
   opacity: 1;
   top: 0
  }
 }

 ul.nav li:last-of-type ul li ul,
 ul.nav li:last-of-type ul li:hover ul {
  transform: translate(calc(-100% - 210px));
  transition: .3s ease-in-out
 }

 ul.nav li:last-of-type li a.parent:after {
  transform: translateY(-50%) scaleX(-1)
 }

 ul.nav li:nth-last-of-type(2) ul li ul,
 ul.nav li:nth-last-of-type(2) ul li:hover ul {
  transform: translate(calc(-100% - 210px));
  transition: .3s ease-in-out
 }

 ul.nav li:nth-last-of-type(2) li a.parent:after {
  transform: translateY(-50%) scaleX(-1)
 }

 ul.nav li:nth-last-of-type(3) ul li ul,
 ul.nav li:nth-last-of-type(3) ul li:hover ul {
  transform: translate(calc(-100% - 210px));
  transition: .3s ease-in-out
 }

 ul.nav li:nth-last-of-type(3) li a.parent:after {
  transform: translateY(-50%) scaleX(-1)
 }
}

@media only screen and (max-width:990px) {
 #mobileMenuToggle {
  background: none;
  border: none;
  color: #fff;
  cursor: pointer;
  display: block;
  height: 50px;
  line-height: 50px;
  line-height: 1;
  margin: auto;
  min-width: 280px;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  width: 100%
 }

 #mobileMenuToggle span {
  display: inline-block;
  vertical-align: middle
 }

 #mobileMenuToggle span span {
  margin: 0 0 0 10px
 }

 nav#navholder {
  background: #01234e;
  box-shadow: inset 0 -1px #fff3;
  height: 50px;
  right: 0;
  top: 0;
  z-index: 99999999
 }

 nav#navholder,
 ul.nav {
  left: 0;
  position: fixed;
  width: 100%
 }

 ul.nav {
  background: #011e44fa;
  display: block;
  flex-direction: column;
  height: 0;
  min-width: 280px;
  overflow-y: auto;
  padding: 0;
  text-align: left;
  top: 50px;
  transition: .5s cubic-bezier(.785, .135, .15, .86)
 }

 ul.nav li {
  background: none;
  border-bottom: 1px solid hsla(0, 0%, 100%, .1);
  text-align: left;
  width: 100%
 }

 ul.nav li a {
  box-shadow: none !important;
  color: #fff;
  display: block;
  font-size: 15px;
  padding: 15px
 }

 ul.nav li a.parent {
  background: #011e44e6 url(/i/design/svg/ic-related-pages.svg) left 15px top 52% no-repeat;
  background-size: 10px;
  box-shadow: inset -60px 0 #ffffff0d !important;
  cursor: pointer;
  padding-left: 40px;
  padding-right: 65px;
  position: relative
 }

 ul.nav li a.parent:after {
  content: "+";
  font-size: 18px;
  font-weight: 400 !important;
  padding: 0 25px;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%)
 }

 ul.nav li.active-nav>a.parent:after {
  content: "-";
  font-size: 22px;
  right: 2px
 }

 ul.nav li ul {
  background: #011734;
  display: none;
  margin: auto;
  opacity: 1;
  position: static;
  visibility: visible
 }

 ul.nav li ul li a.parent {
  background: url(/i/design/svg/ic-related-pages.svg) left 25px top 50% no-repeat;
  background-size: 8px;
  padding-left: 45px
 }

 ul.nav li ul li a:not(.parent) {
  background: url(/i/design/svg/ic-related-pages.svg) left 35px top 50% no-repeat;
  background-size: 5px;
  padding-left: 55px
 }

 ul.nav.active-nav {
  display: block;
  height: 100%;
  padding: 0 0 50px
 }

 ul.nav::-webkit-scrollbar {
  width: 8px
 }

 ul.nav::-webkit-scrollbar-track {
  background: #013980
 }

 ul.nav::-webkit-scrollbar-thumb {
  background: #01234e;
  border-radius: 10px
 }

 ul.nav::-webkit-scrollbar-thumb:hover {
  background: #01459a
 }
}

.super-nav {
 align-items: center;
 background: #012e67;
 display: flex;
 height: 50px;
 padding: 0 5%
}

@media only screen and (max-width:990px) {
 .super-nav {
  display: none;
  margin: 50px auto 0
 }
}

.super-nav * {
 color: #fff
}

.super-nav ul:first-of-type,
.super-nav ul:first-of-type li {
 align-items: center;
 display: flex
}

.super-nav ul:first-of-type li:first-of-type {
 margin: 0 20px 0 0
}

.super-nav ul:first-of-type li img {
 margin: 0 10px 0 0
}

.super-nav ul:nth-of-type(2) {
 margin: 0 0 0 auto;
 text-align: right
}

.super-nav ul li a {
 color: #fff;
 display: inline-block;
 position: relative
}

@media only screen and (max-width:990px) {
 .super-nav ul li a {
  display: block
 }
}

.super-nav ul li a:before {
 background: #fff;
 border-radius: 10px;
 bottom: 0;
 content: "";
 display: block;
 height: 2px;
 pointer-events: none;
 position: absolute;
 right: 0;
 transition: .4s;
 transition: .5s cubic-bezier(.09, .82, .165, 1);
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 0
}

@media only screen and (min-width:990px) {
 .super-nav ul li a:hover:before {
  left: 0;
  right: auto;
  width: 100%
 }
}

header {
 background: #fff;
 height: 150px;
 padding: 10px 0;
 position: relative
}

@media only screen and (max-width:990px) {
 header {
  height: auto;
  padding: 70px 0 0
 }
}

header .wrapper {
 align-items: center;
 display: flex;
 padding: 0;
 position: relative;
 width: 90%;
 z-index: 60
}

@media only screen and (max-width:990px) {
 header .wrapper {
  display: block
 }
}

header h1 {
 background: none;
 margin: 0
}

header #logo-index {
 display: block;
 margin: 0;
 padding: 0
}

@media only screen and (max-width:990px) {
 header #logo-index {
  margin: 0 auto 10px
 }
}

header #logo-index a p {
 color: #012e67;
 display: inline-block;
 font-family: Lora, serif;
 font-size: max(20px, min(2vw, 40px));
 line-height: 1;
 margin: 0;
 text-align: left;
 vertical-align: middle
}

@media only screen and (max-width:990px) {
 header #logo-index a p {
  display: block;
  text-align: center
 }
}

header #logo-index a p span {
 display: block;
 font-size: calc(max(20px, min(2vw, 40px))*.75)
}

header #logo-index a img#logo {
 display: inline-block;
 margin: 0 10px 0 0;
 max-width: 10vw;
 vertical-align: middle
}

@media only screen and (max-width:990px) {
 header #logo-index a img#logo {
  display: block;
  margin: 0 auto 10px;
  max-width: 100px
 }
}

#social-dock {
 align-self: start;
 margin: 0 0 0 auto;
 padding: 30px 0 0
}

@media only screen and (max-width:990px) {
 #social-dock {
  bottom: auto;
  left: 0;
  margin: 0 auto;
  padding: 10px 0;
  position: relative;
  right: 0;
  top: auto;
  transform: none
 }
}

#social-dock li {
 background: none;
 display: inline-block;
 margin: 0;
 padding: 0;
 position: relative;
 transition: .4s;
 vertical-align: top
}

@media only screen and (max-width:990px) {
 #social-dock li {
  display: inline-block;
  margin: 5px;
  vertical-align: middle
 }
}

#social-dock li:not(:last-of-type) {
 margin: 0 15px 0 0
}

@media only screen and (max-width:990px) {
 #social-dock li:not(:last-of-type) {
  margin: 5px
 }
}

#social-dock li img {
 display: inline-block;
 margin: 0 auto
}

@media only screen and (max-width:990px) {
 #social-dock li img {
  vertical-align: middle
 }
}

#social-dock li a {
 display: block;
 height: 100%;
 width: 100%
}

#social-dock li .tooltip {
 background: #012e67;
 border-radius: 5px;
 bottom: -10px;
 color: #fff;
 font-size: 12px;
 font-weight: 700;
 left: 50%;
 margin: 0;
 opacity: 0;
 padding: 5px;
 pointer-events: none;
 position: absolute;
 text-align: center;
 transform: translate(-50%);
 transition: .25s cubic-bezier(.09, .82, .165, 1);
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 120px;
 z-index: -1
}

@media only screen and (max-width:990px) {
 #social-dock li .tooltip {
  display: none
 }
}

#social-dock li:hover .tooltip {
 bottom: -40px;
 opacity: 1
}

.g-tran,
.translate {
 font-size: 0;
 height: 30px;
 position: relative;
 top: 0;
 width: 30px
}

.g-tran img,
.translate img {
 pointer-events: none;
 position: relative;
 top: -30px;
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none
}

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

 .g-tran img,
 .translate img {
  transform: translateY(6px)
 }
}

.g-tran .translate,
.translate .translate {
 overflow: hidden;
 z-index: 99
}

.g-tran #google_translate_element,
.translate #google_translate_element {
 opacity: 0
}

.g-tran #google_translate_element .goog-te-combo,
.translate #google_translate_element .goog-te-combo {
 cursor: pointer;
 margin: 0;
 padding: 5px 0;
 width: 100%
}

a#FS {
 cursor: pointer;
 padding: 0;
 transition: all .3s ease
}

#search {
 background-color: #000000e6;
 height: 0;
 left: 0;
 opacity: 0;
 position: fixed;
 top: 0;
 transition: opacity .5s ease;
 visibility: hidden;
 width: 0;
 z-index: -1
}

#search input[type=search] {
 background: #000000e6;
 border: none;
 color: #fff;
 display: block;
 font-size: calc(max(25px, min(3vw, 80px))*.75);
 font-weight: 300;
 left: 0;
 margin: auto;
 outline: none;
 padding: 10px 30px;
 position: absolute;
 right: 0;
 text-align: left;
 top: 50%;
 width: 300px
}

@media only screen and (max-width:990px) {
 #search input[type=search] {
  background: #fff;
  border-radius: 40px;
  box-shadow: 0 0 0 3px #ccc;
  color: #111;
  left: 0;
  margin: -50px auto 0;
  max-width: 250px;
  outline: none;
  padding: 20px;
  position: absolute;
  right: 0;
  top: 50%;
  width: 70%
 }
}

#search label {
 font-size: 0
}

#search.open {
 height: 100%;
 opacity: 1;
 visibility: visible;
 width: 100%;
 z-index: 999999999
}

footer {
 clear: both;
 margin: 0 auto;
 padding: max(30px, min(3vw, 60px)) 0;
 position: relative;
 text-align: left;
 z-index: 99
}

@media only screen and (max-width:990px) {
 footer {
  border-top: 2px solid #eee;
  height: auto;
  margin: auto;
  padding: 0
 }
}

footer .wrapper {
 background: #fff;
 color: #012e67;
 display: inline-block;
 font-size: max(15px, min(1vw, 20px));
 margin: 0 0 0 10%;
 padding: 40px 100px;
 text-align: left;
 width: auto;
 z-index: 100
}

@media only screen and (max-width:990px) {
 footer .wrapper {
  margin: auto;
  padding: 30px 5%;
  text-align: center;
  width: 100%
 }
}

footer p.address strong {
 display: block;
 font-family: Lora, serif;
 font-size: calc(max(15px, min(1vw, 20px))*1.5);
 font-weight: 400
}

footer p.address a[href^="mailto:"] {
 box-shadow: inset 0 0 0 1px #cc0933;
 color: #012e67;
 display: inline-block;
 margin: 0 0 0 20px;
 padding: 15px;
 transition: .3s
}

@media only screen and (max-width:990px) {
 footer p.address a[href^="mailto:"] {
  display: block;
  margin: 10px auto 0
 }
}

footer p.address a[href^="mailto:"]:hover {
 background: #cc0933;
 color: #fff
}

.map {
 height: 100%;
 left: 0;
 overflow: hidden;
 position: absolute;
 top: 0;
 width: 100%
}

@media only screen and (max-width:990px) {
 .map {
  bottom: auto;
  height: 250px;
  left: 0;
  margin: 0 auto;
  position: relative;
  right: 0;
  top: auto;
  transform: none
 }
}

.map img {
 left: 75%;
 pointer-events: none;
 position: absolute;
 top: 47%;
 transform: translate(-50%, -50%);
 transition: .3s;
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none
}

@media only screen and (max-width:990px) {
 .map img {
  display: none
 }
}

.map:hover img {
 opacity: 0
}

@media only screen and (max-width:990px) {
 footer a {
  word-break: break-all
 }
}

#copyright,
#credit {
 color: #012e67;
 font-size: max(11px, min(.8vw, 13px));
 text-transform: uppercase
}

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

 #copyright,
 #credit {
  margin: 5px auto;
  text-align: center;
  text-transform: none
 }
}

#copyright *,
#credit * {
 margin: 0
}

#copyright a,
#credit a {
 color: #012e67;
 position: relative;
 transition: .3s
}

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

 #copyright a,
 #credit a {
  display: inline-block;
  margin: 0
 }
}

#copyright a:last-of-type,
#credit a:last-of-type {
 color: #012e67
}

#copyright a:last-of-type:before,
#credit a:last-of-type:before {
 background: #012e67;
 bottom: 0;
 content: "";
 display: block;
 height: 2px;
 pointer-events: none;
 position: absolute;
 right: 0;
 transition: .4s;
 transition: .5s cubic-bezier(.09, .82, .165, 1);
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 0
}

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

 #copyright a:last-of-type:hover,
 #credit a:last-of-type:hover {
  color: #012e67
 }

 #copyright a:last-of-type:hover:before,
 #credit a:last-of-type:hover:before {
  left: 0;
  right: auto;
  width: 100%
 }
}

#copyright a:before {
 background: #fff
}

#credit a:last-of-type:before {
 background: #9dcf32
}

@media only screen and (min-width:990px) {
 #credit a:last-of-type:hover {
  color: #9dcf32
 }
}

.top-btn {
 background: #01234e;
 border-radius: 5px 0 0 5px;
 bottom: 60px;
 color: #fff;
 display: block;
 font-size: max(15px, min(1vw, 20px));
 padding: 2px 15px 10px;
 position: fixed;
 right: -50px;
 text-align: center;
 transition: .3s cubic-bezier(.09, .82, .165, 1);
 z-index: 99999
}

@media only screen and (max-width:1250px) {
 .top-btn {
  display: none
 }
}

.top-btn:hover {
 transform: translateY(-5px)
}

.show-top-btn {
 right: 0
}

.body_6739 .backstretch {
 animation: show-bs 5s ease 3s 1 forwards;
 opacity: 0
}

@keyframes show-bs {
 0% {
  opacity: 0
 }

 to {
  opacity: 1
 }
}

#home-video {
 animation: show-bg-video 2s ease 1s 1 forwards;
 height: 140%;
 left: 50%;
 opacity: 0;
 position: absolute;
 top: 50%;
 transform: translate(-50%, -50%);
 width: 200%;
 z-index: -99
}

@media only screen and (max-height:850px) {
 #home-video {
  height: 200%;
  width: 300%
 }
}

@media only screen and (max-width:750px) {
 #home-video {
  width: 250%
 }
}

@media only screen and (max-width:500px) {
 #home-video {
  width: 350%
 }
}

@media only screen and (max-width:400px) {
 #home-video {
  width: 550%
 }
}

@keyframes show-bg-video {
 0% {
  opacity: 0
 }

 to {
  opacity: 1
 }
}

#slider {
 overflow: hidden
}

.video-sound {
 background: #012e6780;
 border: 1px solid hsla(0, 0%, 100%, .7);
 border-radius: 50%;
 bottom: 20px;
 color: #fff;
 cursor: pointer;
 height: 45px;
 padding: 10px;
 pointer-events: auto;
 position: absolute;
 right: 20px;
 transition: .25s ease;
 width: 45px;
 z-index: 9999
}

.video-sound svg {
 display: block;
 height: 100%;
 width: 100%;
 fill: currentColor
}

.video-sound .sound-on,
.video-sound.sound-enabled .sound-off {
 display: none
}

.video-sound.sound-enabled .sound-on {
 display: block
}

.video-sound:hover {
 background: #012e67e6
}

#externalSocialToggle {
 position: relative
}

#externalSocialModalOverlay {
 background: #00000080;
 display: none;
 height: 100%;
 left: 0;
 position: fixed;
 top: 0;
 width: 100%;
 z-index: 99999
}

#externalSocialModal {
 background: #012e67;
 border-radius: 5px;
 box-shadow: -2px 0 10px #0000004d;
 height: calc(100% - 20px);
 max-width: calc(100% - 20px);
 min-width: 250px;
 overflow-x: hidden;
 overflow-y: auto;
 position: fixed;
 right: -300px;
 top: 10px;
 transition: right .3s ease;
 width: 300px;
 z-index: 100000
}

@media only screen and (max-width:990px) {
 #externalSocialModal {
  border-radius: 0;
  height: calc(100% - 80px);
  top: 65px
 }
}

#externalSocialModal #externalSocialModalHeader {
 align-items: center;
 background: #01234e;
 color: #fff;
 display: flex;
 font-size: max(15px, min(1vw, 20px));
 justify-content: space-between;
 margin: 0;
 padding: 8px 30px
}

#externalSocialModal #externalSocialModalHeader span span {
 display: inline-block;
 margin: -2px 2px 0 0;
 vertical-align: middle
}

#externalSocialModal #externalSocialModalHeader span span img {
 margin: 0 10px 0 0;
 max-width: 20px
}

#externalSocialModal #externalSocialLinks {
 list-style: none;
 padding: 10px 20px 20px;
 text-align: left
}

#externalSocialModal #externalSocialLinks li a {
 color: #fff;
 display: block;
 font-size: max(14px, min(.9vw, 18px));
 line-height: 1.2;
 padding: 5px;
 position: relative
}

#externalSocialModal #externalSocialLinks li a img,
#externalSocialModal #externalSocialLinks li a span {
 display: inline-block;
 vertical-align: middle
}

#externalSocialModal #externalSocialLinks li a span {
 max-width: calc(100% - 65px)
}

@media only screen and (max-width:1500px) {
 #externalSocialModal #externalSocialLinks li a span {
  max-width: calc(100% - 55px)
 }
}

@media only screen and (max-width:990px) {
 #externalSocialModal #externalSocialLinks li a span {
  max-width: calc(100% - 55px)
 }
}

#externalSocialModal #externalSocialLinks li a img {
 height: max(30px, min(3vw, 50px));
 margin: 0 10px 0 0;
 transition: .3s;
 width: max(30px, min(3vw, 50px))
}

#externalSocialModal #externalSocialLinks li:hover a {
 box-shadow: inset -300px 0 #ffffff1a
}

#externalSocialModal #externalSocialLinks li:hover a img {
 transform: translate(5px)
}

#externalSocialModal::-webkit-scrollbar {
 width: 8px
}

#externalSocialModal::-webkit-scrollbar-track {
 background: #01459a
}

#externalSocialModal::-webkit-scrollbar-thumb {
 background: #012e67;
 border-radius: 10px
}

#externalSocialModal::-webkit-scrollbar-thumb:hover {
 background: #0250b3
}

#externalSocialModal.show {
 right: 10px
}

#externalSocialClose {
 cursor: pointer;
 font-size: 22px;
 padding: 2px 5px 5px;
 transition: .3s
}

#welcome-sec {
 background: #fff;
 padding: 0;
 position: relative
}

#welcome-sec h2 {
 background: #012e67;
 color: #fff;
 font-family: Lora, serif;
 font-size: max(25px, min(3vw, 80px));
 margin: 0;
 padding: 20px 0;
 text-align: center
}

#welcome-sec h2 span {
 display: inline-block;
 font-size: calc(max(25px, min(3vw, 80px))*.65);
 font-style: italic
}

@media only screen and (max-width:990px) {
 #welcome-sec h2 span {
  display: block
 }
}

#welcome-sec .wrapper {
 align-items: center;
 color: #012e67;
 display: flex;
 gap: max(30px, min(3vw, 50px));
 padding: max(20px, min(5vw, 60px)) 30% max(20px, min(5vw, 60px)) 10%;
 width: 100%
}

@media only screen and (max-width:1500px) {
 #welcome-sec .wrapper {
  padding: max(20px, min(5vw, 60px)) 20% max(20px, min(5vw, 60px)) 5%
 }
}

@media only screen and (max-width:990px) {
 #welcome-sec .wrapper {
  flex-direction: column;
  justify-content: center;
  padding: 30px 5%
 }
}

#welcome-sec .wrapper:before {
 background: url(/i/graphics/welcome-bg.jpg) no-repeat 100%;
 background-size: cover;
 filter: grayscale(1);
 opacity: .75;
 top: 50%;
 transform: translateY(-50%)
}

#welcome-sec .wrapper:after,
#welcome-sec .wrapper:before {
 content: "";
 display: block;
 height: 100%;
 pointer-events: none;
 position: absolute;
 right: 0;
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 40%
}

#welcome-sec .wrapper:after {
 background: linear-gradient(90deg, #fff 0, #fff0);
 top: 0
}

#welcome-sec .img-cont,
#welcome-sec .text-cont {
 position: relative;
 z-index: 2
}

#welcome-sec .text-cont {
 flex: 2;
 padding: 0 10% 0 0
}

@media only screen and (max-width:1500px) {
 #welcome-sec .text-cont {
  padding: 0
 }
}

#welcome-sec .text-cont p {
 font-size: max(15px, min(1vw, 20px));
 margin: 0 0 max(20px, min(3vw, 30px))
}

#welcome-sec .text-cont .read-more {
 box-shadow: inset 0 0 0 1px #cc0933;
 color: #012e67;
 display: inline-block;
 font-size: max(15px, min(1vw, 20px));
 padding: 20px 100px;
 text-align: center;
 text-transform: lowercase;
 transition: .4s
}

@media only screen and (max-width:1500px) {
 #welcome-sec .text-cont .read-more {
  padding: 15px 80px
 }
}

@media only screen and (max-width:990px) {
 #welcome-sec .text-cont .read-more {
  display: block;
  padding: 15px 0
 }
}

#welcome-sec .text-cont .read-more:hover {
 background: #012e67;
 color: #fff
}

.btns {
 display: flex;
 position: relative;
 text-align: center;
 z-index: 99
}

@media only screen and (max-width:990px) {
 .btns {
  flex-wrap: wrap
 }
}

.btns li {
 background: none;
 flex: 1;
 overflow: hidden;
 padding: 0;
 position: relative;
 transition: .4s
}

@media only screen and (max-width:990px) {
 .btns li {
  flex: 45%
 }
}

@media only screen and (max-width:500px) {
 .btns li {
  flex: 100%
 }
}

.btns li a {
 background: #000;
 border-radius: inherit;
 display: block;
 height: 100%;
 overflow: hidden;
 position: relative;
 transition: .4s;
 width: 100%
}

.btns li a:before {
 background: linear-gradient(0deg, #000, transparent);
 bottom: 0;
 height: 50%;
 left: 0;
 opacity: .8;
 transition: .4s;
 width: 100%;
 z-index: 101
}

.btns li a:after,
.btns li a:before {
 content: "";
 display: block;
 pointer-events: none;
 position: absolute;
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none
}

.btns li a:after {
 box-shadow: inset 0 0 0 1px #fff;
 color: #fff;
 content: "Learn More";
 font-family: Lora, serif;
 height: 50px;
 left: 50%;
 line-height: 50px;
 opacity: 0;
 top: 85%;
 transform: translate(-50%, -50%);
 transition: opacity .3s, background-color 1s;
 width: 200px;
 z-index: 106
}

.btns li img {
 display: block;
 min-height: 100%;
 min-width: 100%;
 -o-object-fit: cover;
 object-fit: cover;
 opacity: .5;
 transition: .4s
}

@media only screen and (max-width:990px) {
 .btns li img {
  margin: 0;
  transform: scale(1.1)
 }
}

.btns li strong {
 color: #fff;
 font-family: Lora, serif;
 font-size: calc(max(15px, min(1vw, 20px))*2);
 left: 50%;
 padding: 10px 0;
 position: absolute;
 top: 25%;
 transform: translate(-50%, -50%);
 transition: .3s;
 width: 100%;
 z-index: 102
}

.btns li strong:before {
 background: #cc0933;
 content: "";
 display: block;
 height: 100%;
 right: 0;
 top: 0;
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 0;
 z-index: -1
}

.btns li span,
.btns li strong:before {
 pointer-events: none;
 position: absolute;
 transition: .3s
}

.btns li span {
 color: #fff;
 font-family: Lora, serif;
 font-size: calc(max(15px, min(1vw, 20px))*1.5);
 font-weight: 300;
 left: 50%;
 line-height: 1.2;
 opacity: 0;
 top: 70%;
 transform: translate(-50%, -50%);
 width: 80%;
 z-index: 105
}

.btns li:hover {
 outline: 2px solid #fff;
 outline-offset: -20px
}

.btns li:hover a:before {
 height: 100%
}

.btns li:hover a {
 background: #012e67
}

.btns li:hover a:after {
 background: #fff3;
 opacity: 1
}

.btns li:hover strong {
 top: 15%
}

.btns li:hover strong:before {
 left: 0;
 width: 100%
}

.btns li:hover span {
 opacity: 1;
 top: 50%
}

.btns li:hover img {
 opacity: .25
}

@media only screen and (min-width:990px) {
 .btns:hover li:not(:hover) {
  filter: brightness(50%)
 }
}

#diary-sec {
 background: #fff;
 padding: max(40px, min(7vw, 100px)) 0;
 position: relative
}

#diary-sec .wrapper {
 padding: 0 10%;
 text-align: center;
 width: 100%
}

@media only screen and (max-width:990px) {
 #diary-sec .wrapper {
  padding: 0 5%
 }
}

#diary-sec h2 {
 color: #012e67;
 font-family: Lora, serif;
 font-size: max(25px, min(3vw, 80px));
 margin: 0 0 max(25px, min(3vw, 45px));
 text-align: left
}

@media only screen and (max-width:990px) {
 #diary-sec h2 {
  text-align: center
 }
}

#diary-sec h2 span {
 color: #cc0933;
 display: inline-block
}

#diary-sec .btn-wrap {
 position: absolute;
 right: 12.5%;
 top: 0
}

@media only screen and (max-width:990px) {
 #diary-sec .btn-wrap {
  bottom: auto;
  left: 0;
  margin: 0 auto;
  position: relative;
  right: 0;
  top: auto;
  transform: none
 }
}

#diary-sec .btn-wrap .more {
 box-shadow: inset 0 0 0 1px #cc0933;
 color: #012e67;
 display: inline-block;
 font-size: max(15px, min(1vw, 20px));
 padding: 20px 100px;
 text-align: center;
 text-transform: lowercase;
 transition: .4s
}

@media only screen and (max-width:1500px) {
 #diary-sec .btn-wrap .more {
  padding: 15px 80px
 }
}

@media only screen and (max-width:990px) {
 #diary-sec .btn-wrap .more {
  display: block;
  padding: 15px 0
 }
}

#diary-sec .btn-wrap .more:hover {
 background: #012e67;
 color: #fff
}

#diary-sec #SideHeadingDiary ul.SideList {
 display: flex;
 gap: 30px;
 padding: 50px 0 0;
 position: relative;
 text-align: center
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList {
  padding: 20px 0 40px
 }
}

#diary-sec #SideHeadingDiary ul.SideList:before {
 background: #012e67;
 content: "";
 display: block;
 height: 2px;
 left: 50%;
 pointer-events: none;
 position: absolute;
 top: 50%;
 transform: translate(-50%, -50%);
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 100vw
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList:before {
  display: none
 }

 #diary-sec #SideHeadingDiary ul.SideList {
  flex-wrap: wrap;
  gap: 30px;
  justify-content: center
 }
}

@media only screen and (max-width:600px) {
 #diary-sec #SideHeadingDiary ul.SideList {
  flex-direction: column
 }
}

#diary-sec #SideHeadingDiary ul.SideList li {
 background: none;
 flex: 1;
 font-family: Lora, serif;
 padding: 0;
 position: relative;
 transition: .4s;
 width: max(100px, min(16vw, 280px))
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList li {
  flex: 40%
 }
}

@media only screen and (max-width:600px) {
 #diary-sec #SideHeadingDiary ul.SideList li {
  flex: 1;
  margin: auto;
  width: 220px
 }
}

#diary-sec #SideHeadingDiary ul.SideList li a {
 color: #012e67
}

#diary-sec #SideHeadingDiary ul.SideList li .inner {
 background: #012e67;
 border-radius: 50%;
 height: max(150px, min(20vw, 320px));
 margin: 0 auto 20px;
 position: relative;
 transition: .3s;
 width: max(150px, min(20vw, 320px))
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList li .inner {
  height: 220px;
  width: 220px
 }
}

#diary-sec #SideHeadingDiary ul.SideList li .inner p.date {
 color: #fff;
 font-size: calc(max(25px, min(3vw, 80px))*1.2);
 left: 50%;
 line-height: 1;
 position: absolute;
 top: 50%;
 transform: translate(-50%, -50%)
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList li .inner p.date {
  font-size: calc(max(25px, min(3vw, 80px))*1.2)
 }
}

#diary-sec #SideHeadingDiary ul.SideList li .inner p.date span {
 display: block;
 position: relative;
 transition: .3s
}

#diary-sec #SideHeadingDiary ul.SideList li .inner p.date span:before {
 background: #fff;
 content: "";
 display: block;
 height: 100%;
 pointer-events: none;
 position: absolute;
 right: 0;
 top: 0;
 transition: .3s;
 -webkit-user-select: none;
 -moz-user-select: none;
 user-select: none;
 width: 0;
 z-index: -1
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList li .inner p.date span {
  font-size: calc(max(25px, min(3vw, 80px))*1.2)
 }
}

#diary-sec #SideHeadingDiary ul.SideList li p.title {
 font-family: Lato, serif;
 font-size: 18px;
 padding: 0 5%
}

@media only screen and (max-width:1500px) {
 #diary-sec #SideHeadingDiary ul.SideList li p.title {
  font-size: 16px
 }
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList li p.title {
  font-size: 15px
 }
}

#diary-sec #SideHeadingDiary ul.SideList li p.title span {
 display: -webkit-box;
 overflow: hidden;
 -webkit-line-clamp: 2;
 -webkit-box-orient: vertical;
 height: 58px
}

@media only screen and (max-width:1500px) {
 #diary-sec #SideHeadingDiary ul.SideList li p.title span {
  height: 52px
 }
}

@media only screen and (max-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList li p.title span {
  height: 26px
 }
}

#diary-sec #SideHeadingDiary ul.SideList li:hover .inner {
 background: #cc0933;
 border-radius: 20px
}

#diary-sec #SideHeadingDiary ul.SideList li:hover .inner p.date span {
 color: #cc0933
}

#diary-sec #SideHeadingDiary ul.SideList li:hover .inner p.date span:before {
 left: 0;
 width: 100%
}

@media only screen and (min-width:990px) {
 #diary-sec #SideHeadingDiary ul.SideList:hover li:not(:hover) {
  opacity: .3;
  transform: scale(.9)
 }
}

#news-sec {
 background: #fff;
 padding: calc(max(40px, min(7vw, 100px))/2) 0 max(40px, min(7vw, 100px));
 position: relative
}

#news-sec .wrapper {
 padding: 0 10%;
 text-align: center;
 width: 100%
}

@media only screen and (max-width:990px) {
 #news-sec .wrapper {
  padding: 0 5%
 }
}

#news-sec h2 {
 color: #012e67;
 font-family: Lora, serif;
 font-size: max(25px, min(3vw, 80px));
 margin: 0 0 max(25px, min(3vw, 45px))
}

#news-sec h2 span {
 color: #cc0933;
 display: inline-block
}

#news-sec #SideHeadingNews ul.SideList {
 display: flex;
 gap: 30px;
 text-align: center
}

@media only screen and (max-width:750px) {
 #news-sec #SideHeadingNews ul.SideList {
  flex-direction: column;
  flex-wrap: wrap;
  gap: 20px
 }
}

#news-sec #SideHeadingNews ul.SideList li {
 background: none;
 background: #fff;
 box-shadow: inset 0 0 0 1px #012e6740;
 flex: 1;
 padding: 15px 15px 30px;
 position: relative;
 text-align: left;
 transition: .4s
}

@media only screen and (max-width:990px) {
 #news-sec #SideHeadingNews ul.SideList li {
  flex: 40%
 }
}

@media only screen and (max-width:750px) {
 #news-sec #SideHeadingNews ul.SideList li {
  flex: 1;
  margin: auto
 }
}

#news-sec #SideHeadingNews ul.SideList li img {
 height: 300px;
 margin: 0 auto 20px;
 -o-object-fit: cover;
 object-fit: cover;
 width: 100%
}

@media only screen and (max-width:1500px) {
 #news-sec #SideHeadingNews ul.SideList li img {
  height: 220px
 }
}

@media only screen and (max-width:990px) {
 #news-sec #SideHeadingNews ul.SideList li img {
  height: 200px
 }
}

#news-sec #SideHeadingNews ul.SideList li p.date {
 color: #cc0933;
 font-family: Lora, serif;
 font-size: 20px;
 padding: 0 5% 10px
}

@media only screen and (max-width:1500px) {
 #news-sec #SideHeadingNews ul.SideList li p.date {
  font-size: 18px;
  padding: 5px 5% 10px
 }
}

#news-sec #SideHeadingNews ul.SideList li p.date span {
 display: inline-block
}

#news-sec #SideHeadingNews ul.SideList li p.title {
 color: #012e67;
 font-size: 30px;
 line-height: 1.3;
 padding: 0 5%
}

@media only screen and (max-width:1500px) {
 #news-sec #SideHeadingNews ul.SideList li p.title {
  font-size: 20px
 }
}

#news-sec #SideHeadingNews ul.SideList li p.title span {
 display: -webkit-box;
 overflow: hidden;
 -webkit-line-clamp: 2;
 -webkit-box-orient: vertical;
 font-family: Lora, serif;
 height: 85px
}

@media only screen and (max-width:1500px) {
 #news-sec #SideHeadingNews ul.SideList li p.title span {
  height: 60px
 }
}

#news-sec #SideHeadingNews ul.SideList li p.desc {
 color: #012e67;
 font-size: 18px;
 padding: 0 5%
}

@media only screen and (max-width:1500px) {
 #news-sec #SideHeadingNews ul.SideList li p.desc {
  font-size: 16px
 }
}

#news-sec #SideHeadingNews ul.SideList li p.desc span {
 display: -webkit-box;
 overflow: hidden;
 -webkit-line-clamp: 2;
 -webkit-box-orient: vertical;
 height: 52px
}

@media only screen and (min-width:990px) {
 #news-sec #SideHeadingNews ul.SideList:hover li:not(:hover) {
  opacity: .3;
  transform: scale(.9)
 }
}

#mainholder:after,
.Content1Column:after,
.Content2Column:after,
.btns:after,
.clearfix:after,
.wrapper-inside:after,
.wrapper:after,
form:after {
 clear: both;
 content: "";
 display: table
}

.hidden {
 display: none !important;
 height: 0;
 margin: 0;
 padding: 0;
 visibility: hidden;
 width: 0
}

.branding,
button.branding {
 background-color: #012e67 !important;
 color: #fff !important
}

.turquoise-button {
 background: #1bbc9b;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.turquoise-button a {
 color: #fff
}

.deep-green-button {
 background: #0f6d5b;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.deep-green-button a {
 color: #fff
}

.emerald-button {
 background: #2dcc70;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.emerald-button a {
 color: #fff
}

.forest-green-button {
 background: #43af26;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.forest-green-button a {
 color: #fff
}

.sky-blue-button {
 background: #33cefb;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.sky-blue-button a {
 color: #fff
}

.standard-blue-button {
 background: #09f;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.standard-blue-button a {
 color: #fff
}

.purple-rain-button {
 background: #9a59b5;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.purple-rain-button a {
 color: #fff
}

.violet-button {
 background: #7044ad;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.violet-button a {
 color: #fff
}

.royal-blue-button {
 background: #175fa2;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.royal-blue-button a {
 color: #fff
}

.midnight-blue-button {
 background: #334960;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.midnight-blue-button a {
 color: #fff
}

.sunflower-button {
 background: #f2c50a;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.sunflower-button a {
 color: #fff
}

.carrot-button {
 background: #e67f22;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.carrot-button a {
 color: #fff
}

.red-brick-button {
 background: #e54e39;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.red-brick-button a {
 color: #fff
}

.bubble-gum-button {
 background: #e79096;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.bubble-gum-button a {
 color: #fff
}

.silver-button {
 background: #bec3c7;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.silver-button a {
 color: #fff
}

.concrete-button {
 background: #95a5a5;
 border-radius: 4px;
 box-shadow: inset 0 -5px #0003;
 color: #fff;
 padding: 15px 20px
}

.concrete-button a {
 color: #fff
}

.full-width-box {
 background: #e8e8e8;
 margin: 20px 0;
 width: calc(100% - 40px)
}

.full-width-box,
.outline-box {
 color: #333;
 display: block;
 padding: 20px
}

.outline-box {
 background: #f1f1f1;
 box-shadow: 0 0 0 2px #fff, 0 0 0 4px #dadada;
 margin: 20px 4px;
 width: calc(100% - 48px)
}

.round-border-box {
 background: #bdbdbd;
 border-radius: 5px
}

.drop-shadow-box,
.round-border-box {
 color: #333;
 display: block;
 margin: 20px 0;
 padding: 20px;
 width: calc(100% - 40px)
}

.drop-shadow-box {
 background: #fff;
 box-shadow: 0 0 10px #c3c5c9
}

.newsflash {
 background: #84c9d2;
 background-position: right 0;
 background-repeat: no-repeat;
 border: 5px solid #41a9b7;
 color: #84c9d2;
 padding: 10px 10px 5px
}

.newsflash h2 {
 border: 0;
 border-bottom: 1px solid #a0e2ea;
 color: #fff;
 font-size: 1.2em;
 font-weight: 700;
 margin: 0 0 8px;
 padding: 0 0 8px;
 text-transform: uppercase
}

.newsflash h2 img {
 float: left;
 margin: 0 10px 0 0
}

.newsflash p {
 color: #fff;
 margin: 5px 0
}

.newsflash a {
 -webkit-text-decoration: underline;
 text-decoration: underline
}

.infobox {
 background: #6ac259;
 background-position: right 0;
 background-repeat: no-repeat;
 border: 5px solid #4fad3d;
 color: #fff;
 padding: 10px 10px 5px
}

.infobox h2 {
 border: 0;
 border-bottom: 1px solid #b4e4aa;
 color: #fff;
 font-size: 1.2em;
 font-weight: 700;
 margin: 0 0 8px;
 padding: 0 0 8px;
 text-transform: uppercase
}

.infobox h2 img {
 float: left;
 margin: 0 10px 0 0
}

.infobox p {
 color: #fff;
 margin: 5px 0
}

.infobox a {
 -webkit-text-decoration: underline;
 text-decoration: underline
}

.alertbox {
 background: #fdbb75;
 background-position: right 0;
 background-repeat: no-repeat;
 border: 5px solid #ffa342;
 color: #fff;
 padding: 10px 10px 5px
}

.alertbox h2 {
 border: 0;
 border-bottom: 1px solid #ffdab2;
 color: #fff;
 font-size: 1.2em;
 font-weight: 700;
 margin: 0 0 8px;
 padding: 0 0 8px;
 text-transform: uppercase
}

.alertbox h2 img {
 float: left;
 margin: 0 10px 0 0
}

.alertbox p {
 color: #fff;
 margin: 5px 0
}

.alertbox a {
 -webkit-text-decoration: underline;
 text-decoration: underline
}

.warningbox {
 background: #fd8375;
 background-position: right 0;
 background-repeat: no-repeat;
 border: 5px solid #ff5f4d;
 color: #fff;
 padding: 10px 10px 5px
}

.warningbox h2 {
 border: 0;
 border-bottom: 1px solid #ffbeb6;
 color: #fff;
 font-size: 1.2em;
 font-weight: 700;
 margin: 0 0 8px;
 padding: 0 0 8px;
 text-transform: uppercase
}

.warningbox h2 img {
 float: left;
 margin: 0 10px 0 0
}

.warningbox p {
 color: #fff;
 margin: 5px 0
}

.warningbox a {
 -webkit-text-decoration: underline;
 text-decoration: underline
}

ul.round-border-list {
 display: block
}

ul.round-border-list li {
 background: #efefef;
 border-radius: 4px;
 display: block;
 font-size: 15px;
 margin: 0 0 5px;
 padding: 10px
}

.quick-links-list {
 background: #f7f7f7;
 border-radius: 10px;
 box-shadow: 0 0 0 1px #00000014, 8px 8px #8f8f8f26;
 display: block;
 margin: 0 8px 0 0;
 overflow: hidden;
 padding: 10px
}

.quick-links-list h2 {
 border-bottom: 1px solid #bdbdbd;
 color: #444;
 font-size: 25px;
 margin: 10px 0 15px;
 padding: 0 0 10px
}

.quick-links-list ul {
 border-radius: 8px
}

.quick-links-list ul,
.quick-links-list ul li {
 box-shadow: inset 0 0 0 1px #e4e4e4;
 display: block;
 overflow: hidden
}

.quick-links-list ul li {
 background: #fff;
 border-radius: 0;
 box-shadow: inset 0 -1px #e4e4e4;
 font-size: 15px;
 margin: 0;
 padding: 15px 10px 15px 20px
}

ul.striped-list {
 display: block
}

ul.striped-list li {
 background: #f3f3f3;
 display: block;
 font-size: 15px;
 margin: 0 0 5px;
 padding: 10px
}

ul.striped-list li:nth-of-type(2n) {
 background: #e2e2e2
}

ul#DiaryListing li .diary-title {
 color: #111
}

h2.ListingHead {
 background: #222
}

.Content1Column h4.news-subscribe,
.Content2Column h4.news-subscribe,
h3.news-subscribe {
 background-color: #111;
 background-image: url(/i/icons/rss-white.png);
 background-position: 10px;
 background-repeat: no-repeat;
 background-size: 15px;
 border-radius: 5px;
 clear: both;
 padding-left: 35px
}

.Content1Column h4.news-subscribe a,
.Content2Column h4.news-subscribe a,
h3.news-subscribe a {
 color: #fff
}

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

 .Content1Column h4.news-subscribe,
 .Content2Column h4.news-subscribe,
 h3.news-subscribe {
  font-size: 15px
 }
}

.Content1Column h4.adding-to-calendar,
.Content2Column h4.adding-to-calendar,
h3.adding-to-calendar {
 background: #111;
 border-radius: 5px;
 color: #fff
}

ul#DiaryListing {
 margin: 0;
 padding: 0
}

ul#DiaryListing li {
 background: none;
 background: #f7f7f7;
 border-bottom: 1px solid #ccc;
 display: block;
 margin: 0 0 10px;
 padding: 15px 20px;
 position: relative
}

ul#DiaryListing li:nth-of-type(2n) {
 background: #ececec
}

ul#DiaryListing li .mix-date {
 background: #012e67;
 color: #fff;
 display: inline-block;
 float: left;
 font-size: 11px;
 height: 60px;
 margin: 0 20px 0 0;
 position: relative;
 text-align: center;
 text-transform: uppercase;
 width: 130px
}

ul#DiaryListing li .mix-date p {
 float: left;
 height: 100%;
 margin: 0;
 width: 50%
}

ul#DiaryListing li .mix-date p:last-of-type {
 background: #0006
}

ul#DiaryListing li .mix-date span {
 display: block;
 font-size: 25px
}

ul#DiaryListing li .mix-date span.to {
 background: #012e67;
 border-radius: 50%;
 color: #fff;
 font-size: 9px;
 height: 20px;
 left: 50%;
 line-height: 20px;
 margin-left: -10px;
 margin-top: -15px;
 position: absolute;
 text-align: center;
 top: 50%;
 width: 20px
}

ul#DiaryListing li .diary-date {
 background: #012e67;
 color: #fff;
 display: inline-block;
 float: left;
 font-size: 11px;
 height: 60px;
 margin: 0 20px 0 0;
 position: relative;
 text-align: center;
 text-transform: uppercase;
 width: 130px
}

ul#DiaryListing li .diary-date span {
 display: block;
 font-size: 25px
}

ul#DiaryListing li .hour {
 background: url(/i/icons/ic-hour.png) no-repeat 0 2px;
 background-size: contain;
 background-size: 13px;
 display: inline-block;
 font-size: 12px;
 left: 170px;
 padding: 0 0 0 18px;
 position: absolute;
 top: 10px
}

ul#DiaryListing li .diary-title {
 display: table;
 font-weight: 700;
 height: 60px;
 padding: 0;
 vertical-align: top;
 width: 70%
}

ul#DiaryListing li .diary-title a,
ul#DiaryListing li .diary-title span {
 display: table-cell;
 vertical-align: middle
}

ul#DiaryListing li .add-share {
 display: inline-block;
 margin-top: -23px;
 position: absolute;
 right: 10px;
 text-align: center;
 top: 50%;
 width: 30px
}

ul#DiaryListing li .add-share a {
 display: inline-block
}

ul#DiaryListing li .add-share a img {
 margin: 0
}

ul.auto-list li {
 background-color: #f7f7f7;
 background-position: 0;
 background-repeat: no-repeat;
 background-size: 30px;
 border: 1px solid #dedede;
 display: block;
 margin: 0 0 5px;
 padding: 10px 10px 10px 40px
}

ul.list-view-list li {
 display: block;
 margin: 0 0 20px;
 padding: 10px 0 10px 55px
}

ul.grid-view-list li {
 background-position: 0 0;
 display: inline-block;
 height: 90px;
 margin: 0 25px 25px 0;
 padding: 30px;
 vertical-align: top;
 width: calc(33.33333% - 90px)
}

img.ListingIcon {
 float: left;
 margin: 0 10px 0 0
}

ul#DiaryListing li .add-share img {
 background: none;
 border-radius: 0;
 box-shadow: none;
 padding: 0
}

.SScatHolder {
 background-image: url(/admin/i/GalleryGroupPlaceholder.jpg);
 display: block;
 height: 304px
}

.SSHolder,
.SScatHolder {
 background-position: 0 0;
 background-repeat: no-repeat;
 color: #fff;
 width: 500px
}

.SSHolder {
 background-image: url(/admin/i/GalleryPlaceholder.jpg);
 height: 375px
}

.SSWrapper {
 background-color: #fff;
 border: 1px solid #666;
 height: 375px;
 margin: 5px 0 10px;
 padding: 0;
 vertical-align: middle;
 width: 500px
}

#ss_gallery_holder {
 background: #fff;
 border: 1px solid #dcdcdc !important;
 margin-bottom: 40px !important
}

#ss_gallery_holder .Content1Column h4,
#ss_gallery_holder .Content2Column h4,
#ss_gallery_holder h3,
.Content1Column #ss_gallery_holder h4,
.Content2Column #ss_gallery_holder h4 {
 font-size: 23px !important;
 margin: 0 0 20px !important;
 padding: 10px 20px 0
}

#SSlistblock {
 margin: 0;
 padding: 0
}

#SSlistblock .singlegallery {
 float: left;
 margin: 0 0 30px;
 max-height: 330px;
 overflow: hidden;
 position: relative;
 width: 48%
}

#SSlistblock .singlegallery:nth-of-type(2n) {
 float: right
}

#SSlistblock .singlegallery a.thumblink {
 background: #111;
 color: #fff;
 display: inline-block;
 text-transform: uppercase;
 width: 100%
}

#SSlistblock .singlegallery a.thumblink:hover .thumb-wrap {
 opacity: .3;
 transition: all .3s ease-in-out
}

#SSlistblock .singlegallery a.thumblink .thumb-wrap {
 background-position: 50%;
 background-size: cover;
 min-height: 340px;
 opacity: .5;
 transition: all .3s ease-in-out
}

#SSlistblock .singlegallery a.thumblink .thumb-wrap img.thumb {
 height: auto;
 width: 100%
}

#SSlistblock .singlegallery a.thumblink .summary {
 display: block;
 left: 0;
 margin-top: -20px;
 position: absolute;
 text-align: center;
 top: 50%;
 width: 100%
}

#SSlistblock .singlegallery a.thumblink .summary .title {
 font-size: 18px;
 font-weight: 700;
 margin: 5px 0
}

#SSlistblock .singlegallery a.thumblink .summary .count,
#SSlistblock .singlegallery a.thumblink .summary .description {
 display: block;
 font-size: 12px;
 margin: 0 0 5px
}

ul#NewsListing {
 padding: 0
}

ul#NewsListing li .text-box {
 display: inline-block;
 max-width: 100%;
 vertical-align: top
}

ul#NewsListing li .text-box span.title {
 display: block;
 font-size: 30px;
 font-weight: 700;
 line-height: 1.3;
 margin: 20px auto 30px;
 -webkit-text-decoration: none;
 text-decoration: none;
 text-transform: capitalize
}

@media only screen and (max-width:1450px) {
 ul#NewsListing li .text-box span.title {
  font-size: 25px
 }
}

ul#NewsListing li .text-box span.page-overview {
 display: block;
 display: -webkit-box;
 font-size: 17px;
 overflow: hidden;
 -webkit-line-clamp: 5;
 -webkit-box-orient: vertical;
 height: 130px
}

ul#NewsListing li .text-box span.date {
 display: block;
 font-size: 14px;
 font-weight: 700;
 letter-spacing: .1em;
 margin: 0 0 10px;
 padding: 0;
 position: relative;
 text-transform: uppercase
}

ul#NewsListing li {
 background: none;
 border-bottom: 1px solid #d2d2d2;
 box-shadow: inset 5px 0 #d2d2d2;
 box-sizing: border-box;
 float: left;
 height: 400px;
 margin: 0 10px 20px;
 overflow: hidden;
 transition: .4s;
 width: calc(50% - 20px)
}

ul#NewsListing li:hover {
 box-shadow: inset 10px 0 #f9f9f9, inset 0 -800px #0000001a;
 transform: translateY(-5px);
 transition: .4s
}

.clickable {
 box-sizing: border-box;
 display: block;
 height: 100%;
 left: 0;
 padding: 30px 40px;
 position: absolute;
 top: 0;
 width: 100%
}

ul#NewsListing li.background-box {
 background-position: 50%;
 background-repeat: no-repeat;
 background-size: cover;
 position: relative;
 z-index: 0
}

ul#NewsListing li.background-box:before {
 background: #0009;
 content: "";
 height: 100%;
 left: 0;
 position: absolute;
 top: 0;
 width: 100%;
 z-index: -1
}

ul#NewsListing li.background-box:after {
 bottom: 20px;
 color: #fff;
 content: "Read More";
 font-size: 15px;
 font-weight: 700;
 opacity: 0;
 position: absolute;
 right: 0;
 transition: .4s;
 z-index: -1
}

ul#NewsListing li.background-box:hover:after {
 opacity: 1;
 right: 50px
}

ul#NewsListing li.background-box .text-box span.date {
 color: #b5f74c
}

ul#NewsListing li.background-box .text-box span.page-overview,
ul#NewsListing li.background-box .text-box span.title {
 color: #fff
}

ul#NewsListing li.background-box2 {
 background: url(/i/design/news-list-default.jpg) no-repeat 50%;
 background-size: cover;
 box-shadow: inset 5px 0 #000, 2px 0 2px #0000004d;
 position: relative;
 transition: .4s;
 z-index: 0
}

ul#NewsListing li.background-box2:hover {
 box-shadow: inset 10px 0 #000, 2px 0 2px #0000004d;
 transition: .4s
}

ul#NewsListing li.background-box2:before {
 background: #ffffffe6;
 content: "";
 height: 100%;
 left: 0;
 position: absolute;
 top: 0;
 width: 100%;
 z-index: -1
}

ul#NewsListing li.background-box2:after {
 bottom: 20px;
 color: #222;
 content: "Read More";
 font-size: 15px;
 font-weight: 700;
 opacity: 0;
 position: absolute;
 right: 0;
 transition: .4s;
 z-index: -1
}

ul#NewsListing li.background-box2:hover:after {
 opacity: 1;
 right: 50px
}

ul#NewsListing li.background-box2 .text-box span.date,
ul#NewsListing li.background-box2 .text-box span.title {
 color: #222
}

ul#NewsListing li.background-box2 .text-box span.page-overview {
 color: #444
}

@media only screen and (max-width:1200px) {
 ul#NewsListing li {
  clear: left;
  display: block;
  height: 320px;
  margin: 20px auto;
  width: 100%
 }

 ul#NewsListing li .text-box span.page-overview {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  height: 100px
 }
}

@media only screen and (max-width:600px) {
 ul#NewsListing li {
  border-radius: 0;
  height: 400px;
  margin: 20px auto;
  padding: 20px;
  width: 100%
 }

 ul#NewsListing li .text-box span.title {
  font-size: 18px
 }
}

.modal-home {
 background: #0006;
 height: 100%;
 left: 0;
 position: fixed;
 top: 0;
 width: 100%;
 z-index: 8000
}

.modal-home .message-modal {
 background: #ffffffe6;
 height: auto;
 left: calc(50% - 515px);
 margin: 0 30px;
 padding: 20px;
 position: absolute;
 top: calc(50% - 300px);
 width: 930px
}

.modal-home .message-modal .modal-content {
 background: #ffffffe6;
 background-position: -120px 50px;
 box-shadow: inset 0 0 0 1px #fff;
 display: inline-block;
 height: 100%;
 text-align: center;
 width: 100%
}

.modal-home .message-modal .modal-content .modal-text {
 display: block;
 padding: 45px
}

.modal-home .message-modal .modal-content .modal-text p {
 margin: 0
}

.modal-home .message-modal .modal-content a.close-modal {
 position: absolute;
 right: 31px;
 top: 31px
}

.hide-modal {
 display: none !important
}

.search-subject-box {
 background: #f1f1f1;
 border: 1px solid #ccc;
 border-radius: 4px;
 display: inline-block;
 font-size: 16px;
 padding: 5px 15px;
 text-transform: uppercase
}

.search-numbers {
 font-size: 12px;
 font-weight: 700;
 text-transform: uppercase
}

.search-numbers span {
 background: #f1f1f1;
 border: 1px solid #ccc;
 border-radius: 2px;
 margin: 0 3px;
 padding: 3px 8px
}

.boxmenuleft,
.boxmenuright {
 border: 2px solid #ccc;
 float: right;
 margin: 0 0 10px 20px;
 padding: 10px 10px 6px;
 width: 206px
}

.boxmenuleft {
 float: left;
 margin: 0 10px 0 20px
}

.boxmenuleft h2,
.boxmenuright h2 {
 border-bottom: 1px dotted #ccc;
 font-size: 1.2em;
 font-weight: 400;
 margin: 0 0 10px;
 padding: 0 0 5px
}

.boxmenuleft li,
.boxmenuright li {
 background-image: url(/i/icons/page.gif)
}

.boxout,
.boxoutblue,
.boxoutblueright,
.boxoutgreen,
.boxoutgreenright,
.boxoutpurple,
.boxoutpurpleright,
.boxoutright {
 background-color: #ff5924;
 color: #fff;
 display: inline;
 float: left;
 font-size: 1.2em;
 margin: 2px 20px 1px 0;
 padding: 10px;
 width: 230px
}

.boxoutpurple,
.boxoutpurpleright {
 background-color: #663d7f
}

.boxoutgreen,
.boxoutgreenright {
 background-color: #009b66
}

.boxoutblue,
.boxoutblueright {
 background-color: #00639c
}

.boxoutblueright,
.boxoutgreenright,
.boxoutpurpleright,
.boxoutright {
 float: right;
 margin: 2px 0 1px 20px
}

.boxout p,
.boxoutblue p,
.boxoutblueright p,
.boxoutgreen p,
.boxoutgreenright p,
.boxoutpurple p,
.boxoutpurpleright p,
.boxoutright p {
 color: #fff;
 margin: 0
}

div.boxout a,
div.boxoutblue a,
div.boxoutblueright a,
div.boxoutgreen a,
div.boxoutgreenright a,
div.boxoutpurple a,
div.boxoutpurpleright a,
div.boxoutright a {
 color: #fff
}

div.boxout a:hover,
div.boxoutblue a:hover,
div.boxoutblueright a:hover,
div.boxoutgreen a:hover,
div.boxoutgreenright a:hover,
div.boxoutpurple a:hover,
div.boxoutpurpleright a:hover,
div.boxoutright a:hover {
 background-color: none;
 background: transparent;
 -webkit-text-decoration: underline;
 text-decoration: underline
}

.button {
 background-color: #666;
 border: 1px solid #333;
 color: #fff;
 font-weight: 700;
 margin: 10px 0;
 padding: 1px 2px
}

.floatleft {
 float: left;
 margin: 0 10px 2px 0
}

.floatright {
 float: right;
 margin: 0 0 2px 10px
}

.greytext {
 color: #ccc
}

.imageFullWidthborder {
 border: 1px solid #666;
 display: block;
 margin: 0 0 10px
}

.imageleft,
.imageleftborder {
 float: left;
 margin: 0 17px 1px 0
}

.imageleftborder {
 border: 1px solid #ccc
}

.imageRight,
.imageright {
 float: right;
 margin: 0 0 1px 17px
}

.imageRightBorder,
.imagerightborder {
 border: 1px solid #ccc;
 float: right;
 margin: 0 0 1px 17px
}

div.imageleftborder {
 display: inline;
 float: left;
 margin: 0 17px 1px 0
}

div.imageRightBorder,
div.imagerightborder {
 display: inline;
 float: right;
 margin: 0 0 1px 17px
}

div.imageLeftBorder p,
div.imageRightBorder p,
div.imageleftborder p,
div.imagerightborder p {
 background-color: #ccc;
 font-size: .9em;
 margin: 0;
 padding: 1px 5px
}

img.imageRightBorder,
img.imagerightborder {
 border: 1px solid #ccc;
 float: right;
 margin: 0 0 1px 17px
}

.message,
p.message {
 background-color: #c03;
 border: 1px solid #903;
 color: #fff;
 padding: 10px
}

blockquote,
q {
 quotes: none
}

blockquote {
 background: #012e67;
 border: 1px solid #012e67;
 border-radius: 0;
 color: #fff;
 font-family: Lora, serif;
 font-size: max(15px, min(1vw, 20px));
 margin: 40px 0;
 padding: max(30px, min(5%, 100px)) 5%;
 position: relative
}

blockquote:after,
blockquote:before {
 color: #fff;
 content: "“";
 font-size: 60px;
 font-style: normal;
 line-height: 1;
 position: absolute
}

blockquote:before {
 left: 10px;
 top: 10px
}

blockquote:after {
 bottom: -20px;
 content: "”";
 right: 10px
}

@media only screen and (max-width:990px) {
 table {
  max-width: 100%
 }

 table.tableborder {
  overflow: scroll;
  position: relative;
  table-layout: fixed;
  white-space: nowrap;
  width: 100%
 }

 table.tableborder:before {
  background: linear-gradient(270deg, #fff0 0, #0003);
  content: "";
  height: 100%;
  position: absolute;
  right: -1px;
  top: 0;
  width: 30px
 }

 table.tableborder tbody {
  float: left;
  overflow-x: scroll;
  white-space: normal;
  width: 100%
 }

 #calendar .fc-header td {
  display: block;
  width: 100%
 }

 #calendar .fc-button-content {
  font-family: Arial
 }

 #calendar .fc-header-center,
 #calendar .fc-header-right {
  text-align: left
 }

 form div input[type=password],
 form div input[type=text],
 form div input[type=textarea],
 form div textarea,
 form span textarea {
  width: 200px
 }

 form div span.button {
  padding-left: 0
 }
}

.tableborder {
 border-bottom: 1px solid #222;
 border-left: 1px solid #222;
 margin: 20px 0
}

.tableborder td,
.tableborder th {
 border-right: 1px solid #222;
 border-top: 1px solid #222;
 font-weight: 400;
 margin: 0;
 padding: 10px;
 text-align: left;
 vertical-align: top
}

.tableborder td p {
 margin: 0
}

.tableborder td.tablecellhighlight,
.tableborder th.tablecellhighlight,
.tablecellhighlight {
 background-color: #012e67;
 color: #fff;
 font-weight: 700
}

.tablenoborderpadded {
 border: 0;
 margin: 10px 0 0 -10px
}

.tablenoborderPadded th,
.tablenoborderpadded td {
 border: 0;
 font-weight: 400;
 margin: 0;
 padding: 10px 0 10px 10px;
 text-align: left;
 vertical-align: top
}

.tablenoborderpadded td p {
 margin: 0
}

.tablenoborderpadded td.tablecellhighlight,
.tablenoborderpadded th.tablecellhighlight {
 background-color: #012e67;
 color: #fff;
 font-weight: 700
}

.tableborder thead {
 border-top: 1px solid #012e67
}

.tableborder thead,
.tableborder thead th {
 border-right: 1px solid #012e67
}

.search-table {
 border-bottom: none;
 border-left: none;
 margin: 20px 0
}

.search-table td,
.tableborder th {
 font-weight: 400;
 margin: 0;
 padding: 10px;
 text-align: left;
 vertical-align: top
}

.search-table tr:nth-of-type(odd) {
 background: #ececec
}

.search-table td p {
 margin: 0
}

.search-table td.tablecellhighlight,
.search-table th.tablecellhighlight,
.tablecellhighlight {
 background-color: #012e67;
 color: #fff;
 font-size: 15px;
 font-weight: 700;
 padding: 8px 10px
}

.tableborder4px td,
.tableborder4px th {
 border: 1px solid #012e67;
 font-weight: 400;
 margin: 0;
 padding: 2px;
 text-align: left;
 vertical-align: top
}

@media only screen and (max-width:960px) {
 #mainholder table {
  background: none
 }

 #mainholder table td {
  white-space: normal
 }
}

form {
 margin: 0;
 padding: 0
}

fieldset {
 border: 1px solid silver;
 margin: 0 2px;
 padding: .35em .625em .75em
}

legend {
 border: 0;
 margin-left: -7px;
 padding: 0;
 white-space: normal
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
 -webkit-appearance: button;
 cursor: pointer;
 overflow: visible
}

button[disabled],
html input[disabled] {
 cursor: default
}

input[type=checkbox],
input[type=radio] {
 box-sizing: border-box;
 height: 13px;
 padding: 0;
 width: 13px
}

input[type=search] {
 -webkit-appearance: textfield;
 box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
 -webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
 border: 0;
 padding: 0
}

textarea {
 overflow: auto;
 resize: vertical;
 vertical-align: top
}

label {
 margin: 10px 0;
 width: 90px
}

form .formfield,
label {
 display: inline;
 float: left
}

form .formfield {
 border: 1px solid #ccc;
 margin: 10px;
 padding: 2px;
 width: 200px
}

form div {
 clear: left;
 display: block;
 margin: 15px 0;
 vertical-align: top
}

form div input[type=password],
form div input[type=text],
form div input[type=textarea],
form div textarea,
form span textarea {
 background-color: #efefef;
 border: 1px solid #ccc;
 margin: 0;
 padding: 4px;
 width: 300px
}

form div input[type=password]:focus,
form div input[type=textarea]:focus,
form div textarea:focus,
form span textarea:focus,
input[type=text]:focus {
 border-color: #000
}

form div span.label,
form div span.label label,
span.multiple span,
span.spacer {
 float: left;
 margin: 0;
 width: 180px
}

form div span.multiple {
 float: left
}

form div span.button {
 background: transparent;
 border: 0;
 padding-left: 180px
}

form div span.button input {
 background: #666;
 border: 0;
 color: #fff;
 font-weight: 700;
 margin: 0;
 padding: 8px 10px
}

form div span.button input:hover {
 background: #888
}

form div.clear {
 clear: both;
 padding-top: 5px
}

.fc-content {
 background: none
}

#ie-warning {
 background: #b20000;
 color: #fff;
 display: block;
 overflow: hidden;
 padding: 0 0 10px;
 transition: .4s;
 width: 100%
}

#ie-warning p {
 margin: 5px auto
}

#ie-warning a {
 color: #fff;
 cursor: pointer;
 -webkit-text-decoration: underline;
 text-decoration: underline
}

#browserblast {
 background: #faf4af;
 border-bottom: 1px solid #d4c790;
 color: #6d6647;
 font-family: sans-serif;
 font-size: 12px;
 font-weight: 700;
 height: 40px;
 left: 0;
 line-height: 40px;
 position: fixed;
 text-align: center;
 top: 0;
 width: 100%
}

#browserblast a {
 color: green;
 -webkit-text-decoration: underline;
 text-decoration: underline
}

.unsupported-browser {
 margin-top: 41px
}

#switch-mobile {
 background: #efefef;
 border-bottom: 1px solid #ebebeb;
 border-top: 1px solid #ebebeb;
 clear: both;
 color: #777;
 display: block;
 font-family: sans-serif;
 font-size: 12px;
 margin: 0;
 padding: 20px 0;
 text-align: center;
 width: 100%
}

#switch-mobile a {
 -webkit-text-decoration: underline;
 text-decoration: underline
}

.seasonaleffect {
 z-index: 999 !important
}

ul.staff-list li {
 margin: 0 5px 12px !important
}

ul.staff-list li a .staff-name,
ul.staff-list li a .staff-position {
 color: #222 !important
}

#awards {
 background: #fff;
 overflow: hidden;
 padding: 20px 0;
 width: 100%
}

#awards .CMSawards {
 background: none !important;
 height: 100%;
 margin: 0 auto !important;
 overflow: hidden;
 width: 100%
}

#awards .CMSawards ul {
 margin: 0
}

#awards .CMSawards ul li {
 background: none;
 display: inline-block;
 margin: 0 10px;
 padding: 0 5px;
 vertical-align: middle
}

#awards .CMSawards ul li img {
 display: inline-block;
 max-height: 70px;
 -o-object-fit: contain;
 object-fit: contain;
 transform: none !important
}

@media only screen and (max-width:990px) {
 #awards {
  display: none
 }
}