:focus {
    outline: -webkit-focus-ring-color auto 1px !important;
}

*:focus-visible,
.flex_column.av-column-link:focus-within {
    outline: 3px solid #005ea5 !important;
    outline-offset: 2px;
}

/* Skip Link (universal) */
.skip-link {
	position: absolute;
	left: -999px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
	white-space: nowrap;
	color: #fff;
	background-color: #000;
}

.skip-link:focus {
	left: 10px;
	top: 10px;
	width: auto;
	height: auto;
	background: #000;
	color: #fff;
	padding: 8px;
	z-index: 10000;
	text-decoration: none;
}

/* Screen Reader Only Utility */
.screen-reader-only,
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

/* Hide visually but allow focus */
a.before_main_menu:focus {
    opacity: 1;
    display: block;
}

/* Desktop layout adjustment */
@media screen and (min-width: 992px) {
	a.before_main_menu {
		/* Use screen-reader-only directly or in HTML class */
		position: absolute !important;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		clip-path: inset(50%);
		white-space: nowrap;
		border: 0;
	}
	#header #header_main_alternate .container {
	    position: relative;
	}
}

/* Mobile: hide .before_main_menu completely */
@media screen and (max-width: 991px) {
	a.before_main_menu {
		display: none;
	}
}

/* Miscellaneous styles */
nav.main_menu {
	z-index: 10;	
}

#top #tribe-events-pg-template .tribe-events-notices {
    overflow: hidden;
}

.flex_column.av_one_fifth a.av-screen-reader-only:focus {
    outline: 3px solid #000 !important;
}

.flex_column.av_one_fifth a.av-screen-reader-only {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 99%;
    background: transparent;
    text-indent: -9999px;
    color: #FFF;
}

article.stretched-link-post {
  position: relative;
}

article.stretched-link-post a.stretched-link {
  z-index: 1;
}

article.stretched-link-post a.stretched-link:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
}

article.stretched-link-post .post-meta-infos a,
article.stretched-link-post button,
article.stretched-link-post input,
article.stretched-link-post select,
article.stretched-link-post textarea {
  position: relative;
  z-index: 2;
}


.stretched-link-post header h2.post-title.entry-title a.stretched-link:focus-visible {
    outline: 0 !important;
}

article.stretched-link-post:has(a.stretched-link:focus-visible) {
    background: #F9F9F9;
    outline: 3px solid #005ea5 !important;
    outline-offset: 2px;
}

.news-grid article.stretched-link-post:has(a.stretched-link:focus-visible) {
    background: #d33d3d;
}

.news-grid article {
	transition:0.2s all: 
}

.news-grid article:hover {
    background: #d33d3d;
}

.template-blog .pagination {
    padding: 10px 50px 10px 24px;
}

/* Footer */

#socket .sub_menu_socket div {
    overflow: visible;
}

#socket .menu {
    margin: 0;
    display: flow-root;
    overflow: visible;
}

#socket .sub_menu_socket li {
    line-height: 24px;
}

@media only screen and (max-width: 989px) {
	.responsive #top #wrap_all #cav .flex_cell.av-gridrow-cell.av_one_third {
	    padding: 0 30px;
	}	
	.responsive #top #wrap_all #cav .flex_cell.av-gridrow-cell.av_one_third .flex_cell_inner {
	    display: block;
	    position: relative;
	    width: 100%;
	    height: auto;
	    visibility: visible;
	    margin: 0;
	}	
	.responsive #top #wrap_all #cav .left {
	    position: relative;
	}	
	.responsive #top #wrap_all #cav .av-break-at-tablet .flex_cell.no_margin.left {
	    padding-bottom: 0;
	    padding-top: 30px;
	}	
	.responsive #top.home #wrap_all #cav .av-break-at-tablet.fillsize .flex_cell.no_margin {
	    padding-top: 0;
	}	
	#cav .flex_column_table.sc-av_one_third.av-break-at-tablet-flextable.av-equal-height-column-flextable {
	    margin-top: 0;
	}
	.template-blog .blog-meta {
	    margin-right: 20px;
	}
	.template-blog .blog-meta .small-preview {
	    width: 90px;
	    height: 90px;
	}
	.template-blog .multi-big .post_author_timeline,
	.template-blog .single-small .post_author_timeline {
	    left: 45px;
	}
}

@media only screen and (max-width: 767px) {
	body.home .news-grid .pcwt-content-slider .slide-image {
	    width: 100%;
	    max-width: 100%;
	}
	.big-preview.single-big {
	    padding: 0 0 15px 0;
	}
	#socket .sub_menu_socket li {
	    padding: 12px;
	}
	#top footer .social_bookmarks li {
	    height: 30px;
	}
}