body{overflow-wrap:break-word;}
body:before,body:after,#main-wrapper:before,#GuideContainer:before{content:'';top:0;height:100vh;width:100%;display:block;position:fixed;z-index:-1;}
body:before,#main-wrapper:before,#GuideContainer:before{content:'';background-image:url('../imgs/bg-landscape.webp');background-position:center 0;background-repeat:no-repeat;background-size:100% auto;}
#PageGuide{height:100vh;}
#PageGuide #main-wrapper:before,#GuideContainer:before{z-index:0;position:absolute;height:100%;background-attachment:fixed;}

@media (min-width:901px){
body:after,#GuideContainer:after{right:0;left:auto;background:linear-gradient(207deg,rgba(0, 17, 53, 1) 0%, rgba(0, 29, 92, 0.3) 40%);}
}

.full-splash-spacer{height:100vh;z-index:0;position:relative;pointer-events:none;}
.full-splash-ad{width:100%;height:100vh;padding:3em 5% 1em 5%;top:0;z-index:0;position:fixed;margin:auto;background:rgba(0,0,0,0.2);}
.embed-inline{display:flex;gap:1em;}
.embed-inline .flourish-map{width:100%;padding-top:40%;}

.hero{position:absolute;top:0;width:100%;height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;transition:transform 0.1s ease-out;z-index:0;}
.short-text{font-size:0.9em;font-weight:700;margin:0.2em auto;text-align:center;color:#000;}
.flourish-credit{display:none;}
.flourish-map{width:80%;padding-top:55%;position:relative;margin:auto;}
.flourish-map iframe{position:absolute;top:0;left:0;bottom:0;right:0;width:100%!important;height:100%!important;}
.flourish-embed iframe{width:100%!important;}
#PhaseStatus .flourish-embed iframe{border-radius:0;}
#PhaseStatus .display-full{padding:0;}
.legend a{color:var(--theme-ui-colors-secondary);}
.note{font-size:0.8em;}
.note ul{margin-top:0;}
.school-vacancy-comparison{font-size:0.9em;margin:0.6em auto;justify-items:center;align-items:center;border:2px solid #ffe400;display:flex;border-radius:0.4em;overflow:hidden;}
.school-vacancy-comparison span{flex:1 1 auto;text-align:center;padding:0.4em;}
.school-vacancy-comparison span:last-child{background:#ffe400;}
.school-vacancy-comparison span:first-child{background:#f9f9f0;}
.school-vacancy-comparison span em,.school-vacancy-comparison span b{display:block;}
.school-vacancy-comparison span em{font-size:0.9em;}

.vscroller{overflow:hidden;overflow-y:auto;}
.vscroller::-webkit-scrollbar{width:6px;background-color:none;}
.vscroller::-webkit-scrollbar-track{-webkit-background-color:none;border-radius:10px;}
.vscroller::-webkit-scrollbar-thumb{border-radius:10px;background:var(--theme-ui-colors-light-grey);}

#bar-chart .tick text{font-weight:700;font-size:1.4em;}
.btn-group{margin:2em auto 1em auto;}

.align-center{text-align:center;}
#main-wrapper,#GuideContainer{outline:none;z-index:1;position:relative;}
#PageMain #main-wrapper{width:100%;overflow:hidden;}
#PageGuide #main-wrapper{width:100%;margin-top:-9.5em;padding:10em 0 2em 0;}
#GuideContainer{padding:1em 0;}
.main-header{margin:5em auto 1em auto;position:relative;display:flex;align-items:center;justify-content:center;z-index:1000000;}
.cover-header{width:80%;margin:auto;transition000:opacity 3s cubic-bezier(0.19, 1, 0.22, 1);transition-delay000:1s;position:relative;z-index:40;opacity:0;}
.cover-header.visible{opacity:1;}
.cover-content{margin:0 auto;text-align:center;color:#fff;}
.cover-content.align-bottom{top:80%;transform:translate(-50%,-80%);}
.cover-sub{font-size:1em;line-height:1.4;display:inline;margin-bottom:2em;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-transform:uppercase;position:relative;-webkit-animation:fadein 4s;-moz-animation:fadein 4s;animation:fadein 4s;}

.cover-headline{line-height:1.2;}
.cover-headline h1{text-shadow:0 2px 4px rgba(0,0,0,0.15);position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.cover-headline h1 span,.cover-headline h1 em{display:block;}
.cover-headline h1 span{font-size:1em;margin:0 auto;font-weight:500;-webkit-animation:fadein 4s;-moz-animation:fadein 4s;animation:fadein 4s;}
.cover-headline h1 em{font-size:1.8em;font-weight:900;-webkit-animation:fadein 8s;-moz-animation:fadein 8s;animation:fadein 8s;
background:linear-gradient(150deg,#ffe400,#fff8bd);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradient 3s linear infinite;}

@keyframes gradient {
to{background-position:200% center;}
}

#program-label{padding:0.4em 0.8em;border-radius:0.3em;display:inline-block;color:var(--theme-ui-colors-white);background:var(--theme-ui-colors-main);}
#program-label:hover{background:var(--theme-ui-colors-secondary);}
.publish{font-size:0.9em;padding:1em 0;margin:1em auto 0 auto;border-top:1px solid rgba(255,255,255,0.4);}
.theme-light .publish{border-top:1px solid rgba(0,0,0,0.2);}

.intro{width:80%;margin:0 auto;position:relative;z-index:2;display:flex;align-items:center;}
.intro-text{display:block;margin:auto;z-index:1000;text-align:center;line-height:1.6;}
.intro-text p{margin:0 0 1.2em 0;text-align:center;}
.intro-text a{border-bottom:2px solid var(--theme-ui-colors-main);color:var(--theme-ui-colors-white);}
.intro-text ul{text-align:left;}

.nav-links,.nav-links li{list-style-type:none;margin:0;padding:0;}
.nav-links{font-size:1em;margin-top:1em;display:inline-flex;align-items:center;justify-content:center;line-height:1.2;gap:0.6em;position:relative;z-index:10000;}
.nav-links a{padding:0.8em 1.4em;border:2px solid #ffe400;color:#fff;border-radius:0.6em;text-align:center;}
.nav-links a:hover,.nav-links li:first-child a{background:#ffe400;color:#000;font-weight:700;}

.pin-container{top:0;left:50%;position:absolute;transform-origin:top;transition:all 500ms ease-out;z-index:10;}
.pin-hide{transform:scale(0);opacity:0;}
.pin-show{transform:scale(1);opacity:1;}
.pin-wrapper{position:relative;transform:translate(-50%,0%);}
.pin-pulse{position:absolute;bottom:-4px;left:50%;width:66px;height:66px;background-color:rgba(255,255,255,0.4);border-radius:50%;animation:custom-ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;border:1px solid rgba(255,255,255,0.6);}

@keyframes custom-ping{
0%{transform:translateX(-50%) scale(1);opacity:0.6;}
75%,100%{transform:translateX(-50%) scale(2);opacity:0;}
}

.pin-shadow{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:12px;height:6px;background-color:rgba(0, 0, 0, 0.1);filter:blur(2px);border-radius:50%;}
.pin-icon{width:48px;height:48px;opacity:0.8;color:#ffe400;fill:currentColor;filter:drop-shadow(0 10px 8px rgba(0, 0, 0, 0.2));position:relative;z-index:10;transition:transform 0.2s ease;cursor:pointer;opacity:0.5;}
.pin-icon:hover{transform:scale(1.1);}

.icon-pin{}

#MapContainer{padding-top:1em;position:relative;border:0.4em solid var(--theme-ui-colors-white);background:var(--theme-ui-colors-white);border-radius:1em;overflow:hidden;width:90%;margin:2em auto;box-shadow:0 0 100em 0 rgba(0,0,0,0.8);z-index:1000;color:#888;}

.wrapper{border:0.4em solid var(--theme-ui-colors-white);background:var(--theme-ui-colors-white);border-radius:1em;width:90%;margin:0 auto 4em auto;box-shadow:0 0 5em 0 rgba(0,0,0,0.08);}
.container{width:80%;max-width:none;margin:auto;position:relative;}

.btn-link span{width:36px;height:36px;margin-left:0.6em;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;}
.btn-link{font-size:1.1em;padding:0.7em 1.2em;border-radius:50px;margin:0.8em 0.4em;color:#000!important;background:#ffe400!important;border:none!important;font-weight:500;line-height:1.2;display:inline-flex;align-items:center;}
.btn-link:hover{}

.arrow-right,.arrow-left,.arrow-up,.arrow-down{display:block;width:12px;height:12px;border-top:2px solid #000;border-left:2px solid #000;visibility:visible!important;}
.arrow-right{transform:rotate(135deg);margin-left:-0.2em;}
.arrow-left{transform:rotate(-45deg);}
.arrow-down{transform:rotate(-135deg);margin-top:-0.2em;}
.arrow-up{transform:rotate(45deg);margin-top:0.3em;}

.dropdown-button{width:100%;padding-right:3em;color:var(--theme-ui-colors-black);border:2px solid var(--theme-ui-colors-secondary);display:flex;align-items:center;position:relative;}
.dropdown-content{font-size:0.85em;text-align:left;max-height:180px;width:auto;padding:0;margin-top:6px;border-radius:0.5em;border:1px solid var(--theme-ui-colors-main);overflow-y:auto;background-color:white;position:absolute;z-index:10000;box-shadow:0 0 30px 0 rgb(0 0 0 / 8%);text-align:left;}
.dropdown-content li{padding:0.6em 0.8em;border-bottom:1px solid #ddd;}
.dropdown span{font-size:1em;text-align:left;line-height:1.2;}

.dropdown-button:after,.dropdown.open .dropdown-button:after{content:"";position:absolute;right:1em;z-index:11;display:block;width:8px;height:8px;border-top:1px solid #6b7280;;border-left:1px solid #6b7280;}

.dropdown.open .dropdown-button{background:var(--theme-ui-colors-secondary);color:#fff}
.dropdown-button::after{top:12px;transform:rotate(225deg);}
.dropdown.open .dropdown-button::after{top:18px;transform:rotate(45deg);border-color:#fff;}

h1,h2,h3{line-height:1.2;}
h2,h3{margin:0 auto 1em auto;display:flex;justify-content:center;}
h2{font-size:2.2em;}
h3{font-size:1.4em;}

#SchoolArchive,#PhaseStatus,#SchoolGuide{margin:0.6em auto;padding:1em;background:#fff;color:initial;flex-wrap:wrap;align-items:center;justify-content:center;box-shadow:0 0 5em 0 rgba(0, 0, 0, 0.08);border:1px solid #ebebeb;border-radius:0.5em;position:relative;}
#SchoolArchive{z-index:100000000;background:#fff;border:none;flex-wrap:initial;align-items:start;}
#SchoolArchive fieldset{width:80%;top:1em;padding:0.6em;margin:auto;background:#ffe400;border:none;border-radius:0.5em;position:sticky;display:flex;justify-content:center;}
#PhaseStatus{z-index:10000000;}
#SchoolGuide{margin-bottom:0;padding-bottom:4em;background:none;color:#fff;border:none;box-shadow:none;}
#SchoolGuide h2{color:#fff;}
#SchoolGuide .container{width:60%;}

#schoolDropdown{width:70%;}
#phaseDropdown{width:30%;}
#phase{margin-bottom:0.6em;font-size:0.85em;color:var(--theme-ui-colors-grey);text-align:center;}
#phase b{color:var(--theme-ui-colors-main);}
.data-disclaimer{margin:0.4em auto;font-size:0.8em;color:#888;text-align:center;}

h3.year{padding:0.4em 0;margin:0 auto 0.6em auto;text-align:center;border-bottom:1px solid #eff2fa;font-size:1.2em;}
.legend-item{padding:0.1em 0.6em;display:flex;align-items:center;gap:4px;line-height:1.4;}
.legend-item b{font-size:1.2em;}
.legend-icon{width:12px;height:12px;display:inline-block;margin-right:0.4em;display:none;}
.legend-vacancy,.item-vacancy{border:3px solid #eff2fa;}
.legend-taken,.item-taken{background:#36d989;color:#000;}
.legend-oversub,.item-oversub{background:#fa1545;}
.item-applicant{padding:0.8em 0 0.2em 0;}
.legend-item.item-vacancy,.legend-item.item-applicant{justify-content:center;}
.legend-item.item-taken,.legend-item.item-oversub{justify-content:right;}


@media (min-width:800px) and (max-width:1200px) and (orientation:landscape){
.cover-header{width:80%;}
.cover-headline h1 em{font-size:1.6em;}
.cover-content{width:100%;}
}

@media (min-width:200px) and (max-width:900px) and (orientation:portrait) {
body:before,#main-wrapper:before,#GuideContainer:before{background-image:url('../imgs/bg-portrait.webp');}
#GuideContainer:before{display:none;position:relative;}
#PageGuide #main-wrapper{margin-bottom:0;}
#PageGuide #main-wrapper:before{position:relative;}
.container{width:100%;max-width:none;}
#MapContainer{box-shadow:0 0 2em 0 rgba(0, 0, 0, 0.4);}
#MapContainer .container{padding:0 1em;}
.nav-links{display:flex;}
.nav-links a{display:block;padding:0.5em 0.8em;}
.pin-icon{width:138px;height:138px;opacity:0.3;}
.main-header{margin:3em auto 0 auto;}
.cover-header,.cover-content{width:90%;}
.cover-header{height:100%;}
.cover-content.align-bottom{top:65%;}
.cover-sub{width:100%;margin:0 auto 1em auto;display:block;}
.cover-headline h1{font-size:1.2em;}
.cover-headline h1 span,.cover-headline h1 em{-webkit-animation:none;-moz-animation:none;animation:none;}
.cover-headline h1 span{font-size:1em;}
.cover-headline h1 em{font-size:2em;}
#program-label{padding:0.2em 0.8em;font-size:0.9em;}
.intro{width:100%;font-size:0.9em;}
.intro-text{padding:0;line-height:1.4;}
.intro .message{width:70%;padding:0.6em 1em 1.6em 1em;}
.intro h1 em,.intro h1 span{display:block;}
.intro h1 span{font-size:1.2em;}
.intro h3{margin:0.4em auto;}
h2{font-size:1.4em;margin-top:0;}

.btn-link{margin:0.4em auto;font-size:0.85em;}
.btn-link span{width:26px;height:26px;}
.arrow-right,.arrow-left,.arrow-up,.arrow-down{width:10px;height:10px;}

#SchoolArchive,#SchoolGuide{padding:1em;width:100%;}
#SchoolArchive fieldset{top:4em;width:100%;padding:0.4em;display:block;text-align:center;z-index:1000000;}
.dropdown{margin:0.2em;}
.dropdown span{font-size:1em;}
.dropdown-button{width:100%;}
#schoolDropdown,#phaseDropdown{width:90%;}
.dropdown-button::after{top:10px;transform:rotate(225deg);}
.dropdown.open .dropdown-button::after{top:14px;}

.full-splash-ad{width:100%;padding:2em 1em 1em 1em;margin:1em auto 0 auto;position:relative;height:auto;backdrop-filter:blur(0.2em);border-top:1px solid rgba(194, 200, 240, 0.6);border-bottom:1px solid rgba(194, 200, 240, 0.6);}
.full-splash-spacer{height:auto;}
.embed-inline{display:block;}
.embed-inline .flourish-map{width:100%;padding-top:120%;margin-bottom:1em;}
}

@media (min-height:200px) and (max-height:760px) and (orientation:landscape) {
.full-splash-ad{position:relative;height:auto;padding-bottom:4%;}
.full-splash-spacer{height:auto;}
.embed-inline .flourish-map{padding-top:40%;}
}


.blink-hard{animation:blinker 1s step-end infinite;}
.blink-soft{animation:blinker 1.5s linear infinite;}
@keyframes blinker{
50%{opacity:0;}
}


@-webkit-keyframes pulse1{
0%{opacity:0;transform:scale(0);}
30%{opacity:1;transform:scale(1.5);}
60%{opacity:1;transform:scale(2);}
100%{opacity:0;transform:scale(2);}
}

@keyframes pulse1{
0%{opacity:0;transform:scale(0);}
30%{opacity:1;transform:scale(1.5);}
60%{opacity:1;transform:scale(2);}
100%{opacity:0;transform:scale(2);}
}

@-webkit-keyframes pulse2{
0%{transform:scale(1, 1);opacity:0;}
50%{opacity:1;}
100%{transform:scale(6, 6);opacity:0;}
}

@keyframes pulse2{
0%{transform:scale(1, 1);opacity:0;}
50%{opacity:1;}
100%{transform:scale(6, 6);opacity:0;}
}

@-webkit-keyframes bounce {
0%{transform:translateY(0);}
100%{transform:translateY(-10px);}
}
@keyframes bounce {
0%{transform:translateY(0);}
100%{transform:translateY(-10px);}
}

.bottomMenu{position:fixed;bottom:0;width:100%;z-index:1;transition:all 1s;}
.hide{opacity:0;left:-100%;}
.show{opacity:1;left:0;}
#stickyBottom{font-weight:700;width:100%;display:flex;justify-content:center;align-items:center;gap:0.4em;padding:0.8em;bottom:0;margin:0 auto;position:fixed;transition: all .5s;z-index:10000000001;justify-content:center;background:rgba(194,200,240,0.3);backdrop-filter:blur(0.4em);border-top:1px solid rgba(194,200,240,0.6);}
#stickyBottom .item{font-size:0.9em;display:block;line-height:1.2;color:var(--theme-ui-colors-secondary);text-align:center;}
#stickyBottom .item a{color:var(--theme-ui-colors-secondary);display:flex;align-items:center;background:#fff;margin:0;border-radius:0.3em;}
#stickyBottom .item span{padding:0.8em;display:flex;justify-content:center;align-items:center;word-break:break-all;transition:all 0.6s;}
#PageMain #stickyBottom .item.nav-main a,#PageGuide #stickyBottom .item.nav-guide a,#stickyBottom .item a:hover{background:var(--theme-ui-colors-main);color:#fff;border-color:transparent;}
#stickyBottom .item a:hover{background:var(--theme-ui-colors-secondary);}

@media screen and (min-height:320px) and (max-height:499px) and (orientation:landscape) {
#stickyBottom{display:none!important;}
}

@media screen and (min-width:768px) and (max-width:900px) and (orientation:portrait) {
}
@keyframes open{
0%{opacity:0;}
100%{opacity:1;}
}

details summary{outline:0;align-items:center;}
details[open] summary ~ *{animation:open 0.3s ease-in-out;}
details summary::-webkit-details-marker{display:none;}
details summary{width:100%;border-top:2px solid rgba(255,255,255,0.6);position:relative;cursor:pointer;list-style:none;}
details summary:after{display:none;font-size:1.4rem;content:"+";color:var(--theme-ui-colors-black);position:absolute;line-height:0;margin:auto 0.8em auto auto;right:0;transform-origin:center;transition:200ms linear;color:var(--theme-ui-colors-main);}
details[open] summary:after{transform:rotate(45deg);color:var(--theme-ui-colors-black);}

.nav-tabs-capsule,.nav-tabs{align-items:center;justify-content:center;display:flex;}
.nav-tabs-capsule{margin:0 auto 1em auto;display:block;text-align:center;}
.nav-tabs-capsule h3{margin:0.4em auto;}
.nav-tabs-capsule span{font-size:0.9em;}
.nav-tabs,.nav-tabs li{margin:0;padding:0;list-style-type:none;}
.nav-tabs{font-size:1.4em;font-weight:700;}
.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem;}
.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6;}
.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent;}
.nav-tabs .nav-item a{color:#999;padding:0.3em 0.8em;display:block;border-bottom:2px solid transparent;}
.nav-tabs .nav-item.active2 a,.nav-tabs .nav-item a.active{color:var(--theme-ui-colors-secondary);border-bottom:2px solid var(--theme-ui-colors-main);}
.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff;}
.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0;}
.tab-content>.tab-pane{display:none;}
.tab-content>.active{display:block;}
.navbar{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem;}

.display-panel{display:flex;width:100%;padding:0;margin:0 auto;text-align:center;}
.display-md-5{width:50%;}
.display-md-10{width:100%;}
.display-full{padding:0.4em;}


@media screen and (max-width:1000px){
.display-full,.display-panel,.display-full.display-md-auto .fluid-iframe{width:100%;display:block;}
.display-md-5,.display-md-10{width:100%;}
}

@media screen and (min-width:320px) and (max-width:767px){
.nav-tabs{font-size:0.9em;}
.nav-tabs .nav-item{flex:1;}
.nav-tabs .nav-item a{padding:0.2em 0;}
#stickyBottom{padding:0.6em;top:0;bottom:auto;height:50px;border-top:none;border-bottom:1px solid rgba(194,200,240,0.6);gap:0.2em;}
#stickyBottom .item span{padding:0.5em;}
.display-full{padding:0.4em 0;}
.flourish-embed iframe,#SchoolGuide .container{width:100%;}
#SchoolGuide .text-box{padding:0 1em;}
}