@charset "utf-8";

@keyframes a { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(1turn); }
}

@-webkit-keyframes a { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(359deg); }
}

@keyframes a { 
  0% { transform: rotate(0deg); }
  100% { transform: rotate(359deg); }
}

@keyframes bounce { 
  0%, 20%, 53%, 80%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transform: translateZ(0px); }
  40%, 43% { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); transform: translate3d(0px, -30px, 0px); }
  70% { animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); transform: translate3d(0px, -15px, 0px); }
  90% { transform: translate3d(0px, -4px, 0px); }
}

@keyframes flash { 
  0%, 50%, 100% { opacity: 1; }
  25%, 75% { opacity: 0; }
}

@keyframes pulse { 
  0% { transform: scaleX(1); }
  50% { transform: scale3d(1.05, 1.05, 1.05); }
  100% { transform: scaleX(1); }
}

@keyframes rubberBand { 
  0% { transform: scaleX(1); }
  30% { transform: scale3d(1.25, 0.75, 1); }
  40% { transform: scale3d(0.75, 1.25, 1); }
  50% { transform: scale3d(1.15, 0.85, 1); }
  65% { transform: scale3d(0.95, 1.05, 1); }
  75% { transform: scale3d(1.05, 0.95, 1); }
  100% { transform: scaleX(1); }
}

@keyframes shake { 
  0%, 100% { transform: translateZ(0px); }
  10%, 30%, 50%, 70%, 90% { transform: translate3d(-10px, 0px, 0px); }
  20%, 40%, 60%, 80% { transform: translate3d(10px, 0px, 0px); }
}

@keyframes headShake { 
  0% { transform: translateX(0px); }
  6.5% { transform: translateX(-6px) rotateY(-9deg); }
  18.5% { transform: translateX(5px) rotateY(7deg); }
  31.5% { transform: translateX(-3px) rotateY(-5deg); }
  43.5% { transform: translateX(2px) rotateY(3deg); }
  50% { transform: translateX(0px); }
}

@keyframes swing { 
  20% { transform: rotate(15deg); }
  40% { transform: rotate(-10deg); }
  60% { transform: rotate(5deg); }
  80% { transform: rotate(-5deg); }
  100% { transform: rotate(0deg); }
}

@keyframes tada { 
  0% { transform: scaleX(1); }
  10%, 20% { transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg); }
  30%, 50%, 70%, 90% { transform: scale3d(1.1, 1.1, 1.1) rotate(3deg); }
  40%, 60%, 80% { transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg); }
  100% { transform: scaleX(1); }
}

@keyframes wobble { 
  0% { transform: none; }
  15% { transform: translate3d(-25%, 0px, 0px) rotate(-5deg); }
  30% { transform: translate3d(20%, 0px, 0px) rotate(3deg); }
  45% { transform: translate3d(-15%, 0px, 0px) rotate(-3deg); }
  60% { transform: translate3d(10%, 0px, 0px) rotate(2deg); }
  75% { transform: translate3d(-5%, 0px, 0px) rotate(-1deg); }
  100% { transform: none; }
}

@keyframes jello { 
  0%, 11.1%, 100% { transform: none; }
  22.2% { transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% { transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% { transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% { transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% { transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% { transform: skewX(0.390625deg) skewY(0.390625deg); }
  88.8% { transform: skewX(-0.195312deg) skewY(-0.195312deg); }
}

@keyframes bounceIn { 
  0%, 20%, 40%, 60%, 80%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  20% { transform: scale3d(1.1, 1.1, 1.1); }
  40% { transform: scale3d(0.9, 0.9, 0.9); }
  60% { opacity: 1; transform: scale3d(1.03, 1.03, 1.03); }
  80% { transform: scale3d(0.97, 0.97, 0.97); }
  100% { opacity: 1; transform: scaleX(1); }
}

@keyframes bounceInDown { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(0px, -3000px, 0px); }
  60% { opacity: 1; transform: translate3d(0px, 25px, 0px); }
  75% { transform: translate3d(0px, -10px, 0px); }
  90% { transform: translate3d(0px, 5px, 0px); }
  100% { transform: none; }
}

@keyframes bounceInLeft { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(-3000px, 0px, 0px); }
  60% { opacity: 1; transform: translate3d(25px, 0px, 0px); }
  75% { transform: translate3d(-10px, 0px, 0px); }
  90% { transform: translate3d(5px, 0px, 0px); }
  100% { transform: none; }
}

@keyframes bounceInRight { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(3000px, 0px, 0px); }
  60% { opacity: 1; transform: translate3d(-25px, 0px, 0px); }
  75% { transform: translate3d(10px, 0px, 0px); }
  90% { transform: translate3d(-5px, 0px, 0px); }
  100% { transform: none; }
}

@keyframes bounceInUp { 
  0%, 60%, 75%, 90%, 100% { animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% { opacity: 0; transform: translate3d(0px, 3000px, 0px); }
  60% { opacity: 1; transform: translate3d(0px, -20px, 0px); }
  75% { transform: translate3d(0px, 10px, 0px); }
  90% { transform: translate3d(0px, -5px, 0px); }
  100% { transform: translateZ(0px); }
}

@keyframes bounceOut { 
  20% { transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% { opacity: 1; transform: scale3d(1.1, 1.1, 1.1); }
  100% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
}

@keyframes bounceOutDown { 
  20% { transform: translate3d(0px, 10px, 0px); }
  40%, 45% { opacity: 1; transform: translate3d(0px, -20px, 0px); }
  100% { opacity: 0; transform: translate3d(0px, 2000px, 0px); }
}

@keyframes bounceOutLeft { 
  20% { opacity: 1; transform: translate3d(20px, 0px, 0px); }
  100% { opacity: 0; transform: translate3d(-2000px, 0px, 0px); }
}

@keyframes bounceOutRight { 
  20% { opacity: 1; transform: translate3d(-20px, 0px, 0px); }
  100% { opacity: 0; transform: translate3d(2000px, 0px, 0px); }
}

@keyframes bounceOutUp { 
  20% { transform: translate3d(0px, -10px, 0px); }
  40%, 45% { opacity: 1; transform: translate3d(0px, 20px, 0px); }
  100% { opacity: 0; transform: translate3d(0px, -2000px, 0px); }
}

@keyframes fadeIn { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes fadeInDown { 
  0% { opacity: 0; transform: translate3d(0px, -100%, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeInDownBig { 
  0% { opacity: 0; transform: translate3d(0px, -2000px, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeInLeft { 
  0% { opacity: 0; transform: translate3d(-100%, 0px, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeInLeftBig { 
  0% { opacity: 0; transform: translate3d(-2000px, 0px, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeInRight { 
  0% { opacity: 0; transform: translate3d(100%, 0px, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeInRightBig { 
  0% { opacity: 0; transform: translate3d(2000px, 0px, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeInUp { 
  0% { opacity: 0; transform: translate3d(0px, 100%, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeInUpBig { 
  0% { opacity: 0; transform: translate3d(0px, 2000px, 0px); }
  100% { opacity: 1; transform: none; }
}

@keyframes fadeOut { 
  0% { opacity: 1; }
  100% { opacity: 0; }
}

@keyframes fadeOutDown { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, 100%, 0px); }
}

@keyframes fadeOutDownBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, 2000px, 0px); }
}

@keyframes fadeOutLeft { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(-100%, 0px, 0px); }
}

@keyframes fadeOutLeftBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(-2000px, 0px, 0px); }
}

@keyframes fadeOutRight { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(100%, 0px, 0px); }
}

@keyframes fadeOutRightBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(2000px, 0px, 0px); }
}

@keyframes fadeOutUp { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, -100%, 0px); }
}

@keyframes fadeOutUpBig { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(0px, -2000px, 0px); }
}

@keyframes flip { 
  0% { transform: perspective(400px) rotateY(-1turn); animation-timing-function: ease-out; }
  40% { transform: perspective(400px) translateZ(150px) rotateY(-190deg); animation-timing-function: ease-out; }
  50% { transform: perspective(400px) translateZ(150px) rotateY(-170deg); animation-timing-function: ease-in; }
  80% { transform: perspective(400px) scale3d(0.95, 0.95, 0.95); animation-timing-function: ease-in; }
  100% { transform: perspective(400px); animation-timing-function: ease-in; }
}

@keyframes flipInX { 
  0% { transform: perspective(400px) rotateX(90deg); animation-timing-function: ease-in; opacity: 0; }
  40% { transform: perspective(400px) rotateX(-20deg); animation-timing-function: ease-in; }
  60% { transform: perspective(400px) rotateX(10deg); opacity: 1; }
  80% { transform: perspective(400px) rotateX(-5deg); }
  100% { transform: perspective(400px); }
}

@keyframes flipInY { 
  0% { transform: perspective(400px) rotateY(90deg); animation-timing-function: ease-in; opacity: 0; }
  40% { transform: perspective(400px) rotateY(-20deg); animation-timing-function: ease-in; }
  60% { transform: perspective(400px) rotateY(10deg); opacity: 1; }
  80% { transform: perspective(400px) rotateY(-5deg); }
  100% { transform: perspective(400px); }
}

@keyframes flipOutX { 
  0% { transform: perspective(400px); }
  30% { transform: perspective(400px) rotateX(-20deg); opacity: 1; }
  100% { transform: perspective(400px) rotateX(90deg); opacity: 0; }
}

@keyframes flipOutY { 
  0% { transform: perspective(400px); }
  30% { transform: perspective(400px) rotateY(-15deg); opacity: 1; }
  100% { transform: perspective(400px) rotateY(90deg); opacity: 0; }
}

@keyframes lightSpeedIn { 
  0% { transform: translate3d(100%, 0px, 0px) skewX(-30deg); opacity: 0; }
  60% { transform: skewX(20deg); opacity: 1; }
  80% { transform: skewX(-5deg); opacity: 1; }
  100% { transform: none; opacity: 1; }
}

@keyframes lightSpeedOut { 
  0% { opacity: 1; }
  100% { transform: translate3d(100%, 0px, 0px) skewX(30deg); opacity: 0; }
}

@keyframes rotateIn { 
  0% { transform-origin: center center; transform: rotate(-200deg); opacity: 0; }
  100% { transform-origin: center center; transform: none; opacity: 1; }
}

@keyframes rotateInDownLeft { 
  0% { transform-origin: left bottom; transform: rotate(-45deg); opacity: 0; }
  100% { transform-origin: left bottom; transform: none; opacity: 1; }
}

@keyframes rotateInDownRight { 
  0% { transform-origin: right bottom; transform: rotate(45deg); opacity: 0; }
  100% { transform-origin: right bottom; transform: none; opacity: 1; }
}

@keyframes rotateInUpLeft { 
  0% { transform-origin: left bottom; transform: rotate(45deg); opacity: 0; }
  100% { transform-origin: left bottom; transform: none; opacity: 1; }
}

@keyframes rotateInUpRight { 
  0% { transform-origin: right bottom; transform: rotate(-90deg); opacity: 0; }
  100% { transform-origin: right bottom; transform: none; opacity: 1; }
}

@keyframes rotateOut { 
  0% { transform-origin: center center; opacity: 1; }
  100% { transform-origin: center center; transform: rotate(200deg); opacity: 0; }
}

@keyframes rotateOutDownLeft { 
  0% { transform-origin: left bottom; opacity: 1; }
  100% { transform-origin: left bottom; transform: rotate(45deg); opacity: 0; }
}

@keyframes rotateOutDownRight { 
  0% { transform-origin: right bottom; opacity: 1; }
  100% { transform-origin: right bottom; transform: rotate(-45deg); opacity: 0; }
}

@keyframes rotateOutUpLeft { 
  0% { transform-origin: left bottom; opacity: 1; }
  100% { transform-origin: left bottom; transform: rotate(-45deg); opacity: 0; }
}

@keyframes rotateOutUpRight { 
  0% { transform-origin: right bottom; opacity: 1; }
  100% { transform-origin: right bottom; transform: rotate(90deg); opacity: 0; }
}

@keyframes hinge { 
  0% { transform-origin: left top; animation-timing-function: ease-in-out; }
  20%, 60% { transform: rotate(80deg); transform-origin: left top; animation-timing-function: ease-in-out; }
  40%, 80% { transform: rotate(60deg); transform-origin: left top; animation-timing-function: ease-in-out; opacity: 1; }
  100% { transform: translate3d(0px, 700px, 0px); opacity: 0; }
}

@keyframes jackInTheBox { 
  0% { opacity: 0; transform: scale(0.1) rotate(30deg); transform-origin: center bottom; }
  50% { transform: rotate(-10deg); }
  70% { transform: rotate(3deg); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes rollIn { 
  0% { opacity: 0; transform: translate3d(-100%, 0px, 0px) rotate(-120deg); }
  100% { opacity: 1; transform: none; }
}

@keyframes rollOut { 
  0% { opacity: 1; }
  100% { opacity: 0; transform: translate3d(100%, 0px, 0px) rotate(120deg); }
}

@keyframes zoomIn { 
  0% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  50% { opacity: 1; }
}

@keyframes zoomInDown { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, -1000px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, 60px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}

@keyframes zoomInLeft { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}

@keyframes zoomInRight { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}

@keyframes zoomInUp { 
  0% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, 1000px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, -60px, 0px); animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}

@keyframes zoomOut { 
  0% { opacity: 1; }
  50% { opacity: 0; transform: scale3d(0.3, 0.3, 0.3); }
  100% { opacity: 0; }
}

@keyframes zoomOutDown { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, -60px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, 2000px, 0px); transform-origin: center bottom; animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}

@keyframes zoomOutLeft { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0px, 0px); }
  100% { opacity: 0; transform: scale(0.1) translate3d(-2000px, 0px, 0px); transform-origin: left center; }
}

@keyframes zoomOutRight { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0px, 0px); }
  100% { opacity: 0; transform: scale(0.1) translate3d(2000px, 0px, 0px); transform-origin: right center; }
}

@keyframes zoomOutUp { 
  40% { opacity: 1; transform: scale3d(0.475, 0.475, 0.475) translate3d(0px, 60px, 0px); animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  100% { opacity: 0; transform: scale3d(0.1, 0.1, 0.1) translate3d(0px, -2000px, 0px); transform-origin: center bottom; animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); }
}

@keyframes slideInDown { 
  0% { transform: translate3d(0px, -100%, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}

@keyframes slideInLeft { 
  0% { transform: translate3d(-100%, 0px, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}

@keyframes slideInRight { 
  0% { transform: translate3d(100%, 0px, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}

@keyframes slideInUp { 
  0% { transform: translate3d(0px, 100%, 0px); visibility: visible; }
  100% { transform: translateZ(0px); }
}

@keyframes slideOutDown { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(0px, 100%, 0px); }
}

@keyframes slideOutLeft { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(-100%, 0px, 0px); }
}

@keyframes slideOutRight { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(100%, 0px, 0px); }
}

@keyframes slideOutUp { 
  0% { transform: translateZ(0px); }
  100% { visibility: hidden; transform: translate3d(0px, -100%, 0px); }
}

:root { --blue: #007bff; --indigo: #6610f2; --purple: #6f42c1; --pink: #e83e8c; --red: #dc3545; --orange: #fd7e14; --yellow: #ffc107; --green: #28a745; --teal: #20c997; --cyan: #17a2b8; --white: #fff; --gray: #6c757d; --gray-dark: #343a40; --primary: #007bff; --secondary: #6c757d; --success: #28a745; --info: #17a2b8; --warning: #ffc107; --danger: #dc3545; --light: #f8f9fa; --dark: #343a40; --breakpoint-xs: 0; --breakpoint-sm: 576px; --breakpoint-md: 768px; --breakpoint-lg: 992px; --breakpoint-xl: 1200px; --font-family-sans-serif: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol"; --font-family-monospace: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace; }

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

html { font-family: sans-serif; line-height: 1.15; text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }

 footer, header, main, section { display: block; }

body { margin: 0px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; font-size: 1rem; font-weight: 400; line-height: 1.5; color: rgb(33, 37, 41); text-align: left; background-color: rgb(255, 255, 255); }

h1, h2, h3 { margin-top: 0px; margin-bottom: 0.5rem; }

p { margin-top: 0px; margin-bottom: 1rem; }

a { color: rgb(0, 123, 255); text-decoration: none; background-color: transparent; }

a:hover { color: rgb(0, 86, 179); text-decoration: underline; }

a:not([href]):not([tabindex]) { color: inherit; text-decoration: none; }

a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover { color: inherit; text-decoration: none; }

a:not([href]):not([tabindex]):focus { outline: 0px; }

img { vertical-align: middle; border-style: none; }

::-webkit-file-upload-button { font: inherit; appearance: button; }

output { display: inline-block; }

.h1, .h2, .h3, h1, h2, h3 { margin-bottom: 0.5rem; font-family: inherit; font-weight: 500; line-height: 1.2; color: inherit; }

.h1, h1 { font-size: 2.5rem; }

.h2, h2 { font-size: 2rem; }

.h3, h3 { font-size: 1.75rem; }

.container { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }

@media (min-width: 576px) {
  .container { max-width: 540px; }
}

@media (min-width: 768px) {
  .container { max-width: 720px; }
}

@media (min-width: 992px) {
  .container { max-width: 960px; }
}

@media (min-width: 1200px) {
  .container { max-width: 1140px; }
}

.container-fluid { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }

.row { display: flex; flex-wrap: wrap; margin-right: -15px; margin-left: -15px; }

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto { position: relative; width: 100%; min-height: 1px; padding-right: 15px; padding-left: 15px; }

.col { flex-basis: 0%; flex-grow: 1; max-width: 100%; }

.col-auto { flex: 0 0 auto; width: auto; max-width: none; }

.col-1 { flex: 0 0 8.33333%; max-width: 8.33333%; }

.col-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }

.col-3 { flex: 0 0 25%; max-width: 25%; }

.col-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }

.col-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }

.col-6 { flex: 0 0 50%; max-width: 50%; }

.col-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }

.col-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }

.col-9 { flex: 0 0 75%; max-width: 75%; }

.col-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }

.col-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }

.col-12 { flex: 0 0 100%; max-width: 100%; }

@media (min-width: 576px) {
  .col-sm { flex-basis: 0%; flex-grow: 1; max-width: 100%; }
  .col-sm-auto { flex: 0 0 auto; width: auto; max-width: none; }
  .col-sm-1 { flex: 0 0 8.33333%; max-width: 8.33333%; }
  .col-sm-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
  .col-sm-3 { flex: 0 0 25%; max-width: 25%; }
  .col-sm-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  .col-sm-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  .col-sm-6 { flex: 0 0 50%; max-width: 50%; }
  .col-sm-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  .col-sm-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
  .col-sm-9 { flex: 0 0 75%; max-width: 75%; }
  .col-sm-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  .col-sm-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  .col-sm-12 { flex: 0 0 100%; max-width: 100%; }
}

@media (min-width: 768px) {
  .col-md { flex-basis: 0%; flex-grow: 1; max-width: 100%; }
  .col-md-auto { flex: 0 0 auto; width: auto; max-width: none; }
  .col-md-1 { flex: 0 0 8.33333%; max-width: 8.33333%; }
  .col-md-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
  .col-md-3 { flex: 0 0 25%; max-width: 25%; }
  .col-md-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  .col-md-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  .col-md-6 { flex: 0 0 50%; max-width: 50%; }
  .col-md-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  .col-md-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
  .col-md-9 { flex: 0 0 75%; max-width: 75%; }
  .col-md-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  .col-md-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  .col-md-12 { flex: 0 0 100%; max-width: 100%; }
  .offset-md-1 { margin-left: 8.33333%; }
  .offset-md-2 { margin-left: 16.6667%; }
}

@media (min-width: 992px) {
  .col-lg { flex-basis: 0%; flex-grow: 1; max-width: 100%; }
  .col-lg-auto { flex: 0 0 auto; width: auto; max-width: none; }
  .col-lg-1 { flex: 0 0 8.33333%; max-width: 8.33333%; }
  .col-lg-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
  .col-lg-3 { flex: 0 0 25%; max-width: 25%; }
  .col-lg-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  .col-lg-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  .col-lg-6 { flex: 0 0 50%; max-width: 50%; }
  .col-lg-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  .col-lg-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
  .col-lg-9 { flex: 0 0 75%; max-width: 75%; }
  .col-lg-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  .col-lg-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  .col-lg-12 { flex: 0 0 100%; max-width: 100%; }
}

@media (min-width: 1200px) {
  .col-xl { flex-basis: 0%; flex-grow: 1; max-width: 100%; }
  .col-xl-auto { flex: 0 0 auto; width: auto; max-width: none; }
  .col-xl-1 { flex: 0 0 8.33333%; max-width: 8.33333%; }
  .col-xl-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
  .col-xl-3 { flex: 0 0 25%; max-width: 25%; }
  .col-xl-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  .col-xl-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  .col-xl-6 { flex: 0 0 50%; max-width: 50%; }
  .col-xl-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  .col-xl-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
  .col-xl-9 { flex: 0 0 75%; max-width: 75%; }
  .col-xl-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
  .col-xl-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
  .col-xl-12 { flex: 0 0 100%; max-width: 100%; }
}

.col-form-label { padding-top: calc(1px + 0.375rem); padding-bottom: calc(1px + 0.375rem); margin-bottom: 0px; font-size: inherit; line-height: 1.5; }

.col-form-label-lg { padding-top: calc(1px + 0.5rem); padding-bottom: calc(1px + 0.5rem); font-size: 1.25rem; line-height: 1.5; }

.col-form-label-sm { padding-top: calc(1px + 0.25rem); padding-bottom: calc(1px + 0.25rem); font-size: 0.875rem; line-height: 1.5; }

.fade { transition: opacity 0.15s linear; }

@media screen and (prefers-reduced-motion: reduce) {
  .fade { transition: none; }
}

.fade:not(.show) { opacity: 0; }

.collapse:not(.show) { display: none; }

.collapsing { position: relative; height: 0px; overflow: hidden; transition: height 0.35s; }

@media screen and (prefers-reduced-motion: reduce) {
  .collapsing { transition: none; }
}

@-webkit-keyframes progress-bar-stripes { 
  0% { background-position: 1rem 0px; }
  100% { background-position: 0px 0px; }
}

@keyframes progress-bar-stripes { 
  0% { background-position: 1rem 0px; }
  100% { background-position: 0px 0px; }
}

.carousel { position: relative; }

.carousel-inner { position: relative; width: 100%; overflow: hidden; }

.carousel-item { position: relative; display: none; align-items: center; width: 100%; transition: transform 0.6s, -webkit-transform 0.6s; backface-visibility: hidden; perspective: 1000px; }

@media screen and (prefers-reduced-motion: reduce) {
  .carousel-item { transition: none; }
}

.carousel-item-next, .carousel-item-prev, .carousel-item.active { display: block; }

.carousel-item-next, .carousel-item-prev { position: absolute; top: 0px; }

.carousel-item-next.carousel-item-left, .carousel-item-prev.carousel-item-right { transform: translateX(0px); }

@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) {
  .carousel-item-next.carousel-item-left, .carousel-item-prev.carousel-item-right { transform: translate3d(0px, 0px, 0px); }
}

.active.carousel-item-right, .carousel-item-next { transform: translateX(100%); }

@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) {
  .active.carousel-item-right, .carousel-item-next { transform: translate3d(100%, 0px, 0px); }
}

.active.carousel-item-left, .carousel-item-prev { transform: translateX(-100%); }

@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) {
  .active.carousel-item-left, .carousel-item-prev { transform: translate3d(-100%, 0px, 0px); }
}

.carousel-fade .carousel-item { opacity: 0; transition-duration: 0.6s; transition-property: opacity; }

.carousel-fade .carousel-item-next.carousel-item-left, .carousel-fade .carousel-item-prev.carousel-item-right, .carousel-fade .carousel-item.active { opacity: 1; }

.carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-right { opacity: 0; }

.carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-prev, .carousel-fade .carousel-item-next, .carousel-fade .carousel-item-prev, .carousel-fade .carousel-item.active { transform: translateX(0px); }

@supports ((-webkit-transform-style:preserve-3d) or (transform-style:preserve-3d)) {
  .carousel-fade .active.carousel-item-left, .carousel-fade .active.carousel-item-prev, .carousel-fade .carousel-item-next, .carousel-fade .carousel-item-prev, .carousel-fade .carousel-item.active { transform: translate3d(0px, 0px, 0px); }
}

.carousel-control-next, .carousel-control-prev { position: absolute; top: 0px; bottom: 0px; display: flex; align-items: center; justify-content: center; width: 15%; color: rgb(255, 255, 255); text-align: center; opacity: 0.5; }

.carousel-control-next:focus, .carousel-control-next:hover, .carousel-control-prev:focus, .carousel-control-prev:hover { color: rgb(255, 255, 255); text-decoration: none; outline: 0px; opacity: 0.9; }

.carousel-control-prev { left: 0px; }

.carousel-control-next { right: 0px; }

.carousel-control-next-icon, .carousel-control-prev-icon { display: inline-block; width: 20px; height: 20px; background: center center / 100% 100% no-repeat transparent; }

.carousel-control-prev-icon { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E"); }

.carousel-control-next-icon { background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E"); }

.carousel-indicators { position: absolute; right: 0px; bottom: 10px; left: 0px; z-index: 15; display: flex; justify-content: center; padding-left: 0px; margin-right: 15%; margin-left: 15%; list-style: none; }

.carousel-indicators .active { background-color: rgb(255, 255, 255); }

.carousel-caption { position: absolute; right: 15%; bottom: 20px; left: 15%; z-index: 10; padding-top: 20px; padding-bottom: 20px; color: rgb(255, 255, 255); text-align: center; }

.border { border: 1px solid rgb(222, 226, 230) !important; }

.d-none { display: none !important; }

.d-inline { display: inline !important; }

.d-inline-block { display: inline-block !important; }

.d-block { display: block !important; }

.d-table { display: table !important; }

.d-table-row { display: table-row !important; }

.d-table-cell { display: table-cell !important; }

.d-flex { display: flex !important; }

.d-inline-flex { display: inline-flex !important; }

@media (min-width: 576px) {
  .d-sm-none { display: none !important; }
  .d-sm-inline { display: inline !important; }
  .d-sm-inline-block { display: inline-block !important; }
  .d-sm-block { display: block !important; }
  .d-sm-table { display: table !important; }
  .d-sm-table-row { display: table-row !important; }
  .d-sm-table-cell { display: table-cell !important; }
  .d-sm-flex { display: flex !important; }
  .d-sm-inline-flex { display: inline-flex !important; }
}

@media (min-width: 768px) {
  .d-md-none { display: none !important; }
  .d-md-inline { display: inline !important; }
  .d-md-inline-block { display: inline-block !important; }
  .d-md-block { display: block !important; }
  .d-md-table { display: table !important; }
  .d-md-table-row { display: table-row !important; }
  .d-md-table-cell { display: table-cell !important; }
  .d-md-flex { display: flex !important; }
  .d-md-inline-flex { display: inline-flex !important; }
}

@media (min-width: 992px) {
  .d-lg-none { display: none !important; }
  .d-lg-inline { display: inline !important; }
  .d-lg-inline-block { display: inline-block !important; }
  .d-lg-block { display: block !important; }
  .d-lg-table { display: table !important; }
  .d-lg-table-row { display: table-row !important; }
  .d-lg-table-cell { display: table-cell !important; }
  .d-lg-flex { display: flex !important; }
  .d-lg-inline-flex { display: inline-flex !important; }
}

@media (min-width: 1200px) {
  .d-xl-none { display: none !important; }
  .d-xl-inline { display: inline !important; }
  .d-xl-inline-block { display: inline-block !important; }
  .d-xl-block { display: block !important; }
  .d-xl-table { display: table !important; }
  .d-xl-table-row { display: table-row !important; }
  .d-xl-table-cell { display: table-cell !important; }
  .d-xl-flex { display: flex !important; }
  .d-xl-inline-flex { display: inline-flex !important; }
}

@media print {
  .d-print-none { display: none !important; }
  .d-print-inline { display: inline !important; }
  .d-print-inline-block { display: inline-block !important; }
  .d-print-block { display: block !important; }
  .d-print-table { display: table !important; }
  .d-print-table-row { display: table-row !important; }
  .d-print-table-cell { display: table-cell !important; }
  .d-print-flex { display: flex !important; }
  .d-print-inline-flex { display: inline-flex !important; }
}

.mt-2 { margin-top: 0.5rem !important; }

 .px-3 { padding-right: 1rem !important; }

.pb-3 { padding-bottom: 1rem !important; }

 .px-3 { padding-left: 1rem !important; }

.pt-4 { padding-top: 1.5rem !important; }

.pt-5, .py-5 { padding-top: 3rem !important; }

.pb-5, .py-5 { padding-bottom: 3rem !important; }

@media (min-width: 576px) {
   .px-sm-5 { padding-right: 3rem !important; }
   .px-sm-5 { padding-left: 3rem !important; }
}

@media (min-width: 992px) {
  .pb-lg-5 { padding-bottom: 3rem !important; }
}

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

@media print {
  *, ::after, ::before { text-shadow: none !important; box-shadow: none !important; }
  a:not(.btn) { text-decoration: underline; }
  img { break-inside: avoid; }
  h2, h3, p { orphans: 3; widows: 3; }
  h2, h3 { break-after: avoid; }
  @page { size: a3; }
  body { min-width: 992px !important; }
  .container { min-width: 992px !important; }
}







html { scroll-behavior: smooth; }

.zindex-2 { z-index: 2; }

@media (min-width: 768px) {
  .oxford-bg3 { background: linear-gradient(rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.8)) 0% 0% / cover, url("../images/oxford-bg.jpg") fixed; position: relative; }
}

body { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; }

body main { min-height: 100vh; }

body h1 { font-size: 2.6rem; }

@media (min-width: 576px) {
  body h1 { font-size: 3.3rem; }
}

body h2 { font-size: 2.4rem; }

@media (min-width: 576px) {
  body h2 { font-size: 3rem; }
}

body p, body h3 { font-size: 1.2rem; }

header { background: linear-gradient(rgb(11, 32, 64), rgb(11, 32, 64)); color: rgb(255, 255, 255); height: 130px; transition: 0.3s; position: fixed; text-transform: uppercase; width: 100%; z-index: 10; }

header .logo { position: static; }

header .logo img { height: 190px; position: relative; top: -17px; }

header .logoMobile { display: block; }

header .logoMobile img { height: 150px; position: relative; top: -20px; }

header .logoNormal { display: none; }

@media (min-width: 992px) {
  header { background: linear-gradient(rgb(42, 60, 90), rgba(42, 60, 90, 0)); height: 170px; position: absolute; }
  header .logo { left: 20px; position: absolute; }
  header .logo img { position: relative; height: 210px; padding-top: 0px; top: 0px; }
  header .logoMobile { display: none; }
  header .logoNormal { display: block; }
}

footer { background-color: rgb(42, 60, 90); color: rgb(255, 255, 255); }

.slider .carousel-item { height: 100vh; min-height: 300px; background-size: cover; }

.slider .carousel.fade { opacity: 1; }

.slider .carousel.fade .carousel-item { opacity: 0; position: absolute; top: 0px; transition: opacity 0.7s ease-in-out; width: 100%; z-index: 1; display: block !important; left: 0px !important; }

.slider .carousel.fade .carousel-item:first-child { position: relative; top: auto; }

.slider .carousel.fade .carousel-item.active { opacity: 1; transition: opacity 0.7s ease-in-out; z-index: 2; }

.slider .carousel-control-next, .slider .carousel-control-prev { display: none; }

.about { padding-top: 40px; }

.about h2 { margin-bottom: 40px; }

@media (min-width: 768px) {
  .about { padding-bottom: 80px; padding-top: 80px; }
}

.project-item { z-index: 2; }

.project-item a { text-decoration: none; }

.project-item p, .project-item h2, .project-item h3 { color: rgb(33, 37, 41); text-decoration: none; text-transform: uppercase; }

.project-item .item-image { border-radius: 50%; overflow: hidden; position: relative; transform: translateZ(0px); }

.project-item .item-image img { border-radius: 50%; transform: translateZ(0px); transition: 0.6s; filter: grayscale(0%); width: 100%; }

.project-item .item-image::after { transition: 0.6s; border-radius: 50%; content: ""; height: 100%; left: 0px; overflow: hidden; position: absolute; top: 0px; width: 100%; }

.project-item:hover { text-decoration: none !important; }

.project-item:hover h3 { color: rgb(33, 51, 82); }

.project-item:hover .item-image img { transform: scale(1.1); }

.recent-projects, .partners { padding-bottom: 80px; }

.recent-projects .container, .partners .container { z-index: 2; }

.mobile-padding { padding-top: 130px; }

@media (min-width: 992px) {
  .mobile-padding { padding-top: 0px; }
}
/* Holding page additions */
.holding-note { text-align: center; font-weight: 700; margin-top: 2rem; }
.about a, footer a { color: inherit; text-decoration: underline; }
.recent-projects { padding-bottom: 3rem; }
