/* hover effects: for desktop only */
@media (min-width: 801px) {
	.home-news-entry:hover .hn-title {
		color: #0C5E6E;
	}
	p a:hover, .content li a:hover,
	.content th a:hover, .content td a:hover {
		text-decoration: underline;
	}
	.main-menu > ul > li > a:after {
		position: absolute;
		content: '';
		display: block;
		top: 100%;
		left: 0;
		height: 2px;
		width: 0;
		margin-top: 3px;
		background-color: #222;
		transition: width 0.3s ease-in-out;
	}
	.main-menu > ul > li > a:hover:after {
		width: 100%;
		transition: width 0.3s ease-in-out;
	}

	.bottom-menu ul li a:after {
		position: absolute;
		content: '';
		display: block;
		top: 100%;
		left: 0;
		height: 1px;
		width: 0;
		margin-top: 3px;
		background-color: #222;
		transition: width 0.3s ease-in-out;
	}
	.bottom-menu ul li a:hover:after {
		width: 100%;
		transition: width 0.3s ease-in-out;
	}

	.dd-col-heading:after {
		position: absolute;
		content: '';
		display: block;
		top: 100%;
		left: 0;
		height: 2px;
		width: 0;
		margin-top: 3px;
		background-color: #0C5E6E;
		transition: width 0.3s ease-in-out;
	}
	.dd-col-heading:hover:after {
		width: 100%;
		transition: width 0.3s ease-in-out;
	}	
	.icon-panel li a:hover {
	    text-decoration: underline;
	}
}



@media (max-width: 1200px) {
	/* ALL PAGES */

	.submenu > ul > li > a {
		padding: 13px 25px;
	}

	.header-tools {
		width: auto;
		float: right;
		left: auto;
		right: 0;
		padding-top: 22px;
		margin-right: 2px;
	}
	.header-language-switcher {
		margin-right: 22px;
	}
	.header-font-size-switcher {
		float: left;
		margin-right: 30px;
	}
	.header-search {
		float: left;
		padding-top: 0;
		clear: none;
	}
	.main-menu > ul {
		width: 100%;
		padding: 55px 0 0 0;
		border-right: 0;
		text-align: right;
	}
	.main-menu > ul > li {
		padding-bottom: 23px;
	}
	.main-menu > ul > li:last-child {
		padding-right: 0;
	}
	.drop-down-news {
		left: auto;
		right: -50%;
		transform: none;
	}
	.drop-down-help {
		left: auto;
		right: 0;
		transform: none;
	}

	.bottom-menu {
		padding-top: 15px;
		padding-bottom: 10px;
		/* background: transparent; */
	}
	.bottom-menu ul {
		margin-left: -15px;
		text-align: left;
	}
	.bottom-menu ul li {
		margin: 4px 0;
	}
	.bottom-menu ul li a {
		padding: 0 15px;
		font-size: 1.4em;
		letter-spacing: 0;
	}

	.back-to-top {
		right: 10px;
		bottom: 20px;
		width: 35px;
		height: 35px;
	}
	.back-to-top span {
		padding-top: 7px;
		font-size: 3em;
		font-weight: 400;
	}

	.footer-wrapper {
		padding: 15px 0;
	}
	.footer-social-icons {
		margin-top: 4px;
		margin-bottom: 0;
	}
	.footer-social-icon {
		width: 25px;
		height: 25px;
	}
	.footer-login {
		height: 25px;
    margin-top: 5px;
	}
	.copyright {
		margin-top: 10px;
		font-size: 1.3em;
		text-align: center;
	}


	/* HOME */

	.home-top {
		padding: 20px 0 30px 0;
	}
	.home-top-left,  .home-top-right {
		float: none;
		width: 100%;
	}
	.home-top-left {
		position: relative;
		padding-right: 0;
		border-right: 0;
		margin-bottom: 20px;
	}
	.home-top-right {
		display: inline-block;
		width: 100%;
		padding-left: 0;
	}
	.home-top-left h2 {
		margin-top: 0;
		margin-bottom: 15px;
		font-size: 2em;
	}
	.home-top-right h2 {
		margin-top: 0;
		margin-bottom: 15px;
		font-size: 2em;
	}

	.home-news-entries {
		overflow: hidden;
	}
	/*
	.home-news-entry {
		float: left;
		width: 28.6%;
		margin-left: 7%;
		display: block;
	}
	.home-news-entry:first-child {
		margin-left: 0;
	}
	.hn-left, .hn-right {
		display: block;
		width: 100%;
	}
	.hn-right {
		margin-top: 15px;
	}
	*/
	.hn-left {
		width: 70px;
	}
	.home-news-entry {
		margin-left: 0;
    width: 100%;
    float: none;
	}
	/* .hn-left {
		display: inline-block;
		vertical-align: middle;
		width: 20%;
		margin-right: 2%;
	}
	.hn-right {
		display: inline-block;
		vertical-align: middle;
		width: 75%;
		margin-top: 0;
	} */

	.hn-date {
		width: 55px;
		height: 55px;
		margin-right: 0;
	}
	.hn-title {
		font-size: 1.5em;
	}
	.hn-more {
		position: absolute;
		right: 0;
		top: 3px;
		margin-top: 0;
		font-size: 1.5em;
	}


	/* ALL CONTENT PAGES */

	.page-banner {
		height: 120px;
	}
	.page-title {
		height: auto;
		padding: 15px 0;
	}
	.page-title-text {
		font-size: 2em;
	}
	.breadcrumbs-container {
		padding: 10px 0;
		font-size: 1.6em;
	}


	/* PAGES */

	.main {
		padding: 25px 0;
	}
	.content-with-sidebar {
		float: none;
		width: 100%;
	}
	.content-page-title {
		margin-bottom: 15px;
	}
	.content-text {
		padding: 15px 20px;
	}

	.accordion-title {
		padding: 15px 15px 15px 30px;
		font-size: 1.6em;
	}
	.accordion-title:after {
		left: 11px;
		top: 10px;
		font-size: 1.4em;
	}
	.accordion-text {
		padding: 15px 15px 15px 30px;
	}

	.sidebar {
		float: none;
		width: 100%;
		padding: 0;
		margin: 30px 0 0 0;
		border: 0;
	}
	.sq-title {
		margin-bottom: 15px;
	}
	.siddebar-quote {
		margin-bottom: 30px;
	}
}



@media (max-width: 1000px) {
	.header, .header-wrapper {
		height: 80px;
	}
	.container {
		padding-top: 80px;
	}
	.header-logo {
		width: 32%;
		padding-top: 13px;
	}
	.header-logo img {
		width: 200px;
	}
	.header-tools {
		padding-top: 13px;
	}
	.main-menu {
		width: 68%;
	}
	.main-menu > ul {
		padding-top: 40px;
	}
	.main-menu > ul > li {
		padding-top: 5px;
		padding-bottom: 10px;
	}

	.footer-logo {
		width: 250px;
	}

	.home-slider-container {
		height: 225px;
	}
	.home-slider-container .slide-image {
		height: 150px;
	}
	.slide-caption {
		height: 75px;
	}
	.slide-caption-wrapper {
		padding: 15px 0;
	}
	.slide-caption-large {
		font-size: 2em;
	}
	.slide-caption-small {
		font-size: 1.6em;
	}
	.bx-wrapper .bx-controls-direction a {
		width: 10px !important;
		height: 11px !important;
	}
	.bx-wrapper .bx-prev {
		bottom: 30px !important;
		background-size: 10px 11px !important;
	}
	.bx-wrapper .bx-prev {
		left: 11px !important;
	}
	.bx-wrapper .bx-next {
		right: 11px !important;
	}


	.home-bottom {
		padding: 30px 0;
	}
	.home-bottom-block {
		float: none;
		display: table;
		table-layout: fixed;
		width: 100%;
		height: auto;
		margin-bottom: 10px;
	}
	.hbb-top {
		display: table-cell;
		width: 48%;
		height: 200px;
		border-right: 4px solid #ADEBEB;
		border-bottom: 0;
	}
	.hbb-bottom {
		position: relative;
		display: table-cell;
		width: 52%;
		padding: 15px 10px 35px 32px;
	}
	.hbb-cat {
		position: absolute;
		left: 0;
		top: 50%;
		width: 46px;
		height: 46px;
		margin: -23px 0 0 -25px;
	}
	.hbb-cat span {
		font-size: 1em;
		font-weight: 500;
	}
	.hbb-title {
		margin-top: 0;
		font-size: 1.6em;
	}
	.home-bottom-block-1 .hbb-more,
	.home-bottom-block-2 .hbb-more {
		position: absolute;
		right: 20px;
		bottom: 10px;
		margin-top: 0;
		font-size: 1.5em;
	}

	.hbb-heading {
		margin-bottom: 15px;
		font-size: 2em;
	}
	.hbb-content {
		position: relative;
		padding: 15px 20px;
	}
	.hbb-list {
		margin-bottom: 10px;
	}
	.hbb-list li {
		width: 33%;
		padding-left: 20px;
		margin-bottom: 5px;
		background-position: 0 3px;
		background-size: 15px auto;
	}
	.hbb-list li:nth-child(2n+1) {
		clear: none;
	}
	.hbb-list li:nth-child(3n+1) {
		clear: both;
	}
	.hbb-list li:nth-child(3n+3) {
		padding-right: 0;
	}
	.home-bottom-block-3 .hbb-more {
		position: absolute;
		right: 20px;
		top: 19px;
		bottom: 0;
		margin-top: 0;
		font-size: 1.5em;
	}

	.il-left {
		width: 40%;
	}
	.il-middle, .il-right {
		float: none;
		width: 60%;
		margin-left: 40%;
		padding-left: 30px;
	}
	.il-right {
		display: inline-block;
		padding-top: 5px;
	}
	.list-label {
		float: left;
		margin-right: 5px;
	}


	/* ICONS PAGE */

	.main.main-2col .main-wrapper:before {
		left: -20%;
		width: 140%;
		z-index: -1;
	}
	.content-2col, .content-left, .content-right {
		display: block;
	}
	.content-left {
		width: 100%;
		padding: 15px 0;
	}
	.content-left-list {
		display: none;
	}
	.content-left-heading {
		position: relative;
		cursor: pointer;
	}
	.content-left-heading:after {
		position: absolute;
		display: block;
		content: '\003E';
		right: 0;
		top: -2px;
		width: 20px;
		height: 20px;
		color: #000;
		font-size: 2.6em;
		line-height: 1;
		z-index: 0;
		text-align: right;
		transform: rotate(90deg);
		transition: all 0.4s ease-in-out;
	}
	.content-left.open .content-left-heading:after {
		top: 5px;
		transform: rotate(-90deg);
		transition: all 0.4s ease-in-out;
	}
	.content-left h3 {
		margin: 0;
		font-size: 2.2em;
	}
	.content-left h4 {
		margin-top: 10px;
		margin-bottom: 10px;
	}
	.content-left h4:last-child {
		margin-bottom: 0;
	}
	.content-right {
		width: 100%;
		padding: 0;
	}
	.main.main-2col .content-right {
		position: relative;
	}
	.main.main-2col .content-right:before {
		position: absolute;
		display: block;
		content: '';
		left: -20%;
		top: 0;
		width: 140%;
		height: 100%;
		background-color: #FFF;
		z-index: 0;
	}
	.icon-entries {
		position: relative;
		padding: 15px 0;
		z-index: 1;
	}
	.icon-entry {
		width: 28.6%;
		margin-top: 25px;
		margin-bottom: 25px;
	}
	.icon-entry:nth-child(3n+1) {
		padding-left: 0;
		margin-left: 0;
	}
	.icon-entry:nth-child(3n+3) {
		padding-right: 0;
		margin-right: 0;
	}
	.icon-entry .ie-icon {
		width: 50px;
		height: 50px;
		margin: 0 auto 5px auto;
	}
	.icon-entry .ie-icon i {
		font-size: 2.5em;
	}
	.icon-entry h2 {
		margin: 0;
		font-size: 1.6em;
	}

	.icon-panel {
		padding: 15px 20px 5px 20px;
	}
	.icon-panel ul.sub-list {
		font-size: 1.6em;
	}
	.icon-panel li {
		margin-bottom: 10px;
	}
}


@media (max-width: 800px) {

	.table-form-like table tr {
    border: 1px solid #65aaa9;
    border-bottom: 2px solid #65aaa9;
  }
  .table-form-like table tr td {
  	display: block;
  	padding: 10px;
  	border: 1px solid #dddddd;
  	width: 100% !important;
  }
  .table-form-like table thead, .table-form-like table tbody tr:first-child, .table-form-like table tr:first-child {
  	display: none;
  }
	.table-form-like table thead ~ tbody tr:first-child {
		display: block;
	}

	body {
		font-size: 55%;
	}
	h2 {
		margin: 1em 0 0.7em 0;
		font-size: 2.6em;
	}
	h3 {
		margin: 1em 0 0.7em 0;
	}
	p {
		font-size: 1.5em;
	}
	.content ul, .content ol {
		margin-bottom: 2em;
	}
	.content li {
		margin-bottom: 0.7em;
		font-size: 1.5em;
	}

	body.menu-open {
		overflow: hidden;
	}
	body.menu-open .main-menu-mask {
		display: block;
		position: fixed;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		cursor: pointer;
		z-index: 5;
	}
	body.menu-open .main-menu-mobile {
		right: 0;
		transition: right 0.3s ease-in-out;
		box-shadow: 0 -1px 10px rgba(0,0,0,0.3);
	}
	.main-menu {
		display: none;
	}
	.main-menu-close {
		position: absolute;
	  display: block;
	  right: 0;
	  top: 0;
	  width: 60px;
	 	height: 60px;
	 	padding: 20px;
	}
	.main-menu-close span {
		display: block;
		width: 20px;
	  height: 20px;
	  background: url('images/top-menu-close@2x.png') no-repeat center center;
	  background-size: 20px 20px;
	  cursor: pointer;
	}
	.main-menu-mobile {
		display: block;
		position: fixed;
		right: -100%;
		width: 80%;
		max-width: 280px;
		height: 100%;
		padding: 60px 20px 30px 30px;
		background-color: #ADEBEB;
		opacity: 1;
		z-index: 10;
		transition: right 0.3s ease-in-out;
	}
	.main-menu-mobile ul li {
		margin-bottom: 25px;
		text-align: left;
	}
	.main-menu-mobile ul li a {
		color: #000;
		font-size: 2em;
		font-weight: 600;
	}
	a.main-menu-search {
		position: absolute;
		display: block;
		right: 58px;
		width: 56px;
		height: 56px;
		font-size: 2em;
		background: #ADEBEB url('images/search@2x.png') no-repeat center center;
		background-size: 25px 25px;
	}
	.main-menu-button {
		position: absolute;
		display: block;
		right: 0;
		width: 56px;
		height: 56px;
		padding-top: 10px;
		background-color: #ADEBEB;
		cursor: pointer;
	}
	.main-menu-button .menu-line {
		display: block;
		width: 25px;
		height: 2px;
		background: #000;
		margin: 7px auto;
	}

	.header, .header-wrapper {
		height: 56px;
	}
	.header:after {
		display: none;
	}
	.header-wrapper {
		display: block;
	}
	.container {
		padding-top: 56px;
	}
	.header-logo {
		float: left;
		width: 80%;
	}
	.header-logo img {
		max-width: 180px;
	}
	.copyright {
		width: 100%;
		text-align: left;
	}

	.home-slider-container {
		height: 150px;
	}
	.home-slider-container .slide-image {
		height: 90px;
	}
	.slide-caption {
		height: 60px;
	}
	.slide-caption-wrapper {
		padding: 10px 0;
	}
	.bx-wrapper .bx-prev, .bx-wrapper .bx-next {
		bottom: 25px !important;
	}

	.hbl-text {
		width: 80px;
		height: 80px;
	}
	.hbl-text h3 {
		font-size: 1.6em;
	}




	/* NEWS */

	.content-filters {
		float: none;
		margin-bottom: 0;
	}
	.content-page-title + .content-filters {
		margin-top: 0;
	}
	.content-filter {
		margin-bottom: 8px;
	}
	.content-filter select {
		height: 22px;		
	}
	.content-list {
		padding: 15px 20px;
	}

	.icon-entry {
		width: 28.6%;
		margin-top: 15px;
		margin-bottom: 15px;
	}

	/* DATE LIST PAGE */

	.date-list-entry, .dl-left, .dl-middle, .dl-right {
		display: block;
	}
	.date-list-entry {
		width: 100%;
	}
	.dl-left {
		float: left;
		width: 70px;
	}
	.dl-middle {
		width: 100%;
		padding-left: 75px;
		padding-right: 0;
	}
	.dl-right {
		width: 100%;
		padding-left: 75px;
	}
	.list-entry {
		padding: 20px 0;
	}
	.dl-date {
		width: 55px;
		height: 55px;
	}
	.dl-left, .dl-middle {
		margin-bottom: 10px;
	}
	.dl-title {
		font-size: 1.6em;
	}
	.list-label {
		float: none;
		display: inline-block;
		padding: 5px 10px;
		margin: 0 5px 5px 0;
		font-size: 1.6em;
	}
	.dl-right .list-label {
		width: auto;
	}
	.pagination {
		margin-top: 15px;
	}
	.submenu > ul > li {
		margin: 0 10px 10px 0;
	}
	.submenu > ul > li > a {
		padding: 6px 10px;
		font-size: 1.6em;
	}
}




@media (max-width: 750px) {
	/* IMAGE LIST PAGE */
	.image-list-entry {
		padding: 22px 0 15px 0;
		margin: 0 auto;
	}
	.il-left, .il-middle, .il-right {
		float: none;
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
	}
	.il-title {
		margin-bottom: 15px;
	}
	.il-info-row {
		margin-bottom: 8px;
	}
	.il-middle {
		padding: 15px 0 10px 0;
	}
	.il-right {
		display: block;
		padding-left: 0;
	}
	.il-right .list-label {
		width: auto;
		margin: 0 5px 5px 0;
	}
/*
	.form-like th, .form-like td, .table-form-like th, .table-form-like td {
		display: block;
		border: 0;
	}
	.form-like th, .table-form-like th {
		font-weight: 700;
	}
	.form-like tr, .table-form-like tr {
		border-bottom: 1px solid #CCC;
		padding: 5px 0;
	}
	.form-like tr:last-child, .table-form-like tr:last-child {
		border-bottom: 0;
	}
*/
}



@media (max-width: 700px) {
	.hbb-top {
		height: 150px;
	}
}

@media (max-width: 650px) {
	.content-status {
		padding: 40px 20px;
	}
	.home-top-right h2 {
		margin-bottom: 27px;
	}
	.home-blocks-large {
		width: 43%;
		margin-top: 0;
		margin-right: 6%;
		margin-bottom: 0;
	}
	.home-block-large {
		float: none;
		width: 100%;
		height: 70px;
		margin-bottom: 19px;
	}
	.home-block-large:last-child {
		margin-bottom: 0;
	}
	.home-block-large-1 {
		background-position: 15px 15px;
		background-size: 30px auto;
	}
	.home-block-large-2 {
		background-position: 10px 25px;
		background-size: 45px auto;
	}
	.home-block-large-3 {
		background-position: 13px 20px;
		background-size: 40px auto;
	}
	.hbl-text {
		right: 10px;
		top: -15px;
		width: 68px;
		height: 68px;
	}
	.hbl-text h3 {
		font-size: 1.3em;
	}

	.home-blocks-small {
		width: 51%;
	}
	.home-block-small {
		float: none;
		width: 100%;
		padding-left: 11px;
	}
	.home-block-small:last-child {
		margin-bottom: 0;
	}
}

@media (max-width: 550px) {
	a {
  /* These are technically the same, but use both */
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  /* This is the dangerous one in WebKit, as it breaks things wherever */
  word-break: break-all;
  /* Instead use this non-standard one: */
  word-break: break-word;
  /* Adds a hyphen where the word breaks, if supported (No Blink) */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
	.details-table th {
		width: 40%;
		padding: 5px 0;
		text-align: left;
	}
	.details-table td {
		width: 60%;
	}
	.content ul {
		margin-left: 1em;
	}
}

@media (max-width: 500px) {
	.hbb-top {
		display: block;
		width: 100%;
    border-bottom: 4px solid #ADEBEB;
    border-right: 0;
	}
	.hbb-bottom {
		display: block;
		width: 100%; 
		padding: 32px 10px 35px 32px;
	}
	.hbb-cat {
		left: 50%;
    top: 0;
	}
	.home-news-entry {
		margin-left: 0;
    width: 100%;
    float: none;
	}
	/* .hn-left {
		display: inline-block;
		vertical-align: middle;
		width: 20%;
	}
	.hn-right {
		display: inline-block;
		vertical-align: middle;
		width: 75%;
		margin-top: 0;
	} */
	.st-row-dates .st-cell-text, .st-group-main .st-cell-text, .st-cell.st-cell-text {
		width: 20%;
		padding: 0 0 0 10px;
	}
	.st-cell {
		padding: 0;
	}
	.st-group-main .st-cell-text:after {
		left: 1px;
		font-size: 1.4em;
	}
	.st-information, .st-restored, .st-maintenance {
		width: 18px;
    height: 18px;
	}
	.header-logo img {
		max-width: 160px;
	}
}
@media (max-width: 450px) {
	.st-cell-text, .st-row-dates .st-cell-text, .st-cell-date {
		font-size: 1.3em;
	}
	.hbb-heading {
		font-size: 1.6em;
	}
	.hbb-top {
		height: 100px;
	}
	.footer-logo {
		width: 200px;
	}
	.icon-panel ul.sub-list {
		float: none;
		width: 98%;
		padding-right: 20px;
	}
}