/*
Theme Name: Wiwi Child
Template: wiwi
*/

/*
body {background:red !important;}
**/

body:not(.home) .nav_top.fixed {}


.subheader-wrapper .sub-crumb {
	display: none;
}

/* .subheader-wrapper h1 {
	    transform: translatey(25px);
} */

#header {
	height: 4.5em;
}

.custom-class-header-v3 {
	margin-bottom: 0px !important;
}

.top_nav_bar_wrap {
	padding: 0px 0px;
}

.cstm_mobile_open_dekstop {
	margin-top: 0em !important;
}

.search-button {
	cursor: pointer;
}

.search-container {
	position: absolute;
	width: 14em;
	right: 0;
	top: 50px;
	visibility: hidden;
	transition: .4s all;
	transform: translatey(-30px);
	opacity: 0;
}

.search-container.active {
	visibility: visible;
	transform: translatey(0px);
	opacity: 1;
}

.search-wrapper {
	margin-right: 20px;
}

.svg_map {
	max-height: 500px;
}

.is-menu.is-dropdown form {
	min-width: unset;
}


.search-results .subheader-mask {
	background-image: url('/wp-content/uploads/2022/06/Mask-Group-101.jpg"');
	background-size: cover;
}

.menu-menutopheader-container li {
	position: relative;
	background-color: transparent;
	transition: .4s all;
}

.menu-menutopheader-container li:hover,
.menu-menutopheader-container li.current-menu-item {
	background-color: #ffdf27;
}

.navbar-nav li {
	position: relative;
	width: 100%;
}

.cstm_mobile_open_dekstop {
	padding-right: 0 !important;
	width: 100%;
}

.navbar-nav li::before {
	content: '';
	background-color: transparent;
	width: calc(100% + 30px);
	height: 2.5em;
	position: absolute;
	left: -30px;
	top: 50%;
	transform: translatey(-50%);
	transition: .4s all;
	z-index: -1;
}

.navbar-nav li:hover::before {
	background-color: white;
}

.navbar-nav .astm-search-menu {
	display: none;
}

.search-results .content .h5 {
	display: none;
}

.wpcf7-form-control.wpcf7-text {
	width: 100%;
}

.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
}

.wpcf7-form-control.wpcf7-quiz {
	width: 100%;
}

label {
	width: 100%;
}

.wpcf7-checkbox label {
	padding: 0 !important;
}

.wpcf7-list-item-label {
	padding-left: 10px;
}

@media(min-width: 1200px) {

	html.fixed-header body.blog,
	html.fixed-header body.archive,
	html.fixed-header body.error404,
	html.fixed-header body.single-post {
		padding-top: 0 !important;
	}

}

@media (max-width: 1199px) {
	.subheader-wrapper {
		min-height: 180px;
	}
}

@media (max-width: 767px) {
	.subheader-wrapper {
		min-height: 180px !important;
	}
	
	.contact-float-mobile {
		display: flex;
	}
}

.sub-catalog .content .categories {
	display: none;
}

.tax-catalog_cat .subheader-wrapper,
.search .subheader-wrapper {
	display: none;
}

.cont-products-related .sub-catalog .custom_title {
	display: none;
}

.pcMenuWrap {
	left: auto;
	right: 0;
}

.formF_title {
	display: flex;
	justify-content: center;
}

.formF_h2 {
	font-weight: bold;
	text-transform: uppercase;
	font-size: calc(100% + 50%);
}

.formF-group {
	margin-bottom: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.formF-fieldset {
	flex-basis: calc(50% - 10px);
	/* 50% width with some space in between */
	margin-bottom: 10px;
	display: block;
	margin-inline-start: 2px;
	margin-inline-end: 2px;
	/*padding-block-start: 0.35em;
	padding-inline-start: 0.75em;
	padding-inline-end: 0.75em;
	padding-block-end: 0.625em;*/
	max-height: 75px;
	min-inline-size: min-content;
	border-width: 2px;
	border-style: groove;
	border-color: rgb(192, 192, 192);
	border-image: initial;
	line-height: 1.5;
	margin-bottom: 40px;


}

.formF-fieldset-wide {

	margin-bottom: 10px;
	display: block;
	margin-inline-start: 2px;
	margin-inline-end: 2px;
	padding-block-start: 0.35em;
	padding-inline-start: 0.75em;
	padding-inline-end: 0.75em;
	padding-block-end: 0.625em;
	min-inline-size: min-content;
	border-width: 2px;
	border-style: groove;
	border-color: rgb(192, 192, 192);
	border-image: initial;
}

.formF-fieldset-short {
	height: min-content;
}

.formF_legend {
	display: block;
	padding-inline-start: 2px;
	padding-inline-end: 2px;
	border-width: initial;
	border-style: none;
	border-color: initial;
	border-image: initial;
	width: auto;
	display: inline-block;
	padding: 0 12px;
	margin: 0 0 0 13px;
	font-size: 18px;
	line-height: 1em;
	letter-spacing: -0.01em;
}

.formF_label.required::after {
	content: "*";
	color: red;
}

.formF_input_unscrollable,
.formF_textarea_unscrollable,
.formF_select_unscrollable {
	background: none;
	border: none;
	outline: none;
	width: 100%;
	font-size: 18px;
	margin: 0;
	/* padding: 10px 25px 19px 25px; */
	padding-left: 2%;
	padding-right: 2%;
	font-family: inherit;
	overflow: hidden;

}

.formF_input,
.formF_textarea,
.formF_select {
	background: none;
	border: none;
	outline: none;
	width: 100%;
	font-size: 18px;
	margin: 0;
	/*padding: 10px 25px 19px 25px;*/
	font-family: inherit;
}

.formF_textarea {
	height: 100px;
}

.wpcf7-submit {
	font-weight: bold;
	text-transform: uppercase;
	background-color: #ffdd00;
	color: #2d3b4b;
	border: none;
	padding: 15px 40px;
	cursor: pointer;
	border-radius: 5px;
	font-size: 16px;
	transition: background-color 0.3s ease;
	text-align: center;
	/* For inline or inline-block elements */
	/* OR */
	margin: 0 auto;
	/* For block-level elements */
}

.formF_button {
	font-weight: bold;
	text-transform: uppercase;
	background-color: #ffdd00;
	color: #2d3b4b;
	border: none;
	padding: 15px 40px;
	cursor: pointer;
	border-radius: 5px;
	font-size: 16px;
	transition: background-color 0.3s ease;
	text-align: center;
	/* For inline or inline-block elements */
	/* OR */
	margin: 0 auto;
	/* For block-level elements */
}

.formF_button:hover {
	background-color: #ffcc00;
}


/* Media query for small screens */
@media (max-width: 700px) {
	.formF-fieldset {
		flex-basis: 100%;
		/* Full width for small screens */
	}
}


/* Styling for [acceptance rodo class:formF_checkbox] */
.formF_checkbox {
	display: flex;
	align-items: center;
	margin-top: 10px;
	transform: scale(2);
	/* Adjust the scale factor as needed */

}

.formF_checkbox label {
	margin-left: 10px;
}

.formF_checkbox input {
	opacity: 0;
	position: absolute;
}

.formF_checkbox .checkbox-custom {
	position: relative;
	display: inline-block;
	width: 18px;
	height: 18px;
	background-color: #fff;
	border: 1px solid #000;
	border-radius: 3px;
}

.formF_checkbox input:checked+.checkbox-custom:after {
	content: '\2713';
	font-size: 14px;
	color: #000;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.wpcf7 .wpcf7-submit:disabled {
    cursor: not-allowed;
    background-color: #ffdd008f;
}

/* Filter section - Align filters in one row */
.filters {
	
	display: flex;
	flex-wrap: nowrap; /* Keeps filters in one row */
	gap: 8px; /* Adds spacing between filters */
	justify-content: start; /* Centers filters horizontally */
	align-items: flex-start; /* Aligns filters properly */
	margin-bottom: 30px;
}

/* Filter container for each label + select */
.filter-group {
	display: flex;
	flex-direction: column; /* Stack label above select */
	align-items: center; /* Center align text */
	position: relative;
	margin-right: 8px;
}

.language-filter {
    margin: 0;
}



/* Label styles */
.filters label {
	margin-bottom: 3px;
	display: block;
	font-size: 14px;
}

/* Dropdown (select) styles */
.filters select {
	appearance: none;
	-webkit-appearance:none;
	-moz-appearance: none;
	background-color: #ffffff;
	color: black;
	border: 1px solid white;
	padding: 8px;
	border-radius: 1000px;
	width: 197px;
	padding: 5px 30px;
	position: relative;
}


.select-wrapper {
    position: relative;
    display: inline-block;
}


/* Custom arrow */
.filter-group::after {
    content: ""; /* Unicode arrow */
	background-image: url('data:image/svg+xml;charset=UTF-8,<svg width="15" height="10" viewBox="0 0 15 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M14.2155 0.585581C14.6437 0.931264 14.6987 1.56367 14.3365 1.97803L7.32458 10L0.645473 1.9767C0.29313 1.55345 0.363221 0.922148 0.799822 0.586488C1.21311 0.268752 1.80359 0.334311 2.13712 0.734961L7.36178 7.0111L12.8766 0.70192C13.2192 0.309893 13.8104 0.25853 14.2155 0.585581Z" fill="%23000000"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 14px;
    color: black;
    position: absolute;
    transform: translateY(-50%);
    pointer-events: none;
	top: 70%;
    right: 15px;
    width: 15px;
    height: 10px;
}


/* Form container to keep all filters in one row */
.filters form {
	display: flex;
	flex-wrap: nowrap;
	gap: 20px;
	justify-content: center;
	align-items: flex-start;
}

/* Attachments Grid - Using Flexbox */
.attachments-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* 3 columns by default */
	gap: 115px 8px;
	margin-bottom: 15px;
}

.attachment-wrapper {
	display: flex;
	flex-direction: column;
}

/* Content BELOW the card */
.content {

	margin-top: 10px; /* Adds spacing between card and text */
}

/* Name & Type Styling */
.content h2 {
	font-size: 26px;
	font-weight: bold;
	margin-top: 11px;
	margin-bottom: 2px;
}

.content p {
	font-size: 26px;
	margin: 0;
}


/* Individual Attachment Card */
.attachment-card {
	position: relative;
	/* 3 columns */
	width: 100%;
    min-width: 400px;
	height: 400px;
	background: rgba(255, 255, 255, 0.1);
	overflow: hidden;
	transition: transform 0.3s ease-in-out, background 0.3s ease-in-out;
}

/* Image Styling (Full Width & Height) */
.attachment-card img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* Ensures image covers the full card */
	transition: filter 0.3s ease-in-out;
}

.attachment-card .card-overlay {
	position: absolute;
	inset: 0; /* Covers the entire card */
	background: rgba(0, 0, 0, 0.4);
	color: white;
	display: flex;
	flex-direction: column;
	justify-content: center; /* Aligns content at the bottom */
	padding: 15px;
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
}

.card-overlay h4 {
	color: white;
	margin-bottom: 38px;
}
.card-overlay h3 {
	color: white;
	margin: 0;
}

/* Hover Effect: Darken Image & Show Overlay */
.attachment-card:hover .card-overlay {
	opacity: 1;
}

/* Card Details (Text at Bottom) */
.card-details {
	background: rgba(0, 0, 0, 0.6);
	padding: 10px;
	text-align: center;
	position: absolute;
	bottom: 0;
	width: 100%;
}

/* Name & Type Styling */
.card-details h3, .card-details h4 {
	margin: 5px 0;
	font-size: 16px;
	font-weight: bold;
}

/* Table for Details */
.card-overlay .details-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 10px;
	color: white;
	border: 1px solid rgba(255, 255, 255, 0.5);
}

.card-overlay .details-table td {
	padding: 5px;
	text-align: left;
	font-size: 14px;
}

/* "Szczegóły" Button */
.attachment-card .button {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #FFDE00;
	color: black;
	font-weight: bold;
	padding: 12px 20px;
	border-radius: 1000px;
	text-decoration: none;
	transition: background 0.3s ease-in-out;
	width: 200px;
	height: 37px;
	margin-top: 15px;
	position: relative;
	font-size: 16px;
}

.card-wraper {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}

.attachment-card .button:hover {
	background-color: #ffcc00;
}

.attachment-card:hover .content {
	opacity: 1;
}

/* Responsive Behavior */
@media (max-width: 1024px) {
	.attachment-card {
		
	}
}

@media (max-width: 768px) {
	.attachment-card {
		min-width: 0;
		
	}
}

@media (max-width: 1024px) {
	.filters {
		flex-wrap: wrap; /* Allow wrapping on smaller screens */
	}
}

@media (max-width: 768px) {
	.filters {
		flex-direction: column; /* Stack filters on smaller screens */
		align-items: center;
	}

}

/* Product Detail Layout */
.product-detail-container {
	display: flex;
	flex-wrap: wrap;
	gap: 2px;
	justify-content: center;
	align-items: flex-start;
	margin-bottom: 25px;
}

/* Left side - Product Images */
.product-images {
	flex: 1 1 50%;
	max-width: 600px;
}

/* Main Slider */
.main-slider {
	width: 100%;
}

/* Right side - Product Details */
.product-details {
	flex: 1 1 40%;
	color: white;
}

.product-details h1 {
	font-weight: bold;
}

/* Specification Table */
.spec-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 35px;
	color: black;
	border: 1px solid black;
}

.spec-table td {
	color: black;
	padding: 8px;
	border-bottom: 1px solid black;
}

.spec-table td:first-child {
	text-align: left;
	
}

.spec-table td:last-child {
	text-align: right;
}

.spec-table tr:first-child > td:nth-of-type(odd) {
	background: transparent !important;
	font-weight: normal;
}

.spec-table tr:first-child > td:nth-of-type(even) {
	background: transparent !important;
	font-weight: normal;
}

.details-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 10px;
	color: white;
	border: 1px solid rgba(255, 255, 255, 0.5);
}

.details-table td {
	padding: 5px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	text-align: left;
	font-size: 14px;
}

.details-table td:first-child {
	text-align: left;
}

.details-table td:last-child {
	text-align: right;
}
.details-table tr:first-child > td:nth-of-type(odd) {
	background: transparent !important;
	font-weight: normal;
}
.details-table tr:first-child > td:nth-of-type(even) {
	background: transparent !important;
	font-weight: normal;
}


/* Price & Inquiry Button */
.price-container {
	font-size: 20px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 35px;
	margin-top: 70px;
}

.price-container span {
	font-size: 20px;
	color: black;
}

.inquiry-button {
	display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFDE00;
    color: black;
    font-weight: 600;
    padding: 8px;
    border-radius: 1000px;
    text-decoration: none;
    transition: background 0.3s ease-in-out;
    margin-top: 35px;
    position: relative;
    font-size: 20px;
}

.inquiry-button:after {
	
	content: ""; /* Unicode arrow */
	    background-image: url('data:image/svg+xml;utf8,<svg width="30" height="24" viewBox="0 0 30 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 10.5C1.17157 10.5 0.5 11.1716 0.5 12C0.5 12.8284 1.17157 13.5 2 13.5L2 10.5ZM29.0607 13.0607C29.6464 12.4749 29.6464 11.5251 29.0607 10.9393L19.5147 1.3934C18.9289 0.807613 17.9792 0.807613 17.3934 1.3934C16.8076 1.97919 16.8076 2.92893 17.3934 3.51472L25.8787 12L17.3934 20.4853C16.8076 21.0711 16.8076 22.0208 17.3934 22.6066C17.9792 23.1924 18.9289 23.1924 19.5147 22.6066L29.0607 13.0607ZM2 13.5L28 13.5L28 10.5L2 10.5L2 13.5Z" fill="black"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 14px;
    color: black;
    position: absolute;
    transform: translateY(-50%);
    pointer-events: none;
	top: 50%;
    right: 15px;
    width: 30px;
    height: 24px;
}

.inquiry-button:hover {
	background-color: #ffcc00;
}

.inquiry-button svg {
	margin-left: 10px;
}

/* Expandable Sections */
.accordion {
	margin-top: 75px;
	width: 100%;
}

.accordion-item {
	margin-bottom: 10px;
	overflow: hidden;
	color: black;
}

.accordion-title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	font-weight: bold;
	color: black;
	border-bottom: 1px solid black;
}

.accordion-title svg {
	transition: transform 0.3s ease-in-out;
}

.accordion-content {
	display: none;
	background: rgba(255, 255, 255, 0.05);
}

.accordion-item.active .accordion-content {
	display: block;
}

.accordion-item.active .accordion-title svg {
	transform: rotate(180deg);
}

/* Custom Specification Table */
.custom-spec-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 20px;
	background: transparent !important; /* Prevent theme background color */
	color: black;
}

/* Custom Table Rows */
.custom-row {
	background: transparent !important; /* Ensure background stays clean */
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	
}

/* Custom Table Cells */
.custom-cell {
	padding: 8px;
	font-size: 14px;
	color: white;
	text-align: left;
	background: transparent !important; /* Prevent theme override */
}

/* Ensure last row does not have a border */
.custom-row:last-child {
	border-bottom: none;
}

.return-button {
    display: flex;
    align-items: center;
    justify-content: right;
    background-color: #FFDE00;
    color: black;
    font-weight: bold;
    padding: 12px 20px;
    border-radius: 1000px;
    text-decoration: none;
    transition: background 0.3s ease-in-out;
    width: 200px;
    height: 37px;

    position: relative;
    font-size: 16px;
	margin-bottom: 15px;
}

.return-button:hover {
	background-color: #ffcc00;
}

.return-button:after {
    content: "";
    background-image: url('data:image/svg+xml;utf8,<svg width="30" height="24" viewBox="0 0 30 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 10.5C1.17157 10.5 0.5 11.1716 0.5 12C0.5 12.8284 1.17157 13.5 2 13.5L2 10.5ZM29.0607 13.0607C29.6464 12.4749 29.6464 11.5251 29.0607 10.9393L19.5147 1.3934C18.9289 0.807613 17.9792 0.807613 17.3934 1.3934C16.8076 1.97919 16.8076 2.92893 17.3934 3.51472L25.8787 12L17.3934 20.4853C16.8076 21.0711 16.8076 22.0208 17.3934 22.6066C17.9792 23.1924 18.9289 23.1924 19.5147 22.6066L29.0607 13.0607ZM2 13.5L28 13.5L28 10.5L2 10.5L2 13.5Z" fill="black"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 14px;
    color: black;
    position: absolute;
    transform: translateY(-50%);
    pointer-events: none;
    left: 15px;
    width: 30px;
    height: 24px;
	transform: rotate(180deg);
}

.contact-float {
    position: fixed;
    right: 0;
    bottom: 16rem;
    z-index: 1000;
    background: #263245;
    color: #fff;
    width: 200px;
    /* height: 40px; */
    /* border-radius: 50%; */
    box-shadow: 0 4px 20px rgba(44, 51, 73, 0.25);
    display: flex
;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, box-shadow 0.2s, transform 0.2s;
    cursor: pointer;
    text-decoration: none;
    font-size: 14px;
    word-wrap: break-word;
    /* min-width: 100px; */
    /* padding-left: 15px; */
    text-align: center;
    border-radius: 1000px;
    /* width: 197px; */
    padding: 10px 15px;
    background-color: #FFDE00;
    color: black;
}

.contact-float-mobile {
    position: fixed;
    right: 2.3rem;
    bottom: 16rem;
    z-index: 1000;
    background: #263245;
    color: #fff;
    width: 50px;
	height: 50px;
    /* height: 40px; */
    /* border-radius: 50%; */
    box-shadow: 0 4px 20px rgba(44, 51, 73, 0.25);
    display: none;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, box-shadow 0.2s, transform 0.2s;
    cursor: pointer;
    text-decoration: none;
    font-size: 14px;
    word-wrap: break-word;
    /* min-width: 100px; */
    /* padding-left: 15px; */
    text-align: center;
    border-radius: 1000px;
    /* width: 197px; */
    padding: 10px 15px;
    background-color: #FFDE00;
    color: black;
}

.contact-float:hover {
  background: #1b2536;
  box-shadow: 0 8px 28px rgba(44, 51, 73, 0.32);
  transform: translateY(-2px) scale(1.05);
	color: white;
}
.contact-float svg {
  display: block;
}

/* Responsive Design */
@media (max-width: 1024px) {
	.product-detail-container {
		flex-direction: column;
		align-items: center;
	}

	.product-images, .product-details {

		max-width: 100%;
	}
	.attachments-container {
		grid-template-columns: repeat(1, 1fr); /* 1 column on mobile */
	}
	.contact-float {
		display: none;
	}
	.contact-float-mobile {
		display: flex;
	}

}