/*
Theme Name: Better Every Day
Author: arkzy.creative Arkadiusz Fryc
Author URI: https://arkzy.pl
Theme URI: https://arkzy.pl
Description: Custom Better Every Day Theme Based on Air-Light by Arkadiusz Fryc (arkzy.creative) - https://arkzy.pl 
Version: 1.0
*/

/* Reset */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

html,
body,
* {
	box-sizing: border-box;
}

body {
	line-height: 1;
	/* fixed invalid property */
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
	user-select: none;
	-webkit-user-drag: none;
}

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

svg {
	display: block;
}

/* Corners */
.corners {
	border-radius: 1rem;
}

/**
 * Better Every Day Theme
 * Based on Air-Light by Arkadiusz Fryc (arkzy.creative) - https://arkzy.pl
 */

/* General */
body {
	font-family: "Rubik", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4em;
	color: var(--text);
	background-color: #fff;
}

/* Variables */
:root {
	--white: #fff;
	--black: #111;

	--text: #9e9e9e;
	--text-primary: #111;
	--text-background: #e8e8e8;

	--bg: #fff;
	--bg-light: #f9f9f9;
	--bg-dark: #111;

	--borders: #ececec;

	--gradient-overlay: linear-gradient(
		180deg,
		rgba(17, 17, 17, 0) 0%,
		rgba(17, 17, 17, 0.99) 100%
	);
}

/* Links */
a {
	color: var(--text-primary);
	text-decoration: none;
	font-weight: 600;
}
a:hover {
	opacity: 0.5;
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Rubik", sans-serif;
	font-weight: 700;
	margin: 0;
	color: var(--text-primary);
	text-transform: uppercase;
}

h1 {
	font-size: 2.5rem;
	line-height: 1.2em;
	margin-bottom: 1rem;
}

h2 {
	font-size: 2rem;
	line-height: 1.2em;
	margin-bottom: 1rem;
}

h3 {
	font-size: 1.5rem;
	line-height: 1.2em;
	margin-bottom: 1rem;
}

h4 {
	font-size: 1.2rem;
	line-height: 1.2em;
	margin-bottom: 1rem;
}

h5 {
	font-size: 1rem;
	line-height: 1.2em;
	margin-bottom: 1rem;
}

h6 {
	font-size: 0.8rem;
	line-height: 1.2em;
	margin-bottom: 1rem;
}

p {
	margin: 0 0 1rem;
	color: var(--text);
	letter-spacing: 0.01em;
	line-height: 1.4em;
}
.bt-text-center {
	text-align: center;
}

/* Section Title */
.bt-section-title {
	text-transform: uppercase;
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 1rem;
	position: relative;
	text-align: center;
}

.bt-section-title--highlight {
	position: absolute;
	bottom: 1rem;
	font-size: 4rem;
	font-weight: 300;
	color: var(--text-background);
	white-space: nowrap;
	z-index: -1;
	transform: translateX(-50%);
	letter-spacing: 0.3em;
	opacity: 0.5;
}

/* Buttons */
.bt-button,
.gform_button {
	display: inline-flex;
	align-items: center;
	color: var(--text-primary);
	font-weight: 700;
	text-transform: uppercase;
	border: none;
	border-radius: 0;
	cursor: pointer;
	gap: 0.5rem;
	transition: all 0.3s ease;
	background: none;
	padding: 0;
}

.bt-button:hover {
	gap: 1rem;
}

/* Layout */
.container-fluid {
	width: 100%;
	padding: 0;
}
.container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 24px;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 3rem;
}

/* Grid */
.col-1 {
	grid-column: span 1;
}

.col-2 {
	grid-column: span 2;
}

.col-3 {
	grid-column: span 3;
}

.col-4 {
	grid-column: span 4;
}

.col-5 {
	grid-column: span 5;
}

.col-6 {
	grid-column: span 6;
}

.col-7 {
	grid-column: span 7;
}

.col-8 {
	grid-column: span 8;
}

.col-9 {
	grid-column: span 9;
}

.col-10 {
	grid-column: span 10;
}

.col-11 {
	grid-column: span 11;
}

.col-12 {
	grid-column: span 12;
}

/* Header */
.bt-site-header {
	padding: 1.5rem 0;
	background: var(--bg);
	position: sticky;
	top: 0;
	z-index: 999;
	transition: all 0.3s ease;
}

.bt-site-header.sticky {
	padding: 1rem 0;
	border-bottom: 1px solid var(--borders);
}

.bt-site-header.sticky .bt-header-logo {
	height: 2rem;
}

.bt-site-header.sticky .bt-menu-items li a {
	font-size: 0.875rem;
}

.bt-site-header .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.bt-header-logo,
.bt-footer-logo {
	width: auto;
	height: 3rem;
	transition: all 0.3s ease;
}
#bt-main-menu.bt-menu-items {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.bt-menu-items li a {
	color: var(--text-primary);
	font-weight: 600;
	text-transform: uppercase;
	transform: font-size 0.3s ease;
}

.bt-mobile-nav-toggle {
	display: none;
}

/* Hero */
.bt-hero {
	position: relative;
}

.bt-hero__video {
	width: 100%;
	position: relative;
}

.bt-hero__video-element {
	width: 100%;
	max-height: calc(100vh - 16rem);
	object-fit: cover;
	object-position: center;
	display: block;
}

.bt-hero__video-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 30vh;
	background: var(--gradient-overlay);
}

.bt-hero__details {
	background: var(--bg-dark);
	padding: 3rem 0;
}

.bt-hero__details-box {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.bt-hero__details-number {
	font-size: 2rem;
	font-weight: 700;
	color: var(--white);
	margin-bottom: 0.5rem;
}

.bt-hero__details-text {
	text-transform: uppercase;
	margin-bottom: 0;
}

/* Footer */
#bt-footer {
	background: var(--bg-dark);
	padding: 7.5rem 0 0;
	margin-top: 7.5rem;
}

.bt-footer-menu-items li a {
	color: var(--text);
	font-weight: 400;
	text-transform: uppercase;
}

#bt-footer-menu-2 {
	margin-top: 2.5rem;
}

.bt-footer-logo-link {
	display: inline-block;
}

.bt-footer__title {
	color: var(--white);
}

.bt-footer__text {
	margin-bottom: 0;
}

.bt-footer__text a {
	color: var(--text);
	font-weight: 400;
}

#bt-footer.bt-site-footer__merged {
	margin-top: 0;
}

.footer-legal {
	margin-top: 7.5rem;
	padding-bottom: 3rem;
}

/* Footer Social Media */
#bt-footer .bt-socials__link {
	color: var(--text);
}
.bt-socials-wrap {
	display: flex;
	gap: 1rem;
}

/* Join The Team */
.bt-join-the-team {
	background: var(--bg-light);
	padding: 5rem 0;
}

.bt-join-the-team .container {
	align-items: center;
}

.bt-join-the-team__title {
	font-size: 1.5rem;
	text-transform: uppercase;
	margin-bottom: 0.25rem;
}

.bt-join-the-team__team-images {
	display: flex;
	align-items: center;
}

.bt-join-the-team__team-image:not(:first-child) {
	margin-left: -16px;
}

.bt-join-the-team__team-image .img-fluid {
	width: 3rem;
	height: 3rem;
	object-fit: cover;
	border-radius: 4rem;
	border: 1px solid var(--text);
}

.bt-join-the-team__team-images-more {
	margin-bottom: 0;
	margin-left: 1rem;
	text-transform: uppercase;
}

.bt-join-the-team__subtitle {
	color: var(--text);
	font-size: 1rem;
	letter-spacing: 0.1em;
	font-weight: 400;
}

/* About */
.bt-about {
	padding: 8rem 0;
}

.bt-about .container {
	align-items: center;
}

.bt-about__images-wrap {
	display: flex;
	position: relative;
}

.bt-about__image {
	width: 100%;
	aspect-ratio: 3/4;
	object-fit: cover;
}
.bt-about__image-1 {
	flex: 0 0 70%;
	margin-top: 20%;
}

.bt-about__image-2 {
	flex: 0 0 45%;
	margin-left: -10%;
}

.bt-about__content {
	padding-left: 3rem;
}

.bt-about__content p {
	margin-bottom: 2.5rem;
}

/* Offer Highlight */
.bt-offer-highlight {
	margin: 10rem 0;
}

.bt-offer-highlight__box {
	position: relative;
	transition: all 0.3s ease;
	cursor: pointer;
}

.bt-offer-highlight__box:hover {
	opacity: 1;
}

.bt-offer-highlight__box:hover .bt-offer-highlight__box-image {
	transform: scale(1.025);
}

.bt-offer-highlight__box-image-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--gradient-overlay);
	border-radius: 1rem;
}

.bt-offer-highlight__box-image img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.bt-offer-highlight__box-content {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 2rem;
	z-index: 2;
}

.bt-offer-highlight__title {
	color: var(--white);
}

.bt-offer-highlight__text {
	font-weight: 400;
}

.bt-offer-highlight__box .bt-button {
	color: var(--white);
}

.bt-offer-highlight__box:hover .bt-button {
	gap: 1rem;
}

/* Supporting Section */
.bt-supporting-section {
	margin: 10rem 0;
}

/* Transformations */
.bt-transformations {
	margin: 10rem 0;
}

.bt-transformations__swiper-wrap {
	display: flex;
	gap: 3rem;
	align-items: center;
}

.bt-transformation {
	display: flex;
	gap: 3rem;
	align-items: center;
	cursor: grab;
}

.bt-transformation__content {
	flex: 1 0 50%;
}

.bt-transformation__images {
	display: flex;
	align-items: flex-end;
	flex: 0 1 50%;
}

.bt-transformations__image-before {
	flex: 1 1 40%;
	margin-bottom: 1rem;
	margin-right: -2rem;
	z-index: 2;
}

.bt-transformations__image-after {
	flex: 1 1 60%;
}

.bt-transformations__image-before img {
	width: 100%;
	aspect-ratio: 9 / 16;
	object-fit: cover;
	border-radius: 16px;
}

.bt-transformations__image-after img {
	width: 100%;
	aspect-ratio: 9 / 16;
	object-fit: cover;
	border-radius: 16px;
}

.bt-transformation__header {
	display: flex;
	align-items: center;
	margin-bottom: 1.5rem;
	gap: 1rem;
}

.bt-transformation__title {
	margin-bottom: 0;
}

.bt-transformation__author-position {
	margin-bottom: 0;
	text-transform: uppercase;
	margin-bottom: 0;
	color: var(--text);
	font-size: 1rem;
	letter-spacing: 0.1em;
	font-weight: 400;
}

.bt-transformation__thumbnail {
	width: 5rem;
	height: 5rem;
	object-fit: cover;
	border-radius: 4rem;
}

.bt-transformation__content p {
	margin-bottom: 0;
}

/* Swiper Nav */
.bt-swiper-nav {
	display: flex;
	padding: 4px;
	border-radius: 4px;
	border: 1px solid var(--borders);
	flex: 0 0 24px;
	justify-content: center;
	align-items: center;
	width: 24px;
	height: 24px;
	cursor: pointer;
}

/* Contact */
.bt-contact {
	margin: 10rem 0;
}
.bt-contact__cta-box {
	background: var(--bg-dark);
	padding: 3rem;
	border-radius: 1rem;
	display: flex;
	gap: 3rem;
	align-items: center;
}

.bt-contact__cta-contact {
	flex: 1 1 60%;
}

.bt-contact__cta-image {
	margin-top: -5.5rem;
	margin-bottom: -5.5rem;
	flex: 1 1 40%;
}

.bt-contact__cta-image img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.bt-contact__cta-title {
	color: var(--white);
	font-size: 1.5rem;
}

.bt-contact__cta-box .bt-button {
	color: var(--white);
}

/* Reviews */
.bt-review {
	position: relative;
}
.bt-review__image {
	aspect-ratio: 3/4;
	object-fit: cover;
}
.bt-review__poster {
	cursor: pointer;
}
.bt-review__author {
	position: absolute;
	bottom: 0;
	padding: 1rem;
	text-align: center;
	width: 100%;
}
.bt-review__title {
	font-size: 1.25rem;
	margin-bottom: 0;
	color: var(--white);
}
.bt-review__author-position {
	text-transform: uppercase;
	margin-bottom: 0;
	color: var(--text);
	font-size: 0.875rem;
	letter-spacing: 0.1em;
	font-weight: 400;
}
.bt-review__play {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: var(--white);
	background: rgba(0, 0, 0, 0.5);
	border-radius: 50%;
	height: 2rem;
	width: 2rem;
	padding: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: content-box;
}
.bt-reviews__swiper-wrap {
	gap: 3rem;
	display: flex;
	align-items: center;
}
.bt-reviews__swiper {
	width: 100%;
	flex: 1;
}
.bt-reviews__swiper .swiper-slide {
	background: var(--white);
	border-radius: 1rem;
	transition: all 0.3s ease;
}
.bt-reviews__swiper .swiper-slide:not(.swiper-slide-active) {
	transform: scale(0.9);
}
.bt-reviews__swiper .swiper-slide .bt-review {
	opacity: 0;
}
.bt-reviews__swiper .swiper-slide.swiper-slide-next .bt-review,
.bt-reviews__swiper .swiper-slide.swiper-slide-prev .bt-review {
	opacity: 0.9;
}
.bt-reviews__swiper .swiper-slide.swiper-slide-active .bt-review {
	opacity: 1;
}
.bt-reviews__swiper .swiper-slide-next,
.bt-reviews__swiper .swiper-slide-prev {
	z-index: 1;
}
.bt-reviews__swiper .swiper-slide.swiper-slide-active {
	z-index: 2;
}

.bt-review__video-container {
	position: relative;
	z-index: 1;
}
.bt-review__video {
	width: 100%;
	object-fit: contain;
	object-position: center;
	border-radius: 1rem;
	aspect-ratio: 3 / 4;
	background: var(--bg-dark);
}

/****************************************
 * Template for pages                  *
 ****************************************/

/* Page Header */
.bt-page-header {
	padding: 3.25rem 0;
	background: var(--bg-dark);
	margin-bottom: 7.5rem;
}

.bt-page-title {
	color: var(--white);
	font-size: 1.5rem;
}

.bt-page-content {
	margin-top: 7.5rem;
}

.bt-page-content ol {
	counter-reset: item;
}
.bt-page-content ol:not(:first-child) {
	margin-bottom: 2rem;
	margin-top: 1rem;
}
.bt-page-content ol li {
	display: block;
	margin-bottom: 1rem;
}
.bt-page-content ol li:before {
	content: counters(item, ".") " ";
	counter-increment: item;
	font-weight: 700;
	color: var(--text-primary);
}
.bt-page-content ol li strong {
	color: var(--text-primary);
	font-weight: 700;
}

/****************************************
 * Breadcrumbs                         *
 ****************************************/

.bt-breadcrumbs {
	font-size: 0.725rem;
	color: var(--text);
	display: flex;
	gap: 1rem;
	align-items: center;
	text-transform: uppercase;
	letter-spacing: 0.01em;
}

.bt-breadcrumbs .bt-breadcrumb-item {
	color: var(--text-background);
	font-weight: 400;
}

.bt-breadcrumbs-separator {
	display: inline-block;
	height: 1px;
	width: 0.5rem;
	background: var(--text);
}

/****************************************
 * About Page                         *
 ****************************************/
.bt-single-about .container {
	align-items: center;
}

.bt-single-about__image {
	aspect-ratio: 9 / 16;
	object-fit: cover;
}
.bt-single-about__title {
	margin-bottom: 0.25rem;
}
.bt-single-about__subtitle {
	color: var(--text);
	font-size: 1rem;
	letter-spacing: 0.3em;
	font-weight: 400;
}
.bt-single-about__image-wrap-first {
	margin-bottom: -4rem;
}
.bt-single-about__image-wrap-second {
	margin-top: -4rem;
}
/* .bt-single-about__image-wrap-second .bt-single-about__image {
    aspect-ratio: 1 / 1;
} */
.bt-about__details {
	margin: 10rem 0;
}

/****************************************
 * Gallery Section                     *
 ****************************************/
.bt-gallery {
	margin: 10rem 0;
}

.bt-gallery__image {
	height: 22rem;
	object-fit: cover;
	width: 100%;
}

.bt-gallery__row {
	display: grid;
	gap: 3rem;
	grid-template-columns: 1fr 2fr 1fr;
}
.bt-gallery__row-2 {
	display: grid;
	gap: 3rem;
	grid-template-columns: 3fr 2fr 3fr;
	margin-top: 3rem;
}

/****************************************
 * Social Media Contact Page           *
 ****************************************/
.bt-page-content h2 {
	margin-bottom: 3rem;
}
.bt-social-media-icons__item a {
	display: flex;
	gap: 1rem;
	align-items: center;
	margin-bottom: 2rem;
}

.bt-social-media-icons__item svg {
	display: flex;
	padding: 4px;
	border-radius: 4px;
	border: 1px solid var(--borders);
	flex: 0 0 24px;
	justify-content: center;
	align-items: center;
	color: var(--bg-dark);
}

.bt-social-media-icons__title {
	margin-bottom: 0;
	font-size: 1rem;
	line-height: 1em;
	color: var(--text);
	letter-spacing: 0.01em;
	font-weight: 400;
}

/* Gravity Forms Floating Labels */
input,
textarea,
select {
	font-family: "Rubik", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4em;
	outline: none !important;
	border: none !important;
	box-shadow: none !important;
}
.gfield,
.wc-block-components-text-input,
.wc-block-components-textarea {
	position: relative;
	margin-bottom: 1.5rem;
	border-bottom: 1px solid var(--borders);
}
.gfield_label,
.wc-block-components-text-input label {
	position: absolute;
	top: 1rem;
	left: 1rem;
	color: var(--text-primary);
	transition: 0.2s ease all;
	pointer-events: none;
	background: var(--bg);
	z-index: 1;
	line-height: 1em;
}
.ginput_container input,
.ginput_container textarea,
.wc-block-components-text-input input {
	width: 100%;
	padding: 1rem;
	border: none;
	outline: none;
	color: var(--text);
	box-sizing: border-box;
	border: none;
	border-radius: 0;
}

.ginput_container textarea,
.wc-block-components-textarea {
	resize: none;
}

.ginput_container input::placeholder,
.ginput_container textarea::placeholder,
.wc-block-components-text-input input::placeholder {
	color: transparent; /* ukrywa natywny placeholder */
}
.gfield:focus-within .gfield_label,
.wc-block-components-text-input:focus-within label,
.wc-block-components-textarea label {
	top: -0.25rem;
	font-size: 0.875rem;
}
/* zamiast dodatkowych elementów .bar używamy pseudo-elementu :before */
.gfield::before,
.wc-block-components-text-input::before,
.wc-block-components-textarea::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 2px;
	background: var(--text-primary);
	transition: width 0.2s ease, left 0.2s ease;
}
.gfield:focus-within::before,
.wc-block-components-text-input:focus-within::before,
.wc-block-components-textarea:focus-within::before {
	width: 100%;
	left: 0;
	right: 0;
}

/****************************************
 * WooCommerce                         *
 ****************************************/

/* Forms */
.bt-page-content
	.wc-block-checkout__terms.wc-block-checkout__terms--with-separator {
	border-top: none;
}
.bt-page-content
	.wc-block-components-checkbox
	.wc-block-components-checkbox__input[type="checkbox"] {
	border: 1px solid var(--borders) !important;
	border-radius: 0;
	padding: 0.5rem;
	margin-right: 1rem;
	width: 2rem;
	height: 2rem;
}
.bt-page-content .wc-block-components-checkbox label {
	align-items: center;
}
.bt-page-content
	.wc-block-components-checkbox
	.wc-block-components-checkbox__mark {
	margin-left: 0;
	margin-top: 0;
	top: 0.425rem;
	left: 0.5rem;
	width: 1rem;
	height: 1rem;
}
.bt-page-content .wc-block-components-radio-control--highlight-checked:after {
	border: none;
}
.bt-page-content
	.wc-block-components-radio-control--highlight-checked
	div.wc-block-components-radio-control-accordion-option {
	background: var(--borders);
	border-radius: 0;
}
.bt-page-content
	.wc-block-checkout__payment-method
	.wc-block-components-radio-control.disable-radio-control
	.wc-block-components-radio-control__option {
	padding: 1rem;
	color: var(--text-primary);
}
.bt-page-content
	.wc-block-checkout__payment-method
	.wc-block-components-radio-control-accordion-option
	.wc-block-components-radio-control__option {
	color: var(--text-primary);
}
.bt-page-content .wc-block-components-radio-control-accordion-content {
	padding: 1rem;
	background: var(--bg-light);
}

/* Payment box */
.bt-page-content
	.wc-block-components-radio-control--highlight-checked
	div.wc-block-components-radio-control-accordion-option {
	box-shadow: none;
}

/* Order summary */
.bt-page-content .wp-block-woocommerce-checkout-order-summary-block {
	background: var(--bg-light);
	padding: 1rem;
	border-radius: 0;
	border: none;
}
.bt-page-content .wc-block-components-checkout-order-summary__title-text {
	font-family: "Rubik", sans-serif;
	font-weight: 700;
	color: var(--text-primary);
	text-transform: uppercase;
	margin-bottom: 1rem;
}
.bt-page-content
	.wc-block-components-order-summary
	.wc-block-components-order-summary-item__image
	> img {
	border-radius: 0.5rem;
}
.bt-page-content
	.wc-block-components-order-summary
	.wc-block-components-order-summary-item__quantity {
	font-size: 0.875rem;
	color: var(--text);
	border-radius: 0.5rem;
	padding: 0.25rem;
	background: var(--bg);
	box-shadow: none;
	border: 1px solid var(--borders);
	width: 1.5rem;
	height: 1.5rem;
}
.bt-page-content .wc-block-checkout__sidebar .wc-block-components-product-name {
	text-transform: uppercase;
	font-size: 0.75rem;
	line-height: 1em;
}
.bt-page-content
	.wc-block-components-order-summary
	.wc-block-components-order-summary-item__description
	.wc-block-components-product-metadata {
	display: none;
}
.bt-page-content
	.wc-block-components-order-summary
	.wc-block-components-order-summary-item {
	align-items: center;
}
.bt-page-content
	.wp-block-woocommerce-checkout-order-summary-block
	.wc-block-components-formatted-money-amount {
	color: var(--text-primary);
}
.bt-page-content
	.wc-block-components-totals-coupon__form
	.wc-block-components-totals-coupon__button {
	background: var(--bg-dark);
	color: var(--text-background);
	padding: 0.5rem 1rem;
	font-size: 0.875rem;
	text-transform: uppercase;
	font-weight: 700;
	border: none;
	cursor: pointer;
	transition: all 0.3s ease;
}
.bt-page-content
	.wc-block-components-totals-footer-item
	.wc-block-components-totals-item__label {
	font-size: 1rem;
	color: var(--text);
	font-weight: 400;
}
.bt-page-content .woocommerce-order {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
}

.bt-page-content .woocommerce-order .woocommerce-notice {
	text-align: center;
	color: var(--text-primary);
	font-size: 2rem;
	font-family: "Rubik", sans-serif;
	font-weight: 700;
	text-transform: uppercase;
	flex: 0 0 100%;
}

.bt-page-content .woocommerce-order .woocommerce-order-overview {
	flex: 0 0 100%;
	display: flex;
	gap: 3rem;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 3rem;
}
.bt-page-content .woocommerce-order .woocommerce-order-overview strong {
	font-weight: 700;
	color: var(--text-primary);
	display: block;
}

.bt-page-content .woocommerce-order .woocommerce-bacs-bank-details {
	flex: 0 0 100%;
	background: var(--bg-light);
	padding: 2rem;
	border-radius: 0;
}
.bt-page-content .woocommerce-order .woocommerce-bacs-bank-details h2 {
	font-size: 1.5rem;
	color: var(--text-primary);
	text-transform: uppercase;
	margin-bottom: 1rem;
}
.bt-page-content
	.woocommerce-order
	.woocommerce-bacs-bank-details
	.wc-bacs-bank-details-account-name {
	font-size: 1rem;
	margin-bottom: 0.5rem;
}

.bt-page-content .woocommerce-order .woocommerce-order-details h2,
.bt-page-content .woocommerce-order .woocommerce-customer-details h2 {
	font-size: 1.5rem;
	color: var(--text-primary);
	text-transform: uppercase;
	margin-bottom: 1rem;
}
.bt-page-content .woocommerce-order-details,
.bt-page-content .woocommerce-customer-details {
	flex: 1 1 0px;
}
.bt-page-content .woocommerce-order .woocommerce-order-details,
.bt-page-content .woocommerce-order .woocommerce-customer-details {
	padding: 2rem;
	background: var(--bg-light);
	border-radius: 0;
}
.bt-page-content .woocommerce-order .woocommerce-order-details table {
	width: 100%;
}
.bt-page-content .woocommerce-order .woocommerce-order-details table th,
.bt-page-content .woocommerce-order .woocommerce-order-details table td {
	border: none;
	padding: 0.175rem 0;
	text-align: left;
}
.bt-page-content .woocommerce-order .woocommerce-order-details table th {
	font-weight: 600;
}

/* Shop */
.bt-shop__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 3rem;
}
.bt-shop__page-title {
	margin-bottom: 7.5rem;
}

.bt-wc-notices {
	position: fixed;
	left: 0;
	bottom: 0;
	padding: 0.6rem 3rem;
	width: 100%;
	z-index: 9;
	text-align: center;
	background: var(--black);
}
.bt-wc-notices a {
	color: var(--text-background);
}

.wc-block-checkout__actions_row .wc-block-components-button {
	display: inline-flex;
	align-items: center;
	color: var(--text-background);
	font-weight: 700;
	text-transform: uppercase;
	border: none;
	border-radius: 0;
	cursor: pointer;
	gap: 0.5rem;
	transition: all 0.3s ease;
	background: none;
	padding: 0;
	font-family: "Rubik", sans-serif;
	font-size: 1rem;
	background: var(--bg-dark);
	border-radius: 2rem;
	padding: 1rem 3rem;
	display: block;
}
.wc-block-checkout__actions_row
	.wc-block-components-checkout-return-to-cart-button {
	display: inline-flex;
	align-items: center;
	color: var(--text);
	font-weight: 700;
	text-transform: uppercase;
	border: none;
	border-radius: 0;
	cursor: pointer;
	gap: 0.5rem;
	transition: all 0.3 ease;
	background: none;
	padding: 0;
}
.wc-block-checkout__actions_row
	.wc-block-components-checkout-return-to-cart-button
	svg {
	position: static;
	transform: none;
	left: unset;
	top: unset;
}

.wc-block-components-validation-error {
	position: absolute;
	bottom: -1.5rem;
}
.wc-block-components-validation-error > p {
	color: #ff0033;
}
.wc-block-components-form .wc-block-components-text-input.has-error label,
.wc-block-components-text-input.has-error label {
	color: #ff0033 !important;
}

/****************************************/

/* Bestsellers grid */
.bt-bestsellers__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 3rem;
}
.bt-product-card__content {
	margin-top: 2rem;
	text-align: center;
}
.bt-product-card__title {
	font-size: 1.25rem;
	line-height: 1em;
}
.bt-product-card__image {
	aspect-ratio: 3 / 4;
	object-fit: cover;
}

.bt-product-card__category {
	margin-bottom: 0.5rem;
	display: block;
}

.bt-product-card__category a {
	font-size: 0.75rem;
	line-height: 1em;
	color: var(--text);
	letter-spacing: 0.01em;
	font-weight: 400;
	text-transform: uppercase;
}

.bt-product-card:hover .bt-product-card__image {
	transform: scale(1.05);
}
.bt-product-card:hover .bt-product-card__image-link {
	opacity: 1;
}

/****************************************
 * Product Single Page                 *
 ****************************************/
.bt-product-page .container {
	align-items: center;
}
.bt-product__content {
	padding-left: 3rem;
}
.bt-product__title {
	font-size: 2rem;
	line-height: 1.2em;
}
.bt-product__image {
	aspect-ratio: 3 / 4;
	object-fit: cover;
}
.bt-product__category a {
	font-size: 1rem;
	line-height: 1em;
	color: var(--text);
	letter-spacing: 0.01em;
	font-weight: 400;
	text-transform: uppercase;
}
.bt-product__short-description {
	font-size: 1.125rem;
	margin-bottom: 3rem;
}
.bt-product__short-description-text b {
	font-weight: 500;
}
.bt-product__add-to-cart .button {
	display: inline-flex;
	align-items: center;
	color: var(--text-background);
	font-weight: 700;
	text-transform: uppercase;
	border: none;
	border-radius: 0;
	cursor: pointer;
	gap: 0.5rem;
	transition: all 0.3s ease;
	background: none;
	padding: 0;
	font-family: "Rubik", sans-serif;
	font-size: 1rem;
	background: var(--bg-dark);
	border-radius: 2rem;
	padding: 1rem 3rem;
}
.bt-product__price {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--text-primary);
	margin-top: 1rem;
	margin-bottom: 1rem;
}
.bt-product__price .price {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--text-primary);
	margin-top: 1rem;
	margin-bottom: 1rem;
}

/* Ukryj domyślną sekcję ceny wariantu pod przyciskiem, bo pokazujemy własną cenę wyżej */
.woocommerce-variation-price {
	display: none !important;
}

/****************************************
 * Variations swatches                 *
 ****************************************/

.bt-swatches__group {
	display: flex;
	gap: 1rem;
}
.bt-variation__container select {
	display: none;
}
.bt-variation__container .variation {
	margin-bottom: 2rem;
}

.bt-variation__container .label {
	margin-bottom: 0.5rem;
	font-size: 1rem;
	font-weight: 700;
	color: var(--text-primary);
	text-transform: uppercase;
}
.bt-variation-radios {
	display: flex;
	gap: 10px; /* Odstęp między przyciskami */
	flex-wrap: wrap;
}

.bt-variation-radios input[type="radio"] {
	display: none; /* Ukryj domyślny radio button */
}

.bt-variation-radios label {
	padding: 0.5rem 1rem;
	border: 1px solid var(--borders);
	border-radius: 2rem;
	cursor: pointer;
	font-size: 0.875rem;
	font-weight: 500;
	background-color: var(--borders);
	transition: all 0.3s ease;
	text-align: center;
	display: inline-block;
	white-space: nowrap;
	user-select: none;
	color: var(--text);
	text-transform: uppercase;
	letter-spacing: 0.01em;
}

.bt-variation-radios label:hover {
	color: var(--black);
}

.bt-variation-radios input[type="radio"]:checked + label {
	background-color: var(--black);
	border-color: var(--black);
	color: var(--white);
}

.woocommerce-variation-price {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--text-primary);
	margin-top: 1rem;
	margin-bottom: 1rem;
}
ins {
	text-decoration: none;
}
.wcpay-express-checkout-wrapper {
	margin-top: 1em;
}

/**
 * UL, LI
*/
.bt-product__short-description-text ul {
	list-style: none;
	margin-left: 1em;
	margin-top: 0.5em;
}
.bt-product__short-description-text ul li:before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	background: var(--bg-dark);
	border-radius: 50%;
	margin-left: -1em;
	margin-right: 1em;
}
.bt-product__short-description-text ul li {
	margin-bottom: 0.5rem;
}

/* ================================================== */
/*             * Responsive: 0 - 768px *              */
/* -------------------------------------------------- */
/*  * Mobile Layout                                   */
/*  * Optimized for small screens                     */
/*  * Grid items are stacked for easier scrolling     */
/*  * Adjustments for enhanced touch experience       */
/* ================================================== */

@media screen and (max-width: 768px) {
	body,
	html {
		overflow-x: hidden;
		max-width: 100%;
	}
	.container {
		gap: 3rem 0;
	}
	.col-1,
	.col-2,
	.col-3,
	.col-4,
	.col-5,
	.col-6,
	.col-7,
	.col-8,
	.col-9,
	.col-10,
	.col-11,
	.col-12 {
		grid-column: span 12;
	}

	.bt-mobile-nav-toggle {
		display: block;
		color: var(--text-primary);
	}
	.bt-nav-primary.bt-nav-open {
		display: block;
		position: absolute;
		top: 6rem;
		left: 0;
		width: 100%;
	}
	.bt-nav-primary.bt-nav-open #bt-main-menu.bt-menu-items {
		flex-direction: column;
		gap: 0;
		padding: 1.5rem;
		background: var(--bg-light);
		width: 100%;
		border-top: 1px solid var(--borders);
	}
	.bt-nav-primary.bt-nav-open #bt-main-menu.bt-menu-items li a {
		padding: 1.5rem;
		display: block;
	}

	.bt-nav-primary {
		display: none;
	}

	.bt-hero-details .container {
		gap: 1rem 0;
	}
	.bt-hero__video-element {
		height: 35vh;
	}

	.bt-about__content {
		padding-left: 0;
	}

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

	.bt-offer-highlight__box-image img {
		aspect-ratio: 9 / 16;
	}

	.bt-transformations__swiper-wrap {
		flex-wrap: wrap;
		justify-content: center;
	}
	.bt-transformations__swiper {
		order: 1;
	}
	.bt-swiper-nav-prev {
		order: 2;
	}
	.bt-swiper-nav-next {
		order: 3;
	}

	.bt-transformation {
		flex-direction: column;
	}

	.bt-transformations {
		margin-bottom: 5rem;
	}
	.bt-supporting-section {
		margin-top: 5rem;
	}

	.bt-reviews__swiper-wrap {
		flex-wrap: wrap;
		justify-content: center;
	}
	.bt-reviews__swiper-wrap .bt-reviews__swiper {
		order: 1;
		flex: 0 0 100%;
	}

	.bt-contact__cta-box {
		flex-direction: column;
	}
	.bt-contact__cta-image {
		margin-bottom: 0;
	}

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

	.bt-product__content {
		padding-left: 0;
	}

	.bt-gallery__row {
		gap: 1rem;
		grid-template-columns: 1fr 1fr 1fr;
	}
	.bt-gallery__row-2 {
		gap: 1rem;
		margin-top: 1rem;
		grid-template-columns: 1fr 1fr 1fr;
	}
	.bt-gallery__row .bt-gallery__image-wrap:nth-child(2) {
		grid-column: span 2;
	}
	.bt-gallery__row .bt-gallery__image-wrap:nth-child(3) {
		grid-column: span 3;
	}
	.bt-gallery__row-2 .bt-gallery__image-wrap:nth-child(2) {
		grid-column: span 2;
	}
	.bt-gallery__row-2 .bt-gallery__image-wrap:nth-child(3) {
		grid-column: span 3;
	}
}
