/* lato-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url('/assets/fonts/lato-v25-latin/lato-v25-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/fonts/lato-v25-latin/lato-v25-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lato-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/fonts/lato-v25-latin/lato-v25-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* barlow-condensed-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 300;
  src: url('/assets/fonts/barlow-condensed-v13-latin/barlow-condensed-v13-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-condensed-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 400;
  src: url('/assets/fonts/barlow-condensed-v13-latin/barlow-condensed-v13-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-condensed-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  src: url('/assets/fonts/barlow-condensed-v13-latin/barlow-condensed-v13-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* barlow-condensed-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  src: url('/assets/fonts/barlow-condensed-v13-latin/barlow-condensed-v13-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


:root {
	/* brand */
	--color-primary: #E9212D;
	--color-text: #212529;
	--color-muted: #6c757d;
	--color-border: #dee2e6;
	--color-bg: #ffffff;

	/* buttons */
	--color-product: #323232;
	/* semantic */
	--color-success: #28a745;
	--color-warning: #ffc107;
	--color-danger: #dc3545;
	--color-info: #17a2b8;

	/* spacing (minimal scale) */
	--space-xs: 0.25rem;
	--space-sm: 0.5rem;
	--space-md: 1rem;
	--space-lg: 2rem;
	--space-xl: 3rem;

	/* typography */
	--font-body: Lato, sans-serif;
	--font-mono: SFMono-Regular, Menlo, Monaco, Consolas, monospace;

	/* layout */
	--container: 1200px;
}

/* ---------------------------------------------------------------------- */
/* Minimal Reset */

*, *::before, *::after {
	box-sizing: border-box;
}

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	font-family: var(--font-body);
	font-size: 1rem;
	line-height: 1.6;
	color: var(--color-text);
	background: var(--color-bg);
}

/* ---------------------------------------------------------------------- */
/* Typography System */

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 var(--space-sm) 0;
	xfont-weight: 300;
	line-height: 1.2;
	color: var(--color-text);
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1rem; }

p {
	margin: 0 0 var(--space-md) 0;
}

a {
	color: var(--color-primary);
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
	color: #ac111a;
}

/* ---------------------------------------------------------------------- */
/* Minimal Element Defaults */

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

ul, ol {
	margin: 0 0 var(--space-md) var(--space-lg);
	padding: 0;
}

hr {
	border: 0;
	border-top: 1px solid var(--color-border);
	margin: var(--space-lg) 0;
}

blockquote {
	margin: 0 0 var(--space-md);
	padding-left: var(--space-md);
	border-left: 3px solid var(--color-border);
	color: var(--color-muted);
}


/* ---------------------------------------------------------------------- */
/* Minimal Element Defaults */

.container {
	max-width: var(--container);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--space-md);
	padding-right: var(--space-md);
}

.stack > * + * {
	margin-top: var(--space-md);
}

.stack-sm > * + * {
	margin-top: var(--space-sm);
}

.stack-lg > * + * {
	margin-top: var(--space-lg);
}

.grid {
	display: grid;
	gap: var(--space-md);
}

.grid-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-auto {
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.cluster {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-sm);
	align-items: center;
}


/* ========================================================
	LAYOUT SYSTEM
======================================================== */

/* =========================
	 CONTAINER
========================= */

.layout-container {
	width: 100%;
	max-width: 1200px;

	margin-left: auto;
	margin-right: auto;

	padding-left: 24px;
	padding-right: 24px;
}

/* =========================
	 GRID SYSTEM
========================= */

.layout-grid {
	display: grid;
}

/* 2 COLUMN */
.layout-grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* 3 COLUMN */
.layout-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* =========================
	 GAP UTILITIES
========================= */

.gap-sm {
	gap: var(--space-sm);
}

.gap-md {
	gap: var(--space-md);
}

.gap-lg {
	gap: var(--space-lg);
}

/* ========================================================
	 RESPONSIVE
======================================================== */

@media (max-width: 991px) {

	x.layout-grid--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

}

@media (max-width: 767px) {

	.layout-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.layout-grid--2,
	.layout-grid--3 {
		grid-template-columns: 1fr;
	}

}




x.page-wrapper { flex: 0 0 auto; overflow-x: visible !important; background:white }
x.page-layout { width:100%; max-width: 1140px; margin:15px auto}
@media (max-width: 1200px) {
	x.page-layout {
		padding: 0 2% !important
	}
}




/* ---------- header.v2 Styles ---------- */
header.v2 {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	padding: 1rem 1.875rem;
	background-color: #fff;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	position: relative;
	z-index: 1000;
}

/* ---------- Logo ---------- */
header.v2 .logo {
	color: #333;
	text-decoration: none;
}
header.v2 .logo img {
	display: block;
	max-width: 238px;
}

/* ---------- nav.v2igation Menu ---------- */
nav.v2 {
	display: flex;
	align-items: center;
}

nav.v2 ul {
	list-style: none;
	display: flex;
	gap: 1.875rem;
	margin-bottom: 0;
    margin-left: 0;
}

nav.v2 ul li {
	position: relative;
}

nav.v2 ul li a.howto {pointer-events: auto;cursor: pointer}
nav.v2 ul li a.howto:active {pointer-events: none}

nav.v2 > div > ul > li > a,
nav.v2 > div > ul > li > button {
	display: block;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: bold;
	color: #212529;
	padding: 0.5rem 0 1rem;
	padding: 0;
	xtransition: color 0.2s;
	position: relative; /* needed for pseudo-elements */
	xtransition: font-size 0.3s ease, line-height 0.3s ease;

}
nav.v2 button {
	background: none;
	border: 0;
	padding: 0;
	margin: 0;
	font: inherit;
	color: inherit;
	cursor: pointer;
	text-transform: inherit;
	font-weight: inherit;
	xtransition: color 0.2s, font-size 0.3s ease, line-height 0.3s ease;
	text-align: left;
	display: block;
	width: 100%;
}
/* ---------- Submenu Indicator Arrow ---------- */
nav.v2 ul li > a[aria-haspopup="true"]::after,
nav.v2 ul li > button[aria-haspopup="true"]::after {
	transition: transform 0.3s;
	display: inline-block;
	margin-left: 0.3em;
	vertical-align: 0.2em;
	content: "";
	border-top: 0.3em solid;
	border-right: 0.3em solid transparent;
	border-bottom: 0;
	border-left: 0.3em solid transparent;
}

nav.v2 ul li.show > a[aria-haspopup="true"]::after {
	transform: rotate(-180deg);
}

@media (min-width: 880px) {
	nav.v2 ul li:hover > a[aria-haspopup="true"]::after {
		transform: rotate(-180deg);
	}
}

/* ---------- Underline Hover Effect for Non-Dropdown ---------- */
@media (min-width: 880px) {
	nav.v2 > div > ul > li > a:not([aria-haspopup="true"])::after,
	nav.v2 > div > ul > li > button:not([aria-haspopup="true"])::after {
		content: "";
		position: absolute;
		top: 1.35rem;
		left: 50%;
		width: 0;
		height: 2px;
		background-color: #212529;
		transition: width 0.2s ease, left 0.2s ease;
	}

	nav.v2 > div > ul > li > a:not([aria-haspopup="true"]):hover::after,
	nav.v2 > div > ul > li > a:not([aria-haspopup="true"]):focus::after {
		width: 100%;
		left: 0;
	}
}
/* ---------- Dropdown Menu ---------- */
nav.v2 > div > ul > li > div.dropdown {
	position: absolute;
	padding: 1rem 0;
	display: none;
}
nav.v2 > div > ul > li > div.dropdown > ul {
	left: 0;
	background-color: #fff;
	border: 1px solid #e0e0e0;
	min-width: 180px;
	flex-direction: column;
	padding: 0;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	z-index: 1000;
	gap: 0;
	overflow: hidden;
	transition-property: max-height;
	transition-timing-function: ease;
	transition-duration: 0ms;
}

nav.v2 > div > ul > li > div.dropdown > ul > li > a {
	text-decoration: none;
	color: #333;
	padding: 0.5rem 1rem;
	white-space: nowrap;
	width: 100%;
	display: block;
	font-weight:400;
}

nav.v2 > div > ul > li > div.dropdown > ul > li > a:hover {
	background: #dee2e6;
}
nav.v2 > div > ul > li > div.dropdown > ul > li > div.dropdown {
	display:none;
}
/* Hover dropdown on desktop */
@media (min-width: 880px) {
	nav.v2 > div > ul li:hover > div.dropdown {
		display: flex;
	}
}

/* ---------- Mobile Menu Toggle ---------- */
.menu-toggle {
	display: none;
	flex-direction: column;
	cursor: pointer;
	gap: 6px;
	user-select: none;     /* prevent selection / blinking cursor */
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}

.menu-toggle span {
	display: block;
	width: 40px;
	height: 4px;
	background-color: #212529;
	border-radius: 4px;
	transition: all 0.3s;
}
.menu-toggle:hover span {
	opacity: 0.7;
}

.menu-toggle.active span:nth-child(1) {
	transform: translateY(10px) rotate(45deg);
}

.menu-toggle.active span:nth-child(2) {
	opacity: 0;
}

.menu-toggle.active span:nth-child(3) {
	transform: translateY(-10px) rotate(-45deg);
}

/* ---------- Responsive Styles ---------- */
@media (max-width: 1849px) {
	nav.v2  {
		font-size: 0.85rem
	}
	nav.v2 ul {
		gap: 1rem;
	}
}
@media (max-width: 879px) {

	header.v2 .menu-toggle {
		display: flex;
	}
	header.v2 {align-items: center;}
	header.v2::before {
		content: "";
		position: absolute;
		inset: 0;
		background: white;
		z-index: -1; /* this is now the visual background */
		height: calc(100% - 0px);
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	}

	nav.v2 #menu_wrapper {
		padding: 0 0;
		background: rgba(255,255,255,.95);
		position: absolute;
		top: 100%;
		flex-direction: column;
		display: flex;
		left: 0;
		width: 100%;
		transition: transform .5s ease, opacity .25s ease, padding-bottom 0s ease 0s;
		transform: translateY(-100%) translateX(0);
		z-index: -2;
		opacity: 0;
		padding-bottom:0;
	}
	nav.v2 ul {
		right: 0;
		background-color: #fff;
		flex-direction: column;
		padding: 0 0;
		border: 0;
		width:100%;
		gap:0;
	}
	nav.v2 > div > ul > li > a {
		font-size: 20px;
		text-transform:none;
		font-weight: 300;
		padding: 1rem 2rem;
		border-bottom: 1px solid #dee2e6;
	}
	nav.v2 ul li > a[aria-haspopup="true"]::after,
	nav.v2 ul li > button[aria-haspopup="true"]::after {
		position: absolute;
		right: 2.1rem;
		top: 1.5rem;
		width: 10px;
		height: 10px;
		margin:0;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: rotate(45deg);
		transition: none;
		vertical-align: 0.1em;
	  	border-top: 0;
		border-left: 0;
	}
	nav.v2 ul li.show > a[aria-haspopup="true"]::after {
		transform: rotate(-135deg);
		top: 1.7rem;
	}
	nav.v2 #menu_wrapper.show {
		display: flex;
		transform: translateY(0) translateX(0);
		opacity: 1;
	}
	nav.v2 > div > ul > li.show > a,
	nav.v2 > div > ul > li.show > button,
	nav.v2 > div > ul > li.show > a.active,
	nav.v2 > div > ul > li.show > button.active {
		background:#E9212D;
		color:white
	}
	nav.v2 > div > ul > li.show > div.dropdown {
		position: relative;
		display:flex;
	}
	nav.v2 > div > ul > li > div.dropdown {
		position: static;
		border: none;
		box-shadow: none;
		background-color: #f8f9fa;
		border-bottom: 1px solid #dee2e6;
		padding:0;
	}

	nav.v2 > div > ul > li > div.dropdown > ul {
		background: none;
		border:0;
		box-shadow:none;
	}
	nav.v2 > div > ul > li > div.dropdown > ul > li {
		padding: 1rem 0;
		cursor: pointer;
	}
	nav.v2 > div > ul > li.show > div.dropdown > ul > li[aria-haspopup="true"]::after {
		content: "";
		position: absolute;
		right: 2.1rem;
		top: 1.5rem;
		width: 10px;
		height: 10px;
		margin:0;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: rotate(45deg);
		transition: none;
		vertical-align: 0.1em;
	  	border-top: 0;
		border-left: 0;
	}
	nav.v2 > div > ul > li > div.dropdown > ul > li > a {
		font-size:1.125rem;
		display:inline;
		padding: 0;
		margin-left:2.5rem;
	}

	nav.v2 > div > ul > li div.dropdown > ul > li > a:hover {
		background:none;
		text-decoration: underline;
		cursor: pointer;
	}

	nav.v2 > div > ul > li > div.dropdown > ul > li > div.dropdown {
		overflow:hidden;
		display:none;
		background: white;
		margin-top:1rem;
		padding: 1rem 0 2rem;
	}
	nav.v2 > div > ul > li > div.dropdown > ul > li.show > div.dropdown {
		overflow:hidden;
		display:flex;
	}
	nav.v2 > div > ul > li > div.dropdown > ul > li > div.dropdown > ul > li {
		padding: 0;
	}
	nav.v2 > div > ul > li > div.dropdown > ul > li > div.dropdown > ul > li a {
		font-size:1rem;
		padding: .5rem 3.5rem;
		display:block;
		cursor:pointer;
	}
	nav.v2 > div > ul > li > div.dropdown > ul > li > div.dropdown > ul > li::after {
		content:none;
	}

}

/* ---------- Focus & Active States ---------- */
nav.v2 > div > ul > li > a.active {
	color: #e9212d;
}

nav.v2 ul li ul li a.active {
	background: #dee2e6;
	color: #e9212d;
}

/* ---------- Wide screen layout: logo centered, menu below ---------- */
@media (max-width: 1170px) and (min-width: 880px) {
	header.v2 {
		flex-direction: column;
		align-items: center;
		padding: 1rem 1.5rem;
	}

	nav.v2 {
		margin-top: 1rem; /* spacing between logo and menu */
		width: 100%;
		display: flex;
		justify-content: center;
	}

	nav.v2 ul {
		flex-direction: row;
		gap: 1rem; /* spacing between menu items */
		padding:0;
	}
}







/* =========================
	FOOTER RESET BASE
========================= */

.site-footer {
	background: #323232;
    padding: 70px 0 0;
    margin-top:50px;
}

/* kill Bootstrap influence inside footer */
.site-footer .container,
.site-footer .row,
.site-footer [class*="col-"] {
	xall: unset;
}
.site-footer .row {
	align-items: stretch;
}
/* =========================
	GRID SYSTEM (SOURCE OF TRUTH)
========================= */

.site-footer__main-bar {
	padding: 80px 0;
}
.footer-container {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}
.footer-grid {
	display: grid;
	grid-template-columns: .9fr .7fr 2fr;
	gap: 3rem;
	align-items: stretch;
}
@media (max-width: 1100px) {
	.footer-grid {
		gap: 1.5rem;
	}

}
/* tablet */
@media (max-width: 920px) {
	.footer-grid {
		flex-wrap: wrap;
		grid-template-columns: 1fr 1fr;
		xgap: 2.5rem;
	}
	.footer-col--nav {
		grid-column: 1 / -1;
	}
	.footer-logo {
	    justify-content: center !important;
	}
}
@media (max-width: 580px) {
	.footer-grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}
}
/* =========================
	FOOTER COLUMNS
========================= */

.footer-col {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 100%;
}
.footer-col > h3,
.footer-col > p,
.footer-col > .site-footer__contacts {
	flex: 0 0 auto;
}

.footer-col > .footer-bottom-slot {
	margin-top: auto;
}
/* =========================
	TYPOGRAPHY
========================= */

.site-footer h3 {
	margin: 0 0 1rem;
	font-weight: 600;
}

.site-footer p {
	margin: 0;
	line-height: 1.4;
}

/* =========================
	BUTTONS
========================= */

.site-footer .btn {
	display: inline-flex;
	width: auto;
}

.footer-col--newsletter .btn {
	margin-top: auto;
}

/* =========================
	CONTACT LINKS
========================= */

.site-footer__contacts {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.site-footer__contacts__item a {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	text-decoration: none;
}

/* =========================
	NAV
========================= */

.footer-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: flex-end;
	list-style: none;
	padding: 0;
	margin: 0;
}

@media (max-width: 992px) {
	.footer-nav {
		justify-content: center;
	}
}
/* =========================
	FOOTER TYPOGRAPHY SYSTEM
========================= */

/* base text */
.site-footer {
	color: #fff;
	font-size: 16px;
	line-height: 1.5;
}

/* =========================
	COLUMN TITLES
========================= */

.site-footer h3 {
	font-size: 1.75rem;
	font-weight: 600;
	margin: 0 0 1rem;
	color: #fff;
	letter-spacing: 0.2px;
}

/* =========================
	PARAGRAPHS
========================= */

.site-footer p {
	margin: 0 0 1rem;
	color: #989898;
	line-height: 1.2;
	max-width: 42ch;
	font-weight: 300;
}

/* =========================
	LINK BASE STYLE
========================= */

.site-footer a {
	color: #fff;
	text-decoration: none;
	transition: color 180ms ease, opacity 180ms ease;
}

.site-footer a:hover {
	color: var(--color-primary, #E9212D);
}

/* =========================
	CONTACT LINKS (ICON + TEXT)
========================= */

.site-footer__contacts__item a {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 15px;
	font-weight: 300;
}

/* SVG alignment safety */
.site-footer__contacts svg {
	flex: 0 0 auto;
}

/* =========================
	SOCIAL LINKS
========================= */

.site-footer .social-link {
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;

	background: #111;
	transition: background 180ms ease, transform 180ms ease;
}

.site-footer .social-link:hover {
	background: var(--color-primary, #E9212D);
	xtransform: translateY(-2px);
}
.site-footer .social-link svg {
	width: 36px;
	height: 36px;
	display: block;
}
.site-footer .social-link svg path {
	fill: #fff !important;
}

/* =========================
	NAVIGATION LIST
========================= */
.footer-col--nav {
	display: flex;
	flex-direction: column;
	height: 100%;
}


.footer-nav {
	list-style: none;
	padding: 0;
	margin: 0;
	xmargin-bottom: auto;
	display: flex;
	flex-direction: row;
	gap: 0.5rem;
}

@media (min-width: 1000px) {
	.footer-nav {
		gap: 0.5rem 0;
	}
	.footer-nav li:not(:last-child)::after {
		background-color: #E9212D;
		content: '';
		display: inline-block;
		height: 1rem;
		margin: 0 .5rem;
		width: 1px;
		top: 3px;
		position: relative;
	}
}
.footer-nav a {
	font-size: 16px;
	font-weight: 300;
	color: #fff;
}
.footer-nav a:hover {
	color: var(--color-primary, #E9212D);
}

/* =========================
	LOGO BLOCK
========================= */

.footer-logo {
	margin-top: auto;
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}

.footer-logo img {
	max-width: 180px;
	height: auto;
	display: block;
	margin-top:1rem;
}

/* =========================
	BUTTONS (FOOTER ONLY)
========================= */

.site-footer .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	align-self: center;

	margin-top: 1rem;

	padding: .375rem .75rem;

	background: var(--color-primary);
	color: #fff;

    letter-spacing: 0px;
    text-transform: uppercase;
	font-family: "Barlow Condensed", sans-serif;
    font-weight: 500;
	text-decoration: none;

	transition: background 200ms ease;
}
.site-footer__social {
	line-height: 0
}
.site-footer__social .btn {
	padding: .1rem;
}

.site-footer .btn-primary {
	background: var(--color-primary, #E9212D);
	border: none;
}

.site-footer .btn-primary:hover {
	filter: brightness(0.95);
}

/* =========================
	SPACING RESET (IMPORTANT)
========================= */

.site-footer * {
	box-sizing: border-box;
}

.footer-col > *:last-child {
	margin-bottom: 0;
}


.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.site-footer__bottom-bar {
	background: #0b0b0b;
	color: rgba(255,255,255,0.6);
	font-size: 0.85rem;
	padding: 1.25rem 0;
	margin-top: 2rem;
}

.footer-bottom {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.5rem;
	align-items: center;
	justify-content: space-between;
	text-align: center;
}

/* copyright line */
.footer-bottom__copyright {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	line-height: 1.4;
}

/* separator dot */
.footer-bottom__sep {
	opacity: 0.4;
}

/* right/meta area */
.footer-bottom__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: center;
	justify-content: center;
}

/* links */
.footer-bottom__link {
	color: rgba(255,255,255,0.6);
	text-decoration: none;
	cursor: pointer;
}

.footer-bottom__link:hover {
	color: #fff;
}

/* translate widget spacing */
.footer-bottom__translate {
	display: inline-flex;
	align-items: center;
}

/* mobile stacking */
@media (max-width: 768px) {
	.footer-bottom {
		flex-direction: column;
		text-align: center;
	}
}




.loading {
	display:none;
	position:fixed;
	z-index:1000;
	top:0;
	left:0;
	height:100%;
	width:100%;
	background-color:rgba(255,255,255, 0.5) ;
	background-image:url('/graphics/ajax-loader.gif');
	background-position:50% 40%;
	background-repeat:no-repeat;
	opacity:1;
	/* -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 100); for IE8 which creates an "Unexpected CSS token" warning */
	filter:alpha(opacity = 100)};
}
.to-the-top {}

.js-newsletter-subscription-btn {
	display:block;
}
.social-link {
	border-bottom-width:0 !important;
	margin-bottom: 0 !important;
	width:38px !important;
	height:38px !important;
}
@media (max-width: 1200px){
	.js-newsletter-subscription-btn {
 		width:300px;
		margin:0 auto
	}
}













