html, body { padding: 0; margin: 0; font: normal 16px/1.5 "Trebuchet MS", Tahoma, sans-serif; box-sizing: border-box; 
	-webkit-text-size-adjust: 100%; color: #333;
}

*, *::before, *::after { font: inherit; box-sizing: inherit; color: inherit; }
b, strong { font-weight: bold; }
em, i { font-style: italic; }

h1, h2, h3, h4, h5, h6 { margin: 2rem 0 1rem 0; line-height: 1.2; font-weight: bold; }
h1 { font-size: 26px; }
h2 { font-size: 24px; }
h3 { font-size: 22px; }
h4 { font-size: 20px; }
h5 { font-size: 18px; }
h6 { font-size: 16px; }
p { margin: 1em 0; }
ul, ol { margin: 0; }

img { max-width: 100%; height: auto; }

table { border-collapse: collapse; }

a { color: #4E6EB1; position: relative; }
a:hover { color: #64acff; }
a:focus { color: #4E6EB1; outline: 4px solid #64acff; z-index: 1; }
a:active { color: #1C3E88; }

.tc { text-align: center; }
.tl { text-align: left; }
.tr { text-align: right; }

.dim { opacity: .5; }
.ckcontent img { height: auto !important; }

.img-right, .img-right-25 { float: right; max-width: 50%; margin: 0 0 8px 8px; clear: right; }
.img-right-25 { max-width: 25%; }
.img-left, .img-left-25 { float: left; max-width: 50%; margin: 0 8px 8px 0; clear: left; }
.img-left-25 { max-width: 25%; }

.clear { clear: both; }
.clear-right { clear: right; }
.clear-left { clear: left; }

.req { color: #a00; }
.errors { border-left: 4px solid #a00; background: #fee; color: #a00; padding: 6px 12px; margin: 1em 0; }

.ckadmin .rcols { outline: none !important; }
.ckadmin .rcol1 { outline: 2px dashed #F72BFF; }
.ckadmin .rcol2 { outline: 2px dashed #6B27FF; }

.fcols { display: flex; margin: 1em -6px; }
.fcols > div { flex: 1; margin: 0 6px; }
.fcols > div > :first-child { margin-top: 0; }
.fcols > div > :last-child { margin-bottom: 0; }	

@media not all and (max-width: 700px) {
	.rcols { display: flex; margin: 1em -6px; }
	.rcols > div { flex: 1; margin: 0 6px; }	
	.rcols > div > :first-child { margin-top: 0; }
	.rcols > div > :last-child { margin-bottom: 0; }	
}

.busy-bg { background-image: url(busy-bg.gif) !important; }
/* image preloading */
body:after { position: absolute; width: 0; height: 0; overflow: hidden; z-index: -1;
	content: url(busy-bg.gif) /* url(img2.png) ... */;
}

a[name][id] {
	display: block;
	position: relative;
	top: -38px;
	visibility: hidden;
}

body.cke_editable { padding: 8px; }

.page { position: relative; }
.admin-edit { display: block; background: #a0a; color: #fff; padding: 0 8px; position: absolute; right: 0; top: 0; text-decoration: none;
	opacity: 0; transition: opacity .2s;
}
.admin-edit:hover { background: #e0e; color: #fff; }
.page:hover > .admin-edit { opacity: 1; }
.admin-over { outline: 2px solid #e0e; }

h1.pagetitle { color: #4E6EB1; }

input, textarea, select, button { color: #000; display: inline-block; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0; border: 1px solid #444; padding: 6px; background: #fff; position: relative; }
input.error, textarea.error, select.error { border-color: #d00; }
input, select, button { height: calc(1.5em + 14px); }
input:disabled, textarea:disabled, select:disabled, button:disabled { cursor: not-allowed; background-color: #eee; }
input:focus, select:focus, textarea:focus, button:focus { outline: 4px solid #64acff; z-index: 1; outline-offset: -1px; }
textarea { resize: vertical; padding: 0 6px; }
select { background-repeat: no-repeat; background-position: right 6px center; background-size: 9px; padding-right: 21px; 
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='14px' viewBox='0 0 16 14'%3E%3Cpolygon fill='%23000' points='16,0 8,13.855 0,0 '/%3E%3C/svg%3E");
}
select[multiple] { height: auto; padding: 0 0 0 6px; background: #fff; }
option { display: block; }
select:-moz-focusring { color: transparent; text-shadow: 0 0 0 #000; }
button::-moz-focus-inner { border:0; }
select::-ms-expand { display: none; }
input[type=radio],
input[type=checkbox] { position: absolute; left: -999em; }
input[type=radio] + i::before, 
input[type=checkbox] + i::before { display: inline-block; content: "\00a0"; line-height: 20px; width: 22px; height: 22px; background: #fff; border: 2px solid #444; border-radius: 999px; position: relative; }
input[type=radio]:checked + i::before,
input[type=checkbox]:checked + i::before { background-position: center; background-repeat: no-repeat; background-size: 14px; 
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='16px' viewBox='0 0 16 16'%3E%3Ccircle fill='%23444' cx='8' cy='8' r='8'/%3E%3C/svg%3E%0A");
}
input[type=radio]:focus + i::before { box-shadow: 0 0 0 4px #64acff; z-index: 1; }
input[type=checkbox] + i::before { border-radius: 4px; }
input[type=checkbox]:checked + i::before { background-color: #444;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16px' height='13px' viewBox='0 0 16 13'%3E%3Cpolygon fill='%23FFF' points='6.274,12.549 0,6.274 2.823,3.451 6.274,6.902 13.176,0 16,2.823 '/%3E%3C/svg%3E");
}
input[type=checkbox]:focus + i::before { outline: 4px solid #64acff; border-radius: 0; z-index: 1; }
input[type=radio]:disabled + i::before,
input[type=checkbox]:disabled + i::before { cursor: not-allowed; background-color: #ddd; border-color: #888; }
/*input[type=checkbox]:checked:disabled + i::before { background-color: #888; } */
button, a.btn { background: #4E6EB1; color: #fff; border-radius: 4px; /*cursor: pointer;*/ text-decoration: none; padding: 7px 12px; border: none; }
button:hover, a.btn:hover { background: #34569F; }
button:active, a.btn:active { background: #1C3E88; }
button:focus, a.btn:focus { background: #34569F; border-radius: 0; }
button:disabled { color: #aaa; background: #ddd; }

a.btn.go::before { font-family: 'Font Awesome 5 Free'; font-weight: 900; content: "\f061"; margin-right: 4px; }

.field { display: block; margin: 1em 0; }
.field label { display: block; /* white-space: nowrap; */ }
.field input, .field textarea, .field select { width: 100%; }







#nav-anchor { height: 38px; }
#nav { background: #333; color: #fff; position: relative; width: 100%; z-index: 10; }
#nav a { color: #fff; text-decoration: none; display: block; border: 4px solid transparent; padding: 0 8px; }
#nav a:focus { border-color: #64acff; outline: none; }
#nav ul, #nav li { list-style: none; margin: 0; padding: 0; display: block; }
.nav2 { display: none; }
.nav2-tgl[aria-expanded=true] + .nav2 { display: block; }
.nav2-tgl.active { background-color: #4E6EB1; }
.nav2 > div { background: #000; border-bottom: 1px solid #fff; }
.nav2 { font-size: 14px; }
#nav .nav2 a { color: #ddd; }
#nav .nav2 a:hover, #nav .nav2 a:focus { color: #fff; background-color: #222; }
#nav #nav-tgl, #nav .nav2-tgl { line-height: 30px; }
#nav.fixed { position: fixed; top: 0; box-shadow: 0 1px 0 #fff; }
@media (max-width: 700px) {
	#nav { text-align: center; }
	.nav2-tgl:hover, .nav2-tgl:focus, #nav-tgl:hover, #nav-tgl:focus { background: #444; }
	ul#nav-ul { display: none; }
	#nav-tgl[aria-expanded=true] + #nav-ul { display: block; }
	.nav-btns a i { display: none; }
	#nav.fixed { max-height: 100vh; overflow-y: auto; overscroll-behavior: contain; }
	#nav.fixed::-webkit-scrollbar { display: none; }
	#nav-tgl[aria-expanded=true] { color: #ccc; }
	#nav-tgl[aria-expanded=true] i:before { content: "\f00d"; }
}
@media not all and (max-width: 700px) {
	#nav #nav-tgl { display: none; }
	#nav { text-align: center; }
	ul#nav-ul { display: inline-flex; justify-content: center; text-align: left; }
	.nav2 { position: absolute; width: 100%; left: 0; pointer-events: none; overflow: hidden; }
	.nav2 * { pointer-events: all; }
	#nav.nav-mouse .nav2 { display: block; }
	#nav.nav-mouse .nav2 > div { transform: translateY(-110%); transition: opacity .3s ease-in-out, transform .3s ease-in-out; opacity: 0; visibility: hidden; }
	#nav.nav-mouse li:hover .nav2 > div,
	#nav.nav-mouse li.last-hover .nav2 > div { visibility: visible; }
	#nav.nav-mouse #nav-ul:hover .nav2 > div { transform: translateY(0); opacity: 1; }
	.nav2-tgl { background-color: transparent; background-origin: border-box; background-size: 100% 200%; background-clip: border-box; transition: background-position .3s ease-in-out; }
	.nav2-tgl.active { background-color: #4E6EB1; }
	#nav.nav-mouse li:hover .nav2-tgl,
	#nav.nav-mouse li.last-hover .nav2-tgl { background-image: linear-gradient(transparent 50%, #000 50%); }
	#nav.nav-mouse li:hover .nav2-tgl.active,
	#nav.nav-mouse li.last-hover .nav2-tgl.active { background-image: linear-gradient(#4E6EB1 50%, #000 50%); }
	#nav.nav-mouse #nav-ul:hover .nav2-tgl { background-position: 0 100%; }
	#nav .nav2 > div > div { max-width: 1000px; margin: 0 auto; padding-top: 8px; }
	#nav .nav2 > div > div > * { padding-bottom: 8px; }
	#nav .nav-btns { display: flex; justify-content: center; margin: 0 -1px -1px 0; flex-wrap: wrap; }
	#nav .nav-btns a { background: #4E6EB1; color: #fff; margin: 0 1px 1px 0; }
	#nav .nav-btns a:hover { background: #64acff; color: #fff; }
	#nav .nav-btns a:focus { border-color: #64acff; /* background: #64acff; color: #fff; */ }
	#nav .nav-cols { columns: 4; }
	#nav .nav-cols * { break-inside: avoid-column; }
	#nav .nav-row { display: flex; justify-content: center; flex-wrap: wrap; }
	#nav .nav-1col { text-align: center; }
}

@media not all and (max-width: 700px) {
	#nav li.alt a { background-color: #F37936; }
	#nav li.alt a:hover { background-color: #F8A31B; }
	#nav li.alt a:focus { border-color: #F8A31B; background: #000; }
}
a#plan-roc b { position: relative; display: inline-block; width: 50px; }
a#plan-roc img { height: 33px; width: auto; max-width: none; position: absolute; vertical-align: top; top: -25px; z-index: 2; left: 0; }

#head { max-width: 1024px; margin: 0 auto; position: relative; z-index: 2; }
#head2 { padding: 8px; border: 4px solid transparent; display: block; }
#head2 img { display: block; height: 60px; }
#head2:focus { border-color: #64acff; outline: none; color: #4E6EB1; }
#head-icons { display: flex; justify-content: flex-end; padding-right: 8px; position: absolute; top: 0; right: 0; }
#head-icons i, #icons i::before { width: 16px; height: 16px; line-height: 16px; display: block; text-align: center; font-size: 16px; }
#head-icons a { padding: 4px; text-decoration: none; }
#head-icons a:focus { background: #64acff; outline: none; color: #fff; }
@media not all and (max-width: 700px) {
	#head2 { width: 290px; position: absolute; left: 0; top: 0; }
}

#overlay { position: fixed; width: 100%; height: 100vh; background: rgba(0,0,0,.5); z-index: 100; display: none; }
.over-overlay { z-index: 101; }
.over-overlay { z-index: 101; }

#search { max-width: 1000px; margin: 0 auto; position: relative; }
#search-form { display: flex; padding-bottom: 1px; }
#search-form > * { background: #4E6EB1; display: block; border: 4px solid #4E6EB1; margin: 0; line-height: 30px; position: relative; }
#search-form > *:focus { border-color: #64acff; outline: none; }
#search-submit { color: #fff; margin-left: 1px; padding: 0; height: 38px; width: 38px; text-align: center; border-radius: 0; }
#search-text { flex: 1; padding: 0 8px; color: #fff; height: 38px; }
#search-text:focus { background: #fff; color: #000; }
#search-text::placeholder { color: #fff; }
#search-text:focus::placeholder { color: #888; }
@media not all and (max-width: 700px) {
	#search { height: 84px; }
	#search-form { position: absolute; right: 0; bottom: 0; width: calc(100% - 400px); }
}

#search.over-overlay #search-text { border-color: #fff; }
#search.over-overlay #search-submit { background: #fff; color: #000; border-color: #fff; }

#pub .ui-widget { font-family: inherit; }
#pub .search-menu { border: none; padding-top: 1px; background: transparent; }
#pub .search-menu .ui-menu-item-wrapper { margin: 0; padding: 0 8px; border: 4px solid transparent; line-height: 30px; background: #fff; }
#pub .search-menu .ui-state-active { background: #4E6EB1; color: #fff; }

/* #search-results { position: absolute; right: 0; top: 100%; width: calc(100% - 400px); background: #fff; }
#search-results a { display: block; } */

#home-rot { background: #eee; margin-bottom: 25px; }
#home-rot2 { max-width: 1000px; margin: 0 auto; }
#home-rot2 a, #home-rot2 img { display: block;}
#home-rot2 .slick-prev:before, 
#home-rot2 .slick-next:before { color: black; }
#home-rot2 .slick-dots li button:before { transition: font-size .2s; }
#home-rot2 .slick-dots li.slick-active button:before { font-size: 16px; }
@media (max-width: 1060px) {
	#home-rot2 .slick-arrow { z-index: 1; opacity: 0; transition: opacity .5s; }
	#home-rot2:hover .slick-arrow { opacity: 1; }
	#home-rot2 .slick-prev { left: 5px; }
	#home-rot2 .slick-next { right: 5px; }
}

#home-airlines { padding: 12px; overflow-x: hidden; }
#home-airlines2 { max-width: 1000px; margin: 0 auto; }
#home-airlines3 { display: flex; margin: 0 -24px; justify-content: center; }
#home-airlines3 a { flex-grow: 1; padding: 8px; border: 4px solid transparent; display: flex; justify-content: center; align-items: center; margin: 0 12px; }
#home-airlines3 a:focus { outline: none; border: 4px solid #64acff; }
#home-airlines3 img { display: block; margin: 0 auto; transition: transform .2s; }
#home-airlines3 a:hover img { transform: translateY(-4px); }
@media (max-width: 900px) {
	#home-airlines3 { flex-wrap: wrap; }
	#home-airlines3 a { width: calc(25% - 24px); flex-grow: 0; }
}
@media (max-width: 500px) {
	#home-airlines3 a { width: calc(50% - 24px); flex-grow: 0; }
}

#home-boxes { background: #4E6EB1 linear-gradient(45deg, #4E6EB1, #64acff, #4E6EB1); padding: 12px; }
#home-boxes2 { max-width: 1000px; margin: 0 auto; }
#home-boxes3 { margin: -6px; display: flex; }
#home-box-links { display: flex; flex: 1; flex-wrap: wrap; }
#home-box-links a { color: #fff; border: 4px solid transparent; background: linear-gradient(45deg, rgba(0,0,0,.6), rgba(0,0,0,.4)); background-origin: border-box;
	font-size: 16px; text-decoration: none; margin: 6px; width: calc(33% - 12px); flex-grow: 1; text-align: center; display: flex; flex-direction: column; justify-content: center; }
#home-box-links a:hover { background: #fff; color: #4E6EB1; }
#home-box-links a:focus { border-color: #fff; outline: none; }
#home-box-links a > i { display: block; transition: margin-top .2s; margin-top: 0; }
#home-box-links a:hover > i { margin-top: -10px; }
#home-box-links a > b { font-weight: normal; padding-top: 10px; }
#home-box-twitter { flex: 1; margin: 6px; background: #fff; height: 400px; overflow: hidden; }
@media (max-width: 700px) {
	#home-boxes3 { display: block; }
	#home-box-links a { padding: 15px 0; }
}

.twitter-timeline {
    width: 100vw !important;
}


#foot { background: #111; color: #aaa; font-size: 14px; padding: 24px 12px; }
#foot2 { max-width: 1000px; margin: 0 auto; display: flex; }
#foot a { color: #aaa; text-decoration: none; }
#foot a:focus, #foot a:hover { color: #fff; }
#foot-logos { display: flex; justify-content: center; margin: 0 -4px; }
#foot-logos a { margin: 0 4px; }
#foot-logos img { display: block; opacity: .8; }
#foot-logos a:hover img, #foot-logos a:focus img { opacity: 1; }
#foot-logo-roc { padding-top: 12px; }
#foot-info { flex: 1; text-align: right; }
#foot-clinks { display: flex; justify-content: flex-end; margin-left: -1px; margin: 8px 0; padding: 0; }
#foot-clinks a { padding: 2px 8px; margin-left: 1px; background: #000; }
#foot-clinks a:hover { background: #fff; color: #000; }
@media (max-width: 700px) {
	#foot2 { display: block; }
	#foot-info { text-align: center; margin-top: 24px; }
	#foot-clinks { justify-content: center; }
}


#wrap2 { min-height: 300px; }
#wrap2.notfullwidth { max-width: 1024px; padding: 0 12px; margin: 24px auto; }





table.flights { width: 100%; border-collapse: collapse; }
table.flights p { margin: 0; }
table.flights th { text-align: left; font-weight: bold; border-bottom: 2px solid #888; width: 25%; padding: 2px 0; }
table.flights td { text-align: left; vertical-align: top; width: 25%; padding: 2px 0; border-bottom: 1px solid #ddd; }


#pub .fc-toolbar h2 { font-size: 24px; line-height: 38px; }
#pub .fc-button { border: 4px solid transparent; color: #fff; background: #333; padding: 0 8px; border-radius: 0; box-shadow: none; -webkit-box-shadow: none; }
#pub .fc-button:focus { border-color: #64acff; outline: none; }
#pub .fc-toolbar > * > :not(:first-child) { margin-left: 1px; }
#pub .fc-button-active { background-color: #4E6EB1; }
#pub .fc-prev-button, #pub .fc-next-button { padding: 0; width: 38px; text-align: center; }
@media (max-width: 700px) {
	#pub .fc-toolbar { display: block; }
	#pub .fc-toolbar * { text-align: center; }
}
#pub .fc-scroller { height: auto !important; }
#pub .fc-dayGridMonth-view .fc-row { height: auto !important; min-height: 0; }
#pub .fc-week-number { background: #eee; }



.alert + .alert { margin-top: 1px; }
.alert-subject { display: block; margin: 0; padding: 0; background: #a00; border: 4px solid transparent; color: #fff; text-align: center; text-decoration: none; line-height: 30px; font-weight: bold; }
.alert-subject:hover, .alert-subject:active { background-color: #c00; color: #fff; }
.alert-subject:focus { outline: none; border-color: #f00; }
.alert-subject a span { display: block; max-width: 1024px; padding: 0 12px; margin: 0 auto; }
.alert-subject[aria-expanded=false] + .alert2 { display: none; }
.alert2 { background: #800; }
.alert2 > div { max-width: 1024px; padding: 1px 12px; margin: 0 auto; }
.alert-body { background: #800; text-align: center; color: #fff; }
.alert-body a { color: #fff; outline-color: #fff; }
.alert-body a:hover { color: #f88; }

.alert-alt .alert-subject { background: #ee2b25; }
.alert-alt .alert-subject:hover, .alert-alt .alert-subject:active { color: #fff; background: #b0201b; }
.alert-alt .alert-subject:focus { color: #fff; outline: none; border-color: rgba(255,255,255,.5); }
.alert-alt .alert2 { background: linear-gradient(45deg, #ee2b25, #fda817); }
.alert-alt .alert-body { background: transparent; padding-bottom: 24px; }
.alert-alt .alert-body a:hover { color: #fff; }

.alert-alt a.btn { background: #fff; color: #ee2b25; box-shadow: 4px 4px 0 #000; }
.alert-alt button:hover, .alert-alt a.btn:hover { color: #fda817; background: #fff; }
.alert-alt button:active, .alert-alt a.btn:active { background: #ee2b25; color: #fff; }