/*!
Theme Name: KlaudynaMarciniakTheme
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: klaudynamarciniaktheme
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

KlaudynaMarciniakTheme is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

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

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	clear: both;
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {
	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}

	/* Nadpisanie reguły display:flex dla naszego rozwijanego menu */
	.main-navigation .menu-list {
		display: block;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: right;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

/* .page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
} */

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
	float: left;
	margin: 0.5em 1em 1em 0;
}

.alignright {
	float: right;
	margin: 0.5em 0 1em 1em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}
---------------------------------------------------------------*/
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Style z motywu Shoper - zaadaptowane dla WordPress
--------------------------------------------------------------*/

/*! CSS Used from: https://unpkg.com/swiper@8/swiper-bundle.min.css ; media=all */
@media all{
.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;}
.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box;}
.swiper-wrapper{transform:translate3d(0px,0,0);}
.swiper-pointer-events{touch-action:pan-y;}
.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;}
.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;}
.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color));}
.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none;}
.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1;}
.swiper-button-prev{left:10px;right:auto;}
.swiper-button-prev:after{content:'prev';}
.swiper-button-next{right:10px;left:auto;}
.swiper-button-next:after{content:'next';}
.swiper-button-lock{display:none;}
.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000;}
}
/* CSS Used from original theme */
.fa::before,.fa::after{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.fa-2x{font-size:2em;}
.fa-search:before{content:"\f002";}
.fa-user:before{content:"\f007";}
.fa-th:before{content:"\f00a";}
.fa-th-list:before{content:"\f00b";}
.fa-times:before{content:"\f00d";}
.fa-align-justify:before{content:"\f039";}
.fa-angle-up:before{content:"\f106";}
body,div,span,img,h1,h3,p,a,em,strong,b,ul,li,fieldset,form,label,button{margin:0;padding:0;border:0;outline:0 none;font-size:100%;background:transparent;}
footer,header,nav{display:block;}
b,strong{font-weight:700;}
img{max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic;}
button,input{margin:0;font-size:100%;vertical-align:middle;max-width:100%;}
button,input{line-height:normal;}
button{-webkit-appearance:button;}
label,button,input[type="checkbox"]{cursor:pointer;}
.left{float:left;}
.right{float:right;}
.relative{position:relative;}
.text-right{text-align:right;}
.center{text-align:center;}
.inline{display:inline;}
.none{display:none!important;}
.px1{display:none;vertical-align:middle;}
.btn{display:inline-block;padding:.35em .85em;margin:0;font-size:1.15em;line-height:1.35;color:#333;text-align:center;vertical-align:middle;cursor:pointer;border:1px solid #b1b1b1;background-color:#d8d8d8;position:relative;text-transform:lowercase;text-decoration:none;}
.btn:hover{-webkit-transition:background-color .3s linear;-moz-transition:background-color .3s linear;-o-transition:background-color .3s linear;transition:background-color .3s linear;color:#fff;background-color:#444;border-color:#444;}
.btn:focus,.btn:active{-webkit-transition:background-color .1s linear;-moz-transition:background-color .1s linear;-o-transition:background-color .1s linear;transition:background-color .1s linear;color:#fff;background-color:#000;border-color:#000;}
.btn.btn-red{background-color:#000;border:1px solid #000;color:#fff;}
.btn.btn-red:hover{background-color:#444;border-color:#444;}
body{font-family:'Open Sans',sans-serif;color:#111;background-color:#fff;font-size:1em;}
a, a:visited{color:#000;text-decoration:none;}
a:hover{color:#000;text-decoration:underline;}
a:hover img{text-decoration:none;}
h1,h3{margin:10px 0 0;font-family:inherit;font-weight:normal;line-height:21px;color:#111;}
h1,h3{line-height:35px;}
h1{font-size:1.4em;}
h3{font-size:1.4em;}
em{font-style:normal;}
ul{margin-left:0;list-style:none;}
ul li{line-height:20px;margin-bottom:0;}
ul.inline>li{display:inline-block;padding-right:5px;padding-left:5px;}
header .login-bar{margin-bottom:10px;}
header .login-bar a{color:#000;}
.logo-bar .link-logo{font-size:2em;}
header .logo-bar .basket{height:44px;line-height:42px;border:1px solid #d8d8d8;margin-left:10px;padding:0 3em 0 1em;background:url("assets/images/ico_arrow_down_small.png") no-repeat 96% 50% #fff;min-width:220px;}
header .logo-bar .basket.empty-basket{background:#fff;}
header .logo-bar .basket>a.count::before{font-family:'rwd-custom';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\e600";font-size:2em;position:relative;top:7px;left:-3px;}
header .logo-bar .basket img{display:none;}
header .logo-bar .basket b{font-weight:normal;}
header .logo-bar .basket .count:hover{text-decoration:none;}
header .logo-bar .search-form{margin-bottom:10px;}
header .logo-bar .search-form .search-input{height:46px;min-height:46px;}
header .logo-bar .search-form .btn{width:46px;height:46px;padding:0;}
header .logo-bar .search-form .btn::before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f002";font-size:1.5em;}
header .logo-bar .search-form .btn span{display:none;}
header .logo-bar .search__container{float:right;max-width:284px;width:100%;}
header .logo-bar .search__input{height:44px;}
header .logo-bar .search .btn{height:46px;}
footer{margin-bottom:10px;padding-bottom:0.5em;}
.container{max-width:1180px;width:100%;margin-right:auto;margin-left:auto;}
.container::before,.container::after{display:table;line-height:0;content:'';}
.container::after{clear:both;}
[class*='s-grid'],[class*='f-grid']{float:left;min-height:1px;margin-left:20px;}
.row::before,.box::before,.product::before,.s-row::before,.row::after,.box::after,.product::after,.s-row::after{display:table;line-height:0;content:'';}
.row::after,.box::after,.product::after,.s-row::after{clear:both;}
.s-row{margin-left:-20px;}
.s-row [class*='s-grid']{margin-left:20px;}
.s-row .s-grid-12{width:1180px;}
.f-row{width:100%;}
.f-row::before,.f-row::after{display:table;content:'';line-height:0;}
.f-row::after{clear:both;}
.f-row [class*='grid']{display:block;float:left;width:100%;min-height:30px;margin-left:2.1276595745%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
.f-row [class*='grid']:first-child{margin-left:0;}
.f-row .f-grid-12{width:100%;}
.flex{display:block;float:left;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
.flex.flex-4{width:25%;}
form{margin:0 0 20px;}
form fieldset{padding:0;margin:0;border:0;}
form input,form button{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-top-right-radius:0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;-moz-border-radius-topright:0;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:0;-moz-border-radius-topleft:0;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:0;-webkit-box-shadow:none;box-shadow:none;font-size:14px;font-weight:normal;line-height:20px;}
form input[type="text"],form input[type="search"]{-webkit-transition:border linear .2s;-moz-transition:border linear .2s;-o-transition:border linear .2s;transition:border linear .2s;-webkit-appearance:none;display:inline-block;height:24px;padding:4px 6px;margin-bottom:4px;font-size:14px;line-height:20px;color:#666;vertical-align:middle;background-color:#fff;border:1px solid #d8d8d8;min-height:35px;}
form input[type="text"]:focus,form input[type="search"]:focus{border-color:rgba(240,220,100,0.8);outline:0;outline:thin rgba(240,220,100,0.8);-webkit-box-shadow:inset 0 1px 1px rgba(240,220,100,0.1),0 0 8px rgba(240,220,100,0.6);-moz-box-shadow:inset 0 1px 1px rgba(240,220,100,0.1),0 0 8px rgba(240,220,100,0.6);box-shadow:inset 0 1px 1px rgba(240,220,100,0.1),0 0 8px rgba(240,220,100,0.6);}
form input[type="text"].short{width:40%!important;min-width:3em;}
.menu{padding:5px 0 0;z-index:10;position:relative;}
.menu .innermenu{height:58px;line-height:58px;position:relative;z-index:10;}
.menu .innermenu .menu-list{overflow:hidden;border-bottom:2px solid #d8d8d8;height:44px;}
.menu .innermenu .menu-list li{float:left;padding:0;line-height:25px;}
.menu .innermenu .menu-list li.current a{color:#000;}
.menu .innermenu .menu-list li h3{font-size:1.4em;margin-bottom:0;line-height:-moz-block-height;}
.menu .innermenu .menu-list li h3 a{/*padding:.3em 1.3em;*/display:contents;position:relative;}
.menu .innermenu .menu-list li h3 a:hover{text-decoration:underline;}
.menu .innermenu .menu-list li.home-link-menu-li{display:none;}
.menu [data-basket-count]{position:relative;}
.menu [data-basket-count]::after{content:attr(data-basket-count);font-family:'Open Sans',sans-serif;display:flex;position:absolute;background-color:#000;color:#fff;justify-content:center;align-content:center;top:0;left:56%;font-size:12px;border-radius:50%;padding:5px 7px 5px 7px;line-height:10px;font-weight:bold;}
.breadcrumbs .innerbreadcrumbs .breadcrumb-home{line-height:27px;}
.breadcrumbs .innerbreadcrumbs .breadcrumb-home img{background:url("assets/images/ico_home.png") no-repeat 0% 50% transparent;display:inline-block;width:27px;height:25px;margin:0 3px 5px 0;background-size:75%;}
.breadcrumbs .innerbreadcrumbs .breadcrumb-home span{display:none;}
.breadcrumbs .path li{line-height:27px;}
.breadcrumbs .path li.bred-1{display:none;}
.breadcrumbs .path li span.raq{font-size:1.2em;margin:0 .6em 0 0;}
.shop_index .breadcrumbs{display:none;}
.box{position:relative;margin:0 0 20px 0;}
.box .innerbox form input{height:40px;min-height:40px;}
.box .boxhead{border-bottom:1px solid #d8d8d8;margin-bottom:0.7em;line-height:40px;}
.box .boxhead>span{font-size:1.4em;line-height:35px;display:block;margin-top:10px;}
.box .f-row{display:block;width:100%;}
.box .product{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-bottom:1px solid #d8d8d8;padding:1em;}
.box .product:last-child{border-bottom:none;}
.box .product .price{margin-bottom:1em;color:#000;}
.box .productname{font-size:1.4em;}
#box_mainproducts.box .boxhead>h1{margin-top:17px;padding-bottom:10px;}
.viewphot .product{margin-top:15px;}
.product{position:relative;}
.product .price em{font-style:normal;font-size:1.4em;line-height:22px;}
.product .basket{margin-bottom:0;}
.product .basket .short{display:none;}
.product .basket .unit{display:none;}
.products.viewphot .product{border:1px solid #d8d8d8;padding:1em;text-align:center;position:relative;height:470px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
.products.viewphot .product .productname{clear:both;display:block;min-height:1em;padding-top:1em;margin-bottom:1em;font-size:1.4em;height:2.05em;overflow:hidden;}
.products.viewphot .product .price{padding-top:1em;color:#000;min-height:1.7em;}
.products.viewphot .product .buttons{padding-top:1em;}
.products.viewphot .product .buttons form{display:inline-block;}
.products.viewphot .product .buttons .quickview{margin:0 0 0 5px;background-color:#6d6a6a;display:inline-block;padding:0 5px;height:30px;line-height:30px;vertical-align:top;}
.products.viewphot .product .buttons .quickview::before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:'\f00e';font-size:1.5em;color:#fff;}
.products.viewphot .product .buttons .quickview span{display:none;}
.products.viewphot .product .prodimage .img-wrap{position:relative;display:inline-block;overflow:hidden;border:0;max-width:100%;}
.products.viewphot .product .prodimage .img-wrap img{max-height:195px;}
.products.viewphot .product .prodimage span{min-height:250px;}
.resetcss em{font-style:italic;}
.resetcss p{margin:1em 0;}
.category-name{float:left;line-height:1em;}
.sort-and-view{text-align:right;float:right;}
.sort-and-view .prodview{display:inline-block;float:right;margin-left:1em;position:relative;top:0.5em;}
.sort-and-view .prodview li.selected a{color:#000;}
.sort-and-view .prodview a{font-size:2.15em;}
.sort-and-view .prodview a:hover{text-decoration:none;}
.product img{width:auto;height:auto;}
.products_extended{display:flex;flex-wrap:wrap;}
.products_extended .product-inner-wrap{display:flex;height:100%;flex-direction:column;}
.products.viewphot.products_extended .product.product_view-extended{height:auto;}
.products.viewphot.products_extended .product.product_view-extended .product__basket{flex:1 0 auto;display:flex;justify-content:space-between;flex-direction:column;}
.products.viewphot.products_extended .product.product_view-extended .price{margin-bottom:0;}
.price__additional-info{margin-bottom:1em;}
@media screen and (max-width:767px){
.products.viewphot.products_extended .product.product_view-extended .product__basket{flex:initial;}
.products_extended .product-inner-wrap{height:auto;}
}
.price-total{display:inline-block;}
.basket-contain{position:absolute;z-index:999;background-color:#fff;display:none;}
.basket-contain .basket-products{padding:1em;border-top:1px solid #d8d8d8;border-left:1px solid #d8d8d8;border-right:1px solid #d8d8d8;}
.basket-contain .basket-summery{background-color:#000;color:#fff;padding:1.3em;}
.basket-contain .basket-summery a{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background-color:#fff;padding:5px 10px;vertical-align:middle;width:18%;text-align:center;display:inline-block;}
.basket-contain .basket-summery a:hover{text-decoration:none;}
.basket-contain .basket-summery .basket-price{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:1.2em;text-align:right;max-width:81%;width:81%;vertical-align:middle;display:inline-block;}
#cookie{background-color:#fcf9a6;position:fixed;bottom:0;width:100%;text-align:center;padding:1em 0;color:#111;z-index:9000;}
#cookie a{text-decoration:underline;}

/* Dodajemy style dla przewiniętego nagłówka, zgodne z oryginałem */
header.row.scrolled {
    box-shadow: 0px 0px 0.625em 0px rgba(0, 0, 0, 0.33);
    padding-bottom: 1em;
    padding-top: 1em;
}

#cookie .close{font-size:1.6em;padding:.4em .6em;cursor:pointer;position:relative;top:0.15em;z-index:5;}
.up{position:fixed;bottom:100px;right:50px;z-index:5;}
.up span{display:none;}
.up .btn{color:#fff;}
.rwd-hide-full{display:none!important;}
@media screen and (max-width:1200px){
.container{width:940px;}
.s-row .s-grid-3{width:220px;}
.s-row .s-grid-12{width:940px;}
}
@media screen and (max-width:767px){
.rwd header{background-image:none;}
.rwd .rwd-show-medium{display:block!important;}
.rwd .container{width:100%;}
.rwd .s-row{margin-left:0;}
.rwd .s-grid-3:not(td),.rwd .s-grid-12:not(td){width:100%;margin-left:0;}
/*
 * POPRAWKA: Resetuje szerokość i marginesy dla wszystkich kolumn siatki na mobile.
 * Dodatkowo resetuje ujemny margines dla listy produktów WooCommerce.
 * Zapewnia to, że zarówno główna treść, jak i sidebar (jeśli jest widoczny)
 * zajmują 100% szerokości i układają się jedna pod drugą.
*/
.rwd .s-row > [class*='s-grid'], .rwd .centercol.s-grid-9 {width: 100% !important; margin-left: 0 !important;}
.rwd .f-row .f-grid-12:not([class*='shipping']):not(td){width:100%;margin-left:0;}
.rwd .flex-4{width:100%;}
.rwd.wrap .main{margin:0 2em;}
.rwd .woocommerce ul.products { margin: 0 !important; } /* Resetuje ujemny margines na mobile */
.rwd.wrap header.row{padding-left:1em;padding-right:1em;}
.rwd .sort-and-view{display:none!important;}
.rwd .breadcrumbs{margin:0 2em;}
.rwd .bottom-footer{margin:0 2em;}
.rwd .innerbreadcrumbs{margin-top:1em;}
.rwd .main .products.viewphot .product .prodimage span{min-height:150px;}
/* POPRAWKA: Centruje kolumny (galeria i podsumowanie) na stronie produktu w wersji mobilnej. */
.single-product .product-main-content {
  justify-content: center !important;
}
/* POPRAWKA: Usuwa prawy margines z kolumny podsumowania produktu na mobile. */
.single-product .product-summary-column {
  margin-right: 0px !important;
  flex: unset !important; /* Resetuje właściwości flexbox dla kolumny podsumowania na mobile */
}
/* POPRAWKA: Resetuje właściwości flexbox dla kolumny galerii na mobile */
.single-product .product-gallery-column {
  flex: unset !important;
}
/* POPRAWKA: Resetuje marginesy dla list w treści na mobile */
.entry-content ul, .entry-content ol {
  margin: 0px !important;
}
/* OSTATECZNA POPRAWKA v5: Style dla dynamicznie tworzonej nakładki wyszukiwania */
@media screen and (max-width: 767px) {
  /* 1. Główny kontener nakładki */
  .km-search-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.98);
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    box-sizing: border-box;
    opacity: 0; /* Domyślnie przezroczysta */
    visibility: hidden; /* Domyślnie ukryta */
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }

  /* 2. Stan widoczności nakładki */
  .km-search-overlay.is-visible {
    opacity: 1;
    visibility: visible;
  }

  /* 3. Formularz wyszukiwania wewnątrz nakładki */
  .km-search-overlay .search-form {
    display: flex;
    width: 90%;
    max-width: 500px;
    height: 50px;
    border: 1px solid #d8d8d8;
    border-radius: 5px;
    overflow: hidden;
  }

  /* 4. Etykieta i pole input */
  .km-search-overlay .search-form label {
    flex-grow: 1;
    display: flex;
  }

  .km-search-overlay .search-form .search-field {
    width: 100%;
    height: 100%;
    border: none;
    padding: 10px 15px;
    font-size: 1.2em;
    background-color: transparent;
  }

  .km-search-overlay .search-form .search-field:focus {
    outline: none;
  }

  /* 5. Przycisk wyszukiwania */
  .km-search-overlay .search-form .search-submit {
    width: 50px;
    height: 100%;
    background-color: #000;
    border: none;
    color: white;
    cursor: pointer;
    flex-shrink: 0;
  }

  /* Dodajemy ikonę lupy do przycisku */
  .km-search-overlay .search-form .search-submit::before {
    font-family: FontAwesome;
    content: "\f002";
    font-size: 1.5em;
  }

  /* 6. Przycisk zamknięcia nakładki */
  .km-search-overlay__close {
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 2.5em;
    color: #333;
    background: none;
    border: none;
    cursor: pointer;
    line-height: 1;
    padding: 0;
  }
}
.rwd .main #box_mainproducts .products .product{height:auto!important;padding:1.4em 0 0;}
.rwd .main #box_mainproducts .products .product .f-row{margin-top:0.2em;}
.rwd .main #box_mainproducts .products.viewphot .product .product-inner-wrap{padding:2em;}
.rwd .main #box_mainproducts .products.viewphot .product .prodimage{width:100%;text-align:center;float:none;}
.rwd .main #box_mainproducts .prodimage{width:40%;display:block;margin-bottom:1em;text-align:left;float:left;}
.rwd .menu .innermenu{height:49px;min-height:49px;line-height:58px;border-top:1px solid #f2f2f2;border-bottom:1px solid #f2f2f2;}
.rwd .menu .innermenu li.flex-4{width:25%;}
.rwd .menu .innermenu li a{display:block;font-size:2.5em;padding:.18em 0;color:#d8d8d8;text-align:center;cursor:pointer;}
.rwd .menu .innermenu li a:hover{text-decoration:none;color:#000;}
.rwd .menu .innermenu li a.fa-align-justify{padding-top:0.27em;}
.rwd .menu .innermenu li a.fa-user{padding-top:0.26em;}
.rwd .innerbreadcrumbs{text-align:left;}
.rwd .innerbreadcrumbs a,.rwd .innerbreadcrumbs ul{display:inline;float:none;}
.rwd .innerbreadcrumbs ul li{display:inline;}
.rwd .innerbreadcrumbs .last{display:none;}
.footer{margin:0 2em;}
}
@media screen and (min-width:768px) and (max-width:979px){
.rwd header{background-image:none;}
.rwd .container{width:700px;}
.rwd .s-row{margin-left:-15px;}
.rwd .s-grid-3{width:225px;}
.rwd .s-grid-12{width:700px;}
.rwd .s-grid-12 .s-grid-3{width:223px;}
.rwd .s-grid-3,.rwd .s-grid-12{margin-left:15px;}
.rwd .tablet{display:none!important;}
.rwd .menu .innermenu li{padding:0 12px;}
.rwd .menu .innermenu li h3{font-size:1.4em;}
.rwd .products.viewphot .product .prodimage span{min-height:190px;}
.rwd .up{display:none;}
.rwd .innerbreadcrumbs{margin-top:1em;}
.rwd form.search-form{float:none;clear:both;width:100%;top:0.6em;position:relative;display:block!important;}
.rwd .menu .innermenu{height:34px;min-height:34px;line-height:34px;border-top:1px solid #d8d8d8;border-bottom:1px solid #d8d8d8;}
.rwd .menu .innermenu li{padding:0;}
.rwd .menu .innermenu li.flex-4{width:25%;}
.rwd .menu .innermenu li a{display:inline-block;padding:.3em 1.3em;position:relative;}
.rwd .menu .innermenu li a:hover{text-decoration:none;color:#000;}
.rwd .menu .innermenu li h3{margin-top:0;font-size:1em;line-height:27px;}
.rwd .menu .innermenu .menu-list{border-bottom:none;}
}
@media screen and (min-width:481px) and (max-width:767px){
.rwd .large{display:none!important;}
.rwd .standard{display:none!important;}
.rwd header{padding:1em 0;}
.rwd header .logo-bar{margin-bottom:10px;}
.rwd header .logo-bar .basket{display:none;}
.rwd header .logo-bar form{display:none;}
.rwd .menu .innermenu li{padding:0 12px;}
.rwd .menu .innermenu li h3{font-size:1.4em;}
.rwd .box{overflow:hidden;}
.rwd .product{position:relative;}
.rwd .product .price span{display:none;}
}
@media screen and (min-width:481px){
.rwd header .login-bar .links{float:right;}
}
@media screen and (max-width:480px){
.rwd .large{display:none!important;}
.rwd .standard{display:none!important;}
.rwd header{padding:1.7em 0 1em;}
.rwd header .login-bar .links{float:none;}
.rwd header .login-bar{text-align:center;}
.rwd header .logo-bar{text-align:center;margin-bottom:10px;}
.rwd header .logo-bar .link-logo{float:none;margin:0 auto;}
.rwd header .logo-bar .basket{display:none;}
.rwd header .logo-bar form{display:none;}
.rwd .menu{border:0;}
.rwd .menu .innermenu li a{color:#d8d8d8;} /* Ta reguła może wymagać dostosowania w zależności od kontekstu */
.rwd .box{margin-left:0;width:100%;}
.rwd .up{display:none;}
}
.icon{font-family:'rwd-custom';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.icon-custom-cart:before{content:"\e600";}
.icon-back:before{content:"\e90a";}
.icon-close:before{content:"\e90b";}
.icon--studio{speak:never;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;letter-spacing:0;-webkit-font-feature-settings:"liga";-moz-font-feature-settings:"liga=1";-moz-font-feature-settings:"liga";-ms-font-feature-settings:"liga" 1;font-feature-settings:"liga";-webkit-font-variant-ligatures:discretionary-ligatures;font-variant-ligatures:discretionary-ligatures;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
#box_mainproducts{--swiper-navigation-size:30px;}
#box_mainproducts .swiper-button-prev{left:-2.0625em;left:calc(-33 / var(--root-size, 16) * 1em);}
#box_mainproducts .swiper-button-next{right:-2.0625em;right:calc(-33 / var(--root-size, 16) * 1em);}
@media (max-width:56.1875em){
.products{--items:3;}
}
@media (max-width:43.6875em){
.products{--items:2;}
}
@media (max-width:32.4375em){
.products{--items:1;}
.products:not(.viewfull),.products.viewphot{margin-left:0;margin-right:0;}
.products:not(.viewfull) .product,.products.viewphot .product{width:calc(100% / var(--items, 5) - (var(--margin, 0) * 2 / var(--font-size, var(--root-size, 16)) * 1em))!important;}
}
.hamburger{padding:15px 15px;display:inline-block;transition-property:opacity,filter;transition-duration:0.15s;transition-timing-function:linear;font:inherit;color:inherit;text-transform:none;background-color:transparent;border:0;margin:0;overflow:visible;}
.hamburger:hover{opacity:.7;}
.hamburger-box{cursor:pointer;width:40px;height:24px;display:inline-block;position:relative;}
.hamburger-inner{display:block;top:50%;margin-top:-2px;}
.hamburger-inner,.hamburger-inner::before,.hamburger-inner::after{width:40px;height:4px;background-color:#000;border-radius:4px;position:absolute;transition-property:transform;transition-duration:0.15s;transition-timing-function:ease;}
.hamburger-inner::before,.hamburger-inner::after{content:"";display:block;}
.hamburger-inner::before{top:-10px;}
.hamburger-inner::after{bottom:-10px;}
.hamburger--squeeze .hamburger-inner{transition-duration:0.075s;transition-timing-function:cubic-bezier(.55, .055, .675, .19);}
.hamburger--squeeze .hamburger-inner:before{transition:top .075s .12s ease,opacity .075s ease;}
.hamburger--squeeze .hamburger-inner:after{transition:bottom .075s .12s ease,transform .075s cubic-bezier(.55, .055, .675, .19);}
input#nav__toggle[type=checkbox]:checked~#page .hamburger--squeeze .hamburger-inner{transform:rotate(45deg);transition-delay:0.12s;transition-timing-function:cubic-bezier(.215, .61, .355, 1);}
input#nav__toggle[type=checkbox]:checked~#page .hamburger--squeeze .hamburger-inner:before{opacity:0;top:0;transition:top .075s ease,opacity .075s .12s ease;}
input#nav__toggle[type=checkbox]:checked~#page .hamburger--squeeze .hamburger-inner:after{bottom:0;transform:rotate(-90deg);transition:bottom .075s ease,transform .075s .12s cubic-bezier(.215, .61, .355, 1);}
#box_mainproducts{--items:4;}
#box_mainproducts .swiper .products{margin-left:0;margin-right:0;}
#box_mainproducts .swiper .products .product{box-sizing:border-box;height:unset;margin-left:0;margin-right:0;}
.r--l-flex{display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;}
.r--l-flex.r--l-flex-hcenter{-webkit-box-pack:center;-moz-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}
.r--l-flex.r--l-flex-vcenter{-webkit-box-align:center;-moz-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;}
.info-message{position:fixed;z-index:10;left:0;top:0;width:100%;padding:10px;background-color:#FFFFFF;border-bottom:1px solid #fb5642;}
.info-message_hidden{display:none;}
.info-message__text{color:#FB5642;}
.search{position:relative;color:#111;}
.search button{font-family:'Open Sans',sans-serif;}
.search *,.search *::after,.search *::before{box-sizing:border-box;}
.search__loader{-webkit-animation:loader-spin 1s infinite ease-in-out;animation:loader-spin 1s infinite ease-in-out;}
.search__btn-search{width:100%;min-height:100%;padding:12px;}
.search__input{-ms-flex:1 1 auto;flex:1 1 auto;}
.search__input[type="search"]{-webkit-appearance:none;appearance:none;border:none;background-color:#fff;-webkit-box-shadow:none;box-shadow:none;padding:15px;margin:0;min-height:100%;width:100%;color:#111;}
.search__input[type="search"]:focus{outline:none;border:none;-webkit-box-shadow:none;box-shadow:none;}
.search__input-area{background-color:#fff;padding:0;padding-left:7.5px;border:1px solid #d8d8d8;border-right:none;}
.search__input-area-item_grow{flex-grow:1;}
.search__content{display:none;position:absolute;left:0;min-width:570px;width:100%;overflow:hidden;-webkit-box-shadow:0 2px 9px 0 rgba(16,47,102,0.16);box-shadow:0 2px 9px 0 rgba(16,47,102,0.16);background-color:#fff;z-index:20;}
.search__loader{width:1em;}
.search__icon{font-size:1em;color:#333;}
.search__icon_size-l{font-size:1.3em;line-height:1em;}
.search .js__search-close-btn{display:none;}
@media screen and (max-width:979px){
.rwd .logo-bar .search{max-width:100%;}
.rwd .logo-bar .search__container{clear:both;min-width:100%;margin-top:15px;}
}
@media screen and (min-width:481px) and (max-width:767px){
.rwd header .logo-bar .search{display:block;max-width:100%;margin-top:30px;}
}
@media screen and (max-width:767px){
.search__content{min-width:100%;max-width:inherit;height:calc(100% - 46px);overflow-y:scroll;max-height:inherit;}
}
@media screen and (max-width:480px){
.rwd header .logo-bar .search{text-align:left;}
.rwd header .logo-bar .search__container{margin-top:0;}
}
body{--min-width:960;--max-width:1920;--min-value:.5;--max-value:1;--value-unit:1em;--responsive-min-width:calc(var(--min-width) / var(--root-size, 16));--responsive-max-width:calc(var(--max-width) / var(--root-size, 16));--responsive:calc(((var(--responsive-min-width) * -1 * ((var(--max-value) - var(--min-value)) / (var(--responsive-max-width) - var(--responsive-min-width))) + var(--min-value)) * var(--value-unit)) + (((var(--max-value) - var(--min-value)) / (var(--responsive-max-width) - var(--responsive-min-width))) * 100vw));font-family:'Montserrat',sans-serif;font-size:1em;font-size:max(1em, var(--responsive));}
.container{--width-container:calc(var(--width-container-default) + 2 * var(--padding-container-default-h));box-sizing:border-box;font-size:1em;padding-left:1em;padding-left:calc(var(--padding-container-default-h, 16) / var(--root-size, 16) * 1em);padding-right:1em;padding-right:calc(var(--padding-container-default-h, 16) / var(--root-size, 16) * 1em);}
.container,.rwd .container{max-width:92.875em;max-width:calc(var(--width-container, 1486) / var(--root-size, 16) * 1em);width:100%;}
.container .container{padding-left:0;padding-right:0;}
.s-row [class*='s-grid']{margin-left:1.25em;margin-left:calc(var(--margin-grid-h, 20) / var(--root-size, 16) * 1em);}
.s-row .s-grid-3{width:calc(25% - 1.25em);}
.s-row .s-grid-12{width:calc(100% - 1.25em);}
img{height:auto;}
.basket-contain{display:none!important;}
header.row{background-color:white;background-image:none;box-shadow:0px 0px .625em 0px rgba(0,0,0,0);border-top:none;padding-bottom:4.1875em;padding-bottom:calc(67 / var(--root-size, 16) * 1em);padding-top:3.25em;padding-top:calc(52 / var(--root-size, 16) * 1em);position:sticky;top:0;transition:var(--transitions-duration, .33s) all;z-index:100;}
body.shop_index>.wrap.rwd{--image-width:1920;--image-height:937;--image-height-min:400;--image-dynamic-height:max(var(--image-height-min, 400) * 1px, max(100vh, var(--image-height, 937) * 100vw / var(--image-width, 1920)));--image-dynamic-margin-offset:2em;--arrow-width:2em;--arrow-height:2em;}
@media (max-width:47.9375em){
body.shop_index>.wrap.rwd{--image-dynamic-margin-offset:6em;}
}
body.shop_index>.wrap.rwd:before{background-position:center;background-size:cover;background-repeat:no-repeat;content:"";display:block;height:var(--image-dynamic-height);position: absolute; top: 0; left: 0; width: 100%; z-index: -1;}
body.shop_index>.wrap.rwd header.row{background-color:transparent;}
body.shop_index.logo-monochrome-effect-enabled>.wrap.rwd header.row:not(.scrolled) .logo-bar .link-logo{filter:invert(1);transition:var(--transitions-duration, .33s) all;}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .login-bar .links a.register:before,body.shop_index>.wrap.rwd header.row:not(.scrolled) .login-bar .links a.login:before,body.shop_index>.wrap.rwd header.row:not(.scrolled) .login-bar .links a.logout:before{filter:invert(1);}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .basket a.count:before{filter:invert(1);}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .logo-bar .search-form .search-input{border-color:white;}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .logo-bar .search-form .btn:before{filter:invert(1);}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .logo-bar .search__input{color:white;}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .logo-bar .search__input::placeholder{color:white;}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .logo-bar .search__icon{color:white;}
body.shop_index>.wrap.rwd header.row:not(.scrolled) .hamburger-inner,
body.shop_index>.wrap.rwd header.row:not(.scrolled) .hamburger-inner:before,
body.shop_index>.wrap.rwd header.row:not(.scrolled) .hamburger-inner:after{background-color:white; transition: background-color var(--transitions-duration, .33s);}
body.shop_index #content {
	padding-top: calc(var(--image-dynamic-height) - var(--image-dynamic-margin-offset, 2em));
}
.wrap.rwd header.row .header-container{display:flex;justify-content:center;position:relative;}
.wrap.rwd header.row:before{display:none;}
.wrap.rwd header.row .logo-bar{align-items:center;display:flex;justify-content:space-between;}
.wrap.rwd header.row .logo-bar:before{display:none;}
.wrap.rwd header.row .logo-bar .link-logo{transform:translateX(-50%);}
.wrap.rwd header.row .logo-bar .link-logo-img img{height:1.670625em;height:calc(53.46 / 32 * 1em);transition:var(--transitions-duration, .33s) all;width:auto;}
.wrap.rwd header.row .login-bar{display:flex;flex-flow:column;justify-content:center;margin-bottom:0;}
.wrap.rwd header.row .login-bar .links{display:inline-block;float:none;line-height:0;}
.wrap.rwd header.row .login-bar .links li{margin-left:.6875em;margin-left:calc(11 / var(--root-size, 16) * 1em);margin-right:.6875em;margin-right:calc(11 / var(--root-size, 16) * 1em);padding:0;}
.wrap.rwd header.row .login-bar .links li:first-of-type{margin-left:0;}
.wrap.rwd header.row .login-bar .links li:last-of-type{margin-right:0;}
.wrap.rwd header.row .login-bar .links a.register span,.wrap.rwd header.row .login-bar .links a.login span{display:none;}
.wrap.rwd header.row .login-bar .links a.register span,.wrap.rwd header.row .login-bar .links a.login span, .wrap.rwd header.row .login-bar .links a.logout span{display:none;}
.wrap.rwd header.row .login-bar .links a.register:before,.wrap.rwd header.row .login-bar .links a.login:before,.wrap.rwd header.row .login-bar .links a.logout:before{background-position:center bottom;background-repeat:no-repeat;background-size:contain;content:"";display:block;flex-shrink:0;height:1.8125em;height:calc(29 / var(--root-size, 16) * 1em);transition:var(--transitions-duration, .33s) all;width:1.625em;width:calc(26 / var(--root-size, 16) * 1em);}
.wrap.rwd header.row .login-bar .links a.register:hover:before,.wrap.rwd header.row .login-bar .links a.login:hover:before,.wrap.rwd header.row .login-bar .links a.logout:hover:before,.wrap.rwd header.row .login-bar .links a.register:focus:before,.wrap.rwd header.row .login-bar .links a.login:focus:before,.wrap.rwd header.row .login-bar .links a.logout:focus:before{filter:brightness(0);}
.wrap.rwd header.row .login-bar .links a.register:before{background-image:url('assets/images/user/register.svg');}
.wrap.rwd header.row .login-bar .links a.login:before{background-image:url('assets/images/user/account.svg');}
.wrap.rwd header.row .login-bar .links a.logout:before{background-image:url('assets/images/user/logout.svg');}
.wrap.rwd header.row .logo-bar .basket{--font-size-basket:8;background:none;border:none;height:unset;left:6.34375em;left:calc(101.5 / var(--root-size, 16) * 1em);margin:0;margin-left:1em;margin-left:calc(var(--padding-container-default-h, 16) / var(--root-size, 16) * 1em);min-width:unset;padding:0;position:absolute;top:50%;transform:translateY(-50%);}
.wrap.rwd header.row .logo-bar .basket.empty-basket a.count span.countlabel{display:none;}
.wrap.rwd header.row .logo-bar .basket a.count{font-family:'Montserrat',sans-serif;position:relative;}
.wrap.rwd header.row .logo-bar .basket a.count:before{background-position:center bottom;background-repeat:no-repeat;background-size:contain;content:"";display:block;flex-shrink:0;height:1.8125em;height:calc(29 / var(--root-size, 16) * 1em);transition:var(--transitions-duration, .33s) all;width:1.625em;width:calc(26 / var(--root-size, 16) * 1em);}
.wrap.rwd header.row .logo-bar .basket a.count:hover:before,.wrap.rwd header.row .logo-bar .basket a.count:focus:before{filter:brightness(0);}
.wrap.rwd header.row .logo-bar .basket a.count:before{background-image:url('assets/images/user/basket.svg');content:"";font-size:inherit;height:1.8125em;height:calc(29 / var(--root-size, 16) * 1em);left:0;top:0;width:1.625em;width:calc(26 / var(--root-size, 16) * 1em);}
.wrap.rwd header.row .logo-bar .basket a.count span.countlabel>span{display:none;}
.wrap.rwd form.search-form{top:0;}
.wrap.rwd header.row .logo-bar .search__container{--font-size-search:11;left:clamp(-4.375em, -8.93617021em + 7.44680851vw, 0em);margin-top:0;min-width:unset;max-width:8.875em;max-width:calc(142 / var(--root-size, 16) * 1em);position:relative;}
.wrap.rwd header.row .logo-bar .search-form{margin-bottom:0;}
.wrap.rwd header.row .logo-bar .search-form .search-input{background-color:transparent;border-color:black;border-style:solid;border-radius:100em;border-width:.0625em;border-width:calc(1 / var(--root-size, 16) * 1em);flex-flow:row-reverse;height:unset;min-height:unset;overflow:hidden;padding-left:0.2em;padding-right:0.75em;transition:var(--transitions-duration, .33s) all;}
.wrap.rwd header.row .logo-bar .search .btn{background-color:transparent;border:none;font-size:1em;height:unset;transform:translateY(.0625em);width:unset;}
.wrap.rwd header.row .logo-bar .search .btn:before{background-position:center bottom;background-repeat:no-repeat;background-size:contain;content:"";display:block;flex-shrink:0;height:1.8125em;height:calc(29 / var(--root-size, 16) * 1em);transition:var(--transitions-duration, .33s) all;width:1.625em;width:calc(26 / var(--root-size, 16) * 1em);}
.wrap.rwd header.row .logo-bar .search .btn:hover:before,.wrap.rwd header.row .logo-bar .search .btn:focus:before{filter:brightness(0);}
.wrap.rwd header.row .logo-bar .search .btn:before{background-image:url('assets/images/user/search.svg');height:1.0625em;height:calc(17 / var(--root-size, 16) * 1em);font-size:1em;width:1.0625em;width:calc(17 / var(--root-size, 16) * 1em);}
.wrap.rwd header.row .logo-bar .search .btn span{display:none;}
.wrap.rwd header.row .logo-bar .search__input{background-color:transparent;color:black;font-size:.6875em;font-size:calc(var(--font-size-search, 11) / var(--root-size, 16) * 1em);height:unset;padding-bottom:.27272727em;padding-bottom:calc(3 / var(--font-size-search, 11) * 1em);padding-top:.27272727em;padding-top:calc(3 / var(--font-size-search, 11) * 1em);padding-right:0;transition:var(--transitions-duration, .33s) all;}
.wrap.rwd header.row .logo-bar .search__input::placeholder{color:black;font-style:italic;transition:var(--transitions-duration, .33s) all;}
.wrap.rwd header.row .logo-bar .search__icon{color:black;position:relative;top:.09090909em;top:calc(1 / var(--font-size-search, 11) * 1em);transition:var(--transitions-duration, .33s) all;}
.hamburger{display:none;}
/* POPRAWKA: Wypycha wyszukiwarkę i hamburger na prawą stronę, zostawiając logo na środku */
.wrap.rwd header.row .logo-bar .search__container {
	margin-left: auto;
	margin-right: 1em; /* Dodaje odstęp między wyszukiwarką a hamburgerem */
}
@media (min-width:48em){
.menu{padding:0;position:static;}
.menu .innermenu{position:static;}
.wrap.rwd header.row .hamburger{display:block;transition:var(--transitions-duration, .33s) all;z-index:101; margin-left: auto;}
.menu .innermenu .hamburger label, .wrap.rwd header.row .hamburger label{display:block;line-height:0;}
.menu .innermenu .menu-list{background-color:#fff;background-color:var(--color-theme-2, #fff);border:1px solid #d8d8d8!important;font-family:'Jost',sans-serif;font-weight:300;height:unset;opacity:0;overflow:visible;position:fixed;right:max(2em, (99.5vw - 90.875em) / 2);text-align:right;text-transform:uppercase;transform:scaleY(0);transform-origin:top center;transition:var(--transitions-duration, .33s) all;top:7.8125em;top:calc(125 / var(--root-size, 16) * 1em);z-index:1002;}
.menu .innermenu .menu-list{top:calc(7.8125em + 20px);top:calc( (125 / var(--root-size, 16) * 1em) + 20px );}
header.row.scrolled+.menu .innermenu .menu-list{
	top:4.6875em;top:calc(75 / var(--root-size, 16) * 1em);
	margin-top: 50px;
}
.menu .innermenu .menu-list li{float:none;}
.menu .innermenu .menu-list>li:nth-child(2){margin-top:0.5em;}
.menu .innermenu .menu-list>li:last-child{margin-bottom:0.5em;}
.menu .innermenu .menu-list>li h3{font-size:.9375em;font-size:calc(15 / var(--root-size, 16) * 1em);}
/* .menu .innermenu .menu-list>li h3 a{padding-left:3.2em;} */
.menu .innermenu .menu-list .languages h3 span>a:not(:first-of-type),.menu .innermenu .menu-list .languages h3 span>a:not(:first-child){padding-left:.66666667em;padding-left:calc(10 / 15 * 1em);}
.menu .innermenu .menu-list .languages h3 span>a:not(:last-of-type),.menu .innermenu .menu-list .languages h3 span>a:not(:last-child){padding-right:.66666667em;padding-right:calc(10 / 15 * 1em);}
.rwd .menu .innermenu{border-bottom:none;border-top:none;height:unset;line-height:initial;min-height:unset;}
input#nav__toggle[type=checkbox]:checked~.wrap .menu.row .menu-list{opacity:1;transform:scaleY(1);}
}
@media (max-width:47.9375em){
.wrap.rwd header.row .login-bar{display:none;}
.wrap.rwd header.row .logo-bar{justify-content:center;}
	.wrap.rwd header.row .logo-bar .link-logo{transform:none;}
	.wrap.rwd .menu{position:sticky;top:4.5em;top:calc(72 / var(--root-size, 16) * 1em);transition:var(--transitions-duration, .33s) all;z-index:101;}
	body:not(.shop_index) .wrap.rwd .menu{background-color:white;}
	.wrap.rwd .menu .innermenu{border:none; height: auto; min-height: unset; line-height: initial;}
	.wrap.rwd .menu .innermenu .menu-mobile{display: flex; justify-content: space-around; width: 100%;}
	.wrap.rwd .menu .innermenu .menu-mobile .menu-mobile-li {width: 25%; text-align: center; padding: 0;}
	.wrap.rwd .menu .innermenu .menu-mobile a, .wrap.rwd .menu .innermenu .menu-mobile label {padding:.18em 0!important; font-size: 2.5em; display: block; color: #d8d8d8;}
	.wrap.rwd .menu .innermenu .menu-mobile .fa-align-justify:before,.wrap.rwd .menu .innermenu .menu-mobile .fa-search:before,.wrap.rwd .menu .innermenu .menu-mobile .fa-user:before,.wrap.rwd .menu .innermenu .menu-mobile .icon-custom-cart:before{
		content: '';
		background-position:center;
		background-repeat:no-repeat;
		background-size:contain;
		color:transparent;
		display: inline-block;
		min-height:1em;
		min-width:1em;
		transition:var(--transitions-duration, .33s) all;
	}
	.wrap.rwd .menu .innermenu .menu-mobile .fa-align-justify:before{background-image:url('assets/images/user/hamburger.svg');}
	.wrap.rwd .menu .innermenu .menu-mobile .fa-search:before{background-image:url('assets/images/user/search.svg');}
	.wrap.rwd .menu .innermenu .menu-mobile .fa-user:before{background-image:url('assets/images/user/account.svg');}
	.wrap.rwd .menu .innermenu .menu-mobile .icon-custom-cart:before{background-image:url('assets/images/user/basket.svg');}
	body.shop_index .wrap.rwd header.row:not(.scrolled)+.menu{top:15.0625em;top:calc(241 / var(--root-size, 16) * 1em);}
	body.shop_index .wrap.rwd header.row:not(.scrolled)+.menu .innermenu .menu-mobile .fa-align-justify:before,body.shop_index .wrap.rwd header.row:not(.scrolled)+.menu .innermenu .menu-mobile .fa-search:before,body.shop_index .wrap.rwd header.row:not(.scrolled)+.menu .innermenu .menu-mobile .fa-user:before,body.shop_index .wrap.rwd header.row:not(.scrolled)+.menu .innermenu .menu-mobile .icon-custom-cart:before{filter:invert(1);}
	/* Dodaje białe tło do przyklejonego menu mobilnego po przewinięciu na stronie głównej */
	body.shop_index .wrap.rwd header.row.scrolled+.menu {
		background-color: white;
		/*
		 * POPRAWKA v2: Ustawia prawidłową pozycję 'top' dla przyklejonego menu na stronie głównej w wersji mobilnej,
		 * gdy nagłówek jest przewinięty. Zapobiega to nachodzeniu paska menu na logo.
		 */
		top: 4.5em !important; top: calc(72 / var(--root-size, 16) * 1em) !important;
	}

	/* Style dla rozwijanego menu na mobile */
	.menu .innermenu .menu-list {
		/* POPRAWKA: Style dla menu mobilnego wzorowane na stronie dawcy */
		display: none; /* Domyślnie ukryte */
		position: absolute; /* POPRAWKA: Pozycjonowanie względem rodzica (.menu.row) */
		top: 100%; /* POPRAWKA: Zaczyna się tuż pod paskiem z ikonami */
		left: 0;
		width: 70%; /* Szerokość jak u dawcy */
		height: 100vh; /* Wypełnia całą widoczną wysokość ekranu */
		background-color: #212121; /* Ciemne tło */
		color: #fff; /* Biały tekst */
		z-index: 100; /* Wysoki z-index, ale pod paskiem menu */
		overflow-y: auto; /* Przewijanie, jeśli menu jest długie */
		padding-top: 1em; /* Zmniejszony odstęp od góry */
	}
	.menu .innermenu .menu-list li {
		border-bottom: 1px solid #707070; /* Separator między linkami */
		text-align: left;
		float: none; /* POPRAWKA: Zapobiega ustawianiu się linków w jednej linii */
	}
	.menu .innermenu .menu-list li a {
		color: #fff;
		padding: .7em 1em;
		display: block;
		font-size: 0.7em; /* POPRAWKA: Ustawia mniejszy rozmiar czcionki, jak u dawcy */
	}
	.menu .innermenu .menu-list li a:hover {
		color: #fff; /* POPRAWKA: Ustawia biały kolor linku po najechaniu */
		text-decoration: none; /* Usuwa podkreślenie po najechaniu */
	}
	/*
	 * OSTATECZNA POPRAWKA v2: Naprawia niedziałające menu hamburgerowe na mobile.
	 * Używamy `!important`, aby nadpisać inne reguły (np. `.large { display: none !important; }`),
	 * które blokowały wyświetlanie menu. Ten selektor poprawnie pokazuje menu po kliknięciu.
	 */
	input#nav__toggle:checked ~ #page .menu-list {
		display: block !important; /* Pokazujemy menu po kliknięciu */
	}
	/* Usuwamy zbędne reguły z poprzednich prób */
}
.userfooter{margin-top:clamp(calc(16 / var(--root-size, 16) * 1em), calc(265 * 100% / var(--width-container-default, 1454)), calc(265 / var(--root-size, 16) * 1em));}
.userfooter .row{align-items:center;display:flex;justify-content:space-between;}
.userfooter .row:before,.userfooter .row:after{display:none;}
.userfooter .copyright{color:#9d9d9c;font-family:'Jost',sans-serif;font-size:.875em;font-size:calc(14 / var(--root-size, 16) * 1em);font-weight:300;letter-spacing:.21428571em;letter-spacing:calc(3 / 14 * 1em);}
.userfooter .copyright a{color:inherit;text-decoration:none;}
.userfooter .copyright a:hover,.userfooter .copyright a:focus{color:#000;color:var(--color-theme, #000);text-decoration:underline;}
.userfooter .linked-logos{align-items:center;display:flex;margin-left:-1em;margin-left:calc(-16 / var(--root-size, 16) * 1em);margin-right:-1em;margin-right:calc(-16 / var(--root-size, 16) * 1em);}
.userfooter .footer-links-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: left;
}
.userfooter .footer-links-menu li { line-height: 1.5; }
@media (max-width:38.375em){
.userfooter .row{flex-flow:column;justify-content:center;}
.userfooter .copyright,.userfooter .linked-logos{margin-bottom:0.5em;margin-top:0.5em;text-align:center;}
}
.products .product,.products.viewphot .product{border:none;font-family:'Jost',sans-serif;}
.products .product .product-inner-wrap,.products.viewphot .product .product-inner-wrap{display:flex;flex-flow:column;height:100%;}
.products .product .prodimage span,.products.viewphot .product .prodimage span,.products .product .prodimage .img-wrap,.products.viewphot .product .prodimage .img-wrap{align-items:center;display:flex;flex-flow:column;justify-content:center;min-height:20.625em;min-height:calc(330 / var(--root-size, 16) * 1em);}
.products .product .prodimage span img,.products.viewphot .product .prodimage span img,.products .product .prodimage .img-wrap img,.products.viewphot .product .prodimage .img-wrap img{height:auto;object-fit:contain;object-position:center;max-height:unset;width:100%;}
.products .product .productname,.products.viewphot .product .productname,.products .product .price,.products.viewphot .product .price{font-size:1em;font-size:calc(16 / var(--root-size, 16) * 1em);font-weight:400;height:unset;line-height:1.75;text-transform:uppercase;}
.products .product .productname,.products.viewphot .product .productname{margin-bottom:0.5em;}
.products .product .price,.products.viewphot .product .price{margin-top:auto;padding-top:0;}
.products .product .price em,.products.viewphot .product .price em{font-size:inherit;}
.products .product .buttons,.products.viewphot .product .buttons{padding-top:0;}
.products .product .buttons form,.products.viewphot .product .buttons form{display:block;}
.products .product .buttons .quickview,.products.viewphot .product .buttons .quickview{display:none;}
.products .product .buttons .addtobasket,.products.viewphot .product .buttons .addtobasket{align-items:center;background-color:var(--color-theme-accessible);border-color:#000;border-color:var(--color-theme, #000);border-style:solid;border-width:.0625em;border-width:calc(1 / var(--root-size, 16) * 1em);color:#000;color:var(--color-theme, #000);display:flex;font-family:inherit;font-size:.875em;font-size:calc(14 / var(--root-size, 16) * 1em);padding-bottom:.42857143em;padding-bottom:calc(6 / 14 * 1em);padding-top:.35714286em;padding-top:calc(5 / 14 * 1em);font-weight:300;justify-content:center;margin-left:auto;margin-right:auto;transition:var(--transitions-duration, .33s);width:min(12.57142857em, 100%);}
.products .product .buttons .addtobasket span,.products.viewphot .product .buttons .addtobasket span{transform:translateY(.07142857em);}
.products .product .buttons .addtobasket:before,.products.viewphot .product .buttons .addtobasket:before{background-image:url('assets/images/user/basket.svg');background-position:center;background-repeat:no-repeat;background-size:contain;content:"";display:inline-block;height:1.5em;height:calc(21 / 14 * 1em);margin-right:.64285714em;margin-right:calc(9 / 14 * 1em);transition:var(--transitions-duration, .33s);width:1.71428571em;width:calc(24 / 14 * 1em);}
.products .product .buttons .addtobasket:hover,.products.viewphot .product .buttons .addtobasket:hover,.products .product .buttons .addtobasket:focus,.products.viewphot .product .buttons .addtobasket:focus{background-color:#000;background-color:var(--color-theme, #000);color:var(--color-theme-accessible);}
.products .product .buttons .addtobasket:hover:before,.products.viewphot .product .buttons .addtobasket:hover:before,.products .product .buttons .addtobasket:focus:before,.products.viewphot .product .buttons .addtobasket:focus:before{filter:invert(1);}
.breadcrumbs{color:#d1d1d1;}
.breadcrumbs a,.breadcrumbs a span{color:inherit;}
.breadcrumbs .woocommerce-breadcrumb {
    line-height: 27px;
}
.breadcrumbs .woocommerce-breadcrumb .raq {
    font-size: 1.2em;
    margin: 0 0.6em 0 0;
}
.breadcrumbs .woocommerce-breadcrumb a:first-child::before {
    content: '';
    display: inline-block;
    height: 25px;
    width: 27px;
    margin: 0 3px 5px 0;
    vertical-align: middle;
    background: url("assets/images/ico_home.png") no-repeat 0% 50% transparent;
    background-size: 75%;
}
.breadcrumbs a:hover span[itemprop],.breadcrumbs a:focus span[itemprop]{color:var(--color-theme);}
#box_mainproducts.box{--swiper-navigation-color:#000;margin-top:clamp(16 / var(--root-size, 16) * 1em, 40 * 100% / 1085.5, 40 / var(--root-size, 16) * 1em);overflow:hidden;}
#box_mainproducts.box .boxhead{border-bottom:none;}
#box_mainproducts.box .boxhead>h1{margin-top:0;padding-bottom:0;text-align:center;}
#box_mainproducts.box .boxhead .category-name{font-family:'Jost',sans-serif;font-size:1.1875em;font-size:calc(19 / var(--root-size, 16) * 1em);font-weight:400;letter-spacing:.05263158em;letter-spacing:calc(1 / 19 * 1em);text-transform:uppercase;}
#box_mainproducts.box .boxhead .sort-and-view .prodview{display:none;}
.shop_index #box_mainproducts.box{margin-top:9.5em;margin-top:calc(152 / var(--root-size, 16) * 1em);margin-top:clamp(16 / var(--root-size, 16) * 1em, 152 * 100% / var(--width-container-default, 1454), 152 / var(--root-size, 16) * 1em);}
.shop_index #box_mainproducts.box .boxhead .category-name{float:none;font-size:2.25em;font-size:calc(36 / var(--root-size, 16) * 1em);letter-spacing:.05555556em;letter-spacing:calc(2 / 36 * 1em);}
.shop_index #box_mainproducts.box .boxhead .sort-and-view{display:none;}
.shop_index #box_mainproducts.box .innerbox{margin-top:5.1875em;margin-top:calc(83 / var(--root-size, 16) * 1em);}
@media (min-width:30.0625em) and (max-width:97.4375em){
.shop_index #box_mainproducts.box .innerbox .swiper-button-prev{left:0;}
.shop_index #box_mainproducts.box .innerbox .swiper-button-next{right:0;}
}
@media (max-width:47.9375em){
.rwd .logo-bar .search__content{height:100%;}
body:not(.scroll_block) .rwd .logo-bar .search__container{display:none;}
}
body.shop_index>.wrap.rwd header.row.scrolled {
    background-color: white;
}

.swiper .products.products_extended{flex-wrap:nowrap;}
/*! CSS Used keyframes */
@keyframes loader-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg);}}
/*! CSS Used fontfaces */

/*--------------------------------------------------------------
# Poprawki dla menu hamburgerowego
--------------------------------------------------------------*/
input#nav__toggle[type=checkbox]:checked~#page .menu.row .menu-list {
    opacity: 1;
    transform: scaleY(1);
}

@media (min-width: 48em) {
    /*
     * Poprawka dla menu rozwijanego na desktopie.
     * Zapewnia, że elementy menu (`<li>`) układają się pionowo.
    */
    .menu .innermenu .menu-list > li.menu-item {
        float: none;
    }
}

/*
 * OSTATECZNA POPRAWKA: Wymuszenie pionowego układu w rozwijanym menu.
 * Używamy !important, aby zagwarantować nadpisanie stylu `float: left`.
*/
@media (min-width: 48em) {
    .menu .innermenu .menu-list.large.standard > li {
        float: none !important;
    }
}

/*--------------------------------------------------------------
# Poprawka dla paska administracyjnego WordPress
--------------------------------------------------------------*/
@media (min-width: 48em) {
    /* Przesuwa menu hamburgerowe w dół o wysokość paska admina (32px), gdy jest on widoczny */
    body.admin-bar .wrap.rwd header.row .hamburger {
        top: calc(3.3125em + 32px); /* 53px + 32px */
        top: calc( (53 / var(--root-size, 16) * 1em) + 32px );
    }
}

/*--------------------------------------------------------------
# Poprawka dla paska administracyjnego WordPress v2
--------------------------------------------------------------*/
/* Gdy pasek admina jest widoczny, przesuń "przyklejony" nagłówek w dół o wysokość paska (32px) */
body.admin-bar header.row {
    top: 32px;
}

/*--------------------------------------------------------------
# Poprawka dla paska administracyjnego WordPress v3
--------------------------------------------------------------*/
/* Przesuwa menu hamburgerowe w dół o wysokość paska admina (32px), gdy jest on widoczny */
body.admin-bar .menu .innermenu .hamburger {
    top: calc(3.3125em + 32px);
    top: calc( (53 / var(--root-size, 16) * 1em) + 32px );
}

}

/*--------------------------------------------------------------
# Style dla listy postów na blogu
--------------------------------------------------------------*/

/* Główny kontener wpisu */
article.post {
    border-bottom: 1px solid #f0f0f0; /* Delikatny separator między wpisami */
    padding: 2.5em 0;
    margin-bottom: 1em;
}

article.post:last-of-type {
    border-bottom: none; /* Usuwa separator pod ostatnim wpisem */
}

/* Nagłówek wpisu */
article.post .entry-header {
    margin-bottom: 1.5em;
    text-align: left; /* POPRAWKA: Wyrównanie do lewej */
}

/* Tytuł wpisu */
article.post .entry-title {
    font-family: 'Jost', sans-serif;
    font-size: 2.2em;
    font-weight: 400;
    text-transform: uppercase;
    margin: 0 0 0.4em 0;
    line-height: 1.2;
}

article.post .entry-title a {
    color: #000;
    text-decoration: none;
    transition: color 0.3s ease;
}

article.post .entry-title a:hover {
    color: #777;
}

/* Meta-dane wpisu (data, autor) */
article.post .entry-meta {
    color: #9d9d9c;
    font-family: 'Jost', sans-serif;
    font-size: 0.85em;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

article.post .entry-meta a {
    color: #9d9d9c;
    text-decoration: none;
}

article.post .entry-meta a:hover {
    color: #000;
}

/* Stopka wpisu (kategorie, komentarze) */
article.post .entry-footer {
    text-align: left; /* POPRAWKA: Wyrównanie do lewej */
    margin-top: 2em;
    font-family: 'Jost', sans-serif;
    font-size: 0.9em;
    color: #9d9d9c;
}

article.post .entry-footer span {
    margin-right: 1.5em; /* Zmieniamy marginesy dla układu lewostronnego */
}

article.post .entry-footer a {
    color: #777;
    text-decoration: none;
    border-bottom: 1px dotted #ccc;
}

article.post .entry-footer a:hover {
    color: #000;
    border-bottom-color: #000;
}

/*--------------------------------------------------------------
# Style dla pojedynczego wpisu i komentarzy
--------------------------------------------------------------*/

/* --- Sekcja komentarzy --- */
.comments-area {
    margin-top: 4em;
    border-top: 1px solid #f0f0f0;
    padding-top: 2em;
}

.comments-title,
.comment-reply-title {
    font-family: 'Jost', sans-serif;
    font-size: 1.8em;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 1.5em;
    color: #000;
}

/* --- Lista komentarzy --- */
.comment-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.comment-list .comment {
    padding: 1.5em 0;
    border-bottom: 1px solid #f0f0f0;
}

.comment-list .comment:last-child {
    border-bottom: none;
}

.comment-body {
    display: flex;
    gap: 1.5em;
}

.comment-author .avatar {
    border-radius: 50%;
    margin-right: 1em;
}

.comment-meta {
    flex-shrink: 0;
}

.comment-author .fn {
    font-weight: bold;
    font-style: normal;
}

.comment-metadata {
    font-size: 0.85em;
    color: #9d9d9c;
}

.comment-metadata a {
    color: #9d9d9c;
}

.comment-content {
    flex-grow: 1;
}

.comment-content p {
    margin: 0 0 1em 0;
}

.reply a {
    font-family: 'Jost', sans-serif;
    font-size: 0.8em;
    text-transform: uppercase;
    color: #777;
    text-decoration: none;
    border: 1px solid #ccc;
    padding: 0.4em 0.8em;
    border-radius: 3px;
    transition: all 0.3s ease;
}

.reply a:hover {
    background-color: #000;
    color: #fff;
    border-color: #000;
}

/* --- Formularz komentarza --- */
.comment-form label {
    display: block;
    margin-bottom: 0.5em;
    font-family: 'Jost', sans-serif;
    font-weight: bold;
}

.comment-form textarea {
    width: 100%;
    padding: 0.8em;
    border: 1px solid #ccc;
    border-radius: 3px;
    margin-bottom: 1em;
}

.comment-form .submit {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 0.8em 1.5em;
    text-transform: uppercase;
    font-family: 'Jost', sans-serif;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.comment-form .submit:hover {
    background-color: #444;
}

/*--------------------------------------------------------------
# Globalne poprawki układu
--------------------------------------------------------------*/

main#primary.site-main {
    margin-top: 2.5em; /* Dodaje odstęp od góry dla głównej treści na wszystkich stronach */
}
/*--------------------------------------------------------------
# Style dla paska bocznego (Sidebar) - Wersja z dawcy
--------------------------------------------------------------*/

.leftcol .box_menu {
	max-width: 20em;
}

.leftcol .box_menu .boxhead {
	border-bottom: none;
	margin-bottom: 3.25em;
	margin-top: 3.25em;
}

.leftcol .box_menu .boxhead:before {
	background-image: url("assets/images/user/menu.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	height: 1.3125em;
	width: 1.5em;
}

.leftcol .box_menu .widget-title {
	display: none;
}

.leftcol .box_menu ul {
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	font-size: 14px;
	text-transform: uppercase;
	list-style: none;
	margin: 0;
	padding: 0;
}

.leftcol .box_menu ul li a {
	display: inline-block;
	padding: 1.5625em 0;
	color: #000;
	text-decoration: none;
}

.leftcol .box_menu ul li:not(:first-of-type) {
	border-top: 1px solid #d1d1d1;
}

.leftcol .box_menu ul li.current-cat > a,
.leftcol .box_menu ul li.current-cat-parent > a {
	font-weight: 400;
}

.leftcol .box_menu ul li a:focus {
	outline: none;
}
/*--------------------------------------------------------------
# Style dla nagłówka strony kategorii produktów (CSS-only)
--------------------------------------------------------------*/

/* Tytuł strony kategorii */
body.archive.woocommerce .woocommerce-products-header__title.page-title,
body.post-type-archive-product .woocommerce-products-header__title.page-title {
    font-family: 'Jost', sans-serif;
    font-size: 1.1875em;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    float: left;
    margin: 0;
    line-height: 40px; /* Wyrównuje w pionie z polem sortowania */
}


/* Pole select w formularzu sortowania */
body.archive.woocommerce .woocommerce-ordering select.orderby,
body.post-type-archive-product .woocommerce-ordering select.orderby {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    background: transparent url("assets/images/ico_arrow_down_small.png") no-repeat 95% 50%;
    min-height: 40px;
    margin: 0;
    border: 1px solid #d8d8d8;
    padding: .6em 1.4em .6em .4em;
    font-family: 'Jost', sans-serif;
    font-size: 0.875em;
    font-weight: 400;
    text-align: center;
}




/*--------------------------------------------------------------
# Style dla nagłówka strony kategorii (CSS-only)
--------------------------------------------------------------*/

/* Używamy Flexbox na głównym kontenerze, aby ułożyć elementy w jednej linii */
body.archive.woocommerce main#primary.site-main {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

/* Tytuł strony kategorii */
body.archive.woocommerce .woocommerce-products-header {
    order: 1; /* Tytuł jako pierwszy element */
    margin-bottom: 2em;
}

body.archive.woocommerce .woocommerce-products-header .page-title {
    font-family: 'Jost', sans-serif;
    font-size: 1.1875em;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin: 0;
    margin-bottom: 20px; /* Dodaje odstęp pod tytułem */
}



/* Lista produktów - musi zająć całą szerokość i być pod spodem */
body.archive.woocommerce ul.products {
    order: 3; /* Lista produktów jako trzeci element */
    width: 100%;
}


@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal;}
@font-face{font-family:'FontAwesome';font-display:swap;src:url('assets/images/fontawesome-webfont.eot?v=4.0.3');src:url('assets/images/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'),url('assets/images/fontawesome-webfont.woff?v=4.0.3') format('woff'),url('assets/images/fontawesome-webfont.ttf?v=4.0.3') format('truetype'),url('assets/images/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal;}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;font-display:swap;src:local('Open Sans'),local('OpenSans'),url(https://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2212,U+2215;}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;font-display:swap;src:local('Open Sans Bold'),local('OpenSans-Bold'),url(https://fonts.gstatic.com/s/opensans/v13/k3k702ZOKiLJc3WVjuplzOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2212,U+2215;}
@font-face{font-family:'Open Sans';font-style:italic;font-weight:400;font-display:swap;src:local('Open Sans Italic'),local('OpenSans-Italic'),url(https://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2212,U+2215;}
@font-face{font-family:'Open Sans';font-style:italic;font-weight:700;font-display:swap;src:local('Open Sans Bold Italic'),local('OpenSans-BoldItalic'),url(https://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxolIZu-HDpmDIZMigmsroc4.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2212,U+2215;}
@font-face{font-family:'rwd-custom';src:url('assets/images/rwd-custom.eot?gptqpz');src:url('assets/images/rwd-custom.eot?#iefixgptqpz') format('embedded-opentype'),url('assets/images/rwd-custom.woff?gptqpz') format('woff'),url('assets/images/rwd-custom.ttf?gptqpz') format('truetype'),url('assets/images/rwd-custom.svg?gptqpz#rwd-custom') format('svg');font-weight:normal;font-style:normal;font-display:swap;}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:200;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUQjIg1_i6t8kCHKm459WxRyS7m.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUQjIg1_i6t8kCHKm459WxRyS7m.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:200;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Jost';font-style:italic;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/jost/v20/92zJtBhPNqw73oHH7BbQp4-B6XlrZrMFBIokng.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Jost';font-style:normal;font-weight:100;font-display:swap;src:url(https://fonts.gstatic.com/s/jost/v20/92zatBhPNqw73oTd4g.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Jost';font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/jost/v20/92zatBhPNqw73oTd4g.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jost/v20/92zatBhPNqw73oTd4g.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
.woocommerce-result-count {
  display: none;
}

.wc-block-product-categories-list-item-count {
	display: none !important;
}

.page-title {
  margin-bottom: 20px;
}

.s-row .s-grid-9 {
  width: calc(75% - 1.25em);
}

    display: table;
    clear: both;
}
---------------------------------------------------------------*/
---------------------------------------------------------------*/
---------------------------------------------------------------*/
---------------------------------------------------------------*/
---------------------------------------------------------------*/
---------------------------------------------------------------*/
/*--------------------------------------------------------------
# OSTATECZNE POPRAWKI UKŁADU I PRODUKTÓW
--------------------------------------------------------------*/

/* 1. Poprawka dla głównego układu kolumn (sidebar i zawartość) */
/* Używamy `calc()` do elastycznego obliczania szerokości, usuwając sztywne wartości w pikselach */
.s-row .s-grid-3 {
	width: calc(25% - 1.25em);
}
.s-row .s-grid-9 {
	width: calc(75% - 1.25em);
}

/* 2. Kontener produktów: Używamy Flexbox do stworzenia siatki */
.woocommerce ul.products {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	margin: 0 -15px !important; /* Ujemny margines do kompensacji paddingu w produktach */
}

/* 3. Pojedynczy produkt (kafelek): Stylujemy i resetujemy konflikty */
.woocommerce ul.products li.product {
	/* --- KLUCZOWE POPRAWKI UKŁADU --- */
	width: 25% !important; /* Domyślnie 4 kolumny, nadpisuje wszelkie inne szerokości */
	float: none !important; /* WAŻNE: Wyłączamy domyślny float WooCommerce */
	margin: 0 0 30px 0 !important; /* WAŻNE: Resetujemy domyślne marginesy */
	padding: 0 15px !important; /* Odstępy między produktami */
	box-sizing: border-box !important; /* Padding wliczany do szerokości */

	/* --- Style wizualne --- */
	border: none !important; /* WAŻNE: Usuwamy wszelkie niechciane ramki */
	height: auto !important; /* Nadpisujemy sztywną wysokość z `products.viewphot .product` */
	display: flex;
	flex-direction: column;
}

/* 4. Wewnętrzny wrapper produktu, aby flexbox działał poprawnie */
.woocommerce ul.products li.product .product-inner-wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
}

/* 5. Cena produktu - wypychamy ją na dół */
.woocommerce ul.products li.product .price {
	margin-top: auto;
}

/* 6. Przycisk "Do koszyka" - dostosowanie do nowego układu */
.woocommerce ul.products li.product .button.add_to_cart_button {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 1em auto 0;
}

/* 7. Responsywność siatki produktów */
@media (max-width: 980px) {
	.woocommerce ul.products li.product {
		width: 33.333% !important; /* 3 kolumny */
	}
}

@media (max-width: 767px) {
	.woocommerce ul.products li.product {
		width: 50% !important; /* 2 kolumny */
	}
}

@media (max-width: 480px) {
	.woocommerce ul.products li.product {
		width: 100% !important; /* 1 kolumna */
	}
}


.woocommerce-ordering {
  padding: 0 30px;
}

.woocommerce-ordering {
  padding: 0 30px;
}

/*--------------------------------------------------------------
# Uzupełniające style dla kafelków produktów
--------------------------------------------------------------*/

/* Obrazek produktu */
.woocommerce ul.products li.product a img {
	height: auto;
	object-fit: contain;
	object-position: center;
	width: 100%;
	min-height: 250px; /* Zmniejszamy wysokość obrazka, aby kafelek był mniejszy */
}

/* Tytuł produktu */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: 'Jost', sans-serif;
	font-size: 0.9em; /* Delikatnie zmniejszamy czcionkę tytułu */
	font-weight: 400;
	line-height: 1.75;
	text-transform: uppercase;
	margin: 0.5em 0;
	min-height: 3.15em; /* Dostosowujemy wysokość do mniejszej czcionki */
	text-align: center;
}


/* Cena produktu */
.woocommerce ul.products li.product .price {
	font-family: 'Jost', sans-serif;
	color: #000;
	font-size: 0.9em; /* Delikatnie zmniejszamy czcionkę ceny */
	font-weight: 400;
	line-height: 1.75;
	padding-top: 0;
}

/* Przycisk "Do koszyka" */
.woocommerce ul.products li.product .button.add_to_cart_button {
	background-color: transparent;
	border: 1px solid #000;
	color: #000;
	font-family: inherit;
	font-size: 0.8em; /* Zmniejszamy czcionkę przycisku */
	padding: 0.4em 0.8em;
	font-weight: 300;
	transition: 0.33s;
	width: min(12.5em, 100%);
}

.woocommerce ul.products li.product .button.add_to_cart_button:hover {
	background-color: #000;
	color: #fff;
	text-decoration: none;
}

/* Ikona w przycisku "Do koszyka" */
.woocommerce ul.products li.product .button.add_to_cart_button::before {
	background-image: url('assets/images/user/basket.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	height: 1.5em;
	margin-right: 0.6em;
	transition: 0.33s;
	width: 1.7em;
}

.woocommerce ul.products li.product .button.add_to_cart_button:hover::before {
	filter: invert(1);
}

/*--------------------------------------------------------------
# Dodatkowe poprawki wizualne
--------------------------------------------------------------*/

/* Usuwa podkreślenie po najechaniu na kafelek produktu */
.woocommerce ul.products li.product a:hover {
	text-decoration: none;
}

.added_to_cart.wc-forward {
  text-align: center;
  padding-top: 20px;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-size: 1em !important;
}

.wc-block-cart__submit-container {
  background-color: transparent;
  border: 1px solid #000;
  color: #000;
  font-family: inherit;
  font-size: 0.875em;
  padding: 0.4em 0.8em;
  transition: 0.33s;
}

.wc-block-cart__submit-container:hover {
  background-color: #000;
}

.wc-block-cart__submit-container a:hover {
  color: #fff;
  text-decoration: none;
  transition: 0.33s;
}

/*--------------------------------------------------------------
# Style dla licznika koszyka w nagłówku (zgodne z dawcą)
--------------------------------------------------------------*/

/* Ukrywa domyślny tekst "Koszyk:" */
.wrap.rwd header.row .logo-bar .basket a.count span.countlabel>span {
	display: none;
}

/* Ukrywa sumę cenową w koszyku */
.wrap.rwd header.row .logo-bar .basket a.count span.countlabel .sum {
	display: none;
}

/* Resetuje wygląd kontenera na liczbę produktów, aby przygotować go pod "bąbelek" */
.wrap.rwd header.row .logo-bar .basket a.count span.countlabel .count {
	color: transparent;
	display: block;
	height: 0;
	width: 0;
}

/* Styluje "bąbelek" z liczbą produktów */
.wrap.rwd header.row .logo-bar .basket a.count span.countlabel .count>span {
	align-items: center;
	background-color: black;
	border-radius: 100em;
	box-sizing: border-box;
	color: white;
	display: inline-flex;
	flex-flow: column;
	font-size: .5em; /* Zmniejsza czcionkę wewnątrz bąbelka */
	justify-content: center;
	line-height: 1;
	min-height: 2em; /* Ustala minimalny rozmiar bąbelka */
	min-width: 2em; /* Ustala minimalny rozmiar bąbelka */
	padding: 0.25em;
	position: absolute;
	right: 0;
	top: 0;
	transform: translate(50%, -33%); /* Pozycjonuje bąbelek względem ikony koszyka */
	transition: var(--transitions-duration, .33s) all;
}

@container (min-width: 700px) {
  .wc-block-checkout__sidebar.is-sticky {
    position: sticky;
    top: 140px;
  }
}

/*--------------------------------------------------------------
# Globalne ukrycie domyślnych ramek "focus"
--------------------------------------------------------------*/

/* Usuwa domyślną ramkę, która pojawia się po kliknięciu na linki, przyciski i inne elementy. */
*:focus {
	outline: none !important;
}

/*--------------------------------------------------------------
# Style dla strony "Moje konto" (WooCommerce)
--------------------------------------------------------------*/

/* Główny kontener strony "Moje konto" - używamy flexbox do stworzenia układu kolumnowego */
.woocommerce-account .woocommerce {
	display: flex;
	flex-wrap: wrap;
	gap: 40px; /* Odstęp między nawigacją a treścią */
}

/* Nawigacja po lewej stronie */
.woocommerce-account .woocommerce-MyAccount-navigation {
	flex: 1; /* Zajmuje dostępną przestrzeń, ale nie więcej niż potrzeba */
	min-width: 220px; /* Minimalna szerokość, aby menu nie było zbyt wąskie */
	max-width: 280px; /* Maksymalna szerokość */
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border-top: 1px solid #d1d1d1;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	margin: 0;
	border-bottom: 1px solid #d1d1d1;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: 1.2em 0;
	color: #000;
	text-decoration: none;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	font-size: 14px;
	text-transform: uppercase;
	transition: color 0.3s;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	color: #777;
	text-decoration: none;
}

/* Aktywny element menu */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active > a {
	font-weight: 400;
	color: #000;
}

/* Główna treść po prawej stronie */
.woocommerce-account .woocommerce-MyAccount-content {
	flex: 3; /* Zajmuje 3x więcej miejsca niż nawigacja */
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	line-height: 1.75;
}

.woocommerce-account .woocommerce-MyAccount-content p {
	margin-bottom: 1.5em;
}

.woocommerce-account .woocommerce-MyAccount-content a {
	color: #000;
	font-weight: 400;
	text-decoration: underline;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
	text-decoration: none;
}

/*--------------------------------------------------------------
# Style dla formularzy na stronie "Szczegóły konta"
--------------------------------------------------------------*/

/* Ogólne style dla formularza edycji konta */
.woocommerce-account .woocommerce-EditAccountForm {
	font-family: 'Jost', sans-serif;
}

/* Etykiety pól formularza */
.woocommerce-account .woocommerce-EditAccountForm label {
	font-weight: 400;
	margin-bottom: 0.5em;
	display: block;
}

/* Pola tekstowe formularza */
.woocommerce-account .woocommerce-EditAccountForm input[type="text"],
.woocommerce-account .woocommerce-EditAccountForm input[type="email"],
.woocommerce-account .woocommerce-EditAccountForm input[type="password"] {
	width: 100%;
	padding: 0.8em;
	border: 1px solid #d1d1d1;
	background-color: #fff;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	box-sizing: border-box;
	transition: border-color 0.3s;
}

.woocommerce-account .woocommerce-EditAccountForm input[type="text"]:focus,
.woocommerce-account .woocommerce-EditAccountForm input[type="email"]:focus,
.woocommerce-account .woocommerce-EditAccountForm input[type="password"]:focus {
	border-color: #000;
}

/* Sekcja zmiany hasła */
.woocommerce-account .woocommerce-EditAccountForm fieldset {
	border: 1px solid #f0f0f0;
	padding: 1.5em;
	margin-top: 2em;
}

/* Przycisk "Zapisz zmiany" */
.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button {
	background-color: transparent;
	border: 1px solid #000;
	color: #000;
	font-family: 'Jost', sans-serif;
	font-size: 0.875em;
	padding: 0.8em 1.5em;
	font-weight: 300;
	text-transform: uppercase;
	transition: 0.33s;
	cursor: pointer;
	margin-top: 1em;
}

.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button:hover {
	background-color: #000;
	color: #fff;
}

/*--------------------------------------------------------------
# Style dla formularzy na stronie "Adresy"
--------------------------------------------------------------*/

/* Etykiety pól formularza */
.woocommerce-account .woocommerce-address-fields label {
	font-weight: 400;
	margin-bottom: 0.5em;
	display: block;
	font-family: 'Jost', sans-serif;
}

/* Pola tekstowe formularza */
.woocommerce-account .woocommerce-address-fields input[type="text"],
.woocommerce-account .woocommerce-address-fields input[type="email"],
.woocommerce-account .woocommerce-address-fields input[type="tel"] {
	width: 100%;
	padding: 0.8em;
	border: 1px solid #d1d1d1;
	background-color: #fff;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	box-sizing: border-box;
	transition: border-color 0.3s;
}

.woocommerce-account .woocommerce-address-fields input[type="text"]:focus,
.woocommerce-account .woocommerce-address-fields input[type="email"]:focus,
.woocommerce-account .woocommerce-address-fields input[type="tel"]:focus {
	border-color: #000;
}

/* Przycisk "Zapisz adres" */
.woocommerce-account .woocommerce-address-fields .button {
	background-color: transparent;
	border: 1px solid #000;
	color: #000;
	font-family: 'Jost', sans-serif;
	font-size: 0.875em;
	padding: 0.8em 1.5em;
	font-weight: 300;
	text-transform: uppercase;
	transition: 0.33s;
	cursor: pointer;
	margin-top: 1em;
}

.woocommerce-account .woocommerce-address-fields .button:hover {
	background-color: #000;
	color: #fff;
}

/*--------------------------------------------------------------
# Poprawka dla polskich znaków w adresach
--------------------------------------------------------------*/

/* Jawnie ustawia czcionkę Jost dla elementu <address> na stronie Moje konto */
/* Jawnie ustawia czcionkę Jost i wyłącza kursywę dla elementu <address> na stronie Moje konto */
.woocommerce-account address {
    font-family: 'Jost', sans-serif !important;
    font-family: 'Jost', sans-serif !important; /* Upewniamy się, że Jost jest używany */
    font-style: normal !important; /* WAŻNE: Wyłącza domyślną kursywę tagu <address> */
}

.woocommerce-account address {
    font-style: normal !important; /* WAŻNE: Wyłącza domyślną kursywę tagu <address> */
}

/*--------------------------------------------------------------
# Style dla strony wyników wyszukiwania
--------------------------------------------------------------*/

/* Nagłówek strony wyników wyszukiwania */
.search-results .page-header {
	margin-bottom: 2.5em;
	border-bottom: 1px solid #f0f0f0;
	padding-bottom: 1.5em;
}

.search-results .page-title {
	font-family: 'Jost', sans-serif;
	font-size: 1.8em;
	font-weight: 400;
	text-transform: uppercase;
}

/* Wyróżnienie wyszukiwanej frazy */
.search-results .page-title span {
	font-weight: 400;
	color: #000;
}

/* Pojedynczy wynik wyszukiwania */
.search-results article {
	display: flex;
	flex-wrap: wrap;
	gap: 30px; /* Odstęp między obrazkiem a treścią */
	padding: 2.5em 0;
	border-bottom: 1px solid #f0f0f0;
}

.search-results article:last-of-type {
	border-bottom: none;
}

/* Obrazek (lewa kolumna) */
.search-results .post-thumbnail {
	flex: 1;
	min-width: 200px;
	max-width: 280px;
}

/* Kontener na treść (prawa kolumna) */
.search-results .entry-header,
.search-results .entry-summary,
.search-results .entry-footer {
	flex: 2; /* Zajmuje 2x więcej miejsca niż obrazek */
	width: 100%;
}

/* Tytuł wyniku wyszukiwania */
.search-results .entry-title {
	font-family: 'Jost', sans-serif;
	font-size: 1.5em;
	font-weight: 400;
	text-transform: uppercase;
	margin: 0 0 0.5em 0;
}

.search-results .entry-title a {
	color: #000;
	text-decoration: none;
}

.search-results .entry-title a:hover {
	color: #777;
}

/* Opis/zajawka wyniku */
.search-results .entry-summary {
	font-family: 'Jost', sans-serif;
	font-weight: 300;
}

.search-results .entry-summary {
	font-family: 'Jost', sans-serif;
	font-weight: 300;
}

/*--------------------------------------------------------------
# Style dla produktów na stronie wyników wyszukiwania (Wersja listowa)
--------------------------------------------------------------*/

/* Ogólny kontener dla wyniku wyszukiwania (zarówno post, jak i produkt) */
.search-results article {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 1.5em 0;
}

/* Kontener na treść (tytuł, opis/cena) */
.search-results article .entry-container {
	flex-grow: 1;
}

/* Obrazek wyniku */
.search-results article .post-thumbnail {
	flex-basis: 150px;
	flex-shrink: 0;
	max-width: 150px;
}

/* --- Style specyficzne dla PRODUKTÓW w wynikach wyszukiwania --- */

/* Ukrywamy domyślny opis dla produktów */
.search-results article.product {
	/*
	 * POPRAWKA: Używamy `flex-wrap: wrap`, aby na wąskich ekranach przycisk "Do koszyka"
	 * mógł przenieść się do nowej linii, zamiast wychodzić poza ekran.
	 */
	flex-wrap: wrap;
}

/* Tytuł produktu */
.search-results article.product .entry-title {
	font-size: 1.2em;
	margin: 0;
	text-transform: uppercase;
}

/* Cena produktu */
.search-results article.product .entry-meta .price {
	font-family: 'Jost', sans-serif;
	font-weight: 400;
	color: #000;
	margin-top: 0.5em;
	font-size: 1.1em;
}

/* Stopka z przyciskiem "Do koszyka" */
.search-results article.product .entry-footer {
	margin-left: auto; /* Wypycha przycisk na prawą stronę */
}

/* Przycisk "Do koszyka" po prawej stronie */
.search-results article.product .add_to_cart_button {
	background-color: transparent;
	border: 1px solid #000;
	color: #000;
	padding: 0.8em 1.5em;
	text-transform: uppercase;
	font-family: 'Jost', sans-serif;
	cursor: pointer;
	transition: 0.33s;
	white-space: nowrap; /* Zapobiega łamaniu tekstu w przycisku */
}

.search-results article.product .add_to_cart_button:hover {
	background-color: #000;
	color: #fff;
}

/*--------------------------------------------------------------
# Poprawka dla licznika koszyka na stronie głównej
--------------------------------------------------------------*/

/* Zmienia kolor "bąbelka" na biały na stronie głównej (przed przewinięciem) */
body.shop_index > .wrap.rwd header.row:not(.scrolled) .basket a.count span.countlabel .count > span {
	background-color: white;
	color: black;
}

/*--------------------------------------------------------------
# Style dla strony pojedynczego produktu (inspirowane dawcą)
--------------------------------------------------------------*/

/* --- 1. Główny układ dwukolumnowy --- */
.single-product div.product {
	display: flex;
	flex-wrap: wrap;
	gap: 40px; /* Odstęp między galerią a informacjami */
}

/* Kolumna z galerią zdjęć (lewa) */
.single-product .woocommerce-product-gallery {
	flex: 1 1 45%;
	min-width: 320px;
	max-width: 385px; /* Ograniczenie szerokości jak u dawcy */
}

/* Kolumna z informacjami o produkcie (prawa) */
.single-product .summary {
	flex: 1 1 50%;
	min-width: 320px;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	font-size: 0.9375em;
	color: #878787;
	display: flex;
	flex-direction: column;
}

/* --- 2. Informacje o produkcie (prawa kolumna) --- */

.single-product .product_title {
	font-family: 'Jost', sans-serif;
	font-size: 1.5em;
	font-weight: 400;
	line-height: 1.25;
	text-transform: uppercase;
	margin-top: 0;
	margin-bottom: 1em;
	max-width: 50%; /* Ograniczenie szerokości jak u dawcy */
}
.single-product .summary > .price {
	font-size: 2em;
	font-weight: 400;
	color: #000;
	text-transform: uppercase;
}

/* --- 3. Formularz dodawania do koszyka --- */

 .single-product form.cart {
	 display: flex; 
	align-items: center;
	gap: 1em;
	flex-wrap: wrap; /* Pozwalamy na zawijanie, jeśli są warianty */
	margin: 2em 0;
} 

/* Dla produktów z wariantami, kontenerem jest .woocommerce-variation-add-to-cart */
.woocommerce-variation-add-to-cart { display: flex; align-items: center; gap: 1em; justify-content: space-between;}

/* Poprawka dla wariantów (np. kolorów), aby etykieta i opcje były w jednej linii */
.single-product table.variations {
	width: 100%; /* Tabela zajmuje całą dostępną szerokość */
	border-spacing: 0; /* Usuwa domyślne odstępy w tabeli */
}

.single-product table.variations tr {
	display: flex;
	align-items: center; /* Wyrównuje etykietę i opcje w pionie */
	justify-content: space-between; /* KLUCZOWA ZMIANA: Rozsuwa elementy na boki */
}

.single-product table.variations .label {
	font-weight: 400;
	text-transform: uppercase;
	flex-shrink: 0;
}


/* Style dla próbek kolorów z wtyczki */
.single-product table.variations .value .variable-items-wrapper {
	display: flex;
}

.single-product .cart .quantity .qty {
	box-sizing: border-box;
	font-size: 1.6em;
	font-weight: 400;
	height: 44px;
	width: 64px;
	text-align: center;
	border: 1px solid #d1d1d1;
	padding: 0.2em;
}

.single-product .cart .single_add_to_cart_button {
	height: 44px;
	background-color: transparent;
	border: 1px solid #000;
	color: #000;
	font-family: 'Jost', sans-serif;
	font-size: 1.06em;
	font-weight: 400;
	text-transform: uppercase;
	transition: 0.33s;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.single-product .cart .single_add_to_cart_button:hover {
	background-color: #000;
	color: #fff;
}

.single-product .cart .single_add_to_cart_button::before {
	background-image: url('assets/images/user/basket.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	height: 1.5em;
	margin-right: 0.6em;
	transition: 0.33s;
	width: 1.7em;
}

.single-product .cart .single_add_to_cart_button:hover::before {
	filter: invert(1);
}

/* --- 4. Meta dane i linki pod przyciskiem --- */
.single-product .product_meta {
	font-size: 0.86em;
	margin-top: 2em;
	width: 100%;
}

/* --- 5. Zakładki (Opis, Dane techniczne) --- */

.single-product .woocommerce-tabs {
	clear: both;
	width: 100%;
	padding-top: 3em;
}

.single-product .woocommerce-tabs ul.tabs {
	list-style: none;
	padding: 0;
	margin: 0 0 2em 0;
	border-bottom: 1px solid #d8d8d8;
	display: flex;
}

.single-product .woocommerce-tabs ul.tabs li {
	margin: 0 5px 0 0;
	padding: 5px 15px 5px 11px;
	margin: 0 5px -1px 0; /* Ujemny margines, aby ramka nachodziła na border-bottom */
	padding: 5px 15px;
	cursor: pointer;
	position: relative;
	border: 1px solid transparent; /* Domyślnie przezroczysta ramka */
}

.single-product .woocommerce-tabs ul.tabs li.active {
	border-color: #d8d8d8; /* Ustawia kolor ramki na górze, po lewej i prawej */
	border-bottom-color: #fff; /* KLUCZOWA ZMIANA: Ustawia kolor dolnej ramki na biały */
}

.single-product .woocommerce-tabs ul.tabs li a {
	color: #6d6a6a;
	text-decoration: none;
	font-family: 'Jost', sans-serif;
	font-size: 1.4em;
	text-transform: none;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
	color: #111;
}

/* Treść zakładek */
.single-product .woocommerce-Tabs-panel {
	color: #878787;
	font-size: 0.9375em;
	line-height: 2.33;
}

.single-product #tab-additional_information table.shop_attributes {
	border-top: none;
}

.single-product #tab-additional_information table.shop_attributes td,
.single-product #tab-additional_information table.shop_attributes th {
	border: none;
	padding: 5px 8px;
}
}

/*--------------------------------------------------------------
# Style dla powiadomień WooCommerce
--------------------------------------------------------------*/

/* Ogólny kontener na powiadomienia */
.woocommerce-notices-wrapper {
    margin: 2em 0;
}

/* Styl dla powiadomienia o sukcesie (np. dodaniu do koszyka) */
.woocommerce-message {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #e5ffe5;
    border: 1px solid #2d6b02;
    color: #2d6b02;
    padding: 1em 2.5em 1em 1.5em; /* Więcej miejsca po prawej na przycisk zamknięcia */
    position: relative;
    list-style: none outside;
    font-family: 'Jost', sans-serif;
    font-weight: 300;
}

/* Styl dla linku "Zobacz koszyk" w powiadomieniu */
.woocommerce-message .button.wc-forward {
    background-color: transparent;
    border: 1px solid #2d6b02;
    color: #2d6b02;
    padding: 0.5em 1em;
    text-transform: uppercase;
    font-weight: 400;
    transition: all 0.3s ease;
    text-decoration: none;
}

.woocommerce-message .button.wc-forward:hover {
    background-color: #2d6b02;
    color: #fff;
}

/* Przycisk do zamykania powiadomienia */
.woocommerce-message a.woocommerce-remove-notice {
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    color: #2d6b02;
    text-decoration: none;
    font-size: 1.5em;
    font-weight: bold;
    line-height: 1;
}

.woocommerce-message a.woocommerce-remove-notice:hover {
    color: #000;
}
/*--------------------------------------------------------------
# Style dla strony pojedynczego produktu (NOWA STRUKTURA HTML - FINALNA)
--------------------------------------------------------------*/

/* --- 1. Kontener na tytuł (100% szerokości) --- */
.single-product .product-title-wrapper {
	width: 100%;
	margin-bottom: 1.5em;
}

.single-product .product-title-wrapper .product_title {
	font-family: 'Jost', sans-serif;
	font-size: 1.5em;
	font-weight: 400;
	line-height: 1.25;
	text-transform: uppercase;
	margin: 0;
	max-width: 50%;
}

/* --- 2. Główny kontener na treść (dwie kolumny) --- */
.single-product .product-main-content {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

/* Kolumna z galerią (lewa) */
.single-product .product-gallery-column {
	flex: 0 1 45%;
	min-width: 320px;
	max-width: 385px;
	position: relative; /* Niezbędne do pozycjonowania naszych nowych strzałek */
}

/* Kolumna z informacjami (prawa) */
.single-product .product-summary-column {
	flex: 0 1 35%;
	min-width: 320px;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	font-size: 0.9375em;
	color: #878787;
	margin-right: 100px;
}

/* Cena */
.single-product .price {
	font-size: 1.8em;
}

/* Główny kontener galerii */
.single-product .woocommerce-product-gallery {
	position: relative;
	width: 100%;
}

/* Główne zdjęcie produktu */
.single-product .woocommerce-product-gallery__wrapper {
	position: relative; /* Niezbędne do pozycjonowania linku lupy */
	border: 1px solid #d1d1d1;
	margin-bottom: 1em; /* Odstęp dla miniaturek */
	overflow: hidden; /* Ukrywa części obrazka, które mogłyby wyjść poza ramkę */
	aspect-ratio: 1 / 1; /* Ustawia stałe, kwadratowe proporcje kontenera */
}

/* Dopasowuje obrazki wewnątrz kontenera */
.single-product .woocommerce-product-gallery__image img {
	width: 100%;
	height: 100%;
	object-fit: contain; /* Kluczowa właściwość: skaluje obrazek, aby zmieścił się w kontenerze */
}

/* Przycisk lupy - ukrywamy go i rozciągamy na całe zdjęcie */
.single-product .woocommerce-product-gallery__trigger {
	/* Zmieniamy pozycjonowanie, aby link pokrywał tylko główne zdjęcie */
	position: absolute; /* Pozycjonowanie względem .woocommerce-product-gallery__wrapper */
	top: 0; left: 0; right: 0; bottom: calc(60px + 1em); /* Ogranicza link do obszaru nad miniaturkami */
	z-index: 1; /* Umieszcza link nad zdjęciem, ale pod ewentualnymi innymi elementami UI */
	font-size: 0; /* Ukrywa tekst (lupkę) wewnątrz linku */
}

/* Kontener na miniaturki (nawigacja slidera) */
.single-product .flex-control-nav {
	/* Tworzymy "okno" dla slidera */
	overflow: hidden;
	scroll-behavior: smooth; /* Płynne przewijanie dla JS */
	list-style: none;
	display: flex;
	gap: 10px; /* Odstęp między miniaturkami */
	justify-content: flex-start; /* Zaczynamy od lewej */
	align-items: center;
	margin: 0;
	padding: 0 40px; /* Robi miejsce na strzałki WEWNĄTRZ kontenera */
}

/* Pojedyncza miniaturka */
.single-product .flex-control-nav li {
	flex-shrink: 0;
	width: 60px; /* Stała szerokość miniaturki */
	height: 60px; /* Stała wysokość miniaturki */
}

.single-product .flex-control-nav li img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* Zapewnia, że obrazek wypełnia miniaturkę bez zniekształceń */
	border: 1px solid #d1d1d1;
	cursor: pointer;
	transition: border-color 0.3s;
}

/* Aktywna miniaturka */
.single-product .flex-control-nav li .flex-active,
.single-product .flex-control-nav li:hover img {
	border-color: #000;
}

/* Ukrywamy domyślne, niepotrzebne strzałki FlexSlidera */
.single-product .woocommerce-product-gallery .flex-direction-nav {
	display: none !important;
}

/* Style dla naszych nowych, niestandardowych strzałek */
.custom-thumb-nav {
	position: absolute;
	top: calc(100% - 30px); /* Pozycjonuje na wysokości miniaturek */
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
	z-index: 10;
	border: 1px solid #d1d1d1;
	transition: border-color 0.3s;
	background: url('assets/images/ico_arrow_down_small.png') no-repeat center center;
}

.custom-thumb-nav:hover {
	border-color: #000;
}

.custom-thumb-prev {
	left: -40px; /* Wypycha strzałkę na lewo od galerii */
	transform: translateY(-50%) rotate(90deg); /* Obraca strzałkę w lewo */
}

.custom-thumb-next {
	right: -40px; /* Wypycha strzałkę na prawo od galerii */
	transform: translateY(-50%) rotate(-90deg); /* Obraca strzałkę w prawo */
}

/* --- 4. Dane techniczne i zakładki --- */

.single_add_to_cart_button {
  padding-left: 20px;
  padding-right: 20px;
}

/*--------------------------------------------------------------
# Style dla przeniesionej nazwy wariantu
--------------------------------------------------------------*/

/* Kontener z opcjami wariantu (próbki, nazwa, link "Wyczyść") */
.single-product .variations .value {
	display: flex;
	flex-direction: column; /* Ustawia elementy w kolumnie */
	align-items: flex-end; /* Wyrównuje do prawej */
	gap: 0.5em; /* Dodaje odstęp między elementami w kolumnie */
}

/* Nazwa wybranego wariantu (nasz nowy element) */
.single-product .custom-selected-variation-name {
	font-size: 0.9em;
	color: #878787;
	font-weight: 400;
	text-transform: capitalize; /* Zmienia np. "czerwony" na "Czerwony" */
}

/*
 * Ukrywa oryginalny element z nazwą wariantu, który jest obok etykiety "Kolor".
 * Używamy !important, aby nadpisać ewentualne style dodawane przez JavaScript wtyczki.
*/
.single-product .woo-selected-variation-item-name {
	display: none !important;
}

/* Nowy kontener na nazwę wariantu i link "Wyczyść" */
.variation-actions-wrapper {
	display: flex;
	justify-content: space-between; /* Rozsuwa elementy na boki */
	align-items: center;
	width: 100%; /* Zajmuje całą dostępną szerokość */
	margin-top: 0.5em; /* Odstęp od próbek kolorów */
}

/*
 * Ukrywa link "Wyczyść" przy wariantach produktu.
 * Używamy !important, aby mieć pewność, że nadpiszemy style dodawane przez JS.
*/
.single-product .reset_variations {
	display: none !important;
}

/*--------------------------------------------------------------
# Style dla sekcji "Dane techniczne" na stronie produktu
--------------------------------------------------------------*/

/* Główny kontener, odpowiednik .box#box_productdata */
.single-product .product-attributes-summary {
	color: #878787;
	font-family: 'Jost', sans-serif;
	font-size: 0.9375em; /* 15px */
	font-weight: 300;
}

/* Tytuł "Dane techniczne", odpowiednik .boxhead */
.single-product .product-attributes-summary h4 {
	border-bottom: none;
	font-size: inherit;
	font-weight: 400;
	text-transform: uppercase;
	color: inherit;
	margin: 0 0 0.7em 0;
	line-height: 40px;
}

/* Tabela atrybutów - resetujemy domyślne style */
.single-product .product-attributes-summary .shop_attributes {
	border: none;
}

/* Wiersz tabeli - tworzymy z niego kontener flex */
.single-product .product-attributes-summary .shop_attributes tr {
	display: flex;
	flex-wrap: wrap;
}

/* Komórki tabeli (zarówno nagłówek, jak i dane) */
.single-product .product-attributes-summary .shop_attributes th,
.single-product .product-attributes-summary .shop_attributes td {
	flex: 0 1 50%; /* Każda komórka zajmuje 50% szerokości */
	box-sizing: border-box;
	border: none;
	padding: 5px 8px;
	line-height: 20px;
}

/* Etykieta atrybutu (np. "Materiał") */
.single-product .product-attributes-summary .shop_attributes th {
	padding-left: 0;
	text-transform: uppercase;
	font-weight: inherit; /* Dziedziczy font-weight z kontenera */
}

/* Wartość atrybutu (np. "Porcelana") */
.single-product .product-attributes-summary .shop_attributes td {
	font-weight: 700; /* Pogrubienie jak w projekcie */
}

/*--------------------------------------------------------------
# Style dla niestandardowej sekcji meta produktu (SKU, Zapytaj o produkt)
--------------------------------------------------------------*/

/* Główny kontener, odpowiednik .productdetails-more-details */
.single-product .product_meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: 1px solid #d8d8d8;
	border-bottom: 1px solid #d8d8d8;
	padding: 1em 0;
	font-size: 0.86em; /* 13px przy bazowym 15px */
	line-height: 2;
	margin-bottom: 3.5em;
}

/* Kontener na kod produktu */
.single-product .product_meta .product-code {
	display: flex;
	gap: 0.5em;
}

.single-product .product_meta .product-code em {
	font-style: normal;
}

/* Kontener na link "Zapytaj o produkt" */
.single-product .product_meta .product-ask-link a {
	color: inherit;
	text-decoration: none;
	transition: color 0.3s;
}

.single-product .product_meta .product-ask-link a:hover {
	color: #000;
}

/* Ikona koperty przed linkiem */
.single-product .product_meta .product-ask-link a span::before {
	font-family: 'FontAwesome'; /* Używamy ikony z FontAwesome */
	content: '\f0e0'; /* Kod dla ikony koperty */
	padding-right: 0.5em;
}

/*--------------------------------------------------------------
# Style dla informacji o czasie wysyłki
--------------------------------------------------------------*/

.single-product .shipping-time-wrapper {
	font-family: 'Jost', sans-serif;
	font-size: 14px; /* Taki sam rozmiar jak "Kod produktu" */
	font-weight: 300;
	color: #878787;
	text-transform: uppercase; /* Zapewnia wielkie litery */
	line-height: 2;
	margin-top: 1em; /* Dodaje odstęp od poprzedniego elementu */
}

/*--------------------------------------------------------------
# Style dla dodatkowej sekcji (Pole wymagane, Przechowalnia)
--------------------------------------------------------------*/

.custom-meta-actions-wrapper {
	display: flex;
	justify-content: space-between; /* Rozsuwa elementy na boki */
	align-items: center;
	width: 100%;
	margin-top: 1.5em; /* Odstęp od sekcji "Do koszyka" */
	font-family: 'Jost', sans-serif;
	font-size: 0.86em;
	color: #878787;
}

/* Styl dla tekstu "* - Pole wymagane" */
.custom-meta-actions-wrapper .required-field-info {
	font-weight: 300;
}

/* Styl dla przycisku "Dodaj do przechowalni" */
.custom-meta-actions-wrapper .tinvwl_add_to_wishlist-text {
	font-weight: 400;
}

.woocommerce-product-attributes-item__label {
  text-align: left;
}

.woocommerce-product-attributes-item__value {
  text-align: right;
}

.tinv-wishlist.tinvwl-after-add-to-cart .tinvwl_add_to_wishlist_button {
  margin-top: 0px!important;
}

/* Ukrywa tytuł wewnątrz panelu zakładki (np. "Opis"), ponieważ jest on już w samej zakładce */
.single-product .woocommerce-tabs .panel h2 {
	display: none;
}

/*--------------------------------------------------------------
# Style dla strony "Moje konto" (wersja dla niezalogowanych)
--------------------------------------------------------------*/

/* --- Podstawy układu dwukolumnowego (zgodnie z dawcą) --- */

/* Kontener na kolumny */
.f-row {
	width: 100%;
}
.f-row::before, .f-row::after {
	display: table;
	content: '';
	line-height: 0;
}
.f-row::after {
	clear: both;
}

/* Definicja kolumny */
.f-row .f-grid-6 {
	float: left;
	min-height: 1px;
	margin-left: 20px;
	box-sizing: border-box;
	width: 48.9361702128%; /* Szerokość dla kolumny 6/12 z odstępem */
}

/* Pierwsza kolumna nie ma lewego marginesu */
.f-row [class*='grid']:first-child {
	margin-left: 0;
}

/* --- Style specyficzne dla #box_login (zgodnie z dawcą) --- */

/* Ukrywamy domyślną kolumnę rejestracji WooCommerce */
.woocommerce-account .u-column2.col-2 {
	display: none;
}

/* Etykiety w formularzu logowania */
#box_login .login-inner label {
	display: block;
}

/* Pola input w formularzu logowania */
#box_login .login-inner input[type="text"],
#box_login .login-inner input[type="password"] {
	width: 90%;
	height: 40px;
	min-height: 40px;
}

/* Przycisk "Zaloguj się" */
#box_login .login-inner .btn {
	margin: .5em 0;
}

/* --- Style dla prawej kolumny (Rejestracja) --- */

/* Formularz rejestracji */
#box_login .register-inner .register-form {
	margin-bottom: 0.5em;
}

/* Przycisk w formularzu rejestracji */
#box_login .register-inner .register-form .btn {
	margin: .5em 0;
}

/* Lista korzyści */
#box_login .register-inner ul {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

#box_login .register-inner ul li {
	list-style-type: square;
	list-style-position: outside;
	margin-left: 20px;
}

/* --- Responsywność (zgodnie z dawcą) --- */
@media screen and (max-width: 767px) {
	.f-row .f-grid-6 {
		width: 100%;
		margin-left: 0;
	}
	#box_login .register-inner {
		border-top: 1px solid #ccc;
		margin-top: 2em;
		padding-top: 1em;
	}
}

/*--------------------------------------------------------------
# Style dla tabeli atrybutów w zakładce "Informacje dodatkowe"
--------------------------------------------------------------*/

/* Główna tabela atrybutów */
.woocommerce-Tabs-panel--additional_information table.shop_attributes {
	width: 100%;
	border-collapse: collapse; /* Zapewnia, że ramki się łączą */
	margin-top: 1em;
}

/* Wiersz w tabeli */
.woocommerce-Tabs-panel--additional_information table.shop_attributes tr {
	border-bottom: 1px solid #f0f0f0; /* Linia oddzielająca wiersze */
}

.woocommerce-Tabs-panel--additional_information table.shop_attributes tr:last-child {
	border-bottom: none; /* Usuwa linię pod ostatnim wierszem */
}

/* Komórki tabeli (etykieta i wartość) */
.woocommerce-Tabs-panel--additional_information table.shop_attributes th,
.woocommerce-Tabs-panel--additional_information table.shop_attributes td {
	padding: 1em 0.5em;
	vertical-align: top;
}

/* Etykieta atrybutu (np. "Materiał") */
.woocommerce-Tabs-panel--additional_information table.shop_attributes th {
	width: 30%; /* Rezerwuje 30% szerokości na etykietę */
	font-weight: 400;
	text-align: left;
}

/*--------------------------------------------------------------
# Style dla niestandardowej galerii produktu (Swiper.js)
--------------------------------------------------------------*/

.km-product-gallery-wrapper {
	position: relative;
	margin: 0 auto;	
	max-width: 385px; /* Szerokość głównego zdjęcia */
	box-sizing: content-box;
}

/* Główny slider */
.km-gallery-top {
	/* border: 1px solid #d1d1d1; */
	margin-bottom: 1em;
}

.km-gallery-top .swiper-slide {
	aspect-ratio: 1 / 1; /* Kwadratowe proporcje */
}

.km-gallery-top .swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain; /* Zdjęcie mieści się w całości */
}

/* Kontener dla miniaturek i strzałek */
.km-thumbs-wrapper {
	position: relative;
	padding: 0 35px; /* Robi miejsce na strzałki wewnątrz kontenera */
}

/* Slider z miniaturkami */
.km-gallery-thumbs {
	height: 60px; /* Wysokość dopasowana do miniaturek */
	box-sizing: border-box;
	padding: 0;
}

.km-gallery-thumbs .swiper-slide {
	width: 60px;
	height: 60px;
	opacity: 0.6;
	cursor: pointer;
	transition: opacity 0.3s;
}

.km-gallery-thumbs .swiper-slide:hover {
	opacity: 1;
}

.km-gallery-thumbs .swiper-slide-thumb-active {
	opacity: 1;
}

.km-gallery-thumbs .swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 1px solid #d1d1d1;
}

.km-gallery-thumbs .swiper-slide-thumb-active img {
	border-color: #000;
}

/* Strzałki nawigacyjne dla miniaturek */
.km-thumbs-prev,
.km-thumbs-next {
	position: absolute;
	top: 50%; /* Pozycjonuje na środku wysokości kontenera miniaturek */
	width: 34px; /* Szerokość przycisku */
	height: 34px; /* Wysokość przycisku */
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 0; /* Resetuje domyślny margines Swipera */
	background-color: transparent; /* Przezroczyste tło */
	border: 1px solid #000; /* Czarna ramka, jak przy przycisku "Do koszyka" */
	transition: background-color 0.3s, color 0.3s;
}

.km-thumbs-prev {
	left: 0; /* Pozycjonuje na lewej krawędzi kontenera .km-thumbs-wrapper */
}

.km-thumbs-next {
	right: 0; /* Pozycjonuje na prawej krawędzi kontenera .km-thumbs-wrapper */
}

.km-thumbs-prev::after,
.km-thumbs-next::after {
	font-size: 14px; /* Znacząco zmniejsza ikonę strzałki */
	color: #000; /* Czarna ikona, spójna z ramką */
	font-weight: bold;
	transition: color 0.3s;
}

.km-thumbs-prev:hover::after,
.km-thumbs-next:hover::after,
.km-thumbs-prev:hover,
.km-thumbs-next:hover {
	background-color: #000; /* Czarne tło po najechaniu */
	color: #fff; /* Biała ikona po najechaniu */
		transition: background-color 0.3s, color 0.3s;
}

.swiper-button-next::after, .swiper-button-prev::after {
  font-family: swiper-icons;
  font-size: 12px!important;
}

.product-gallery-column .swiper {
  margin-left: 10px;
  margin-right: 10px;

}

li.product .woocommerce-LoopProduct-link {
    text-align: center;
}

/*--------------------------------------------------------------
# Style dla niestandardowego Lightboxa (Swiper.js)
--------------------------------------------------------------*/

.km-lightbox-gallery {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.85);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
}

.km-lightbox-slider {
	width: 90%;
	height: 90%;
}

.km-lightbox-slider .swiper-slide {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden; /* Ważne dla działania zoomu */
}

/*
 * POPRAWKA: Kluczowe style dla działania zoomu w Swiper.js.
 * Kontener musi mieć możliwość rozszerzenia się, aby powiększone zdjęcie było widoczne.
*/
.km-lightbox-slider .swiper-zoom-container {
	width: 100%;
	height: 100%;
}

.km-lightbox-slider .swiper-slide img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

/* Przycisk zamknięcia lightboxa */
.km-lightbox-close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	cursor: pointer;
	z-index: 10000;
}

.km-lightbox-close::before,
.km-lightbox-close::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
}

.km-lightbox-close::before {
	transform: rotate(45deg);
}

.km-lightbox-close::after {
	transform: rotate(-45deg);
}

/* Strzałki nawigacyjne w lightboxie */
.km-lightbox-prev,
.km-lightbox-next {
	width: 60px; /* Powiększenie przycisku */
	height: 60px; /* Powiększenie przycisku */
	background-color: transparent;
	border: 1px solid #fff; /* Biała ramka */
	color: #fff; /* Biała ikona strzałki */
	transition: background-color 0.3s, color 0.3s;
}

.km-lightbox-prev:hover,
.km-lightbox-next:hover {
	background-color: #000; /* Białe tło po najechaniu */
	color: #fff; /* Czarna ikona strzałki po najechaniu */
	border: 1px solid #000; /* Biała ramka */
}

/* Dostosowanie wielkości ikon wewnątrz przycisków */
.km-lightbox-prev::after,
.km-lightbox-next::after {
	font-size: 24px; /* Powiększenie ikony strzałki */
	font-weight: bold;
	color: #fff;
}

.km-lightbox-prev::after:hover,
.km-lightbox-next::after:hover {
	color: #fff;
}

.entry-header {
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 0.7em;
  line-height: 40px;
}

#primary .entry-content {
  margin-top: 4em;
  font-family: Arial, sans-serif;
  font-size: 14pt;
}

/* ==========================================================================
   Przywracanie odstępów w treści (żeby wyglądało jak w edytorze)
   ========================================================================== */

/* Celujemy tylko w kontener, gdzie wyświetla się treść z edytora */
.entry-content p,
.entry-content ul,
.entry-content ol,
.entry-content blockquote {
    margin: 0 0 1.5em 0; /* Przywraca dolny odstęp */
    padding: 0; /* Upewnia się, że nie ma dopełnienia */
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
    margin: 1.5em 0 0.75em 0; /* Dodaje odstępy dla nagłówków */
}

/* Przywraca wcięcia dla list */
.entry-content ul,
.entry-content ol {
    margin: 0 0 1.5em 3em;
}


.swiper-slide {
  cursor: pointer;
}

/*--------------------------------------------------------------
# Style dla formularza przypominania hasła
--------------------------------------------------------------*/

/* Celujemy w formularz na stronie /lost-password/ */
.woocommerce-lost-password .lost_reset_password {
	max-width: 500px; /* Ogranicza szerokość formularza, aby wyglądał lepiej */
}

/* Styl dla etykiety (label) */
.woocommerce-lost-password .lost_reset_password label {
	display: block;
	font-size: 1.3em;
	line-height: 30px;
	margin-bottom: 0.5em;
}

/* Styl dla pola tekstowego (input) */
.woocommerce-lost-password .lost_reset_password input[type="text"] {
	width: 100%; /* Pole zajmuje całą szerokość kontenera */
	height: 40px;
	min-height: 40px;
	border: 1px solid #d8d8d8;
	padding: 4px 10px;
	margin-bottom: 1.5em;
	box-sizing: border-box;
}

/* Styl dla przycisku "Zresetuj hasło" */
.woocommerce-lost-password .lost_reset_password .woocommerce-Button {
	/* Kopiujemy style z klasy .btn i .btn-red */
	background-color: #000;
	border: 1px solid #000;
	color: #fff;
	padding: .35em .85em;
	font-size: 1.15em;
	text-transform: lowercase;
	transition: background-color 0.3s linear;
}

.woocommerce-lost-password .lost_reset_password .woocommerce-Button:hover {
	background-color: #444;
	border-color: #444;
	color: #fff;
}

/*--------------------------------------------------------------
# Przycisk "Przewiń do góry" (Scroll Up)
--------------------------------------------------------------*/

.up {
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 100;
	opacity: 0; /* Domyślnie ukryty */
	visibility: hidden; /* Domyślnie ukryty i niedostępny */
	transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

/* Klasa dodawana przez JS, aby pokazać przycisk */
.up.visible {
	opacity: 1;
	visibility: visible;
}

.up span {
	display: none; /* Ukrywa tekst "do góry" */
}

.up .btn {
	color: #fff; /* Biała strzałka */
	background-color: #d8d8d8; /* Czarne tło */
	border: 1px solid #b1b1b1;
	padding: 0.5em 0.7em; /* Dopasowanie paddingu dla lepszego wyglądu */
}

.up .btn:hover {
	background-color: #444;
	border-color: #444;
}

/*--------------------------------------------------------------
# Style dla niestandardowego formularza rejestracji
--------------------------------------------------------------*/

#box_register {
	margin: 0 auto;
}

#box_register h3 {
	font-size: 1.4em;
	line-height: 35px;
	margin-bottom: 1.5em;
}

#box_register .innerbox > div {
	margin-bottom: 1.5em;
}

#box_register .login-label {
	width: 25%;
	display: inline-block;
	text-align: right;
	vertical-align: top;
	line-height: 35px;
	padding-right: 1em;
}

#box_register div.input {
	display: inline-block;
	margin: 0 .2em;
}

#box_register input[type=text],
#box_register input[type="password"],
#box_register input[type="email"] {
	width: 19em;
	min-height: 35px;
	border: 1px solid #d8d8d8;
	padding: 4px 6px;
}

#box_register .hint {
	vertical-align: top;
	line-height: 35px;
	position: relative;
	display: inline-block;
	margin-left: .25rem;
	color: #6d6a6a;
}

#box_register .check-label {
	position: relative;
}

#box_register .checkbox-wrap {
	display: inline-block;
	width: 18px;
	height: 18px;
	border: 1px solid #d8d8d8;
	background-color: #fff;
	position: relative;
	margin: 0 .3em 0 0;
	top: 0.3em;
}

#box_register .checkbox-wrap label {
	display: block;
	width: 100%;
	height: 100%;
}

#box_register .checkbox-wrap input[type=checkbox] {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
}

#box_register .checkbox-wrap input[type=checkbox]:checked+label::after {
	transform: rotate(45deg);
	content: "";
	display: block;
	height: 6px;
	left: 5px;
	position: absolute;
	top: 3px;
	width: 8px;
	border-style: solid;
	border-width: 2px;
	border-color: #000;
	border-top: 0;
	border-left: 0;
}

#box_register .checkbox-wrap+label {
	display: inline;
}

#box_register .checkbox-wrap+label a {
	text-decoration: underline;
}

#box_register .bottombuttons {
	margin-top: 1em;
	text-align: right;
}

/* Responsywność dla formularza rejestracji */
@media screen and (max-width: 767px) {
	#box_register .login-label {
		width: 100%;
		text-align: left;
		line-height: 1.5;
	}
	#box_register div.input {
		display: block;
		margin: 0;
	}
	#box_register input[type=text],
	#box_register input[type="password"],
	#box_register input[type="email"] {
		width: 100%;
	}
	#box_register .hint {
		display: block;
		margin-left: 0;
		line-height: 1.5;
		margin-bottom: 0.7em;
	}
}
}

/* Ukrywanie przycisku na mniejszych ekranach, zgodnie z oryginałem */
@media screen and (max-width: 979px) {
	.up {
		display: none;
	}
}

/*--------------------------------------------------------------
# Style dla komunikatów walidacyjnych WooCommerce
--------------------------------------------------------------*/

/* Ogólny kontener na komunikaty */
.woocommerce-notices-wrapper {
	margin: 0 0 2em 0;
}

/* Lista błędów */
.woocommerce-error {
	list-style: none !important; /* Usuwa domyślne kropki z listy */
	margin: 0 !important;
	padding: 1em 1.5em !important;
	background-color: #fde8e8;
	border: 1px solid #e0b4b4;
	color: #a94442;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
}

/* Pojedynczy błąd na liście */
.woocommerce-error li {
	margin: 0 !important;
	padding: 0 !important;
	list-style-type: none !important;
}

.btn.register {
  text-decoration: none;
}

/*--------------------------------------------------------------
# Style dla produktów z bloków WooCommerce (np. na stronie pustego koszyka)
--------------------------------------------------------------*/

/* 1. Główny kafelek produktu */
.wc-block-grid__product {
	display: flex;
	flex-direction: column;
	text-align: center;
	font-family: 'Jost', sans-serif;
}

/* 2. Link otaczający zdjęcie i tytuł */
.wc-block-grid__product-link {
	text-decoration: none;
	color: inherit;
	display: flex;
	flex-direction: column;
	flex-grow: 1; /* Sprawia, że link rozciąga się, aby wypchnąć cenę i przycisk na dół */
}

.wc-block-grid__product-link:hover {
	text-decoration: none;
}

/* 3. Obrazek produktu */
.wc-block-grid__product-image {
	margin-bottom: 0.5em;
}

.wc-block-grid__product-image img {
	height: auto;
	object-fit: contain;
	object-position: center;
	width: 100%;
	min-height: 330px; /* Zapewnia spójną wysokość obrazków, tak jak na stronie sklepu */
}

/* 4. Tytuł produktu */
.wc-block-grid__product-title {
	font-size: 1em;
	font-weight: 400;
	line-height: 1.75;
	text-transform: uppercase;
	margin: 0.5em 0;
	min-height: 3.5em; /* Miejsce na dwie linie tekstu */
}

/* 5. Cena produktu */
.wc-block-grid__product-price {
	font-family: 'Jost', sans-serif;
	color: #000;
	font-size: 1em;
	font-weight: 400;
	line-height: 1.75;
	padding-top: 0;
	margin-top: auto; /* Wypycha cenę na dół, jeśli link nie ma wystarczającej zawartości */
}

/* POPRAWKA: Ujednolicenie rozmiaru czcionki dla kwoty ceny */
.wc-block-grid__product-price .woocommerce-Price-amount.amount {
	font-size: 1.1em; /* Zwiększamy rozmiar czcionki dla lepszej widoczności */
	font-weight: 400;
	text-transform: uppercase; /* POPRAWKA: Wymusza wielkie litery dla całej ceny, w tym "ZŁ" */
}

/* 6. Przycisk "Do koszyka" */
.wc-block-grid__product-add-to-cart a.wp-block-button__link {
	/* Kopiujemy style z głównego przycisku */
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 1em auto 0;
	background-color: transparent;
	border: 1px solid #000;
	color: #000 !important; /* Używamy !important, aby nadpisać domyślne kolory bloków */
	font-family: inherit;
	font-size: 0.875em;
	padding: 0em;
	font-weight: 300;
	transition: 0.33s;
	width: min(12.5em, 100%); /* POPRAWKA: Przywracamy stałą szerokość, tak jak na stronie sklepu */
	border-radius: 0; /* Resetujemy zaokrąglenie z bloków */
}

.wc-block-grid__product-add-to-cart a.wp-block-button__link:hover {
	background-color: #000;
	color: #fff !important;
	text-decoration: none;
}

/* Ikona w przycisku "Do koszyka" */
.wc-block-grid__product-add-to-cart a.wp-block-button__link::before {
	background-image: url('assets/images/user/basket.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	height: 1.5em;
	margin-right: 0.6em;
	transition: 0.33s;
	width: 1.7em;
}

.wc-block-grid__product-add-to-cart a.wp-block-button__link:hover::before {
	filter: invert(1);
}

.wp-block-woocommerce-cart .tinvwl_add_to_wishlist_button {
  display: none;
}

.woocommerce-Price-amount.amount {
  text-transform: uppercase;
}
.wp-block-button.wc-block-grid__product-add-to-cart {
  width: min(12.5em, 100%);
}

/*
 * POPRAWKA: Ukrywa statyczny przycisk zamknięcia wyszukiwania,
 * który jest widoczny na desktopie, ponieważ jest on zastąpiony
 * przez dynamiczną nakładkę wyszukiwania.
 */
.js__search-close-btn {
    display: none !important;
}


#primary .woocommerce.columns-4 {
  padding: 50px;
}

/*--------------------------------------------------------------
# Style dla przycisku "Kupuję i płacę" na stronie kasy
--------------------------------------------------------------*/

/* Celujemy w przycisk na stronie kasy (checkout) */
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
	/* Kopiujemy style z innych przycisków na stronie */
	background-color: transparent !important; /* Używamy !important, aby nadpisać domyślne tło z bloków */
	border: 1px solid #000 !important;
	color: #000 !important;
	font-family: 'Jost', sans-serif;
	font-size: 1em; /* Ustawiamy standardowy rozmiar czcionki */
	font-weight: 400;
	text-transform: uppercase;
	transition: 0.33s;
	cursor: pointer;
	width: 100%; /* Przycisk zajmuje całą szerokość */
	padding: 0.8em 1.5em !important;
	border-radius: 0 !important; /* Resetujemy zaokrąglenie z bloków */
}

/* Styl dla tekstu wewnątrz przycisku */
.woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
	color: inherit !important; /* Tekst dziedziczy kolor z przycisku */
}

/* Efekt po najechaniu myszką */
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
	background-color: #000 !important;
	color: #fff !important;
	border-color: #000 !important;
}


#primary-menu.menu-list {
  width: 20rem;
  padding-right: 25px;
  padding-bottom: 10px;
  padding-top: 10px;
}
.otgs-installer-notice {
  display: none!important;
}


.woocommerce-order-details .woocommerce-table {
    width: 100%;
    margin: 0 0 1.5em;
    border-collapse: collapse;
}


.woocommerce-order-details .woocommerce-table thead,
.woocommerce-order-details .woocommerce-table tfoot {
    border-top: 1px solid #d8d8d8;
}


.woocommerce-order-details table.shop_table {
    margin-bottom: 0;
}


.woocommerce-order-details .woocommerce-table th,
.woocommerce-order-details .woocommerce-table td {
    padding: 1em 0;
    border-bottom: 1px solid #f0f0f0;
    text-align: left;
    font-weight: 300;
    color: #878787; 
}


.woocommerce-order-details .woocommerce-table tbody tr {
    border-bottom: none;
}


.woocommerce-order-details .woocommerce-table .product-total,
.woocommerce-order-details .woocommerce-table tfoot td {
    text-align: right;
    color: #000;
}


.woocommerce-order-details .woocommerce-table thead th {
    text-transform: uppercase;
    font-weight: 400;
    color: #000;
    font-size: 0.9em;
}


.woocommerce-order-details .woocommerce-table tfoot tr th {
    text-align: right;
    font-weight: 400;
    color: #000;
    text-transform: none;
}

.woocommerce-order-details .woocommerce-table tfoot tr:last-child th,
.woocommerce-order-details .woocommerce-table tfoot tr:last-child td {
    border-bottom: none;
}

.woocommerce-order-details .product-name a {
    font-weight: 400;
    color: #000;
    text-decoration: none;
}
.woocommerce-order-details .product-name a:hover {
    color: #444;
}

.woocommerce-order-details .woocommerce-Price-amount.amount {
    font-weight: 400;
    color: #000;
    text-transform: uppercase;
}


.woocommerce-order-details .product-quantity {
    font-weight: 400;
}


.woocommerce-order-details .woocommerce-table tbody td,
.woocommerce-order-details .woocommerce-table tfoot td {
    color: #000; /* Wartości są czarne */
}


.woocommerce-order-details .woocommerce-table td {
    line-height: 1.5;
}

/* --- POPRAWKA: Układ produktów w siatce 4 kolumn - Wzmocnienie Flexbox i neutralizacja floatów --- */

/* 1. Upewnij się, że lista produktów zawsze używa Flexbox */
.woocommerce ul.products {
    display: flex !important; 
    flex-wrap: wrap !important;
}

/* 2. Neutralizacja wszelkich możliwych konfliktów float / clear, 
   które mogłyby być dodane przez WooCommerce (np. klasy .first i .last) */
.woocommerce ul.products li.product {
    float: none !important;
    clear: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

/* 3. Wymuś szerokość 4 kolumn (25%) na odpowiednim poziomie specyficzności */
.woocommerce.columns-4 ul.products li.product {
    width: 25% !important; 
    /* Użyjemy istniejących paddingów dla zachowania odstępów */
    padding: 0 15px !important; 
    margin: 0 0 30px 0 !important; 
}

/* 4. Upewnij się, że responsywność jest poprawna dla 4 kolumn */

/* 3 kolumny (poniżej 980px) */
@media (max-width: 980px) {
    .woocommerce.columns-4 ul.products li.product {
        width: 33.333% !important; 
    }
}

/* 2 kolumny (poniżej 767px) */
@media (max-width: 767px) {
    .woocommerce.columns-4 ul.products li.product {
        width: 50% !important;
    }
}

/* 1 kolumna (poniżej 480px) */
@media (max-width: 480px) {
    .woocommerce.columns-4 ul.products li.product {
        width: 100% !important;
    }
}

/* -----------------------------------------------------------
   STYLIZACJA KASY - NUMEROWANE BLOKI (PERFEKCYJNE WYRÓWNANIE)
   ----------------------------------------------------------- */

/* 1. Inicjalizacja licznika dla całej sekcji kasy */
.wc-block-checkout {
    counter-reset: checkout-steps;
}

/* 2. Główny boks sekcji */
.wc-block-components-checkout-step {
    background: #fff;
    border: 1px solid #ddd;
    padding: 0;
    /*! margin-bottom: 40px; */
    border-radius: 0; /* Kanciaste rogi (zgodnie z motywem) */
    overflow: hidden; /* Żeby tło nagłówka nie wystawało */
}

/* 3. Nagłówek sekcji (Pasek z tytułem) */
.wc-block-components-checkout-step__heading {
    background-color: #f9f9f9; /* Bardzo jasne szare tło */
    padding: 20px 20px 20px 70px; /* Lewy padding robi miejsce na numer */
    border-bottom: 1px solid #eee;
    position: relative; /* WAŻNE: To pozwala pozycjonować numer względem tego paska */
    display: flex;       /* Flexbox pomaga w pionowym centrowaniu tekstu */
    align-items: center; /* Tekst tytułu też wyśrodkowany w pionie */
    min-height: 75px;    /* Minimalna wysokość paska, żeby wyglądał solidnie */
}

/* 4. Numer sekcji (Kółko) */
.wc-block-components-checkout-step__heading::before {
    /* Logika licznika */
    counter-increment: checkout-steps;
    content: counter(checkout-steps);
    
    /* Pozycjonowanie idealnie na środku w pionie */
    position: absolute;
    left: 20px;
    top: 50%; /* Ustaw górną krawędź na środku... */
    transform: translateY(-50%); /* ...i cofnij o połowę wysokości kółka */
    
    /* Wygląd kółka */
    width: 35px;
    height: 35px;
    background-color: #000; /* Czarne tło */
    color: #fff; /* Biała cyfra */
    border-radius: 50%; /* Idealne kółko */
    
    /* Wygląd cyfry */
    text-align: center;
    line-height: 35px; /* Musi być równe wysokości kółka, żeby cyfra była na środku */
    font-weight: 500;
    font-family: 'Jost', sans-serif;
    font-size: 16px;
    z-index: 2;
}

/* 5. Tytuł sekcji (np. "DANE OSOBOWE") */
.wc-block-components-checkout-step__title {
    font-size: 1.15em;
    font-weight: 500;
    text-transform: uppercase;
    color: #000;
    margin: 0;
    line-height: 1.2;
    letter-spacing: 0.5px;
}

/* 6. Wnętrze boksu (Pola formularza) */
.wc-block-components-checkout-step__container {
    padding: 30px;
}

/* RESPANSYWNOŚĆ */
@media (max-width: 767px) {
    .wc-block-components-checkout-step__heading {
        padding: 15px 15px 15px 60px; /* Mniejsze odstępy na telefonie */
        min-height: 60px;
    }
    .wc-block-components-checkout-step__heading::before {
        left: 15px; /* Przesuwamy numer bliżej krawędzi na małym ekranie */
    }
}

/* Ukrycie "smutnej minki" w pustym koszyku (Bloki WooCommerce) */
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before,
.wc-block-cart__empty-cart__title svg {
    display: none !important;
}

/* Usunięcie marginesu, który zostaje po ikonce */
.wc-block-cart__empty-cart__title.with-empty-cart-icon {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 30px !important; /* Odstęp pod napisem */
}

/* --- STYLIZACJA PRZYCISKU "PRZEJDŹ DO SKLEPU" W PUSTYM KOSZYKU --- */

/* 1. Wygląd podstawowy */
.wp-block-woocommerce-empty-cart-block .wp-block-button__link {
    background-color: transparent !important; /* Przezroczyste tło */
    border: 1px solid #000 !important;      /* Cienka czarna ramka */
    color: #000 !important;                 /* Czarny tekst */
    
    font-family: 'Jost', sans-serif !important;
    font-weight: 300;                       /* Lekka czcionka (zgodna z motywem) */
    text-transform: uppercase;              /* Wielkie litery */
    font-size: 0.9em;                       /* Rozmiar pasujący do reszty */
    
    padding: 12px 35px !important;          /* Odpowiednie odstępy wewnątrz */
    border-radius: 0 !important;            /* Kanciaste rogi (brak zaokrągleń) */
    transition: all 0.3s ease;              /* Płynna zmiana koloru */
    text-decoration: none !important;
    box-shadow: none !important;            /* Usunięcie cieni Gutenberga */
}

/* 2. Wygląd po najechaniu myszką (Hover) */
.wp-block-woocommerce-empty-cart-block .wp-block-button__link:hover {
    background-color: #000 !important;      /* Zmienia tło na czarne */
    color: #fff !important;                 /* Zmienia tekst na biały */
    border-color: #000 !important;
    opacity: 1 !important;
}

/* Opcjonalnie: Centrowanie kontenera przycisku (jeśli "ucieka") */
.wp-block-woocommerce-empty-cart-block .wp-block-buttons {
    justify-content: center !important;
    display: flex !important;
}