/* Minification failed. Returning unminified contents.
(1051,40): run-time error CSS1030: Expected identifier, found ':'
(1051,46): run-time error CSS1031: Expected selector, found ')'
(1051,46): run-time error CSS1025: Expected comma or open brace, found ')'
(1055,40): run-time error CSS1030: Expected identifier, found ':'
(1055,48): run-time error CSS1031: Expected selector, found ')'
(1055,48): run-time error CSS1025: Expected comma or open brace, found ')'
(1057,40): run-time error CSS1030: Expected identifier, found ':'
(1057,48): run-time error CSS1031: Expected selector, found ')'
(1057,48): run-time error CSS1025: Expected comma or open brace, found ')'
 */
/*!
 * Font Awesome Free 5.0.1 by @fontawesome - http://fontawesome.com
 * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:a 2s infinite linear;animation:a 2s infinite linear}.fa-pulse{-webkit-animation:a 1s infinite steps(8);animation:a 1s infinite steps(8)}@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-amazon:before{content:"\f270"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-aws:before{content:"\f375"}.fa-backward:before{content:"\f04a"}.fa-balance-scale:before{content:"\f24e"}.fa-ban:before{content:"\f05e"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bicycle:before{content:"\f206"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blind:before{content:"\f29d"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-braille:before{content:"\f2a1"}.fa-briefcase:before{content:"\f0b1"}.fa-btc:before{content:"\f15a"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-car:before{content:"\f1b9"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-certificate:before{content:"\f0a3"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-square:before{content:"\f14a"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-clipboard:before{content:"\f328"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comments:before{content:"\f086"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-credit-card:before{content:"\f09d"}.fa-crop:before{content:"\f125"}.fa-crosshairs:before{content:"\f05b"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-deviantart:before{content:"\f1bd"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dollar-sign:before{content:"\f155"}.fa-dot-circle:before{content:"\f192"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drupal:before{content:"\f1a9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-eject:before{content:"\f052"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-excel:before{content:"\f1c3"}.fa-file-image:before{content:"\f1c5"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fire:before{content:"\f06d"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-order:before{content:"\f2b0"}.fa-firstdraft:before{content:"\f3a1"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frown:before{content:"\f119"}.fa-futbol:before{content:"\f1e3"}.fa-gamepad:before{content:"\f11b"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-gift:before{content:"\f06b"}.fa-git:before{content:"\f1d3"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-martini:before{content:"\f000"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-gofore:before{content:"\f3a7"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-handshake:before{content:"\f2b5"}.fa-hashtag:before{content:"\f292"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-heart:before{content:"\f004"}.fa-heartbeat:before{content:"\f21e"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hospital:before{content:"\f0f8"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-houzz:before{content:"\f27c"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-internet-explorer:before{content:"\f26b"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-jenkins:before{content:"\f3b6"}.fa-joget:before{content:"\f3b7"}.fa-joomla:before{content:"\f1aa"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-key:before{content:"\f084"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-male:before{content:"\f183"}.fa-map:before{content:"\f279"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-maxcdn:before{content:"\f136"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-meh:before{content:"\f11a"}.fa-mercury:before{content:"\f223"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-moon:before{content:"\f186"}.fa-motorcycle:before{content:"\f21c"}.fa-mouse-pointer:before{content:"\f245"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nintendo-switch:before{content:"\f418"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-paint-brush:before{content:"\f1fc"}.fa-palfed:before{content:"\f3d8"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-paragraph:before{content:"\f1dd"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-percent:before{content:"\f295"}.fa-periscope:before{content:"\f3da"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phone:before{content:"\f095"}.fa-phone-square:before{content:"\f098"}.fa-phone-volume:before{content:"\f2a0"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-plane:before{content:"\f072"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-print:before{content:"\f02f"}.fa-product-hunt:before{content:"\f288"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-random:before{content:"\f074"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-rebel:before{content:"\f1d0"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-rendact:before{content:"\f3e4"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-resolving:before{content:"\f3e7"}.fa-retweet:before{content:"\f079"}.fa-road:before{content:"\f018"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-rupee-sign:before{content:"\f156"}.fa-safari:before{content:"\f267"}.fa-sass:before{content:"\f41e"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-scribd:before{content:"\f28a"}.fa-search:before{content:"\f002"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shower:before{content:"\f2cc"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowflake:before{content:"\f2dc"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-spinner:before{content:"\f110"}.fa-spotify:before{content:"\f1bc"}.fa-square:before{content:"\f0c8"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-star:before{content:"\f005"}.fa-star-half:before{content:"\f089"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-strava:before{content:"\f428"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-table:before{content:"\f0ce"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-trademark:before{content:"\f25c"}.fa-train:before{content:"\f238"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-circle:before{content:"\f2bd"}.fa-user-md:before{content:"\f0f0"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-volume-down:before{content:"\f027"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vuejs:before{content:"\f41f"}.fa-weibo:before{content:"\f18a"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wrench:before{content:"\f0ad"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}

@font-face { 
    font-family: Font Awesome\ 5 Brands;
    font-style: normal;
    font-weight: 400;
    src: url(/assets/webfonts/fa-brands-400.eot);
    src: 
        url(/assets/icn/fa-brands-400.eot?#iefix) 
        format("embedded-opentype"),
        url(/assets/icn/fa-brands-400.woff2) 
        format("woff2"),
        url(/assets/icn/fa-brands-400.woff) 
        format("woff"),
        url(/assets/icn/fa-brands-400.ttf) 
        format("truetype"),
        url(/assets/icn/fa-brands-400.svg#fontawesome) 
        format("svg")
    }
.fab { font-family:Font Awesome\ 5 Brands }
    
@font-face { 
    font-family: Font Awesome\ 5 Free;
    font-style: normal;
    font-weight: 400;
    src: url(/assets/icn/fa-regular-400.eot);
    src:
        url(/assets/icn/fa-regular-400.eot?#iefix) 
        format("embedded-opentype"),
        url(/assets/icn/fa-regular-400.woff2) 
        format("woff2"),
        url(/assets/icn/fa-regular-400.woff) 
        format("woff"),
        url(/assets/icn/fa-regular-400.ttf) 
        format("truetype"),
        url(/assets/icn/fa-regular-400.svg#fontawesome) 
        format("svg")
    }
.far { font-weight: 400 }
        
@font-face { 
    font-family: Font Awesome\ 5 Free;
    font-style: normal;
    font-weight: 900;
    src: url(/assets/icn/fa-solid-900.eot);
    src:
        url(/assets/icn/fa-solid-900.eot?#iefix) 
        format("embedded-opentype"),
        url(/assets/icn/fa-solid-900.woff2) 
        format("woff2"),
        url(/assets/icn/fa-solid-900.woff) 
        format("woff"),
        url(/assets/icn/fa-solid-900.ttf) 
        format("truetype"),
        url(/assets/icn/fa-solid-900.svg#fontawesome) 
        format("svg")
    }
.fa, .far, .fas { font-family: Font Awesome\ 5 Free }
.fa, .fas { font-weight: 900 }
.fa-asterisk, .fa-question-circle { margin-left: 5px;}
.qtip{position:absolute;left:-28000px;top:-28000px;display:none;max-width:280px;min-width:50px;font-size:.625em;line-height:12px;direction:ltr;box-shadow:none;padding:0}.qtip-content,.qtip-titlebar{position:relative;overflow:hidden}.qtip-content{padding:5px 9px;text-align:left;word-wrap:break-word}.qtip-titlebar{padding:5px 35px 5px 10px;border-width:0 0 1px;font-weight:700}.qtip-titlebar+.qtip-content{border-top-width:0!important}.qtip-close{position:absolute;right:-9px;top:-9px;z-index:11;cursor:pointer;outline:0;border:1px solid transparent}.qtip-titlebar .qtip-close{right:4px;top:50%;margin-top:-9px}* html .qtip-titlebar .qtip-close{top:16px}.qtip-icon .ui-icon,.qtip-titlebar .ui-icon{display:block;text-indent:-1000em;direction:ltr}.qtip-icon,.qtip-icon .ui-icon{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;text-decoration:none}.qtip-icon .ui-icon{width:18px;height:14px;line-height:14px;text-align:center;text-indent:0;font:normal 700 10px/13px Tahoma,sans-serif;color:inherit;background:-100em -100em no-repeat}.qtip-default{border:1px solid #F1D031;background-color:#FFFFA3;color:#555}.qtip-default .qtip-titlebar{background-color:#FFEF93}.qtip-default .qtip-icon{border-color:#CCC;background:#F1F1F1;color:#777}.qtip-default .qtip-titlebar .qtip-close{border-color:#AAA;color:#111}.qtip .qtip-tip{margin:0 auto;overflow:hidden;z-index:10}.qtip .qtip-tip,x:-o-prefocus{visibility:hidden}.qtip .qtip-tip,.qtip .qtip-tip .qtip-vml,.qtip .qtip-tip canvas{position:absolute;color:#123456;background:0 0;border:0 dashed transparent}.qtip .qtip-tip canvas{top:0;left:0}.qtip .qtip-tip .qtip-vml{behavior:url(#default#VML);display:inline-block;visibility:visible}

/* ------------------------------------------------------------------------------------------------------

    RegisterBlast Responsive Styles (Mobile First)
    
    This stylesheet employs Relative Sizing (target * context = result) in EM to allow complete device
    independence without the need of heavy Media Query introduction. The presentation should flex
    naturally with minimal Media Query breakpoints needed.
    
    This stylesheet also employs a Mobile First philosophy so the primary styles are centered on the mobile
    device. Tablet and Desktop style adjustments are incorporated via Media Queries at the bottom of the
    related section. Instead of building large to small, this approach builds small to large to retain scale 
    and flexibility in regards to device real estate.
    
    00. RegisterBlast Theme Colors
    
        - #004093 (Blue)
        - #01AE5A (Green)
        - #FED300 (Yellow)
          
    01. CSS Guidelines
    
        - Use child selectors to minimize expense of DOM traversal.
        - Use general classes (defined below) for high-level layout and presentation.
        - Follow the general class with a specific class name for compartmentalized styles.
        - Use "is-" classes to define state.
        - Maintain as few font styles as possible to prevent complex font style specificity.
        - Use the overflow property with a value of hidden on a container for float clearing when necessary.
        - Minimize selector depth to avoid unmanageable specificity.
        - Use class names through a selector to minimize dependancies.
        - Use classes at the right-side end of a selector as much as possible to minimize expense of DOM traversal.
        - Margin spacing for components should only be placed on the bottom of each container.
        - Z-index values should start at 10 and increase by incriments of 10 as needed.
        - Use single quotes for properties. - Ex. url('img.png')
        - Use double quotes for attribute selectors. - Ex. [data-role="openable"]
        - Responsive breakpoints and approximate pixel values for Media Queries:
        
            20em    = ~320px    
            30em    = ~480px
            37.5em  = ~600px    
            48em    = ~768px    
            56.25em = ~900px    
            68.75em = ~1100px
            75em    = ~1200px   
            81.25em = ~1300px
            87.50em = ~1400px
            93.75em = ~1500px
            
        - Breakpoint EM values provide more flexibility than pixel values.
        - Breakpoint Media Queries are placed directly below the container's primary mobile styles.
        - Declarations should be compressed to few lines where possible. (selector scanning vs. property scanning)
        - Declaration properties SHOULD be ordered from layout to presentation using the following order:
        
            Layout
            
                01) Display / Overflow / Flex / Grid
                02) Position / Left / Right / Top / Bottom / Z-index
                03) Float
                04) Width / Height
                05) Padding / Margin / Border
            
            Presentation
            
                06) Border Radius / Box Shadow 
                07) Background
                08) Font-* / Text-* / Color / Line Height 
                09) Transition / Transform
                
        - Utilize BEM conventions when a component has many immediate children dependencies.
        
        	- .card (Component)
        		- .card__header (Immediate Child)
        		- .card__body (Immediate Child)
        			- .row (Component Modifier)
        		- .card__footer (Immediate Child)
			- .card--dark (Component Modifier)
            
    02. General Classes
        
        - Establishes high-level layout and presentation.
        - Followed by a more specific class to address non-standard styles.
        - HTML attribute example    --- class="btn video" or class="lst comment"
        - CSS selector example      --- .btn.video or .lst.comment
    
        .page 		- block page container
        .grid 		- block grid (layout) container
        .component 	- block component container
        .header 	- block header container
        .footer 	- block footer container
        .button 	- block button
        .list 		- block unordered, ordered, or definition list
        .table 		- block tabular data
        .form 		- block form container
        .is- 		- state prefix
        
    03. Portal.css Document Sections
    
        000. Reset
        001. Global Styles
        002. Page
        003. Grid
        004. Components
        005. Headers
        006. Footers
        007. Buttons
        008. Lists
        009. Tables
        010. Forms
        011. Articles
        012. States (.is-)
        013. Mergeables (BE quick additions)
        
------------------------------------------------------------------------------------------------------ */

/* 000. Reset
------------------------------------------------------------------------------------------------------ */

    html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,p,blockquote,pre,a,abbr,address,cite,code,del,
    dfn,em,img,ins,q,small, strong,sub,sup,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,
    tbody,tfoot,thead,tr,th,td,figure,figure img,figcaption { margin: 0; padding: 0; border: 0; }
    article,aside,figure,figure img,figcaption,hgroup,footer,header,nav,section,video,object { display: block }
    a img{ border: 0 }
    figure { position: relative }
    figure img { width: 100% }
    * { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
    html, body { -webkit-text-size-adjust: none; text-size-adjust: none; }
    /*:focus { outline-offset: -4px }*/
    
    /* Placeholder overrides for accessibility. Each must be declared individually. */
    ::-webkit-input-placeholder { color: #767676; opacity: 1; }
    :-moz-placeholder { color: #767676; opacity: 1; }
    ::-moz-placeholder { color: #767676; opacity: 1; }
    :-ms-input-placeholder { color: #767676; opacity: 1; }


/* 001. Global Styles
------------------------------------------------------------------------------------------------------ */

    h2 { padding: 15px; margin-bottom: 35px; border-bottom: 1px solid #ddd; }
    
        @media only screen and (min-width: 37.50em) { /* ~600px */
            h2 { padding: 15px 0 15px 0; margin-bottom: 50px; }
            }
            
        @media only screen and (min-width: 56.25em) { /* ~900px */
            h2 { padding: 0 0 15px 0; }
            }
    
    /* Typography
    -------------------------------- */
    
        body, 
        textarea, 
        .textarea,
        input, 
        select { position: relative; font-family: 'Helvetica Neue', Helvetica, sans-serif !important; font-size: 100%; color: #3d3d3d; background-color: #f7f7f7; text-rendering: optimizeLegibility; }
    
		h1 { font-size: 24px; }
        h2 { font-size: 22px; } /* Page header */
        h3 { font-size: 18px; } /* Step header */
        
        h1, 
        h2, 
        [type="submit"] { font-weight: normal; }
        
        p { padding-bottom: 10px; line-height: 24px; }
        .field-help { display: inline !important; font-size: 12px; color: #9c9c9c !important; }
        
        a, 
        [type="submit"], 
        [type="button"] {
            -webkit-backface-visibility: hidden; -moz-backface-visibility: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden;
            -o-transition: all .3s linear; -moz-transition: all .3s linear; -khtml-transition: all .3s linear;
            -webkit-transition: all .3s linear; -ms-transition: all .3s linear; transition: all .3s linear;
            opacity: 1; text-decoration: none;
            }
    
        a:hover, 
        [type="button"]:hover,
        .frm [type="submit"]:hover {}
    
            @media only screen and (min-width: 56.25em) { /* ~900px */
                h1 { font-size: 28px; }
                h2 { font-size: 1.125em; }
                h3 { font-size: 18px; }
                }
         
    
    /* RegisterBlast Theme Base
    -------------------------------- */
    
        /* --	These styles securely define the official RegisterBlast color theme for all portal
                pages. Class name conventions will change with the Portal.Master rework but for
                now the existing class names will work. */
        
        body { color: #3d3d3d; background-color: #f3f3f3; }
        
        .portal-page, .pag.hdr, .pag.ftr, .pnl { background-color: #004093; }
        .pag.hdr { border-bottom-color: #01AE5A; }
        
        a { color: #007339; }
        a:hover { text-decoration: underline; }
        a:visited {}
        
        .pag.signin a { color: #1EA475; }
        
        .pag.hdr a, 
        .pag.ftr a,
        .pnl a { color: #fff; }
        
        .fa-check, 
        .fa-check-circle-o,
        .registration-wizard > .step.focused > .content > h3 { color: #007339; }

        .btn, .button,
        [type="submit"], 
        .registration-wizard > .step.complete > .count > .number { background-color: #007339; }
        
    
    /* Mobile Navigation Panel
    -------------------------------- */
        
        .pnl {
            position: absolute; z-index: 120000; right: 100%; top: 60px; width: 80%; height: 100vh; background-color: #09347A; color: #fff;
            -o-transition: all .3s linear; -moz-transition: all .3s linear; -khtml-transition: all .3s linear;
            -webkit-transition: all .3s linear; -ms-transition: all .3s linear; transition: all .3s linear;
            box-shadow: 0px 6px 20px -8px rgba(0,0,0,0.5);
            display: none;
            display: flex; flex-flow: column; height: 100%;
            } /*Transition value must match beh.js hamburger() delay.*/
    
        .pnl.open { right: 20%; }
        .pnl a { color: #fff; }
        .pnl .lst.link > li { border-bottom: 1px solid rgba(255,255,255,.05); }
        .pnl .lst.link > li > a { display: block; padding: 12px 10px 12px 15px !important; }
        .pnl .lst.link .bubble { display: block; width: 20px; height: 20px; float: right; background-color: #d64911;
            font-size: .8em; font-weight: bold; text-align: center; line-height: 20px;
            -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px;
            }
            
        .pnl .sectiontitle { padding: 30px 15px 15px; font-weight: bold; }

        .tbl #apptnotes { height: auto; }

    /* Menu/Autocomplete Overrides
    -------------------------------- */
        .ui-widget.ui-widget-content { border: 1px solid #c5c5c5; }
        .ui-widget-content { border: 1px solid #dddddd; background: #ffffff; color: #333333; }
        .ui-menu { list-style: none; padding: 0; margin: 0; display: block; outline: 0; }
        .ui-menu .ui-menu { position: absolute; }
        .ui-menu .ui-menu-item { margin: 0; cursor: pointer; list-style-image: url("data: image/gif; base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"); }
        .ui-menu .ui-menu-item-wrapper { position: relative; padding: 3px 1em 3px .4em; }
        .ui-menu .ui-menu-divider { margin: 5px 0; height: 0; font-size: 0; line-height: 0; border-width: 1px 0 0; }
        .ui-menu .ui-state-active,.ui-menu .ui-state-focus { margin: -1px; border: 1px solid #008A5E; background: #00a470; font-weight: normal; color: #ffffff;}
        .ui-menu-icons { position: relative; }
        .ui-menu-icons .ui-menu-item-wrapper { padding-left: 2em; }
        .ui-menu .ui-icon { position: absolute; top: 0; bottom: 0; left: .2em; margin: auto 0; }
        .ui-menu .ui-menu-icon { left: auto; right: 0; }
        .ui-autocomplete { position: absolute; top: 0; left: 0; cursor: default; }


    /* Datepicker Overrides
    -------------------------------- */
    
        .ui-helper-hidden { display: none; }
        .ui-helper-hidden-accessible { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
        .ui-datepicker { background-color: #fff; border: 1px solid rgba(61,61,61,.2); z-index: 100000 !important; line-height: 1.8em; }
        .ui-datepicker-header { position: relative; /*padding: .4em 0;*/ border-bottom: 1px solid rgba(61,61,61,.2); }
        .ui-datepicker-header .ui-datepicker-prev,
        .ui-datepicker-header .ui-datepicker-next { display: block; /*width: 20px;*/ font-size: 1.2em; position: absolute; cursor: pointer; text-align: center; padding: 0.35em 0.8em; }
        .ui-datepicker-header .ui-datepicker-prev { left: 0; }
        .ui-datepicker-header .ui-datepicker-next { right: 0; }
        .ui-datepicker-header .ui-datepicker-prev.ui-datepicker-prev-hover,
        .ui-datepicker-header .ui-datepicker-next.ui-datepicker-next-hover { background: #ededed; }
        .ui-datepicker-header .ui-datepicker-title,
        .ui-timepicker-div .ui-datepicker-title { text-align: center; margin: 0 2.3em; padding: 0.4em; }
        .ui-datepicker-calendar { border-collapse: collapse; }
        .ui-datepicker-calendar tbody a,
        .ui-datepicker-calendar tbody span { display: inline-block; width: 40px;  }
        .ui-datepicker-calendar tbody td { border-right: 1px solid rgba(61,61,61,.2); border-bottom: 1px solid rgba(61,61,61,.2); text-align: center; }
        .ui-datepicker-calendar thead th { border-right: 1px solid rgba(61,61,61,.2); border-bottom: 1px solid rgba(61,61,61,.2); }
        .ui-datepicker-calendar thead tr > th:last-of-type,
        .ui-datepicker-calendar tbody tr > td:last-of-type { border-right: 0; }
        .ui-datepicker-calendar tbody tr:last-of-type > td { border-bottom: 0; }
        .ui-datepicker-calendar .ui-state-default { font-weight: bold; }
        .ui-datepicker-calendar .ui-state-highlight { background: #fffa90; }
        .ui-datepicker-calendar .ui-state-hover,
        .ui-datepicker-calendar .ui-state-active { background: #ededed; }
        .ui-datepicker-calendar .ui-datepicker-unselectable.ui-state-disabled { opacity: .3; }
        .ui-datepicker-calendar .ui-datepicker-days-cell-over.ui-datepicker-unselectable.ui-state-disabled { background: #ededed; opacity: 1; }
        .ui-datepicker .ui-timepicker-div { border-top: 1px solid rgba(61,61,61,.2); /*padding: .4em 0;*/ }
        .ui-datepicker .ui-datepicker-buttonpane { border-left: 0; border-right: 0; border-bottom: 0; text-align: right; }
        .ui-datepicker .ui-datepicker-buttonpane button { border: 0; font-weight: bold; color: #213f74; padding: 10px; cursor: pointer; }
        .ui-datepicker .ui-datepicker-buttonpane button:hover { background: #ededed; }
        .ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input { border-bottom: 1px solid #dddddd; }
        .ui-timepicker-div .ui-timepicker-select { border: 0; }
        
    
	/* UI Dropdown Overrides
    -------------------------------- */
	
		.ui-state-default { background-image: none; background-color: transparent; }
		.ui-dropdownchecklist { z-index: 110 !important; width: 100% !important; }
		.ui-dropdownchecklist-selector-wrapper { width: 100%; padding-left: 10px; min-width: 160px; }
		.ui-dropdownchecklist-selector { border: 0 none !important; height: 40px !important; width: 100% !important; line-height: 40px; z-index: 20; background: none !important; }
		.ui-dropdownchecklist-selector.ui-state-hover { background-color: transparent !important; cursor: pointer !important; }
		
		.ui-dropdownchecklist-item,
		.ui-dropdownchecklist-dropcontainer { border: 0 none !important; }
		
		.ui-dropdownchecklist-dropcontainer-wrapper { 
			background-color: #fff; border: 1px solid #b3b3b3; box-shadow: 0px 5px 5px rgba(0,0,0,.08);
			height: 200px !important; width: 290px !important; left: -1px !important;
			}
		
		.ui-dropdownchecklist-dropcontainer { padding: 10px; height: 198px !important; }
		.ui-dropdownchecklist-group { background: none !important; border: none !important; margin: 0 0 10px; }
		.ui-dropdownchecklist-item, ui-dropdownchecklist-indent { background: none !important; padding: 0 0 10px !important; white-space: normal !important; }
		.ui-dropdownchecklist-item [type="checkbox"] { float: left; margin: 0 10px 10px 0; }
		.ui-dropdownchecklist-item:last-of-type, .ui-dropdownchecklist-item:last-of-type [type="checkbox"] { margin: 0; padding: 0; }
		.ui-dropdownchecklist-item:last-of-type [type="checkbox"] { margin-right: 10px; }

        /* overflow overide for ui-dropdowns in registration flow */
	    .registration-wizard .ui-dropdownchecklist-dropcontainer-wrapper { width: 392px !important; height: 100px !important; }
        .registration-wizard .ui-dropdownchecklist-dropcontainer { overflow: hidden; height: 100px !important; }
		
			@media only screen and (min-width: 56.25em) { /* ~900px */
				.ui-dropdownchecklist-dropcontainer-wrapper { width: 425px !important; }
				}
    
    
    /* Scheduler Overrides
    -------------------------------- */    
        
        .dhx_cal_container .dhx_scell_name { position: relative; font-family: 'Helvetica Neue', Helvetica, sans-serif; font-size: 100%; color: #3d3d3d; text-rendering: optimizeLegibility; }
        .dhxscheduler-wrap { height: 600px; width: 100%; overflow-x: auto; }
        
        .dhx_cal_container { border: none; }
        .dhx_cal_container > .dhx_cal_header { width: 100% !important; }
        .dhx_cal_container .dhx_cal_header,
        .dhx_cal_container .dhx_cal_data { border: 0 none !important; border-top: 0 none; }
        .dhx_cal_container .dhx_cal_header div div { border-left: 1px solid #f3f3f3;}
        
        .dhx_cal_data .dhx_row_folder,
        .dhx_cal_data .dhx_row_folder .dhx_matrix_line,
        .dhx_cal_data .dhx_row_folder .dhx_data_table.folder { height: 30px !important; }
        .dhx_cal_data .dhx_row_folder > .dhx_matrix_scell.folder .dhx_scell_name { font-size: 14px; }
        .dhx_cal_data .dhx_row_folder > .dhx_matrix_scell .dhx_scell_level0 { padding-left: 30px; }
        .dhx_cal_data .dhx_row_item > .dhx_matrix_scell .dhx_scell_level1 { padding-left: 40px; }
        .dhx_cal_data .dhx_row_folder .dhx_scell_expand { display: none; padding: 0; width: 0; visibility: hidden; }
        .dhx_cal_data .dhx_row_item > .dhx_matrix_scell.item .dhx_scell_name { font-size: 14px; padding: 0; }
        .dhx_cal_data .dhx_row_folder .dhx_matrix_scell,
        .dhx_cal_data .dhx_row_folder .dhx_matrix_cell,
        .dhx_cal_data .dhx_row_item .dhx_matrix_scell,
        .dhx_cal_data .dhx_row_item .dhx_matrix_cell { border-bottom: 1px solid #f3f3f3; border-right: 1px solid #f3f3f3; }
        
        .dhx_cal_data .dhx_cal_event_line { height: 20px !important; font-size: 12px; }
        .dhx_cal_data .dhx_cal_event_line > span { font-weight: normal; }
        
        
    /* DataTable Overrides
    -------------------------------- */
    
    table.dataTable tbody td.dataTables_empty { padding: 160px 0; font-weight: bold; font-size: 16px; color: #9c9c9c; }
        
        
    /* Misc.
    -------------------------------- */
        
        .button-help { display: block; position: fixed; right: 0; width: 40px; height: 40px; line-height: 40px; text-align: center; color: #fff; border-radius: 5px 0 0 5px; }
        .qtip { font-size: 0.750em !important /* 12px */; }
        .qtip-content { padding: 0.625em !important /* 10px */; line-height: 16px !important; }
        .lnk, .pnl { overflow: hidden; }
        .srt {  }
        a.disabled { opacity: 0.7; pointer-events: none ;}
    

/* 002. Page
------------------------------------------------------------------------------------------------------ */

    .pag.hdr { margin-bottom: 0; position: relative; }
    .pag.hdr > div { height: 60px; }

    .pag.hdr,
    .pag.ftr { overflow: hidden; }
    
    .pag.hdr .logo { display: flex; align-items: center; max-width: 220px; height: 60px; position: absolute; left: 0; top: 0; }
    .pag.hdr .logo > img { height: auto; width: 100%; font-size: 14px; }
    
    .pag.hdr > div > h1 { margin: 0; display: block; }
    
    .pag.hdr > div,
    .pag.ftr > div { overflow: hidden; width: 100%; }
    .pag.bdy > div article { padding: 0 15px; }
    .pag.bdy > div > aside { display: none; }
    .pag.bdy > div > div > a { display: inline-block; width: 100%; text-align: center; }
    .pag.bdy > div > div > #skiptocontent { display: none; }
    
    .pag.ftr { border: none; }
    .pag.ftr > div { padding: 50px 0; }
    .pag.ftr .logo { display: block; margin: 0 auto; position: relative; width: 200px; }
    .pag.ftr .logo > span { position: absolute; left: 68px; top: -12px; font-weight: 300; font-size: 0.750em; opacity: .6; }
    .pag.ftr .logo img { width: 218px; }
    .pag.hdr .lst.link,
    .pag.ftr .lst.link { float: right; }
    .pag.hdr .lst.link > li,
    .pag.ftr .lst.link > li { display: block; float: left; }
    .pag.hdr .lst.link > li > a,
    .pag.ftr .lst.link > li > a { display: block; padding: 30px 20px; text-align: center; }
    .pag.hdr .lst.link > li,
    .pag.ftr .lst.link { display: none; }
    .pag.hdr .lst.link > .menu { display: block; }
    .pag.hdr .lst.link > .menu > span { color: #fff; padding: 20px; cursor: pointer; }
    .pag.hdr .lst.link .fa { font-size: 1.250em; }
    
    .portal-page .pag.hdr .lst.link > li > a { padding: 30px 15px; }
    .portal-page .pag.hdr .lst.link > .menu > a { display: block; height: 60px; width: 30px; line-height: 60px; padding: 0; }
    .portal-page.resource .registration-wizard { display: block; margin: 0; }
    .portal-page.resource .tbl .nowrap a { color: #3d3d3d; }

    /* 2 factor authentication page signin overwrites for admin and user */
    .pag.signin .tfa, 
    .signin.tfa { width: 100%; max-width: 400px; }
	.pag.signin .tfa .logo, 
    .signin.tfa .logo { display: block; max-width: 250px; height: auto; margin: 0 auto 45px; }
    .pag.signin .tfa .crd,
    .signin.tfa .crd { color: #3d3d3d; }
    .pag.signin .tfa h1,
    .signin.tfa h1 { font-weight: bold; font-size: 22px; }
    .pag.signin .tfa form img,
    .signin.tfa form img { width: 100%; max-width: 200px; margin: 25px auto; display: block; }
    .pag.signin .tfa form p,
    .signin.tfa form p { word-break: break-word; font-size: 14px; line-height: 18px; }
    .pag.signin .tfa form a.field-help,
    .signin.tfa form a.field-help { display: none !important; }
    .pag.signin .tfa form .field.text,
    .signin.tfa form .field.text { padding-top: 20px; }
    .pag.signin .tfa form .field.text > span,
    .signin.tfa form .field.text > span { position: absolute; right: 15px; top: 33px; z-index: 2; color: #3d3d3d; }
    .pag.signin .tfa form .field label,
    .signin.tfa form .field label { position: relative; left: 0; }
    .pag.signin .tfa form input[type="text"],
    .signin.tfa form input[type="text"] { width: 100%; border: 1px solid #b3b3b3; }
    .signin.tfa input[type="submit"] { float: none; width: 100%; margin: 25px 0; }
    .pag.signin .tfa a:first-of-type,
    .signin.tfa a:first-of-type { padding-top: 30px; display:block; text-align:center; padding-bottom: 10px; }
    .pag.signin .tfa a:last-of-type,
    .signin.tfa a:last-of-type { display:block; text-align:center; }
    /* professor 2 factor authentication page signin overwrites for admin and user */
    .pag.psignin .ptfa, 
    .psignin.ptfa { width: 100%; max-width: 500px; }
	.pag.psignin .ptfa .logo, 
    .psignin.ptfa .logo { display: block; max-width: 250px; height: auto; margin: 0 auto 45px; }
    .pag.psignin .ptfa .crd,
    .psignin.ptfa .crd { color: #3d3d3d; }
    .pag.psignin .ptfa h1,
    .psignin.ptfa h1 { font-weight: bold; font-size: 22px; }
    .pag.psignin .ptfa form img,
    .psignin.ptfa form img { width: 100%; max-width: 200px; margin: 25px auto; display: block; }
    .pag.psignin .ptfa form p,
    .psignin.ptfa form p { word-break: break-word; font-size: 14px; line-height: 18px; }
    .pag.psignin .ptfa form a.field-help,
    .psignin.ptfa form a.field-help { display: none !important; }
    .pag.psignin .ptfa form .field.text,
    .psignin.ptfa form .field.text { padding-top: 20px; }
    .pag.psignin .ptfa form .field.text > span,
    .psignin.ptfa form .field.text > span { position: absolute; right: 15px; top: 33px; z-index: 2; color: #3d3d3d; }
    .pag.psignin .ptfa form .field label,
    .psignin.ptfa form .field label { position: relative; left: 0; }
    .pag.psignin .ptfa form input[type="text"],
    .psignin.ptfa form input[type="text"] { width: 100%; border: 1px solid #b3b3b3; }
    .psignin.ptfa input[type="submit"] { float: none; width: 100%; margin: 25px 0; }
    .pag.psignin .ptfa a:first-of-type,
    .psignin.ptfa a:first-of-type { padding-top: 30px; display:block; text-align:center; padding-bottom: 10px; }
    .pag.psignin .ptfa a:last-of-type,
    .psignin.ptfa a:last-of-type { display:block; text-align:center; }
    
        @media only screen and (min-width: 37.50em) { /* ~600px */
            .pag.bdy { margin-top: 50px; }
            .pag.bdy > div { position: relative; width: 90%; max-width: 950px; margin: 0 auto; display: flex; flex-flow: row; flex-wrap: nowrap; }
            .pag.bdy > div > .cmp { margin-right: 50px; }
            .pag.bdy > div article { padding: 0 18px; }
            }
        
        @media only screen and (min-width: 56.25em) { /* ~900px */
            .pag.hdr { font-size: .9em; }
            .pag.hdr > div { height: 80px; }
            .pag.hdr > div,
            .pag.ftr > div { position: relative; overflow: hidden; width: 90%; max-width: 1030px; margin: 0 auto; }
            .pag.bdy > div > div { width: 60%; max-width: 600px; }
            .pag.bdy > div > aside { display: block; width: 32%; max-width: 300px; }
            .pag.ftr { margin-top: 0; }
            
            .pag.hdr .logo { max-width: 300px; height: 70px; }
            
            .pag.hdr .lst.link > .menu { display: none; }
            .pag.hdr .lst.link > .in { display: block; }
            }
        

/* 003. Grid
------------------------------------------------------------------------------------------------------ */		
    
    .grid,
    .grid > div:first-of-type,
    .grid > .aside { width: 100%; }
    
        @media only screen and (min-width: 48em) { /* ~768px */
            }

        @media only screen and (min-width: 56.25em) { /* ~900px */
            .grid { display: grid; grid-auto-columns: 2fr 300px; grid-column-gap: 30px; }
            .grid > div:first-of-type { grid-column: 1; }
            .grid > .aside { grid-column: 2; }
            .grid > .is-row { grid-column: 1; width: 35%; }
            }
    
        @media only screen and (min-width: 68.75em) { /* ~1100px */
            }
            
            
/* 004. Components
------------------------------------------------------------------------------------------------------ */
    
    .srt { clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; width: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; }
    
    .cmp { background-color: #fff;  }
    .cmp > h2 { padding: 23px 18px; margin: 0; border-bottom: 1px solid #f3f3f3; }
    .cmp > a { display: block; }
    .cmp .lst.content.cart > li { position: relative; }
    .cmp .lst.content > li .fa-times { display: inline-flex; width: 40px; height: 40px; position: absolute; top: 0; right: 0; text-align: center; font-size: 14px;  -ms-align-content: center; -webkit-align-content: center; align-content: center; -webkit-justify-content: center; justify-content: center; flex-direction: column; }
    .cmp > .lst.link > li,
    .lst.link > li { border-bottom: 1px solid #f3f3f3; list-style: none; }
    .cmp > .lst.link > li > a,
    .lst.link > li > a { display: inline-block; padding: 10px 18px; }
    .cmp > .lst.link > li > .finalize,
    .lst.link > li > .finalize { padding: 15px; text-align: center; } 
    .cmp > .info { padding: 23px 18px; border-bottom: 1px solid #f3f3f3; overflow-wrap: break-word; }
    .cmp > .info * { font-size: 16px !important; /* font-family: 'Helvetica Neue', Helvetica, sans-serif !important; */ }
    .cmp > .info a,
    .cmp p > a { text-decoration: underline; }
    .cmp > .info ul, .cmp > .info ol { padding-left: 20px; }
    .cmp > .info ul > li, .cmp > .info ol > li { padding-bottom: 10px; line-height: 24px; }
    .cmp > .info table { width: 100% !important; border-left: 1px solid #f3f3f3; border-spacing: 0; border-collapse: collapse; border-top: 1px solid #f3f3f3; }
    .cmp > .info table > thead th,
    .cmp > .info table > tbody td { border-bottom: 1px solid #f3f3f3; border-right: 1px solid #f3f3f3; border-color: #f3f3f3 !important; }
    .cmp > .info table > thead * { font-size: 14px !important; }
    .cmp.main > * { padding: 23px 18px; }

    /* --- Added to sync up the modal styles between portal and admin --- */
    .fancybox-slide::before { height: auto !important; }
    .crd.modal { padding: 0; }
	.crd.modal .hdr { position: relative; width: 100%; padding: 15px; margin-bottom: 25px; background-color: #f3f3f3; border-bottom: 1px solid #fff;padding: 15px 30px !important; }
    .crd.modal .hdr h2 { margin: 0; font-size: 16px; font-weight: normal; }
	.crd.modal .hdr > .tools { right: 40px; }
	.crd.modal form { margin: 15px 25px; }
    .crd.modal form > ul > li { list-style: none; }
    
        @media only screen and (min-width: 56.25em) { /* ~900px */
            .cmp { margin-bottom: 50px; box-shadow: 0 1px 10px -2px rgba(0,0,0,.1); }
            .cmp.main > .registration-wizard { padding: 50px 60px; }
            }
    
    /* Sign In
    -------------------------------- */
    
        .pag.signin a { color: #5bbe90; }
        
        .cmp.signin,
        .cmp.password,
        .cmp.info { padding: 50px 30px 30px; overflow: hidden; }
        
        .cmp.signin > h1,
        .cmp.password > h1,
        .cmp.info > h1,
        .cmp.signin > h2,
        .cmp.password > h2,
        .cmp.info > h2 { font-size: 20px; font-weight: bold; border: 0; padding: 0 0 10px 0; }
        
        .cmp.signin > h1,
        .cmp.password > h1 { padding-bottom: 5px; margin: 0; }
    
        .cmp.signin > form,
        .cmp.password > form,
        .cmp.info > form { margin-top: 40px; }
        
        .cmp.signin > form > .field,
        .cmp.password > form > .field { width: 100%; margin: 0 0 30px 0; }
        
        .cmp.signin > form > .actions,
        .cmp.password > form > .actions { width: 100%; margin: 50px 0 0 0; }
        
        .cmp.signin > form > .actions > .forgot { float: none; width: auto; }
        
        .cmp.signin [type="submit"],
        .cmp.password [type="submit"] { min-width: inherit; width: auto; margin: 0; padding: 15px 25px; float: right; -webkit-appearance: none; -webkit-border-radius: 0; }
        
        .cmp.info > p:first-of-type { margin-bottom: 20px; }
        
        .field > .blk { position: relative; }
        .field > .blk > .field-action-btn > .srt { display: none; }
        .field > .blk > .field-action-btn > .fa { 
            position: absolute; right: 0; top: 0; z-index: 10; width: 45px; height: 45px; line-height: 45px; text-align: center;
            border-left: 1px solid rgba(61,61,61,.4); cursor: pointer;
            }
        
            @media only screen and (min-width: 56.25em) { /* ~900px */
                .cmp.signin,
                .cmp.password,
                .cmp.info { margin: 30px auto 80px auto !important; padding: 40px; }
                
                .cmp.signin.professor,
                .cmp.signin.resource { margin: 0 50px 80px 0 !important; width: 60% !important; }
                
                .cmp.signin {  width: 55% !important; }
                .cmp.password { width: 55% !important; margin: 30px 0 80px 0 !important; }
                .cmp.info { width: 35% !important; border-left: 5px solid; }
                }
                
    /* Drawers
    -------------------------------- */        
        
        [data-role="drawer"] form { overflow: hidden; }
    
        .closed[data-role="drawer"] {
            -webkit-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            -moz-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            -ms-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            -o-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            max-height: 0px;
            overflow: hidden;
            display: block;
            }
        
        .open[data-role="drawer"] {
            -webkit-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            -moz-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            -ms-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            -o-transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            transition: all 500ms cubic-bezier(0.675, 0.170, 0.245, 0.795);
            max-height: 6000px;
            overflow: hidden;
            }
        
        .closed[data-role="drawer"] form,
        .open[data-role="drawer"] form { background-color: #f3f3f3; }
            
            
    /* Notifications
    -------------------------------- */
        
        .ntc { display: block; padding: 25px; background-color: #d4fda7; font-size: 1em; color: #175000; text-align: center; opacity: 1; }
        .ntc.error { background-color: #ffdede; color: #500000; }
        .ntc.warning { background-color: #f4fda7; color: #503800; }
        .ntc.info { background-color: #deedff; color: #003d50; }
        .ntc.full { width: 100%; margin-bottom: 20px; }
        
        
    /* Blankslates
    -------------------------------- */
    
    .blankslate > div { max-width: 300px; margin: 0 auto; text-align: center; padding: 50px 0 50px; }
    .blankslate > div > span { font-size: 50px; padding-bottom: 15px; }
    .blankslate > div > h3 { font-weight: normal; }

    .chart .blankslate { padding: 80px 0 0; }
    .chart .blankslate > div > span { font-size: 42px; }
    
        @media only screen and (min-width: 56.25em) { /* ~900px */
            .blankslate > div { padding: 70px 0 50px; }
            .blankslate > div > span { font-size: 70px; }
            }
        
        
    /* GDPR (Third party)
    -------------------------------- */
    
        #gdpr-cookie-message {
            position: fixed; right: 30px; bottom: 30px; max-width: 375px; background-color: #fff;
            padding: 20px; box-shadow: 0 6px 6px rgba(0,0,0,0.25); margin-left: 30px; font-family: system-ui; z-index: 200;
            }
		
		#gdpr-cookie-message h4 { margin-bottom: 5px; }
        #gdpr-cookie-message p { margin-bottom: 0; }
        #gdpr-cookie-message p, #gdpr-cookie-message ul { font-size: 15px; line-height: 1.5em; }
        #gdpr-cookie-message p:last-child { margin-bottom: 0; padding-bottom: 0; }
        #gdpr-cookie-message li { width: 49%; display: inline-block; }
        #gdpr-cookie-message a { color: #034F9D; font-size: 15px; padding-bottom: 2px; border-bottom: 1px solid #034F9D; transition: all 0.3s ease-in; }
        #gdpr-cookie-message button,
        button#ihavecookiesBtn { border: none; background: #1DC574; color: #ffffff; font-family: 'Quicksand', sans-serif; font-size: 15px; padding: 7px; border-radius: 3px; cursor: pointer; transition: all 0.3s ease-in; }
        button#gdpr-cookie-advanced { font-size: 15px; background: #ffffff; color: #034F9D; }
        #gdpr-cookie-message button:disabled { opacity: 0.3; }
        #gdpr-cookie-message input[type="checkbox"] { float: none; margin-top: 0; margin-right: 5px; }	
        
        
    /* Articles
    -------------------------------- */
    
        article h1,
        article h2,
        article h3,
        article h4 { font-weight: bold; margin-bottom: 15px; opacity: 1; border: 0; padding: 0; }
        article h1 { font-size: 1.75em /* 28px */; }
        article h2 { font-size: 1.5em /* 24px */; margin-top: 35px; }
        article h3 { font-size: 1.250em /* 20px */; margin-top: 35px; }
        article h4 { font-size: 1.125em /* 18px */; margin-top: 35px; }
        article p { margin-bottom: 20px; padding-bottom: 0 !important; }
        article .success { margin: 20px 0; overflow: hidden; font-size: 1.375em /* 22px */; }
        article .success .fa-regular { display: block; float: left; font-size: 3em /* 48px */; opacity: .7; padding-right: 15px; }
        article ol,
        article ul {padding: 0 0 35px 40px; line-height: 24px;}
        article ol > li,
        article ul > li {padding: 0 0 10px 10px; }
    
        .rating { text-align: center; border-top: 1px solid #ddd; margin-top: 50px; padding: 30px 20px 0; }
        .rating h3 { font-size: 1em; }
        .rating p { font-size: 0.875em /* 14px */; opacity: .6; }
        .rating p > span { font-weight: bold; }
        .rating ul { margin: 20px 0; }
        .rating ul > li:first-of-type { margin-right: 10px; }
        .rating ul > li { display: inline-block; }
        .rating ul .fa {
            color: #fff; padding: 5px 20px; font-size: 1.5em /* 24px */;
            -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px;
            }
            
        .article.compliance div > p { margin-bottom: 0; }
        .article.compliance article { margin-bottom: 60px; }
    
            @media only screen and (min-width: 37.50em) { /* ~600px */
                article .success span { line-height: 56px; }
                }
            
            @media only screen and (min-width: 56.25em) { /* ~900px */
                .rating { padding: 50px; }
                .rating h3 { font-size: 1.125em /* 18px */; }
                .rating p { font-size: 1em; }
                article .success { font-size: 1.625em /* 26px */; }
                article .success .fa { font-size: 3.5em /* 56px */; }
                }
    
            @media only screen and (min-width: 68.75em) { /* ~1100px */
                article .success span { line-height: 56px; }
                }
            

/* 006. Footers
------------------------------------------------------------------------------------------------------ */

    .pag.ftr .footer-links { margin-bottom: 60px; text-align: center; }
    .pag.ftr .footer-links ul > li { padding-bottom: 12px; list-style: none; }
    .pag.ftr .footer-links .h4 { color: #fff; font-size: 24px; padding-bottom: 15px; }

        @media only screen and (min-width: 56.25em) { /* ~900px */
            .pag.ftr { overflow: hidden; /*padding: ;*/ }
            .pag.ftr > div { overflow: hidden !important; width: 50%; padding: 80px 0; max-width: 950px !important; }
            .pag.ftr .stamp { float: right; margin-top: 30px; width: 250px; }
            .pag.ftr .footer-links { /* display: flex; flex-flow: row; flex-wrap: nowrap; */ float: left; margin: 0; text-align: left; }
            .pag.ftr .footer-links > div { /* flex-grow: 0; width: 33.3333%; */ }
            .pag.ftr .footer-links ul > li { display: inline-block; padding-right: 12px; list-style: none; }
            }
    

/* 008. Lists
------------------------------------------------------------------------------------------------------ */

    .info-list { /* padding: 30px; */ }
    .info-list > li { padding: 15px 30px; border-bottom: 1px solid #f3f3f3; }
    .info-list > li > .info { display: block; /* font-weight: bold; */ padding-bottom: 3px; }
    .info-list > li > label { display: block; font-size: 14px; /* opacity: .5; */ padding-bottom: 5px; margin-bottom: 5px; }
    .info-list .field { padding: 0 !important; }
    .info-list .field_wrap { white-space: pre-wrap; }

    .lst.content > li { overflow: hidden; position: relative; padding: 15px 45px 15px 18px; border-bottom: 1px solid #f3f3f3; }
    .lst.content > li > h4 { line-height: 12px; font-size: 0.875em /* 14px */; }
    .lst.content > li > h3 { line-height: 16px; padding-right: 80px; }
    
    .lst.content.history > li { padding: 15px 18px; }
    .lst.content.history > li > h3 { font-size: 16px; line-height: 19px; padding-right: 0; margin-bottom: 0; }
    
    .lst.content.cart > li > h3 { font-size: 14px; line-height: 16px; padding-right: 60px; }
    .action-link { padding: 15px; text-align: center; }
    .lst.content > li > time,
    .lst.content .meta { font-size: 0.750em /* 12px */; opacity: .86; } /* .86 Opacity = #767676 for WCAG AA */
    .lst.content > li > .price { font-size: 0.875em /* 14px */; float: right; }
    .lst.content > .cart-total > h4 { float: left; }
    .lst.content > .cart-total > .price { float: right; font-size: 1.125em /* 18px */; font-weight: bold; }
    .lst.content .fa-check { font-size: 0.250em /* 24px */; float: right; }
    .lst.content .meta { display: block; }
    .lst.content ul, .lst.content ol { padding-left: 25px; }
    .lst.content ul li, .lst.content ol li { padding-bottom: 10px; line-height: 24px; }
    .lst.content li .promo { display: flex; }
    .lst.content li .promo .btn-promo { background-color: #767676; padding: 10px; width: 33%; min-width: initial; }
    
    .pag.bdy > div > div .lst.content { padding: 0; }
    .pag.bdy > div > div .lst.content > li { /*padding: 0 20px 20px;*/ }
    .pag.bdy > div > div .lst.content > li > h4 { font-size: 0.875em /* 14px */; line-height: 12px; width: 75%; }
    .pag.bdy > div > div .lst.content > li > time,
    .pag.bdy > div > div .lst.content .meta { font-size: 0.750em /* 12px */; line-height: 16px; }
    .pag.bdy > div > div .lst.content > .cart-total h4 { font-size: 1em; }
    
    .lst.content .lst.link { position: absolute; right: 10px; top: 0; font-size: 0.625em /* 10px */; }
    .lst.content .lst.link > li { display: block; padding-bottom: 5px; }
    .lst.content.cmp { margin-top: 50px !important; border-top: 1px solid #ddd; padding-top: 25px; }
    
    .list__item { display: none; position: relative; }
    .list__item.current { font-weight: bold; }
    .list__item.current:after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 7px; background-color: #1EA475; }
    .list--item.pinned > .list--item--indicator { background-color: #1ea475; }
    .list__item--mobile-menu { display: inline-block; }
    .list__item--mobile-menu > span,
    .list__item--mobile-menu > a { display: block; width: 55px; height: 55px; line-height: 55px; text-align: center; cursor: pointer; }
    .list__item--accessibility-skip { display: none; }
    .list__item--user-menu { padding-top: 15px; }
	.list--item--indicator { display: block; position: absolute; left: 0; top: 5px; width: 7px; height: 7px; background-color: #C4C4C4; }
	.list--item--bubble { display: inline; padding: 3px 5px; cursor: pointer; font-size: 10px; border-radius: 50px; }
    
    .list--navigation > .list__item { list-style: none; }
    .list--navigation .list__item > a { text-decoration: none; }
    
    .list-item--title { font-weight: bold; }
    
    .list--receipt > li { list-style: none; padding-bottom: 10px; }
    .list--receipt .acknowledgement { margin: 10px 0; }
    .list--receipt .acknowledgement > ol { padding-left: 35px; }
    .list--receipt .acknowledgement > ol > li { padding: 0 0 4px 10px; }
    
    .list--cart { list-style: none; padding-bottom: 0 !important; }
    .list--cart h3 { font-size: 1.2rem; margin-bottom: 0; }
    .list--cart > li { padding: 0 0 20px; margin-bottom: 15px; display: flex; flex-flow: nowrap; justify-content: space-between; border-bottom: 1px solid #f3f3f3; }
    .list--cart > .is-hidden { display: none; }
    .list--cart .cart-total { margin-bottom: 0; }
    .list--cart .cart-total > .price { font-size: 1.2rem; font-weight: bold; }
    .list--cart .fa-times { display: flex; width: 30px; height: 100%; align-items: center; justify-content: center; color: #767676; }
    
    .list--cart .promo { display: flex; flex-wrap: nowrap; }
    .list--cart .promo .btn.mini { font-size: .8rem; padding: 0 8px; background-color: #767676; width: 60px; min-width: initial; }
    .list--cart .promo [type="text"] { height: 35px; line-height: 35px; width: 225px; }
    
    
    .cart-actions .btn { margin: 0 0 25px; width: auto; min-width: inherit; }
    .cart-actions .add-exam { display: block; text-align: center; }
    
    .list-item--long { width: 65%; }
    .list-item--price { display: flex; align-items: center; justify-content: right; }
    
    
        @media only screen and (min-width: 37.50em) { /* ~600px */
            .pag.bdy > div > div .lst.content > li { /*padding: 0 0 20px;*/ }
            .info-list .field { max-width: 50%; }
            .info-list > li > .info { max-width: 85vw; }
            }
            
        @media only screen and (min-width: 48em) { /* ~768px */
            .list__item { display: block; }
            .list__item--mobile-menu { display: none; }
            
            .list--navigation { display: flex; flex-flow: row; flex-wrap: nowrap; }
            
            .list--navigation .list__item > a { display: inline-block; height: 70px; line-height: 70px; padding: 0 15px; }
            }
        
        @media only screen and (min-width: 56.25em) { /* ~900px */
            .pag.bdy > div > div .lst.content > li { padding: 15px 45px 25px 18px; }
            .pag.bdy > div > div .lst.content > li > h4 { font-size: 1.250em /* 20px */; line-height: 22px; }
            .pag.bdy > div > div .lst.content > li > time,
            .pag.bdy > div > div .lst.content .meta { font-size: 0.875em /* 14px */; line-height: 20px; }
            .lst.content .lst.link { position: absolute; right: 18px; top: 18px; font-size: 0.750em /* 12px */; }
            .cart-actions { display: flex; justify-content: space-between; align-items: center; }
            .cart-actions .btn { margin: 0; }
            }


/* 009. Tables
------------------------------------------------------------------------------------------------------ */

    .tbl {
        width: 100%; max-width: 100%; margin-bottom: 20px; border-spacing: 0; border-collapse: collapse;
        border-top: 1px solid #ddd; border-right: 1px solid #ddd; border-left: 1px solid #ddd;
        }

    .tbl th { text-align: left; font-size: 0.750em /* 12px */; }
    .tbl th, .tbl td { padding: 8px; }
    .tbl > tbody { color: #888; font-size: .875em /* 14px */; }
    .tbl > thead > tr,
    .tbl > tbody > tr:nth-of-type(2n) { background-color: rgba(150,150,150,.07); }
    .tbl > thead > tr > th,
    .tbl > tbody > tr > td,
    .tbl > tbody > tr > th { border-bottom: 1px solid #ddd; }
    
    
/* 010. Forms
------------------------------------------------------------------------------------------------------ */

    /* Dirty hotfix for question multiselect fields to add spacing without blowing up every other field (Will be removed with new form field update) - 11/24/24 BRH */
    .multiselect-fix form .form-field .field.multi > legend { margin-bottom: 24px; font-weight: bold; }
    .multiselect-fix form .form-field .field.multi > .field.checkbox { margin-bottom: 15px; }
    .multiselect-fix form .form-field .field.multi > .field.checkbox > label { position: relative; padding-left: 20px; line-height: 24px; }
    .multiselect-fix form .form-field .field.multi > .field.checkbox > label > input { position: absolute; left: -5px; top: 0; }
    /* ------- */

	.form .actions { padding-top: 30px; } /* -- added to push the action buttons down from the reset password link -- */

    .field.select { border: 0; background-color: transparent; }
    .field.select > .select { position: relative; border: 1px solid rgba(61,61,61,.4); background-color: #fff; }
    .field.select > .select > .fa { display: block; height: 40px; line-height: 40px; position: absolute; z-index: 50; top: 0; right: 15px; font-size: 0.625em; pointer-events: none; cursor: pointer; }
    
    label,
    .form-label { display: inline-block; margin-bottom: 5px; -moz-transition: 0.2s ease all; -webkit-transition: 0.2s ease all; transition: 0.2s ease all; }

    ::-webkit-input-placeholder { font-size: .875em /* 14px */; opacity: .5; }
    :-moz-placeholder { font-size: .875em /* 14px */; opacity: .5; }
    ::-moz-placeholder { font-size: .875em /* 14px */; opacity: .5; }
    :-ms-input-placeholder { font-size: .875em /* 14px */; opacity: .5; }
    
    .field > .meta-info { position: absolute; right: -30px; top: 20px; }
    .field > .meta-info > .fa { display: block; padding: 0 10px; color: #fc4242; cursor: pointer; text-align: center; font-size: .9em; }
    .field > .meta-info > .fa-asterisk { font-size: .6em; }
    .field > .meta-info > .fa:first-of-type { margin-bottom: 5px; }
    .field.check > .meta-info,
    .field.radio > .meta-info { top: 0; }
    .error-message { display: none; }
    .field.error [type="text"],
    .field.error .select,
    .field.radio.error > label,
    .field.check.error > label { border: 1px solid #fc4242; }
    .field.error > .error-message { display: block; margin: 5px 0; font-size: .8em; color: #fc4242; }
    .field.select { position: relative; }
    .field.select select > option { font-size: 1em; padding: 10px; }
    /*.field.select > .fa { display: block; height: 40px; line-height: 40px; position: absolute; z-index: 50; top: 0; right: 15px; font-size: 0.625em; }*/
    .field.select select {
        display: block; height: 40px; line-height: 40px; width: 100%; position: relative; z-index: 100; background: 0 none; padding: 0 50px 0 10px;
        border: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; font-size:  .875em /* 14px */;
        }
    .field.select select::-ms-expand { display: none; }

    [type="text"], [type="number"], [type="tel"], [type="password"], [type="email"], textarea:not(.select2-search__field), .textarea {
        display: block; height: 45px; line-height: 45px; width: 100%; padding: 0 10px;
        -webkit-appearance: none; -moz-appearance: none; border: none; background: 0 none;
        border: 1px solid rgba(61,61,61,.4); background-color: #fff; border-radius: 0;
        }

    textarea:not(.select2-search__field), .textarea { height: 225px; resize: none; margin-bottom: 20px; }
    .textarea { padding: 10px; overflow-y: scroll; }
    .textarea::-webkit-scrollbar { -webkit-appearance: none; width: 5px; }
    .textarea::-webkit-scrollbar-thumb { border-radius: 4px; background-color: rgba(0,0,0,.3); -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5); }
    
    .field.radio.radio-inline { display: inline-block; }

    .field.check > label,
    .field.radio > label { 
        position: relative; display: block; overflow: hidden; padding: 12px 10px 12px 40px; line-height: 20px;
        background-color: #fff; font-size: .95em; cursor: pointer;
        }
    
    .portal-page.resource .toolbar .field.radio { margin: 0 20px 20px 0; }
    .portal-page.resource .toolbar .field.radio > label { margin: 0; background-color: transparent; overflow: visible; padding: 0 0 0 25px; }
    .portal-page.resource .toolbar .field.radio > label [type="radio"] { left: 0; top: 0; }
	.portal-page.resource .toolbar .field.select .ui-dropdownchecklist-selector-wrapper { /*position: relative;*/ padding-right: 50px; }
    .portal-page.resource .toolbar .ui-dropdownchecklist-selector-wrapper { cursor: pointer !important; border: 1px solid rgba(61,61,61,.4); }
    .portal-page.resource .toolbar .field.select .select { display: block; }
    .portal-page.resource .toolbar .field.select { margin-bottom: 20px; }

    
    .field.check > label [type="checkbox"],
    .field.radio > label [type="radio"] { position: absolute; left: 10px; top: 10px; margin-right: 15px; cursor: pointer; }
    .field.check > label [type="checkbox"] { width: 15px; height: 15px; }
	
	.field.check .switch { position: absolute; left: 0; z-index: -1; width: 1rem; height: 1.25rem; opacity: 0; }
	.field.check .switch ~ label { position: relative; margin-bottom: 0; vertical-align: top; padding-left: 10px; }
	.field.check label > .switch ~ span { padding-left: 10px; }
	.field.check .switch ~ label:before,
	.field.check label > .switch ~ span:before { position: absolute; top: 0px; left: -26px; display: block; width: 24px; height: 16px; content: ""; background-color: #fff; border: #adb5bd solid 1px; border-radius: 8px; }
	.field.check .switch:checked ~ label:before,
	.field.check label > .switch:checked ~ span:before { color: #fff; border-color: #007bff; background-color: #007bff; }
	.field.check .switch ~ label:after,
	.field.check label > .switch ~ span:after { position: absolute; top: 3px; left: -24px; display: block; width: 12px; height: 12px; content: ""; background: no-repeat 50%/50% 50%; background-color: #adb5bd; border-radius: 8px; transition: 0.3s; }
	.field.check .switch:checked ~ label:after,
	.field.check label > .switch:checked ~ span:after { background-color: #fff; -webkit-transform: translateX(10px); transform: translateX(10px); }
	.field.check label > .switch ~ span:before { left: 0; top: 10px; }
	.field.check label > .switch ~ span:after { left: 2px; top: 13px; }

    .field.check-button input { opacity: 0; position: absolute; }
    .field.check-button input:focus + label,
    .field.check-button label:has(input:focus) { outline: 2px solid black; }
    .field.check-button input + label,
    .field.check-button label:has(input) { display: inline-block; border-radius: 50%; background: #ddd; height: 40px; width: 40px; line-height: 40px; text-align: center; cursor: pointer; }
    .field.check-button input:checked + label,
    .field.check-button label:has(input:checked) { background: #007339; color: #fff; }
    .field.check-button input:checked + label:hover,
    .field.check-button label:has(input:checked):hover { opacity: 0.8; }

    .field.number-input input[type="number"] { -webkit-appearance: textfield; -moz-appearance: textfield; appearance: textfield; }
    .field.number-input input[type="number"]::-webkit-inner-spin-button,
    .field.number-input input[type="number"]::-webkit-outer-spin-button { -webkit-appearance: none; }
    .field.number-input { border: 1px solid rgba(61,61,61,.4); display: inline-flex; }
    .field.number-input button.stepper { /*outline: none; -webkit-appearance: none;*/ background-color: transparent; border: none; align-items: center; justify-content: center; width: 40px; height: 40px; cursor: pointer; margin: 0; position: relative; }
    .field.number-input button.stepper:before,
    .field.number-input button.stepper:after { display: inline-block; position: absolute; content: ''; width: 13px; height: 1px; background-color: #212121;  transform: translate(-50%, -50%); }
    .field.number-input button.stepper.plus:after { transform: translate(-50%, -50%) rotate(90deg); }
    .field.number-input input[type=number] { max-width: 70px; padding: 8px; border: solid rgba(61,61,61,.4); border-width: 0 1px; font-size: 16px; height: 40px; text-align: center; }

    .field.field-flex-row { display: flex; flex-flow: row; }
    
    .required { font-size: 14px; font-weight: normal; }
    
    .field.radio > .text, .field.check > .text {
        font-size: .8em;
        margin-bottom: 5px;
        }
    
    [type="submit"], .btn {
        display: block; width: 100%; padding: 15px; text-align: center; color: #fff; font-size: 1em;
        border: 0; cursor: pointer; /* box-shadow: 0px 1px 7px -2px rgba(0,0,0,.5); */
        -webkit-appearance: none; -webkit-border-radius: 0;
        }
        
    .btn:hover { text-decoration: none; }
        
    .btn.minor { border: 2px solid; background-color: transparent; box-shadow: none; }
    
    [disabled] { cursor: default !important; }
    [type="submit"]:hover { opacity: .8; }
    [disabled]:hover { opacity: 1; }
    .fieldset { overflow: hidden; }
    .fieldset .field.text { width: 45%; float: left; }
    .fieldset .field.text:last-of-type { float: right; }
    .field.date { position: relative; }
    .field.date .ui-datepicker-trigger {
        display: block; width: 45px; height: 45px; position: absolute; z-index: 100; right: 0; bottom: 0; cursor: pointer;
        line-height: 45px; text-align: center; background: none; font-size: 1em; border: 0; border-left: 1px solid rgba(61,61,61,.4);
        }
    .field.date .ui-datepicker-trigger img { width: auto; height: 16px; }
    .field.date .hasDatepicker::-ms-clear { display: none; } /* Removes IE 11 'X' from input field. */
    .portal-page .field.date .ui-datepicker-trigger { /* top: 23px; */ }
    
    .is-offscreen { position: absolute; left: -999em; } 
    .field.upload .file-wrapper { position: relative; overflow: hidden; padding: 15px; margin-bottom: 25px; width: 100%; background-color: #f3f3f3; border: 4px dashed #e3e3e3; border-radius: 5px; display: flex; align-items: center; flex-direction: column; text-align: center; }
	.field.upload .file-wrapper.hover, 
	.field.upload .file-wrapper:hover { border: 4px dashed #d2d2d2; }
	.field.upload .file-wrapper > * { pointer-events: none; }
	.field.upload:hover,
	.field.upload [type="file"]:hover { cursor: pointer; }
	.field.upload .file-initial > .fa { font-size: 60px; color: #d2d2d2; margin-bottom: 15px; -webkit-transition: all .2s ease-in-out; transition: all .2s ease-in-out;}
	.field.upload .file-wrapper:hover .file-initial > .fa { color: #c1c1c1; }
	.field.upload .preview-wrapper { position: relative; }
	.field.upload .preview-wrapper > .img-preview { display: inline; margin: 0 auto 10px auto; width: auto; height: auto; max-width: 180px; }
	.field.upload .preview-wrapper > .button.app { position: absolute; top: -15px; right: -15px; box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06); pointer-events: auto; }
	.field.upload .file-initial > div { margin-bottom: 10px; }
	
	/* =================================================
		
		There are a number of unique form field
		designs throughout RB. These need to be
		consolidated and simplified. The class
		name and style conventions below reflect
		the form field styles presented in the
		styleguide component page.
		
		Because of the naming conventions already
		used a new class is used to designate
		form fields for the time being. When
		time permits and a merging of field
		standards can take place the official
		class name for the form field component
		should be "field".
		
	================================================= */
	
	.form-field { width: 100%; margin-bottom: 20px; position: relative; }
	.form-field > label { display: block; margin-bottom: 5px; font-size: 14px; }
	
	.form-field > input { width: 100%; }
	
	.form-field > [type="text"],
	.form-field > [type="email"],
	.form-field > [type="date"],
	.form-field > [type="number"],
	.form-field > [type="password"],
	.form-field > [type="search"],
	.form-field > [type="time"] {  
		display: block; height: auto; line-height: normal; padding: 10px; font-size: 16px;
		border: 1px solid rgba(61,61,61,.4); background: 0 none; background-color: #fff;
		}
		
	.form-field.check {}
	
	.form-field > h4 { display: inline; }
	
	.form-field .field-help,
	.form-field-help { font-size: 12px; text-decoration: none !important; width: 30px; height: 25px; line-height: 25px !important; text-align: right; }
	.form-field-group { margin-bottom: 40px; position: relative; }
	.form-field-group--actions { position: absolute; right: 0; top: 0; z-index: 1; font-size: 14px; }
	.form-field-group--actions > li { display: inline-block; }
	.form-field-group--actions > li > a { padding: 5px; color: #3d3d3d; }
	
	.form-field-group .field > label { margin-bottom: 5px; }
	.form-field-group .field.check > label,
	.form-field-group .field.radio > label { border: 0 none; }
	.form-field-group .button.app { position: absolute; right: -10px; top: -90px; }
	
	#questiontabs .form-field-group label { padding-right: 125px; }
	
	a[data-toggle].form-anchor { padding: 0 0 0 15px !important; margin: 30px !important; }
    
        @media only screen and (min-width: 56.25em) { /* ~900px */
            .field.select > select { font-size: 1em; }
            [type="submit"], .btn { min-width: 50%; width: auto; margin: 0 auto; }
            .registration-wizard [type="submit"] { margin: 0 auto; }
            .signin [type="submit"] { width: 30%; float: left; margin-top: 0; }
            .signin > div { width: 75%; }
            .signin .forgot { display: block; font-size: 0.875em /* 14px */; }
            .signin a { text-align: inherit; }
            .portal-page.resource .toolbar .field.radio { margin: 0 20px 0 0; }
            .portal-page.resource .toolbar .field.select { margin: 0; }
        	}
    

/* 011. Articles
------------------------------------------------------------------------------------------------------ */
    
    .portal-page .bdy.article .block.hero,
    .portal-page .bdy.article .toc { display: none; }
    
    
 /* 013. Mergables (Styles that need to be merged into the cascade above)
------------------------------------------------------------------------------------------------------ */  

    /* Wizard
    -------------------------------- */ 
    
        .registration-wizard > p { margin-bottom: 35px; }
        .registration-wizard .step { overflow: hidden; position: relative; padding-bottom: 20px; }
        .registration-wizard .step > .overlay { display: none; }
        .registration-wizard .step > .count { display: table-cell; width: 30px; height: 100%; position: absolute; }
        .registration-wizard .step > .count > .number {
            display: flex; justify-content: center; align-items: center; position: relative; z-index: 200; background-color: #3d3d3d; text-align: center; color: #fff;
            width:30px; height: 30px; line-height: 27px; border-radius: 50px; font-weight: bold; font-size: 0.750em /* 12px */;
            }
    
        .registration-wizard .step > .count > .bar { display: block; width: 4px; height: 100%; margin: -20px auto 0; background-color: #f0f0f0; }
        .registration-wizard .step > .count > .number { background-color: #fff; color: #3d3d3d; border: 3px solid #f0f0f0; }
        .registration-wizard .step.complete > .count > .number { border: 3px solid #6fd801; }
        .registration-wizard .step.complete > .count > .bar { background-color: #6fd801; }
        .registration-wizard .step.focused > .count > .number { border: 3px solid #ff9207; }
        .registration-wizard .step.focused > .content .field.select > .select,
        .registration-wizard .step.focused > .content .field [type="text"],
        .registration-wizard .step.focused > .content .field [type="email"],
        .registration-wizard .step.focused > .content .field textarea,
        .registration-wizard .step.focused > .content .field .textarea,
        .registration-wizard .step.focused > .content .field.check > label,
        .registration-wizard .step.focused > .content .field.radio > label { border: 3px solid #ff9207; box-shadow: -2px 2px 8px rgba(0,0,0,.1); }
        .registration-wizard .step.focused > .content .field.date .ui-datepicker-trigger { border-left: 1px solid #ff9207; }
        .registration-wizard .step fieldset .field.radio { margin-bottom: 0; }
        .registration-wizard .step.focused > .count > .bar { background-color: #ff9207; }
        .registration-wizard .step > .content { padding: 4px 0 0 40px; }
        .registration-wizard .step > .content h3 { padding-bottom: 15px; margin: 0; }
        .registration-wizard .step > .content p { padding-bottom: 20px; font-size: .875em /* 14px */; line-height: 18px; }
        .registration-wizard .step > .content ul, .registration-wizard .step > .content ol { padding-left: 20px; }
        .registration-wizard .step > .content ol li, .registration-wizard .step > .content ol li { padding-bottom: 10px; line-height: 24px; }
        .registration-wizard .step > .content ul li {list-style:disc;}
        .registration-wizard .step > .content ol li {list-style:decimal;}
        .registration-wizard .step.last > .count > .bar { display: none; }
        .registration-wizard .step.disabled > .overlay { display: table-cell; position: absolute; width: 100%; height: 100%; }
        .registration-wizard .step.disabled .field > .meta-info > .fa { color: rgba(61,61,61,.4); }
        
        .registration-wizard li:last-of-type .count .bar { display: none; }
    
        .registration-wizard .step > .content .selection-list { width: 70%; }
        .registration-wizard .step > .content .selection-list > li { 
            position: relative;
            list-style: none; background-color: #fff; 
            border: 1px solid rgba(61,61,61,.4); margin-bottom: 20px; 
            }
            
        .registration-wizard [disabled] { background-color: transparent;  }
        .registration-wizard [type="button"][disabled] { background-color: #efefef; color: #3d3d3d !important; }
        
        .registration-wizard .step > .content .selection-list > li:last-of-type { margin: 0; } 
        .registration-wizard .step > .content .selection-list > li a { display: block; color: #3d3d3d; text-decoration: none; padding: 15px 60px 15px 20px; }
        .registration-wizard .step > .content .selection-list > li a:hover { background-color: rgba(150,150,150,.07); }
        .registration-wizard .step > .content .selection-list > li a > p { color: #3d3d3d; margin: 0; padding: 0; }
        .registration-wizard .step > .content .selection-list > li a > p > span { display: block; font-size: 14px; line-height: 16px; }
        .registration-wizard .step > .content .selection-list > li a > p > span:first-of-type { font-weight: bold; }
        .registration-wizard .step > .content .selection-list > li a > span { position: absolute; right: 20px; top: 39%; }
        
        .registration-wizard .step > .content .field { margin-bottom: 25px; }
        .registration-wizard .step > .content a { text-decoration: underline; }
    
            @media only screen and (min-width: 56.25em) { /* ~900px */
                .registration-wizard .step > .count { width: 35px; }
                .registration-wizard .step > .count > .number { width: 35px; height: 35px; line-height: 30px; font-size: 1.1em; }
                .registration-wizard .step > .content { padding: 7px 0 0 60px; }
                .registration-wizard .step > .content p { font-size: 1em; line-height: 24px; }
                }
                
                
    /* Check-in
    -------------------------------- */ 
    
        .kiosk .pag.hdr > div,
        .kiosk .pag.bdy > div,
        .kiosk .pag.ftr > div { position: relative; max-width: 600px; }
    
        .kiosk .pag.hdr {color: #fff;}
        .kiosk .pag.hdr h1 { font-size: 1.6em; font-weight: 300; position: absolute; right: 0; top: 0; letter-spacing: 1px; line-height: 78px; }
        .kiosk .pag.hdr .logo { margin: 0 auto; position: static; }
        .kiosk .pag.bdy > div > div { width: 100%; max-width: 100%; }
        
        .kiosk .pag.bdy { background-color: #f3f3f3; margin: 0; }
        .kiosk .pag.bdy h2 > a { color: #3d3d3d; }
        .kiosk .pag.bdy h2 > .breadcrumb { font-size: 14px; }
        .kiosk .pag.bdy .lst.link.exams > li { overflow: hidden; }
        .kiosk .pag.bdy .lst.link.exams > li > a { padding: 15px 18px; }
        .kiosk .pag.bdy .lst.link.exams > li > a .time { float: right; }
        .kiosk .pag.bdy .lst.link.exams > li > a .time,
        .kiosk .pag.bdy .lst.link.exams > li > a .exam-student { color: #3d3d3d; }
        .kiosk .pag.bdy .lst.link.exams .price { color: #3d3d3d; float: right; }
        .kiosk .cmp { overflow: hidden; }
        .kiosk .cmp .info { padding: 20px; border-bottom: 1px solid #f3f3f3; }
        .kiosk .cmp .info > p { padding-bottom: 10px; }
        .kiosk .cmp .info li { margin-left: 18px; padding-left: 10px; }
        .kiosk .cmp .info li li { margin-left: 36px; padding-left: 20px; }
        .kiosk .acknowledgement { position: relative; padding: 40px 60px 40px 85px; line-height: 20px; border-bottom: 1px solid #f3f3f3; margin: 0; }
        .kiosk .acknowledgement:hover { cursor: pointer; background-color: rgba(180,180,180,.1); }
        .kiosk .acknowledgement [type="checkbox"] { position: absolute; top: 40px; left: 55px; width: auto !important; height: auto !important; }
        
        .kiosk .info .exam-info { }
        .kiosk .info > .time { float: right; }
        .kiosk .info .exam-info > .exam-name { font-weight: bold; font-size: 18px; }
        .kiosk .info .fields { padding: 0; }
        .kiosk .info .fields > li { width: 100%; display: block; margin: 0 0 20px; padding: 0; }
        .kiosk .info .fields > li:last-of-type,
        .kiosk .info .fields > li:last-of-type [type="text"] { margin: 0; }
        .kiosk .info .fields > li label { font-size: 14px; }
        .kiosk .info .fields li > ul > li { list-style: none; margin-left: 0; padding-left: 0; }
        .kiosk .info .fields .field-items,
        .kiosk .check-in-out { display: flex; flex-flow: row; flex-wrap: wrap; gap: 20px; }
        .kiosk .info .fields .field-items > .item { flex-grow: 1; }
        .kiosk .lst.content h3 { padding-bottom: 0; }
        .kiosk .btn { margin: 50px auto; }
    
        .kiosk .btn-link {
            background-color: #fff; margin: 0 0 50px; 
            -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 15px; border: 0; cursor: pointer;
            text-align: center; width: 100%; box-shadow: none; text-transform: none; font-weight: normal;
            }
    
        .kiosk .check-in-out { margin: 20px 0; }
        .kiosk .check-in-out .btn { margin: 0 auto; }
        .kiosk select { max-width: 100%; }
        .kiosk [type="submit"], .kiosk .btn { width: 90%; }
        .kiosk .info.checked { position: relative; padding-left: 125px !important; }
        .kiosk .info.checked > .fa { color: #5baf00; font-size: 52px !important; position: absolute; left: 50px; top: 35px; }
        .kiosk .info.checked > h2 { border: 0; margin-bottom: 5px; padding: 15px 0; font-size: 22px; }

        .kiosk .card { margin: 0; }
        .kiosk .card h1 { font-size: 20px; margin: 0; padding: 0; }

        @media only screen and (min-width: 56.25em) { /* ~900px */
            .kiosk .pag.hdr .logo { margin: inherit; }
            .kiosk .pag.bdy { padding-top: 50px; }
            .kiosk .cmp .info { padding: 50px 60px; }
            .kiosk .check-in-out { margin: 20px 60px; }
            .kiosk [type="submit"], .kiosk .btn { min-width: initial; width: 47%; }
            .kiosk .info.checked > .fa { top: 65px; }
            .kiosk .card { margin-bottom: 60px; } 
        }
        
    
    /* Professor
    -------------------------------- */    
        
        .portal-page .pag.bdy { background-color: #f3f3f3; }
        .portal-page .pag.hdr > div,
        .portal-page .pag.ftr > div { position: relative; overflow: visible; width: 90%; max-width: 950px; margin: 0 auto; }
        .portal-page .pag.hdr .lst.link > li { border: 0 none; }

        .portal-page .crd.modal { padding: 0; }
        
        .portal-page .header { position: relative; padding: 20px 40px 20px 20px; width: 100%; overflow: hidden; border-bottom: 1px solid #ddd; }
        .portal-page .header h2 { padding: 0; margin: 0; border: 0 none; font-size: 19px; }
        .portal-page .header ul { position: absolute; right: 0; top: 0; }
        .portal-page .header ul > li { list-style: none; float: left; }
        .portal-page .header ul > li > a { display: inline-block; padding: 20px; text-align: center; line-height: 23px; border-left: 1px solid #ddd; }
        .portal-page .header ul > li > [href="#more-info"] { display: none; }
        .portal-page .header .text { display: none; }

        .portal-page .cmp > h2 { font-size: 120%; }
        
        .portal-page .cmp.main.full { margin-right: 0 !important; max-width: 100% !important; width: 100%; }
        .portal-page .cmp.main.full .ui-jqgrid { margin-top: 0; padding: 0; }
        .portal-page .cmp.main.full .ui-jqgrid-htable,
        .portal-page .cmp.main.full .ui-jqgrid,
        .portal-page .cmp.main.full .ui-jqgrid-hdiv,
        .portal-page .cmp.main.full .ui-jqgrid-view,
        .portal-page .cmp.main.full .ui-jqgrid-view > *,
        .portal-page .cmp.main.full .ui-jqgrid-pager,
        .portal-page .cmp.main.full .ui-jqgrid-bdiv > div > table { width: 100% !important; }
        .portal-page .cmp.main.full .ui-jqgrid-btable .jqgrow th, 
        .portal-page .cmp.main.full .ui-jqgrid-btable .jqgrow td,
        .portal-page .cmp.main.full .ui-jqgrid-htable > thead th,
        .portal-page .cmp.main.full .ui-jqgrid tr.jqgroup td { padding: 15px 10px 15px 20px !important; }
        .portal-page .cmp.main.full .ui-jqgrid .ui-jqgrid-hbox { padding: 0; }
        .portal-page .cmp.main.full .ui-jqgrid-view { border: 0; border-top: 1px solid #ddd; }
        .portal-page .cmp.main.full .ui-jqgrid-htable > thead th { font-weight: normal; text-align: left; }
        .portal-page .cmp.main.full .ui-jqgrid-htable > thead th div { margin: 0; }
        .portal-page .cmp.main.full .ui-jqgrid-htable > thead th,
        .portal-page .cmp.main.full .ui-jqgrid-btable > tbody { font-size: 14px; color: #3d3d3d; }
        .portal-page .cmp.main.full .ui-jqgrid tr.jqgrow td { border: 0; border-bottom: 1px solid #ddd; }
        
        .portal-page .date-range .fieldset .field { margin-bottom: 0; }
        .portal-page .date-range .fieldset .field { width: 100%; margin-bottom: 20px; }
        .portal-page .date-range [type="submit"],
        .portal-page .date-range > [type="button"] { width: 200px; margin: 20px 0 0 0; padding: 15px; }
        .portal-page .date-range > [type="button"] { padding: 0; height: 48px; }
        .portal-page .date-range .ui-datepicker-trigger { cursor: default; top: 23px; }
        
        .portal-page .registration-wizard .btn { margin: 30px auto; }
        
        .portal-page .tbl-wrap { width: 100%; overflow-x: auto; padding: 0; }
        .portal-page .tbl { margin: 0; width: 100%; border: 0 none; }
        .portal-page .tbl thead > tr { background-color: rgba(150,150,150,.07); } 
        .portal-page .tbl th, 
        .portal-page .tbl td { padding: 8px; }
        .portal-page .tbl tr > td:first-of-type,
        .portal-page .tbl tr > th:first-of-type { padding-left: 20px; }
        .portal-page .tbl tr > td:last-of-type,
        .portal-page .tbl tr > th:last-of-type { padding-left: 20px; }
        .portal-page .tbl > tbody { color: #3d3d3d; font-size: 14px; }
        .portal-page .tbl > tbody > tr:nth-of-type(2n) { background-color: transparent; }
        .portal-page .tbl thead th,
        .portal-page .tbl tbody td { position: relative; padding: 15px 10px; border-bottom: 1px solid #f3f3f3; text-align: left; font-size: 14px; }
        .portal-page .tbl tbody tr.no-border td { border-bottom: none; }
        .portal-page .tbl thead th { font-weight: normal; white-space: nowrap; }   
        .portal-page .tbl thead th > a { color: #3d3d3d; text-decoration: none; }
        .portal-page .tbl .acknowledgement a { text-decoration: underline; }
        .portal-page .tbl .acknowledgement ul, .portal-page .tbl .acknowledgement ol { padding-left: 25px; }
        .portal-page .tbl .acknowledgement ul li, .portal-page .tbl .acknowledgement ol li { padding-bottom: 10px; line-height: 24px; }
        
        .portal-page .tools { white-space: nowrap; }
        .portal-page .tools a { padding-left: 5px; }
        
        .portal-page .frm [type="submit"] { margin: 30px 0 0; }
        
        .portal-page .pad { padding: 30px 0; }
        .portal-page .pad [type="submit"] { max-width: 250px; }
        
        .portal-page .ui-jqgrid-titlebar { display: none; }
        
        .portal-page ul.token-input-list-facebook { width: 100%; border: 1px solid rgba(61,61,61,.4); }
        
/*        .portal-page #ui-datepicker-div { z-index: 120 !important; }*/
        
        .portal-page.resource .dhx_cal_navline,
        .portal-page.resource .dhx_cal_header,
        .portal-page.resource .dhx_cal_data { width: 100% !important; }
        .portal-page.resource .date-range .field.date { width: 190px; float: none; }
        .portal-page.resource .header .m { display: none; }
        .portal-page.resource .field { margin-bottom: 20px; }
        .portal-page.resource .fieldset .field.text { width: 100%; float: none; }
        
        
        .portal-page .app-info { padding: 0; margin-bottom: 30px; }
        .portal-page .app-info > table { margin-bottom: 30px; }
        .portal-page .app-info .field.date .ui-datepicker-trigger { top: 0; }
        
        .portal-page .help-link { display: none; }
        
        .portal-page .ui-widget.ui-widget-content { /*border: 0 none;*/ }
        .portal-page.professor .page__body__content .node.right .node__aside.right { display: none; }
        
            @media only screen and (min-width: 37.50em) { /* ~600px */
                .portal-page .pag.bdy { margin: 0; padding-top: 50px; }
                .portal-page .pag.bdy > div { flex-wrap: wrap; }
                .portal-page .pag.bdy > div > div { width: 100%; margin: 0 auto 50px; }
                .portal-page .pag.bdy > div > .cmp { /* margin-right: 50px; */ }
                .portal-page .pag.bdy > div > aside { display: block; }
                .portal-page .date-range { display: flex; flex-flow: row; flex-wrap: nowrap; }
                .portal-page .date-range .fieldset .field { width: 45%; margin: 0 20px 0 0; float: left; }
                .portal-page .date-range.alt .fieldset .field { width: 30%; }
                .portal-page .date-range [type="submit"]:not(.button.mini),
                .portal-page .date-range > [type="button"]:not(.button.mini) { margin: 20px 0 0 30px; padding: 15px; }
                .portal-page .header ul > li > [href="#more-info"] { display: inline-block; }
                .portal-page .frm .field { width: 75%; }
                .portal-page .signin .forgot { float: right; width: auto; }
                .portal-page.resource .toolbar .field.date { margin-right: 25px; }
                }
                
            @media only screen and (min-width: 48em) { /* ~768px */
                .portal-page .pag.hdr { overflow: visible; }
                .portal-page .header .text { display: inline; }
                .portal-page .pag.bdy > div > div { width: 60%; margin: 0 8% 50px 0; }
                .portal-page .pag.hdr > div { height: 70px; }
                .portal-page .pag.hdr .logo { position: absolute; top: 0; left: 0; }
                .portal-page .pag.hdr .lst.link { position: absolute; right: 0; top: 0; height: 70px; }
                .portal-page .pag.hdr .lst.link > li > a { display: block; height: 70px; line-height: 70px; padding: 0 13px !important; font-size: 16px; }
                .portal-page .pag.hdr .lst.link > li > .nameplate { 
                    display: block; width: 40px; height: 40px; line-height: 40px; margin: 15px 0 0 15px;
                    text-align: center; color: #fff; font-size: 14px; font-weight: bold; 
                    border-radius: 50px; cursor: pointer; 
                    background-color: #00a470; 
                    }
                    
                .portal-page .pag.hdr .user-menu {
                    display: none;
                    position: absolute; top: 70px; right: -50px; z-index: 200;
                    width: 275px; 
                    background-color: #fff;
                    box-shadow: 0 1px 7px -2px rgba(0,0,0,.5);
                    }
                    
                .portal-page .pag.hdr .user-menu.open { display: block; }
                .portal-page .pag.hdr .user-menu:after {
                    content: " ";
                    position: absolute; left: 75%; bottom: 100%;
                    height: 0; width: 0; margin-left: -10px;
                    border: solid transparent; border-color: rgba(255, 255, 255, 0); border-bottom-color: #ffffff; border-width: 10px;
                    pointer-events: none;
                    }
                    
                .portal-page .pag.hdr .user-menu > div { width: 100%; padding: 20px; }
                .portal-page .pag.hdr .user-menu > div > .name { display: block; width: 100%; font-size: 18px; margin-bottom: 4px; }
                .portal-page .pag.hdr .user-menu > div > .email { font-size: 14px; color: #949494; }
                .portal-page .pag.hdr .user-menu > ul > li { list-style: none; border-top: 1px solid #e0e0e0; }
                .portal-page .pag.hdr .user-menu > ul > li > a { display: block; padding: 15px 20px; }
                
                .portal-page .help-link { 
                    display: block; z-index: 100; position: fixed; right: 0; top: 150px; width: 40px; height: 35px; padding: 0; 
                    line-height: 35px; font-size: 16px; color: #fff; border-radius: 5px 0 0 5px; text-align: center; 
                    }
                    
                .portal-page .help-link .fa-question::before{ margin-left: 12px; }
                .portal-page.professor .page__body__content .node.right .node__aside.right { display: block; }
                
                }
    
            @media only screen and (min-width: 56.25em) { /* ~900px */
                .portal-page .pag.bdy > div > div { margin-right: 5%; }
                .portal-page .pag.bdy > div > div.full { width: 100%; margin-right: 0; margin-bottom: 30px; }
                .portal-page .pag.bdy > div > aside { width: 35%; }
                .portal-page.resource .header .m { display: block; }
                .portal-page.resource .fieldset .field.text { width: 48%; float: left; }
                .portal-page.resource .fieldset .field.text:first-child { margin-right: 4%; }
                }
        
            @media only screen and (min-width: 68.75em) { /* ~1100px */
                .portal-page .pag.bdy > div > div { margin-right: 8%; }
                }
                

    /* Backend Dev Additions
    -------------------------------- */ 
    
        .fieldset .field.select { width: 45%; float: left; }
        .fieldset .field.select:last-of-type { float: right; }
        .fieldset .field.date { width: 45%; float: left; }
        .fieldset .field.date:last-of-type { float: right; }
        .field { position: relative; }
        
        .pag.hdr .lst.link > li > select, .pag.ftr .lst.link > li > select { display: block; margin: 30px 20px; text-align: center; }
        .inline { display: inline; width: auto; }
        a.accessible { left: -10000px; position: absolute; top: auto; width: 1px; height: 1px; }
        .scr { 
            position: absolute; height: 1px; width: 1px; 
            clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); -webkit-clip-path: polygon(0px 0px, 0px 0px, 0px 0px); clip-path: polygon(0px 0px, 0px 0px, 0px 0px); 
            overflow: hidden !important; 
            }
            
        a.accessible:focus { position: static; width: auto; height: auto; }
        .ui-jqgrid-view {
            width: 100%; max-width: 100%; margin-bottom: 20px; border-spacing: 0; border-collapse: collapse;
            border-top: 1px solid #ddd; border-right: 1px solid #ddd; border-left: 1px solid #ddd;
            }
        
        .ui-jqgrid-htable th { text-align: left; font-size: 0.750em /* 12px */; }
        .ui-jqgrid-htable th, .ui-jqgrid-htable td { padding: 8px; }
        .ui-jqgrid-htable > tbody { color: #888; font-size: 0.875em /* 14px */; }
        .ui-jqgrid-htable > thead > tr,
        .ui-jqgrid-htable > tbody > tr:nth-of-type(2n) { background-color: rgba(150,150,150,.07); }
        .ui-jqgrid-htable > thead > tr > th,
        .ui-jqgrid-htable > tbody > tr > td { border-bottom: 1px solid #ddd; }
        .ui-jqgrid-btable th { text-align: left; font-size: 10.750em /* 12px */; }
        .ui-jqgrid-btable th, .ui-jqgrid-btable td { padding: 8px; }
        .ui-jqgrid-btable > tbody { color: #888; font-size: 0.875em /* 14px */; }
        .ui-jqgrid-btable > thead > tr,
        .ui-jqgrid-btable > tbody > tr:nth-of-type(2n) { background-color: rgba(150,150,150,.07); }
        .ui-jqgrid-btable > thead > tr > th,
        .ui-jqgrid-btable > tbody > tr > td { border-bottom: 1px solid #ddd; }
        .ui-pager-control { border: 1px solid #ddd !important; }
        
        .headertext ol li { list-style: decimal inside none; margin: 10px; }
        .headertext ul li { list-style: disc inside none; margin: 10px; }
        .textarea ol li { list-style: decimal outside none; margin: 18px; }
        .textarea ul li { list-style: disc outside none; margin: 10px; }
        .textarea { line-height: 20px; }
        
        .isSP { display: none; }
        .description ol li { list-style: decimal outside none; margin: 10px; }
        .description ul li { list-style: disc outside none; margin: 10px; }



/* 012. BEM Update Project (CURRENTLY, ONLY USED BY EVENTS)
------------------------------------------------------------------------------------------------------ */

    /* =================================================
        
        BEM Naming Conventions (BRH - 3/12/2020)
        
        The following section represents new class naming conventions utilizing the BEM CSS philosophy.
        This will be the standard moving forward. These styles will account for new conventions for all 
        portal pages once all portal pages are merged into Portal.Master and Portal.css becomes the central 
        css file for all portal pages. Portal pages include Professor, Resources, Exam registration,
        Check-in, Events, and any other user-facing pages. 
        
        BEM creates three levels of class naming convention. Block, Element, and Modifier. 
        Blocks are the parent container of an HTML component (.page). Elements are the childen of the 
        parent block (.page__header). Modifiers can be used to modify or change a block (.page .page--fullwidth) 
        
        Generally, avoid overriding blocks unless the properties needed are unique to the top-level block 
        Ex. No need to use .page__header > .logo if .logo is a block itself unless you need to position the logo
        in a unique way inside the page header. 
    
    ================================================= */	
    
    h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-size: 30px; border: 0; margin-bottom: 15px; padding: 0; font-weight: bold; }
    h1, .h1 { line-height: 34px; }
    h2, .h2 { font-size: 24px; }
    h3, .h3 { font-size: 20px; }
    h4, .h4 { font-size: 18px; }
    h5, .h5 { font-size: 16px; }
    h6, .h6 { font-size: 14px; }

            
    /* Page
    -------------------------------- */
            
	.page__header { margin-bottom: 0; position: relative; }
	.page__header > div { position: relative; overflow: visible; width: 90%; max-width: 950px; height: 60px; margin: 0 auto; }
	.page__header .logo { display: flex; align-items: center; max-width: 220px; height: 60px; position: absolute; left: 0; top: 0; }
	.page__header .logo > img { width: 100%; }
	.page__header .logo__image { height: auto; width: 100%; font-size: 14px; margin: 0; }
	.page__header .list--navigation { position: absolute; right: -20px; top: 0; }
	.page__header .list--navigation .list__item > a,
    .page__header .list--navigation .list__item > span { color: #fff; }
    
    .page__body { padding-top: 50px; background-color: #f3f3f3; }
    .page__body > div { padding-bottom: 100px; }
    .page__body__content > .node { margin: 20px 20px 40px; }
    .page__body > .notification { max-width: 100%; width: 100%; padding: 25px 20px; }
    
    .page__footer > div { padding: 80px 30px; }
    .page__footer > div > div:first-of-type { padding-bottom: 70px; border-bottom: 2px solid rgba(255,255,255,.2); margin-bottom: 50px; }
    .page__footer .list__item > a { display: block; padding: 0 0 10px 0; }
    .page__footer .logo { display: flex; max-width: 200px; margin: 0 auto; height: auto; }
    .page__footer .logo > img { display: block; margin: 0 auto; }
    .page__footer .h3,
    .page__footer a { color: #fff; }
    .page__footer .h3 { padding-bottom: 7px; border-bottom: 2px solid rgba(255,255,255,.2); margin-bottom: 25px; font-weight: normal; }
    .page__footer .list .list__item { display: block; }
    .page__footer .list--navigation .list__item > a,
    .page__footer .list--navigation .list__item > span { color: #fff; }
    
    .page__footer > div > div > div { margin-bottom: 40px; }
        
        @media only screen and (min-width: 48em) { /* ~768px */
            .page__header > div,
            .page__body > div,
            .page__footer > div { width: 90%; max-width: 1100px; margin: 0 auto; }
            .page__body__content.thin { max-width: 650px; }
            .page__body__content.ultrathin { max-width: 500px; }
            .page__body__content > .node { margin: 20px 0 40px; }
            
            .page__body > .notification { max-width: 100%; width: 100%; padding: 25px 120px; }
            
			.page__header > div { width: 100%; height: 70px; }
			.page__header .logo { left: 0; height: 70px; }
			
			.page__header .list--navigation { right: 0px; }

			
			.page__footer > div { width: 35%; max-width: 600px; padding: 80px 0; }
			.page__footer > div > div > div { margin-bottom: 0; }
			
			.flex { display: flex; flex-flow: row; justify-content: space-between; }
			.flex--wrap { flex-wrap: wrap; }
			.flex--align { align-items: flex-start; }
			.flex--2 > * { width: 47%; }
			.flex--3 > * { width: 31%; }
			.flex--main { width: 55%; margin-right: 10%; }
			.flex--aside { width: 25%; }
			.flex--reverse { flex-direction: row; }
			.flex--evenly { justify-content: space-evenly; }
			.flex--center { align-items: center; }
            .flex--justify--left { justify-content: start; }
            }
    
    /* Logo
    -------------------------------- */
    
    .logo { max-width: 225px; height: 55px; }
    .logo__image { display: block; width: auto; height: 50px; margin: 10px 0; }
    
        @media only screen and (min-width: 48em) { /* ~768px */
            .logo { max-width: 350px; height: 70px; }
			/* .logo__image { margin: 15px 0; } */
            }
            
    /* Search
    -------------------------------- */
    
    .filters { margin: 0 20px 60px; }
    .filters h1 { text-align: center; }
    .filters .filters__search--field [type="text"] { height: 55px; line-height: 55px; padding: 0 26px; font-size: 20px; }
    .filters .filters__search--field .button { min-width: 60px; height: 47px; }
    .filters .filters__search--field .button > .fa { font-size: 22px; }
    
    .filters__search { margin-bottom: 40px; }
    .filters__search--field { position: relative; margin-bottom: 20px; }
    .filters__search--field > [type="text"] { padding-right: 40px; }
    .filters__search--field > button { position: absolute; z-index: 2; right: 0; top: 0; background-color: transparent; }
    .filters__search--field > button > span { color: #3d3d3d; }
    .filters__search--categories { width: 100%; text-align: center; }
    .filters__search--categories[data-toggle]::before { display: none; }
    
    .filters__categories {}
    .filters__categories > ul { display: flex; flex-direction: row; flex-flow: wrap; justify-content: space-between; }
    .filters__categories--item { list-style: none; width: 50%; padding: 0 20px 0 0; margin-bottom: 15px; }
    .filters__categories--item > a { display: block; padding-bottom: 15px; font-weight: bold; color: #3d3d3d; font-size: 16px; }
    .filters__categories--item li { list-style: none; }
    .filters__categories--item > ul > li { padding-bottom: 12px; }
    .filters__categories--item > ul > li > ul { padding-left: 8px; }
    
        @media only screen and (min-width: 48em) { /* ~768px */
            .filters { margin: 50px auto 70px; max-width: 70%; }
            .filters__categories > ul > li { width: 24%; }
            }
    
    /* User Nameplate
    -------------------------------- */
    
    .nameplate {}
    .nameplate .node { margin: 0; }
    
    .nameplate__menu-button { 
        display: block; width: 40px; height: 40px; 
        color: #fff; text-transform: uppercase; background-color: #00a470; 
        border-radius: 50px; cursor: pointer; text-align: center; 
        font-size: 16px; line-height: 40px; margin-left: 15px; font-weight: bold; text-decoration: none;
        }
    
    .current .nameplate__menu-button { margin: 0 7px; }
    
    .nameplate__menu-button:hover { text-decoration: none; }
    
    .nameplate__menu { display: none; position: absolute; top: 70px; right: -50px; z-index: 200; width: 275px; background-color: #fff; box-shadow: 0 1px 7px -2px rgba(0,0,0,.5); }
    .nameplate__menu.open { display: block; }
    .nameplate__menu:after {
        content: " "; position: absolute; left: 75%; bottom: 100%; height: 0; width: 0; margin-left: -10px; 
        border: solid transparent; border-color: rgba(255, 255, 255, 0); border-bottom-color: #ffffff; border-width: 10px; pointer-events: none; 
        }
    
    .nameplate__menu > div { width: 100%; padding: 20px; }
    .nameplate__menu > div > .name { display: block; width: 100%; font-size: 18px; margin-bottom: 4px; }
    .nameplate__menu > div > .email { font-size: 14px; color: #949494; }
    .nameplate__menu > ul > li { list-style: none; border-top: 1px solid #e0e0e0; }
    .nameplate__menu > ul > li > a { display: block; padding: 15px 20px; }
    
    .node .bold { font-weight: bold; }
    
    
    
    /*-------------Events - feel free to delete and/or adapt - this is just for Greg to establish some basic styles while developing ---------------*/
              

        .eventCard { width:600px; background-color:white; margin-top:20px;}
        .eventCard .imageHeader { width:100%; max-height:300px; overflow: hidden;}
        .eventCard .imageHeader img {width:100%;}
        .eventCard .text {padding:20px;}
        .eventCard p {padding-top:20px;}
        .eventCard .occurrence {margin-bottom:10px}
        .occurrence .dateInfo {display:flex;}
        .occurrence .dateInfo .calDate {background-color:#ccc; border:#999 solid 1px; padding:5px; text-align:center; width:2.5rem; font-size:1rem;}
        .occurrence .dateInfo .month {font-size:.75rem;}
        .occurrence .dateInfo .dayAndTime {font-size:.75rem; padding:5px;}

        .googleMap {width:100%; max-height:300px}
        .googleMap iframe {border: 0; width:100%; height:300px;}

        #Tickets {width:300px; float:left;}
        #OrderDetails {width: 200px; float:left;}

        #PrivateEventAccessLevel{display:none;}
    
        .is-hidden { display:none; }
        .is-notafield { opacity: 0; position: absolute; top: 0; left: 0; height: 0; width: 0; z-index: -1; visibility: hidden; }
    
