html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

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

audio, canvas, progress, video {
  vertical-align: baseline;
  display: inline-block;
}

audio:not([controls]) {
  height: 0;
  display: none;
}

[hidden], template {
  display: none;
}

a {
  background-color: #0000;
}

a:active, a:hover {
  outline: 0;
}

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

b, strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  margin: .67em 0;
  font-size: 2em;
}

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

small {
  font-size: 80%;
}

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

sup {
  top: -.5em;
}

sub {
  bottom: -.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

hr {
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

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

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

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

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

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

input {
  line-height: normal;
}

input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: none;
}

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

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td, th {
  padding: 0;
}

@font-face {
  font-family: webflow-icons;
  src: url("data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBiUAAAC8AAAAYGNtYXDpP+a4AAABHAAAAFxnYXNwAAAAEAAAAXgAAAAIZ2x5ZmhS2XEAAAGAAAADHGhlYWQTFw3HAAAEnAAAADZoaGVhCXYFgQAABNQAAAAkaG10eCe4A1oAAAT4AAAAMGxvY2EDtALGAAAFKAAAABptYXhwABAAPgAABUQAAAAgbmFtZSoCsMsAAAVkAAABznBvc3QAAwAAAAAHNAAAACAAAwP4AZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADpAwPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAQAAAAAwACAACAAQAAQAg5gPpA//9//8AAAAAACDmAOkA//3//wAB/+MaBBcIAAMAAQAAAAAAAAAAAAAAAAABAAH//wAPAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEBIAAAAyADgAAFAAAJAQcJARcDIP5AQAGA/oBAAcABwED+gP6AQAABAOAAAALgA4AABQAAEwEXCQEH4AHAQP6AAYBAAcABwED+gP6AQAAAAwDAAOADQALAAA8AHwAvAAABISIGHQEUFjMhMjY9ATQmByEiBh0BFBYzITI2PQE0JgchIgYdARQWMyEyNj0BNCYDIP3ADRMTDQJADRMTDf3ADRMTDQJADRMTDf3ADRMTDQJADRMTAsATDSANExMNIA0TwBMNIA0TEw0gDRPAEw0gDRMTDSANEwAAAAABAJ0AtAOBApUABQAACQIHCQEDJP7r/upcAXEBcgKU/usBFVz+fAGEAAAAAAL//f+9BAMDwwAEAAkAABcBJwEXAwE3AQdpA5ps/GZsbAOabPxmbEMDmmz8ZmwDmvxmbAOabAAAAgAA/8AEAAPAAB0AOwAABSInLgEnJjU0Nz4BNzYzMTIXHgEXFhUUBw4BBwYjNTI3PgE3NjU0Jy4BJyYjMSIHDgEHBhUUFx4BFxYzAgBqXV6LKCgoKIteXWpqXV6LKCgoKIteXWpVSktvICEhIG9LSlVVSktvICEhIG9LSlVAKCiLXl1qal1eiygoKCiLXl1qal1eiygoZiEgb0tKVVVKS28gISEgb0tKVVVKS28gIQABAAABwAIAA8AAEgAAEzQ3PgE3NjMxFSIHDgEHBhUxIwAoKIteXWpVSktvICFmAcBqXV6LKChmISBvS0pVAAAAAgAA/8AFtgPAADIAOgAAARYXHgEXFhUUBw4BBwYHIxUhIicuAScmNTQ3PgE3NjMxOAExNDc+ATc2MzIXHgEXFhcVATMJATMVMzUEjD83NlAXFxYXTjU1PQL8kz01Nk8XFxcXTzY1PSIjd1BQWlJJSXInJw3+mdv+2/7c25MCUQYcHFg5OUA/ODlXHBwIAhcXTzY1PTw1Nk8XF1tQUHcjIhwcYUNDTgL+3QFt/pOTkwABAAAAAQAAmM7nP18PPPUACwQAAAAAANciZKUAAAAA1yJkpf/9/70FtgPDAAAACAACAAAAAAAAAAEAAAPA/8AAAAW3//3//QW2AAEAAAAAAAAAAAAAAAAAAAAMBAAAAAAAAAAAAAAAAgAAAAQAASAEAADgBAAAwAQAAJ0EAP/9BAAAAAQAAAAFtwAAAAAAAAAKABQAHgAyAEYAjACiAL4BFgE2AY4AAAABAAAADAA8AAMAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADQAAAAEAAAAAAAIABwCWAAEAAAAAAAMADQBIAAEAAAAAAAQADQCrAAEAAAAAAAUACwAnAAEAAAAAAAYADQBvAAEAAAAAAAoAGgDSAAMAAQQJAAEAGgANAAMAAQQJAAIADgCdAAMAAQQJAAMAGgBVAAMAAQQJAAQAGgC4AAMAAQQJAAUAFgAyAAMAAQQJAAYAGgB8AAMAAQQJAAoANADsd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzUmVndWxhcgBSAGUAZwB1AGwAYQByd2ViZmxvdy1pY29ucwB3AGUAYgBmAGwAbwB3AC0AaQBjAG8AbgBzRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==") format("truetype");
  font-weight: normal;
  font-style: normal;
}

[class^="w-icon-"], [class*=" w-icon-"] {
  speak: none;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  font-family: webflow-icons !important;
}

.w-icon-slider-right:before {
  content: "";
}

.w-icon-slider-left:before {
  content: "";
}

.w-icon-nav-menu:before {
  content: "";
}

.w-icon-arrow-down:before, .w-icon-dropdown-toggle:before {
  content: "";
}

.w-icon-file-upload-remove:before {
  content: "";
}

.w-icon-file-upload-icon:before {
  content: "";
}

* {
  box-sizing: border-box;
}

html {
  height: 100%;
}

body {
  color: #333;
  background-color: #fff;
  min-height: 100%;
  margin: 0;
  font-family: Arial, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

img {
  vertical-align: middle;
  max-width: 100%;
  display: inline-block;
}

html.w-mod-touch * {
  background-attachment: scroll !important;
}

.w-block {
  display: block;
}

.w-inline-block {
  max-width: 100%;
  display: inline-block;
}

.w-clearfix:before, .w-clearfix:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-clearfix:after {
  clear: both;
}

.w-hidden {
  display: none;
}

.w-button {
  color: #fff;
  line-height: inherit;
  cursor: pointer;
  background-color: #3898ec;
  border: 0;
  border-radius: 0;
  padding: 9px 15px;
  text-decoration: none;
  display: inline-block;
}

input.w-button {
  -webkit-appearance: button;
}

html[data-w-dynpage] [data-w-cloak] {
  color: #0000 !important;
}

.w-code-block {
  margin: unset;
}

pre.w-code-block code {
  all: inherit;
}

.w-optimization {
  display: contents;
}

.w-webflow-badge, .w-webflow-badge > img {
  box-sizing: unset;
  width: unset;
  height: unset;
  max-height: unset;
  max-width: unset;
  min-height: unset;
  min-width: unset;
  margin: unset;
  padding: unset;
  float: unset;
  clear: unset;
  border: unset;
  border-radius: unset;
  background: unset;
  background-image: unset;
  background-position: unset;
  background-size: unset;
  background-repeat: unset;
  background-origin: unset;
  background-clip: unset;
  background-attachment: unset;
  background-color: unset;
  box-shadow: unset;
  transform: unset;
  direction: unset;
  font-family: unset;
  font-weight: unset;
  color: unset;
  font-size: unset;
  line-height: unset;
  font-style: unset;
  font-variant: unset;
  text-align: unset;
  letter-spacing: unset;
  -webkit-text-decoration: unset;
  text-decoration: unset;
  text-indent: unset;
  text-transform: unset;
  list-style-type: unset;
  text-shadow: unset;
  vertical-align: unset;
  cursor: unset;
  white-space: unset;
  word-break: unset;
  word-spacing: unset;
  word-wrap: unset;
  transition: unset;
}

.w-webflow-badge {
  white-space: nowrap;
  cursor: pointer;
  box-shadow: 0 0 0 1px #0000001a, 0 1px 3px #0000001a;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 2147483647 !important;
  color: #aaadb0 !important;
  overflow: unset !important;
  background-color: #fff !important;
  border-radius: 3px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 6px !important;
  font-size: 12px !important;
  line-height: 14px !important;
  text-decoration: none !important;
  display: inline-block !important;
  position: fixed !important;
  inset: auto 12px 12px auto !important;
  transform: none !important;
}

.w-webflow-badge > img {
  position: unset;
  visibility: unset !important;
  opacity: 1 !important;
  vertical-align: middle !important;
  display: inline-block !important;
}

h1, h2, h3, h4, h5, h6 {
  margin-bottom: 10px;
  font-weight: bold;
}

h1 {
  margin-top: 20px;
  font-size: 38px;
  line-height: 44px;
}

h2 {
  margin-top: 20px;
  font-size: 32px;
  line-height: 36px;
}

h3 {
  margin-top: 20px;
  font-size: 24px;
  line-height: 30px;
}

h4 {
  margin-top: 10px;
  font-size: 18px;
  line-height: 24px;
}

h5 {
  margin-top: 10px;
  font-size: 14px;
  line-height: 20px;
}

h6 {
  margin-top: 10px;
  font-size: 12px;
  line-height: 18px;
}

p {
  margin-top: 0;
  margin-bottom: 10px;
}

blockquote {
  border-left: 5px solid #e2e2e2;
  margin: 0 0 10px;
  padding: 10px 20px;
  font-size: 18px;
  line-height: 22px;
}

figure {
  margin: 0 0 10px;
}

figcaption {
  text-align: center;
  margin-top: 5px;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 40px;
}

.w-list-unstyled {
  padding-left: 0;
  list-style: none;
}

.w-embed:before, .w-embed:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-embed:after {
  clear: both;
}

.w-video {
  width: 100%;
  padding: 0;
  position: relative;
}

.w-video iframe, .w-video object, .w-video embed {
  border: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

button, [type="button"], [type="reset"] {
  cursor: pointer;
  -webkit-appearance: button;
  border: 0;
}

.w-form {
  margin: 0 0 15px;
}

.w-form-done {
  text-align: center;
  background-color: #ddd;
  padding: 20px;
  display: none;
}

.w-form-fail {
  background-color: #ffdede;
  margin-top: 10px;
  padding: 10px;
  display: none;
}

label {
  margin-bottom: 5px;
  font-weight: bold;
  display: block;
}

.w-input, .w-select {
  color: #333;
  vertical-align: middle;
  background-color: #fff;
  border: 1px solid #ccc;
  width: 100%;
  height: 38px;
  margin-bottom: 10px;
  padding: 8px 12px;
  font-size: 14px;
  line-height: 1.42857;
  display: block;
}

.w-input::placeholder, .w-select::placeholder {
  color: #999;
}

.w-input:focus, .w-select:focus {
  border-color: #3898ec;
  outline: 0;
}

.w-input[disabled], .w-select[disabled], .w-input[readonly], .w-select[readonly], fieldset[disabled] .w-input, fieldset[disabled] .w-select {
  cursor: not-allowed;
}

.w-input[disabled]:not(.w-input-disabled), .w-select[disabled]:not(.w-input-disabled), .w-input[readonly], .w-select[readonly], fieldset[disabled]:not(.w-input-disabled) .w-input, fieldset[disabled]:not(.w-input-disabled) .w-select {
  background-color: #eee;
}

textarea.w-input, textarea.w-select {
  height: auto;
}

.w-select {
  background-color: #f3f3f3;
}

.w-select[multiple] {
  height: auto;
}

.w-form-label {
  cursor: pointer;
  margin-bottom: 0;
  font-weight: normal;
  display: inline-block;
}

.w-radio {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-radio:before, .w-radio:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-radio:after {
  clear: both;
}

.w-radio-input {
  float: left;
  margin: 3px 0 0 -20px;
  line-height: normal;
}

.w-file-upload {
  margin-bottom: 10px;
  display: block;
}

.w-file-upload-input {
  opacity: 0;
  z-index: -100;
  width: .1px;
  height: .1px;
  position: absolute;
  overflow: hidden;
}

.w-file-upload-default, .w-file-upload-uploading, .w-file-upload-success {
  color: #333;
  display: inline-block;
}

.w-file-upload-error {
  margin-top: 10px;
  display: block;
}

.w-file-upload-default.w-hidden, .w-file-upload-uploading.w-hidden, .w-file-upload-error.w-hidden, .w-file-upload-success.w-hidden {
  display: none;
}

.w-file-upload-uploading-btn {
  cursor: pointer;
  background-color: #fafafa;
  border: 1px solid #ccc;
  margin: 0;
  padding: 8px 12px;
  font-size: 14px;
  font-weight: normal;
  display: flex;
}

.w-file-upload-file {
  background-color: #fafafa;
  border: 1px solid #ccc;
  flex-grow: 1;
  justify-content: space-between;
  margin: 0;
  padding: 8px 9px 8px 11px;
  display: flex;
}

.w-file-upload-file-name {
  font-size: 14px;
  font-weight: normal;
  display: block;
}

.w-file-remove-link {
  cursor: pointer;
  width: auto;
  height: auto;
  margin-top: 3px;
  margin-left: 10px;
  padding: 3px;
  display: block;
}

.w-icon-file-upload-remove {
  margin: auto;
  font-size: 10px;
}

.w-file-upload-error-msg {
  color: #ea384c;
  padding: 2px 0;
  display: inline-block;
}

.w-file-upload-info {
  padding: 0 12px;
  line-height: 38px;
  display: inline-block;
}

.w-file-upload-label {
  cursor: pointer;
  background-color: #fafafa;
  border: 1px solid #ccc;
  margin: 0;
  padding: 8px 12px;
  font-size: 14px;
  font-weight: normal;
  display: inline-block;
}

.w-icon-file-upload-icon, .w-icon-file-upload-uploading {
  width: 20px;
  margin-right: 8px;
  display: inline-block;
}

.w-icon-file-upload-uploading {
  height: 20px;
}

.w-container {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
}

.w-container:before, .w-container:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-container:after {
  clear: both;
}

.w-container .w-row {
  margin-left: -10px;
  margin-right: -10px;
}

.w-row:before, .w-row:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-row:after {
  clear: both;
}

.w-row .w-row {
  margin-left: 0;
  margin-right: 0;
}

.w-col {
  float: left;
  width: 100%;
  min-height: 1px;
  padding-left: 10px;
  padding-right: 10px;
  position: relative;
}

.w-col .w-col {
  padding-left: 0;
  padding-right: 0;
}

.w-col-1 {
  width: 8.33333%;
}

.w-col-2 {
  width: 16.6667%;
}

.w-col-3 {
  width: 25%;
}

.w-col-4 {
  width: 33.3333%;
}

.w-col-5 {
  width: 41.6667%;
}

.w-col-6 {
  width: 50%;
}

.w-col-7 {
  width: 58.3333%;
}

.w-col-8 {
  width: 66.6667%;
}

.w-col-9 {
  width: 75%;
}

.w-col-10 {
  width: 83.3333%;
}

.w-col-11 {
  width: 91.6667%;
}

.w-col-12 {
  width: 100%;
}

.w-hidden-main {
  display: none !important;
}

@media screen and (max-width: 991px) {
  .w-container {
    max-width: 728px;
  }

  .w-hidden-main {
    display: inherit !important;
  }

  .w-hidden-medium {
    display: none !important;
  }

  .w-col-medium-1 {
    width: 8.33333%;
  }

  .w-col-medium-2 {
    width: 16.6667%;
  }

  .w-col-medium-3 {
    width: 25%;
  }

  .w-col-medium-4 {
    width: 33.3333%;
  }

  .w-col-medium-5 {
    width: 41.6667%;
  }

  .w-col-medium-6 {
    width: 50%;
  }

  .w-col-medium-7 {
    width: 58.3333%;
  }

  .w-col-medium-8 {
    width: 66.6667%;
  }

  .w-col-medium-9 {
    width: 75%;
  }

  .w-col-medium-10 {
    width: 83.3333%;
  }

  .w-col-medium-11 {
    width: 91.6667%;
  }

  .w-col-medium-12 {
    width: 100%;
  }

  .w-col-stack {
    width: 100%;
    left: auto;
    right: auto;
  }
}

@media screen and (max-width: 767px) {
  .w-hidden-main, .w-hidden-medium {
    display: inherit !important;
  }

  .w-hidden-small {
    display: none !important;
  }

  .w-row, .w-container .w-row {
    margin-left: 0;
    margin-right: 0;
  }

  .w-col {
    width: 100%;
    left: auto;
    right: auto;
  }

  .w-col-small-1 {
    width: 8.33333%;
  }

  .w-col-small-2 {
    width: 16.6667%;
  }

  .w-col-small-3 {
    width: 25%;
  }

  .w-col-small-4 {
    width: 33.3333%;
  }

  .w-col-small-5 {
    width: 41.6667%;
  }

  .w-col-small-6 {
    width: 50%;
  }

  .w-col-small-7 {
    width: 58.3333%;
  }

  .w-col-small-8 {
    width: 66.6667%;
  }

  .w-col-small-9 {
    width: 75%;
  }

  .w-col-small-10 {
    width: 83.3333%;
  }

  .w-col-small-11 {
    width: 91.6667%;
  }

  .w-col-small-12 {
    width: 100%;
  }
}

@media screen and (max-width: 479px) {
  .w-container {
    max-width: none;
  }

  .w-hidden-main, .w-hidden-medium, .w-hidden-small {
    display: inherit !important;
  }

  .w-hidden-tiny {
    display: none !important;
  }

  .w-col {
    width: 100%;
  }

  .w-col-tiny-1 {
    width: 8.33333%;
  }

  .w-col-tiny-2 {
    width: 16.6667%;
  }

  .w-col-tiny-3 {
    width: 25%;
  }

  .w-col-tiny-4 {
    width: 33.3333%;
  }

  .w-col-tiny-5 {
    width: 41.6667%;
  }

  .w-col-tiny-6 {
    width: 50%;
  }

  .w-col-tiny-7 {
    width: 58.3333%;
  }

  .w-col-tiny-8 {
    width: 66.6667%;
  }

  .w-col-tiny-9 {
    width: 75%;
  }

  .w-col-tiny-10 {
    width: 83.3333%;
  }

  .w-col-tiny-11 {
    width: 91.6667%;
  }

  .w-col-tiny-12 {
    width: 100%;
  }
}

.w-widget {
  position: relative;
}

.w-widget-map {
  width: 100%;
  height: 400px;
}

.w-widget-map label {
  width: auto;
  display: inline;
}

.w-widget-map img {
  max-width: inherit;
}

.w-widget-map .gm-style-iw {
  text-align: center;
}

.w-widget-map .gm-style-iw > button {
  display: none !important;
}

.w-widget-twitter {
  overflow: hidden;
}

.w-widget-twitter-count-shim {
  vertical-align: top;
  text-align: center;
  background: #fff;
  border: 1px solid #758696;
  border-radius: 3px;
  width: 28px;
  height: 20px;
  display: inline-block;
  position: relative;
}

.w-widget-twitter-count-shim * {
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
}

.w-widget-twitter-count-shim .w-widget-twitter-count-inner {
  text-align: center;
  color: #999;
  font-family: serif;
  font-size: 15px;
  line-height: 12px;
  position: relative;
}

.w-widget-twitter-count-shim .w-widget-twitter-count-clear {
  display: block;
  position: relative;
}

.w-widget-twitter-count-shim.w--large {
  width: 36px;
  height: 28px;
}

.w-widget-twitter-count-shim.w--large .w-widget-twitter-count-inner {
  font-size: 18px;
  line-height: 18px;
}

.w-widget-twitter-count-shim:not(.w--vertical) {
  margin-left: 5px;
  margin-right: 8px;
}

.w-widget-twitter-count-shim:not(.w--vertical).w--large {
  margin-left: 6px;
}

.w-widget-twitter-count-shim:not(.w--vertical):before, .w-widget-twitter-count-shim:not(.w--vertical):after {
  content: " ";
  pointer-events: none;
  border: solid #0000;
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  left: 0;
}

.w-widget-twitter-count-shim:not(.w--vertical):before {
  border-width: 4px;
  border-color: #75869600 #5d6c7b #75869600 #75869600;
  margin-top: -4px;
  margin-left: -9px;
}

.w-widget-twitter-count-shim:not(.w--vertical).w--large:before {
  border-width: 5px;
  margin-top: -5px;
  margin-left: -10px;
}

.w-widget-twitter-count-shim:not(.w--vertical):after {
  border-width: 4px;
  border-color: #fff0 #fff #fff0 #fff0;
  margin-top: -4px;
  margin-left: -8px;
}

.w-widget-twitter-count-shim:not(.w--vertical).w--large:after {
  border-width: 5px;
  margin-top: -5px;
  margin-left: -9px;
}

.w-widget-twitter-count-shim.w--vertical {
  width: 61px;
  height: 33px;
  margin-bottom: 8px;
}

.w-widget-twitter-count-shim.w--vertical:before, .w-widget-twitter-count-shim.w--vertical:after {
  content: " ";
  pointer-events: none;
  border: solid #0000;
  width: 0;
  height: 0;
  position: absolute;
  top: 100%;
  left: 50%;
}

.w-widget-twitter-count-shim.w--vertical:before {
  border-width: 5px;
  border-color: #5d6c7b #75869600 #75869600;
  margin-left: -5px;
}

.w-widget-twitter-count-shim.w--vertical:after {
  border-width: 4px;
  border-color: #fff #fff0 #fff0;
  margin-left: -4px;
}

.w-widget-twitter-count-shim.w--vertical .w-widget-twitter-count-inner {
  font-size: 18px;
  line-height: 22px;
}

.w-widget-twitter-count-shim.w--vertical.w--large {
  width: 76px;
}

.w-background-video {
  color: #fff;
  height: 500px;
  position: relative;
  overflow: hidden;
}

.w-background-video > video {
  object-fit: cover;
  z-index: -100;
  background-position: 50%;
  background-size: cover;
  width: 100%;
  height: 100%;
  margin: auto;
  position: absolute;
  inset: -100%;
}

.w-background-video > video::-webkit-media-controls-start-playback-button {
  -webkit-appearance: none;
  display: none !important;
}

.w-background-video--control {
  background-color: #0000;
  padding: 0;
  position: absolute;
  bottom: 1em;
  right: 1em;
}

.w-background-video--control > [hidden] {
  display: none !important;
}

.w-slider {
  text-align: center;
  clear: both;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  background: #ddd;
  height: 300px;
  position: relative;
}

.w-slider-mask {
  z-index: 1;
  white-space: nowrap;
  height: 100%;
  display: block;
  position: relative;
  left: 0;
  right: 0;
  overflow: hidden;
}

.w-slide {
  vertical-align: top;
  white-space: normal;
  text-align: left;
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
}

.w-slider-nav {
  z-index: 2;
  text-align: center;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  height: 40px;
  margin: auto;
  padding-top: 10px;
  position: absolute;
  inset: auto 0 0;
}

.w-slider-nav.w-round > div {
  border-radius: 100%;
}

.w-slider-nav.w-num > div {
  font-size: inherit;
  line-height: inherit;
  width: auto;
  height: auto;
  padding: .2em .5em;
}

.w-slider-nav.w-shadow > div {
  box-shadow: 0 0 3px #3336;
}

.w-slider-nav-invert {
  color: #fff;
}

.w-slider-nav-invert > div {
  background-color: #2226;
}

.w-slider-nav-invert > div.w-active {
  background-color: #222;
}

.w-slider-dot {
  cursor: pointer;
  background-color: #fff6;
  width: 1em;
  height: 1em;
  margin: 0 3px .5em;
  transition: background-color .1s, color .1s;
  display: inline-block;
  position: relative;
}

.w-slider-dot.w-active {
  background-color: #fff;
}

.w-slider-dot:focus {
  outline: none;
  box-shadow: 0 0 0 2px #fff;
}

.w-slider-dot:focus.w-active {
  box-shadow: none;
}

.w-slider-arrow-left, .w-slider-arrow-right {
  cursor: pointer;
  color: #fff;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  -webkit-user-select: none;
  user-select: none;
  width: 80px;
  margin: auto;
  font-size: 40px;
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.w-slider-arrow-left [class^="w-icon-"], .w-slider-arrow-right [class^="w-icon-"], .w-slider-arrow-left [class*=" w-icon-"], .w-slider-arrow-right [class*=" w-icon-"] {
  position: absolute;
}

.w-slider-arrow-left:focus, .w-slider-arrow-right:focus {
  outline: 0;
}

.w-slider-arrow-left {
  z-index: 3;
  right: auto;
}

.w-slider-arrow-right {
  z-index: 4;
  left: auto;
}

.w-icon-slider-left, .w-icon-slider-right {
  width: 1em;
  height: 1em;
  margin: auto;
  inset: 0;
}

.w-slider-aria-label {
  clip: rect(0 0 0 0);
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.w-slider-force-show {
  display: block !important;
}

.w-dropdown {
  text-align: left;
  z-index: 900;
  margin-left: auto;
  margin-right: auto;
  display: inline-block;
  position: relative;
}

.w-dropdown-btn, .w-dropdown-toggle, .w-dropdown-link {
  vertical-align: top;
  color: #222;
  text-align: left;
  white-space: nowrap;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  text-decoration: none;
  position: relative;
}

.w-dropdown-toggle {
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
  padding-right: 40px;
  display: inline-block;
}

.w-dropdown-toggle:focus {
  outline: 0;
}

.w-icon-dropdown-toggle {
  width: 1em;
  height: 1em;
  margin: auto 20px auto auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
}

.w-dropdown-list {
  background: #ddd;
  min-width: 100%;
  display: none;
  position: absolute;
}

.w-dropdown-list.w--open {
  display: block;
}

.w-dropdown-link {
  color: #222;
  padding: 10px 20px;
  display: block;
}

.w-dropdown-link.w--current {
  color: #0082f3;
}

.w-dropdown-link:focus {
  outline: 0;
}

@media screen and (max-width: 767px) {
  .w-nav-brand {
    padding-left: 10px;
  }
}

.w-lightbox-backdrop {
  cursor: auto;
  letter-spacing: normal;
  text-indent: 0;
  text-shadow: none;
  text-transform: none;
  visibility: visible;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  color: #fff;
  text-align: center;
  z-index: 2000;
  opacity: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -webkit-tap-highlight-color: transparent;
  background: #000000e6;
  outline: 0;
  font-family: Helvetica Neue, Helvetica, Ubuntu, Segoe UI, Verdana, sans-serif;
  font-size: 17px;
  font-style: normal;
  font-weight: 300;
  line-height: 1.2;
  list-style: disc;
  position: fixed;
  inset: 0;
  -webkit-transform: translate(0);
}

.w-lightbox-backdrop, .w-lightbox-container {
  -webkit-overflow-scrolling: touch;
  height: 100%;
  overflow: auto;
}

.w-lightbox-content {
  height: 100vh;
  position: relative;
  overflow: hidden;
}

.w-lightbox-view {
  opacity: 0;
  width: 100vw;
  height: 100vh;
  position: absolute;
}

.w-lightbox-view:before {
  content: "";
  height: 100vh;
}

.w-lightbox-group, .w-lightbox-group .w-lightbox-view, .w-lightbox-group .w-lightbox-view:before {
  height: 86vh;
}

.w-lightbox-frame, .w-lightbox-view:before {
  vertical-align: middle;
  display: inline-block;
}

.w-lightbox-figure {
  margin: 0;
  position: relative;
}

.w-lightbox-group .w-lightbox-figure {
  cursor: pointer;
}

.w-lightbox-img {
  width: auto;
  max-width: none;
  height: auto;
}

.w-lightbox-image {
  float: none;
  max-width: 100vw;
  max-height: 100vh;
  display: block;
}

.w-lightbox-group .w-lightbox-image {
  max-height: 86vh;
}

.w-lightbox-caption {
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #0006;
  padding: .5em 1em;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
}

.w-lightbox-embed {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.w-lightbox-control {
  cursor: pointer;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 24px;
  width: 4em;
  transition: all .3s;
  position: absolute;
  top: 0;
}

.w-lightbox-left {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0yMCAwIDI0IDQwIiB3aWR0aD0iMjQiIGhlaWdodD0iNDAiPjxnIHRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PHBhdGggZD0ibTAgMGg1djIzaDIzdjVoLTI4eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBkPSJtMSAxaDN2MjNoMjN2M2gtMjZ6IiBmaWxsPSIjZmZmIi8+PC9nPjwvc3ZnPg==");
  display: none;
  bottom: 0;
  left: 0;
}

.w-lightbox-right {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii00IDAgMjQgNDAiIHdpZHRoPSIyNCIgaGVpZ2h0PSI0MCI+PGcgdHJhbnNmb3JtPSJyb3RhdGUoNDUpIj48cGF0aCBkPSJtMC0waDI4djI4aC01di0yM2gtMjN6IiBvcGFjaXR5PSIuNCIvPjxwYXRoIGQ9Im0xIDFoMjZ2MjZoLTN2LTIzaC0yM3oiIGZpbGw9IiNmZmYiLz48L2c+PC9zdmc+");
  display: none;
  bottom: 0;
  right: 0;
}

.w-lightbox-close {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii00IDAgMTggMTciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxNyI+PGcgdHJhbnNmb3JtPSJyb3RhdGUoNDUpIj48cGF0aCBkPSJtMCAwaDd2LTdoNXY3aDd2NWgtN3Y3aC01di03aC03eiIgb3BhY2l0eT0iLjQiLz48cGF0aCBkPSJtMSAxaDd2LTdoM3Y3aDd2M2gtN3Y3aC0zdi03aC03eiIgZmlsbD0iI2ZmZiIvPjwvZz48L3N2Zz4=");
  background-size: 18px;
  height: 2.6em;
  right: 0;
}

.w-lightbox-strip {
  white-space: nowrap;
  padding: 0 1vh;
  line-height: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: auto hidden;
}

.w-lightbox-item {
  box-sizing: content-box;
  cursor: pointer;
  width: 10vh;
  padding: 2vh 1vh;
  display: inline-block;
  -webkit-transform: translate3d(0, 0, 0);
}

.w-lightbox-active {
  opacity: .3;
}

.w-lightbox-thumbnail {
  background: #222;
  height: 10vh;
  position: relative;
  overflow: hidden;
}

.w-lightbox-thumbnail-image {
  position: absolute;
  top: 0;
  left: 0;
}

.w-lightbox-thumbnail .w-lightbox-tall {
  width: 100%;
  top: 50%;
  transform: translate(0, -50%);
}

.w-lightbox-thumbnail .w-lightbox-wide {
  height: 100%;
  left: 50%;
  transform: translate(-50%);
}

.w-lightbox-spinner {
  box-sizing: border-box;
  border: 5px solid #0006;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  margin-left: -20px;
  animation: .8s linear infinite spin;
  position: absolute;
  top: 50%;
  left: 50%;
}

.w-lightbox-spinner:after {
  content: "";
  border: 3px solid #0000;
  border-bottom-color: #fff;
  border-radius: 50%;
  position: absolute;
  inset: -4px;
}

.w-lightbox-hide {
  display: none;
}

.w-lightbox-noscroll {
  overflow: hidden;
}

@media (min-width: 768px) {
  .w-lightbox-content {
    height: 96vh;
    margin-top: 2vh;
  }

  .w-lightbox-view, .w-lightbox-view:before {
    height: 96vh;
  }

  .w-lightbox-group, .w-lightbox-group .w-lightbox-view, .w-lightbox-group .w-lightbox-view:before {
    height: 84vh;
  }

  .w-lightbox-image {
    max-width: 96vw;
    max-height: 96vh;
  }

  .w-lightbox-group .w-lightbox-image {
    max-width: 82.3vw;
    max-height: 84vh;
  }

  .w-lightbox-left, .w-lightbox-right {
    opacity: .5;
    display: block;
  }

  .w-lightbox-close {
    opacity: .8;
  }

  .w-lightbox-control:hover {
    opacity: 1;
  }
}

.w-lightbox-inactive, .w-lightbox-inactive:hover {
  opacity: 0;
}

.w-richtext:before, .w-richtext:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-richtext:after {
  clear: both;
}

.w-richtext[contenteditable="true"]:before, .w-richtext[contenteditable="true"]:after {
  white-space: initial;
}

.w-richtext ol, .w-richtext ul {
  overflow: hidden;
}

.w-richtext .w-richtext-figure-selected.w-richtext-figure-type-video div:after, .w-richtext .w-richtext-figure-selected[data-rt-type="video"] div:after, .w-richtext .w-richtext-figure-selected.w-richtext-figure-type-image div, .w-richtext .w-richtext-figure-selected[data-rt-type="image"] div {
  outline: 2px solid #2895f7;
}

.w-richtext figure.w-richtext-figure-type-video > div:after, .w-richtext figure[data-rt-type="video"] > div:after {
  content: "";
  display: none;
  position: absolute;
  inset: 0;
}

.w-richtext figure {
  max-width: 60%;
  position: relative;
}

.w-richtext figure > div:before {
  cursor: default !important;
}

.w-richtext figure img {
  width: 100%;
}

.w-richtext figure figcaption.w-richtext-figcaption-placeholder {
  opacity: .6;
}

.w-richtext figure div {
  color: #0000;
  font-size: 0;
}

.w-richtext figure.w-richtext-figure-type-image, .w-richtext figure[data-rt-type="image"] {
  display: table;
}

.w-richtext figure.w-richtext-figure-type-image > div, .w-richtext figure[data-rt-type="image"] > div {
  display: inline-block;
}

.w-richtext figure.w-richtext-figure-type-image > figcaption, .w-richtext figure[data-rt-type="image"] > figcaption {
  caption-side: bottom;
  display: table-caption;
}

.w-richtext figure.w-richtext-figure-type-video, .w-richtext figure[data-rt-type="video"] {
  width: 60%;
  height: 0;
}

.w-richtext figure.w-richtext-figure-type-video iframe, .w-richtext figure[data-rt-type="video"] iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.w-richtext figure.w-richtext-figure-type-video > div, .w-richtext figure[data-rt-type="video"] > div {
  width: 100%;
}

.w-richtext figure.w-richtext-align-center {
  clear: both;
  margin-left: auto;
  margin-right: auto;
}

.w-richtext figure.w-richtext-align-center.w-richtext-figure-type-image > div, .w-richtext figure.w-richtext-align-center[data-rt-type="image"] > div {
  max-width: 100%;
}

.w-richtext figure.w-richtext-align-normal {
  clear: both;
}

.w-richtext figure.w-richtext-align-fullwidth {
  text-align: center;
  clear: both;
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.w-richtext figure.w-richtext-align-fullwidth > div {
  padding-bottom: inherit;
  display: inline-block;
}

.w-richtext figure.w-richtext-align-fullwidth > figcaption {
  display: block;
}

.w-richtext figure.w-richtext-align-floatleft {
  float: left;
  clear: none;
  margin-right: 15px;
}

.w-richtext figure.w-richtext-align-floatright {
  float: right;
  clear: none;
  margin-left: 15px;
}

.w-nav {
  z-index: 1000;
  background: #ddd;
  position: relative;
}

.w-nav:before, .w-nav:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-nav:after {
  clear: both;
}

.w-nav-brand {
  float: left;
  color: #333;
  text-decoration: none;
  position: relative;
}

.w-nav-link {
  vertical-align: top;
  color: #222;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  text-decoration: none;
  display: inline-block;
  position: relative;
}

.w-nav-link.w--current {
  color: #0082f3;
}

.w-nav-menu {
  float: right;
  position: relative;
}

[data-nav-menu-open] {
  text-align: center;
  background: #c8c8c8;
  min-width: 200px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow: visible;
  display: block !important;
}

.w--nav-link-open {
  display: block;
  position: relative;
}

.w-nav-overlay {
  width: 100%;
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow: hidden;
}

.w-nav-overlay [data-nav-menu-open] {
  top: 0;
}

.w-nav[data-animation="over-left"] .w-nav-overlay {
  width: auto;
}

.w-nav[data-animation="over-left"] .w-nav-overlay, .w-nav[data-animation="over-left"] [data-nav-menu-open] {
  z-index: 1;
  top: 0;
  right: auto;
}

.w-nav[data-animation="over-right"] .w-nav-overlay {
  width: auto;
}

.w-nav[data-animation="over-right"] .w-nav-overlay, .w-nav[data-animation="over-right"] [data-nav-menu-open] {
  z-index: 1;
  top: 0;
  left: auto;
}

.w-nav-button {
  float: right;
  cursor: pointer;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  -webkit-user-select: none;
  user-select: none;
  padding: 18px;
  font-size: 24px;
  display: none;
  position: relative;
}

.w-nav-button:focus {
  outline: 0;
}

.w-nav-button.w--open {
  color: #fff;
  background-color: #c8c8c8;
}

.w-nav[data-collapse="all"] .w-nav-menu {
  display: none;
}

.w-nav[data-collapse="all"] .w-nav-button, .w--nav-dropdown-open, .w--nav-dropdown-toggle-open {
  display: block;
}

.w--nav-dropdown-list-open {
  position: static;
}

@media screen and (max-width: 991px) {
  .w-nav[data-collapse="medium"] .w-nav-menu {
    display: none;
  }

  .w-nav[data-collapse="medium"] .w-nav-button {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .w-nav[data-collapse="small"] .w-nav-menu {
    display: none;
  }

  .w-nav[data-collapse="small"] .w-nav-button {
    display: block;
  }

  .w-nav-brand {
    padding-left: 10px;
  }
}

@media screen and (max-width: 479px) {
  .w-nav[data-collapse="tiny"] .w-nav-menu {
    display: none;
  }

  .w-nav[data-collapse="tiny"] .w-nav-button {
    display: block;
  }
}

.w-tabs {
  position: relative;
}

.w-tabs:before, .w-tabs:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-tabs:after {
  clear: both;
}

.w-tab-menu {
  position: relative;
}

.w-tab-link {
  vertical-align: top;
  text-align: left;
  cursor: pointer;
  color: #222;
  background-color: #ddd;
  padding: 9px 30px;
  text-decoration: none;
  display: inline-block;
  position: relative;
}

.w-tab-link.w--current {
  background-color: #c8c8c8;
}

.w-tab-link:focus {
  outline: 0;
}

.w-tab-content {
  display: block;
  position: relative;
  overflow: hidden;
}

.w-tab-pane {
  display: none;
  position: relative;
}

.w--tab-active {
  display: block;
}

@media screen and (max-width: 479px) {
  .w-tab-link {
    display: block;
  }
}

.w-ix-emptyfix:after {
  content: "";
}

@keyframes spin {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

.w-dyn-empty {
  background-color: #ddd;
  padding: 10px;
}

.w-dyn-hide, .w-dyn-bind-empty, .w-condition-invisible {
  display: none !important;
}

.wf-layout-layout {
  display: grid;
}

@font-face {
  font-family: MATERIAL ICONS ROUND;
  src: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/6550c7cbe7bb83b7a12393e6_MaterialIconsRound-Regular.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: MATERIAL ICONS ROUND;
  src: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/6550c7cbe7bb83b7a12393e6_MaterialIconsRound-Regular.otf") format("opentype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: MATERIAL ICONS OUTLINED;
  src: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65569648f91e8d11ccdd2178_MaterialIconsOutlined-Regular.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: MATERIAL ICONS OUTLINED;
  src: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65569648f91e8d11ccdd2178_MaterialIconsOutlined-Regular.otf") format("opentype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

:root {
  --main-colours--midnight-blue: #00305f;
  --typography--body-font-size: 1.375rem;
  --typography--body-font-height: 1.5rem;
  --typography--body-font-height-up-2: 2rem;
  --typography--body-font-size-up-1: 1.675rem;
  --typography--body-font-height-up-1: 1.8rem;
  --main-colours--silver-tree: #58b999;
  --components--nav-width: 5.5rem;
  --main-colours--white: white;
  --main-colours--shakespeare: #56accc;
  --main-colours--burnt-sienna: #f08159;
  --main-colours--malibu: #8c8cff;
  --typography--heading-font: trajan-sans-pro, sans-serif;
  --typography--h2-size: 3.5rem;
  --typography--h1-height: 5rem;
  --main-colours--blue-bell: #9c91c5;
  --main-colours--black: #000;
  --typography--h1-size: 4.1662rem;
  --typography--h2-height: 4rem;
  --typography--h3-size: 2.0831rem;
  --typography--h3-height: 2.3331rem;
  --accent-colours--jagged-ice: #cee2ee;
  --accent-colours--snuff: #dcd8ed;
  --accent-colours--skeptic: #cfe8dd;
  --typography--course-card-font-size: 1.45rem;
  --typography--course-card-font-height: 1.1669rem;
  --components--page-button-bg-colour: var(--main-colours--burnt-sienna);
  --components--page-button-font: "MATERIAL ICONS ROUND", sans-serif;
  --accent-colours--morning-glory: #96c5db;
  --typography--xl-quote-size: 6.25rem;
  --typography--l-quote-size: 5.4162rem;
  --typography--m-quote-size: 4.1662rem;
  --main-colours--concrete: #f4f2f2;
  --typography--subheading-size: 1.8331rem;
  --typography--subheading-height: 2.3331rem;
  --typography--body-font-size-up-2: 1.8rem;
  --accent-colours--snuff-alt: #e1ddf0;
  --utility-colours--translucent-image-border: #ffffff40;
  --utility-colours--accessible-components-dark-grey: #9b9b9b;
  --accent-colours--mandy: #ea504e;
  --typography--course-card-font: mr-eaves-modern, sans-serif;
  --typography--scroll-heading-size: 7.0831rem;
  --accent-colours--cinderella: #fce8de;
  --utility-colours--table-background: #ebebeb;
  --accent-colours--link-water: #e1eff8;
  --components--include-menu-width: 12.8125rem;
  --components--main-menu-width: 13.125rem;
  --components--main-menu-height: 27.5rem;
  --components--nav-button-border: .0206rem;
  --components--page-button-height: 1.4375rem;
  --components--page-button-width: 1rem;
  --components--page-button-colour: white;
  --typography--scroll-heading-height: 8.5rem;
  --typography--r-quote-size: 3.9169rem;
  --typography--r-quote-height: 1.5rem;
  --typography--l-quote-height: 1.5rem;
  --typography--xl-quote-height: 1.5rem;
  --typography--m-quote-height: 1.5rem;
  --typography--body-font-size-up-3: 2.4rem;
  --typography--body-font-height-up-3: 2.5rem;
  --typography--body-font-size-up-4: 0px;
  --typography--body-font-height-up-4: 0px;
  --utility-colours--sunglasses: #0006;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url("https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

p {
  color: var(--main-colours--midnight-blue);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  margin-bottom: 10px;
  font-weight: 300;
}

.course-card {
  perspective: 1234px;
  cursor: pointer;
  width: 100%;
  height: 15rem;
  min-height: 15rem;
}

.course-card-front {
  backface-visibility: hidden;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
  position: absolute;
  inset: 0% 0% auto;
  overflow: hidden;
}

.course-card-back {
  background-color: var(--main-colours--midnight-blue);
  backface-visibility: hidden;
  transform-style: preserve-3d;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
  position: absolute;
  inset: 0% 0% auto;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.course-card-back.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.cc-front-layout {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  inset: 0%;
  overflow: hidden;
}

.cc-front-image-wrap {
  z-index: 11;
  flex: none;
  width: 100%;
  height: 80%;
  position: static;
  inset: 0%;
  overflow: hidden;
}

.cc-front-text-block {
  width: 100%;
  height: 20%;
  min-height: 1.5625rem;
}

.cc-front-text-block.silver_tree {
  z-index: 12;
  background-color: var(--main-colours--silver-tree);
  flex: none;
  align-self: center;
  height: 4rem;
  position: static;
}

.cc-back-layout {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.cc-back-desc {
  width: 80%;
  height: 70%;
  margin-left: auto;
  margin-right: auto;
}

.cc-front-img {
  object-fit: cover;
  object-position: 50% 0%;
  width: 100%;
  height: 100%;
}

.navbar {
  z-index: 61;
  width: var(--components--nav-width);
  max-width: var(--components--nav-width);
  background-color: var(--main-colours--midnight-blue);
  object-fit: fill;
  height: 0;
  min-height: 100vh;
  max-height: 100vh;
  display: none;
  position: fixed;
  inset: 0% auto 0% 0%;
  overflow: visible;
}

.menu-button {
  border: .012rem solid var(--main-colours--white);
  background-color: var(--main-colours--midnight-blue);
  text-align: center;
  width: 4rem;
  height: 4rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0 0 0 0;
  text-decoration: none;
}

.menu-button:active {
  background-color: var(--main-colours--silver-tree);
}

.menu-button:lang(en-gb) {
  background-color: var(--main-colours--midnight-blue);
}

.menu-button.w--open {
  background-color: #c8c8c800;
  border: .05rem solid #fff;
  margin-left: auto;
  margin-right: auto;
}

.menu-button.is_blue:hover, .menu-button.is_blue:active {
  background-color: var(--main-colours--shakespeare);
}

.menu-button.is_burnt:hover, .menu-button.is_burnt:active {
  background-color: var(--main-colours--burnt-sienna);
}

.menu-button.is_silvertree:hover, .menu-button.is_silvertree:active {
  background-color: var(--main-colours--silver-tree);
}

.menu-button.is-malibu:hover, .menu-button.is-malibu:active {
  background-color: var(--main-colours--malibu);
}

.red-t-block {
  width: 100%;
  min-width: 0;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.red-t-block-content {
  background-color: #d84c4c;
  flex: 1;
  height: 100%;
}

.red-c {
  min-height: 100vh;
  display: flex;
}

.blue-t-block {
  width: 100%;
  min-width: 0;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.blue-t-block-content {
  background-color: #5869ca;
  flex: 1;
  height: 100%;
}

.blue-c {
  min-height: 100vh;
  display: flex;
}

.transition-slide {
  min-width: 0;
  position: relative;
}

.page {
  width: 100%;
  height: 100%;
}

.margin-xhuge {
  margin: 8rem;
}

.text-weight-bold {
  font-weight: 700;
}

.icon-height-small {
  height: 1rem;
}

.background-color-black {
  color: #f5f5f5;
  background-color: #000;
}

.heading-style-h4 {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
}

.form_message-error {
  margin-top: .75rem;
  padding: .75rem;
}

.align-center {
  margin-left: auto;
  margin-right: auto;
}

.text-size-small {
  font-size: .875rem;
}

.padding-vertical {
  padding-left: 0;
  padding-right: 0;
}

.margin-0 {
  margin: 0;
}

.text-weight-xbold {
  font-weight: 800;
}

.page-wrapper {
  overflow: hidden;
}

.fs-styleguide_header-block {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  display: grid;
}

.fs-styleguide_spacing {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-image: linear-gradient(to top, #2d40ea1a, #fff0);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start stretch;
  display: grid;
  position: relative;
}

.text-weight-normal {
  font-weight: 400;
}

.padding-0 {
  padding: 0;
}

.spacer-xlarge {
  width: 100%;
  padding-top: 4rem;
}

.text-size-tiny {
  font-size: .75rem;
}

.padding-section-medium {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.background-color-white {
  background-color: #fff;
}

.icon-1x1-small {
  flex: none;
  width: 1rem;
  height: 1rem;
}

.text-align-right {
  text-align: right;
}

.text-size-large {
  font-size: 1.5rem;
}

.spacer-tiny {
  width: 100%;
  padding-top: .125rem;
}

.fs-styleguide_item-header {
  border-bottom: 1px solid #0000001a;
  width: 100%;
  padding-bottom: 2rem;
}

.overflow-visible {
  overflow: visible;
}

.text-weight-medium {
  font-weight: 500;
}

.fs-styleguide_background {
  border: 1px solid #0000001a;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.form_checkbox-icon {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-checked {
  background-size: 90%;
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-focus {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.fs-styleguide_2-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fs-styleguide_2-col.is-align-start {
  align-items: start;
}

.icon-height-large {
  height: 3rem;
}

.fs-styleguide_classes {
  grid-column-gap: 1px;
  grid-row-gap: 1px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.max-width-xxlarge {
  width: 100%;
  max-width: 80rem;
}

.padding-xxlarge {
  padding: 5rem;
}

.fs-styleguide_4-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fs-styleguide_background-space {
  width: 1px;
  height: 1px;
  margin: 5rem;
}

.spacer-small {
  width: 100%;
  padding-top: 1rem;
}

.padding-custom1 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.spacer-medium {
  width: 100%;
  padding-top: 2rem;
}

.fs-styleguide_section-header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid #000;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  padding-bottom: 3rem;
  line-height: 1.4;
  display: grid;
}

.margin-small {
  margin: 1rem;
}

.text-size-regular {
  font-size: 1rem;
}

.padding-xsmall {
  padding: .5rem;
}

.padding-xhuge {
  padding: 8rem;
}

.icon-height-medium {
  height: 2rem;
}

.form_radio-icon {
  width: .875rem;
  height: .875rem;
  margin-top: 0;
  margin-left: 0;
  margin-right: .5rem;
}

.form_radio-icon.w--redirected-checked {
  border-width: .25rem;
  width: .875rem;
  height: .875rem;
}

.form_radio-icon.w--redirected-focus {
  width: .875rem;
  height: .875rem;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.container-large {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

.container-large.hide-tablet-up {
  display: none;
}

.margin-xxhuge {
  margin: 12rem;
}

.max-width-xxsmall {
  width: 100%;
  max-width: 12rem;
}

.fs-styleguide_spacer-box {
  background-color: #2d40ea1a;
  border: 1px dashed #2d40ea;
  width: 100%;
  position: relative;
}

.margin-huge {
  margin: 6rem;
}

.fs-styleguide_section {
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  display: grid;
}

.fs-styleguide_section.is-vertical {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-columns: 1fr;
}

.fs-styleguide_heading-large {
  font-size: 6rem;
}

.padding-left {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.fs-styleguide_item {
  grid-column-gap: 1.125rem;
  grid-row-gap: 1.125rem;
  border-bottom: 1px solid #0000001a;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  padding-bottom: 3rem;
  display: grid;
  position: relative;
}

.fs-styleguide_item.is-stretch {
  justify-items: stretch;
}

.margin-medium {
  margin: 2rem;
}

.text-color-white {
  color: #fff;
}

.margin-xxlarge {
  margin: 5rem;
}

.margin-xlarge {
  margin: 4rem;
}

.margin-horizontal {
  margin-top: 0;
  margin-bottom: 0;
}

.text-weight-semibold {
  font-weight: 600;
}

.padding-small {
  padding: 1rem;
}

.padding-small.unhide-mobile-landscape, .padding-small.hide-tablet-up, .padding-small.show-mobile-down {
  display: none;
}

.text-color-black {
  color: #000;
}

.spacer-xxlarge {
  width: 100%;
  padding-top: 5rem;
}

.text-color-grey {
  color: gray;
}

.heading-style-h2 {
  font-family: var(--typography--heading-font);
  color: var(--main-colours--midnight-blue);
  font-size: var(--typography--h2-size);
  line-height: var(--typography--h1-height);
  text-transform: uppercase;
  font-weight: 400;
}

.heading-style-h2.align-center {
  text-align: center;
}

.heading-style-h2.is_shakes {
  color: var(--main-colours--shakespeare);
  font-weight: 300;
}

.max-width-large {
  width: 100%;
  max-width: 48rem;
}

.padding-bottom {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

.global-styles {
  display: block;
  position: fixed;
  inset: 0% auto auto 0%;
}

.text-align-center {
  text-align: center;
}

.text-align-center.limit_tpl_24 {
  width: 24ch;
}

.text-style-link {
  color: #000;
  text-decoration: underline;
}

.margin-xsmall {
  margin: .5rem;
}

.heading-style-h3 {
  text-transform: uppercase;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.2;
}

.heading-style-h3.is_bluebell {
  color: var(--main-colours--blue-bell);
}

.heading-style-h3.is_shakes {
  color: var(--main-colours--shakespeare);
}

.text-style-strikethrough {
  text-decoration: line-through;
}

.text-style-quote {
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.text-style-italic {
  font-style: italic;
}

.layer {
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: 0%;
}

.max-width-full {
  width: 100%;
  max-width: none;
}

.fs-styleguide_label {
  color: #fff;
  background-color: #2d40ea;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: .25rem .75rem .3rem;
  font-weight: 600;
  display: flex;
}

.fs-styleguide_label.is-tag {
  background-color: #be4aa5;
}

.fs-styleguide_label.is-hex {
  color: #000;
  background-color: #f5f5f5;
}

.fs-styleguide_3-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 100%;
  display: grid;
}

.fs-styleguide_3-col.is-align-start {
  align-items: start;
}

.z-index-1 {
  z-index: 1;
  position: relative;
}

.text-size-medium {
  font-size: 1.25rem;
}

.padding-right {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.text-align-left {
  text-align: left;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-scroll {
  overflow: scroll;
}

.max-width-xsmall {
  width: 100%;
  max-width: 16rem;
}

.overflow-auto {
  overflow: auto;
}

.margin-right {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
}

.spacer-xhuge {
  width: 100%;
  padding-top: 8rem;
}

.spacer-xhuge.mobile-only {
  display: none;
}

.margin-xxsmall {
  margin: .25rem;
}

.icon-1x1-medium {
  width: 2rem;
  height: 2rem;
}

.icon-1x1-large {
  width: 2.5rem;
  height: 2.5rem;
}

.padding-xlarge {
  padding: 4rem;
}

.fs-styleguide_item-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.max-width-medium {
  width: 100%;
  max-width: 32rem;
}

.form_component {
  margin-bottom: 0;
}

.fs-styleguide_row {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: auto;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.spacing-clean {
  margin: 0;
  padding: 0;
}

.form_input {
  background-color: #0000;
  min-height: 3rem;
  margin-bottom: .75rem;
  padding: .5rem 1rem;
}

.form_input.is-text-area {
  min-height: 8rem;
  padding-top: .75rem;
}

.button-group {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.margin-tiny {
  margin: .125rem;
}

.padding-global {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.padding-large {
  padding: 3rem;
}

.padding-large.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.padding-large.show-mobile-down {
  display: none;
}

.padding-section-small {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.margin-top {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

.padding-top {
  padding: 2rem 0 0;
}

.margin-left {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
}

.fs-styleguide_version {
  z-index: 5;
  color: #000;
  font-weight: 500;
  text-decoration: none;
}

.spacer-huge {
  width: 100%;
  padding-top: 6rem;
}

.text-weight-light {
  font-weight: 300;
}

.padding-horizontal {
  padding-top: 0;
  padding-bottom: 0;
}

.z-index-2 {
  z-index: 2;
  position: relative;
}

.form_checkbox {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.padding-xxsmall {
  padding: .25rem;
}

.text-style-nowrap {
  white-space: nowrap;
}

.fs-styleguide_heading-medium {
  font-size: 4rem;
}

.spacer-xxsmall {
  width: 100%;
  padding-top: .25rem;
}

.max-width-small {
  width: 100%;
  max-width: 20rem;
}

.fs-styleguide_empty-box {
  z-index: -1;
  background-color: #2d40ea0d;
  border: 1px dashed #2d40ea;
  min-width: 3rem;
  height: 3rem;
  position: relative;
}

.padding-xxhuge {
  padding: 12rem;
}

.margin-vertical {
  margin-left: 0;
  margin-right: 0;
}

.container-medium {
  width: 100%;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
}

.container-medium.is_bg_white {
  background-color: var(--main-colours--white);
  padding-left: 1rem;
  padding-right: 1rem;
}

.container-medium.show_on_mob {
  display: none;
}

.spacer-xsmall {
  width: 100%;
  padding-top: .5rem;
}

.background-color-grey {
  background-color: #f5f5f5;
}

.text-style-muted {
  opacity: .6;
}

.heading-style-h6 {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

.padding-medium {
  padding: 2rem;
}

.padding-medium.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.padding-section-large {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.spacer-large {
  padding-top: 3rem;
}

.fs-styleguide_header {
  background-color: #0000000d;
}

.margin-bottom {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.fs-styleguide_1-col {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.heading-style-h5 {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
}

.form_message-success {
  padding: 1.25rem;
}

.padding-huge {
  padding: 6rem;
}

.container-small {
  width: 100%;
  max-width: 48rem;
  margin-left: auto;
  margin-right: auto;
}

.fs-styleguide_color.is-3 {
  background-color: #fff;
}

.fs-styleguide_color.is-1 {
  background-color: #000;
}

.fs-styleguide_color.is-2 {
  background-color: #f5f5f5;
}

.spacer-xxhuge {
  width: 100%;
  padding-top: 12rem;
}

.button {
  background-color: var(--main-colours--midnight-blue);
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  flex: 0 auto;
  padding: .75rem 1.5rem;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1.6rem;
}

.button.is-secondary {
  color: #000;
  background-color: #0000;
  border: 2px solid #000;
  border-bottom-width: .125rem;
}

.button.is-text {
  color: #000;
  background-color: #0000;
  border: 2px solid #0000;
}

.button.is-icon {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  display: flex;
}

.button.is-large {
  padding: 1rem 2rem;
}

.button.is-small {
  padding: .5rem 1.25rem;
}

.form_radio {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.margin-large {
  margin: 3rem;
}

.padding-tiny {
  padding: .125rem;
}

.fs-styleguide_spacing-all {
  display: none;
}

.max-width-xlarge {
  width: 100%;
  max-width: 64rem;
}

.heading-style-h1 {
  color: var(--main-colours--black);
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--h1-size);
  line-height: var(--typography--h1-height);
  text-align: left;
  text-transform: uppercase;
  font-weight: 300;
}

.heading-style-h1.alt-h1 {
  color: var(--main-colours--white);
  text-align: left;
  margin-top: 10px;
  font-size: 4.2rem;
  line-height: 5rem;
  overflow: hidden;
}

.heading-style-h1.is_blue {
  color: var(--main-colours--shakespeare);
  font-size: var(--typography--h2-size);
  font-weight: 300;
}

.heading-style-h1.is_white.heading-align-center {
  text-align: center;
  margin-top: 10px;
}

.hide {
  display: none;
}

.text-style-allcaps {
  text-transform: uppercase;
}

.navbar-mob {
  display: none;
}

.nav-menu {
  z-index: 60;
  margin-left: var(--components--nav-width);
  width: 30rem;
  height: 50rem;
  max-height: 55rem;
  inset: 0% 0% 0% auto;
}

.nav-container {
  flex-direction: column;
  align-items: flex-start;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 3rem;
  display: flex;
}

.heading {
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--h1-size);
  line-height: var(--typography--h1-height);
  font-weight: 400;
}

.heading-2 {
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--h2-size);
  line-height: var(--typography--h2-height);
  font-weight: 400;
}

.heading-3 {
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--h3-size);
  line-height: var(--typography--h3-height);
  font-weight: 400;
}

.container_full {
  width: 100%;
  max-width: 100%;
}

.container_full.silver_tree {
  background-color: var(--main-colours--silver-tree);
}

.container_full.is_ice {
  background-color: var(--accent-colours--jagged-ice);
}

.container_full.is_snuff {
  background-color: var(--accent-colours--snuff);
}

.container_full.is_skeptic, .container_full.is_skeptic_sect {
  background-color: var(--accent-colours--skeptic);
}

.bg_text {
  object-fit: cover;
  width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: 25rem;
  max-height: 70rem;
  position: relative;
  overflow: hidden;
}

.bg_text.is_course {
  height: 32rem;
  position: relative;
}

.bg_text.is_course.alt_height {
  height: auto;
}

.bg_text.is_course_small {
  height: auto;
  min-height: 25rem;
}

.cc-front-text {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--course-card-font-size);
  line-height: var(--typography--course-card-font-height);
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  font-weight: 700;
  display: flex;
}

.container_xl_layout {
  width: 90%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.section_cross-grid {
  flex-direction: column;
  width: 100%;
  height: 100%;
  display: flex;
}

.cross-grid_top-row {
  align-self: auto;
  display: flex;
}

.cross-grid_btm-row {
  display: flex;
}

.section {
  font-family: trajan-sans-pro, sans-serif;
}

.page_button_left {
  z-index: 61;
  background-color: var(--components--page-button-bg-colour);
  border-top-right-radius: 1rem;
  border-bottom-right-radius: 1rem;
  flex: none;
  width: 2.5rem;
  min-width: 2.5rem;
  height: 4rem;
  min-height: 4rem;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  position: absolute;
  inset: 0% auto 0% 0%;
  overflow: visible;
}

.page_buttons {
  z-index: 61;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 100%;
  display: flex;
  position: fixed;
  inset: 36.5rem 0 auto;
}

.page_buttons.pb_cover {
  justify-content: center;
  top: 30rem;
}

.page_left_arrow {
  font-family: var(--components--page-button-font);
  color: var(--main-colours--white);
  text-align: center;
  width: 100%;
  height: auto;
  margin-top: 20%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  font-size: 2.8rem;
  font-weight: 100;
  line-height: 3rem;
  display: block;
  position: static;
  inset: 0%;
}

.page_right_arrow {
  font-family: var(--components--page-button-font);
  color: var(--main-colours--white);
  text-align: center;
  width: 100%;
  height: auto;
  margin-top: 20%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  font-size: 2.8rem;
  font-weight: 100;
  line-height: 3rem;
  display: block;
}

.page_button_right {
  z-index: 61;
  background-color: var(--components--page-button-bg-colour);
  cursor: pointer;
  border-top-left-radius: 1rem;
  border-bottom-left-radius: 1rem;
  flex: none;
  width: 2.5rem;
  min-width: 2.5rem;
  height: 4rem;
  min-height: 4rem;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  position: absolute;
  inset: 0% 0% 0% auto;
  overflow: hidden;
}

.lottie-animation {
  width: 3rem;
  height: 3rem;
  margin-left: auto;
  margin-right: auto;
}

.page_container {
  background-color: var(--main-colours--white);
  margin-left: 10rem;
}

.cover_bg_junior {
  background-image: linear-gradient(180deg, #fff0 60%, var(--main-colours--black)), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65bb5e09052a1ad95e36ff84_0124_front_page.webp");
  text-shadow: 0 1px 1px #0003;
  object-fit: cover;
  background-position: 0 0, 50% 0;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  background-attachment: scroll, fixed;
  width: 100vw;
  min-width: 100vw;
  max-width: 100%;
  height: 100vh;
  min-height: 100vh;
  max-height: 100%;
}

.cover_container {
  object-fit: cover;
  justify-content: flex-end;
  width: 100vw;
  min-width: 100vw;
  max-width: 100%;
  height: 100vh;
  min-height: 100vh;
  max-height: 100%;
  display: flex;
}

.cover_layout {
  justify-content: flex-end;
  align-self: flex-end;
  align-items: flex-end;
  width: 100%;
  height: 40%;
  min-height: 45rem;
  max-height: 45rem;
  margin-bottom: 2.5rem;
  display: flex;
  overflow: hidden;
}

.cover_center_btm {
  width: 75%;
  height: auto;
  min-height: 25rem;
  max-height: 100%;
  margin-left: auto;
}

.cover_right_btm {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  width: 12.5%;
  height: auto;
  min-height: 30rem;
  display: flex;
}

.cover_brand {
  width: 40rem;
  min-width: 30rem;
  height: 20rem;
  min-height: 10rem;
  max-height: 30rem;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 1.5rem;
  overflow: hidden;
}

.brand_img {
  width: 100%;
  height: 100%;
  max-height: 100%;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.cover_title {
  text-align: center;
}

.navigation {
  z-index: 60;
  border-right: 10px solid var(--main-colours--white);
  background-color: var(--main-colours--midnight-blue);
  width: 10rem;
  height: 100%;
  position: fixed;
  inset: 0% auto 0% 0%;
}

.nav-menu {
  z-index: 59;
  background-color: var(--main-colours--silver-tree);
  min-width: 40rem;
  height: 60rem;
  min-height: 50rem;
  max-height: 70rem;
  margin-left: 10rem;
  display: none;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.nav-text {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  text-align: center;
  text-transform: uppercase;
  width: auto;
  margin-top: .5rem;
  margin-left: auto;
  margin-right: auto;
  font-weight: 400;
  text-decoration: none;
}

.nav-menu-container {
  width: 100%;
  height: 100%;
  position: relative;
}

.nav-menu-layout {
  flex-direction: column;
  margin-top: 5%;
  display: flex;
}

.nav-links {
  flex-direction: column;
  min-height: 45rem;
  margin-top: 5%;
  margin-left: 10%;
  margin-right: 10%;
  display: flex;
}

.nav-close {
  justify-content: flex-end;
  margin-left: 5%;
  margin-right: 5%;
  display: flex;
}

.close-menu {
  text-decoration: none;
}

.close {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 3.2rem;
}

.menu-link {
  align-self: center;
  width: 80%;
  height: auto;
  margin-bottom: 1rem;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
}

.nav-icon {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 4rem;
}

.nav-bar.hidden {
  display: none;
}

.course_table_cell {
  border-right: 1px solid var(--main-colours--midnight-blue);
  border-left: 1px solid #000;
  padding-left: .2rem;
  font-weight: 300;
}

.course_table_cell.bold_cell {
  font-weight: 700;
}

.course_table_row {
  border-bottom: 1px solid var(--main-colours--midnight-blue);
}

.course_table_row.alt_row {
  background-color: var(--accent-colours--jagged-ice);
}

.course_table_body {
  color: var(--main-colours--midnight-blue);
  font-family: mr-eaves-modern, sans-serif;
  font-size: .8331rem;
  line-height: 1.7rem;
}

.course_table_header {
  border-right: 1px solid var(--accent-colours--morning-glory);
  border-left: 1px solid #000;
  padding-left: .2rem;
}

.course_table_head {
  background-color: var(--main-colours--midnight-blue);
  color: var(--main-colours--white);
  text-align: left;
  font-family: mr-eaves-modern, sans-serif;
  font-size: .8331rem;
  font-weight: 700;
}

.course_table {
  border: .25rem solid var(--main-colours--midnight-blue);
  width: 100%;
  min-width: 30rem;
  display: none;
}

.hero {
  width: 100%;
  height: 65rem;
}

.hero_bg {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.hero_bg.is_intro {
  background-image: linear-gradient(#00000040, #00000040), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/655d2aa714c606dcfd29336b_DSCF0283.webp");
  background-position: 0 0, 50% 60%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.hero_bg.is_travel {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/6569ed52bd22df7c1e2b2646_Travel_Hero.webp");
  background-position: 50% 60%;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero_bg.is_facilities {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656d1714e6fb037bb310bc20_facilities_hero_crop.webp");
  background-position: 50% 25%;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero_bg.is_snr_intro {
  background-image: linear-gradient(#00000040, #00000040), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656db1b1e7899c55033614cd_Welcome_Hero_Snr.webp");
  background-position: 0 0, 50% 60%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
}

.hero_bg.is_travel_snr {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65db2d69f8f7695a87d9cc6f_Travel_Hero_img.webp");
  background-position: 50% 35%;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero_layout {
  align-items: flex-end;
  width: 100%;
  height: 100%;
  display: flex;
}

.hero_heading {
  flex-direction: column;
  justify-content: space-around;
  width: 51.2rem;
  height: 20rem;
  margin-bottom: 3rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  overflow: hidden;
}

.hero_heading_top {
  align-self: flex-start;
  overflow: hidden;
}

.hero_heading_center {
  align-self: center;
}

.hero_heading_bottom {
  align-self: flex-end;
  overflow: hidden;
}

.two_col_layout {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template: "." minmax(20rem, 25rem)
  / 40fr 40fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.is_quote_block {
  width: 90%;
  min-width: 52rem;
  min-height: 10rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.two_col_text {
  text-align: left;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  display: flex;
}

.two_col_text.is_from_top {
  justify-content: flex-start;
  align-items: flex-start;
}

.two_col_image {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.image_container {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  max-height: 30rem;
  overflow: hidden;
}

.image_container.skewed {
  transform: rotate(2deg);
}

.is_quote_text {
  aspect-ratio: auto;
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--xl-quote-size);
  line-height: var(--typography--l-quote-size);
  align-self: center;
  margin-left: auto;
  margin-right: auto;
  font-style: italic;
  font-weight: 200;
}

.is_quote_text.is_silver_tree {
  color: var(--main-colours--silver-tree);
  text-align: center;
}

.paragraph-25 {
  width: 25ch;
}

.paragraph-25.is_white {
  color: var(--main-colours--white);
}

.nav-point {
  z-index: 65;
  color: var(--main-colours--midnight-blue);
  object-fit: contain;
  width: 3rem;
  height: 5rem;
  margin-top: 2.5rem;
  font-size: 15rem;
  line-height: 5rem;
  position: absolute;
  left: -.7rem;
  overflow: visible;
}

.point {
  width: 5rem;
  height: 5rem;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  left: -10px;
  overflow: hidden;
}

.courses_menu {
  border-bottom: .02rem solid var(--main-colours--white);
  width: 100%;
  padding: 10px 5px;
}

.courses_list {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.courses_list.w--open {
  background-color: var(--main-colours--silver-tree);
  width: 100%;
  min-height: 10rem;
  max-height: 20rem;
  margin-left: -5px;
  padding-left: 0;
  overflow: visible;
}

.courses_link {
  color: var(--main-colours--midnight-blue);
  text-transform: uppercase;
  padding-left: 5px;
  padding-right: 5px;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 1.125rem;
  line-height: 1.5rem;
}

.icon {
  color: var(--main-colours--midnight-blue);
  font-size: 1.5rem;
  line-height: 1.5rem;
}

.courses_menu_dropdown {
  width: 100%;
  padding: 0;
}

.course_menu_text {
  color: var(--main-colours--white);
  text-transform: uppercase;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 1.125rem;
  line-height: 1.5rem;
}

.nav-link {
  border-bottom: .02rem solid var(--main-colours--white);
  width: 100%;
  padding: 10px 5px;
  text-decoration: none;
}

.nav-link.w--current {
  border-bottom-width: .02rem;
}

.nav-link-text {
  color: var(--main-colours--white);
  text-transform: uppercase;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 1.125rem;
  line-height: 1.5rem;
}

.section_heading {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.section_points {
  width: 100%;
  min-width: 100%;
  min-height: 30rem;
  margin-left: auto;
  margin-right: auto;
}

.section_points.is_concreate {
  background-color: var(--main-colours--concrete);
}

.container_xxl {
  width: 100%;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
}

.points_grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  padding-top: 5rem;
  padding-bottom: 5rem;
  display: grid;
}

.point_image {
  margin-left: auto;
  margin-right: auto;
}

.point_text {
  margin-left: auto;
  margin-right: auto;
  padding-top: 1.5rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.section_banner {
  width: 100%;
  min-height: 45rem;
}

.banner_bg {
  object-fit: cover;
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d803074dac02e4e8115af3_e_enrich_banner_img.jpg");
  background-position: 50% -23%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
}

.banner_bg.banner_glance {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/655d2704842a7c1237f2db9a_DSCF9892.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.banner_layout {
  align-items: flex-end;
  width: 100%;
  min-width: 100%;
  min-height: 42.8rem;
  max-height: 45rem;
  display: flex;
}

.container_xl {
  width: 100%;
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
}

.img-caption {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  min-height: 5rem;
  max-height: 6rem;
  padding-bottom: 1.5rem;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.img-caption-header {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  font-weight: 700;
}

.img-caption-text {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.heading_top_text {
  color: var(--main-colours--white);
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--subheading-size);
  line-height: var(--typography--subheading-height);
}

.heading_btm_text {
  color: var(--main-colours--white);
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--subheading-size);
  line-height: var(--typography--subheading-height);
  text-align: right;
}

.bold-text-span {
  font-weight: 700;
}

.bold-text-span.is_burnt {
  color: var(--main-colours--burnt-sienna);
}

.bold-text-span.is_blue {
  color: var(--main-colours--shakespeare);
}

.bold-text-span.is_silvertree {
  color: var(--main-colours--silver-tree);
}

.bold-text-span.is_bluebell {
  color: var(--main-colours--blue-bell);
}

.bold-text-span.is_shakes {
  color: var(--main-colours--shakespeare);
}

.bold-text-span.is_midnight {
  color: var(--main-colours--midnight-blue);
}

.points_grid_two {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  padding-top: 5rem;
  padding-bottom: 5rem;
  display: grid;
}

.double_intro_text_block {
  margin-top: 5rem;
}

.location_slide_img {
  object-fit: cover;
  object-position: 50% 100%;
  width: 100%;
  height: auto;
  min-height: 20rem;
  overflow: hidden;
}

.right_sidebar_layout {
  width: 100%;
  height: 100%;
  display: flex;
}

.sidebar_col_left {
  flex-direction: column;
  flex: 0 auto;
  width: 80%;
  min-width: 80%;
  padding-top: 5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
}

.sidebar_col_right {
  flex-direction: column;
  width: 20%;
  min-width: 20%;
  display: flex;
}

.sidebar_container {
  background-color: var(--main-colours--midnight-blue);
  width: 100%;
  height: 100%;
  min-height: 100vh;
}

.section_cards {
  perspective: 90vw;
  width: 100%;
  min-width: 100%;
  display: none;
  transform: perspective(90vw);
}

.card_grid {
  grid-column-gap: 5rem;
  grid-row-gap: 5rem;
  grid-template-rows: auto;
  grid-template-columns: 17.5rem 17.5rem;
  grid-auto-columns: 1fr;
  padding-top: 3rem;
  padding-bottom: 2rem;
  display: grid;
  overflow: visible;
}

.course-card-inner {
  backface-visibility: hidden;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  transform: none;
}

.course_card_link {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.section_course_intro {
  z-index: 0;
  position: relative;
}

.course_bg {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: relative;
}

.course_bg.provision_bg {
  object-fit: cover;
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d85b6136f47b5435f7d8c9_English_Provision_Hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.course_bg.academic_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65666c13e44f82922b91dc0a_academic_hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.cookery_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d883a7984b88ada141d805_fbl_hero_img.webp");
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.stem_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656891f8f33922f5194d2a79_stem_hero.webp");
  background-position: 50%;
  background-size: cover;
}

.course_bg.multisport_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/6569be6fb26207c260264b18_Multisport_Hero.webp");
  background-position: 50% 10%;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.boarding_bg {
  object-fit: cover;
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656bb994111dd4df1e3d601f_Boarding_Hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.course_bg.e-erich-bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d800eabddb87139e7f552a_e_enrich_hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.fbl_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d883a7984b88ada141d805_fbl_hero_img.webp");
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.provision_jnr_bg {
  object-fit: cover;
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/6570fc986b177d3a175a5e96_v2_English_P_Hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.course_bg.stem_snr_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d8cae5ecfb3d8e045a61ba_stem_hero_img.webp");
  background-position: 50%;
  background-size: cover;
}

.course_bg.performing_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d8d3d93db8e756d686aca9_performing_hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.tennis_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d94bd536f4a5efea72d28e_tennis_academy_hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.pre-session-bg {
  z-index: 1;
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65da6ec6492f48f786132d78_Pre_Sessional_Hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.course_bg.boarding_snr_bg {
  object-fit: cover;
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65db315fccbd4e74eea68e9d_boarding_pastoral_hero.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
}

.course_intro_layout {
  z-index: 3;
  pointer-events: auto;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.course_intro_buttons {
  flex-direction: column;
  min-width: 15rem;
  min-height: 40rem;
  padding-top: 3rem;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
}

.course_intro_buttons.spaced {
  pointer-events: auto;
  justify-content: space-between;
}

.course_intro_video, .course_intro_tests {
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
}

.video_sticker, .tests_sticker {
  width: 11rem;
  height: auto;
  max-height: 10rem;
  overflow: hidden;
}

.venn_layout {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.left_circle {
  background-color: var(--main-colours--white);
  border-radius: 25rem;
  width: 25rem;
  height: 25rem;
}

.left_circle.is_morning {
  background-color: var(--accent-colours--morning-glory);
  margin-left: auto;
  margin-right: auto;
}

.choice_text {
  width: 5rem;
  height: 5rem;
  margin-left: auto;
  margin-right: auto;
}

.right_circle {
  background-color: var(--main-colours--white);
  border-radius: 25rem;
  width: 25rem;
  height: 25rem;
}

.right_circle.is_shakes {
  background-color: var(--main-colours--shakespeare);
  margin-left: auto;
  margin-right: auto;
}

.text_choices {
  color: var(--main-colours--midnight-blue);
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 3.3331rem;
  font-weight: 700;
  line-height: 3.5rem;
}

.venn_spacer {
  width: 6rem;
  height: 25rem;
}

.hidden {
  display: none;
}

.banner_scroll_text {
  padding-bottom: 1.5rem;
  padding-left: .5rem;
  padding-right: 1rem;
  overflow: hidden;
}

.banner_text {
  color: var(--main-colours--white);
  text-transform: uppercase;
  white-space: nowrap;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 7.0831rem;
  font-weight: 300;
  line-height: 7.2rem;
}

.point_image_wrap {
  width: 10rem;
  height: 10rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.fees_section {
  flex-direction: column;
  width: 100%;
  height: 100rem;
  margin-top: 10rem;
  padding-top: 2rem;
  display: flex;
}

.included_item {
  border-bottom: .02rem solid var(--main-colours--shakespeare);
  width: 100%;
  min-height: 8.5rem;
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}

.included_item.no-border {
  border-bottom-style: none;
}

.basic-column {
  padding-left: 10px;
  padding-right: 10px;
}

.columns {
  margin-bottom: 1rem;
}

.columns.no-margin {
  margin-bottom: 0;
}

.columns.col-flex {
  align-items: center;
  display: flex;
}

.item_icon {
  width: 5rem;
  height: 5rem;
  margin-left: auto;
  margin-right: auto;
}

.fee_section_title {
  color: var(--main-colours--shakespeare);
  text-align: center;
  text-transform: uppercase;
  margin-left: auto;
  margin-right: auto;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.5rem;
}

.included_item_wrap {
  padding-left: 1rem;
  padding-right: 1rem;
}

.item_title_text {
  color: var(--main-colours--white);
  text-align: center;
  margin: .2rem auto .5rem;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.12rem;
  font-weight: 300;
  line-height: 1.5rem;
}

.provision_intro_image {
  width: 100%;
}

.call_out_intro_layout {
  justify-content: center;
  display: flex;
}

.sticker {
  padding: .4rem;
}

.section_course_outro {
  min-height: 20rem;
}

.section_course_outro.is_shakes_sect {
  background-color: var(--main-colours--shakespeare);
}

.callout_icon {
  width: 4.7rem;
  height: 6rem;
}

.callout_text {
  flex: 0 auto;
  padding-left: 1rem;
}

.image-6 {
  object-fit: cover;
  object-position: 25% 50%;
  min-height: 40rem;
  overflow: visible;
}

.base_column.base-pad {
  padding-left: 0;
  padding-right: 0;
}

.base_column.no-pad {
  padding: 0;
}

.base_column.base_text_pad {
  padding-left: 1.5rem;
}

.base_column.up-pad-col {
  padding-left: 20px;
  padding-right: 20px;
}

.base_column.no-pad-r {
  padding-right: 0;
}

.base_column.no-pad-l {
  padding-left: 0;
}

.left_circle_text_wrap {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.circle_text_block {
  flex: none;
  width: 18rem;
  height: 16rem;
  max-height: 30rem;
  margin-left: auto;
  margin-right: auto;
}

.circle_heading {
  text-align: center;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 2.0831rem;
  font-weight: 700;
  line-height: 2.25rem;
}

.circle_heading.is_white {
  color: var(--main-colours--white);
}

.right_circle_text_wrap {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.circle_text {
  text-align: center;
}

.provision_intro_img {
  object-fit: cover;
  height: 100%;
  overflow: hidden;
}

.provision_outro_image_wrap {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 25rem;
  display: flex;
}

.provision_outro_image {
  width: 100%;
}

.provision_outro_text_wrap {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  min-height: 27.4rem;
  padding-left: 3.5rem;
  padding-right: 6.2rem;
  display: flex;
}

.course_intro_time {
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
}

.table_sticker {
  width: 11rem;
  height: auto;
  max-height: 10rem;
  overflow: hidden;
}

.academic_intro_content {
  flex-direction: column;
  margin-right: 2rem;
  display: flex;
  position: relative;
}

.academic_intro_image_wrap {
  width: 100%;
  max-height: 22rem;
  overflow: hidden;
}

.academic_intro_img {
  object-fit: cover;
  width: 100%;
  max-height: 22rem;
}

.h2-small-heading {
  color: var(--main-colours--midnight-blue);
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.6569rem;
  line-height: 2rem;
}

.h2-small-heading.text-align-center.is_shakes {
  color: var(--main-colours--shakespeare);
}

.h2-small-heading.text-align-center.is_shakes.no-margins {
  margin-top: 0;
}

.h2-small-heading.is_shakes {
  color: var(--main-colours--shakespeare);
}

.academic_point_grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.section_academic_outro.is_bluebell_sect {
  background-color: var(--main-colours--blue-bell);
}

.academic_outro_text {
  padding-right: 56px;
}

.academic_outro_text.padding-left {
  padding-left: 30px;
  padding-right: 0;
}

.academic_tall_img_wrap {
  z-index: 3;
  width: 100%;
  min-height: 35rem;
  position: relative;
}

.academic_tall_img {
  object-fit: cover;
  object-position: 69% 50%;
  width: 100%;
  height: 35rem;
  position: absolute;
  inset: -9% 0% auto;
  overflow: hidden;
}

.academic_outro_image {
  width: 100%;
  overflow: visible;
}

.sideways_layout {
  flex-direction: column;
  justify-content: flex-end;
  display: flex;
}

.sideways_wrap {
  flex-direction: column;
  justify-content: flex-end;
  min-height: 32rem;
  display: flex;
}

.cover_subtitle {
  margin-left: auto;
  margin-right: auto;
}

.play_text {
  margin-top: .5rem;
  margin-left: auto;
  margin-right: auto;
}

.play_button_wrap {
  width: 6rem;
  height: 6rem;
  margin-left: auto;
  margin-right: auto;
}

.play_text_span {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  text-transform: uppercase;
}

.cover_subtitle_text {
  color: var(--main-colours--silver-tree);
  text-align: center;
  letter-spacing: 8px;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 2rem;
  font-weight: 300;
  line-height: 3rem;
}

.cover_video_link {
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
}

.section_location_slider {
  z-index: 0;
  background-color: var(--main-colours--white);
  width: 100%;
  min-height: auto;
  position: relative;
}

.sideways {
  text-transform: uppercase;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 3.3331rem;
  font-weight: 300;
  line-height: 4rem;
  overflow: visible;
}

.sideways.is_white.sideways-text {
  white-space: pre-wrap;
}

.sideways.sideways-text.is_snuff_alt {
  color: var(--accent-colours--snuff-alt);
}

.cooking_intro_content {
  position: relative;
}

.section_cooking_outro.is_silvertree_sect {
  background-color: var(--main-colours--silver-tree);
}

.cookery_intro_image_wrap {
  flex-direction: column;
  justify-content: center;
  width: auto;
  height: auto;
  max-height: 30rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.cookery_intro_img {
  object-fit: contain;
  width: auto;
  max-width: 20rem;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.cookery_outro_image_wrap {
  padding-left: 5px;
}

.cookery_outro_text_wrap {
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  min-height: 30rem;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
}

.cookery_outro_image {
  object-fit: cover;
  width: 100%;
  min-height: 30rem;
  max-height: 32rem;
  overflow: hidden;
}

.cookery_timetable {
  display: none;
}

.stem_intro_content {
  align-self: auto;
  margin-right: 2rem;
  position: relative;
}

.stem_intro_content.slide-left {
  margin-right: 2rem;
}

.section_back_cover {
  width: 100%;
  height: 100%;
  min-height: 39.0625rem;
  display: none;
  overflow: hidden;
}

.back_cover_bg_junior {
  text-shadow: 0 1px 1px #0003;
  background-image: linear-gradient(#00000026, #00000026), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/6568b13b991d7dbc5245e389_back_cover_jnr.webp");
  background-position: 0 0, 38% 0;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  background-attachment: scroll, fixed;
  width: 100%;
  height: 100%;
  min-height: 100%;
}

.back_cover_container {
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  display: flex;
}

.back_cover_layout {
  justify-content: flex-end;
  align-self: flex-end;
  align-items: flex-end;
  width: 100%;
  height: 40%;
  min-height: 45rem;
  max-height: 45rem;
  margin-bottom: 2.5rem;
  display: flex;
  overflow: hidden;
}

.back_cover_wrapper {
  width: 95%;
  height: 100%;
  min-height: 27rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1rem;
  display: flex;
}

.back_cover_blue_block {
  background-color: var(--main-colours--midnight-blue);
  flex-direction: column;
  justify-content: flex-start;
  width: 85%;
  min-height: 25rem;
  max-height: 27rem;
  padding: .5rem 2rem;
  display: flex;
}

.blue_block_col_layout {
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.strong {
  font-weight: 700;
}

.strong.is_shakes {
  color: var(--main-colours--shakespeare);
}

.strong.is_white {
  width: 6rem;
  min-height: 0;
  max-height: 8rem;
}

.strong.is_white.text_shadow {
  text-shadow: 0 2px 1px #0003;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  inset: auto 0% 0% auto;
}

.is_white {
  color: var(--main-colours--white);
  flex: 0 auto;
}

.is_white.is_center {
  margin-left: auto;
  margin-right: auto;
}

.is_white.is_body_small {
  font-size: 1.25rem;
  line-height: 1.4rem;
}

.is_white.is_body_small.is_bold {
  font-weight: 700;
}

.is_white.flex-align-left {
  align-self: flex-start;
}

.blue_block_left_col, .blue_block_right_col {
  max-width: 45%;
}

.blue_block_center_line {
  border-style: none solid none none;
  border-width: .225rem .125rem .225rem .225rem;
  border-color: var(--main-colours--shakespeare);
  align-self: center;
  width: .015%;
  max-width: 10%;
  height: 90%;
}

.back_cover_stickers {
  flex-direction: column;
  justify-content: flex-end;
  min-width: 15%;
  display: flex;
}

.back_cover_buttons {
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  min-width: 15rem;
  padding-top: 1rem;
  padding-left: .5rem;
  padding-right: .5rem;
  display: flex;
}

.back_cover_email, .back_cover_phone {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  align-items: center;
  margin-bottom: 1rem;
  display: flex;
}

.back_cover_website {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: center;
  align-items: center;
  display: flex;
}

.website_sticker {
  width: 10rem;
  height: auto;
  max-height: 8rem;
  overflow: hidden;
}

.phone_sticker, .email_sticker {
  width: 10rem;
  height: auto;
  max-height: 10rem;
  overflow: hidden;
}

.sticker_message {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  inset: 0 auto 0 50px;
}

.stem_intro_image_wrap {
  width: 100%;
}

.stem_intro_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  min-height: 25rem;
}

.stem_mid_text_wrap {
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  min-height: 30rem;
  padding-top: 1.5rem;
  padding-right: 20px;
  display: flex;
  overflow: scroll;
}

.stem_mid_image_wrap {
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  padding-left: 5px;
  display: flex;
  position: relative;
}

.stem_mid_image {
  object-fit: cover;
  object-position: 50% 100%;
  width: 100%;
  min-height: 25rem;
  position: absolute;
  top: -90px;
  overflow: hidden;
}

.blue_block {
  background-color: var(--main-colours--midnight-blue);
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  height: auto;
  min-height: 25rem;
  max-height: 30rem;
  padding: 1rem 1.5rem;
  display: flex;
}

.blue_block.block_max {
  min-height: 30rem;
}

.blue_block.bb-full {
  min-height: auto;
  max-height: none;
}

.blue_block.no-f-h {
  min-height: auto;
}

.blue_block_grid_six {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.blue_block_title {
  padding-top: 0;
  padding-bottom: 0;
}

.stem_outro_text_wrap {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-height: 28.5rem;
  max-height: 30rem;
  padding-left: 2rem;
  padding-right: 2rem;
  display: flex;
}

.stem_outro_text_wrap.slide-right {
  justify-content: flex-start;
}

.stem_dev_os_image_wrap {
  width: 100%;
  min-height: 21rem;
  position: static;
}

.stem_dev_os_image {
  object-fit: cover;
  width: 100%;
  min-height: 21rem;
  position: absolute;
  top: -100px;
}

.multisport_intro_content {
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
  min-height: 30rem;
  max-height: 60rem;
  padding-left: 2rem;
  padding-right: 4rem;
  display: flex;
}

.multisport_intro_image_wrap {
  width: 100%;
  min-height: 30rem;
  max-height: 60rem;
  overflow: hidden;
}

.large-paragraph {
  font-size: 2.5rem;
  line-height: 2.6rem;
}

.large-paragraph.is_shakes {
  color: var(--main-colours--shakespeare);
}

.large-paragraph.is_shakes.cap-c-30 {
  width: auto;
  min-width: auto;
  max-width: 30ch;
}

.multisport_intro_image {
  object-fit: cover;
  width: auto;
  min-width: 15rem;
  max-width: 32rem;
  height: auto;
  min-height: 38rem;
  max-height: 60rem;
  overflow: hidden;
}

.multisport_outro_text_wrap {
  flex-direction: column;
  justify-content: center;
  min-height: 40rem;
  padding-left: 1.5rem;
  padding-right: 4.5rem;
  display: flex;
}

.multisport_outro_image_wrap {
  justify-content: center;
  align-items: center;
  min-height: 40rem;
  max-height: 40rem;
  padding: 2rem;
  display: flex;
  overflow: hidden;
}

.section_multisport_text_scroll {
  width: 100%;
  display: block;
  position: static;
}

.section_multisport_text_scroll.hidden {
  display: none;
}

.multisport_text_scroll_wrap {
  z-index: 5;
  width: 100%;
  min-height: 10rem;
  max-height: 10.5rem;
  position: relative;
  overflow: visible;
}

.banner_text_large {
  color: var(--main-colours--white);
  text-transform: uppercase;
  white-space: nowrap;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 9rem;
  font-weight: 300;
  line-height: 10.5rem;
}

.banner_text_large.is_burnt {
  z-index: 5;
  color: var(--main-colours--burnt-sienna);
  position: absolute;
  inset: -5vh 0% 0%;
  overflow: visible;
}

.multisport_outro_image {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  min-height: 30rem;
  overflow: hidden;
}

.hero_small {
  width: 100%;
  height: 40rem;
}

.section_activities {
  width: 100%;
}

.travel_intro_text_wrap {
  flex-direction: column;
  display: flex;
}

.travel_intro_icon_text {
  align-items: center;
  display: flex;
}

.travel_intro_text {
  padding-top: 1rem;
  padding-left: 1.5rem;
}

.travel_intro_icon {
  min-width: 10rem;
  min-height: 10rem;
  max-height: 10rem;
}

.travel_icon {
  color: var(--main-colours--silver-tree);
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.travel_intro_image_wrap {
  width: 100%;
  min-width: 34.5rem;
  min-height: 22.5rem;
  overflow: hidden;
}

.travel_intro_image {
  object-fit: cover;
  width: 100%;
  min-width: 30rem;
  max-width: 33rem;
  min-height: 22.5rem;
  max-height: 22.5rem;
  overflow: hidden;
}

.travel_slide_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.travel_summer_text_wrap {
  flex-direction: column;
  justify-content: center;
  padding-left: 2rem;
  padding-right: 3.75rem;
  display: flex;
}

.image-skew-left {
  transform: rotate(-5deg);
}

.travel_summer_image {
  border: .19rem none var(--accent-colours--morning-glory);
  object-fit: cover;
  width: 100%;
  max-width: 28rem;
  min-height: 15rem;
  max-height: 20rem;
}

.blue_block_grid_ten {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.travel_point_icon {
  width: 6rem;
  height: 6.2rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.travel-_point_layout {
  flex-direction: column;
  justify-content: center;
  width: 100%;
  min-height: 8rem;
  display: flex;
}

.section_boarding_start {
  position: relative;
}

.boarding_start_icon_text {
  justify-content: space-between;
}

.upscale-paragraph {
  font-size: 1.9rem;
  line-height: 2.2rem;
}

.boarding_point {
  flex-direction: column;
  justify-content: center;
  display: flex;
}

.boarding_point_icon {
  min-width: 6rem;
  min-height: 6rem;
  max-height: 6rem;
  margin-left: auto;
  margin-right: auto;
}

.boarding_point_text {
  margin-left: auto;
  margin-right: auto;
}

.boarding_start_icon_grid {
  grid-column-gap: 2rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.boarding_start_image_wrap {
  min-height: 33rem;
  margin-left: 3rem;
  margin-right: 3rem;
}

.boarding_start_image {
  object-fit: cover;
  object-position: 50% 100%;
  width: 100%;
  height: 100%;
  min-height: 33rem;
  overflow: hidden;
}

.pastoral_care_image_wrap {
  max-width: 25rem;
  position: relative;
}

.pastoral_care_image {
  border: .19rem solid var(--main-colours--white);
  width: 100%;
  max-height: 20rem;
}

.section_boarding_outro {
  background-color: var(--main-colours--blue-bell);
}

.marketing_text_offset {
  margin-left: 3rem;
}

.marketing_offset_copy {
  font-family: mr-eaves-modern, sans-serif;
  font-size: 4.25rem;
  font-style: italic;
  font-weight: 200;
  line-height: 5rem;
}

.marketing_offset_copy.is_bluebell {
  color: var(--main-colours--blue-bell);
  font-size: 5rem;
  line-height: 5.5rem;
}

.boarding_outro_image_wrap {
  max-width: 25rem;
  margin-left: auto;
  position: relative;
}

.image-skew-right {
  overflow: hidden;
  transform: rotate(5deg);
}

.boarding_outro_image {
  border: .19rem none var(--accent-colours--snuff);
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.section_school_map {
  border-top: .125rem none var(--main-colours--shakespeare);
}

.container-medium-small {
  width: 100%;
  max-width: 58rem;
  margin-left: auto;
  margin-right: auto;
}

.section_facilities_intro {
  position: relative;
  overflow: hidden;
}

.facilities_intro_image_wrap {
  width: 100%;
  min-width: 35rem;
  height: 100%;
  min-height: 20rem;
  max-height: 25rem;
  margin-top: 10px;
  margin-left: auto;
  position: relative;
  top: 0;
  left: 0;
  overflow: visible;
}

.facilities_intro_image {
  border: .19rem none var(--accent-colours--morning-glory);
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 25rem;
  overflow: hidden;
}

.campus_point {
  flex-direction: column;
  justify-content: center;
  display: flex;
}

.campus_point_icon {
  min-width: 8rem;
  min-height: 8rem;
  max-height: 8rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.campus_point_text {
  margin-left: auto;
  margin-right: auto;
}

.school_map_point {
  cursor: pointer;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  max-width: 1.8rem;
  max-height: 1.6rem;
  margin-top: -25px;
  margin-left: -25px;
  padding: 10px;
  display: flex;
  position: absolute;
  top: 44%;
  left: 58%;
  overflow: visible;
}

.school_map_point.jmp01 {
  top: 52%;
  left: 50%;
}

.school_map_point.jmp02 {
  top: 56.5%;
  left: 58.4%;
}

.school_map_point.jmp02.w--current {
  left: 59%;
}

.school_map_point.jmp03 {
  top: 60%;
  left: 33%;
}

.school_map_point.jmp03.w--current {
  left: 20%;
}

.school_map_point.jmp04 {
  top: 44%;
  left: 58%;
}

.school_map_point.jmp05 {
  display: none;
  top: 76%;
  left: 47%;
}

.school_map_point.jmp06 {
  top: 46%;
  left: 17%;
}

.school_map_point.jmp07 {
  top: 57%;
  left: 20.8%;
}

.school_map_point.jmp08 {
  top: 45%;
  left: 67.5%;
}

.school_map_point.jmp09 {
  top: 49%;
  left: 63%;
}

.school_map_point.jmp10 {
  top: 69%;
  left: 24%;
}

.school_map_point.jmp11 {
  display: none;
  top: 37%;
  left: 58.5%;
}

.school_map_point.jmp12 {
  top: 34%;
  left: 65%;
}

.school_map_point.jmp13 {
  top: 25%;
  left: 21.5%;
}

.school_map_point.jmp14 {
  top: 40%;
  left: 27.5%;
}

.school_map_point.jmp15 {
  top: 62%;
  left: 21%;
}

.school_map_point.jmp16 {
  top: 42.5%;
  left: 72%;
}

.school_map_point.jmp17 {
  top: 63%;
  left: 47.5%;
}

.school_map_point.jmp18 {
  top: 67.5%;
  left: 33%;
}

.school_map_point.jmp19 {
  top: 16%;
  left: 28%;
}

.school_map_point.jmp20 {
  top: 50%;
  left: 36.5%;
}

.map_point {
  border: .17rem solid var(--main-colours--white);
  background-color: var(--main-colours--burnt-sienna);
  border-radius: 20px;
  min-width: 1.2rem;
  max-width: 1.2rem;
  min-height: 1.2rem;
  max-height: 1.2rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  position: static;
  inset: 50% 0% 0% -2%;
}

.map_point:active {
  background-color: var(--main-colours--white);
}

.section_facilities_meals {
  background-color: var(--accent-colours--morning-glory);
}

.facilities_meals_image_wrap {
  position: relative;
}

.facilities_meals_image {
  border: .19rem solid var(--accent-colours--morning-glory);
  object-fit: cover;
  width: 100%;
  max-width: 28rem;
  min-height: 15rem;
  max-height: 20rem;
}

.facilities_meals_text_layout {
  justify-content: center;
  width: 100%;
  max-width: 100%;
  min-height: 20rem;
  padding-left: 2rem;
  padding-right: 1rem;
  display: flex;
}

.facilities_meals_text_left {
  width: 50%;
  margin-right: 1rem;
}

.facilities_meals_text_right {
  width: 50%;
  margin-left: 1rem;
}

.section_facilities_hero {
  overflow: hidden;
}

.hero_tiny {
  width: 100%;
  height: 40rem;
}

.hero_layout_v {
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  height: 100%;
  display: flex;
}

.hero_title {
  width: 100%;
  min-height: 5rem;
  margin-top: 2rem;
  padding-left: 3rem;
}

.cover_bg_senior {
  text-shadow: 0 1px 1px #0003;
  background-image: linear-gradient(#00000040, #00000040), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656db02071068d4843c42c30_Front_Cover_Senior.webp");
  background-position: 0 0, 70% 0;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  background-attachment: scroll, fixed;
  width: 100%;
  height: 100%;
  min-height: 100%;
}

.centralise_text {
  flex-direction: column;
  justify-content: center;
  min-height: 27rem;
  display: flex;
}

.centralise_image {
  width: 100%;
  height: 100%;
  max-height: 25rem;
  position: relative;
  overflow: hidden;
}

.centralise_image.no-overflow {
  top: -25px;
  right: 0;
  overflow: visible;
}

.snr_welcome_intro_image {
  object-fit: cover;
  object-position: 50% 0%;
  width: 100%;
  height: 100%;
  min-height: 25rem;
  max-height: 25rem;
  overflow: hidden;
}

.centralise_text_small {
  flex-direction: column;
  justify-content: center;
  min-height: 15rem;
  display: flex;
}

.section_snr_welcome_outro.is_skeptic_section {
  background-color: var(--accent-colours--skeptic);
}

.snr_welcome_outro_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  min-height: 25rem;
  max-height: 30rem;
  overflow: hidden;
}

.snr_welcome_action_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 20rem;
}

.snr_welcome_action_img_wrap {
  z-index: 3;
  border: .5rem solid var(--utility-colours--translucent-image-border);
  overflow: visible;
}

.courses_list_snr {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.courses_list_snr.w--open {
  background-color: var(--main-colours--silver-tree);
  width: 100%;
  min-height: 15rem;
  max-height: 25rem;
  margin-left: -5px;
  padding-left: 0;
  overflow: visible;
}

.section_nav_pop_ups {
  display: none;
}

.contact_model {
  z-index: 55;
  border: .6rem solid var(--main-colours--white);
  background-color: var(--main-colours--burnt-sienna);
  width: 50rem;
  min-width: 45rem;
  max-width: 65rem;
  height: 45rem;
  min-height: 45rem;
  max-height: 50rem;
  margin-left: 15%;
  margin-right: 15%;
  padding: 1.5rem 4rem;
  display: none;
  position: fixed;
  top: 163px;
}

.contact_layout {
  display: flex;
}

.contact_column {
  flex-direction: column;
  min-width: 45%;
  max-width: 45%;
  height: 100%;
  min-height: 40rem;
  padding-right: 1rem;
  display: flex;
}

.enquire_column {
  flex-direction: column;
  min-width: 55%;
  max-width: 55%;
  height: 100%;
  min-height: 40rem;
  padding-left: 1rem;
  display: flex;
}

.enquire_title_wrap {
  justify-content: space-between;
  display: flex;
}

.enquire_form_wrap {
  margin-top: 1rem;
}

.register_card {
  border: .3rem solid var(--main-colours--white);
  background-color: var(--main-colours--shakespeare);
  flex-direction: column;
  justify-content: space-around;
  width: 35rem;
  max-width: 35rem;
  height: 20rem;
  min-height: 20rem;
  max-height: 25rem;
  display: flex;
}

.form_sample {
  object-fit: cover;
  object-position: 50% 50%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

.contact_add_block {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 1rem;
  display: flex;
}

.contact_add_icon {
  border: .11rem solid var(--main-colours--white);
  width: 6rem;
  height: 6rem;
  display: flex;
}

.contact_address {
  padding-top: .8rem;
  padding-left: .8rem;
  font-style: normal;
}

.close-model {
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  position: relative;
}

.model-close {
  justify-content: flex-end;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
}

.close-mod {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 3.2rem;
  position: absolute;
  top: -15px;
  left: -5px;
}

.contact_phone_block {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 1rem;
  display: flex;
}

.contact_phone_icon {
  border: .11rem solid var(--main-colours--white);
  width: 6rem;
  height: 6rem;
  display: flex;
}

.contact_phone_details {
  align-items: center;
  padding-top: .8rem;
  padding-left: .8rem;
  display: flex;
}

.contact_email_block {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 1rem;
  display: flex;
}

.contact_email_icon {
  border: .11rem solid var(--main-colours--white);
  width: 6rem;
  min-width: 6rem;
  height: 6rem;
  min-height: 6rem;
  display: flex;
}

.contact_email_details {
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding-top: .8rem;
  padding-left: .8rem;
  display: flex;
}

.address_icon {
  width: 4rem;
  height: 4rem;
  margin: auto;
  display: block;
}

.phone_icon {
  width: 3rem;
  height: 4rem;
  margin: auto;
}

.email_icon {
  width: 4rem;
  height: 3rem;
  margin: auto;
}

.register_model {
  z-index: 50;
  margin-left: 0;
  margin-right: 0;
  display: none;
  position: fixed;
  top: 10.5%;
  left: 18%;
  right: auto;
}

.reg-point {
  position: absolute;
  top: 42%;
  left: -4.2%;
}

.register_card_header {
  justify-content: space-between;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.register_card_title {
  flex: 1;
}

.model-close-reg {
  flex: none;
  justify-content: flex-end;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
}

.close-model-reg {
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  position: relative;
}

.register_card_text, .register_card_contact {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.register_card_form {
  width: 95%;
  min-height: 5rem;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.register_card_form_link {
  background-color: var(--main-colours--white);
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-left: .5rem;
  padding-right: .5rem;
  text-decoration: none;
  display: flex;
}

.register_card_file_icon, .register_card_download_icon {
  flex: none;
}

.register_card_file_name {
  flex: 1;
  padding-left: 1rem;
  padding-right: 1rem;
}

.reg_card_file {
  width: 3rem;
  height: 4rem;
}

.reg_card_download {
  width: 3rem;
  height: 4rem;
  margin-left: auto;
  margin-right: auto;
}

.is_body_small {
  font-size: 1.25rem;
  text-decoration: none;
}

.is_body_small.no-pad {
  margin-bottom: 0;
  font-size: 1.25rem;
  line-height: 1.4rem;
}

.close-mod-reg {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 3.2rem;
  position: absolute;
  left: -30px;
}

.nav-icon-mob {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 4rem;
}

.course_cookery_bg_vid, .course_stem_bg_vid {
  z-index: 0;
  min-height: 40rem;
}

.enquire_form {
  background-color: var(--main-colours--white);
  padding: .8rem;
}

.field-label {
  margin-bottom: 5px;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.2rem;
  font-weight: 300;
}

.is_body_tiny {
  font-size: .82rem;
  line-height: 1rem;
}

.form {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.submit_wrap {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.stem_dev_os_image_wrap_m {
  width: 100%;
  min-height: 21rem;
  display: none;
  position: static;
}

.stem_dev_os_image_m {
  object-fit: cover;
  width: 100%;
  min-height: 21rem;
  position: absolute;
  top: -100px;
}

.course_vid_model {
  z-index: 55;
  border: .6rem solid var(--main-colours--white);
  background-color: var(--main-colours--shakespeare);
  min-width: 48rem;
  max-width: 65rem;
  min-height: 22rem;
  max-height: 45rem;
  margin-left: 2%;
  margin-right: 6%;
  padding: 1rem 2rem;
  display: none;
  position: fixed;
  top: 10rem;
  left: 10rem;
}

.course_vid_model_layout {
  flex-direction: column;
  display: flex;
}

.course_vid_model_close_wrap {
  justify-content: flex-end;
  display: flex;
}

.vid-model-close {
  justify-content: flex-end;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
}

.close-vid-model {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: static;
}

.close-vid {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 3.2rem;
  position: static;
  top: -15px;
  left: -5px;
}

.close-vid-text {
  color: var(--main-colours--white);
  letter-spacing: 8px;
  text-transform: uppercase;
  padding-right: 1rem;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.85rem;
  font-weight: 200;
  line-height: 2.1rem;
  text-decoration: none;
}

.course_video_english, .course_video_academic {
  object-fit: contain;
  width: 100%;
  height: auto;
  padding-top: 1rem;
  overflow: hidden;
}

.course_test_model {
  z-index: 57;
  width: auto;
  min-height: 20rem;
  margin-left: auto;
  margin-right: auto;
  display: none;
  position: fixed;
  top: 10rem;
  left: 10rem;
  right: auto;
}

.course_test_model.is_shakes {
  background-color: var(--main-colours--shakespeare);
  min-height: 20rem;
  display: none;
  left: 10rem;
}

.course_test_model.is_bluebell {
  background-color: var(--main-colours--blue-bell);
  display: none;
}

.course_test_model.is_silvertree {
  background-color: var(--main-colours--silver-tree);
  display: none;
}

.course_test_model.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
  display: none;
}

.course_test_model_layout {
  flex-direction: column;
  display: flex;
}

.course_test_model_close_wrap {
  justify-content: flex-end;
  padding-top: .5rem;
  padding-left: .5rem;
  padding-right: .5rem;
  display: flex;
}

.test-model-close {
  justify-content: flex-end;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
}

.close-test-model {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: static;
}

.close-test-text {
  color: var(--main-colours--white);
  letter-spacing: 8px;
  text-transform: uppercase;
  padding-right: 1rem;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.85rem;
  font-weight: 200;
  line-height: 2.1rem;
  text-decoration: none;
}

.close-test {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 3.2rem;
  position: static;
  top: -15px;
  left: -5px;
}

.course_test_quote {
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--subheading-size);
  text-align: center;
  border-left-style: none;
  width: 36ch;
  max-width: 36ch;
  margin-top: 1rem;
  margin-left: auto;
  margin-right: auto;
  font-weight: 300;
  line-height: 2.5rem;
}

.course_test_info {
  color: var(--main-colours--midnight-blue);
  text-align: center;
  letter-spacing: 5px;
  text-transform: uppercase;
  margin-left: auto;
  margin-right: auto;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.9rem;
}

.course_time_modal {
  z-index: 55;
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
  background-color: #000c;
  width: 100%;
  min-width: 100vw;
  max-width: 100%;
  height: 100%;
  min-height: 100vh;
  max-height: 100%;
  display: none;
  position: fixed;
  inset: 0%;
}

.course_time_card {
  background-color: var(--main-colours--white);
  min-width: 30rem;
  max-width: 45rem;
  min-height: 40rem;
  max-height: 50rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1.5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  display: block;
  position: absolute;
  inset: 10% 0% auto;
}

.test_section {
  background-color: var(--main-colours--black);
  min-width: 100svw;
  min-height: 100svh;
  display: block;
}

.course_time_card_layout {
  flex-direction: column;
  width: 100%;
  height: 100%;
  display: block;
}

.course_time_card_header {
  flex: none;
  align-items: center;
  display: flex;
}

.course_time_card_title {
  flex: 1;
}

.course_time_card_close_wrap {
  flex: none;
}

.time-model-close {
  justify-content: flex-end;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
}

.close-time-model {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: static;
}

.close-time-text {
  color: var(--main-colours--midnight-blue);
  letter-spacing: 8px;
  text-transform: uppercase;
  padding-right: 1rem;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.85rem;
  font-weight: 200;
  line-height: 2.1rem;
  text-decoration: none;
}

.close-time {
  color: var(--main-colours--midnight-blue);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 3.2rem;
  position: static;
  top: -15px;
  left: -5px;
}

.course_time_card_table {
  flex: 1;
  margin-top: 1rem;
}

.jnr_cover_video_modal {
  z-index: 99;
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
  background-color: #000000a6;
  width: 100%;
  min-width: 100vw;
  max-width: 100%;
  height: 100%;
  min-height: 100vh;
  max-height: 100%;
  display: none;
  position: fixed;
  inset: 0%;
}

.jnr_cover_video_wrapper {
  border: .5rem solid var(--main-colours--malibu);
  flex-direction: column;
  min-width: 80%;
  max-width: 90%;
  min-height: 50%;
  max-height: 95%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1.5rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  display: flex;
  position: absolute;
  inset: 5.5% 0% auto;
}

.jnr_cover_video {
  object-fit: contain;
  width: 100%;
  height: auto;
  padding-top: 1rem;
  overflow: hidden;
}

.close-cover-model {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: static;
}

.close-cover-text {
  color: var(--main-colours--malibu);
  letter-spacing: 8px;
  text-transform: uppercase;
  padding-right: 1rem;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.85rem;
  font-weight: 200;
  line-height: 2.1rem;
  text-decoration: none;
}

.close-cover {
  color: var(--main-colours--malibu);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 3.2rem;
  position: static;
  top: -15px;
  left: -5px;
}

.cover-model-close {
  justify-content: flex-end;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
}

.jnr_cover_model_close_wrap {
  justify-content: flex-end;
  display: flex;
}

.cover_video_link_jnr {
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
}

.map_popout {
  z-index: 10;
  border: .2rem solid var(--main-colours--white);
  background-color: var(--main-colours--shakespeare);
  width: auto;
  min-width: 30rem;
  max-width: 30rem;
  height: auto;
  min-height: 20rem;
  max-height: 75rem;
  display: none;
  position: absolute;
  top: 0%;
}

.map_popout.jmp01, .map_popout.jmp02, .map_popout.jmp03 {
  display: none;
}

.map_popout.mp_right {
  inset: 0% 0% auto auto;
}

.map_popout.jmp04, .map_popout.jmp05, .map_popout.jmp06.mp_right, .map_popout.jmp07.mp_right, .map_popout.jmp08, .map_popout.jmp09, .map_popout.jmp10.mp_right, .map_popout.jmp11, .map_popout.jmp12, .map_popout.jmp13.mp_right, .map_popout.jmp14.mp_right, .map_popout.jmp15.mp_right, .map_popout.jmp16, .map_popout.jmp17.mp_right, .map_popout.jmp18.mp_right, .map_popout.jmp19.mp_right, .map_popout.jmp20.mp_right {
  display: none;
}

.map_popout_tri {
  max-height: 6rem;
  position: absolute;
  inset: 250px auto 0% -28px;
}

.map_popout_layout {
  width: 100%;
  height: 100%;
  padding: .8rem;
}

.map_popout_header {
  align-items: center;
  display: flex;
}

.map_popout_text {
  margin-left: auto;
  margin-right: auto;
  padding: .8rem .2rem;
}

.map_popout_image_wrap {
  width: 100%;
  height: auto;
  max-height: 21rem;
}

.map_popout_title {
  flex: 1;
  padding-left: .2rem;
  padding-right: .2rem;
}

.map_popout_closer {
  flex: none;
  align-self: flex-start;
}

.map_popout_paragraph {
  color: var(--main-colours--black);
}

.map_popout_heading {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 2rem;
}

.map_popout_image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 21rem;
  overflow: hidden;
}

.close_map_popout {
  color: var(--main-colours--white);
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 2rem;
  font-weight: 100;
  line-height: 2.5rem;
  position: static;
  top: -15px;
  left: -5px;
}

.map_popout_close {
  justify-content: flex-end;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
}

.closes_map_popout {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: static;
}

.nav-menu-mob-accord {
  overflow: visible;
}

.nav_mob_accordion_component {
  grid-column-gap: 0rem;
  grid-row-gap: 0rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.nav_mob_accordion_item_content {
  transition: max-height .2s;
  overflow: hidden;
}

.nav_mob_accordion_item_label {
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  text-transform: uppercase;
  font-weight: 400;
}

.nav_mob_accordion_item_arrow-wrapper {
  transition: transform .2s;
}

.nav_mob_accordion_item_arrow-wrapper.is-active-accordion {
  transform: rotate(180deg);
}

.nav_mob_accordion_item_icon {
  margin-right: 0;
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 1.125rem;
  position: relative;
}

.nav_mob_accordion_item_body {
  background-color: #fff;
  padding: 1rem 1.5rem;
}

.nav_mob_accordion_item_body.is_nav_menu {
  background-color: var(--main-colours--silver-tree);
}

.nav_mob_accordion_item_body.is_register {
  background-color: var(--main-colours--shakespeare);
}

.nav_mob_accordion_item_body.is_contact {
  background-color: var(--main-colours--burnt-sienna);
}

.image-10 {
  display: none;
}

.ts_arrow {
  object-fit: contain;
  object-position: 0% 0%;
  width: 100%;
  min-width: 15rem;
  height: 100%;
  min-height: 15rem;
  margin-top: -27px;
  margin-left: -38px;
  margin-right: 0;
  padding-left: 0;
  overflow: visible;
}

.nav_mob_accordion_item_label_wrap {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.nav_mob_accordion_item_label_icon {
  border: .125rem solid var(--main-colours--white);
  width: 3rem;
  min-width: 3rem;
  max-width: 3rem;
  height: 3rem;
  min-height: 3rem;
  max-height: 3rem;
  margin-right: 1rem;
}

.nav-icon-accord {
  color: var(--main-colours--white);
  text-align: center;
  margin: -2px auto auto;
  padding-top: 0;
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 2rem;
  font-weight: 100;
  line-height: 3rem;
}

.nav_mob_accordion_item_header_menu, .nav_mob_accordion_item_header_reg, .nav_mob_accordion_item_header_contact {
  grid-column-gap: 1px;
  grid-row-gap: 1px;
  background-color: var(--main-colours--midnight-blue);
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 1.5rem;
  display: flex;
}

.register_wrapper {
  flex-direction: column;
  justify-content: space-around;
  width: 80%;
  min-height: 20rem;
  max-height: 35rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.nav_mob_accordion_item_link {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  background-color: var(--main-colours--midnight-blue);
  cursor: pointer;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 1.5rem;
  text-decoration: none;
  display: flex;
}

.nav_mob_accordion_item_link:hover {
  background-color: var(--main-colours--malibu);
}

.fs_accordion-1_header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  cursor: pointer;
  background-color: #f5f5f5;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 1.5rem;
  display: flex;
}

.fs_accordion-1_header:focus-visible, .fs_accordion-1_header[data-wf-focus-visible] {
  outline-color: var(--utility-colours--accessible-components-dark-grey);
  outline-offset: 4px;
  outline-width: 2px;
  outline-style: solid;
}

.nav_mob_accordion_item_content_menu, .nav_mob_accordion_item_content_reg, .nav_mob_accordion_item_content_contact {
  transition: max-height .2s;
  overflow: hidden;
}

.trips_bg_video, .boarding_bg_video, .multisports_bg_video, .academic_bg_video {
  z-index: 0;
  min-height: 40rem;
}

.video_boarding {
  object-fit: contain;
  width: 100%;
  height: auto;
  padding-top: 1rem;
  overflow: hidden;
}

.jnr_course_video {
  z-index: 0;
  position: relative;
}

.video_trips {
  object-fit: contain;
  width: 100%;
  height: auto;
  padding-top: 1rem;
  overflow: hidden;
}

.course_intro_heading {
  flex: 1;
  width: auto;
  min-width: 37rem;
  max-width: 55rem;
  height: auto;
  min-height: 100%;
  padding-top: 3rem;
  padding-left: 3rem;
  padding-right: .2rem;
}

.course-intro-heading-style {
  font-family: var(--typography--heading-font);
  color: var(--main-colours--midnight-blue);
  text-transform: uppercase;
  width: auto;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 3.3vw;
  font-weight: 300;
  line-height: 5vh;
}

.course-intro-heading-style.is_white {
  color: var(--main-colours--white);
  margin-top: 10px;
  margin-bottom: 10px;
}

.school_brand {
  width: 4rem;
  height: 5rem;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.heading_right {
  width: 10%;
  min-width: 9rem;
  padding-top: 3rem;
}

.heading_intro_video {
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
}

.card_grid_container {
  width: 100%;
  height: auto;
}

.card_glance_grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.school_map_frame {
  position: relative;
}

.school_map_image {
  width: 100%;
  display: block;
}

.school_map_mobile {
  width: 200vw;
  max-width: 200vw;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
}

.school_map_mobile_frame {
  position: relative;
}

.section_school_map_mob {
  display: none;
}

.section_school_map_mob.show-all {
  display: block;
}

.school_map_point_mob {
  cursor: pointer;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  max-width: 1.8rem;
  max-height: 1.6rem;
  margin-top: -25px;
  margin-left: -25px;
  padding: 10px;
  display: flex;
  position: absolute;
  top: 50.5%;
  left: 47%;
  overflow: visible;
}

.map_popout_mob {
  border: .2rem solid var(--main-colours--white);
  background-color: var(--accent-colours--mandy);
  width: 30rem;
  min-width: 30rem;
  max-width: 40rem;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
}

.closes_map_popout_mob {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: static;
}

.flip-up-card {
  perspective: 1234px;
  cursor: pointer;
  justify-content: center;
  width: auto;
  min-width: 10rem;
  max-width: 40rem;
  height: auto;
  min-height: 16rem;
  max-height: 30rem;
  display: flex;
  position: relative;
}

.flip-up-card-front {
  background-color: var(--main-colours--midnight-blue);
  backface-visibility: hidden;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  padding: 1rem;
  display: block;
  position: absolute;
  inset: 0% 0% auto;
}

.flip-up-card-front.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
}

.flip-up-card-front.is_shakes {
  background-color: var(--main-colours--shakespeare);
}

.flip-up-card-front.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.flip-up-card-front.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.flip-up-card-back {
  background-color: var(--main-colours--midnight-blue);
  backface-visibility: hidden;
  transform-style: preserve-3d;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  padding: 1.5rem 1rem;
  position: absolute;
  inset: 0% 0% auto;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.flip-up-card-back.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
  transform-style: preserve-3d;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.flip-up-card-back.is_silvertree {
  background-color: var(--main-colours--silver-tree);
  transform-style: preserve-3d;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.flip-up-card-back.is_bluebell {
  background-color: var(--main-colours--blue-bell);
  transform-style: preserve-3d;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.up-front-layout {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.up-back-layout {
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.up-card-img {
  height: 11rem;
}

.backcard-text {
  height: 100%;
}

.backcard-text.is_white {
  color: var(--main-colours--white);
  text-align: center;
}

.front-card-heading {
  font-family: var(--typography--course-card-font);
  font-size: var(--typography--course-card-font-size);
  line-height: var(--typography--course-card-font-height);
}

.front-card-heading.is_white {
  text-align: center;
}

.clasrroom-teaching {
  width: auto;
  height: 11rem;
}

.english-teaching {
  width: 16rem;
  height: 11rem;
}

.back-card-heading {
  font-family: var(--typography--course-card-font);
  color: var(--main-colours--midnight-blue);
  font-size: var(--typography--course-card-font-size);
  line-height: var(--typography--course-card-font-height);
  text-align: center;
  margin-top: 0;
}

.back-card-heading.is_white {
  color: var(--main-colours--white);
}

.back-card-heading.is_shakes {
  color: var(--main-colours--shakespeare);
}

.course-study {
  width: 15rem;
  height: 9rem;
}

.excursions-point {
  width: 15rem;
  height: 10rem;
}

.lang-exchange {
  width: auto;
  height: 10rem;
}

.small-class-sizes {
  width: auto;
  height: 11rem;
}

.activty_target_w, .fin_coins, .healing_hands {
  width: auto;
  height: 11.5rem;
}

.tree_grows {
  color: #fff;
  width: auto;
  height: 11.5rem;
}

.lottie-animation-3 {
  width: auto;
  height: 11rem;
}

.up-card-big-text {
  justify-content: center;
  align-items: center;
  width: auto;
  height: 11rem;
  min-height: 5rem;
  display: flex;
}

.up-card-big-txt {
  color: var(--main-colours--white);
  font-family: trajan-sans-pro, sans-serif;
  font-size: var(--typography--scroll-heading-size);
  line-height: var(--typography--scroll-heading-size);
  margin-top: 0;
  margin-bottom: 0;
}

.swiper.swiper-loaction-top, .swiper.swiper-loaction-btm {
  z-index: 0;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 22rem;
  max-height: 30rem;
  margin-bottom: 20px;
  position: relative;
}

.swiper.swiper-travel {
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 20rem;
  max-height: 25rem;
  margin-bottom: 20px;
  overflow: hidden;
}

.swiper-wrapper {
  height: 100%;
  display: flex;
}

.swiper-slide {
  flex: none;
  width: auto;
  min-width: 30rem;
  max-width: 35rem;
  height: auto;
}

.swiper-slide.travel-slide {
  min-width: 20rem;
  max-width: 25rem;
}

.section_burnt {
  background-color: var(--main-colours--burnt-sienna);
  width: 100%;
  height: auto;
  overflow: hidden;
}

.section_burnt.auto-height {
  height: auto;
}

.section_sports_grid {
  overflow: hidden;
}

.sports_grid {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
  overflow: hidden;
}

.sports_block {
  background-color: var(--main-colours--midnight-blue);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: auto;
  min-width: 10rem;
  max-width: 13rem;
  height: auto;
  min-height: 12rem;
  max-height: 13rem;
  display: flex;
}

.sports_block.is_shakes {
  background-color: var(--main-colours--shakespeare);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.sports_block.is_silvertree {
  background-color: var(--main-colours--silver-tree);
  justify-content: center;
}

.sports_block.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.sports_heading_wrap {
  margin-top: 20px;
}

.section_tri_back_cover {
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
}

.tri_back_cover_layout {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: 100vh;
  max-height: 100%;
  display: flex;
}

.back_right_wrap {
  flex-direction: column;
  justify-content: space-around;
  width: 100%;
  min-height: 100%;
  display: flex;
}

.back_right_img_wrap {
  flex: 1;
  width: 100%;
  max-height: 80%;
}

.back_right_brand_wrap {
  background-color: var(--main-colours--midnight-blue);
  flex: 1;
  justify-content: flex-start;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  min-height: 15%;
  max-height: 20%;
  display: flex;
}

.back_left_wrap {
  background-color: var(--main-colours--shakespeare);
  flex-direction: column;
  width: 100%;
  min-height: 100%;
  padding: 3rem 1.5rem 1rem;
  display: flex;
}

.back_left_title_wrap {
  flex-direction: column;
  flex: 1;
  display: block;
}

.back_left_text {
  margin-top: 2.5rem;
}

.back_right_brand {
  justify-content: center;
  align-items: center;
  width: 40%;
  padding: .2rem;
  display: flex;
}

.back_right_address {
  flex-direction: column;
  justify-content: space-around;
  align-items: flex-start;
  width: 60%;
  padding: .2rem;
  display: flex;
}

.back_cover_logo {
  object-fit: cover;
  width: auto;
  max-width: 12rem;
  height: auto;
  margin: auto;
  display: block;
}

.back_right_img {
  object-fit: cover;
  object-position: 65% 72%;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
}

.back_cover_email_text, .back_cover_website_text, .back_cover_phone_text {
  flex: 1;
}

.bold-text {
  color: var(--main-colours--white);
}

.email_link {
  color: var(--main-colours--white);
  text-decoration: none;
}

.phone_link {
  text-decoration: none;
}

.web_link {
  color: var(--main-colours--white);
  text-decoration: none;
}

.address_block {
  flex: 0 auto;
  padding-top: .5rem;
  padding-left: .5rem;
}

.address {
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
}

.address.is_white {
  font-family: mr-eaves-modern, sans-serif;
  font-style: normal;
}

.phone_block {
  flex: 0 auto;
  width: 100%;
  padding-top: .5rem;
  padding-left: .5rem;
}

.phone_numbers.is_white {
  font-family: mr-eaves-sans, sans-serif;
  font-size: 1.1rem;
  font-style: normal;
  font-weight: 400;
}

.course_card {
  cursor: pointer;
  flex-direction: column;
  justify-content: space-between;
  width: auto;
  min-width: auto;
  max-width: none;
  height: auto;
  min-height: 15rem;
  max-height: 25rem;
  display: block;
  position: relative;
}

.course_card.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.course_card.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
}

.course_card.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.course_card.is_shakes {
  background-color: var(--main-colours--shakespeare);
}

.course_card_front {
  backface-visibility: hidden;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.course_card_back {
  backface-visibility: hidden;
  transform-style: preserve-3d;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 25rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1.5rem 1rem;
  display: flex;
  position: absolute;
  inset: 0% 0% auto;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.card_image {
  width: 100%;
  height: auto;
  min-height: 15rem;
  max-height: 90%;
  overflow: hidden;
}

.card_title {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: 3.5rem;
  max-height: 5rem;
  display: flex;
}

.course_card_text {
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  font-weight: 300;
}

.image-12 {
  object-fit: cover;
  object-position: 50% 0%;
  width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 21rem;
}

.school_map_image_mob {
  width: 100%;
  display: block;
}

.video_card {
  width: 100%;
  min-height: 30rem;
  max-height: 35rem;
}

.video_card_layout {
  justify-content: center;
  align-items: stretch;
  width: 100%;
  height: 100%;
  display: flex;
}

.video_card_button {
  z-index: 0;
  flex: none;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 8rem;
  height: 8rem;
  margin: auto;
  display: flex;
  position: relative;
}

.video_card_play {
  text-align: center;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  display: flex;
  position: absolute;
}

.video_card_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65b21f6702f6fed721128334_coursedf_vid_bg.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 30rem;
  max-height: 35rem;
  display: flex;
}

.video_play {
  color: #fff;
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 8rem;
  font-weight: 100;
  line-height: 8rem;
  text-decoration: none;
}

.section_buttons {
  margin-bottom: 2rem;
}

.down-page-link {
  background-color: var(--main-colours--burnt-sienna);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  text-decoration: none;
  display: flex;
}

.down-page-link.is_white {
  background-color: var(--main-colours--white);
}

.down-page-link.is_white_midnight {
  background-color: var(--main-colours--white);
  border: .3rem solid #000;
}

.down-icon {
  color: var(--main-colours--white);
  margin-left: auto;
  margin-right: auto;
  font-family: MATERIAL ICONS ROUND, sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 2.8rem;
  text-decoration: none;
}

.down-icon.is_midnight {
  color: var(--main-colours--midnight-blue);
}

.hero_heading_button {
  flex: none;
  align-self: flex-start;
  padding-top: .25rem;
}

.course_card_button {
  flex: none;
  justify-content: center;
  align-items: center;
  display: flex;
}

.course_card_heading {
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--course-card-font-size);
  line-height: var(--typography--course-card-font-height);
  text-align: center;
  margin-top: 10px;
  font-weight: 700;
}

.course_card_heading.is_midnight {
  color: var(--main-colours--midnight-blue);
}

.course_card_back_heading {
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  font-weight: 700;
}

.back_card_heading {
  color: var(--main-colours--midnight-blue);
}

.course_card_btn {
  background-color: var(--main-colours--midnight-blue);
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  text-transform: capitalize;
  flex: none;
  font-weight: 200;
}

.course_card_view {
  perspective: 1234px;
  width: auto;
  height: auto;
}

.test_grid_card {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid_cards {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: auto;
  height: auto;
  display: grid;
  overflow: visible;
}

.course_intro_video_mob {
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
  display: none;
}

.section_cooking_intro {
  width: 100%;
  height: auto;
  position: relative;
}

.mixing_bowl {
  width: auto;
  min-width: 10rem;
  max-width: 15rem;
  height: auto;
  min-height: 10rem;
  max-height: 15rem;
  position: absolute;
  inset: 2% 0% 0% 85%;
}

.price_card {
  background-color: var(--main-colours--midnight-blue);
  border-radius: 25px;
  justify-content: center;
  align-items: center;
  width: auto;
  min-width: 10rem;
  max-width: 25rem;
  height: auto;
  min-height: 10rem;
  max-height: 25rem;
  display: flex;
  overflow: hidden;
}

.price_card_layout {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 95%;
  min-width: 15rem;
  height: 100%;
  min-height: 15rem;
  display: flex;
}

.div-block-6 {
  margin-left: 54px;
}

.pc_numeric {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-direction: column;
  flex: 1;
  align-self: center;
  display: flex;
}

.pc_number {
  flex: none;
  align-self: center;
  width: auto;
  min-width: 4rem;
  max-width: 8rem;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
}

.pc_number.is_pc3 {
  align-self: center;
  overflow: visible;
}

.pc_info {
  text-align: center;
  flex-direction: column;
  flex: 1;
  align-self: center;
  display: flex;
}

.pc_date {
  padding-bottom: .5rem;
}

.pc_heading {
  color: var(--main-colours--white);
  text-transform: uppercase;
  margin-top: 5px;
  margin-bottom: 5px;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.5rem;
  line-height: 3rem;
}

.pc_no {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: 17rem;
  font-weight: 700;
  line-height: 9.7rem;
}

.pc_no.is_silvertree {
  color: var(--main-colours--silver-tree);
}

.pc_no.is_bluebell {
  color: var(--main-colours--blue-bell);
}

.pc_no.is_burnt {
  color: var(--main-colours--burnt-sienna);
}

.pc_no.is_shakes {
  color: var(--main-colours--shakespeare);
}

.pc_date_text {
  color: var(--main-colours--white);
  font-size: 1.275rem;
  font-weight: 700;
  line-height: 1.3rem;
}

.pc_date_text.is_silvertree {
  color: var(--main-colours--silver-tree);
}

.pc_date_text.is_bluebell {
  color: var(--main-colours--blue-bell);
}

.pc_date_text.is_burnt {
  color: var(--main-colours--burnt-sienna);
}

.pc_date_text.is_shakes {
  color: var(--main-colours--shakespeare);
}

.pc_duration {
  color: var(--utility-colours--accessible-components-dark-grey);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-height);
  line-height: var(--typography--body-font-height);
  font-weight: 400;
}

.pc_age_range, .pc_fees {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  font-weight: 700;
}

.pricing_grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.is_silvertree {
  color: var(--main-colours--silver-tree);
}

.section_welcome_outro.is_silvertree_sect {
  background-color: var(--main-colours--silver-tree);
}

.section_wrapper.is_shakes_sect {
  background-color: var(--main-colours--shakespeare);
}

.section_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65b6562faef99f67e01057fb_STEM_GOp12Mid.svg");
  background-position: -1% 30%;
  background-repeat: no-repeat;
  background-size: 700px;
  background-attachment: scroll;
}

.image-outframe {
  border: .5rem solid var(--main-colours--midnight-blue);
  width: auto;
  min-width: 100%;
  height: auto;
  min-height: 100%;
  position: absolute;
  inset: 0% 0% auto;
  transform: rotate(-4deg);
}

.image-outframe.outframe_cookery {
  border-color: var(--main-colours--silver-tree);
  min-width: auto;
  max-width: 20rem;
  min-height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.image-outframe.outframe_provision {
  height: 100%;
  min-height: 15rem;
  max-height: 20rem;
}

.image-outframe.outframe_provision.is_morning {
  border-color: var(--accent-colours--morning-glory);
}

.image-outframe.outframe_sport {
  border-color: var(--main-colours--burnt-sienna);
  width: 100%;
  min-width: auto;
  max-width: 32.5rem;
  height: auto;
  transform: rotate(-4deg);
}

.image-outframe.outframe_travel {
  border-color: var(--main-colours--silver-tree);
  min-width: 34rem;
  max-width: none;
  left: 2%;
}

.image-outframe.outframe_pastoral {
  width: 80%;
  min-width: auto;
  max-width: 22.8rem;
  margin-left: auto;
  margin-right: auto;
  transform: rotate(-4deg);
}

.image-outframe.outframe_more_travel {
  width: 28rem;
  min-width: 28rem;
}

.image-outframe.is_morning {
  border-color: var(--accent-colours--morning-glory);
}

.image-outframe.outframe_fbl {
  border-color: var(--main-colours--midnight-blue);
  min-width: auto;
  max-width: 20rem;
  min-height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.image-outframe.outframe_production {
  z-index: 3;
  min-width: auto;
  max-width: 25rem;
  min-height: 40rem;
  max-height: 100%;
  inset: 0 0% auto 0;
}

.image-outframe.outframe_tennis {
  width: 20rem;
  min-width: 25.5rem;
  margin-left: auto;
  margin-right: auto;
}

.image-outframe.outframe_fbl_intro {
  border-color: var(--main-colours--midnight-blue);
  min-width: auto;
  max-width: 32rem;
  min-height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.image-outframe.outframe_ap_intro {
  min-height: 23rem;
  margin-top: 2rem;
  top: 5%;
}

.animate_container {
  justify-content: center;
  align-items: center;
  display: flex;
}

.at_desk_rotate {
  max-width: 40%;
}

.course_outframe_image {
  min-height: 15rem;
  max-height: 20rem;
  position: relative;
}

.two_col_icon {
  position: absolute;
  inset: -23% 0 0 38%;
}

.section_welcome_intro {
  width: 100%;
  height: 100%;
  position: relative;
}

.section_welcome_action {
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 100%;
}

.ribbon {
  position: absolute;
  inset: 2% auto auto 81%;
}

.ribbon.hide-tablet {
  left: 88%;
}

.ribbon_icon {
  width: 7rem;
}

.two_cell_base {
  justify-content: space-between;
  width: 100%;
  max-height: 30rem;
  display: none;
}

.icon_lottie {
  flex: none;
  order: 1;
  margin-left: auto;
}

.section_sports_open {
  width: 100%;
  max-width: 100%;
  position: relative;
}

.basketball {
  position: absolute;
  inset: -6% auto auto 32%;
}

.basketball.hide-mobile-portrait.hide-mobile-landscape.hide-tablet {
  top: -1%;
  left: 28%;
}

.basketball_image {
  width: auto;
  height: 15rem;
}

.stem_dev_os_image_container {
  max-height: 22.4rem;
}

.ruler_pencil_icon {
  z-index: 2;
  width: 11rem;
  position: absolute;
  inset: -20% 0% auto 38%;
  overflow: hidden;
}

.ruler_pencil_icon.hide-mobile-portrait {
  top: 0%;
  left: 30%;
}

.flex_icons {
  justify-content: center;
  align-items: center;
  display: flex;
}

.stem_lottie_icon {
  flex: none;
  position: absolute;
  inset: -10px auto auto -25px;
  transform: rotate(18deg);
}

.lottie-animation-4 {
  width: 9rem;
}

.section_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.campus_intro_layout {
  flex-direction: column;
  width: 100%;
  height: auto;
  min-height: 25rem;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
}

.campus_point_columns {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex: 0 auto;
  justify-content: space-between;
  margin-right: auto;
  display: flex;
}

.campus_column {
  flex: 1;
}

.page_button_start {
  z-index: 61;
  background-color: var(--main-colours--silver-tree);
  cursor: pointer;
  border-top-left-radius: 1rem;
  border-bottom-left-radius: 1rem;
  flex: none;
  justify-content: space-between;
  align-items: center;
  width: auto;
  min-width: 2.5rem;
  max-width: 11rem;
  height: 3rem;
  min-height: 3rem;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: absolute;
  inset: 0% 0% 0% auto;
  overflow: hidden;
}

.page_button_start.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.page_right_start {
  font-family: var(--components--page-button-font);
  color: var(--main-colours--white);
  text-align: center;
  width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  font-size: 1.8rem;
  font-weight: 100;
  line-height: 2.2rem;
  display: block;
}

.page_start {
  color: var(--main-colours--white);
  text-transform: uppercase;
  padding-left: .5rem;
  padding-right: .5rem;
  font-family: trajan-sans-pro, sans-serif;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 2.2rem;
  text-decoration: none;
}

.block_heading {
  flex: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
  display: inline-block;
}

.block_heading.is_silvertree {
  background-color: var(--main-colours--silver-tree);
  pointer-events: auto;
}

.block_heading.align-center.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.block_heading.align-center.is_midnight.ext_block_pad {
  padding-left: 4rem;
  padding-right: 4rem;
}

.block_heading.align-center.is_midnight.hide-desktop {
  display: none;
}

.block_heading.is_shakes {
  background-color: var(--main-colours--shakespeare);
}

.block_heading.is_shakes.align-block-heading {
  align-self: start;
}

.block_heading.is_midnight {
  background-color: var(--main-colours--midnight-blue);
}

.block_heading.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
}

.block_heading.is_bluebell {
  background-color: var(--main-colours--blue-bell);
  background-color: #9c91c5;
  flex: 0 auto;
}

.heading_left_layout {
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  display: flex;
}

.heading_left {
  width: 90%;
  min-height: 20rem;
  padding-top: 5rem;
}

.campus_kandf {
  color: var(--main-colours--white);
  width: auto;
  max-width: 100%;
  height: 8rem;
}

.campus_kandf.hidden {
  color: var(--main-colours--white);
  width: 8rem;
  max-width: 100%;
  height: 8rem;
}

.flex-to-right {
  min-width: 40rem;
  margin-left: auto;
}

.flex-to-right.is_absolute {
  z-index: 10;
  min-height: 5rem;
  position: absolute;
  inset: 81% 5% 0% auto;
}

.container-xs {
  padding-left: 1rem;
  padding-right: 1rem;
  overflow: visible;
}

.flex-medium {
  justify-content: center;
  align-items: center;
  width: 95%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.is_quote_block_text {
  color: var(--main-colours--white);
  letter-spacing: 1px;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 4.3rem;
  font-style: italic;
  font-weight: 200;
  line-height: 4.8rem;
}

.is_quote_block_text.is_silvertree {
  color: var(--main-colours--silver-tree);
}

.is_quote_block_text.is_burnt {
  color: var(--main-colours--burnt-sienna);
}

.left_intro_wrapper {
  width: 75%;
  max-width: 80%;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
}

.left_intro_wrapper.slide-left.width-none {
  width: auto;
  max-width: 100%;
}

.sail_boat, .surfer, .fencing, .canoeing {
  color: var(--main-colours--silver-tree);
  display: none;
}

.karting {
  color: var(--main-colours--silver-tree);
}

.archery {
  color: var(--main-colours--silver-tree);
  display: none;
}

.high_ropes {
  color: var(--main-colours--silver-tree);
  max-width: none;
  max-height: 6.2rem;
  overflow: visible;
}

.climbing, .zorbing {
  color: var(--main-colours--silver-tree);
}

.boarding_house {
  position: absolute;
  inset: 0% auto auto 27%;
}

.boarding_house_image {
  width: auto;
  height: 12rem;
}

.title_quote_block {
  flex-direction: column;
  justify-content: space-between;
  display: flex;
}

.title_quote_top {
  margin-right: auto;
}

.title_quote_btm {
  margin-left: auto;
}

.home_from_home {
  color: var(--main-colours--midnight-blue);
  min-width: 6rem;
  height: 6rem;
}

.stay_well {
  color: var(--main-colours--midnight-blue);
  width: 6rem;
  height: 6rem;
}

.campus_arrows {
  color: var(--main-colours--white);
  height: 8rem;
}

.teaching_materials {
  min-width: 5.5rem;
  min-height: 5.5rem;
  margin-left: auto;
  margin-right: auto;
}

.insurance {
  min-width: 5.5rem;
  max-width: 100%;
  min-height: 5.5rem;
}

.certification {
  min-width: 5rem;
  min-height: 5rem;
  margin-left: auto;
  margin-right: auto;
}

.item_icon_lottie {
  width: 6.5rem;
  height: 5.5rem;
  margin-left: auto;
  margin-right: auto;
}

.trips {
  width: 6rem;
  height: 6rem;
}

.academic_icon_lottie {
  min-width: 100%;
  max-width: 100%;
}

.academic_point_icon_lottie {
  width: 10rem;
  height: 9rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.swim_lot {
  width: 13rem;
  height: 6.5rem;
  overflow: hidden;
}

.athletics_lot {
  width: 13rem;
  height: 6.5rem;
}

.basketball_lot {
  width: 12rem;
  height: 6.5rem;
}

.badminton_lot {
  width: 10rem;
  height: 6.5rem;
}

.hockey_lot {
  width: 13rem;
  height: 6.5rem;
}

.stem_lot {
  height: 6.8rem;
}

.stem_point_lot_icon {
  width: 10rem;
  height: 6.5rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.travel_point_lot_icon {
  width: 8rem;
  height: 6.2rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.archery_lot {
  width: 8rem;
}

.fencing_lot {
  height: 7rem;
}

.surf_lot {
  width: 8rem;
  height: 7rem;
}

.sailing_lot, .canoe_lot {
  height: 7rem;
}

.section_courses {
  overflow: visible;
}

.down-page-wrap {
  width: 4rem;
  height: 4rem;
  padding: .5rem;
}

.down-page-wrap.hide-mobile-landscape.hide-mobile-portrait.margin-left {
  margin-left: 1rem;
}

.section_course_desc {
  width: 100%;
  position: relative;
}

.speech_english {
  z-index: 2;
  width: 10rem;
  position: absolute;
  inset: 65% 15% auto auto;
}

.speech_english.hide-mobile-landscape.hide-mobile-portrait {
  top: 90%;
  left: -10%;
  right: auto;
}

.paragraph-27 {
  width: 27ch;
}

.paragraph-27.is_white {
  color: var(--main-colours--white);
}

.gps_icon {
  z-index: 5;
  width: 15rem;
  position: absolute;
  inset: 0% 4% auto auto;
}

.gps_icon.hide-mobile-landscape.hide-mobile-portrait {
  top: 20%;
  left: 75%;
  right: auto;
  overflow: hidden;
}

.wifi {
  width: 9rem;
  height: 9rem;
}

.teach_lessons {
  width: 9rem;
  height: 9rem;
  overflow: hidden;
}

.dine, .sways {
  width: 15rem;
  height: 11rem;
  overflow: hidden;
}

.yoga_lot, .rounders_lot {
  width: 13rem;
  height: 6.5rem;
}

.tennis_lot {
  width: 13rem;
  height: 6.5rem;
  margin-left: auto;
  margin-right: auto;
}

.wpolo_lot {
  width: 13rem;
  height: 6.5rem;
}

.boarding, .academic, .transfer {
  width: 5.5rem;
  min-width: 5.5rem;
  min-height: 5.5rem;
  margin-left: auto;
  margin-right: auto;
}

.cathedral_lot {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.zorbing_lot {
  width: 7.5rem;
  margin-left: auto;
  margin-right: auto;
}

.climbing_lot, .highropes_lot, .karting_lot {
  margin-left: auto;
  margin-right: auto;
}

.care_lot {
  max-width: 100%;
  height: 6.5rem;
  overflow: hidden;
}

.hparent_lot {
  max-width: 100%;
  height: 6.5rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.firstaid_lot {
  max-width: 100%;
  height: 8rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.homefhome_lot {
  max-width: 100%;
  height: 6rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.personal_lot {
  height: 7rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.speech_lot {
  height: 5rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.travel_amim {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.cal_lot {
  width: 12.5rem;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

.football_lot {
  width: 13rem;
  height: 6.5rem;
}

.tuition_lot {
  width: 5.5rem;
  min-width: 5.5rem;
  min-height: 5.5rem;
  overflow: hidden;
}

.flex-to-center {
  min-width: 40rem;
  margin-left: auto;
  margin-right: auto;
}

.course_intro_label {
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
}

.round_course_label {
  border: 2px solid var(--main-colours--white);
  background-color: var(--main-colours--midnight-blue);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 8rem;
  height: 8rem;
  margin-left: .5rem;
  margin-right: .5rem;
  display: flex;
  transform: rotate(10deg);
}

.round_course_label.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
}

.round_course_label.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.course_label_text {
  color: var(--main-colours--white);
  text-align: center;
  text-transform: uppercase;
  flex: 0 auto;
  margin: auto;
  padding-left: 10%;
  padding-right: 10%;
  font-family: mr-eaves-modern, sans-serif;
  font-size: calc(100% + .7vw);
  font-weight: 700;
  line-height: 1.85vh;
  display: block;
}

.section_course_start {
  width: 100%;
}

.section_banner_small {
  width: 100%;
  height: auto;
  min-height: auto;
  max-height: none;
}

.center_text_block {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.enrich_lot {
  width: 10rem;
  margin-left: auto;
  margin-right: auto;
}

.fbl_midpage_text_wrap {
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  min-height: 30rem;
  padding-left: 20px;
  padding-right: 1.8rem;
  display: flex;
}

.fbl_local_image {
  object-fit: cover;
  width: 100%;
  min-height: 30rem;
  max-height: 32rem;
  overflow: hidden;
}

.fbl_local_image_wrap {
  padding-left: 5px;
}

.section_fbl_local.is_skeptic_sect {
  background-color: var(--accent-colours--skeptic);
}

.section_fbl_intro {
  width: 100%;
  height: auto;
  position: relative;
}

.fbl_intro_image_wrap {
  flex-direction: column;
  justify-content: center;
  width: auto;
  height: auto;
  max-height: 30rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.fbl_intro_image_wrap.image-skew-left.hidden {
  display: none;
}

.fbl_intro_img {
  object-fit: contain;
  width: auto;
  max-width: 20rem;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.scroll_grid_icon {
  width: 100%;
  height: 100%;
}

.scroll_lot_icon {
  min-width: 10rem;
  min-height: 10rem;
}

.scroll_lot_icon.lot_max {
  max-width: 10rem;
  max-height: 10rem;
  margin-left: auto;
  margin-right: auto;
}

.acadmeic_outro_btm_img_wrap {
  z-index: 2;
  position: relative;
}

.academic_outro_btm_image {
  width: 100%;
  position: absolute;
  top: -180px;
  overflow: visible;
}

.performing_intro_content {
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
  min-width: 100%;
  min-height: 30rem;
  max-height: none;
  padding-left: 2rem;
  padding-right: 4rem;
  display: flex;
}

.section_performing_open {
  width: 100%;
  max-width: 100%;
  position: relative;
}

.performing_intro_image_wrap {
  width: 100%;
  min-width: 100%;
  height: auto;
  min-height: 30rem;
  max-height: none;
  overflow: hidden;
}

.performing_intro_image {
  object-fit: cover;
  width: 100%;
}

.performance_outro_text_wrap {
  flex-flow: column;
  place-content: flex-start center;
  align-items: flex-start;
  width: auto;
  min-width: auto;
  height: auto;
  min-height: auto;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.performance_outro_text_wrap.slide-left {
  padding-left: 2rem;
  padding-right: 2rem;
}

.performance_outro_image {
  object-fit: cover;
  width: 100%;
}

.section_productions.is_cinder {
  background-color: var(--accent-colours--cinderella);
}

.production_image_wrap {
  padding-left: 5px;
  position: relative;
}

.production_image_wrap.hide-mobile-landscape.hide-mobile-portrait {
  width: 100%;
  height: 100%;
  padding-left: 0;
  top: 3rem;
  left: 9%;
}

.production_image {
  z-index: 2;
  max-height: 45rem;
  position: absolute;
  top: -38px;
}

.production_image.image-skew-left {
  max-width: 25rem;
  max-height: 40rem;
  top: auto;
  left: auto;
}

.column {
  overflow: visible;
}

.production_image_wrap_mob {
  padding-left: 0;
  display: none;
}

.production_image_mob {
  z-index: 2;
  max-height: 45rem;
  position: absolute;
  top: -38px;
}

.section_tennis_outro.is_bluebell_sect {
  background-color: var(--main-colours--blue-bell);
}

.tennis_point_layout {
  flex-direction: row;
  justify-content: space-around;
  align-items: stretch;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
}

.tennis_point {
  flex-direction: column;
  justify-content: flex-start;
  max-width: 18rem;
  display: flex;
}

.tennis_point_text {
  text-align: center;
}

.tennis_intro_image_wrap {
  width: 100%;
  min-width: 100%;
}

.tennis_intro_image_container {
  width: 25rem;
  margin-left: auto;
  margin-right: auto;
}

.tennis_intro_image {
  object-fit: cover;
  width: auto;
}

.section_tennis_coaching.is_sect_snuffalt {
  background-color: var(--accent-colours--snuff-alt);
  min-height: 35rem;
}

.tennis_coaching_image_wrap {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/66e30d98759301303e14f0e4_LR%200794%2007May2024%20Moment%20Photography.jpg");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  align-items: flex-start;
  width: auto;
  min-width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: 35rem;
  max-height: 100%;
  display: flex;
}

.tennis_outro_image_wrap {
  width: 25rem;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.tennis_outro_image {
  object-fit: cover;
  width: 100%;
  position: absolute;
  inset: -10vh 0% auto;
}

.tennis_outro_label {
  z-index: 2;
  position: relative;
}

.course_outro_label {
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  inset: auto 0 -35rem auto;
}

.course_label_info_text {
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: var(--typography--body-font-size);
  line-height: var(--typography--body-font-height);
  text-align: center;
  text-transform: none;
  flex: 0 auto;
  margin: auto;
  padding-left: 10%;
  padding-right: 10%;
  font-weight: 700;
  display: block;
}

.round_course_label_large {
  border: 2px solid var(--main-colours--white);
  background-color: var(--main-colours--midnight-blue);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 12rem;
  height: 12rem;
  margin-left: .5rem;
  margin-right: .5rem;
  display: flex;
  transform: rotate(10deg);
}

.round_course_label_large.is_bluebell {
  background-color: var(--main-colours--blue-bell);
  align-items: flex-end;
}

.football_intro_layout {
  flex-direction: column;
  width: 100%;
  height: auto;
  min-height: 25rem;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
}

.section_football_start {
  position: relative;
  overflow: hidden;
}

.football_point_layout {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-direction: column;
  flex: 0 auto;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.football_row {
  flex: 1;
  justify-content: flex-start;
  align-items: center;
  width: auto;
  display: flex;
}

.football_point_icon {
  flex: 0 auto;
  min-width: 10rem;
  min-height: 8rem;
  max-height: 8rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.football_point {
  flex-direction: row;
  flex: 1;
  justify-content: flex-start;
  min-height: 8rem;
  display: flex;
}

.football_point_text {
  flex: 0 auto;
  margin-left: auto;
  margin-right: auto;
}

.paragraph-29 {
  width: 29ch;
}

.football_academy_lot {
  width: 9rem;
  height: 9rem;
}

.football_intro_image_wrap {
  width: 100%;
  min-width: 35rem;
  height: 100%;
  min-height: 20rem;
  max-height: 25rem;
  margin-top: 10px;
  margin-left: auto;
  position: relative;
  top: 0;
  left: 0;
  overflow: visible;
}

.football_intro_image {
  border: .19rem none var(--accent-colours--morning-glory);
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 25rem;
  overflow: hidden;
}

.section_football_focus {
  min-height: auto;
}

.football_focus_image {
  object-fit: cover;
  width: 100%;
}

.football_outro_label {
  z-index: 2;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.course_outro_label_static {
  justify-content: center;
  align-items: center;
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: static;
  inset: auto 0 -25rem auto;
}

.round_course_label_large_rev {
  border: 2px solid var(--main-colours--white);
  background-color: var(--main-colours--midnight-blue);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 12rem;
  height: 12rem;
  margin-left: .5rem;
  margin-right: .5rem;
  display: flex;
  transform: rotate(-10deg);
}

.round_course_label_large_rev.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.psp_intro_layout {
  flex-direction: column;
  width: 100%;
  height: auto;
  min-height: 25rem;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
}

.psp_intro_image {
  border: .19rem none var(--accent-colours--morning-glory);
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 25rem;
  overflow: hidden;
}

.pricing_grid_course {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.price_card_layout_course {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 95%;
  min-width: 15rem;
  height: 100%;
  min-height: 15rem;
  display: flex;
}

.pc_numeric_course {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-direction: row;
  flex: 1;
  align-self: center;
  display: flex;
}

.psp_callout_grid {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.psp_callout_grid.padding-custom1 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.psp_intro_image_wrap {
  width: 100%;
  min-width: 35rem;
  height: 100%;
  min-height: 20rem;
  max-height: 25rem;
  margin-top: 10px;
  margin-left: auto;
  position: relative;
  top: 0;
  left: 0;
  overflow: visible;
}

.psp_callout_block {
  flex-direction: column;
  justify-content: flex-start;
  display: flex;
}

.psp_callout_block.hidden {
  display: none;
}

.psp_callout_text {
  text-align: center;
  margin-top: 1rem;
  margin-left: auto;
  margin-right: auto;
}

.psp_callout_lot {
  max-width: 10rem;
  height: 10rem;
  max-height: 10rem;
  margin-left: auto;
  margin-right: auto;
}

.section_midnight {
  background-color: var(--main-colours--midnight-blue);
  width: 100%;
  height: auto;
  overflow: hidden;
}

.is_burnt {
  color: var(--main-colours--burnt-sienna);
}

.section_cinder {
  background-color: var(--accent-colours--cinderella);
}

.psp_outro_layout {
  flex-direction: column;
  display: flex;
}

.psp_outro_heading {
  margin-left: auto;
  margin-right: auto;
}

.psp_outro_points {
  justify-content: space-around;
  display: flex;
}

.psp_outro_point {
  flex-direction: column;
  display: flex;
}

.psp_outro_point_icon {
  margin-left: auto;
  margin-right: auto;
}

.psp_outro_point_text {
  text-align: center;
  width: 15rem;
  margin-left: auto;
  margin-right: auto;
}

.psp_outro_lot {
  width: 10rem;
  height: 10rem;
  max-height: 10rem;
}

.announce_layout {
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.announce_text {
  text-align: center;
  flex: 1;
}

.psp_outro_image {
  border: .19rem none var(--accent-colours--morning-glory);
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 25rem;
  overflow: hidden;
}

.heading-desc-small {
  color: var(--main-colours--white);
  padding-left: 2px;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2rem;
}

.image_card {
  object-fit: cover;
  object-position: 50% 0%;
  width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 21rem;
}

.video_card_snr_bg {
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/6632989609d468274d061b37_SNR-vid-SS.webp");
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  min-height: 30rem;
  max-height: 35rem;
  display: flex;
}

.snr_cover_video_modal {
  z-index: 55;
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
  background-color: #000000a6;
  width: 100%;
  min-width: 100vw;
  max-width: 100%;
  height: 100%;
  min-height: 100vh;
  max-height: 100%;
  display: none;
  position: fixed;
  inset: 0%;
}

.close-cover-snr-model {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: flex;
  position: static;
}

.tennis_intro {
  margin-top: 1rem;
  margin-left: 1rem;
  padding-left: .5rem;
}

.fbl_bg_video {
  z-index: 0;
  min-height: 40rem;
}

.academic_snr_bg_video {
  z-index: 1;
  min-height: 40rem;
  position: relative;
  inset: 0%;
}

.english_enrich_bg_video {
  z-index: 0;
  min-height: 40rem;
}

.performance_bg_video {
  z-index: 0;
  background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d8d3d93db8e756d686aca9_performing_hero.webp");
  background-position: 0 0;
  background-size: auto;
  min-height: 40rem;
}

.tennis_bg_video, .trips_snr_bg_video, .pastoral_snr_bg_video {
  z-index: 0;
  min-height: 40rem;
}

.blue_block_grid_line {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: minmax(auto, 1fr) minmax(auto, 1fr) minmax(auto, 1fr);
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  display: grid;
}

.map_cta_wrap {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: flex;
}

.section_academic_outro-_mob.is_bluebell_sect {
  background-color: var(--main-colours--blue-bell);
  display: none;
}

.paragraph-small {
  font-size: 1.375rem;
  line-height: 1.5rem;
}

.list {
  display: inline-flex;
}

.list.single-line-list {
  color: var(--main-colours--white);
  justify-content: space-around;
  margin-bottom: 0;
  padding-left: 2rem;
}

.single-line-list-item {
  margin-right: 1.5rem;
  padding-top: .5rem;
  padding-bottom: .5rem;
  padding-right: .5rem;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 2rem;
  font-weight: 300;
  line-height: 2rem;
}

.tt_table_cell {
  border-bottom: 2px solid var(--main-colours--white);
  border-left: 2px solid var(--main-colours--white);
  background-color: var(--utility-colours--table-background);
  text-align: center;
  white-space: pre-wrap;
  padding: .2rem;
  font-weight: 400;
}

.tt_table_cell.tt_cell_fullday {
  border-right: 2px none var(--main-colours--white);
  border-left: 2px solid var(--main-colours--white);
  background-color: var(--utility-colours--table-background);
  text-align: center;
  border-bottom-style: none;
}

.tt_table_cell.tt_first_row_cell {
  border-right: 2px solid var(--main-colours--white);
  border-bottom: 2px solid var(--main-colours--white);
  color: var(--main-colours--white);
  text-align: left;
  border-left-style: none;
  min-width: 6.4rem;
  max-width: 7rem;
  padding-left: .2rem;
  padding-right: .5rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4rem;
}

.tt_table_cell.tt_first_row_cell.is_bluebell {
  background-color: var(--main-colours--blue-bell);
  border-left-style: none;
  min-width: 6.6rem;
}

.tt_table_cell.tt_first_row_cell.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
}

.tt_table_cell.tt_first_row_cell.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.tt_table_cell.tt_first_row_cell.is_shakes {
  background-color: var(--main-colours--shakespeare);
}

.tt_table_cell.tt_last_row_first_cell {
  border-right: 2px solid var(--main-colours--white);
  border-bottom: 2px none var(--main-colours--white);
  color: var(--main-colours--white);
  text-align: left;
  border-left-style: none;
  padding-left: .2rem;
  padding-right: .5rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4rem;
}

.tt_table_cell.tt_last_row_first_cell.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.tt_table_cell.tt_last_row_first_cell.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.tt_table_cell.tt_last_row_first_cell.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
}

.tt_table_cell.tt_last_row_first_cell.is_shakes {
  background-color: var(--main-colours--shakespeare);
}

.tt_table_cell.is_cell_bold {
  font-weight: 700;
}

.tt_table_cell.is_last_row_cell {
  border-bottom-style: none;
}

.tt_table_row.tt_last_row {
  border-top: 2px none var(--main-colours--white);
}

.tt_table_body {
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.3rem;
}

.tt_table_header {
  border-left: 2px solid var(--main-colours--white);
  padding: .2rem 2rem;
}

.tt_table_header.tt_first_head_cell {
  border-right: 2px solid var(--main-colours--white);
  border-left-style: none;
  min-width: 6.6rem;
  max-width: 7rem;
  padding-bottom: 0;
}

.tt_table_header.tt_last_head_cell {
  border-left: 2px solid var(--main-colours--white);
}

.tt_table_head {
  border-bottom: 2px solid var(--main-colours--white);
  background-color: var(--main-colours--midnight-blue);
  color: var(--main-colours--white);
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.5rem;
}

.tt_table_head.is_burnt {
  background-color: var(--main-colours--burnt-sienna);
}

.tt_table_head.is_bluebell {
  border-bottom: 2px solid var(--main-colours--white);
  background-color: var(--main-colours--blue-bell);
}

.tt_table_head.is_silvertree {
  background-color: var(--main-colours--silver-tree);
}

.tt_table_head.is_shakes {
  background-color: var(--main-colours--shakespeare);
}

.tt_table_component {
  width: auto;
  max-width: 100%;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.course_tt_wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  margin: 15vh 1rem auto 11rem;
  display: flex;
}

.course_table_container {
  background-color: var(--main-colours--white);
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
}

.course_video_snr_english {
  object-fit: contain;
  width: 100%;
  height: auto;
  padding-top: 1rem;
  overflow: hidden;
}

.cell-paragraph {
  color: #333;
  margin-top: auto;
  margin-bottom: auto;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.3rem;
}

.video_snr_boarding, .video_snr_trips {
  object-fit: contain;
  width: 100%;
  height: auto;
  padding-top: 1rem;
  overflow: hidden;
}

.snr_courses_video {
  z-index: 0;
  position: relative;
}

.section_school_map_intro {
  background-color: var(--main-colours--burnt-sienna);
}

.section_enrich_outro.is_cinder {
  background-color: var(--accent-colours--cinderella);
}

.section_enrich_intro {
  display: flex;
}

.section_enrich_intro.hide-tablet-up {
  display: none;
}

.course_bg_image {
  z-index: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: 100%;
  position: absolute;
  overflow: hidden;
}

.image-12-1 {
  object-fit: cover;
  object-position: 50% 60%;
  width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 21rem;
}

.course_bg_video {
  z-index: 0;
  width: 100%;
  height: 100%;
}

.fbl_intro_alt_img {
  object-fit: contain;
  width: auto;
  max-width: 32rem;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.link {
  text-decoration: none;
}

.course_intro_heading_left {
  flex: 1;
  width: auto;
  min-width: 37rem;
  max-width: 55rem;
  height: auto;
  min-height: 100%;
  padding-top: 3rem;
  padding-left: 3rem;
  padding-right: .2rem;
}

.front-card-image {
  width: auto;
  height: 11rem;
  max-height: 11rem;
  position: relative;
}

.course_card_image {
  object-fit: cover;
  object-position: 50% 10%;
  width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 21rem;
}

.front-card-img {
  width: auto;
  max-width: 14rem;
  height: 11rem;
  max-height: 11rem;
  margin-left: auto;
  margin-right: auto;
  display: block;
  position: relative;
  overflow: hidden;
}

.close_map_popout-2 {
  color: #fff;
  font-family: MATERIAL ICONS OUTLINED, sans-serif;
  font-size: 2rem;
  font-weight: 100;
  line-height: 2.5rem;
  position: static;
  top: -15px;
  left: -5px;
}

.map_point-2 {
  background-color: #f08159;
  border: .17rem solid #fff;
  border-radius: 20px;
  min-width: 1.2rem;
  max-width: 1.2rem;
  min-height: 1.2rem;
  max-height: 1.2rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  position: static;
  inset: 50% 0% 0% -2%;
}

.map_point-2:active {
  background-color: #fff;
}

.map_popout_mob-2 {
  background-color: #ea504e;
  border: .2rem solid #fff;
  width: 30rem;
  min-width: 30rem;
  max-width: 40rem;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
}

.map_popout_paragraph-2 {
  color: #000;
}

.map_popout_heading-2 {
  color: #fff;
  font-family: mr-eaves-modern, sans-serif;
  font-size: 1.8rem;
  font-weight: 300;
  line-height: 2rem;
}

.map_wrap {
  z-index: 2;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  width: 100%;
  height: auto;
  max-height: 100%;
  position: relative;
}

.absolute-full {
  position: absolute;
  inset: 0%;
}

.map_dot {
  z-index: 5;
  border: 2px solid var(--main-colours--white);
  background-color: var(--main-colours--burnt-sienna);
  cursor: pointer;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  min-width: 1.2rem;
  max-width: 1.2rem;
  min-height: 1.2rem;
  max-height: 1.2rem;
  padding: 0;
  font-size: 0;
  line-height: 1.4rem;
  transition: font-size .2s;
  display: flex;
  position: absolute;
  inset: 0% auto auto 0%;
  transform: translate(-50%, -50%);
}

.map_dot:hover {
  font-size: .8rem;
}

.map_dot:active {
  background-color: var(--main-colours--white);
}

.school_map_dot {
  cursor: pointer;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  display: block;
}

.school_map_dot.jmp01 {
  top: 52%;
  left: 50%;
}

.school_map_dot.jmp02 {
  top: 56.5%;
  left: 58.4%;
}

.school_map_dot.jmp02.w--current {
  left: 59%;
}

.school_map_dot.jmp03 {
  top: 60%;
  left: 33%;
}

.school_map_dot.jmp03.w--current {
  left: 20%;
}

.school_map_dot.jmp04 {
  top: 44%;
  left: 58%;
}

.school_map_dot.jmp05 {
  display: none;
  top: 76%;
  left: 47%;
}

.school_map_dot.jmp06 {
  top: 46%;
  left: 17%;
}

.school_map_dot.jmp07 {
  top: 57%;
  left: 20.8%;
}

.school_map_dot.jmp08 {
  top: 45%;
  left: 67.5%;
}

.school_map_dot.jmp09 {
  top: 49%;
  left: 63%;
}

.school_map_dot.jmp10 {
  top: 69%;
  left: 24%;
}

.school_map_dot.jmp11 {
  display: none;
  top: 37%;
  left: 58.5%;
}

.school_map_dot.jmp12 {
  top: 34%;
  left: 65%;
}

.school_map_dot.jmp13 {
  top: 25%;
  left: 21.5%;
}

.school_map_dot.jmp14 {
  top: 40%;
  left: 27.5%;
}

.school_map_dot.jmp15 {
  top: 62%;
  left: 21%;
}

.school_map_dot.jmp16 {
  top: 42.5%;
  left: 72%;
}

.school_map_dot.jmp17 {
  top: 63%;
  left: 47.5%;
}

.school_map_dot.jmp18 {
  top: 67.5%;
  left: 33%;
}

.school_map_dot.jmp19 {
  top: 16%;
  left: 28%;
}

.school_map_dot.jmp20 {
  top: 50%;
  left: 36.5%;
}

.map_section {
  overflow: visible;
}

.map_tag {
  color: var(--main-colours--burnt-sienna);
  background-color: #ffffffb3;
  border-radius: .6em;
  flex: none;
  margin-bottom: 3.4rem;
  padding: .6em .8em;
  font-family: mr-eaves-modern, sans-serif;
  font-size: .8em;
  font-weight: 700;
  line-height: 1.3em;
  overflow: hidden;
}

.no-scroll {
  overflow: hidden;
}

.map_slide_out {
  z-index: 10;
  border: .2rem solid var(--main-colours--white);
  background-color: var(--main-colours--shakespeare);
  width: auto;
  min-width: 30rem;
  max-width: 30rem;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  display: none;
  position: absolute;
  top: 0%;
  left: 0%;
}

.map_slide_out.jmp01, .map_slide_out.jmp02, .map_slide_out.jmp03 {
  display: none;
}

.map_slide_out.mp_right {
  inset: 0% 0% auto auto;
}

.map_slide_out.jmp04, .map_slide_out.jmp05, .map_slide_out.jmp06.mp_right, .map_slide_out.jmp07.mp_right, .map_slide_out.jmp08, .map_slide_out.jmp09, .map_slide_out.jmp10.mp_right, .map_slide_out.jmp11, .map_slide_out.jmp12, .map_slide_out.jmp13.mp_right, .map_slide_out.jmp14.mp_right, .map_slide_out.jmp15.mp_right, .map_slide_out.jmp16, .map_slide_out.jmp17.mp_right, .map_slide_out.jmp18.mp_right, .map_slide_out.jmp19.mp_right, .map_slide_out.jmp20.mp_right {
  display: none;
}

.model-_video {
  z-index: 55;
  border: .6rem solid var(--main-colours--white);
  background-color: var(--main-colours--shakespeare);
  min-width: 48rem;
  max-width: 65rem;
  min-height: 22rem;
  max-height: 45rem;
  margin-left: 2%;
  margin-right: 6%;
  padding: 1rem 2rem;
  display: none;
  position: fixed;
  top: 10rem;
  left: 10rem;
}

.model_video_layout {
  flex-direction: column;
  display: flex;
}

.model_video_close_wrap {
  justify-content: flex-end;
  display: flex;
}

.section_activities_marquee {
  width: 100%;
}

.marquee {
  grid-column-gap: 1rem;
  grid-row-gap: 0rem;
  -webkit-user-select: none;
  user-select: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.marquee-content {
  grid-column-gap: 1rem;
  grid-row-gap: 0rem;
  flex: none;
  justify-content: space-around;
  width: max-content;
  min-width: 100%;
  display: flex;
}

.marquee-item-travel {
  flex: none;
  width: auto;
  min-width: 20rem;
  max-width: 25rem;
  height: auto;
  overflow: hidden;
}

.section_locations_marquee {
  padding-top: 2rem;
  padding-bottom: 2rem;
  display: flex;
}

.marquee-item-location {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex: none;
  justify-content: flex-start;
  width: auto;
  min-width: 30rem;
  max-width: 35rem;
  height: auto;
  display: flex;
  overflow: hidden;
}

.location_marq_img {
  object-fit: cover;
  object-position: 50% 100%;
  width: 100%;
  height: auto;
  overflow: hidden;
}

.collection-list {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex: none;
  align-items: baseline;
  display: flex;
}

.course_card_content {
  flex-flow: column;
  flex: 0 auto;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  margin: auto;
  display: flex;
  overflow: hidden;
}

.page_button_play {
  z-index: 61;
  background-color: var(--main-colours--silver-tree);
  cursor: pointer;
  border-top-left-radius: 1rem;
  border-bottom-left-radius: 1rem;
  flex: none;
  justify-content: space-between;
  align-items: center;
  width: auto;
  min-width: 2.5rem;
  max-width: 11rem;
  height: 3rem;
  min-height: 3rem;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  display: none;
  position: absolute;
  inset: 0% 0% 0% auto;
  overflow: hidden;
}

.page_button_play.is_bluebell {
  background-color: var(--main-colours--blue-bell);
}

.play_button_wrap-_cb {
  width: 6rem;
  height: 6rem;
  margin-left: auto;
  margin-right: auto;
}

.play_text_cb {
  margin-top: .5rem;
  margin-left: auto;
  margin-right: auto;
}

.nav-spacer {
  display: none;
}

.empty-state {
  background-color: #0000;
}

.course_bg_vid {
  z-index: 2;
  min-height: 40rem;
  position: absolute;
  inset: 0%;
}

.map_to_top {
  min-width: .8rem;
  min-height: .8rem;
}

@media screen and (min-width: 1280px) {
  p {
    font-size: var(--typography--body-font-size-up-1);
    line-height: var(--typography--body-font-height-up-1);
  }

  .course-card {
    height: 20rem;
  }

  .cc-back-layout {
    justify-content: center;
    position: absolute;
    inset: 0%;
    overflow: hidden;
  }

  .heading-style-h1.alt-h1 {
    text-align: left;
    font-size: 5.1rem;
    line-height: 5.8rem;
  }

  .heading-style-h1.is_blue {
    font-size: var(--typography--h1-size);
  }

  .bg_text {
    height: auto;
  }

  .cover_bg_junior {
    background-position: 50% 100%;
  }

  .hero_heading {
    width: 62.5rem;
  }

  .image_container {
    max-height: 35rem;
  }

  .banner_bg {
    background-position: 50% 100%;
  }

  .img-caption {
    bottom: 0%;
  }

  .course_bg.e-erich-bg {
    background-position: 50%;
  }

  .course_bg.football-bg {
    background-position: 0 0;
    background-size: auto 140%;
  }

  .course_bg.pre-session-bg {
    background-position: 50%;
  }

  .course_intro_buttons {
    min-width: 10rem;
  }

  .banner_text {
    font-size: 7.0831rem;
    line-height: 7.2rem;
  }

  .section_map_location {
    padding-left: 2rem;
  }

  .banner_text_large {
    font-size: 7.0831rem;
    line-height: 7.2rem;
  }

  .school_map_point.jmp02.w--current {
    left: 58%;
  }

  .school_map_point.jmp03.w--current {
    left: 25%;
  }

  .cover_bg_senior {
    background-image: linear-gradient(#00000040, #00000040), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656db02071068d4843c42c30_Front_Cover_Senior.webp");
    background-position: 0 0, 70% 0;
  }

  .snr_welcome_intro_image, .snr_welcome_outro_image {
    max-height: 35rem;
  }

  .contact_model {
    width: 60rem;
    margin-left: 20%;
    margin-right: 20%;
    display: none;
  }

  .contact_add_block {
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
  }

  .contact_address {
    padding-top: 0;
  }

  .contact_phone_block {
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
  }

  .contact_phone_details {
    padding-top: 0;
  }

  .contact_email_block {
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
  }

  .contact_email_details {
    padding-top: 0;
  }

  .register_model {
    left: 15%;
  }

  .course_vid_model {
    width: 60rem;
    margin-left: 20%;
    margin-right: 20%;
    display: none;
    left: auto;
    right: auto;
  }

  .course_test_model {
    margin-left: 20%;
    margin-right: 20%;
    display: block;
    left: auto;
    right: auto;
  }

  .course_time_card, .jnr_cover_video_wrapper {
    max-width: 50rem;
    max-height: 60rem;
  }

  .map_popout.jmp01, .map_popout.jmp03 {
    z-index: 2;
  }

  .course_intro_heading {
    flex: 1;
    max-width: 70rem;
  }

  .course-intro-heading-style {
    width: auto;
    height: auto;
    font-size: 3.75vw;
  }

  .course-intro-heading-style.is_white {
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .card_glance_grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .flip-up-card {
    min-height: 18rem;
  }

  .up-back-layout {
    margin-left: auto;
    margin-right: auto;
  }

  .backcard-text {
    font-size: 1.5rem;
    line-height: 1.65rem;
  }

  .back_right_img_wrap {
    height: 80vh;
  }

  .back_right_brand_wrap {
    height: 20vh;
  }

  .back_cover_logo {
    max-width: 12rem;
  }

  .course_card {
    min-width: 25rem;
  }

  .video_card, .video_card_bg {
    min-height: 35rem;
    max-height: 40rem;
  }

  .mixing_bowl {
    left: 80%;
  }

  .mixing_bowl.hide-mobile-landscape.hide-mobile-portrait {
    left: 86%;
  }

  .pricing_grid {
    grid-template-columns: minmax(15rem, 25rem) minmax(15rem, 25rem) minmax(15rem, 25rem);
  }

  .section_bg {
    background-position: 13% 30%;
  }

  .image-outframe.outframe_pastoral {
    width: 80%;
    min-width: 22.8rem;
    max-width: 27rem;
    min-height: 100%;
    max-height: none;
    transform: rotate(-4deg);
  }

  .two_col_icon {
    top: 6%;
    bottom: auto;
    right: auto;
  }

  .ribbon {
    left: 44%;
  }

  .basketball.hide-mobile-portrait.hide-mobile-landscape.hide-tablet {
    left: 34%;
  }

  .ruler_pencil_icon {
    left: 40%;
  }

  .ruler_pencil_icon.hide-mobile-portrait {
    left: 30%;
  }

  .page_button_start {
    width: auto;
  }

  .flex-to-right.is_absolute {
    top: 84%;
  }

  .boarding_house {
    left: 48%;
  }

  .boarding_house.hide-mobile-landscape.hide-mobile-portrait {
    left: 27%;
  }

  .performing_intro_image_wrap {
    max-width: none;
  }

  .performing_intro_image {
    display: block;
  }

  .production_image_wrap.hide-mobile-landscape.hide-mobile-portrait {
    top: .1rem;
  }

  .pricing_grid_course {
    grid-template-columns: minmax(15rem, 25rem) minmax(15rem, 25rem);
  }

  .video_card_snr_bg {
    min-height: 35rem;
    max-height: 40rem;
  }

  .blue_block_grid_line {
    grid-template-rows: auto;
    grid-template-columns: minmax(auto, 1fr) minmax(auto, 1fr) minmax(auto, 1fr) 1fr 1fr 1fr;
  }

  .paragraph-small {
    font-size: 1.475rem;
    line-height: 1.6rem;
  }

  .course_intro_heading_left {
    flex: 1;
    max-width: 70rem;
  }

  .map_dot:hover {
    font-size: .9rem;
  }

  .school_map_dot.jmp02.w--current {
    left: 58%;
  }

  .school_map_dot.jmp03.w--current {
    left: 25%;
  }

  .map_slide_out.jmp01, .map_slide_out.jmp03 {
    z-index: 2;
  }

  .model-_video {
    width: 60rem;
    margin-left: 20%;
    margin-right: 20%;
    display: none;
    left: auto;
    right: auto;
  }

  .page_button_play {
    width: auto;
  }
}

@media screen and (min-width: 1440px) {
  .course-card {
    height: 25rem;
  }

  .cc-front-image-wrap {
    height: 80%;
  }

  .cc-front-text-block {
    height: 15%;
  }

  .heading-style-h1.alt-h1 {
    text-align: left;
    font-size: 6rem;
    line-height: 7rem;
  }

  .bg_text {
    height: auto;
  }

  .hero_heading {
    width: 72rem;
  }

  .image_container {
    max-height: 36rem;
  }

  .banner_bg {
    background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d801e62c8afdd762ea319b_e_enrich_banner.webp");
    background-position: 50%;
    background-size: cover;
  }

  .course_bg.cookery_bg {
    background-position: 50% 38%;
  }

  .course_bg.e-erich-bg {
    background-position: 50%;
  }

  .course_bg.fbl_bg {
    background-position: 50% 38%;
  }

  .course_bg.stem_snr_bg {
    background-position: 50% 25%;
  }

  .course_bg.football-bg {
    background-position: 50% 0;
    background-size: 100%;
  }

  .course_bg.pre-session-bg {
    background-position: 50%;
  }

  .banner_scroll_text {
    padding-left: .5rem;
  }

  .banner_text {
    font-size: 7.8rem;
    line-height: 8.2rem;
  }

  .section_map_location {
    padding-left: 2rem;
  }

  .section_back_cover {
    display: none;
  }

  .multisport_intro_image_wrap {
    min-height: auto;
    max-height: 80rem;
  }

  .multisport_intro_image {
    min-width: 20rem;
    max-width: 50rem;
    max-height: 80rem;
    overflow: visible;
  }

  .banner_text_large {
    font-size: 7.8rem;
    line-height: 8.2rem;
  }

  .travel_intro_image_wrap {
    min-width: 0;
    min-height: 0;
    max-height: 22rem;
  }

  .travel_intro_image {
    min-height: auto;
  }

  .school_map_point.jmp02.w--current {
    left: 56%;
  }

  .school_map_point.jmp03.w--current {
    left: 29.5%;
  }

  .snr_welcome_intro_image, .snr_welcome_outro_image {
    max-height: 36rem;
  }

  .contact_model {
    margin-left: 25%;
    margin-right: 25%;
  }

  .register_model {
    left: 13.5%;
  }

  .course_vid_model, .course_test_model {
    margin-left: 25%;
    margin-right: 25%;
    left: auto;
    right: auto;
  }

  .jnr_cover_video_wrapper {
    top: 10%;
  }

  .course_intro_heading {
    flex: 1;
    min-width: 65rem;
    max-width: 95rem;
  }

  .course-intro-heading-style {
    font-size: var(--typography--h2-size);
    line-height: var(--typography--h1-height);
  }

  .flip-up-card {
    min-height: 18rem;
  }

  .backcard-text {
    font-size: 1.5rem;
    line-height: 1.7rem;
  }

  .sports_block {
    min-width: 15rem;
    max-width: 22rem;
    min-height: 15rem;
    max-height: 22rem;
  }

  .section_tri_back_cover {
    min-height: 100%;
    overflow: hidden;
  }

  .back_cover_logo {
    max-width: 14rem;
  }

  .test_grid_card, .grid_cards {
    grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr);
  }

  .mixing_bowl {
    left: 75%;
  }

  .mixing_bowl.hide-mobile-landscape.hide-mobile-portrait {
    left: 81%;
  }

  .price_card {
    max-width: 30rem;
  }

  .pc_numeric {
    flex-direction: row;
  }

  .pc_number {
    align-self: flex-end;
    margin-left: 0;
    margin-right: 0;
  }

  .pc_number.is_pc3 {
    align-self: flex-end;
  }

  .pc_info {
    text-align: left;
    padding-left: 24px;
  }

  .pc_heading {
    font-size: 2.4rem;
  }

  .pricing_grid {
    grid-template-columns: minmax(15rem, 30rem) minmax(15rem, 30rem) minmax(15rem, 30rem);
  }

  .section_bg {
    background-position: 29% 30%;
  }

  .image-outframe.outframe_sport {
    max-width: 48.8rem;
    transform: rotate(-4deg);
  }

  .image-outframe.outframe_travel {
    min-width: auto;
    max-width: 85%;
    min-height: 100%;
    max-height: 100%;
  }

  .image-outframe.outframe_pastoral {
    max-width: 27.1rem;
    transform: rotate(-4deg);
  }

  .image-outframe.outframe_production {
    max-width: 32rem;
    min-height: 51rem;
  }

  .two_col_icon {
    left: 39%;
  }

  .ribbon {
    left: 46%;
  }

  .ribbon.hide-tablet {
    left: 85%;
  }

  .basketball {
    top: -5%;
    left: 30%;
  }

  .basketball.hide-mobile-portrait.hide-mobile-landscape.hide-tablet {
    left: 36%;
  }

  .ruler_pencil_icon {
    left: 42%;
  }

  .ruler_pencil_icon.hide-mobile-portrait {
    left: 36%;
  }

  .flex-to-right.is_absolute {
    top: 84%;
  }

  .boarding_house {
    left: 48%;
  }

  .course_label_text {
    font-size: calc(100% + .5vw);
  }

  .section_banner_small {
    max-height: none;
  }

  .production_image_wrap.hide-mobile-landscape.hide-mobile-portrait {
    top: 19px;
  }

  .production_image.image-skew-left {
    max-width: 45rem;
    max-height: 50rem;
  }

  .pricing_grid_course {
    grid-template-columns: minmax(15rem, 30rem) minmax(15rem, 30rem);
  }

  .pc_numeric_course {
    flex-direction: row;
  }

  .image_card {
    object-position: 50% 50%;
  }

  .paragraph-small {
    font-size: 1.675rem;
    line-height: 1.8rem;
  }

  .course_intro_heading_left {
    flex: 1;
    min-width: 65rem;
    max-width: 95rem;
  }

  .course_card_image {
    object-position: 50% 15%;
  }

  .map_dot:hover {
    font-size: 1rem;
  }

  .school_map_dot.jmp02.w--current {
    left: 56%;
  }

  .school_map_dot.jmp03.w--current {
    left: 29.5%;
  }

  .model-_video {
    margin-left: 25%;
    margin-right: 25%;
    left: auto;
    right: auto;
  }
}

@media screen and (min-width: 1920px) {
  p {
    font-size: var(--typography--body-font-height-up-2);
    line-height: var(--typography--body-font-height-up-2);
  }

  .heading-style-h1.alt-h1 {
    text-align: left;
    font-size: 8.2rem;
    line-height: 9rem;
  }

  .bg_text {
    height: auto;
  }

  .bg_text.is_course {
    height: auto;
    max-height: 80rem;
    padding-top: 2rem;
  }

  .bg_text.is_course.alt_height {
    height: auto;
  }

  .hero {
    height: 60rem;
  }

  .hero_bg.is_intro {
    background-image: linear-gradient(#00000040, #00000040), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/655d2aa714c606dcfd29336b_DSCF0283.webp");
    background-position: 0 0, 50% 55%;
  }

  .hero_heading {
    width: 98.48rem;
    height: 21rem;
  }

  .two_col_layout {
    grid-template-rows: minmax(20rem, 35rem);
  }

  .image_container {
    object-position: 50% 60%;
    max-height: 40rem;
  }

  .paragraph-25 {
    width: 23ch;
  }

  .banner_bg {
    background-position: 50%;
    min-height: 100%;
  }

  .course_bg.cookery_bg {
    background-position: 50% 38%;
  }

  .course_bg.e-erich-bg {
    background-position: 50% 60%;
  }

  .course_bg.fbl_bg {
    background-position: 50% 38%;
  }

  .course_bg.stem_snr_bg {
    background-position: 50% 15%;
  }

  .course_bg.football-bg {
    background-position: 50% 0;
  }

  .course_bg.pre-session-bg {
    background-position: 50% 60%;
  }

  .left_circle.is_morning, .right_circle.is_shakes {
    width: 30rem;
    height: 30rem;
  }

  .banner_text {
    font-size: 10rem;
    line-height: 10.2rem;
  }

  .circle_text {
    font-size: var(--typography--body-font-size-up-2);
    line-height: var(--typography--body-font-height-up-2);
  }

  .multisport_intro_image_wrap {
    height: auto;
    max-height: none;
  }

  .multisport_intro_image {
    max-width: none;
    max-height: none;
  }

  .banner_text_large {
    font-size: 10rem;
    line-height: 10.2rem;
  }

  .pastoral_care_image {
    border-style: none;
  }

  .school_map_point.jmp02 {
    top: 56%;
    left: 58%;
  }

  .school_map_point.jmp02.w--current {
    left: 55%;
  }

  .school_map_point.jmp03.w--current {
    top: 58.5%;
    left: 33.5%;
  }

  .school_map_point.jmp05 {
    top: 75.5%;
    left: 46.5%;
  }

  .school_map_point.jmp15 {
    top: 61%;
    left: 20.5%;
  }

  .school_map_point.jmp20 {
    top: 50%;
    left: 36.3%;
  }

  .snr_welcome_intro_image, .snr_welcome_outro_image {
    object-position: 50% 60%;
    max-height: 40rem;
  }

  .register_model {
    left: 10.5%;
  }

  .course_vid_model, .course_test_model {
    left: 60px;
  }

  .course_time_card {
    width: auto;
    min-width: 70rem;
    max-width: 80rem;
    height: auto;
    min-height: 55rem;
    max-height: 70rem;
  }

  .jnr_cover_video_wrapper {
    top: 8%;
  }

  .course_intro_heading {
    min-width: 95rem;
    max-width: 140rem;
  }

  .card_glance_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .flip-up-card {
    min-height: 20rem;
  }

  .backcard-text {
    font-size: 1.7rem;
    line-height: 2rem;
  }

  .sports_block {
    min-width: 20rem;
    max-width: 25rem;
    min-height: 15rem;
    max-height: 20rem;
  }

  .back_right_img_wrap {
    height: 80vh;
  }

  .back_right_brand_wrap {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    justify-content: center;
    align-items: center;
    height: 20vh;
  }

  .back_left_title_wrap {
    max-width: 45rem;
  }

  .back_cover_logo {
    max-width: 15rem;
    max-height: 10rem;
    margin: 0;
  }

  .course_card {
    min-height: 30rem;
    max-height: 40rem;
  }

  .course_card_back {
    max-height: none;
  }

  .card_image {
    min-height: 25rem;
  }

  .image-12 {
    max-height: 30rem;
  }

  .video_card, .video_card_bg {
    min-height: 40rem;
    max-height: 50rem;
  }

  .mixing_bowl, .mixing_bowl.hide-mobile-landscape.hide-mobile-portrait {
    left: 73%;
  }

  .pc_heading {
    font-size: 3rem;
  }

  .section_bg {
    background-position: 28% 35%;
  }

  .image-outframe.outframe_sport {
    max-width: 48.8rem;
    transform: rotate(-4deg);
  }

  .image-outframe.outframe_pastoral {
    transform: rotate(-4deg);
  }

  .image-outframe.outframe_production {
    max-width: 35rem;
    min-height: 54.5rem;
  }

  .two_col_icon {
    inset: 3.5% auto auto 40%;
  }

  .ribbon {
    left: 47%;
  }

  .ribbon.hide-tablet {
    top: 5%;
    left: 80%;
  }

  .basketball {
    top: -4%;
  }

  .basketball.hide-mobile-portrait.hide-mobile-landscape.hide-tablet {
    left: 39%;
  }

  .ruler_pencil_icon {
    left: 45%;
  }

  .ruler_pencil_icon.hide-mobile-portrait {
    left: 38%;
  }

  .stem_lottie_icon {
    top: -10%;
  }

  .flex-to-right.is_absolute {
    top: 85%;
  }

  .boarding_house {
    left: 48%;
  }

  .speech_english {
    top: 60%;
    right: 20%;
  }

  .paragraph-27.is_white {
    width: 24ch;
  }

  .course_label_text {
    font-size: calc(100% + .5vw);
  }

  .section_banner_small {
    height: auto;
  }

  .academic_outro_btm_image {
    top: -145px;
  }

  .production_image_wrap.hide-mobile-landscape.hide-mobile-portrait {
    top: 13rem;
  }

  .production_image.image-skew-left {
    max-width: 48rem;
    max-height: 54rem;
  }

  .section_tennis_coaching.is_sect_snuffalt, .tennis_coaching_image_wrap {
    min-height: 40rem;
  }

  .pricing_grid_course {
    grid-template-columns: minmax(15rem, 30rem) minmax(15rem, 30rem);
  }

  .image_card {
    max-height: 30rem;
  }

  .video_card_snr_bg {
    min-height: 40rem;
    max-height: 50rem;
  }

  .image-12-1 {
    max-height: 30rem;
  }

  .course_intro_heading_left {
    min-width: 95rem;
    max-width: 140rem;
  }

  .course_card_image {
    max-height: 30rem;
  }

  .school_map_dot.jmp02 {
    top: 56%;
    left: 58%;
  }

  .school_map_dot.jmp02.w--current {
    left: 55%;
  }

  .school_map_dot.jmp03.w--current {
    top: 58.5%;
    left: 33.5%;
  }

  .school_map_dot.jmp05 {
    top: 75.5%;
    left: 46.5%;
  }

  .school_map_dot.jmp15 {
    top: 61%;
    left: 20.5%;
  }

  .school_map_dot.jmp20 {
    top: 50%;
    left: 36.3%;
  }

  .model-_video {
    left: 60px;
  }
}

@media screen and (max-width: 991px) {
  .course-card {
    width: 34rem;
    height: 25rem;
    margin-bottom: 2rem;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
  }

  .course-card-front {
    width: 35rem;
    height: 25rem;
  }

  .cc-front-image-wrap {
    height: 21rem;
  }

  .cc-front-img {
    object-position: 50% 4%;
  }

  .navbar {
    display: none;
  }

  .margin-xhuge {
    margin: 6rem;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .padding-section-medium {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .max-width-full-tablet {
    width: 100%;
    max-width: none;
  }

  .fs-styleguide_2-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .padding-xxlarge {
    padding: 4rem;
  }

  .fs-styleguide_4-col {
    grid-template-columns: 1fr;
  }

  .hide-tablet {
    display: none;
  }

  .padding-xhuge {
    padding: 6rem;
  }

  .container-large.hide-tablet-up {
    display: none;
  }

  .margin-xxhuge {
    margin: 8rem;
  }

  .margin-huge {
    margin: 5rem;
  }

  .fs-styleguide_section {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .margin-medium {
    margin: 1.5rem;
  }

  .margin-xxlarge {
    margin: 4rem;
  }

  .margin-xlarge {
    margin: 3rem;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-small.unhide-mobile-landscape, .padding-small.hide-tablet-up {
    display: none;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .heading-style-h3.is_white {
    margin-left: auto;
    margin-right: auto;
  }

  .fs-styleguide_3-col {
    grid-template-columns: 1fr;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .spacer-xhuge.desktop-only {
    display: none;
  }

  .padding-xlarge {
    padding: 3rem;
  }

  .padding-large {
    padding: 2.5rem;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .fs-styleguide_heading-medium {
    font-size: 3rem;
  }

  .padding-xxhuge {
    padding: 8rem;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .padding-medium {
    padding: 1.5rem;
  }

  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .fs-styleguide_1-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .padding-huge {
    padding: 5rem;
  }

  .margin-large {
    margin: 2.5rem;
  }

  .heading-style-h1.alt-h1 {
    font-size: 3.4rem;
    line-height: 4.2rem;
  }

  .navbar-mob {
    z-index: 20;
    background-color: var(--main-colours--midnight-blue);
    width: 100%;
    min-width: 100%;
    display: block;
    position: fixed;
    inset: 0% 0% auto;
    overflow: visible;
  }

  .navbar-mob.hidden {
    display: none;
  }

  .bg_text {
    height: auto;
  }

  .page_buttons {
    align-items: stretch;
    padding-bottom: 4.2rem;
    position: fixed;
    inset: auto 0% 0%;
  }

  .page_buttons.pb_cover {
    flex-flow: column;
    justify-content: flex-end;
    align-items: flex-end;
    max-height: 3rem;
    padding-bottom: 0;
  }

  .page_container {
    margin-left: 0;
    padding-top: 4.5rem;
  }

  .cover_bg_junior {
    background-position: 50%;
  }

  .cover_layout {
    flex-direction: column;
    align-items: center;
    height: 100%;
    min-height: 100%;
    max-height: none;
  }

  .cover_center_btm {
    flex: none;
    align-self: auto;
    width: 100%;
  }

  .cover_right_btm {
    width: 100%;
    min-height: 0;
    max-height: 40rem;
  }

  .cover_brand {
    width: 100%;
    min-width: 100%;
  }

  .nav-links {
    min-height: 35rem;
    max-height: 70rem;
    margin-top: 2%;
  }

  .nav-bar {
    display: none;
  }

  .course_table {
    min-width: auto;
  }

  .hero {
    height: 50rem;
  }

  .hero_heading {
    width: 42.7rem;
  }

  .two_col_layout {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: 40fr 40fr;
  }

  .is_quote_block {
    min-width: 40rem;
    margin-bottom: 1rem;
  }

  .image_container {
    max-height: 28rem;
  }

  .is_quote_text.is_silver_tree {
    text-align: center;
  }

  .courses_link {
    text-align: left;
  }

  .container_xl {
    max-width: 100%;
  }

  .img-caption {
    inset: auto 0% 18%;
  }

  .double_intro_text_block {
    padding-bottom: 1rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .right_sidebar_wrapper {
    overflow: hidden;
  }

  .right_sidebar_layout {
    flex-direction: column;
  }

  .sidebar_col_left {
    width: 100%;
    padding-top: 2rem;
  }

  .sidebar_col_right {
    width: 100%;
  }

  .section_cards {
    display: none;
  }

  .card_grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .course-card-inner {
    width: 35rem;
    height: 25rem;
  }

  .course_card_link {
    margin-left: auto;
    margin-right: auto;
  }

  .course_bg.academic_bg, .course_bg.academic_snr_bg, .course_bg.tennis_bg {
    background-position: 97%;
  }

  .course_intro_buttons {
    min-width: 10rem;
  }

  .video_sticker, .tests_sticker {
    width: 9rem;
  }

  .left_circle.is_morning, .right_circle.is_shakes {
    justify-content: center;
    align-items: center;
    width: auto;
    min-width: 22rem;
    max-width: 25rem;
    height: auto;
    min-height: 22rem;
    max-height: 25rem;
    display: flex;
  }

  .fees_section {
    margin-top: 2rem;
  }

  .provision_outro_image_wrap {
    min-height: auto;
  }

  .provision_outro_text_wrap {
    padding-right: 3.5rem;
  }

  .table_sticker {
    width: 9rem;
  }

  .academic_tall_img {
    object-position: 38% 50%;
  }

  .back_cover_layout {
    flex-direction: column;
    align-items: center;
    height: 100%;
    min-height: 100%;
    max-height: none;
  }

  .back_cover_wrapper {
    min-height: 36rem;
  }

  .back_cover_blue_block {
    max-height: 40rem;
  }

  .is_white.is_body_small {
    text-align: center;
  }

  .multisport_intro_content {
    min-height: 35rem;
    max-height: none;
  }

  .multisport_intro_image {
    width: 100%;
    min-width: 10rem;
  }

  .section_boarding_start {
    padding-left: .5rem;
  }

  .hero_tiny {
    height: 50rem;
  }

  .hero_title {
    max-width: 90%;
  }

  .school_logo {
    min-width: 2rem;
    min-height: 2.8rem;
    max-height: 2.8rem;
    margin: auto;
  }

  .brand {
    min-height: 4.5rem;
    padding: 12px 18px 10px;
    text-decoration: none;
  }

  .menu-button-mob {
    background-color: var(--main-colours--midnight-blue);
    padding: 12px 12px 10px;
    text-decoration: none;
    position: relative;
  }

  .menu-button-mob:hover, .menu-button-mob.w--open {
    background-color: var(--main-colours--silver-tree);
  }

  .nav-menu-mob {
    background-color: var(--main-colours--silver-tree);
    width: 100%;
    min-height: 55rem;
  }

  .snr_welcome_intro_image, .snr_welcome_outro_image {
    max-height: 28rem;
  }

  .contact_model {
    display: none;
  }

  .contact_layout {
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    margin-left: auto;
    margin-right: auto;
  }

  .contact_column {
    flex-direction: column;
    min-width: 90%;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
  }

  .enquire_column {
    min-width: 80%;
    max-width: 90%;
    min-height: 30rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
  }

  .contact_title {
    flex: 0 auto;
    margin-left: auto;
    margin-right: auto;
  }

  .contact_add_block, .contact_phone_block, .contact_email_block {
    flex-direction: column;
  }

  .register_card_form {
    width: 90%;
  }

  .nav-icon-mob {
    font-size: 2rem;
    line-height: 2.5rem;
  }

  .course_cookery_bg_vid {
    min-height: 40rem;
  }

  .stem_dev_os_image_wrap_m {
    display: none;
  }

  .course_vid_model {
    margin-left: auto;
    margin-right: auto;
    display: none;
    left: auto;
    right: auto;
  }

  .course_test_model {
    margin-left: auto;
    margin-right: auto;
    display: block;
    left: auto;
    right: auto;
  }

  .map_popout {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    overflow: visible;
  }

  .map_popout_image_wrap {
    min-width: 50%;
    max-width: 100%;
    min-height: 10rem;
    overflow: hidden;
  }

  .map_popout_image {
    object-fit: cover;
    max-height: 19rem;
    overflow: hidden;
  }

  .nav-menu-mob-accord {
    background-color: #c8c8c800;
    width: 100%;
    min-width: 100%;
    min-height: 55rem;
  }

  .nav_mob_accordion_component {
    width: 100%;
    display: block;
  }

  .nav_mob_accordion_item {
    width: 100%;
    overflow: visible;
  }

  .nav_mob_accordion_item.is_menu {
    overflow: hidden;
  }

  .nav_mob_accordion_item.is_register {
    overflow: visible;
  }

  .nav_mob_accordion_item_label {
    text-transform: uppercase;
    font-family: mr-eaves-modern, sans-serif;
    font-weight: 400;
  }

  .nav_mob_accordion_item_label.is_white {
    text-decoration: none;
  }

  .nav_mob_accordion_item_label_wrap {
    flex: none;
    text-decoration: none;
    display: flex;
  }

  .nav_mob_accordion_item_label_icon {
    border: .125rem solid var(--main-colours--white);
    flex: none;
    align-self: auto;
    width: 3rem;
    min-width: 3rem;
    max-width: 3rem;
    height: 3rem;
    min-height: 3rem;
    max-height: 3rem;
    margin-right: 1rem;
    text-decoration: none;
  }

  .nav-icon-accord {
    text-align: center;
    margin: -2px auto auto;
    padding-top: 0;
  }

  .nav_mob_accordion_item_header_contact {
    background-color: var(--main-colours--midnight-blue);
  }

  .nav_mob_accordion_item_link {
    width: 100%;
    text-decoration: none;
  }

  .mobile_navbar_layout {
    justify-content: space-between;
    align-items: center;
    margin-left: 1.5rem;
    margin-right: 1.5rem;
    display: flex;
    position: relative;
    overflow: hidden;
  }

  .mobile_navbar_menu {
    width: 100%;
    min-width: 100vw;
    min-height: 100vh;
    display: none;
    position: relative;
    overflow: visible;
  }

  .nav_mob_accordion_item_content_menu, .nav_mob_accordion_item_content_reg, .nav_mob_accordion_item_content_contact {
    overflow: visible;
  }

  .nav_lottie {
    width: 3rem;
    height: 3rem;
  }

  .course_intro_heading {
    min-width: 18rem;
    max-width: 58rem;
    padding-left: 0;
    padding-right: 0;
  }

  .course-intro-heading-style {
    font-size: 4.5vw;
    line-height: 6vh;
  }

  .heading_right {
    margin-left: auto;
    margin-right: auto;
  }

  .heading_intro_video {
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .school_map_frame, .section_school_map_mob.show-all {
    display: block;
  }

  .map_popout_mob {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    overflow: visible;
  }

  .flip-up-card {
    min-height: 17rem;
  }

  .swiper-slide {
    flex: 0 auto;
  }

  .sports_grid {
    grid-template-rows: auto auto auto auto auto;
    grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr);
    place-items: center;
  }

  .sports_block {
    width: 100%;
    min-width: 24rem;
    max-width: 30rem;
    min-height: 15rem;
    max-height: 25rem;
  }

  .tri_back_cover_layout {
    flex-direction: column;
  }

  .back_left_wrap {
    min-height: 40rem;
  }

  .course_card {
    min-width: auto;
  }

  .grid_cards {
    grid-template-rows: auto auto;
    grid-template-columns: repeat(auto-fit, minmax(22.1rem, 1fr)) minmax(22.1rem, 1fr);
  }

  .mixing_bowl {
    top: -7%;
    left: 28%;
  }

  .mixing_bowl.hide-mobile-landscape.hide-mobile-portrait {
    max-width: 10rem;
    max-height: 10rem;
    top: 0%;
    left: 35%;
  }

  .image-outframe.outframe_pastoral {
    max-width: 18rem;
  }

  .image-outframe.outframe_more_travel {
    width: auto;
    min-width: 22rem;
    max-width: none;
  }

  .image-outframe.outframe_ap_intro {
    min-height: 18rem;
    max-height: 22rem;
    margin-top: 0;
    top: 0%;
  }

  .section_welcome_action {
    min-height: auto;
  }

  .basketball {
    top: 64%;
    left: 33%;
  }

  .ruler_pencil_icon.hide-mobile-portrait {
    top: -3%;
  }

  .campus_point_columns {
    margin-left: auto;
  }

  .page_button_start {
    justify-content: flex-end;
  }

  .block_heading.is_bluebell {
    margin-left: 0;
  }

  .heading_left_layout {
    flex-direction: column;
  }

  .heading_left {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }

  .flex-to-right {
    margin-right: auto;
  }

  .flex-to-right.is_absolute {
    position: static;
    top: 52%;
    right: 0%;
  }

  .is_quote_block_text.is_silvertree {
    font-size: 3.5rem;
  }

  .left_intro_wrapper {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .boarding_house {
    top: -16%;
    left: 27%;
  }

  .boarding_house.hide-mobile-landscape.hide-mobile-portrait {
    top: 3%;
  }

  .boarding_house_image {
    height: 8rem;
  }

  .flex-to-center {
    margin-right: auto;
  }

  .performing_intro_content {
    min-height: 35rem;
    max-height: none;
  }

  .production_image_wrap.hide-mobile-landscape.hide-mobile-portrait {
    max-height: 45rem;
    margin-left: 40px;
    padding-left: 0;
    top: -.1rem;
    left: -10%;
  }

  .production_image {
    max-height: 44rem;
  }

  .production_image.image-skew-left {
    left: 0;
  }

  .tennis_point_layout {
    flex-direction: column;
    margin-top: 1rem;
  }

  .tennis_point {
    margin-left: auto;
    margin-right: auto;
  }

  .tennis_outro_image {
    top: -7.3vh;
  }

  .pc_numeric_course {
    flex-direction: column;
  }

  .blue_block_grid_line {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-flow: column;
  }

  .section_academic_outro-_mob.is_bluebell_sect {
    display: none;
  }

  .course_tt_wrapper {
    margin-left: 1rem;
  }

  .course_table_container {
    width: 100%;
    min-width: 100vw;
    max-width: 100%;
    height: 100%;
    min-height: 30rem;
    max-height: 100%;
    overflow: auto;
  }

  .course_table_frame {
    width: 170vw;
    height: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    overflow: hidden;
  }

  .course_intro_heading_left {
    min-width: 18rem;
    max-width: 58rem;
    padding-left: 0;
    padding-right: 0;
  }

  .map_popout_mob-2, .map_slide_out {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    overflow: visible;
  }

  .model-_video {
    margin-left: auto;
    margin-right: auto;
    display: none;
    left: auto;
    right: auto;
  }

  .page_button_play {
    justify-content: flex-end;
  }

  .nav-spacer {
    margin-top: -4.7rem;
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .course-card {
    width: auto;
    height: auto;
  }

  .cc-front-layout {
    align-items: stretch;
  }

  .margin-xhuge {
    margin: 4rem;
  }

  .heading-style-h4 {
    font-size: 1rem;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .padding-section-medium {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .text-size-large {
    font-size: 1.25rem;
  }

  .padding-xxlarge {
    padding: 3rem;
  }

  .fs-styleguide_section-header {
    font-size: .875rem;
  }

  .padding-xhuge {
    padding: 4rem;
  }

  .container-large.hide-tablet-up {
    display: block;
  }

  .margin-xxhuge {
    margin: 4.5rem;
  }

  .margin-huge {
    margin: 3.5rem;
  }

  .fs-styleguide_heading-large {
    font-size: 3rem;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .hide-mobile-landscape {
    display: none;
  }

  .margin-medium {
    margin: 1.25rem;
  }

  .margin-xxlarge {
    margin: 3rem;
  }

  .margin-xlarge {
    margin: 2rem;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-small.unhide-mobile-landscape, .padding-small.hide-tablet-up {
    display: block;
  }

  .heading-style-h2, .heading-style-h2.is_shakes {
    font-size: 3.5rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .heading-style-h3 {
    font-size: 1.5rem;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .spacer-xhuge.mobile-only {
    display: none;
  }

  .padding-xlarge {
    padding: 2rem;
  }

  .padding-global {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .padding-large {
    padding: 1.5rem;
  }

  .padding-large.show-mobile-down {
    display: block;
  }

  .padding-section-small {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .max-width-full-mobile-landscape {
    width: 100%;
    max-width: none;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .fs-styleguide_version {
    font-size: .875rem;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .text-style-nowrap {
    white-space: normal;
  }

  .fs-styleguide_heading-medium {
    font-size: 2rem;
  }

  .padding-xxhuge {
    padding: 4.5rem;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .container-medium.show_on_mob {
    display: block;
  }

  .heading-style-h6 {
    font-size: .75rem;
  }

  .padding-medium {
    padding: 1.25rem;
  }

  .padding-section-large {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .heading-style-h5 {
    font-size: .875rem;
  }

  .padding-huge {
    padding: 3.5rem;
  }

  .margin-large {
    margin: 1.5rem;
  }

  .heading-style-h1 {
    font-size: 2.5rem;
  }

  .heading-style-h1.alt-h1 {
    font-size: 2.2rem;
    line-height: 3rem;
  }

  .heading-style-h1.is_white.heading-align-center {
    font-size: 2rem;
    line-height: 3rem;
  }

  .bg_text {
    height: 100%;
    min-height: 30rem;
    max-height: none;
  }

  .bg_text.is_course {
    height: 60rem;
  }

  .bg_text.is_course.alt_height {
    height: auto;
    min-height: 15rem;
  }

  .bg_text.is_course_small {
    height: auto;
  }

  .page_buttons.pb_cover {
    justify-content: center;
    align-items: center;
    top: 10rem;
  }

  .cover_container {
    justify-content: flex-start;
    min-height: 100vh;
    max-height: 100vh;
  }

  .cover_layout {
    min-height: 30rem;
    max-height: 40rem;
    margin-bottom: 0;
  }

  .cover_center_btm, .cover_right_btm {
    min-height: auto;
  }

  .cover_brand {
    width: 100%;
    min-width: 100%;
    height: 15rem;
  }

  .hero_heading {
    width: 28.5rem;
    height: 15rem;
  }

  .two_col_layout {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    grid-template-rows: minmax(20rem, 25rem) auto;
    grid-template-columns: 40fr;
    width: 90%;
  }

  .is_quote_block {
    min-width: 20rem;
    min-height: 12rem;
  }

  .two_col_text {
    align-items: center;
  }

  .two_col_text.is_from_top {
    justify-content: center;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
  }

  .image_container {
    object-position: 50% 63%;
    max-height: 30rem;
  }

  .paragraph-25 {
    width: auto;
  }

  .img-caption {
    bottom: 0%;
  }

  .course_bg.multisport_bg {
    background-position: 34% 10%;
  }

  .course_bg.fbl_bg {
    background-position: 50% 100%;
  }

  .course_bg.tennis_bg {
    background-image: url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/65d94bd536f4a5efea72d28e_tennis_academy_hero.webp");
    background-position: 30%;
    background-repeat: no-repeat;
    background-size: cover;
  }

  .course_bg.football-bg {
    background-position: 100%;
  }

  .course_intro_layout {
    flex-direction: column;
  }

  .course_intro_buttons {
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-end;
    min-height: 20rem;
    margin-left: auto;
    margin-right: auto;
  }

  .course_intro_buttons.over_video {
    min-height: 20rem;
  }

  .course_intro_tests {
    padding-left: 1rem;
  }

  .venn_layout {
    flex-direction: column;
  }

  .choice_text {
    height: 4rem;
    margin-top: 1rem;
  }

  .columns.col-flex {
    flex-direction: column;
  }

  .call_out_intro_layout {
    flex-direction: column;
    align-items: center;
  }

  .call_out_intro_layout.slide-left {
    flex-flow: row-reverse;
    justify-content: flex-end;
    align-items: center;
  }

  .provision_intro_content {
    padding-bottom: 1.5rem;
  }

  .provision_intro_content.slide-left {
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .callout_icon {
    width: 5.8rem;
    height: 7.7rem;
    margin-left: auto;
    margin-right: auto;
  }

  .callout_text {
    padding-left: 0;
  }

  .image-6 {
    object-position: 66% 50%;
  }

  .base_column.no-pad-r, .base_column.no-pad-l {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .course_intro_time {
    padding-left: 1rem;
  }

  .academic_intro_content {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .academic_point_grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .academic_outro_text {
    margin-left: auto;
    margin-right: auto;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .academic_tall_img_wrap {
    object-fit: contain;
    position: static;
    overflow: hidden;
  }

  .academic_tall_img {
    object-position: 69% 80%;
    position: static;
  }

  .cover_subtitle_text {
    width: 23ch;
    margin-left: auto;
    margin-right: auto;
  }

  .cover_subtitle_text.is_white {
    width: auto;
    font-size: 1.4rem;
    line-height: 2.5rem;
  }

  .cooking_intro_content {
    padding: 1rem;
  }

  .cookery_intro_image_wrap {
    margin-top: 1rem;
  }

  .stem_intro_content {
    position: relative;
  }

  .stem_intro_content.slide-left {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .back_cover_blue_block {
    max-height: 35rem;
  }

  .stem_mid_text_wrap {
    padding-left: 2rem;
    padding-right: 2rem;
    overflow: visible;
  }

  .stem_mid_text_wrap.slide-left {
    min-height: auto;
  }

  .blue_block.block_max {
    max-height: none;
  }

  .blue_block_grid_six {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .stem_dev_os_image_wrap {
    display: none;
  }

  .stem_dev_image_wrap {
    margin-left: auto;
    margin-right: auto;
  }

  .stem_dev_os_image {
    top: -232px;
  }

  .stem_dev_image {
    margin-left: auto;
    margin-right: auto;
    display: block;
  }

  .multisport_intro_content {
    min-height: 40rem;
  }

  .multisport_intro_image_wrap {
    margin-left: 2rem;
    margin-right: 2rem;
  }

  .multisport_outro_text_wrap {
    justify-content: flex-start;
    min-height: 30rem;
  }

  .travel_summer_text_wrap {
    padding-top: 2rem;
  }

  .travel_summer_image_wrap {
    justify-content: center;
    display: flex;
  }

  .blue_block_grid_ten {
    grid-template-rows: auto auto auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .pastoral_care_image_wrap, .boarding_outro_image_wrap {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
    display: flex;
  }

  .section_school_map {
    display: none;
  }

  .facilities_meals_image {
    max-width: none;
  }

  .hero_title {
    text-align: center;
    max-width: 90%;
    margin-left: 0;
    margin-right: auto;
    padding-left: 0;
  }

  .cover_bg_senior {
    background-image: linear-gradient(#0000, #0000), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656db02071068d4843c42c30_Front_Cover_Senior.webp");
    background-position: 0 0, 50% 100%;
    width: 100vw;
    min-width: 100vw;
    max-width: 100%;
    height: 100vh;
    min-height: 100vh;
    max-height: 100%;
  }

  .centralise_text {
    text-align: left;
    align-items: center;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
  }

  .snr_welcome_intro_image {
    object-position: 50% 63%;
    max-height: 30rem;
  }

  .centralise_text_small.auto-height {
    min-height: auto;
    padding-top: 1rem;
  }

  .snr_welcome_outro_image {
    object-position: 50% 63%;
    max-height: 30rem;
  }

  .snr_welcome_action_img_wrap {
    margin-top: 1.5rem;
  }

  .course_cookery_bg_vid {
    min-height: 30rem;
  }

  .stem_dev_os_image_wrap_m {
    object-fit: cover;
    height: 26rem;
    min-height: 0;
    max-height: none;
    display: block;
    position: static;
    overflow: hidden;
  }

  .stem_dev_os_image_m {
    object-position: 50% 30%;
    height: 100%;
    min-height: 0;
    max-height: 100%;
    display: block;
    position: static;
    top: -232px;
    overflow: hidden;
  }

  .course_vid_model, .course_test_model {
    min-width: 30rem;
    margin-left: auto;
    margin-right: auto;
    left: auto;
  }

  .course_test_quote {
    width: auto;
    min-width: 23px;
    font-size: 1.6rem;
    line-height: 1.9rem;
  }

  .course_test_quote.is_white {
    width: auto;
    min-width: 23ch;
  }

  .map_popout {
    flex-flow: column;
    width: auto;
    min-width: 30.1rem;
    height: 54rem;
    min-height: auto;
    max-height: 100%;
    bottom: 0%;
    right: 0%;
  }

  .map_popout.jmp01 {
    display: block;
  }

  .map_popout.jmp01.mp_right {
    z-index: 5;
  }

  .map_popout_layout {
    flex-flow: column;
  }

  .map_popout_image_wrap {
    min-width: auto;
    min-height: auto;
    max-height: none;
  }

  .map_popout_image {
    max-height: none;
  }

  .course_intro_heading {
    flex: 1;
    justify-content: center;
    align-items: flex-start;
    min-height: auto;
    margin-left: auto;
    margin-right: auto;
    display: flex;
  }

  .course-intro-heading-style {
    font-size: 5.5vw;
    line-height: 5vh;
  }

  .card_grid_container {
    overflow: hidden;
  }

  .card_glance_grid {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .school_map_image {
    white-space: nowrap;
    word-break: normal;
  }

  .school_map_mobile {
    overflow-wrap: normal;
    width: 100%;
    min-width: 100vw;
    max-width: 100%;
    min-height: 75rem;
    display: block;
    overflow: auto;
  }

  .school_map_mobile_frame {
    z-index: 0;
    width: 200vw;
    height: 100%;
    display: inline-block;
    overflow: hidden;
    transform: translate(0);
  }

  .section_school_map_mob {
    display: block;
  }

  .school_map_popouts_mob {
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    position: relative;
  }

  .school_map_point_mob {
    top: 52.5%;
    left: 50%;
  }

  .school_map_point_mob.jmpm02 {
    top: 56.5%;
    left: 58.2%;
  }

  .school_map_point_mob.jmpm03 {
    top: 60%;
    left: 33%;
  }

  .school_map_point_mob.jmpm04 {
    top: 44.5%;
    left: 58%;
  }

  .school_map_point_mob.jmpm05 {
    top: 75.5%;
    left: 47%;
  }

  .school_map_point_mob.jmpm06 {
    top: 46.5%;
    left: 16%;
  }

  .school_map_point_mob.jmpm07 {
    top: 56.5%;
    left: 21%;
  }

  .school_map_point_mob.jmpm08 {
    top: 44.5%;
    left: 68%;
  }

  .school_map_point_mob.jmpm09 {
    top: 48.5%;
    left: 63%;
  }

  .school_map_point_mob.jmpm10 {
    top: 69.5%;
    left: 24%;
  }

  .school_map_point_mob.jmpm11 {
    top: 37.5%;
    left: 59%;
  }

  .school_map_point_mob.jmpm12 {
    top: 34.5%;
    left: 65.5%;
  }

  .school_map_point_mob.jmpm13 {
    top: 25%;
    left: 21.5%;
  }

  .school_map_point_mob.jmpm14 {
    top: 40%;
    left: 27.5%;
  }

  .school_map_point_mob.jmpm15 {
    top: 61.5%;
    left: 21%;
  }

  .school_map_point_mob.jmpm16 {
    top: 42.5%;
    left: 73%;
  }

  .school_map_point_mob.jmpm17 {
    top: 63.5%;
    left: 48%;
  }

  .school_map_point_mob.jmpm18 {
    top: 67.5%;
    left: 33%;
  }

  .school_map_point_mob.jmpm19 {
    top: 15.5%;
    left: 25%;
  }

  .school_map_point_mob.jmpm20 {
    top: 50.5%;
    left: 36.5%;
  }

  .map_popout_mob {
    z-index: 20;
    background-color: var(--main-colours--shakespeare);
    height: 60rem;
    min-height: 50rem;
    display: block;
    inset: 0%;
  }

  .map_popout_mob.jmpm01, .map_popout_mob.jmpm02, .map_popout_mob.jmpm03 {
    display: none;
  }

  .map_popout_mob.jmpm04 {
    display: none;
    inset: 0%;
  }

  .map_popout_mob.jmpm05, .map_popout_mob.jmpm06, .map_popout_mob.jmpm07, .map_popout_mob.jmpm08, .map_popout_mob.jmpm09, .map_popout_mob.jmpm10, .map_popout_mob.jmpm11, .map_popout_mob.jmpm12, .map_popout_mob.jmpm13, .map_popout_mob.jmpm14, .map_popout_mob.jmpm15, .map_popout_mob.jmpm16, .map_popout_mob.jmpm17, .map_popout_mob.jmpm18, .map_popout_mob.jmpm19, .map_popout_mob.jmpm20 {
    display: none;
  }

  .swiper-slide {
    flex: none;
    min-width: auto;
  }

  .section_burnt {
    height: auto;
  }

  .sports_grid {
    grid-template-columns: 1.25fr minmax(200px, 1.25fr);
  }

  .sports_block {
    min-width: 15rem;
  }

  .back_right_brand_wrap {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-bottom: 2rem;
  }

  .back_right_address {
    text-align: center;
    justify-content: center;
    align-items: center;
    margin-top: 1rem;
  }

  .back_cover_email_text, .back_cover_website_text, .back_cover_phone_text {
    flex: 1;
  }

  .school_map_image_mob {
    white-space: nowrap;
    word-break: normal;
  }

  .test_grid_card, .grid_cards {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .course_intro_video_mob {
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .mixing_bowl {
    top: 29%;
    left: 76%;
  }

  .price_card {
    max-width: 30rem;
  }

  .pc_numeric {
    flex-direction: row;
    align-self: auto;
    width: 100%;
  }

  .pc_number {
    align-self: flex-end;
    margin-left: 0;
    margin-right: 0;
  }

  .pc_number.is_pc3 {
    align-self: flex-end;
  }

  .pc_info {
    padding-left: 24px;
  }

  .pc_date {
    align-self: flex-start;
  }

  .pc_price {
    text-align: left;
    align-self: flex-start;
  }

  .pc_heading {
    font-size: 3rem;
  }

  .pc_date_text.is_silvertree, .pc_date_text.is_bluebell, .pc_date_text.is_burnt, .pc_duration {
    text-align: left;
  }

  .pricing_grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: minmax(200px, 30rem);
    margin-left: auto;
    margin-right: auto;
  }

  .image-outframe.outframe_sport {
    margin-left: 2rem;
  }

  .image-outframe.outframe_travel {
    max-width: 36rem;
    left: 3%;
  }

  .image-outframe.outframe_pastoral {
    max-width: 40rem;
  }

  .animate_container {
    justify-content: center;
  }

  .two_col_icon {
    top: -4%;
    left: 85%;
  }

  .ribbon {
    left: 80%;
  }

  .two_cell_base {
    flex-direction: column;
  }

  .ruler_pencil_icon {
    left: 73%;
  }

  .ruler_pencil_icon.hide-mobile-portrait {
    top: 1%;
    left: 64%;
  }

  .flex_icons {
    width: 100%;
    position: static;
  }

  .stem_lottie_icon {
    position: absolute;
    top: -22%;
    left: 80%;
  }

  .lottie-animation-4 {
    width: 7rem;
  }

  .campus_point_columns {
    flex-direction: column;
  }

  .page_button_start {
    inset: 0% 0% auto auto;
  }

  .block_heading {
    padding: .4rem .5rem;
  }

  .block_heading.is_silvertree {
    text-align: center;
  }

  .block_heading.align-center.is_midnight.ext_block_pad, .block_heading.align-center.is_midnight.hide-desktop {
    display: block;
  }

  .block_heading.is_shakes {
    display: inline-block;
  }

  .block_heading.is_shakes.align-block-heading, .block_heading.is_bluebell {
    margin-left: 0;
    margin-right: 0;
  }

  .block_heading.is_bluebell {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }

  .heading_left {
    width: 90%;
    padding-top: 2.5rem;
  }

  .flex-to-right {
    width: 100%;
    min-width: auto;
  }

  .container-xs {
    padding-left: 2rem;
    padding-right: 2rem;
    overflow: visible;
  }

  .flex-medium {
    justify-content: center;
  }

  .is_quote_block_text.is_silvertree {
    font-size: 2.4rem;
  }

  .boarding_house {
    top: -4%;
    left: 35%;
  }

  .boarding_house_image {
    height: 12rem;
  }

  .paragraph-27 {
    width: auto;
  }

  .flex-to-center {
    width: 100%;
    min-width: auto;
  }

  .fbl_midpage_text_wrap.slide-right {
    justify-content: center;
    align-items: center;
    min-height: auto;
    margin-left: auto;
    margin-right: auto;
    padding-top: 1rem;
  }

  .fbl_intro_image_wrap {
    margin-top: 1rem;
  }

  .fbl_intro_content {
    padding: 1rem;
  }

  .academic_outro_btm_image {
    position: static;
  }

  .performing_intro_content {
    min-height: auto;
  }

  .performance_outro_text_wrap.slide-left {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .production_image_wrap_mob {
    margin-left: auto;
    margin-right: auto;
    display: block;
  }

  .production_image_mob {
    margin-left: auto;
    margin-right: auto;
    display: block;
    position: static;
  }

  .tennis_point_layout {
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-top: 1rem;
    margin-bottom: 1rem;
  }

  .tennis_point {
    max-width: 15rem;
    margin-left: auto;
    margin-right: auto;
  }

  .tennis_point_icon {
    min-height: 5rem;
    max-height: 6rem;
  }

  .tennis_coaching_image_wrap {
    align-items: flex-end;
  }

  .tennis_outro_image_wrap {
    width: auto;
    margin-top: 1rem;
  }

  .tennis_outro_image {
    position: static;
  }

  .course_outro_label {
    bottom: -10rem;
    right: 3rem;
  }

  .football_point_layout {
    flex-direction: column;
    align-items: center;
  }

  .football_row {
    flex-direction: column;
    justify-content: center;
  }

  .football_point_text {
    text-align: center;
    max-width: 25rem;
  }

  .paragraph-29._29-no-mobile {
    width: auto;
    max-width: 29ch;
  }

  .football_focus_image {
    margin-top: 1rem;
  }

  .course_outro_label_static {
    bottom: -10rem;
  }

  .pricing_grid_course {
    grid-template-rows: auto auto auto;
    grid-template-columns: minmax(200px, 30rem);
    justify-content: center;
    place-items: stretch stretch;
    margin-left: auto;
    margin-right: auto;
  }

  .pc_numeric_course {
    flex-direction: row;
    align-self: auto;
    width: 100%;
  }

  .psp_callout_grid.padding-custom1 {
    grid-template-rows: auto auto auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .psp_outro_points {
    flex-direction: column;
  }

  .announce_layout {
    flex-direction: column;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .image_card {
    object-position: 50% 40%;
  }

  .tennis_intro {
    margin-left: auto;
    margin-right: auto;
  }

  .blue_block_grid_line {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-flow: column;
  }

  .map_cta_wrap {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .section_academic_outro-_mob.is_bluebell_sect {
    display: block;
  }

  .list.single-line-list {
    flex-flow: column;
  }

  .course_table_frame {
    width: 190vw;
  }

  .section_enrich_intro.hide-tablet-up {
    flex-flow: column;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .enrich_intro_top {
    flex-flow: column;
    width: 60%;
    display: flex;
  }

  .enrich_intro_btm {
    width: 60%;
  }

  .course_intro_heading_left {
    flex: 1;
    justify-content: center;
    align-items: flex-start;
    min-height: auto;
  }

  .map_popout_mob-2 {
    z-index: 20;
    background-color: #56accc;
    height: 60rem;
    min-height: 50rem;
    display: block;
    inset: 0%;
  }

  .map_popout_mob-2.jmpm13, .map_popout_mob-2.jmpm18, .map_popout_mob-2.jmpm17, .map_popout_mob-2.jmpm02, .map_popout_mob-2.jmpm09, .map_popout_mob-2.jmpm10, .map_popout_mob-2.jmpm14 {
    display: none;
  }

  .map_popout_mob-2.jmpm04 {
    display: none;
    inset: 0%;
  }

  .map_popout_mob-2.jmpm19, .map_popout_mob-2.jmpm20, .map_popout_mob-2.jmpm03, .map_popout_mob-2.jmpm08, .map_popout_mob-2.jmpm05, .map_popout_mob-2.jmpm07, .map_popout_mob-2.jmpm15, .map_popout_mob-2.jmpm01, .map_popout_mob-2.jmpm12, .map_popout_mob-2.jmpm16, .map_popout_mob-2.jmpm11, .map_popout_mob-2.jmpm06 {
    display: none;
  }

  .map_wrap {
    aspect-ratio: auto;
    width: 200vw;
    height: 100%;
    overflow: hidden;
  }

  .map_section {
    width: 100vw;
    min-width: 100%;
    max-width: 100%;
    height: 100%;
    min-height: 75rem;
    max-height: 100%;
    overflow: auto;
  }

  .width-full {
    width: 100vw;
    max-width: 100%;
    height: 100vh;
    min-height: auto;
    max-height: 100%;
  }

  .map_slide_out {
    flex-flow: column;
    width: auto;
    min-width: 30.1rem;
    height: 54rem;
    min-height: auto;
    max-height: 100%;
    bottom: 0%;
    right: 0%;
  }

  .map_slide_out.jmp01 {
    display: block;
  }

  .map_slide_out.jmp01.mp_right {
    z-index: 5;
  }

  .model-_video {
    min-width: 30rem;
    margin-left: auto;
    margin-right: auto;
    left: auto;
  }

  .marquee-item-travel, .marquee-item-location {
    display: inline-flex;
  }

  .page_button_play {
    inset: 0% 0% auto auto;
  }
}

@media screen and (max-width: 479px) {
  .course-card {
    min-height: 20rem;
    margin-bottom: 2rem;
  }

  .course-card-front {
    width: 100%;
    height: 20rem;
    overflow: visible;
  }

  .cc-front-layout {
    align-items: stretch;
  }

  .cc-front-image-wrap {
    width: auto;
    height: 15rem;
  }

  .cc-back-desc {
    width: 90%;
    height: 15rem;
    overflow: hidden;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .hide-mobile-portrait {
    display: none;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .max-width-full-mobile-portrait {
    width: 100%;
    max-width: none;
  }

  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-small.show-mobile-down {
    display: block;
  }

  .heading-style-h2 {
    margin-left: auto;
    margin-right: auto;
    font-size: 3.2rem;
    line-height: 4rem;
    overflow: visible;
  }

  .heading-style-h2.is_shakes {
    font-size: 3.2rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .spacer-xhuge.mobile-only {
    display: block;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-horizontal {
    padding-top: 0;
    padding-bottom: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .heading-style-h1.alt-h1 {
    font-size: 1.2rem;
    line-height: 2rem;
  }

  .heading-style-h1.is_white.heading-align-center {
    font-size: 1.6em;
    line-height: 1.2em;
  }

  .bg_text {
    height: auto;
    max-height: 90rem;
  }

  .bg_text.is_course {
    height: auto;
  }

  .bg_text.is_course.alt_height {
    height: auto;
    min-height: 20rem;
  }

  .bg_text.is_course_small {
    height: auto;
  }

  .page_buttons {
    inset: auto 0% 4.5%;
  }

  .page_buttons.pb_cover {
    justify-content: center;
    align-items: center;
    top: 5em;
    overflow: hidden;
  }

  .section_cover {
    object-fit: cover;
  }

  .cover_bg_junior {
    object-fit: cover;
    object-position: 50% 0%;
    height: 100svh;
    min-height: 100svh;
    max-height: 100vh;
  }

  .cover_container {
    height: 90vh;
    min-height: 85vh;
    max-height: 85vh;
  }

  .cover_layout {
    align-self: flex-end;
  }

  .cover_right_btm {
    flex-flow: column;
    flex: 0 auto;
    padding-top: .1em;
  }

  .cover_brand {
    width: 100%;
    min-width: 100%;
    height: 12.5em;
    min-height: 10em;
    max-height: 15em;
  }

  .hero {
    height: 40rem;
    max-height: 100svh;
  }

  .hero_bg.is_intro, .hero_bg.is_travel {
    background-image: linear-gradient(#0006, #0006), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/655d2aa714c606dcfd29336b_DSCF0283.webp");
    background-position: 0 0, 50% 60%;
    background-repeat: repeat, no-repeat;
    background-size: auto, cover;
  }

  .hero_bg.is_facilities {
    background-image: linear-gradient(#0006, #0006), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656d1714e6fb037bb310bc20_facilities_hero_crop.webp");
    background-position: 0 0, 50% 60%;
    background-repeat: repeat, no-repeat;
    background-size: auto, cover;
  }

  .hero_bg.is_snr_intro {
    background-image: linear-gradient(#00000040, #00000040), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/656db1b1e7899c55033614cd_Welcome_Hero_Snr.webp");
    background-position: 0 0, 50% 60%;
    background-repeat: repeat, no-repeat;
    background-size: auto, cover;
  }

  .hero_bg.is_travel_snr {
    background-image: linear-gradient(#0006, #0006), url("https://cdn.prod.website-files.com/65312147a3f11013ff96199b/655d2aa714c606dcfd29336b_DSCF0283.webp");
    background-position: 0 0, 50% 60%;
    background-repeat: repeat, no-repeat;
    background-size: auto, cover;
  }

  .hero_heading {
    justify-content: space-around;
    width: auto;
    min-width: 18rem;
    max-width: 22rem;
    height: 15rem;
  }

  .is_quote_text.is_silver_tree {
    font-size: var(--typography--m-quote-size);
    line-height: var(--typography--m-quote-size);
    overflow: hidden;
  }

  .courses_menu_dropdown {
    text-align: center;
  }

  .course_menu_text {
    text-align: left;
  }

  .points_grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
  }

  .img-caption {
    bottom: -2%;
  }

  .heading_top_text, .heading_btm_text {
    font-size: 1.1rem;
  }

  .points_grid_two {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .double_intro_text_block {
    margin-top: 2rem;
  }

  .paragraph-26 {
    object-position: 50% 50%;
  }

  .location_slide_img {
    width: auto;
    min-height: auto;
  }

  .sidebar_col_left {
    padding-left: .5rem;
    padding-right: .5rem;
  }

  .course-card-inner {
    width: 100%;
    height: 20rem;
    min-height: 20rem;
    overflow: hidden;
  }

  .course_bg.provision_bg {
    background-position: 57%;
  }

  .course_bg.academic_bg {
    background-position: 90%;
  }

  .course_bg.multisport_bg {
    background-position: 10% 10%;
  }

  .course_bg.academic_snr_bg {
    background-position: 90%;
  }

  .course_bg.provision_jnr_bg {
    background-position: 57%;
  }

  .course_bg.tennis_bg {
    background-position: 28%;
  }

  .course_bg.football-bg {
    background-position: 50%;
  }

  .course_intro_layout {
    justify-content: center;
    align-items: center;
  }

  .course_intro_buttons {
    flex-direction: row;
    min-height: 30rem;
    padding-left: .5rem;
    padding-right: .5rem;
  }

  .course_intro_buttons.over_video {
    min-height: 10rem;
  }

  .course_intro_tests {
    padding-left: 0;
  }

  .left_circle.is_morning, .right_circle.is_shakes {
    min-width: 19.5rem;
    min-height: 19.5rem;
  }

  .basic-column {
    padding-left: 0;
    padding-right: 0;
  }

  .provision_intro_content {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .image-6 {
    object-position: 63% 50%;
  }

  .circle_heading.is_white, .circle_text {
    margin-left: auto;
    margin-right: auto;
  }

  .provision_outro_image_wrap {
    min-height: 15.4rem;
    max-height: 23.5rem;
  }

  .provision_outro_image {
    flex: 0 auto;
    height: 100%;
  }

  .course_intro_time {
    padding-left: 0;
  }

  .academic_intro_content {
    padding-left: 1rem;
    padding-right: .5rem;
  }

  .h2-small-heading.text-align-center {
    font-size: 1.58rem;
  }

  .academic_point_grid {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .academic_point {
    padding-top: 1rem;
  }

  .academic_outro_text {
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: .5rem;
  }

  .academic_outro_text.padding-left {
    padding-left: .5rem;
    padding-right: .5rem;
  }

  .academic_tall_img {
    object-position: 50% 50%;
  }

  .play_text {
    margin-top: 0;
  }

  .play_button_wrap {
    width: 2em;
    height: 2.2em;
  }

  .play_text_span {
    font-size: 1.3em;
    line-height: 1.1em;
  }

  .cover_subtitle_text.is_white {
    letter-spacing: .25em;
    width: auto;
    font-size: 1.1em;
    line-height: 2.1em;
  }

  .cover_video_link {
    margin-left: auto;
    padding-left: 0;
  }

  .stem_intro_content {
    padding-left: 1rem;
    padding-right: .5rem;
  }

  .back_cover_layout {
    justify-content: flex-end;
    align-self: flex-end;
  }

  .back_cover_wrapper {
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
    width: 90%;
    min-height: 60rem;
    padding-left: 0;
    padding-right: 0;
  }

  .back_cover_blue_block {
    justify-content: center;
    align-items: center;
    width: auto;
    min-width: 18rem;
    max-width: 27.5rem;
    max-height: 60rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .blue_block_col_layout {
    flex-direction: column;
  }

  .strong.is_white.text_shadow {
    position: static;
  }

  .blue_block_left_col, .blue_block_right_col {
    max-width: 100%;
  }

  .back_cover_stickers {
    flex-flow: row;
    justify-content: center;
    align-items: center;
    min-width: 0%;
  }

  .back_cover_buttons {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    min-height: 20rem;
    max-height: 60rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }

  .back_cover_email, .back_cover_phone {
    flex-direction: column;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
  }

  .back_cover_website {
    flex-direction: column;
    margin-left: auto;
    margin-right: auto;
  }

  .sticker_message {
    min-height: 8rem;
    position: static;
  }

  .stem_mid_text_wrap {
    padding-left: 1rem;
  }

  .stem_mid_text_wrap.slide-left {
    min-height: auto;
  }

  .blue_block {
    max-height: 45rem;
    padding-left: .5rem;
    padding-right: .5rem;
  }

  .stem_dev_os_image_wrap {
    min-height: 15rem;
    overflow: visible;
  }

  .stem_dev_os_image {
    top: -170px;
  }

  .multisport_intro_content {
    min-height: 50rem;
    max-height: 100rem;
  }

  .multisport_intro_image_wrap {
    width: auto;
    min-width: 12rem;
    max-width: 25.5rem;
    min-height: auto;
    max-height: none;
  }

  .large-paragraph {
    margin-left: auto;
    margin-right: auto;
  }

  .multisport_intro_image {
    object-position: 47% 50%;
    width: auto;
    min-width: 12rem;
    max-width: 25rem;
    overflow: hidden;
  }

  .multisport_outro_text_wrap {
    min-height: 40rem;
    max-height: 60rem;
  }

  .hero_small {
    height: 40rem;
    min-height: 40rem;
  }

  .travel_intro_reg_text {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .travel_intro_icon_text {
    flex-direction: column;
  }

  .travel_intro_icon {
    width: 10rem;
    height: 10rem;
    overflow: hidden;
  }

  .travel_summer_image_wrap {
    position: relative;
  }

  .blue_block_grid_ten {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .boarding_start_icon_grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .boarding_start_image_wrap {
    min-height: 28.4rem;
    margin-left: auto;
    margin-right: auto;
  }

  .boarding_start_image {
    min-width: auto;
    min-height: 22.6rem;
    margin-left: auto;
    margin-right: auto;
  }

  .marketing_text_offset {
    margin-left: 0;
  }

  .marketing_offset_copy, .marketing_offset_copy.is_bluebell.q-text, .marketing_offset_copy.is_white.q-text-two {
    font-size: 3rem;
    line-height: 4rem;
  }

  .boarding_outro_image {
    overflow: hidden;
  }

  .facilities_meals_text_layout {
    flex-direction: column;
    padding-top: 1rem;
    padding-left: 1rem;
  }

  .facilities_meals_text_left, .facilities_meals_text_right {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  .hero_tiny {
    height: 40rem;
  }

  .hero_title {
    min-width: 80%;
    max-width: 90%;
    margin-left: 0;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }

  .cover_bg_senior {
    height: 100svh;
    min-height: 100svh;
    max-height: 100vh;
  }

  .course_cookery_bg_vid {
    min-height: 30rem;
  }

  .stem_dev_os_image_wrap_m {
    min-height: 15rem;
    position: static;
    overflow: visible;
  }

  .stem_dev_os_image_m {
    position: static;
    top: -170px;
  }

  .course_vid_model, .course_test_model {
    min-width: 20rem;
  }

  .course_test_quote {
    min-width: 15ch;
    font-size: 1.4rem;
    line-height: 1.7rem;
  }

  .course_test_quote.is_white {
    min-width: 15ch;
  }

  .course_test_info {
    font-size: 1.25rem;
  }

  .course_time_card {
    width: auto;
    min-width: 20rem;
    height: auto;
    min-height: 30rem;
  }

  .course_time_card_title {
    flex: 0 auto;
  }

  .close-time-text, .jnr_cover_video_modal {
    display: none;
  }

  .jnr_cover_video_wrapper {
    justify-content: center;
    align-items: stretch;
    height: auto;
    min-height: auto;
    margin-top: 20vh;
  }

  .cover_video_link_jnr {
    grid-column-gap: .4em;
    grid-row-gap: .4em;
    justify-content: center;
    align-items: center;
    margin-left: auto;
    display: flex;
  }

  .map_popout {
    min-width: 20.1rem;
    height: auto;
    min-height: auto;
    max-height: 100%;
    bottom: 0%;
    right: 0%;
  }

  .map_popout_layout {
    flex-flow: column;
    height: auto;
    min-height: auto;
    max-height: 100%;
    display: flex;
  }

  .map_popout_paragraph {
    font-size: 1.1rem;
    line-height: 1.2rem;
  }

  .trips_bg_video {
    height: auto;
    min-height: 40rem;
  }

  .course_intro_heading {
    flex: 1;
    justify-content: center;
    align-items: flex-start;
    display: flex;
  }

  .course-intro-heading-style {
    margin-left: auto;
    margin-right: auto;
    font-size: 6vw;
    line-height: 4.5vh;
    overflow: visible;
  }

  .heading_right {
    padding-top: .5rem;
  }

  .heading_intro_video {
    margin-bottom: .5rem;
  }

  .card_glance_grid {
    grid-template-rows: auto auto auto auto auto auto auto auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .school_map_mobile {
    min-height: 50rem;
  }

  .school_map_mobile_frame {
    z-index: 0;
    overflow: auto;
  }

  .swiper-slide {
    min-width: auto;
    max-width: 100%;
  }

  .sports_grid {
    grid-template-rows: auto auto auto auto auto auto auto auto auto auto;
    grid-template-columns: minmax(15rem, 20rem);
    place-content: center;
    place-items: stretch stretch;
  }

  .back_right_brand_wrap {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 25vh;
    min-height: 25rem;
  }

  .back_right_address {
    min-width: 20rem;
    padding-top: 1rem;
  }

  .course_card {
    min-width: 18rem;
    max-width: 30rem;
  }

  .grid_cards {
    grid-auto-flow: row;
  }

  .mixing_bowl {
    max-width: 10rem;
    max-height: 10rem;
    top: 41%;
    left: 67%;
  }

  .pc_heading {
    font-size: 2.2rem;
  }

  .pc_date_text {
    text-align: left;
  }

  .image-outframe.outframe_provision.is_morning {
    width: 100%;
    height: auto;
    min-height: 15rem;
  }

  .image-outframe.outframe_sport {
    width: auto;
    min-width: 12rem;
    max-width: 25.5rem;
    transform: rotate(-4deg);
  }

  .image-outframe.outframe_travel {
    left: 2%;
  }

  .image-outframe.outframe_pastoral {
    width: auto;
    min-width: 17.5rem;
  }

  .image-outframe.outframe_more_travel {
    min-width: auto;
    max-width: 26rem;
  }

  .stem_lottie_icon {
    top: -26%;
    left: 72%;
  }

  .campus_intro_layout {
    padding-left: 0;
    padding-right: 0;
  }

  .page_button_start {
    min-width: 2.5em;
    height: 3em;
    min-height: 3em;
  }

  .page_right_start, .page_start {
    font-size: 1.4em;
    line-height: 1.1em;
  }

  .block_heading {
    padding-top: 0;
    padding-bottom: 0;
  }

  .block_heading.align-center.is_silvertree, .block_heading.align-center.is_midnight.hide-desktop {
    padding-left: .5em;
    padding-right: .5em;
  }

  .block_heading.is_midnight {
    display: inline-block;
  }

  .block_heading.is_bluebell {
    margin-left: auto;
    margin-right: auto;
  }

  .heading_left {
    width: 90%;
    padding-top: 2.5rem;
  }

  .boarding_house {
    left: 21%;
  }

  .title_quote_block.text-center-mob {
    text-align: center;
  }

  .title_quote_top {
    margin-right: auto;
  }

  .paragraph-27 {
    width: 23ch;
  }

  .course_label_text {
    font-size: calc(100% + 1.5vw);
  }

  .performing_intro_content {
    min-height: auto;
    max-height: 100rem;
  }

  .performing_intro_image_wrap {
    min-height: auto;
  }

  .performance_outro_text_wrap.slide-left {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .tennis_point_layout {
    flex-direction: column;
    padding-left: 0;
    padding-right: 0;
  }

  .tennis_outro_image_wrap {
    width: auto;
    overflow: hidden;
  }

  .football_focus_image {
    margin-top: 1rem;
  }

  .psp_callout_grid.padding-custom1 {
    grid-template-rows: auto auto auto auto auto auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .announce_layout {
    flex-direction: column;
  }

  .heading-desc-small {
    display: none;
  }

  .image_card {
    object-position: 50% 80%;
  }

  .snr_cover_video_modal {
    z-index: 99;
  }

  .tennis_intro {
    margin-left: auto;
    margin-right: auto;
  }

  .blue_block_grid_line {
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: 1fr;
    grid-auto-flow: column;
  }

  .course_table_frame {
    width: 320vw;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .course_intro_heading_left {
    flex: 1;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: 0;
    margin-right: 0;
    display: block;
  }

  .map_popout_paragraph-2 {
    font-size: 1.1rem;
    line-height: 1.2rem;
  }

  .map_slide_out {
    min-width: 20.1rem;
    height: auto;
    min-height: auto;
    max-height: 100%;
    bottom: 0%;
    right: 0%;
  }

  .model-_video {
    min-width: 20rem;
  }

  .marquee, .marquee-content.l-scroll {
    grid-column-gap: 1em;
  }

  .location_marq_img {
    width: auto;
    min-height: auto;
  }

  .page_button_play {
    grid-column-gap: .2em;
    grid-row-gap: .2em;
    background-color: var(--main-colours--midnight-blue);
    border-radius: 0 1em 1em 0;
    justify-content: flex-start;
    min-width: 9em;
    max-width: none;
    height: 3em;
    min-height: 3em;
    padding-left: .2em;
    display: flex;
    left: 0;
    right: auto;
  }

  .play_button_wrap-_cb {
    width: 2em;
    height: 2.2em;
    margin-left: 0;
    margin-right: 0;
  }

  .play_text_cb {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .nav-spacer {
    z-index: 0;
    background-color: var(--main-colours--midnight-blue);
    width: 100%;
    max-width: 100%;
    height: 5rem;
    max-height: 5rem;
    margin-top: -5rem;
    position: relative;
  }
}

#w-node-_5826c008-ac85-76d5-fe8b-5f3c72dcdacd-95669936 {
  order: -9999;
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_5826c008-ac85-76d5-fe8b-5f3c72dcdad9-95669936 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: auto;
}

#w-node-a384624b-ba58-5b62-6dce-b547154a1de0-95669936 {
  order: -9999;
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-a384624b-ba58-5b62-6dce-b547154a1dec-95669936, #w-node-_289436fa-60f2-42da-b48c-4f1a2426d319-59d1b265, #w-node-e3d04fd2-1842-db27-4e50-0252c2656782-59d1b265, #w-node-_1c11a793-d9c3-5665-1ed8-ba5770a24c07-59d1b265, #w-node-_1f58e754-7096-51b0-43b1-a9f4b9dcc91a-59d1b265, #w-node-_10c5982d-2d43-8f7e-1d71-8aeb4115b180-e6098256, #w-node-_182a9d4a-2c38-e901-b603-849bbbf6ac78-e6098256, #w-node-bb22163e-a9b0-14b6-5e7e-a5117fff5051-e6098256, #w-node-_1d9ffa66-0ad5-6c3a-2c4c-26dac46e8ef4-e6098ae0, #w-node-_4185357d-5a53-dec6-0834-de456c50f0cd-e6098ae0, #w-node-af9dfe0a-6f83-acdf-6990-e7ea5dcac346-e6098ae0, #w-node-cbdb396b-cd60-8e9f-0df9-f7356a893f37-e6098ae0, #w-node-_95968bf6-19d6-5668-01cf-f34299127df7-e6098ae0, #w-node-d91f17d0-808c-06c6-ec40-489a2693be05-e6098ae0, #w-node-_81be4cc7-b479-aad6-a916-f9adcf3d58d6-e6098ae0, #w-node-_38b6e68c-b78c-87b4-392c-4b187309d7db-e6098ae0, #w-node-_405f2114-99f1-a05f-b78d-8afd3a1ce452-e6098ae0, #w-node-a55ed249-3efd-46a3-4dcf-922e9a3eeb38-e6098ae0, #w-node-fe23a746-e377-527d-fc1c-e13e1ecfe622-9fb7ac2c, #w-node-_16712d90-8066-1838-9ff7-8eaefce47370-9fb7ac2c, #w-node-f180ea04-8256-1846-b582-6c463d480056-9fb7ac2c, #w-node-_6e916bdc-a249-d6f5-b570-408e81b5e149-9fb7ac2c, #w-node-d8ac3b7c-39a1-38c4-1c23-340b0b12f892-9fb7ac2c, #w-node-_5ba82c81-99d9-c348-392f-14c250ae0d5a-9fb7ac2c, #w-node-da0594ae-8b5d-9bd1-4743-14d08934f238-9fb7ac2c, #w-node-f58d00a5-0837-fa81-cbfb-6504583ca7f8-9fb7ac2c, #w-node-dd948c53-35c2-0f6b-39c6-80f335733771-9fb7ac2c, #w-node-d2584af2-6289-2aa6-9f2d-03c2b121f78c-9fb7ac2c, #w-node-_805e37e7-f2ef-9906-478e-df088a9c641b-edfc55ad, #w-node-bf6df354-7df4-d9bf-01f5-b081a3b6b6fb-edfc55ad, #w-node-da983aa1-9778-c9cb-4059-cff1aa445e61-edfc55ad, #w-node-_4dfbfca4-95ce-4625-a352-841c02539049-edfc55ad, #w-node-_289436fa-60f2-42da-b48c-4f1a2426d319-d0e2de8e, #w-node-e3d04fd2-1842-db27-4e50-0252c2656782-d0e2de8e, #w-node-_1c11a793-d9c3-5665-1ed8-ba5770a24c07-d0e2de8e, #w-node-_1f58e754-7096-51b0-43b1-a9f4b9dcc91a-d0e2de8e, #w-node-_10c5982d-2d43-8f7e-1d71-8aeb4115b180-fc3bf4e1, #w-node-_182a9d4a-2c38-e901-b603-849bbbf6ac78-fc3bf4e1, #w-node-_1ae66d9a-7a20-a619-a1c8-7813b6812e2d-fc3bf4e1, #w-node-_7bc8c020-fb8a-ca98-984a-25423da5df9e-fc3bf4e1, #w-node-bc91b73c-5e46-b6b7-b5bc-2ccaed9a4ff8-fc3bf4e1, #w-node-bb22163e-a9b0-14b6-5e7e-a5117fff5051-fc3bf4e1, #w-node-d4f32a7e-10dc-828d-f040-238dee1a8eaa-fc3bf4e1, #w-node-d4f32a7e-10dc-828d-f040-238dee1a8eb1-fc3bf4e1, #w-node-d4f32a7e-10dc-828d-f040-238dee1a8eb8-fc3bf4e1, #w-node-d4f32a7e-10dc-828d-f040-238dee1a8ebf-fc3bf4e1, #w-node-d4f32a7e-10dc-828d-f040-238dee1a8ec6-fc3bf4e1, #w-node-d4f32a7e-10dc-828d-f040-238dee1a8ecd-fc3bf4e1, #w-node-_2095b8a7-7fe5-0519-bf47-0d4acdb6d6c6-edd405e5, #w-node-c2d8e3c1-5460-5d97-e0a0-60defc1e6da8-edd405e5, #w-node-abd1831b-f2aa-2709-e752-96b040296801-edd405e5, #w-node-_6e02627e-50bf-decb-c7be-1e74215c2b53-edd405e5, #w-node-_172a0106-7f5d-d464-1cd9-63cd4018badf-edd405e5, #w-node-_6e56a25e-4359-7660-6556-4ca4313891c0-edd405e5, #w-node-aa785da6-7711-8a73-600b-367578f9cc68-edd405e5, #w-node-_8595afb2-b351-8820-1c3f-2bb05e949855-edd405e5, #w-node-fece789c-679b-3860-afab-5c63d163d44f-edd405e5, #w-node-b6e54a32-335b-e378-9b76-d808ac580dad-edd405e5, #w-node-fe23a746-e377-527d-fc1c-e13e1ecfe622-bbe8a49c, #w-node-_16712d90-8066-1838-9ff7-8eaefce47370-bbe8a49c, #w-node-f180ea04-8256-1846-b582-6c463d480056-bbe8a49c, #w-node-_6e916bdc-a249-d6f5-b570-408e81b5e149-bbe8a49c, #w-node-d8ac3b7c-39a1-38c4-1c23-340b0b12f892-bbe8a49c, #w-node-_5ba82c81-99d9-c348-392f-14c250ae0d5a-bbe8a49c, #w-node-da0594ae-8b5d-9bd1-4743-14d08934f238-bbe8a49c, #w-node-f58d00a5-0837-fa81-cbfb-6504583ca7f8-bbe8a49c, #w-node-dd948c53-35c2-0f6b-39c6-80f335733771-bbe8a49c, #w-node-d2584af2-6289-2aa6-9f2d-03c2b121f78c-bbe8a49c {
  grid-area: span 1 / span 1 / span 1 / span 1;
}
