/* --- */
/* Overall footer settings */
/* --- */

.dev-contact {
	font-size: 120%;
	text-align: center;
	margin-top: 10px;
}
#page footer .dev-contact a {
	color: grey;
}

.disclaimer-footer {
	max-width: 551px;
}
.site-footer .block {
	margin: 30px 0 15px 0;
}
.site-footer .row {
	margin-left: 0;
	margin-right: 0;
}


/* Removing borders on footer blocks */
.block-noborder,
.block-noborder .block {
	border: 0 !important;
	padding: 0 !important;
}

.site-footer__bottom {
	border-color: grey;
}


/* Contacts block customizing */
.contacts {
  padding: 0;
  margin-top: 2rem;
  list-style: none;
  display: flex;
  justify-content: center;
}
.contact {
	padding-left: 1rem;
	padding-right: 1rem;
	border-left: 1px solid #393939;
}	
.contacts > span:first-child {
	padding-left: 0;
	border-left: 0;
}
.contacts > span:last-child {
	padding-right: 0;
}
.contacts i {
	margin-right: 0.5rem;
}


/* Old sites customizing */
.oldsites {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
.oldsites a {
	font-size: 90%;
	margin: 0.5rem 45px 0.5rem 45px;
	color: white !important;
}
.oldsites a:last-child {
	margin-bottom: 0;
}


/* Sticky footer */
html {
  position: relative;
  min-height: 100%;
}
.site-footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 0 !important;
}



/* --- */
/* Adaptive footer */
/* --- */


	/* Single screens */


/* xs ruleset */
@media (min-width: 0px) and (max-width: 575px) {
	
	.site-footer .block {
		margin: 0;
	}
	
	.logo-footer {
		padding-left: 0;
		padding-right: 0;
		width: 70%;
		margin: 3rem 0 2rem 0 !important;
	}
	
	.site-footer {
		text-align: center;
	}
	
	.disclaimer-footer {
		margin-bottom: 1rem;
	}
	
	.region-footer-fifth .content {
		padding-top: 0;
	}
	
	.contacts-xs-sm  {
		display: flex;
		flex-flow: column;
		justify-content: center;
	}	
	.contact {
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 0.3rem;
		border-left: 0;
		font-size: 120%;
	}	
	
	/* Vacating space for footer */
	.main-content	{
		margin-bottom: 550px !important;
	}
	
	/* Fixing Bootstrap glitch 560-576px */
	.site-footer__top .region {
		width: 100%;
	}
}


/* sm ruleset */
@media (min-width: 576px) and (max-width: 767px) {
	
	/* Setting custom width of regions */
	.region-footer-first {
		width: 40% !important;
	}
	.region-footer-second {
		width: 60% !important;
	}
	
	.contact {	
		font-size: 125%;
	}
	.contacts {	
		margin-bottom: 1rem;
	}
	
	/* Vacating space for footer */
	.main-content	{
		margin-bottom: 360px !important;
	}
	.site-footer 	{
		height: 360px;
	}		
	
	.region-footer-fifth .block {
		margin: 0;
	}
}


/* md ruleset */
@media (min-width: 768px) and (max-width: 991px) {
	
	.oldsites-lg-xl {
		display: none;
	}
	
	/* Setting custom width of regions */
	.region-footer-first {
		width: 33% !important;
	}
	.region-footer-second {
		width: 66% !important;
	}
	
	.logo-footer {
		padding-left: 0;
		padding-right: 1rem;
	}
	
	.contact {	
		font-size: 110%;
	}
	
	/* Vacating space for footer */
	#sidebar_first,
	.main-content	{
		margin-bottom: 300px !important;
	}
	.site-footer 	{
		height: 300px;
	}		
}


/* lg ruleset */
@media (min-width: 992px) and (max-width: 1199px) {
	
	.contact {	
		font-size: 115%;
	}
	
	.oldsites {
		height: 176px;
	}
	
	.logo-footer {
		padding-left: 0;
		padding-right: 1rem;
	}
	
	/* Vacating space for footer (footer height + 30px) */
	#sidebar_first,
	.main-content	{
		margin-bottom: 300px !important;
	}
	.site-footer 	{
		height: 280px;
	}	
	
	/* Setting custom width of regions */
	.region-footer-first,
	.region-footer-third {
		width: 24% !important;
	}
	.region-footer-second {
		width: 52% !important;
	}
}


/* xl ruleset */
@media (min-width: 1200px) {
	
	.contact {	
		font-size: 140%;
	}
	
	.oldsites {
		height: 145px;
	}
	
	.logo-footer {	
		padding-left: 1rem;
		padding-right: 1rem;
	}
	
	/* Vacating space for footer (footer height + 30px) */
	#sidebar_first,
	.main-content	{
		margin-bottom: 300px !important;
	}
	.site-footer 	{
		height: 270px;
	}	
	
	/* Setting custom width of regions */
	.region-footer-first,
	.region-footer-third {
		width: 24% !important;
	}
	.region-footer-second {
		width: 52% !important;
	}
}


	/* Multiple screens */
	
	
/* xs+sm ruleset */
@media (min-width: 0px) and (max-width: 767px) {
	
	.oldsites-lg-xl,
	.contacts-md-xl	{
		display: none !important;
	}
		
	.site-footer__bottom,
	.site-footer__bottom .region	{
		margin-top: 0;
	}
	
	.region-footer-fifth .block {
		margin: 0;
	}
	
	.contacts-xs-sm {
		margin-top: 1rem !important;
	}
	
	.region-footer-fifth > .block {
		width: 100%;
	}
}