:root {
	--text: #262626;
	--link1: #262626;
	--link2: #1a0dab;
	--link3: #3248a8;
	--link4: #6c757d;
	--hover: #848c91;
	--txtDefaul: #222222;
	--txtLink: #1c2db2;

	--menuBkg: #f2f2f2;
	--menuDef: #848c91;
	--menuSpec1: #c81c4d;
	--menuSpec2: #009fe2;
	--menuSpec3: #73b436;
	--homeBkg: #0c3274;
	--header: #cbd3dd;
	--footer: #283646;
	--searchBkg: #e8ecf0;

	--line: #f0f0f0;

	--darkblue: #233a5a;
	--greyblue: #a2a9b9;
	--lightblue: #e9ecef;
	--error: #df6c6c;
	--success: #72b972;
}

/* ------------------ common ------------------ */
/*
@font-face {
  font-family: "SamoSansPro-Black";
  src: url("./fonts/SamoSansPro-Black.eot");
  src: url("./fonts/SamoSansPro-Black.eot?#iefix") format("embedded-opentype"),
    url("./fonts/SamoSansPro-Black.otf") format("opentype"),
    url("./fonts/SamoSansPro-Black.svg") format("svg"),
    url("./fonts/SamoSansPro-Black.ttf") format("truetype"),
    url("./fonts/SamoSansPro-Black.woff") format("woff"),
    url("./fonts/SamoSansPro-Black.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}
html {font-family: 'SamoSansPro-Black';}
*/


/* common font-family by layout from /scripts/_css/open-sans.css */
html {
	font-size: 16px;
}

body {
	line-height: 1.5;
	font-weight: 400;
	font-synthesis: none;
	font-family: 'Open Sans', sans-serif;
	color: var(--text);
	/* -webkit-font-smoothing: antialiased; */
	/* -moz-osx-font-smoothing: grayscale;  */
}

a {
	color: var(--link1);
}

a.nav-link {
	color: var(--txtDefaul);
}

div a {
	color: var(--txtLink);
}

*:active {
	outline: none !important;
}

a:hover {
	text-decoration: none;
}

button:active,
button:focus,
input:active,
input:focus {
	outline: none;
}

.a3m_debug {
	background: #eee;
	bottom: 10px;
	left: 0;
	margin: 0 auto;
	position: fixed;
	width: 200px;
	z-index: 2;
}

.space {
	margin-bottom: 10px;
	display: block;
}

.table-responsive {
	border: none;
}

.hide,
.hidden {
	display: none;
}

/* icons */
.navbar-nav-svg {
	color: #262626;
	display: inline-block;
	height: .925rem;
	vertical-align: text-top;
	width: .925rem;
}

/* icons */
.text-svg {
	color: #262626;
	display: inline-block;
	height: 1.225rem;
	vertical-align: text-top;
	width: 1.225rem;
}


.red {
	background: rgba(200, 28, 77, .85);
}

.red.solid {
	background: #9b0a34;
}

.blue {
	background: rgba(0, 150, 226, .85);
}

.blue.solid {
	background: #0c3274;
}

.green {
	background: rgba(115, 180, 54, .85);
}

.green.solid {
	background: #73b436;
}

/* ------------------ bootstrap ------------------ */

/* .container {
	margin: 0 auto;
	max-width: 1170px;
} */

.row {
	margin: 0 auto;
}

.a3m_control_lang {
	display: none;
}

/* ------------------ header ------------------ */

#header {
	z-index: 10;
}

#header ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#header .header-top {
	transition: 0.2s ease-out;
}

#header .navbar-brand {
	padding: 12px 0;
}

#header .header-top-left {
	margin: 12px 0;
	padding: 0;
	text-align: left;
}

#header .header-top-left ul li {
	display: inline-block;
}

#header .header-top-left ul li a {
	color: #333;
	display: block;
	padding: 0 12px 0 0;
	text-transform: uppercase;
}

#header .header-top-right {
	margin: 12px 0;
	padding: 0;
	text-align: right;
}

#header .header-top-right a {
	color: #333;
}

#header .header-top-right span {
	display: inline-block;
	font-size: 13px;
	padding: 0 12px 0 0;
}

#header .header-top-right .nav-item {
	position: relative;
	top: -2px;
}

#header #scroll {
	background-image: url(gfx/template/topmenu.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: none;
	position: absolute;
	top: 83px;
	right: 0;
	height: 20px;
	width: 40px;
}

#header .header-bot {
	background: var(--darkblue);
	margin: 0 0 5px 0;
	padding: 10px 0;
}

#header .header-bot-left {
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	padding: 32px 48px;
	text-align: left;
	text-transform: uppercase;
}

#header .header-bot-mid {
	text-align: center;
}

#header .header-bot-mid img {
	padding: 10px 0;
}

#header .header-bot-right {
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	padding: 32px 48px;
	text-align: right;
	text-transform: uppercase;
}

#header .header-bot-right span {
	margin: 0 0 0 24px;
}

#kategorie,
#lupa,
#koszyk {
	cursor: pointer;
	position: relative;
}

#koszyk span.badge {
	background: #fbaf00;
	left: -5px;
	position: absolute;
	top: 15px;
}

#lupa img:hover,
#koszyk img:hover {
	transition: 250ms;
	transform: scale(1.3);
}


@media (max-width: 992px) {
	header {
		background-image: none;
		align-items: initial;
		height: 3.45rem;
	}

	header .navbar-brand svg {
		height: 3.45rem;
	}

	header .navi {
		background: #fff;
	}

	header .navbar-nav-scroll,
	header #aside {
		transition: right ease-in-out 350ms;
		position: fixed;
		right: -250px;
		top: 0;
		width: 250px;
	}

	header #toggle {
		display: inherit;
		position: fixed;
		right: 3.4rem;
		top: 0px;
		transition: all linear 350ms;
		z-index: 1;
	}

	/*  open toggle */
	header.toggle-open .navbar-nav-scroll {
		right: 0;
		z-index: 2;
	}

	header.toggle-open #aside {
		background: #f2f2f2;
		padding: 0 10px;
		right: 0;
		z-index: 3;
	}

	header.toggle-open #toggle {
		right: 250px;
	}
}

@media (min-width: 1200px) {
	header .navbar-nav-scroll {
		width: 1140px;
	}
}





/* ------------------ menu-top ------------------ */
.menu-bar .menu ul,
.menu-bar .menu ul li {
	list-style: none;
	margin: 0;
	padding: 0;
}

.menu-bar .menu ul.ul-nav {
	margin: 0 auto;
	width: fit-content;
}

.menu-bar .menu .ul-nav>li {
	float: none;
	margin: 0 0 26px 0;
	padding: 0 20px;
	text-align: left;
}

.menu-bar .menu .ul-nav>li>a {
	color: rgba(255, 255, 255, 0.95);
	display: block;
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0.5px;
	padding: 0 0 10px 0;
}

.menu-bar .menu .ul-nav>li>a:after {
	background: #79889f;
	content: "";
	display: block;
	height: 1px;
	width: 120px;
}

.menu-bar .menu .ul-nav li .ul-second li a {
	color: rgba(255, 255, 255, 0.75);
	display: block;
	font-size: 14px;
	font-weight: 100;
	letter-spacing: 0.5px;
	padding: 0;
	text-transform: lowercase;
}



/* ------------------ menu, search, cart ------------------ */

.invisible {
	position: relative;
}

.menu-bar {
	background: linear-gradient(var(--darkblue), #4e627d);
	border-top: 2px solid #fff;
	overflow: hidden;
	padding: 30px 0 50px 0;
	position: absolute;
	text-align: center;
	top: -20px;
	visibility: visible;
	width: 100%;
	z-index: 999;
}

.menu-bar.min {
	height: 0;
	visibility: hidden;
}

.search-bar {
	background: linear-gradient(var(--darkblue), #4e627d);
	border-top: 2px solid #fff;
	overflow: hidden;
	padding: 50px 0 50px 0;
	position: absolute;
	text-align: center;
	top: -20px;
	visibility: visible;
	width: 100%;
	z-index: 999;
}

.search-bar.min {
	height: 0;
	visibility: hidden;
}

.search-bar .holder {
	margin: 0;
	position: relative;
}

.search-bar input#search {
	border-radius: 4px;
	border: 1px solid #ddd;
	margin: 15px auto;
	font-size: 15px;
	padding: 9px 13px;
	width: 100%;
}

.search-bar #confSearch {
	background-color: #ccc;
	border-radius: 0 4px 4px 0;
	border: 0px none;
	cursor: pointer;
	margin-top: 15px;
	min-width: 40px;
	position: absolute;
	right: 0;
	top: 0;
	height: 37px;
	width: 5%;
	z-index: 10;
}

.cart-bar {
	background: var(--lightblue);
	border-top: 2px solid #fff;
	overflow: hidden;
	padding: 50px 0 50px 0;
	position: absolute;
	text-align: center;
	top: -20px;
	visibility: visible;
	width: 100%;
	z-index: 999;
}

.cart-bar.min {
	height: 0;
	visibility: hidden;
}


/* ------------------ cart ------------------ */

#cart .cart {
	background: #fff;
	border-radius: 10px;
	padding: 20px 0;
}

#cart .cart:empty {
	display: none;
}

#cart .products {
	display: flex;
	flex-wrap: wrap;
}

#cart .cart-item {
	border-right: 1px solid #c5c5c5;
	align-items: start;
	display: flex;
	margin: 10px;
	padding: 10px 10px 40px 10px;
	position: relative;
	width: calc(33% - 20px);
}

#cart .cart-item:nth-child(3n+3) {
	border-right: none;
}

#cart .left img {
	width: 52px;
	height: 74px;
}

#cart .right {
	margin: 0px 0 0 15px;
	text-align: left;
}

#cart .cart-name a {
	color: #444;
	font-size: 18px;
	font-weight: 400;
}

#cart .cart-type {
	color: #888;
	font-size: 13px;
	font-weight: 400;
}

#cart .cart-wariant {
	color: #555;
	font-size: 13px;
	font-style: italic;
	font-weight: 400;
}

#cart .cart-count {
	background: #fbaf00;
	position: absolute;
	left: 0;
	top: 0;
}

#cart button.goTo {
	background: var(--darkblue);
	border: 1px solid transparent;
	border-radius: 5px;
	margin: 5px auto;

}

#cart button.goTo a {
	color: #fff;
	cursor: pointer;
	font-size: 15px;
	font-weight: 300;
	display: block;
	padding: 8px;
	width: 228px;
}


/* ------------------ menu-bot ------------------ */

#footer .menu ul,
#footer .menu ul li {
	list-style: none;
	margin: 0;
	padding: 0;
}

#footer .menu .ul-nav>li>.head-branch {
	color: #444;
	display: block;
	font-size: 22px;
	font-weight: 300;
	padding: 0 0 20px 0;
}

#footer .menu .ul-nav>li:nth-child(2)>.head-branch {
	margin: 40px 0 0 0;
}

#footer .menu .ul-nav li .ul-second li a {
	color: #444;
	display: block;
	font-size: 14px;
	font-weight: 100;
	padding: 0 0 0 15px;
	text-transform: lowercase;
}


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

#footer {
	margin: 16px 0;
}

#footer .footer-top {
	background: #f2f3f7;
	margin: 5px 0;
	padding: 40px 0;
}

#footer .footer-top h3 {
	font-size: 22px;
	font-weight: 300;
	margin: 0 0 20px 0;
	line-height: 1.5em;
}

#footer .footer-top .newsletter {
	margin: 0 0 20px 0;
}

#footer .footer-top .newsletter form {
	position: relative;
}

#footer .footer-top .newsletter small {
	color: #999;
	display: block;
	font-size: 10px;
	line-height: 12px;
	padding: 0 0 20px 0;
}

#footer .footer-top .newsletter input#emailNewsletter {
	border: 1px solid var(--darkblue);
	border-radius: 5px;
	font-size: 14px;
	font-weight: 300;
	padding: 9px 16px;
	width: 100%;
}

#footer .footer-top .newsletter button#confNewsletter {
	background: var(--darkblue);
	border: none;
	border-radius: 0;
	border-bottom-right-radius: 5px;
	border-top-right-radius: 5px;
	color: #fff;
	cursor: pointer;
	height: 40px;
	position: absolute;
	right: 0px;
	top: 0px;
	width: 60px;
}

#footer .footer-top .newsletter button#confNewsletter:hover img {
	transition: 250ms;
	transform: scale(1.3);
}

#footer .footer-top .newsletter #emailReturn {
	color: #ff3434;
	display: block;
	font-size: 12px;
	padding: 10px;
}

#footer .footer-top .newsletter #emailReturn.success {
	color: #666;
}

#footer .footer-bot {
	background: #f2f3f7;
	margin: 5px 0;
	padding: 20px 0;
}

#footer .footer-bot .partnership .slider-bot img {
	padding: 20px;
}



/* ------------------ wcag ------------------ */

#wcag {
	display: block;
	position: fixed;
	right: 0;
	top: 4.5rem;
	transition: all ease-in-out 350ms;
	z-index: 1;
}

#wcag.wcag-toolbar-open {
	right: 240px;
}

#wcag .wcag-toolbar-link {
	background: #0c3274;
	color: #fff;
	display: inline-flex;
	flex-direction: column;
	font-size: 200%;
	height: 3.5rem;
	line-height: 0;
	padding: .75rem;
	width: 3.4rem;
}

#wcag .wcag-toolbar-overlay {
	background: #fff;
	border: 1px solid #848c91;
	display: inline-flex;
	position: absolute;
	top: 0;
	width: 240px;
}

.wcag-toolbar-title {
	color: #262626;
	font-weight: bold;
	margin-bottom: 0;
	padding: 1rem;
	text-transform: uppercase;
}

.wcag-tools .nav-link {
	display: block;
	font-size: .875rem;
	font-weight: normal;
	line-height: 1;
	padding: .5rem 1rem;
}

.wcag-toolbar-icon {
	color: #262626;
	margin-right: 0.5rem;
	height: 1rem;
	width: 1rem;
}

.wcag-toolbar-text {
	color: #262626;
	height: 1rem;
}

@media (max-width: 992px) {
	#wcag {
		top: 0;
		display: block;
	}

	/* #wcag .wcag-toolbar-link {
      height: 55px; } */
}








/* ------------------ template ------------------ */

main {
	margin-bottom: 3rem;
}




/* ------------------ card ------------------ */
.card {
	margin: 1rem;
	width: calc(33.3333% - 2rem);
}

.card-img,
.card-img-top {
	object-fit: cover;
	object-position: 50%;
	height: 240px;
}

@media (max-width: 992px) {

	.card-img,
	.card-img-top {
		object-fit: cover;
		object-position: 50%;
	}

	.card {
		width: calc(50% - 2rem);
	}
}

@media (max-width: 768px) {
	.card {
		width: 100%;
	}
}









/* ------------------ cookies ------------------ */

#cookies {
	background: #fff;
	bottom: 0;
	box-shadow: 0 1rem 3rem rgba(0, 0, 0, .2);
	color: #262626;
	font-size: .825rem;
	left: 0;
	margin: 1rem auto;
	padding: 3rem;
	position: fixed;
	right: 0;
	text-align: left;
	max-width: 992px;
	z-index: 1;
}

#cookies .container {
	align-items: center;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}

#cookies a {
	color: #d81f24;
}

#cookies .container p:last-of-type {
	margin-bottom: 0;
}

#cookies #cookiesClose {
	display: block;
	margin-left: 1rem;
	line-height: 1;
	padding: 1rem;
}

#cookies .cookies-svg {
	color: #262626;
	display: inline-block;
	height: 1.525rem;
	vertical-align: text-top;
	width: 1.525rem;
}



/* ------------------ respo 996px ------------------ */

@media (max-width: 996px) {

	#header .header-top {
		font-size: 12px;
	}

	.menu-bar .menu ul.ul-nav {
		margin: 0;
	}

	.menu-bar .menu .ul-nav>li {
		margin: 0 0 26px 0;
	}

}

/* ------------------ respo 768px ------------------ */

@media (max-width: 767px) {

	#header .header-top-left,
	#header .header-top-right {
		padding: 0;
		text-align: center;
	}

	#header .header-bot-left {
		display: none;
	}

	#header .header-bot-right {
		padding: 5px;
		text-align: center;
	}

	#header .header-bot-right #copy_kategorie {
		cursor: pointer;
		display: inline-block !important;
	}

	#header .header-bot-right #copy_kategorie span {
		margin: 0;
	}

	#lupa img:hover,
	#koszyk img:hover {
		transform: scale(1);
	}

	#cart .cart-item {
		border: none;
		width: 100%;
	}

	.menu-bar .menu .ul-nav>li {
		display: block;
		margin: 0 0 28px 0;
	}

	#footer .menu .ul-nav>li>.head-branch {
		margin: 40px 0 0 0;
	}

	#footer .footer-top h3 {
		margin: 40px 0 20px 0;
	}

}

/* ------------------ respo 580px ------------------ */

@media (max-width: 580px) {
	#header .header-top {
		background: #fff;
		position: absolute;
		top: -84px;
		z-index: 999;
	}

	#header .header-top.onHalf {
		top: -37px;
	}

	#header .header-top.onBottom {
		top: 0;
	}

	#header #scroll {
		display: block;
	}

	#header .header-bot-right span.text {
		display: none;
	}
}

/* ------------------ respo 375px ------------------ */

@media (max-width: 375px) {

	#header .header-top {
		font-size: 10px !important;
	}

	#header .header-bot-right span {
		margin: 0 15px;
	}

	.lista .header h2 {
		font-size: 14px !important;
	}

	.lista.lista-3 .header .zakladki span {
		font-size: 10px !important;
	}

}


/* ------------------ animations ------------------ */

.jello-horizontal {
	-webkit-animation: jello-horizontal .9s both;
	animation: jello-horizontal .9s both
}

@-webkit-keyframes jello-horizontal {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1)
	}

	30% {
		-webkit-transform: scale3d(1.25, .75, 1);
		transform: scale3d(1.25, .75, 1)
	}

	40% {
		-webkit-transform: scale3d(.75, 1.25, 1);
		transform: scale3d(.75, 1.25, 1)
	}

	50% {
		-webkit-transform: scale3d(1.15, .85, 1);
		transform: scale3d(1.15, .85, 1)
	}

	65% {
		-webkit-transform: scale3d(.95, 1.05, 1);
		transform: scale3d(.95, 1.05, 1)
	}

	75% {
		-webkit-transform: scale3d(1.05, .95, 1);
		transform: scale3d(1.05, .95, 1)
	}

	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1)
	}
}

@keyframes jello-horizontal {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1)
	}

	30% {
		-webkit-transform: scale3d(1.25, .75, 1);
		transform: scale3d(1.25, .75, 1)
	}

	40% {
		-webkit-transform: scale3d(.75, 1.25, 1);
		transform: scale3d(.75, 1.25, 1)
	}

	50% {
		-webkit-transform: scale3d(1.15, .85, 1);
		transform: scale3d(1.15, .85, 1)
	}

	65% {
		-webkit-transform: scale3d(.95, 1.05, 1);
		transform: scale3d(.95, 1.05, 1)
	}

	75% {
		-webkit-transform: scale3d(1.05, .95, 1);
		transform: scale3d(1.05, .95, 1)
	}

	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1)
	}
}