/* =====================================================================
   Rautszko Legal – Sklep
   Style WooCommerce dopasowane do motywu "rautszko" (OH! Studio).
   Tokeny motywu: beż #cfba9b, złoto #a69376 / #a59275, granat #070e12,
   tekst #0f1832, szary tekst #777472, obramowanie #e6e6e1.
   html { font-size: 62.5% } -> 1rem = 10px.
   ===================================================================== */

:root {
	--rs-beige: #cfba9b;
	--rs-gold: #a69376;
	--rs-gold-2: #a59275;
	--rs-dark: #070e12;
	--rs-text: #0f1832;
	--rs-muted: #777472;
	--rs-border: #e6e6e1;
	--rs-bg-soft: #f7f4ee;
	--rs-navy: #154080;
	--rs-ease: cubic-bezier(.4, 0, .2, 1);
}

/* ---------- Nagłówek strony (jak nagłówek artykułu) ---------- */
.rsklep-page .oh-blog__header-container,
.single-product .oh-blog__header-container {
	grid-template-columns: 1fr;
}
.single-product .oh-blog__categories-nav,
.single-product .oh-blog__header-image,
.rsklep-page .oh-blog__categories-nav {
	display: none;
}
.rsklep-page .oh-blog__title-category h1 a,
.single-product .oh-blog__title-category h1 a {
	pointer-events: none;
}

/* ---------- Szerokość treści ---------- */
.rsklep--wide .oh-blog__article-body,
.single-product .oh-blog__article-body {
	max-width: none;
	padding-top: 6.4rem;
}
@media (min-width: 1024px) {
	.rsklep--wide .oh-blog__article-body,
	.single-product .oh-blog__article-body {
		padding-top: 9.6rem;
	}
}
/* Wstęp na stronie Sklep: wąska, wyśrodkowana kolumna nad listą produktów */
.rsklep--wide.woocommerce-shop .oh-gutenberg > p,
.rsklep--wide.woocommerce-shop .oh-gutenberg > h2,
.rsklep--wide.woocommerce-shop .oh-gutenberg > h3 {
	margin-left: auto;
	margin-right: auto;
	max-width: 85rem;
	text-align: center;
}
.rsklep--wide.woocommerce-shop .oh-gutenberg > p:last-of-type {
	margin-bottom: 4.8rem;
}

/* ---------- Typografia w treści sklepu ---------- */
.rsklep .oh-gutenberg,
.single-product .oh-gutenberg {
	color: var(--rs-dark);
	font-size: 1.8rem;
	line-height: 1.45;
}
.rsklep .oh-gutenberg h2,
.single-product .woocommerce-Tabs-panel h2 {
	font-size: 3.2rem;
	font-weight: 600;
	line-height: 1.1;
	margin: 4rem 0 1.6rem;
}
.rsklep .oh-gutenberg h3,
.single-product .woocommerce-Tabs-panel h3 {
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.15;
	margin: 3.2rem 0 1.2rem;
}
.rsklep .oh-gutenberg ul,
.rsklep .oh-gutenberg ol,
.single-product .woocommerce-Tabs-panel ul,
.single-product .woocommerce-Tabs-panel ol {
	margin: 0 0 1.6rem;
	padding-left: 2.4rem;
}
.rsklep .oh-gutenberg li,
.single-product .woocommerce-Tabs-panel li {
	margin-bottom: .8rem;
}
.rsklep .oh-gutenberg ol li::marker,
.single-product .woocommerce-Tabs-panel ol li::marker {
	color: var(--rs-gold);
	font-weight: 700;
}

/* ---------- Listy WooCommerce bez wypunktowania z gutenberg.css motywu ---------- */
/* Motyw dodaje "•" przez li:before i wcięcie 2.67em do każdej listy w .oh-gutenberg.
   Wyłączamy to dla list strukturalnych sklepu (opis produktu zachowuje wypunktowanie). */
.oh-gutenberg ul.products,
.oh-gutenberg .wc-block-grid__products,
.oh-gutenberg .woocommerce-MyAccount-navigation ul,
.oh-gutenberg .woocommerce-product-gallery ol,
.oh-gutenberg .woocommerce-order ul.order_details,
.oh-gutenberg .woocommerce-notices-wrapper ul,
.oh-gutenberg ul.woocommerce-error,
.oh-gutenberg ul.woocommerce-message,
.oh-gutenberg ul.woocommerce-info,
.oh-gutenberg .woocommerce-tabs ul.tabs,
.oh-gutenberg [class*="wp-block-woocommerce"] ul,
.oh-gutenberg [class*="wc-block"] ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.oh-gutenberg ul.products li,
.oh-gutenberg .wc-block-grid__products li,
.oh-gutenberg .woocommerce-MyAccount-navigation ul li,
.oh-gutenberg .woocommerce-product-gallery ol li,
.oh-gutenberg .woocommerce-order ul.order_details li,
.oh-gutenberg ul.woocommerce-error li,
.oh-gutenberg ul.woocommerce-message li,
.oh-gutenberg ul.woocommerce-info li,
.oh-gutenberg .woocommerce-tabs ul.tabs li,
.oh-gutenberg [class*="wp-block-woocommerce"] ul li,
.oh-gutenberg [class*="wc-block"] ul li {
	margin-left: 0;
}
.oh-gutenberg ul.products li::before,
.oh-gutenberg .wc-block-grid__products li::before,
.oh-gutenberg .woocommerce-MyAccount-navigation ul li::before,
.oh-gutenberg .woocommerce-product-gallery ol li::before,
.oh-gutenberg .woocommerce-order ul.order_details li::before,
.oh-gutenberg ul.woocommerce-error li::before,
.oh-gutenberg ul.woocommerce-message li::before,
.oh-gutenberg ul.woocommerce-info li::before,
.oh-gutenberg .woocommerce-tabs ul.tabs li::before,
.oh-gutenberg [class*="wp-block-woocommerce"] ul li::before,
.oh-gutenberg [class*="wc-block"] ul li::before {
	content: none;
	display: none;
}
.oh-gutenberg .woocommerce-product-gallery ol.flex-control-thumbs {
	margin-top: .8rem;
}

/* ---------- Przyciski (jak .oh-button) ---------- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce .woocommerce-MyAccount-content .button,
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	background: linear-gradient(240deg, var(--rs-beige) 50%, var(--rs-gold-2)) !important;
	background-position-x: 0 !important;
	background-size: 200% 100% !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #fff !important;
	cursor: pointer;
	display: inline-block;
	font-family: var(--oh-font-family, "Erode", serif) !important;
	font-size: 1.6rem !important;
	font-weight: 700 !important;
	letter-spacing: .15em !important;
	line-height: 1.2 !important;
	padding: 1.7rem 2.6rem !important;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase !important;
	transition: background-position .15s var(--rs-ease) !important;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.wc-block-components-button:not(.is-link):hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	background-position-x: 100% !important;
	color: #fff !important;
}
.woocommerce a.button.disabled,
.woocommerce button.button:disabled,
.wc-block-components-button:disabled {
	opacity: .55;
}
.wc-block-components-button .wc-block-components-button__text {
	font-family: inherit;
	font-size: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

/* ---------- Lista produktów (Sklep): karty jak w Strefie wiedzy ---------- */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid;
	gap: 4.8rem 2.4rem;
	grid-template-columns: 1fr;
	list-style: none;
	margin: 0;
	padding: 0;
}
/* Karty o stałej szerokości, wyśrodkowane: jeden produkt stoi na środku,
   trzy produkty wypełniają rząd, kolejne przechodzą do następnego rzędu. */
@media (min-width: 768px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products,
	.woocommerce ul.products.columns-3,
	.woocommerce-page ul.products.columns-3 {
		gap: 6.4rem 4.8rem;
		grid-template-columns: repeat(auto-fit, minmax(28rem, 38rem));
		justify-content: center;
	}
}
.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products.columns-3 li.product,
.woocommerce-page ul.products.columns-3 li.product {
	float: none;
	margin: 0;
	text-align: center;
	width: auto;
}
.woocommerce ul.products li.product a img {
	aspect-ratio: 4 / 3;
	background: #f4efe6;
	display: block;
	height: auto;
	margin: 0;
	object-fit: cover;
	object-position: center;
	width: 100%;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	color: var(--rs-text);
	font-size: 2.2rem;
	font-weight: 600;
	line-height: 1.12;
	padding: 2.4rem 0 .8rem;
	transition: color .15s var(--rs-ease);
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
	color: var(--rs-beige);
}
.woocommerce ul.products li.product .price {
	color: var(--rs-gold);
	font-size: 2rem;
	font-weight: 600;
	margin-bottom: 1.6rem;
}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
	display: none;
}

/* ---------- Strona produktu ---------- */
.single-product .woocommerce div.product .woocommerce-product-gallery {
	margin-bottom: 4rem;
}
.single-product .woocommerce div.product .woocommerce-product-gallery img {
	border: 1px solid var(--rs-border);
}
.single-product .woocommerce div.product .summary .product_title {
	display: none; /* tytuł jest już w nagłówku strony */
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--rs-gold);
	font-size: 3.2rem;
	font-weight: 600;
	margin-bottom: 2.4rem;
}
.woocommerce div.product .woocommerce-product-details__short-description {
	font-size: 2rem;
	line-height: 1.35;
	margin-bottom: 3.2rem;
}
.woocommerce div.product form.cart {
	margin-bottom: 3.2rem;
}
.woocommerce div.product form.cart .button {
	font-size: 1.8rem !important;
	padding: 2.2rem 4.8rem !important;
}
.woocommerce div.product .product_meta {
	border-top: 1px solid var(--rs-border);
	color: var(--rs-muted);
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.4rem;
	padding-top: 1.6rem;
}
.woocommerce div.product .product_meta > span {
	display: block;
	margin-bottom: .4rem;
}
.woocommerce div.product .product_meta a {
	color: var(--rs-navy);
}

/* Zakładki: jedna sekcja opisu bez ramek */
.woocommerce div.product .woocommerce-tabs {
	margin-top: 4.8rem;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: none; /* jest tylko jedna zakładka: Opis */
}
.woocommerce div.product .woocommerce-tabs .panel {
	border-top: 1px solid var(--rs-border);
	margin: 0 auto;
	max-width: 85rem;
	padding-top: 1.6rem;
}
.woocommerce div.product .woocommerce-Tabs-panel--description > h2:first-child {
	display: none; /* powtórzony nagłówek "Opis" */
}

/* ---------- Formularze klasyczne ---------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-account .woocommerce-form input.input-text {
	background: #fff;
	border: 1px solid var(--rs-border);
	border-radius: 0;
	box-shadow: none;
	color: var(--rs-dark);
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.6rem;
	line-height: 1.4;
	padding: 1.4rem 1.6rem;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus {
	border-color: var(--rs-beige);
	outline: none;
}
.woocommerce form .form-row label {
	color: var(--rs-muted);
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.4rem;
	letter-spacing: .05em;
	text-transform: uppercase;
}

/* ---------- Komunikaty ---------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice {
	background: var(--rs-bg-soft);
	border-top-color: var(--rs-beige);
	color: var(--rs-dark);
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.6rem;
}
.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--rs-gold);
}
.woocommerce-error {
	border-top-color: #b23a3a;
}

/* ---------- Koszyk i Zamówienie (bloki WooCommerce) ---------- */
.rsklep .wc-block-cart,
.rsklep .wc-block-checkout,
.rsklep .wp-block-woocommerce-cart,
.rsklep .wp-block-woocommerce-checkout {
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.6rem;
}
.rsklep .wc-block-components-product-name,
.rsklep .wc-block-components-checkout-step__title,
.rsklep .wc-block-components-title,
.rsklep .wc-block-cart__totals-title,
.rsklep .wc-block-components-order-summary__button-text {
	color: var(--rs-text);
	font-family: var(--oh-font-family, "Erode", serif);
}
.rsklep .wc-block-components-product-name {
	font-size: 1.8rem;
	font-weight: 600;
}
.rsklep .wc-block-components-checkout-step__title {
	font-size: 2.2rem;
	font-weight: 600;
}
.rsklep .wc-block-components-totals-item__value,
.rsklep .wc-block-components-product-price,
.rsklep .wc-block-formatted-money-amount {
	color: var(--rs-gold);
	font-weight: 600;
}
.rsklep .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 2rem;
}
.rsklep .wc-block-components-text-input input,
.rsklep .wc-block-components-text-input textarea,
.rsklep .wc-block-components-combobox .components-combobox-control__input,
.rsklep .wc-block-components-select .components-custom-select-control__button {
	border-color: var(--rs-border);
	border-radius: 0 !important;
}
.rsklep .wc-block-components-text-input.is-active input,
.rsklep .wc-block-components-text-input input:focus {
	border-color: var(--rs-beige) !important;
	box-shadow: 0 0 0 1px var(--rs-beige) !important;
}
.rsklep .wc-block-components-checkbox .wc-block-components-checkbox__mark {
	color: var(--rs-gold);
}
.rsklep .wc-block-components-checkbox input[type=checkbox]:checked {
	background: var(--rs-beige);
	border-color: var(--rs-beige);
}
.rsklep .wc-block-components-sidebar .wc-block-components-panel,
.rsklep .wc-block-cart__totals,
.rsklep .wc-block-components-sidebar {
	background: var(--rs-bg-soft);
	padding: 2.4rem;
}
.rsklep .wc-block-components-radio-control__option {
	border-color: var(--rs-border);
}
.rsklep .wc-block-components-radio-control__option:has(input:checked) {
	border-color: var(--rs-beige) !important;
	box-shadow: none !important;
}
.rsklep .wc-block-components-radio-control__input:checked {
	border-color: var(--rs-gold) !important;
}
.rsklep .wc-block-components-radio-control__input:checked::before {
	background: var(--rs-gold) !important;
}
.rsklep .wc-block-components-button.is-link,
.rsklep .wc-block-components-product-name a,
.rsklep a.wc-block-components-checkout-return-to-cart-button {
	color: var(--rs-navy);
}
.rsklep .wc-block-cart__empty-cart__title,
.rsklep .wp-block-woocommerce-empty-cart-block h2 {
	font-family: var(--oh-font-family, "Erode", serif);
	font-size: 3.2rem;
	font-weight: 600;
}

/* Pusty koszyk: sekcja "Nowe w sklepie" (siatka produktów z bloku) */
.rsklep .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title,
.rsklep .wc-block-grid__product-title {
	color: var(--rs-text);
	font-family: var(--oh-font-family, "Erode", serif);
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.15;
	padding: 1.6rem 0 .4rem;
}
.rsklep .wc-block-grid__product-price {
	color: var(--rs-gold);
	font-size: 1.8rem;
	font-weight: 600;
}
.rsklep .wc-block-grid__product-image img {
	aspect-ratio: 4 / 3;
	background: #f4efe6;
	object-fit: cover;
	object-position: center;
	width: 100%;
	max-width: 40rem;
	margin: 0 auto;
}
.rsklep .wc-block-grid__product-add-to-cart .wp-block-button__link,
.rsklep .wp-block-woocommerce-empty-cart-block .wp-block-button__link,
.rsklep .wc-block-components-product-button .wp-block-button__link,
.rsklep a.add_to_cart_button {
	background: linear-gradient(240deg, var(--rs-beige) 50%, var(--rs-gold-2)) !important;
	background-position-x: 0 !important;
	background-size: 200% 100% !important;
	border: 0 !important;
	border-radius: 0 !important;
	color: #fff !important;
	font-family: var(--oh-font-family, "Erode", serif) !important;
	font-size: 1.5rem !important;
	font-weight: 700 !important;
	letter-spacing: .15em !important;
	line-height: 1.2 !important;
	padding: 1.5rem 2.4rem !important;
	text-transform: uppercase !important;
	transition: background-position .15s var(--rs-ease) !important;
}
.rsklep .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
.rsklep .wp-block-woocommerce-empty-cart-block .wp-block-button__link:hover,
.rsklep a.add_to_cart_button:hover {
	background-position-x: 100% !important;
}
.rsklep .wp-block-woocommerce-empty-cart-block > h2,
.rsklep .wp-block-woocommerce-empty-cart-block .wp-block-heading {
	font-family: var(--oh-font-family, "Erode", serif);
	font-weight: 600;
}

/* ---------- Moje konto ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation {
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid var(--rs-border);
	margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
	color: var(--rs-text);
	display: block;
	font-size: 1.5rem;
	letter-spacing: .1em;
	padding: 1.4rem 0;
	text-transform: uppercase;
	transition: color .15s var(--rs-ease);
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	color: var(--rs-gold);
}
.woocommerce-account .woocommerce-MyAccount-content {
	font-size: 1.7rem;
}
.woocommerce table.shop_table {
	border: 1px solid var(--rs-border);
	border-radius: 0;
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.5rem;
}
.woocommerce table.shop_table th {
	color: var(--rs-muted);
	font-size: 1.3rem;
	font-weight: 600;
	letter-spacing: .05em;
	text-transform: uppercase;
}
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
	border: 1px solid var(--rs-border);
	border-radius: 0;
	padding: 3.2rem;
}

/* ---------- Strona "Zamówienie otrzymane" ---------- */
.woocommerce-order .woocommerce-thankyou-order-received {
	color: var(--rs-text);
	font-size: 2.4rem;
	font-weight: 600;
}
.woocommerce-order ul.order_details {
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.5rem;
}
.woocommerce-order ul.order_details li strong {
	color: var(--rs-gold);
}

/* ---------- Drobne ---------- */
.woocommerce .quantity .qty {
	border: 1px solid var(--rs-border);
	border-radius: 0;
	padding: 1.2rem;
}
.woocommerce nav.woocommerce-pagination ul {
	border: 0;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	border: 0;
	color: var(--rs-text);
	font-family: var(--oh-font-family-sans, "HK Grotesk", sans-serif);
	font-size: 1.6rem;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
	background: var(--rs-beige);
	color: #fff;
}
