/*
		StudioFabryka.pl
		wordpress theme for Techem
		2023-09
*/

:root, [data-bs-theme=light] {
	--font: 'General Sans', sans-serif;

	/* COLORS */
	--Primary: hsl(29, 89%, 58%);
	--Primary-light: hsl(29, 89%, 68%);
	--Primary-dark: hsl(29, 89%, 48%);
	--bs-link-color: hsl(29, 89%, 58%);
  --bs-link-color-rgb: 243, 145, 53;
	--bs-link-hover-color-rgb: 231, 119, 13;
	--bs-light-rgb: 239,241,245;
	--bs-primary-rgb: 170, 173, 175;

	/* SIZES */
	--bs-nav-link-font-size: 1rem;
	--bs-body-line-height: 1.69em;

	--xxl-padding: 6.25rem;
	--xl-padding: calc(var(--xxl-padding) / 2);

}

a {
	text-decoration: none;
}

.py-xxl {padding: var(--xxl-padding) 0;}
.pt-xxl {padding-top: var(--xxl-padding);}
.pb-xxl {padding-bottom: var(--xxl-padding);}

.py-xl {padding: var(--xl-padding) 0;}
.pt-xl {padding-top: var(--xl-padding);}
.pb-xl {padding-bottom: var(--xl-padding);}

.my-xxl {margin: var(--xxl-padding) 0;}
.mt-xxl {margin-top: var(--xxl-padding);}
.mb-xxl {margin-bottom: var(--xxl-padding);}

.my-xl {margin: var(--xl-padding) 0;}
.mt-xl {margin-top: var(--xl-padding);}
.mb-xl {margin-bottom: var(--xl-padding);}

.grid-row.row {
	--bs-gutter-y: var(--bs-gutter-x);
	--bs-gutter-x: 3rem;

	margin-right: calc(-.5 * var(--bs-gutter-x));
	margin-left: calc(-.5 * var(--bs-gutter-x));
}

body {
	--bs-body-font-family: var(--font);
	--bs-body-font-size: 1rem;
	color: hsl(233 84% 10%);
}

.btn {
    --bs-btn-padding-x: 1.875rem;
    --bs-btn-padding-y: .875rem;
    --bs-btn-font-family: var(--font);
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: bold;
}

.btn-primary {
    --bs-btn-bg: var(--Primary);
    --bs-btn-border-color: var(--Primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--Primary-light);
    --bs-btn-hover-border-color: var(--Primary-light);
    --bs-btn-focus-shadow-rgb: 49,132,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--Primary-light);
    --bs-btn-active-border-color: var(--Primary-light);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--Primary);
    --bs-btn-disabled-border-color: var(--Primary);
}

.btn-secondary {
    --bs-btn-color: black;
    --bs-btn-bg: #F1F2F6;
    --bs-btn-border-color: #F1F2F6;
    --bs-btn-hover-color: var(--Primary);
    --bs-btn-hover-bg: #e3e5ec;
    --bs-btn-hover-border-color: #e3e5ec;
    --bs-btn-focus-shadow-rgb: 130,138,145;
    --bs-btn-active-color: var(--Primary);
    --bs-btn-active-bg: #e3e5ec;
    --bs-btn-active-border-color: #e3e5ec;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #F1F2F6;
    --bs-btn-disabled-border-color: #F1F2F6;
}

h1, .h1 {font-size: clamp(2.5rem, 5vw, 4.735rem);}
h2, .h2 {font-size: clamp(2rem, 4vw, 3.551875rem);}
h3, .h3 {font-size: clamp(1.85rem, 3.5vw, 2.664375rem);}
h4, .h4 {font-size: clamp(1.55rem, 2.5vw, 1.99875rem);}
h5, .h5 {font-size: clamp(1.3rem, 2vw, 1.499375rem);}
h6, .h6 {font-size: clamp(.875rem, 1.5vw, 1.125rem);}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	margin-bottom: 1rem;
}

.lead {
	line-height: 1.69;
	font-size: 1.499375rem;
}

.text-muted {
    --bs-text-opacity: .5;
	opacity: var(--bs-text-opacity);
    color: var(--Primary-dark) !important;
}


@media screen and (min-width: 1536px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
		max-width: 1470px;
	}
}

.container-fluid {
	width: 1700px;
	max-width: 100%;
}

.navbar {
	z-index: 9999;
	--bs-navbar-brand-padding-y: 0;
	--bs-navbar-padding-y: 1.875rem;

	transition: all 200ms;
}

.navbar-nav {
	gap: clamp(1rem, 2vw, 3rem);
}

li:hover > .dropdown-menu {
	opacity: 1;
	display: block;
}

.dropdown-menu .dropdown-menu {
	top: 0;
	left: 100%;
}

@media screen and (max-width: 1199px) {
	body {
		--bs-body-font-size: 1rem;
	}

	.nav-link {
		font-size: var(--bs-body-font-size);
	}

	.navbar-nav {
		gap: clamp(.875rem, 1vw, 3rem);
	}
}

.affix {
	box-shadow: 0 0 2rem hsl(0 0% 0% / .1);
	--bs-navbar-padding-y: 1rem;
}

.navbar-brand img {
	display: block;
	height: 78px;
	transition: all 200ms;
}

.affix .navbar-brand img {
	height: 50px;
}



.dropdown-menu {
	--bs-dropdown-link-hover-color: white;
	--bs-dropdown-link-hover-bg: var(--Primary);
	--bs-dropdown-link-active-color: #fff;
	--bs-dropdown-link-active-bg: var(--Primary);

	a {transition: color 200ms, background-color 200ms;}
}

.navbar-nav .nav-link {

	&.active,
	&.show,
	&:hover,
	&:focus {
		color: var(--Primary);
	}
}

.navbar-nav .active > a {
	color: var(--Primary);

}


header .swiper-slide .h2 {
	color: white;
	margin-top: 0;
	margin-bottom: 0;
	margin-left: clamp(1rem, 4vw, 7.5rem);
	max-width: 45%;
	font-size: clamp(1rem, 4vw, 3.551875rem)
}




.box {
	color: black;
	text-decoration: none;
	overflow: hidden;
	transition: color 200ms;
}

.box:hover {
	color: var(--Primary);
}

.box .img-fluid {
	transition: transform 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
}

.box:hover .img-fluid {
	transform: scale(1.05);
}

.box img[src*="svg"] {
	transition: transform 200ms;
}

.box:hover img[src*="svg"] {
	transform: rotate(45deg);
}

#kategorie .h5 {
	margin-bottom: 0;
}

#kategorie .img-fluid {
	mix-blend-mode:darken;
}



#marki img {
	mix-blend-mode: multiply;
}

.card {
    --bs-card-spacer-y: 1rem;
    --bs-card-spacer-x: 0;
}

.card-body {
	padding-bottom: 0;
}

.card-title a {
	text-decoration: none;
	color: var(--Primary-dark);
}

.card small {font-size: .875rem;}


#techem .iso {
	bottom: 2rem;
	right: 2rem;
	z-index: 20;
}

.grey-box {
	color: var(--Primary-dark);
	text-decoration: none;
}

.grey-box-icon {
	background-color: hsl(0 0% 0% / .05);
}



.katalog strong {
	display: block;
	line-height: 1.4;
	text-align: center;
}


.grupa-techem-link {
	transform: all 200ms;
}

.grupa-techem-link-img {
	mix-blend-mode: darken;
}


footer {
	margin-top: var(--xxl-padding);
	padding: 0 0 6.25rem;
	color: white;
}

/* footer img {
	filter: grayscale(1);
} */

footer a {
	color: white;
	text-decoration: none;
}

footer a:hover {
	opacity: .7;
}

footer .bg-primary {
	transform: translateY(-50%);
}

@media screen and (max-width: 599px) {
	footer .bg-primary {
		margin-top: 100px;
	}
}

footer .bg-primary .btn-primary {
	background-color: hsl(0 0% 100% / .2);
	white-space: nowrap;
	border: 0;
}

footer .bg-primary .btn-primary:hover {
	background-color: hsl(0 0% 100% / .3);
	border: 0;
}

footer .text-muted {
	color: white !important;
}

.madeby {
	display: flex;
	align-items: center;
	gap: 0.25rem;
}

.madeby small {
	font-weight: 300;
	font-size: 0.65rem;
}



/* PODSTRONY */

.page-template-template-product #main .wp-block-post-excerpt {display: none !important;}

header.bg-light h3 {
	font-weight: 400 !important;
	color: var(--bs-dark);
}

.breadcrumbs {
	padding: 3.75rem 0;
	font-size: 0.9375rem;
}

.breadcrumbs a {
	color: black;
	text-decoration: none;
}

.breadcrumbs a:hover {
	color: var(--Primary);
}

.breadcrumbs .current-item {
	opacity: .5;
}



.pagination {
	font-size: 1.3125rem;
}

.pagination a {
	text-decoration: none;
}

.pagination .nav-links {
	display: flex;
	gap: 1rem;
}


aside .nav {
	padding-right: 3rem;
}

aside .nav-link {
	color: black;
	padding-inline: 0;
	border-top: 1px solid var(--Light, #F1F2F6);
}

aside .nav-item:last-child .nav-link {
	border-bottom: 1px solid var(--Light, #F1F2F6);
}

aside .active .nav-link {
	color: var(--Primary);
}

.card.horizontal .card-body {
	padding-top: 0;
}

.product-link {
	text-decoration: none;
	color: black;
	transition: all 200ms;
}

.product-link img {
	transition: transform 200ms;
}

.product-link:hover img {
	transform: rotate(45deg);
}

.product-link:hover {
	background-color: var(--Primary) !important;
	color: white;
}

#lead p {
	font-size: 1.33278rem;
}

.wp-block-gallery {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}

.wp-block-gallery.wp-block-gallery-1 {
	--wp--style--unstable-gallery-gap: 30px!important;
    gap: 30px!important;
}

.wp-block-gallery.has-nested-images figure.wp-block-image img {
	border: 1px solid rgb(var(--bs-light-rgb));
}

.wp-block-table table th,
.wp-block-table table td {
	vertical-align: top;
	line-height: 1.3;
	padding: 1.25em;
	font-size: .915rem;
}

.wp-block-table table th {
	background-color: var(--Primary);
	color: white;
	border: 0;
}

.wp-block-table table td {
	border: 0;
	border-bottom: 1px solid rgb(var(--bs-light-rgb));
}

.wp-block-table thead {border: 0;}

.wp-block-table tbody tr:nth-child(even) {
    background-color: rgb(var(--bs-light-rgb));
}

.wp-block-table tbody tr:nth-child(odd) {
    background-color: white;
}

.wp-block-table ul {
	margin-bottom: 0;
}

.wp-block-table td li + li {
    margin-top: 0.25em;
}

.wp-block-table ul.tags {
    padding: 0;
	margin-bottom: -0.25em;
}

.wp-block-table ul+p {
	margin-top: 1rem;
}

.wp-block-table kbd, ul.tags li {
	display: inline-block;
    padding: .25rem .5rem;
    font-size: 1em;
	--bs-body-font-family: var(--font);
	color: hsl(233 84% 10%);
	border: 1px solid #00000018;
    border-radius: .25rem;
	background: none;
	margin-top: 0px!important;
	margin-bottom: 0.25em;
}

.wp-block-media-text {
	margin: 6rem 0;
	gap: 6rem;
}

.wp-block-media-text .wp-block-media-text__content {
	padding: 6rem 0
}

.wp-block-media-text__media {
border-radius: var(--bs-border-radius-lg)!important;
}


.page-id-38 .wpcf7-form {
	padding: clamp(1rem, 3vw, 3rem);
	background-color: rgb(var(--bs-light-rgb));
	border-radius: .5rem;
	margin-top: 4rem;
}

.wpcf7-spinner {display: none;}


.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	border: 0;
	color: white;
	width: 100%;
	padding: 0.5em 1em;
	background-color: hsl(0 100% 39%);
	font-weight: bold;
	text-align: center;
	border-radius: .25rem;
}

.wpcf7-not-valid {
	border-color: red;
}

main img {
	border-radius: .5rem;
}

.page:not(.home) header .attachment-post-thumbnail {
	height: 300px;
	width: 100%;
	object-fit: contain;
}

.page header img:only-child {
	margin-inline: auto;
}

/* PLIKI DO POBRANIA */


.wp-block-file:not(.wp-block-file+.wp-block-file) {
	margin-top: var(--xl-padding) !important;
}

.wp-block-file {
	background-color: rgb(var(--bs-light-rgb));
	border-radius: .25rem;
	padding: 1em 1.5em;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	transition: all 200ms;
}

.wp-block-file a:not(.wp-element-button) {
	text-decoration: none;
	font-size: 1rem;
	color: var(--Primary-dark);
	transition: color 200ms;
}

.wp-block-file a:not(.wp-element-button):hover {
	color: var(--Primary);
}

.wp-block-file a:empty {display: none;}

.accordion {
	border: 0;
}

.accordion-button {
	font-size: clamp(1.115rem, 2vw, 1.499375rem);
}

.accordion-item {border: 0;}

.accordion-item+.accordion-item {
	border: 0;
	border-top: 1px solid rgb(var(--bs-light-rgb));
}

.accordion-button:not(.collapsed) {
    color: var(--bs-accordion-active-color);
    background-color: transparent;
    box-shadow: none;
}


.inset-0 {inset:0}

#przedstawiciele {
	display: flex;
	align-items: center;
	justify-content: center;
}

.przedstawiciel {
	position: absolute;
}

.przedstawiciel-1 {
	top: 25%;
	left: 0;
}

.przedstawiciel-2 {
	top: 49%;
	left: 0;
}

.przedstawiciel-3 {
	top: 73.5%;
	left: 0;
}

.przedstawiciel-4 {
	top: 42.5%;
	right: .5%;
	text-align: right;
}


.page-id-18 header {display: none;}



/* .card {
	padding: 1.5rem;
	margin-bottom: 2rem;
} */

.card figure img {
	display: block;
	width: 100%;
}


/* FORMS */

.wpcf7-acceptance {
	margin-bottom: 1rem;
	display: inline-block;
}

.wpcf7-acceptance .wpcf7-list-item {
	margin-left: 0;
}

.wpcf7-acceptance label {
	display: flex;
	align-items: flex-start;
	gap: .5em;

	line-height: 1.3;
	font-size: .875rem;
	font-weight: normal;
}



.single-post main {
	min-height: 666px;
	clear: both;
}

#blog .card img,
#news .card img {
	aspect-ratio: 3/2;
	height: auto;
	width: 100%;
	display: block;
	object-fit: cover;
}

.page-template .bg-light .col-lg-7 {
	position: relative;

	&::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 30%;
		height: 100%;
		background-image: linear-gradient(to right, transparent, rgba(var(--bs-light-rgb),var(--bs-bg-opacity)) 80%);
	}
}

#wpcf7-f4395-o1 {
	margin-top: 2rem;
	padding: 2rem;
	background-color: rgb(var(--bs-light-rgb));

	[type="submit"] {
		background-color: var(--Primary);
		color: white;
		border-radius: .5rem;
		padding: 0.5rem 1rem;
		border: 0;
	}
}


.page:not(.produkty-child) {
	header .attachment-post-thumbnail {
		object-fit: contain;
	}
}

.sfsi_wDiv.sfsi_floater_position_bottom-right {
	top: auto !important;
	right: 10px !important;
	bottom: 15px !important;
	position: fixed !important;
	z-index: 111;
}

.wp-block-group-is-layout-flex .wp-block-image {
	flex-shrink: 0;
	max-width: 40%;
}



.pll-parent-menu-item a span {
	display: inline-flex;
	align-items: center;
}




.baner-sklep {
	background-image: url(../img/baner-esklep-bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	min-height: 212px;
	border-radius: .75rem;
	overflow: hidden;
	color: white;
	text-decoration: none;

	&:hover,
	&:focus {
		.baner-text {transform: translateX(-5px);}
		.baner-more {transform: translateX(5px);}
	}
}

.baner-text,
.baner-more {
	transition: transform 300ms cubic-bezier(0.19, 1, 0.22, 1);
}




/* MARK: RWD */

@media (max-width: 1399px) {
	.przedstawiciel-1 {
		top: 23%;
	}

	.przedstawiciel-2 {
		top: 47%;
	}

	.przedstawiciel-3 {
		top: 71.5%;
	}

	.przedstawiciel-4 {
		top: 40.5%;
	}
}

@media (max-width: 1199px) {
	.przedstawiciel-1 {
		top: 22%;
	}

	.przedstawiciel-2 {
		top: 46%;
	}

	.przedstawiciel-3 {
		top: 70.5%;
	}

	.przedstawiciel-4 {
		top: 39.5%;
	}

	baner-sklep {
    background-position: left 35% center;
	}
}


@media (max-width: 991px) {
	#przedstawiciele img.d-block {display: none !important;}

	#przedstawiciele {
		display: block;
	}

	#przedstawiciele .position-absolute,
	.przedstawiciel {
		position: relative !important;
		top: auto;
		left: auto;
		right: auto;
	}

	.przedstawiciel {margin-bottom: 2rem; text-align: left;}

	.grupa-techem-title {
		flex: 100% 0 0;
		min-width: 100%;
		text-align: center;
		font-size: var(--h4) !important;
		margin-bottom: 1rem !important;
		display: block;
	}

	.grupa-techem-widget .col:not(.grupa-techem-title) {
		flex-basis: 33%;
	}
}


@media screen and (max-width: 599px) {
	:root, [data-bs-theme=light] {
		--xxl-padding: 3.125rem;
	}

	.navbar-brand img {
		height: 48px !important;
	}

	.btn {
		--bs-btn-font-size: .875rem;
	}

	.baner-sklep {
		min-height: 130px;
		text-shadow: 0 0 3px black, 0 0 1rem hsl(0 0% 0% / .4);
	}
}

@media screen and (max-width: 991px) {
	.navbar-nav {gap: 0; padding-top: 1rem;}
}