html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, 
address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, 
caption, tbody, tfoot, thead, tr, th, td {
  margin:0; padding:0; border:0; font-size:100%; }
  
html {text-size-adjust:100%;}
html, body {margin:0; padding:0; height:100%; width:100%; overflow-x: hidden; overflow-x: visible; position: relative; 	color:#0c1116; font-family: "Noto Sans JP"; font-optical-sizing: auto; font-weight: 500; font-style: normal;}
body {background-color:white; font-size:15px; -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased;}
body#en {font-family: "Whitney SSm A", "Whitney SSm B";}
.ja {font-family: "Noto Sans JP"; font-optical-sizing: auto !important;}

article, footer, header, main, menu, nav, section {display:block;}

*,*:before,*:after {box-sizing:border-box}
.clearfix:after {content:"."; display:block; clear:both; visibility:hidden; line-height:0; height:0;}
.clearfix:before,.container:before,.row:before,.clearfix:after,.container:after,.row:after {display:table; content:" ";}
.clearfix:after,.container:after,.row:after {clear:both;}
* html .clearfix {height:1%;}
.relative {position: relative;}
.absolute {position: absolute; content:"";}
.fixed {position: fixed;}
.sticky {position: sticky;}
.overflow-hidden {overflow: hidden;}
.overflow-x-visible {overflow-x: visible;}

h1, h2, h3, h4, strong {font-weight: 700; font-style: normal;}
h1 {font-size:2.3em; margin:15px 0;}
h1.smaller {font-size: 24px;}
h1.mainlead {font-size: 21px;}
h2 {font-size:1.8em; margin:15px 0; line-height: 1.3em;}
h2 a {line-height: 1.2em;}
h3 {font-size:1.3em; margin:15px 0;}
h4 {font-size:1em;  margin:5px 0 10px; text-transform: none;}

p {line-height:1.8em; margin:0 0 1.5em; font-size:15px; font-weight: 400;}
body#en p {line-height:1.5em; margin:0 0 1.5em; font-size:15px;}
p.withlink {margin-bottom: 7px;}
.more-line {line-height: 2.2em;}
.no-line {line-height: 0;}
.padding p:last-of-type {margin-bottom: 0;}
.meta {margin: 5px 0; font-size: 11px; line-height: 1.6em;}

hr {border:0; border-top:1px solid rgba(0,0,0,0.3); border-bottom:0 solid #fff; 
  box-sizing:content-box; margin:2em auto; overflow:visible;}
hr.titling {display: block; margin: 50px 0 -15px; width: 100%; height: 1px; border: 0; background-color: rgba(0, 0, 0, 0.35);}
hr.titling + h4 {display: inline-block; position: relative; left: 50%; margin: 0; padding: 5px 10px; border: 1px solid #000; 
	transform: translateX(-50%); color: #000; font-size: 12px; font-weight: 500; letter-spacing: 0.32em; 
	text-align: center; text-transform: uppercase; background-color: white;}
hr.titling + h4::first-letter {margin-left: 0.32em;}
hr.titling + h4 {border-width: 1px 0;}
hr.titling + h4::before, hr + h4::after {display: block; position: absolute; top: 0; bottom: 0; width: 1px; 
	background: #000; content: "";}
hr.titling + h4::before {left: 0;}
hr.titling + h4::after {right: 0;}
.bump {margin-bottom: 50px;}

a, a:active, a:visited, a:hover, a img {outline:none;}
a img {border:none; outline:none;}
a {color: #2794c5; line-height: 1.5em; text-decoration:none; font-weight: bold; transition:.2s; position:relative; z-index:1;}

a:hover {color:#000;}
a[href^=tel] {cursor:text; color:inherit; text-decoration:none;}
a[href^=tel]:hover {text-decoration:none;}
.fancy-hover-wrap:hover .fancy-hover, .fancy-hover:hover {background-size:100% 100%;}
.fancy-hover {background-image:linear-gradient(180deg, transparent 45%, #ffda00 0); background-size:0 100%; 
	background-repeat:no-repeat; transition:background-size .4s ease;}
.fancy-hover.whiter {background-image:linear-gradient(180deg, transparent 0%, #fff 0);}

em {font-style:italic;}
strong {font-weight:bold;}
small {font-size:.8em;}
.caveats {margin: 30px 0;}
.caveats p {font-size: 13px; line-height: 18px; margin: 15px 0;}
.spaced {letter-spacing:.15em;}
.bordered {border: 1px solid white;}
.bordered-thick {border: 10px solid white;}
.bordered-black {border: 1px solid black;}
.underline {background-image:linear-gradient(180deg, #000 100%, transparent 0); 
	background-position:left bottom; background-size:100% 2px; background-repeat:no-repeat;}
.underline.whiter {background-image:linear-gradient(180deg, #ffffff 100%, transparent 0);}
.bigunderline {text-underline-offset: .375rem; -webkit-text-decoration-skip-ink: none; text-decoration-skip-ink: none; 
	-webkit-text-decoration-line: underline; text-decoration-line: underline; -webkit-text-decoration-color: #ffe01b; 
	text-decoration-color: #ffe01b; text-decoration-thickness: .5rem;}

.text-white {color:white !important;}
.text-white a {color:white;}
.text-white a:hover {color:white;}
a.text-white {color:white;}
a:hover.text-white {color:white;}

.text-canary {color:#ffda00;}
.text-muted {color:rgba(59,57,40,0.8);}
.text-muted a {color:rgba(59,57,40,0.8);}
.text-muted a:hover {color:rgba(59,57,40,1);}
.text-red {color:#d55c62 !important;}
.text-black {color:rgba(35,32,5,1);}

.texts a {background-color:#faf28e; padding: 2px;}
.text-yellow {color: #fcee1d;}
.text-orange {color: #eba233;}
.text-red {color: #e65467;}
.text-sky {color: #72c4cf;}
.text-blue {color: #2794c5;}

.white {background-color:#ffffff !important;}
.fog {background-color: #e5e5e5;}
.canary {background-color:#ffda00 !important;}
.charcoal {background-color: #40403f;}
.dark {background-color:#002855;}
.black {background-color:#232005 !important;}

.beige {background-color:#f3eee6 !important;}
.gray {background-color:#f9f9f9 !important;}
.ivory {background-color:#e8e4dc !important;}
.blush {background-color:#e7dbd9 !important;}

.yellow {background-color: #fcee1d;}
.orange {background-color: #eba233;}
.red {background-color: #e65467;}
.green {background-color: #72c4cf;}
.blue {background-color: #039bd7 !important;}
.keylime {background-color: #d2eae6;}
.lemonwhip {background-color: #f9f7d9;}

.tan {background-color: #f3eee6 !important;}
.aulait {background-color: #e8e4dc !important;}
.latte {background-color: #e6d8b7 !important;}
.stir {background: rgb(255,255,255); background: linear-gradient(180deg, rgba(255,255,255,1) 0%,
	 rgba(249,247,243,1) 49%, rgba(243,238,230,1) 100%);}
.eggshell {background-color: #edfbfc !important;}

.text-small {font-size:.875em;}
.text-xsmall {font-size:.7em;}
.text-large {font-size:1.3125em; line-height:1.4;}
.text-pluslarge {font-size:1.5em; line-height:1.4;}
.text-xlarge {font-size:1.75em; line-height:1.4;}
.text-xxlarge {font-size: 70px;}
.text-normal {font-weight:normal !important;}
.text-center {text-align:center;}
.text-right {text-align:right;}
.text-left {text-align:left;}
.text-caps {text-transform: uppercase;}
.text-vertical {transform: rotate(-90deg);}
.text-vertical {top:27%; left:-25%;}
.text-vertical-right {transform: rotate(-270deg);}
.text-pulse {animation: alert-black 1s infinite;}
.spin {animation: spin 2s linear infinite;}
.craft {background: repeat url(textures/craft.jpg);}
.highlight {padding: 8px 24px; background-color:#fbf7b3;}
.calendar-text {margin-top: .3em; color: white;}

.transparent {background-color: transparent;}
.inverse {background-color: #002855; padding: 10px 20px; color:#fff; display: inline-block;}
.opacity-half {opacity:.5;}
.shadow {box-shadow:0 0 55px rgba(0,0,0,0.3);}
.shadow-framed {box-shadow: 0 20px 55px rgba(82,109,122,.25);}
.no-shadow {box-shadow: none;}

.pop a img {box-shadow:5px 5px 10px rgba(0,0,0,0.1); transition:all 0.1s ease-in-out;}
.pop p a:hover img {box-shadow:5px 5px 15px rgba(0,0,0,0.3); transform:scale(1.03);}
.popper:hover {box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px; 
	z-index: 50; background-color: white;}
.z-pos {z-index: 2;}
.z-neg {z-index: -1;}
.vignette {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 4; opacity: .7; background-image: radial-gradient(center center, ellipse cover, transparent, black); background-image: -o-radial-gradient(center center, ellipse cover, transparent, black); background-image: -ms-radial-gradient(center center, ellipse cover, transparent, black); background-image: -moz-radial-gradient(center center, ellipse cover, transparent, black); background-image: -webkit-radial-gradient(center center, ellipse cover, transparent, black);}

figure {position: relative; display:block; margin: 0;}
figure img {vertical-align: bottom;}
figure figcaption {position: absolute; right: 0; bottom: 0; margin: 0 20px 20px; display: flex; align-items: center; 
	justify-content: center; background-color: rgba(0, 0, 0, 0.2); color: rgba(253, 253, 253, 0.5); 
	font-size: 9px; text-transform: uppercase;}
img {max-width:100%; height:auto; border:0; -ms-interpolation-mode:bicubic; margin: 0; padding: 0;}
img.round {border-radius:50%}
img.block {display: block;}
img.wide100 {width:100%;}

.area {background-repeat: no-repeat; background-position: center top; background-size: cover; overflow: hidden; position: relative;}
.cover {bottom: -1px; -webkit-transform-origin: 50% 50%; -ms-transform-origin: 50% 50%; transform-origin: 50% 50%; 	-moz-appearance: position:absolute; left: 0; top: 0; width: 100%; height: 100%; background-size: cover; 	background-repeat: no-repeat; background-position: center center;}
a.monochrome img {filter:grayscale(1);}
a.monochrome img:hover {filter:none;}
.grid-third img {width: 100%;}
.copyright {position: absolute; bottom: -15px; right:4%; font-size: .7em;} 
.copyright-on {position: absolute; bottom: 15px; right:4%; font-size: .7em;} 

video.flow {max-width:100%; height:auto;}
video.contain {object-fit: contain; content: normal;}
.background-video {height:auto; left:50%; min-height:100%; min-width:100%; position:absolute; top:50%; 
	transform:translateX(-50%) translateY(-50%); width:auto; z-index:0; background-size: cover;}
.container-video {max-width: 100%; text-align: center;}

blockquote {margin:0 0 .7em 0; border-left:.7em solid #f1f1f1; padding-left:.7em; font-weight:normal; 
	position: relative; text-align: left; font-size:.9em; line-height: 1em;}
blockquote:before, blockquote:after, q:before, q:after {content:'';}
blockquote.leader {border: none;}

.float-left {float:left !important;}
.float-center {float:none; margin-left:auto; margin-right:auto;}
.float-right {float:right !important;}
.float-clear {clear:both; float:none !important;}
.inline {display: inline-block !important;}
.margin {margin:1.5em !important;}
.margin-top {margin-top:1.5em !important;}
.margin-top-more {margin-top:3em !important;}
.margin-top-most {margin-top:80px !important;}
.margin-bottom-more {margin-bottom:3em !important;}
.margin-bottom {margin-bottom:1.5em !important;}
.margin-bottom-less {margin-bottom: 20px;}
.margin-bottom-small {margin-bottom:.7em !important;}
.margin-bottom-smaller {margin-bottom:.4em !important;}
.margin-right {margin-right: 1.5em !important;}
.margin-right-more {margin-right: 3em !important;}
.margin-pull {width:calc(100% - 4%); margin-left:2%; margin-right:2%;}
.no-margin {margin:0 !important;}
.no-margin-top {margin-top:0 !important;}
.no-margin-bottom {margin-bottom:0 !important;}
.padding {padding:1.5em !important;}
.padding-less {padding:.5em !important;}
.padding-more {padding:3em 4em !important;}
.padding-right {padding-right: 3em !important;}
.padding-left {padding-left: 3em !important;}
.padding-top-first {padding-top:7em !important;}
.padding-top-more {padding-top:3em !important;}
.padding-top {padding-top:1.5em !important;}
.padding-top-small {padding-top:.7em !important;}
.padding-top-first {padding-top:7em !important;}
.padding-top-first-mobile {padding-top:5em !important;}
.padding-bottom {padding-bottom:1.5em !important;}
.padding-bottom-small {padding-bottom:.5em !important;}
.padding-bottom-more {padding-bottom:3em !important;}
.padding-sides {padding-left: 20%; padding-right: 20%;}
.padding-box {padding: 40px 7.5% !important;}
.no-margin-top {margin-top: 0;}
.no-padding {padding:0 !important;}
.no-padding-top {padding-top:0 !important;}
.no-padding-bottom {padding-bottom:0 !important;}
.no-padding-left {padding-left:0 !important;}
.no-padding-right {padding-right:0 !important;}
.hide-mobile {display:none !important;}
.hide-desktop {display:inherit !important;}
.hide {display:none !important;}

.desktop-padding {padding-top: 0;}
.bumper {height:80px;}

.position-n {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.position-nw {position: absolute; top:0; left:0;}
.position-ne {position: absolute; top:0; right:0;}
.position-se {position: absolute; bottom:0; right:0;}
.position-sw {position: absolute; bottom:0; left:0;}
.position-s {position: absolute; bottom: 50px; left: 50%; transform: translate(-50%, -50%);}
.position-padding {padding: 40px;}
.position-negative {margin-bottom: -40px;}

ul, ol {margin:0 0 1.5625em 2em; padding:0; line-height:1.5em;}
ul ul, ul ol, ol ol, ol ul {margin-bottom:0;}
ul li, ol li {margin-bottom: 15px; font-size: 15px; line-height:1.8em;}
body#en ul li, ol li {line-height:1.5em;}
dl, dd {margin:0; padding:0;}
dd {margin-bottom:1.5625em;}
dt {font-weight:bold;}
.list-unstyled {margin-left:0; list-style:none;}
.list-spaced li {padding:0 0 .78125em 0;}
.list-inline {list-style:none; margin-left:-.625em; margin-right:-.625em; padding:0;}
.list-inline li {display:inline; margin-left:.625em; margin-right:.625em;}
.list-star {list-style:none; margin-left:0;}
.list-star li {padding-left:1.3em;}
.list-star li::before {content:'\2733\FE0E'; display:block; margin-left:-1.3em; float:left;}
.list-arrow {list-style:none; margin-left:0;}
.list-arrow li {padding-left:1.3em;}
.list-arrow li::before {content:'\02192\FE0E'; display:block; margin-left:-1.3em; float:left;}
.list-lined li {padding-bottom:9px; margin-bottom:7px; border-bottom:2px solid rgba(0,0,0,0.1);}
.list-lined li:last-of-type {border:none}
.list-step {margin-left:0; list-style:none; counter-reset:step;}
.list-step li.active {color:black; font-weight: bold;}
.list-step li.active:after {content:'\25b8';}
.list-step li:before {content:counter(step); counter-increment:step; display:inline-block; margin-right:10px;}
.list-step li:after {float:left; content:'\00A0'; width:18px; display:inline-block;}

ul.nostyle {list-style: none; margin-left: 0;}
ul.nostyle li {list-style: none; margin-left: 0;}
ul.checklist {flex-wrap: wrap; justify-content: left; display: flex;-webkit-columns: 2; -moz-columns: 2; columns: 2; 
	display: block; margin: 0; padding: 0;}
ul.checklist li {color: #241c15; flex-wrap: nowrap; align-items: center; margin: 0 .625rem .625rem 0; padding: 0; text-align: left;}
ul.checklist li.flex {justify-content: left;}
ul.checklist li i {padding-right: 8px;}
#schools ul.checklist li {font-size: 12px; line-height: 17px; font-weight: bold; margin: 0 0 5px 0;}

table {width: 100%; max-width: 100%; display: table; border-top-color: gray; text-indent: initial; border-spacing: 0;}
table, th, td {border-collapse: collapse;}
thead {display: table-header-group; vertical-align: middle;}
tr {display: table-row; vertical-align: inherit;}
th {padding: 1em; text-align: left; vertical-align: top; border: none;}
tbody {display: table-row-group; vertical-align: middle;}
td {background-color: white; border: 1px solid #ddd; padding: .5em 1em; vertical-align: top; text-align: left;}
tr:nth-of-type(odd) td {background-color:#f9f9f9;}
td span {font-size:80%;}
td {width: 15%;}
tbody tr td:first-child {width: 55%;}

btn:focus, a:focus {outline: none;}
.btn {cursor:default; text-align:center; line-height:normal; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; 
	background:rgba(0,0,0,0.8); color:rgba(255,255,255,0.9); border:2px solid transparent; display:inline-block; cursor:pointer; 
	text-align:center; vertical-align:middle; padding:.3em .9em .5em .9em; letter-spacing: normal; box-shadow:0 2px 3px rgba(0,0,0,0.3); 	margin-top: 10px;}
.btn:hover, a .btn:hover, .btn:focus, a .btn:focus {background:#000; border-color:#000; color:#fff; text-decoration:none; outline:0;}
.btn:active, a .btn:active, .btn.active {box-shadow:none; background:#000; border-color:#000; color:#fff; text-decoration:none; outline:0;}
.btn-secondary {background-color:transparent; border:3px solid #000; text-transform:uppercase; color: black;}
.btn-secondary:hover, a .btn-secondary:hover, .btn-secondary:focus, a .btn-secondary:focus, .btn-secondary:active, 
	a .btn-secondary:active, .btn-secondary.active {background:black; color: #fff;}
.btn-whiteline {background-color:transparent; border:3px solid #fff; text-transform:uppercase; color: #fff;}
.btn-whiteline:hover, a .btn-whiteline:hover, .btn-whiteline:focus, a .btn-whiteline:focus, .btn-whiteline:active, 
	a .btn-whiteline:active, .btn-whiteline.active {background:black; color: #fff;}
.btn-yellowline {background-color:transparent; border:2px solid #ffda00; text-transform:uppercase; color: #fff;}
.btn-yellowline:hover, a .btn-yellowline:hover, .btn-yellowline:focus, a .btn-yellowline:focus, .btn-yellowline:active, 
	a .btn-yellowline:active, .btn-yellowline.active {background:#ffda00; color: #000;}
.btn-large {padding:10px 20px 11px 20px;}
.btn-xlarge {padding:17px 22px 17px;}
.btn-pulse {animation:pulse 2s infinite;}
.btn-inline {margin-top:10px;}
.btn-smaller {font-size: .8em; padding: .2em .7em .3em;}

.btn-canary {background-color:#ffda00; border:none; color: black;  
	padding:14px 28px; font-size: 14px; line-break: 21px;}
.btn-canary:hover, a .btn-canary:hover, .btn-canary:focus, a .btn-canary:focus, .btn-canary:active, 
	a .btn-canary:active, .btn-canary.active {background:#ffda00; color:#005ec4;}
.btn-blue {background-color:#2794c5; border:none; color: white; 
		padding:14px 28px; font-size: 14px; line-break: 21px;}
.btn-blue:hover, a .btn-canary:hover, .btn-canary:focus, a .btn-canary:focus, .btn-canary:active, 
		a .btn-canary:active, .btn-canary.active {background:#039bd7; color:#ffda00;}
.btn-sky {background-color:#d2eae6; border:none; color: black; 
		padding:14px 28px; font-size: 14px; line-break: 21px;}
.btn-sky:hover, a .btn-sky:hover, .btn-sky:focus, a .btn-sky:focus, .btn-sky:active, 
		a .btn-sky:active, .btn-sky.active {background:#ffda00; color:black;}
.btn-mover {background-color:#f9f9f9; border:none; color: black; width: 100%; text-align: left; 		padding:14px 28px; font-size: 24px; line-height: 36px; letter-spacing: normal;}
.btn-mover:hover, a .btn-mover:hover, .btn-mover:focus, a .btn-mover:focus, .btn-mover:active, 
		a .btn-mover:active, .btn-mover.active {background:#ffda00; color:black;}
.btn-tan {background-color:#e6d8b7; border:none; color: black; letter-spacing: normal; 
		padding:14px 28px; font-size: 14px; line-break: 21px;}
.btn-tan:hover, a .btn-tan:hover, .btn-tan:focus, a .btn-tan:focus, .btn-tan:active, 
		a .btn-tan:active, .btn-tan.active {background:#ffda00; color:black;}

button {font:inherit; line-height:normal; overflow:visible; -webkit-appearance:button; -webkit-user-select:none; 
	-moz-user-select:none; -ms-user-select:none; margin:0; text-transform:none; background:rgba(0,0,0,0.8); 
	color:rgba(255,255,255,0.9); border:2px solid transparent; display:inline-block; cursor:pointer; text-align:center; 
	vertical-align:middle; padding:.3em .9em .5em .9em; box-shadow:0 2px 3px rgba(0,0,0,0.3);}
button::-moz-focus-inner {border:0; padding:0;}
button:hover, button:focus, a button:focus {background:#000; border-color:#000; color:#fff; text-decoration:none; outline:0;}
button:active, a button:active, button.active {box-shadow:none; background:#000; border-color:#000; color:#fff; text-decoration:none;}

fieldset {border:0; padding:0;}
legend,label {display:block; margin:0 0 .3125em; padding:0; color:rgba(0,0,0,0.5);}
input[type="text"], input[type="date"], input[type="datetime"], input[type="email"], input[type="number"], 
	input[type="search"], input[type="time"], input[type="url"], textarea, select {-webkit-transition: all 0.30s ease-in-out; 
	-moz-transition: all 0.30s ease-in-out; -ms-transition: all 0.30s ease-in-out; -o-transition: all 0.30s ease-in-out; 
	outline: none; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; width: 100%; 
	background: transparent; margin-bottom: 4%; border: 1px solid #000; padding: 3%; color: #000; font-size: 18px;}
input[type="text"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="email"]:focus, input[type="number"]:focus, 
	input[type="search"]:focus, input[type="time"]:focus, input[type="url"]:focus, textarea:focus, select:focus {
	box-shadow: 0 0 5px #000; padding: 3%; border: 1px solid #000;}
input[type="submit"], input[type="button"] {box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; 
	width: 100%; padding: 3%; background: transparent; border: 1px solid #000; color: #000; font-size: 18px; 	display: inline-block; width:auto;}
input[type="submit"]:hover, input[type="button"]:hover{background: transparent;}
textarea {height: 160px;}
::placeholder {color: #000;}

form .grid-half {padding: 0; margin-bottom: 10px;}
form .grid-half.f-one {padding-right: 10px;}
form .grid-half.f-two {padding-left: 10px;}
label.label-item {border: 2px solid #b4841e; min-height: 80px; padding: 18px 7.5% 20px; color: black;}
label.option {border: none; padding: 20px;}
.dropdown-option {min-width: 100%;}
.dropdown-option select {appearance: none; width: 100%; font-size: 15px; padding: 15px 90px 15px 15px; 
	background-color: #fff; border: 1px solid black; border-radius: 0; color: black; cursor: pointer;}

.filter-row {display: flex; gap: 20px;}
.select-wrap {position: relative; width: 100%; max-width: 560px;}
.select-wrap select {width: 100%; height: 60px; padding: 0 40px 0 20px; font-size: 18px; font-weight: 500; 
	color: #111; background: #fff; border: 2px solid #d9d9d9; border-radius: 14px; appearance: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; transition: border-color 0.2s ease;}
.select-wrap select:hover {border-color: #999;}
.select-wrap select:focus {outline: none; border-color: #111;}
.select-wrap::after {content: ""; position: absolute; top: 50%; right: 32px; width: 8px; height: 8px; 
	border-right: 3px solid #111; border-bottom: 3px solid #111; transform: translateY(-70%) rotate(45deg); 
	pointer-events: none;}

/* Custom Table Layout */
.acf-custom-table {width: 100%; border-collapse: collapse; margin: 20px 0; font-family: sans-serif; font-size: 0.9rem; 
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05); }
.acf-custom-table thead tr {background-color: #72c4cf; color: #ffffff; text-align: left; font-weight: bold; }
.acf-custom-table th, .acf-custom-table td {padding: 12px 15px; width: 25%; }
.acf-custom-table tbody tr:nth-of-type(even) {background-color: #f3f3f3; }
.acf-custom-table tbody tr {border-bottom: 1px solid #dddddd; }
.acf-custom-table tbody tr:hover {background-color: #f5f5f5; color: #009879; }
.acf-custom-table tbody tr td:first-child {width: auto;}


ul.test-results {margin: 0 0 30px;}
.test-card {width: 100%; border: 2px solid #d9d9d9; border-radius: 14px; list-style: none; 	transition: border-color 0.2s ease; overflow: hidden; margin-bottom: 30px;}
.test-card-header {width: 100%; padding: 20px; background-color: #808080; font-size: 24px; line-height: 24px; 	color: white; display: flex; justify-content: space-between; align-items: baseline;}
.test-card-header .tch-year {font-size: 17px; margin-right: 10px;}
.test-card-header .tch-right {margin-left: auto;}
.test-card-body {width: 100%; padding: 20px; height: 100%;}
.test-card-body .line1 {font-size: 21px;}
.test-card-body .line2 {font-size: 17px;}
.test-card-body .line3 {font-size: 14px;}
.test-card-body .line3 .line3box {padding: 1px 4px;}


#ticker {padding-bottom: 10px; font-size: .8em; line-height: 1.2em;}
.ticker {display: inline-block; margin-top: 10px; animation: marquee 120s linear infinite;}
.collection {position: relative; left: 0%; animation: swap 120s linear infinite;}
.tick {display: inline-block; padding: 0 1rem; font-size: 12px; color: black; font-weight: 600;}
.tick a {border-bottom: 1px black solid; padding-bottom: 2px;}
.tick a:hover, .tick a:focus {background-color: #ffffff;}
.space {margin-right: 30px;}

.feature .container {min-height:calc(100vh - 160px); align-content:center; justify-content:center; z-index:2;}
.feature2 .container {height:500px; align-content:center; justify-content:center; z-index:2;}
.feature, .feature2 {background-position:center center; background-repeat:no-repeat; background-size:cover; position:relative; 
	overflow:hidden; position:relative;}

.callout:hover .callout-image {transform:scale(1.03);}
.callout .callout-image {transition:transform 0.1s ease-in-out;}
.callout-footer {margin:0; padding:40px 0; width:100%; position:relative; cursor:pointer;}
.callout-footer img {border:2px solid #fff; position:absolute; height:auto; transition:all .2s linear 0s; 
	width:80px; bottom:75%; right:0; transform:rotate(-15deg);}

.fixed-bg {position: relative; background-size: cover; background-repeat: no-repeat; height:400px; 	
	background-position: top center; z-index: 1;}
.grid-cover {background-color: #000; color:white; margin-bottom: 0; padding: 60px 60px 0; text-align: center;}
.grid-cover h1::after {content: ""; display: block; width: 3px; height: 70px; margin: 1.375rem auto; background: #fff;}

div.sticky {position: -webkit-sticky; position: sticky; top: 0; z-index: 9999;}
div.sticky nav {position:relative; left:0; top:0; width:100%; margin: 0; padding: 0; overflow: hidden;}
div.sticky nav ul {display:table; line-height:1; width:100%;}
div.sticky nav ul li {display:table-cell}
div.sticky nav ul li a {display:block; height:auto; overflow:hidden;}

.container {margin:0 auto; max-width:1200px; width:92%; position: relative;}
.container-narrow {max-width:1080px;}
.container-more-narrow {max-width: 80%;}
.container-wide {max-width:1500px; width:96%; padding: 2%;}
.row {margin:0; position:relative;}
.grid-full, .grid-three-fourths, .grid-two-thirds, .grid-three-fifths, .grid-half, .grid-two-fifths, .grid-third, .grid-sixth, 
	.grid-fourth, .grid-fifth, .grid-more, .grid-less {position: relative; float:left; padding-left:2%; padding-right:2%; width:100%;}
.grid-fourth.entry {display: none;}
.grid-flip {float:right;}	
.grid-date {float: left; padding-right: 20px;}
.grid-event {font-size:18px; line-height: 24px;}

.grids-3, .grids-4, .grids-5 {margin: 0 auto; display: grid; grid-gap: 2rem; grid-template-columns: repeat(2, 1fr);}
.grids-3 .item p:last-child, .grids-4 .item p:last-child, .grids-5 .item p:last-child {margin-bottom: 0;}
.grids-5 {grid-gap: 1rem;}

.mob-half {width: 50%; padding-left:2%; padding-right:2%; float: left;}
.container-mobile .grid-fourth {width:25%;}
.container-mobile .grid-three-fourths {width:75%;}

.flex {display: flex; justify-content: center; align-items: center; flex-wrap: wrap;}
.flex .flex-content {z-index: 100; text-align: center; width: 80%;}
.flex2 {display: flex; flex-wrap: wrap;}
.flex2-item {display: flex; padding: 0.5em; width: 100%; width: 50%;}
.flex2-content {display: flex; flex-direction: column; padding: 1em; width: 100%;}
.flex3 {display: flex;}

section {position:relative; width:auto; padding: 3em 0 1.5em;}
section:first-of-type {padding-top:60px;}
.home section:first-of-type {padding: 0 !important;}
article {margin: 0 auto;}

#hero .logo-center {margin: auto; position: absolute; top: 20px; left: 0; right: 0;}
img.hero {width: 100%; min-height: 500px;}
#slider .card {width: 100%; height:auto; display:block; margin:0; position: relative;}
#slider .card .card-text {margin: 0; color:rgba(0,0,0,0.8); transform: translateY(-50%); 
	top: 70%; left: 70px; position: absolute; z-index: 1; opacity:0.9; text-align: left;}

.hero-titling {top: 58%; left: 10%;}

.flickity-enabled {position:relative;}
.flickity-enabled:focus {outline:0;}
.flickity-viewport {overflow: hidden; position: relative; height:100%;}
.flickity-slider {position: absolute; width: 100%; height:100%;}
.flickity-enabled.is-draggable {-webkit-tap-highlight-color: transparent; tap-highlight-color: transparent; 	-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select:none;}
.flickity-enabled.is-draggable .flickity-viewport {cursor: move; cursor: -webkit-grab; cursor:grab;}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {cursor: -webkit-grabbing; cursor:grabbing;}
.flickity-prev-next-button {position: absolute; top: 50%; width: 44px; height: 44px; border: none; 	border-radius: 50%; background: #fff; background: hsla(0, 0%, 100%, .75); cursor: pointer; 	-webkit-transform: translateY(-50%); transform:translateY(-50%);}
.flickity-prev-next-button:hover {background:#fff;}
.flickity-prev-next-button:focus {outline: 0; box-shadow:0 0 0 5px #09F;}
.flickity-prev-next-button:active {opacity:.6;}
.flickity-prev-next-button.previous {left:10px;}
.flickity-prev-next-button.next {right:10px;}
.flickity-rtl .flickity-prev-next-button.previous {left: auto; right:10px;}
.flickity-rtl .flickity-prev-next-button.next {right: auto; left:10px;}
.flickity-prev-next-button:disabled {opacity: .3; cursor:auto;}
.flickity-prev-next-button svg {position: absolute; left: 20%; top: 20%; width: 60%; height:60%;}
.flickity-prev-next-button .arrow {fill:#333;}
.flickity-page-dots {position: absolute; width: 100%; bottom: -25px; padding: 0; margin: 0; 
	list-style: none; text-align: center; line-height:1;}
.flickity-rtl .flickity-page-dots {direction:rtl;}
.flickity-page-dots .dot {display: inline-block; width: 10px; height: 10px; margin: 0 8px; 
	background: #333; border-radius: 50%; opacity: .25; cursor:pointer;}
.flickity-page-dots .dot.is-selected {opacity: 1;}

#hero-slider {margin: -80px 0 0;}
.hero-slider {width: 100%; height: 520px; overflow: hidden; font-optical-sizing: auto; font-style: normal;}
.hero-slider .carousel-cell {width: 100%; max-width: 1200px; height: 100%; background-repeat: no-repeat; 
	background-size: cover; background-position: center; position: relative;}
.hero-slider .carousel-cell .image img {position: absolute; top: 50%; right:0; transform: translateY(-50%); 
	margin-right: 6em; max-width: 50%; height: auto;}
.hero-slider .carousel-cell .inner {position: relative; top: 50%; transform: translateY(-50%); 
	color: white; text-align: left; margin-left: 6em; max-width: 30%;}
.hero-slider .carousel-cell .inner .subtitle {font-size: 0.8rem; line-height: 1em; font-weight: 600; 
	letter-spacing: 1px; margin-bottom: 5px;}
.hero-slider .carousel-cell .inner .title {font-size: 1.9rem; font-weight: 800; line-height: 1.3em; margin-bottom: 10px;}
.hero-slider .carousel-cell .inner p {margin-bottom: 20px;}
.hero-slider .flickity-prev-next-button {width: 80px; height: 80px; background: transparent; box-shadow: none;}
.hero-slider .flickity-prev-next-button:hover {background: transparent;}
.hero-slider .flickity-prev-next-button .arrow {fill: white;}
.hero-slider .flickity-page-dots {bottom: 30px;}
.hero-slider .flickity-page-dots .dot {width: 60px; height: 4px; opacity: 1; background: rgba(255, 255, 255, 0.5); 
	border: 0 solid white; border-radius: 0;}
.hero-slider .flickity-page-dots .dot.is-selected {height: 6px; background: white;}
	
.hero2 {width:100%; position:relative; margin-bottom:0; z-index:2; height:30vh}
.hero2 .hero2-info {position:relative; margin:0 auto; max-width:1180px; width:100%; padding:0 20px; left:50%; 
	transform:translateX(-50%); bottom:40px; z-index:2; position:absolute; pointer-events:none}
.hero2 h1 {margin-top:0; font-weight:700; font-size:4.5rem; line-height:1.2; margin-bottom:30px;}
.hero2 article {position:relative; flex-direction:column; justify-content:flex-end; padding:0; overflow:hidden; height:auto; width: 100%;}
.hero2 article:after, .hero2 article:before {content:""; position:absolute; width:100%; height:70%; left:0; bottom:0; z-index:0; visibility:visible}
.hero2 article:after {background:linear-gradient(0deg,rgba(26,42,58, .9) .25%,rgba(26,42,58,0))}
.hero2 article img {display:none; opacity:0; height:0}
.hero2 article figure {background-position:50% 50%; background-repeat:no-repeat; background-size:cover; display:block; height:60vh}
.hero2 article video {order:-1; object-fit:cover; height:60vh}
.hero2 .content, .hero2 .content article {height:100%}
.hero2 .content article figure, .hero2 .content article video {height:100%; min-height:100%}

.box h3 {font-size: 30px;}
.box ul li {border-bottom: 1px solid rgba(0, 0, 0, 0.3); height: 48px; font-size:14px; line-height: 28px; text-transform: uppercase;} 
.box ul li.bordert {border-top: 1px solid rgba(0, 0, 0, 0.3); padding-top: 15px; height: 64px;}
.box ul ul {margin-bottom: 20px; padding-left: 12px; border-left: 12px solid #dae1e9}
.box ul ul li {height:24px; border:none; text-transform: capitalize;}

#cta .grid-half {padding: 10px 0; height:130px;}
#cta p {font-size:36px; line-height:1em; color:#002855; background:linear-gradient(90deg,#005ec4 0,#00152c); 
	-webkit-background-clip:text; -webkit-text-fill-color:rgba(0,0,0,0); margin-bottom: 0;}
#cta p em {font-style:normal; background:linear-gradient(90deg,#005ec4 50%,#005ec4); font-size:24px; display: block; 	
	-webkit-background-clip:text; -webkit-text-fill-color:rgba(0,0,0,0)}
#cta p strong {background:linear-gradient(90deg,#005ec4 0,#00152c); -webkit-background-clip:text; -webkit-text-fill-color:rgba(0,0,0,0)}

#cta ul {transition:all .8s ease; position: relative; z-index:1; min-width:75px; list-style: none; margin: 0; line-height: 1;}
#cta ul li {opacity:1; transform:translateX(0); transition-timing-function:linear; margin-bottom: 0;}
#cta ul li:not(:last-child) {margin-right:30px}
#cta ul li a:before {width:65px; height:65px; margin-bottom:17px; background-color:#002855;}
#cta ul li.inquire a:before {content:"\f05a"; font-family:'Font Awesome 6 Sharp'; text-rendering: auto; -webkit-font-smoothing: antialiased; font-size:1.5rem}
#cta ul li.visit a:before {content:"\f549"; font-family:'Font Awesome 6 Sharp'; text-rendering: auto; -webkit-font-smoothing: antialiased;  font-size:1.5rem}
#cta ul li.apply a:before {content:"\f894"; font-family:'Font Awesome 6 Sharp'; font-smoothing:antialiased; font-size:1.625rem}
#cta ul a {font-size:.875rem; line-height:1.2; color:#002855; transition:all .3s ease; display:block; padding:15px 0; text-transform: uppercase;}
#cta ul a:focus, #cta ul a:hover {font-size:.875rem; color:#005ec4; background:rgba(0,0,0,0)}
#cta ul a:focus:before, #cta ul a:hover:before {background-color:#005ec4; color:#fff}
#cta ul a:before {display:flex; flex-direction:column; justify-content:center; align-items:center; width:58px; height:58px; 
	margin:0 auto 10px; padding-left:2px; border-radius:50%; background-color:#eff1f9; font-size:1.6875rem; line-height:1; 
	color:#ffdf47; transition:all .3s ease}
	
#cta-wrapper {position: fixed; left: 0; bottom: 0; width: 100%; left: auto; transition: .3s; z-index:9999; padding: 0; margin: 0;}
#cta-wrapper .content {display:block;}
#cta-wrapper .content .cta-b {display:flex; margin: 0;}
#cta-wrapper .content .cta-b a {width: 33.33333%; line-height: 60px; height: 60px; display: block; 	min-width: 90px; 
	font-weight: 700; font-size: 1em; text-align: center; letter-spacing: 1px; text-transform: uppercase; color: white; 
	text-decoration: none; 	position: relative; border-color: #2bb355; background: #2bb355; z-index: 1; 
	transition: background .3s,color .3s;}
#cta-wrapper .content .cta-b a:after {content: ""; position: absolute; width: 100%; height: 100%; 
	left: 0; top: 0; background: linear-gradient(0deg,rgba(0,0,0,.1),rgba(0,0,0,.1)),#2bb355; 	opacity: 0; z-index: -1; transition: .3s;}
#cta-wrapper .content .cta-b a:nth-child(2) {border-color: #ffdf47; background: #ffdf47; color: #242424; z-index: 1;}
#cta-wrapper .content .cta-b a:nth-child(3) {border-color: #d0202f; background: #d0202f; color: white; z-index: 1;}

.accordion {width: 100%; margin: 0 auto;}
.accordion-header, .accordion-body {background: white;}
.accordion-header {padding: 21px; background: #ffffff; color:#001d3d; cursor: pointer; font-size: 13px; line-height: 22px; 
	letter-spacing: .13em; font-weight: 700; transition: all .3s; text-transform: uppercase; border-left: 3px solid rgb(0, 0, 0, 0);}
.accordion__item {border-bottom: 1px solid rgba(0, 0, 0, 0.3);}
.accordion__item .accordion__item {border-bottom: 1px solid rgba(0, 0, 0, 0.3);}
.accordion-header:hover {background: #ebebeb; position: relative; z-index: 5;}
.accordion-header.sub-h {padding-left: 50px;}
.accordion-body {color: #001d3d; display: none;}
.accordion-body p {margin-bottom: 15px;}
.accordion-body__contents {padding: 1.5em 1.5em; line-height: 1.7em;}
.accordion .accord-border {border: 1px solid black;}
.accordion__item.active:last-child .accordion-header {border-radius: none;}
.accordion__item > .accordion-header i {font-size: 1.2em; float: left; position: relative; top:3px; transition: .3s all; 
	transform: rotate(0deg); padding-right: 15px;}
.accordion__item.active > .accordion-header i {transform: rotate(-45deg); position: relative; top:-3px;}
.accordion__item.active .accordion-header {background: #ffffff; color:#000; border-left: 3px solid black;}
.accordion__item .accordion__item .accordion-header {background: #ffffff; color: #001d3d;}

.mission {display: flex; align-items: center; margin-bottom: 20px;}
.mission img {width: 150px; height: 150px; object-fit: cover; margin-right: 40px;}
.mission .mission-text {flex: 1; font-size: 18px; line-height: 30px; text-align: left;}
#starters i {padding-left: 5px;}
#starters a:hover {font-weight: 700; background-color: #faf28e; color: black;}
#starters2 i {padding-left: 5px;}
#starters2 a:hover {font-weight: 700; background-color: #faf28e; color: black;}
#message p {font-size: 17px; line-break: 24px;}
#message p small {font-size: 13px; line-break: 12px; letter-spacing: 0.12em;}
#about .creative-text {top:100px; left:20px;}
#about .creative-link {bottom: 40%; right:2%;}	
#contact .container:after {height:100px; top:0; left:50%; width:60%; transform:translate(-50%, -70%);}

.ceq {height: 90px; width: auto; text-align: left;}
.flag {top:-10px; right:20px; width: 240px; z-index: 600;}
.ccsa {width: 420px; padding-bottom: 130px;}

.group {padding: 25px 25px 10px 30px; margin-bottom: 40px; border-left: 20px #039bd7 solid;}
.group h3 {font-size: 18px; font-weight: 800; margin: 0 0 20px}

.project h2 {margin-top: 0;}
.exam-schedule {font-size: 18px; font-weight: bold; bottom:-30px; right:20px; z-index: 5555;}
.item {padding: 15px;}

i.fa-arrow-right {color: red;}

footer {width:auto; opacity:1;}
footer .logo img {height:100px; display:block;}
footer .footer-flag {width: 150px;}
.copyw a {margin-left: 0px; display: block;}
.socialbox {display: none;}
#socials {font-size: 60px; margin-right: 60px; line-height: 60px;}

#base {position: fixed; width: 100%; bottom: 0; height:40px; padding: 10px 50px; font-size: 11px; z-index: 9999; 
	font-weight: bold; background-color: black;}
#base a {color: white; margin-left: 10px; padding: 4px 8px;}

.fadein {opacity:0; margin-top: 20px;}

.screen-reader,.svg-fallback-text {border:0; clip:rect(0 0 0 0); height:1px; margin:-1px; 
	overflow:hidden; padding:0; position:absolute; width:1px;}
.screen-reader-focusable:active,.screen-reader-focusable:focus {clip:auto; height:auto; margin:0; overflow:visible; 
	position:static; width:auto}[hidden],template {display:none; visibility:hidden;}

///////////////////////////////////////////
///////////////////////////////////////////
///////////////////////////////////////////

@keyframes alert {50% {color: red;} 80% {opacity: .5;} 100% {color: red;}}
@keyframes alert-black {50% {color: black;} 80% {opacity: .5;} 100% {color: black;}}
@-webkit-keyframes pulse {0% {-webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.4);}
  70% {-webkit-box-shadow: 0 0 0 12px rgba(0, 0, 0, 0);}
  100% {-webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);}}
@keyframes pulse {0% {-moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.4); box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.4);}
  70% {-moz-box-shadow: 0 0 0 12px rgba(0, 0, 0, 0); box-shadow: 0 0 0 12px rgba(0, 0, 0, 0);}
  100% {-moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);}}
@keyframes spin {0% {transform: rotate(0deg);} 100% {transform: rotate(360deg);}}
@keyframes marquee {0% {transform: translateX(0)} 100% {transform: translateX(-100%)}}
@keyframes swap {0%, 50% {left: 0%;} 50.01%, 100% {left: 100%;}}
#loadMore {transition: .2s;}

@media (min-width: 920px) {
.hide-desktop {display:none !important;}
.hide-mobile {display:inherit !important;}
.negative-header {margin-top: -80px;}
.bumper {height:80px; margin-top: -80px;}
section {padding: 3em 0 1.5em;}
section:first-of-type {padding-top:70px;}
section.navbump {padding-top: 9em;}
.container-narrow {max-width: 80%;}
.container-more-narrow {max-width: 65%;}

h1.big {font-size: 6em; line-height: 1em;}
h1.medium {font-size: 4em; line-height: 1em;}
h2 {margin: 0 0 15px;}
h2.big {font-size: 3em;}
h3.big {font-size: 2em;}
.grid-sixth {width:16.66666666%;}
.grid-fifth {width:20%;}
.grid-fourth {width:25%;}
.grid-third {width:33%;}
.grid-two-fifths {width:40%;}
.grid-less {width:39%;}
.grid-half {width:50%;}
.grid-three-fifths {width:60%;}
.grid-more {width:60%;}
.grid-two-thirds {width:67%;}
.grid-three-fourths {width:75%;}
.grid-full {width:100%;}
.mob-half {width: inherit; padding: inherit;}
.offset-sixth {margin-left:16.6%;}
.offset-fifth {margin-left:20%;}
.offset-fourth {margin-left:25%;}
.offset-third {margin-left:33%;}
.offset-half {margin-left:50%;}
.offset-two-thirds {margin-left:66.6666666667%;}
.offset-three-fourths {margin-left:75%;}
.offset-full {margin-left:100%;}
.flex .flex-content {width: 60%;}
.callout .callout-image {position:absolute; top:-25px; left:2.3%; width:33%;}
.callout .callout-image img {display:block; margin:20px 0 0 30px; width:72%; 
	box-shadow:5px 5px 15px rgba(0,0,0,0.1); transform:rotate(-5deg); z-index:50;}
.spreads img {height:500px;}
.slider-full img {height:500px;}
.grids-3 { grid-template-columns: repeat(3, 1fr);}
.grids-4 { grid-template-columns: repeat(4, 1fr);}
.grids-5 { grid-template-columns: repeat(5, 1fr);}
.desktop-padding {padding-top: 1em;}

article {width: 90%;}
article p {font-size: 20px; line-height: 36px;}
img.hero {min-height: none;}
.hero2 {min-height:500px; height:60vh}
.hero2 .hero2-info {padding:0 0 0 20px; bottom:60px}
.hero2 article picture {min-height:500px}
.hero2 article video {min-height:500px}
blockquote {text-align: center; font-size:1.3em; line-height: 1.4em;}
blockquote small {font-size:.6em;}

.column p {-webkit-column-break-inside:avoid; page-break-inside:avoid; break-inside:avoid;}
.column3 {-webkit-columns:300px 3; -moz-columns:300px 3; columns:300px 3; -webkit-column-gap:2em; 
	-moz-column-gap:2em; column-gap:2em;}
.column4 {-webkit-columns:300px 4; -moz-columns:300px 4; columns:300px 4; -webkit-column-gap:1.2em; 
	-moz-column-gap:1.2em; column-gap:1.2em;}
.scroll {display: flex;}
.scroll .scroll-stick {height: 100vh; position: sticky; position: -webkit-sticky; top: 0;}
.project {padding:0 6%;}
.project .text-block {padding:20px 30px; max-width: 60%; z-index: 3; position:absolute; left:0;}
.project .image {width:auto;}
.project.project-long .image {max-height:500px;}
.project.project-long .text-block {bottom:-60px;}
.project.project-square .text-block {bottom:-120px;}
.project.project-tall .text-block {bottom:26px;}
#cart .item:hover .btn-add {transform:scale(1.5);}
#cart .item {padding-left:33%;}
#cart .item img {left:-30px; top:30px; width:32%; box-shadow:5px 5px 5px rgba(0,0,0,0.1); transform:rotate(-9deg);}
#cart .item .btn-add {top:50%; right:0; margin:-25px 2.34375em 0 0;}
.fixed-bg {position: relative; min-height: 100%; background-attachment:scroll;}
.grid-cover {width:40%; padding-bottom: 60px;}
.grid-cover h1::after {height: 140px; margin: 4rem auto;}
.callout-footer {margin:0 0 0 30%; width:70%;}
.callout-footer img {width:120px; bottom:30px; right:calc(100% + 50px); transform:rotate(-20deg); transition:all .2s linear 0s;}
.callout-footer:hover img {transform:rotate(-3deg) scale(1.5); box-shadow:3px 3px 10px rgba(0, 0, 0, 0.5);}

#cta-wrapper .version2 {position: fixed; right: 0; bottom: auto; top:0;}
#cta-wrapper .version2 .content .cta-b {min-width: 270px; transform: rotate(90deg) translateY(-60px); transform-origin: left top;}
#cta p em {display: inline; font-size:36px;}
.copyw a {margin-left: 15px; display: inline-block;}
#magazine-scroll {display: flex;}
#magazine-scroll #scroll-stick {height: 100vh; position: sticky; position: -webkit-sticky; top: 0;}

.exams {-webkit-columns: 3; -moz-columns: 3; columns: 3; column-gap: 20px;}
.exams div {display: inline-block; width: 100%; margin-bottom: 20px;}

#slider {padding-bottom: 40px;}
#slider .slider-full, .slider-full {width:100%; height:auto;}
#slider .slider-full img, .slider-full img {width:100%; height:auto;}
#slider .card {width:1200px; height:600px;}
#slider .card .card-text {top:58%; left:10%; text-align: left; width: 330px; padding: 10px;}
#slider .card .card-text p {font-size: 14px; line-height: 18px; margin-bottom: 5px;}
#slider .card .card-text p.card2 {text-align: right; font-size: 12px; line-height: 14px;}
#slider .card .card-text .card-head {font-size: 36px; padding: 10px 0;}
#slider .card2 {width:100%; height:auto;}
#slider .card2 .card-text {width: 100%; max-width: 340px; padding: 60px 50px 40px 50px; margin: 0; 
		bottom: 10%; left: 50px; position: absolute; z-index: 9999; opacity:1;}

#mast h1.big {margin-left: -70px;}
#mast .container:after {bottom:-50px; height:80px;}
.project .halftone {z-index: -1; background:url(img/korn.png);}
.project-square .halftone {left:-8%; top:-8%; width:70%; height:70%;}
.project-tall .halftone {right:-8%; bottom:-6.14%; width:70%; height:54.24%;}
#message .container {text-align: center;}
}

@media (min-width: 1080px) {
.socialbox {bottom: 50%; transform: translateY(50%); left: 0; position: fixed; z-index: 20; width: 3.4rem; 
	box-shadow: rgba(0, 0, 0, 0.2) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 10px 10px -5px; 
	display: flex; flex-direction: column; align-items: center; background-color: white; padding-bottom: 5px;}
.social {display: block; position: relative;}
.social ul {flex-direction: column; align-items: center; margin: 0; row-gap: 0; display: flex;
	flex-wrap: wrap; gap: .2rem; list-style: none;}
.social ul li {font-size: 33px; margin: 2px 0; line-height: .8em;}
.social-text {writing-mode: tb-rl; cursor: pointer; width: 100%; display: flex; align-items: center; 
	backface-visibility: hidden; transform: rotate(-180deg);}
}

@media print {* {background:transparent !important; color:#000 !important; box-shadow:none !important; text-shadow:none !important;}
@page {margin:0.5cm}
a, a:visited {text-decoration:underline}
a[href]:after, a[href^="#"]:after {content:""}
p,h1,h2,h3 {orphans:3; widows:3}
h1,h2,h3 {page-break-after:avoid}
pre,blockquote {border-color:#999; page-break-inside:avoid}
thead {display:table-header-group}
tr,img {page-break-inside:avoid;}
}

///////////////////////////////////////////
///////////////////////////////////////////
///////////////////////////////////////////

.mobile-header {position: fixed; top:0; left: 0; height:100; width: 100%; z-index: 9999;}
#nav-top.flex {width: 100%; height:36px; display: flex; justify-content: center; align-items: center; padding: 0 60px;}
#nav-top .nav-item-left {width: 50%;}
#nav-top .nav-item-center {text-align: right;}
#nav-top .nav-item-right {text-align: right;}
#nav-top .nav-item + .nav-item {margin-left: 2%;}

#cssmenu .logo {z-index: 123; margin: 10px 0 0 0; position: absolute; top: 0; left: 0px; width: 290px; height: auto; 
	text-align: left; padding: 0; float: none;}
#cssmenu .logo a {color: #fff;}
#cssmenu {position: relative; width: 100%; margin: 0 auto; border: 0; list-style: none; line-height: 1; display: block; 
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; height:70px;}
#cssmenu ul {margin: 0; padding:25px 0 50px; float:right; border: 0; list-style: none; line-height: 1; display: block; 
	position: relative; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; width: 100%; 
	display: none; border-bottom:1px solid #444;}
#cssmenu ul ul {position: relative; left: 0; width: 100%; margin: 0; padding: 0 0 15px; text-align: left;}
#cssmenu ul ul ul {margin: 0; padding:0 0 15px; margin-left: 100%; position: relative; top: 0; left: 0; width: 100%; text-align: left;}
#cssmenu ul li {margin: 0; padding:0; border: 0; list-style: none; line-height: 1; display: block; position: relative; 
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; width: 100%; border-top: 1px solid #444;}
#cssmenu ul ul li {margin: 0; padding:0; -webkit-transition: all .25s ease; -ms-transition: all .25s ease; 
	background: #333!important; transition: all .25s ease; height: auto; z-index: 9999;}
#cssmenu ul ul ul li {margin: 0; padding:0;}
#cssmenu ul li a {border: 0; list-style: none; line-height: 1; display: block; position: relative; -webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; box-sizing: border-box; width: 100%; border-bottom: 0;}
#cssmenu #head-mobile {border: 0; list-style: none; line-height: 1; display: block; position: relative; -webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; box-sizing: border-box;}
#cssmenu:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
#cssmenu>ul:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
#cssmenu #head-mobile {display: none;}
#cssmenu>ul>li {float: none;}
#cssmenu>ul>li>a {padding: 17px; font-size: 12px; letter-spacing: 1px; text-decoration: none; color: #ddd; font-weight: 700;}
#cssmenu ul li:hover {background: #363636;}
#cssmenu>ul>li:hover>a {color: #fff;}
#cssmenu ul li.active a {color: #fff;}
#cssmenu>ul>li:hover {background: #41aae0 !important; -webkit-transition: background .3s ease; -ms-transition: background .3s ease; 
	transition: background .3s ease;}
#cssmenu ul li.active:hover {background: #41aae0 !important; -webkit-transition: background .3s ease; -ms-transition: background .3s ease; 
	transition: background .3s ease;}
#cssmenu ul li.active {background: #41aae0 !important; -webkit-transition: background .3s ease; -ms-transition: background .3s ease; 
	transition: background .3s ease;}
#cssmenu ul li.has-sub.active:hover {background: #41aae0 !important; -webkit-transition: background .3s ease; 
	-ms-transition: background .3s ease; transition: background .3s ease;}
#cssmenu>ul>li.has-sub>a {padding-right: 30px;}
#cssmenu>ul>li.has-sub:hover>a:before {top: 23px; height: 0;}
#cssmenu>ul>li.has-sub>a:after {display: none;}
#cssmenu>ul>li.has-sub>a:before {display: none;}
#cssmenu>ul>li.has-sub>ul>li.active>a {border-top: none;}
#cssmenu ul li.orange a {color: black;}
#cssmenu li:hover>ul {left: auto;}
#cssmenu li:hover>ul>li {height: auto; z-index: 9999;}
#cssmenu ul ul li a {width: 100%; border-bottom: 0; padding: 11px 15px 11px 25px; font-size: 12px; text-decoration: none; 
	color: #ddd; font-weight: 400; background: none;}
#cssmenu ul ul li:last-child>a {border-bottom: 0;}
#cssmenu ul ul li.last-item>a {border-bottom: 0;}
#cssmenu ul ul li:hover {background: #363636!important;}
#cssmenu ul ul li:hover>a {color: #fff;}
#cssmenu ul ul li a:hover {color: #fff;}
#cssmenu ul ul li.active>a {color: #fff;}
#cssmenu ul ul>li.has-sub>a:after {display: none;}
#cssmenu ul ul>li.has-sub>a:before {display: none;}
#cssmenu ul ul>li.has-sub:hover>a:before {top: 17px; height: 0;}
#cssmenu ul ul li.has-sub:hover {background: #363636;}
#cssmenu>ul ul>li.has-sub>ul>li.active>a {border-top: none;}
#cssmenu ul li.has-sub ul li.has-sub ul li:hover {background: #363636;}
#cssmenu ul ul ul li a {padding-left: 35px;}
#cssmenu ul ul ul li.active a {border-left: none;}
#cssmenu .submenu-button {position: absolute; z-index: 99; right: 0; top: 0; display: block; border-left: 1px solid #444; 
	height: 46px; width: 46px; cursor: pointer;}
#cssmenu .submenu-button.submenu-opened {background: #262626;}
#cssmenu ul ul .submenu-button {height: 34px; width: 34px;}
#cssmenu .submenu-button:after {position: absolute; top: 22px; right: 19px; width: 8px; height: 2px; display: block; background: #ddd; content: '';}
#cssmenu ul ul .submenu-button:after {top: 15px; right: 13px;}
#cssmenu .submenu-button.submenu-opened:after {background: #fff;}
#cssmenu .submenu-button:before {position: absolute; top: 19px; right: 22px; display: block; width: 2px; height: 8px; background: #ddd; content: '';}
#cssmenu ul ul .submenu-button:before {top: 12px; right: 16px;}
#cssmenu .submenu-button.submenu-opened:before {display: none;}

#cssmenu #head-mobile {display: block; padding: 23px; color: #ddd; font-size: 12px; font-weight: 700;}
.ham {width: 55px; height: 46px; position: absolute; right: 0; top: 10px; cursor: pointer; z-index: 12399994;}
.ham:after {position: absolute; top: 22px; right: 20px; display: block; height: 8px; width: 20px; border-top: 2px solid #dddddd; 
	border-bottom: 2px solid #dddddd; content: '';}
.ham:before {-webkit-transition: all .3s ease; -ms-transition: all .3s ease; transition: all .3s ease; position: absolute; top: 16px; right: 20px; 
	display: block; height: 2px; width: 20px; background: #ddd; content: '';}
.ham.menu-opened:after {-webkit-transition: all .3s ease; -ms-transition: all .3s ease; transition: all .3s ease; top: 23px; border: 0; height: 2px; 
	width: 19px; background: #fff; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); 
	-o-transform: rotate(45deg); transform: rotate(45deg);}
.ham.menu-opened:before {top: 23px; background: #fff; width: 19px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); 
	-ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg);}
	
@media (min-width:920px) {
#steve {background-color:#eba233; height:40px !important; line-height: 1em; width: 100%; text-align: center; margin: 0; font-weight: 500; 	padding: 0; z-index: 9999; color:black;  overflow: hidden; white-space: nowrap;}
#steve a {color: white;}
#steve a:hover {color: black;}
	
#header {width:100%; background:transparent; opacity:1; z-index:8888; position: relative; height:80px; color: white; margin: 0;}
#header .nav-main {width:100%;}	

.navblock {position:relative;}
.navblock .content {display:flex; flex-wrap:wrap; justify-content:flex-end;}
.navblock .logo {position: absolute; top:10px; left:30px; height: 60px; width: 360px;}
.navblock .logo-color {display: none;}

.top-nav {width:100%; margin-bottom:0; max-height:200px; transition:all 0s ease; padding: 0 30px 0 60px;}
.top-nav ul {list-style:none; margin:0; padding:0}
.top-nav a {display:block;}
.top-nav .level1 {display:flex; justify-content:flex-end; padding:20px 15px 4px;}
.top-nav .level1 li {position:relative; margin-left:15px; margin-bottom: 0; font-weight:700; text-transform:uppercase; 	text-decoration:none; font-size:12px; line-height:1; letter-spacing:2px; display:flex; align-items:center; }
.top-nav .level1 li:hover .page-info {opacity:1; visibility:visible; transform:translateY(0); pointer-events:all}
.top-nav .level1 li:hover a {text-decoration:none; color: rgb(70, 69, 69); }
.top-nav .level1 li a {color:white; background-image:none}
.top-nav .level1 li a.text-yellow {color:yellow; font-weight: bold; letter-spacing: normal; 
	background-color: rgb(28, 26, 118); padding: 2px 6px;}
.top-nav .level1 li a i {display: inline-block; padding-right: 5px;}
.top-nav .level1 .page-info {position:absolute; width:230px; padding:25px 25px 15px; top:98%; right:0; z-index:10; background-color:#033169; 
	opacity:0; visibility:hidden; pointer-events:none; text-align:left; transform:translateY(100px); transition:all .3s ease}
.top-nav .level1 .page-info:before {content:""; position:absolute; width:20px; height:20px; right:30px; top:0px; 
	transform:rotate(-45deg); background-color:#033169}
.top-nav .level1 .page-info li a {margin-bottom:13px; padding:0; font-size:13px; line-height:21px; letter-spacing:1px; color:#ffea00;}
.top-nav .level1 .page-info li a:focus, .top-nav .level1 .page-info li a:hover {text-decoration:none; color:#fff}

.nav-main {position:relative; margin:0;}
.nav-main ul {list-style:none; margin:0; padding:0; line-height: 1em;}
.nav-main a {display:block; padding:15px 0;}

.nav-main .level1 {position:static; text-align:center; padding: 0 30px 0 60px; display:flex; justify-content:flex-end; flex-wrap:wrap;}
.nav-main .level1>li {padding-bottom:0; margin-bottom: 0;}
.nav-main .level1>li:hover>a {color: rgb(70, 69, 69); background:rgba(0,0,0,0)}
.nav-main .level1>li:hover>a:after {opacity:1; transform:translate(0)}
.nav-main .level1>li:last-child>a {padding-right:0}
.nav-main .level1>li:last-child>a:after {right:0}
.nav-main .level1>li>a {position:relative; display:block; color:#fff; background:rgba(0,0,0,0); padding:10px 5px 10px; 
	font-style:normal; font-weight:700; font-size:12px; line-height:15px; letter-spacing:1px; margin-top: -1px; 	text-transform:uppercase; color:white; text-decoration:none;}
.nav-main .level1>li>a:after {content:""; position:absolute; height:3px; left:5px; right:10px; bottom:5px; 
	transform:translateY(20px); opacity:0; background-color:#f1c400; transition:all .1s ease .08s}
.nav-main .level1>li>a:focus {color:#fff; background:rgba(0,0,0,0)}
.desk-add {display: none !important;}

#search {padding-left: 20px;}
button.search {border:0; position:relative; padding:10px 0 0; z-index:2; font-size:16px; cursor:pointer; transition:all .3s ease; 
	display:block; margin:0 0 0 20px; line-height:0; color:#ffea00; width:35px; height:35px; background-color:#001d3d; border-radius:50%}
button.search i {margin-bottom: 50px;}
button.search:focus, button.search:hover {background-color:#ffea00; color:#001d3d;}

.nav-main .page-info {background-color:white; text-align:left; z-index:9990; width:100%; height:auto; overflow:hidden; 
	display:flex; flex-direction:row; flex-wrap:wrap; align-items:flex-start; pointer-events:none; position:absolute; top:100%; right:0; 
	opacity:0; clip-path:polygon(0 0,100% 0,100% 0,0 0); transition:all .2s ease-out;}
.nav-main .page-info:before {content:""; position:absolute; height:12px; width:100%; bottom:100%; left:0; pointer-events:none}
.nav-main .level1 li:hover .page-info {opacity:1; pointer-events:all; clip-path:polygon(0 0,100% 0,100% 100%,0 100%); transition:all .3s ease-out .2s}
.nav-main .level1 li:first-child .page-info {right:0; transform:none}
.nav-main .level1 li:last-child .page-info {right:0; left:auto; transform:none}
	
.nav-main .level2 {width:100%; padding:20px 30px; overflow:hidden; height:auto; border-bottom: 1px solid black; 	display:flex; flex-direction:row; justify-content:space-between; flex-wrap:wrap;}
.nav-main .level2 .grid-fourth {position: relative; padding: 15px; width: 24%;}
.nav-main .level2 .grid-half:first-child {position: relative; padding: 15px;}
.nav-main .level2 a {padding: 5px 5px 5px 0; margin: 0; font-weight: 600; color: black;}
.nav-main .level2 a:hover, .nav-main .level2 a:focus {padding: 5px; margin: 0; background-color:yellow;}
.nav-main .level2 a.btn {display:inline-block; padding:5px 15px; letter-spacing: normal; font-weight: bold; color: black; background-color: #e6d8b7;}
.nav-main .level2 a.btn:hover, .nav-main .level2 a.btn:focus {background-color:#f5ec00; color: black; font-weight: bold; padding:5px 15px;}
.nav-main .level2 p {margin-bottom: 7px;}
.nav-main .level2 img {margin-bottom: 20px;}
.nav-main .level2 img.margin-bottom-less {margin-bottom: 5px;}
.nav-main .level2 h4 {margin-bottom: 15px; line-height: 1.5em;}
.nav-main .level2 li {line-height: 1.5em; margin-bottom: 3px; font-weight: 600; font-size: 12px;}
.nav-main .level2 li i {padding-right: 3px;}
.nav-main .level2 p {font-size: 12px; line-height: 20px;}
.nav-main .level2 .caption {margin: 0; padding: 5px 0 0; font-size: 12px;}

.nav-main .level2.level2E p {font-size: 13px; line-height: 18px;}
.nav-main .level2.level2E li {font-size: 15px;}

.nav-main .page-title {position:absolute; bottom:0; padding:0 40px; left:0; z-index:2; width:auto; font-weight:700; 
	font-size:21px; line-height:30px; color:#fff}
.nav-main .page-title a {position:relative; display:flex; justify-content:space-between; margin-top:20px; padding:17px 40px; 
	z-index: 999; width:100%; transform:translateX(-40px); background-color:yellow; text-decoration: none; 
	font-weight:600; font-size:12px; line-height:18px; letter-spacing:1px; text-transform:uppercase; color:#000; cursor:pointer}
.nav-main .page-title a i {font-size:15px;}
.nav-main .page-title a:hover {color:#ffffff; background-color:#005ec4}

.nav-main footer {margin-top:0}

#header:hover {background-color: white; color: black;}
#header.active {background-color: white; color: black; transition-duration: .5s; position: fixed; top: 0; right: 0; left: 0; height: 80px; 	-webkit-box-shadow: 0px 2px 6px -1px rgba(112,111,112,1); -moz-box-shadow: 0px 2px 6px -1px rgba(112,111,112,1); 	box-shadow: 0px 2px 6px -1px rgba(112,111,112,1);}
#header:hover .top-nav .level1 li a, #header.active .top-nav .level1 li a {color: black;}
#header:hover .top-nav .level1 li a.text-yellow, #header.active .top-nav .level1 li a.text-yellow {color: white;}
#header:hover .nav-main .level1>li>a, #header.active .nav-main .level1>li>a {color: black;}
#header:hover .logo-white, #header.active .logo-white {display: none;}
#header:hover .logo-color, #header.active .logo-color {display: inherit;}
}

@media (min-width:1100px) {
.top-nav {padding: 0 60px;}
.nav-main .level1 {padding: 0 60px;}
.nav-main .level1>li>a {font-size:13px; padding:10px 10px 14px;}
.nav-main .level1>li>a:after {bottom:10px; left:10px;}
.desk-add {display: inline-block !important;}
}

.readonly-field .ginput_container input {
    background: #f5f5f5 !important;     border: none !important; outline: none !important;     color: #666;     pointer-events: none !important; }

.gform_wrapper input::placeholder,
.gform_wrapper textarea::placeholder {
    color: #a9a9a9; /* Replace with your desired hex color */
    opacity: 1;    /* Ensures Firefox displays the exact color code */
}