/*!
Theme Name: SKS Theme
Theme URI: http://underscores.me/
Author: smartbis
Author URI: http://underscores.me/
Description: Custom theme for SKS Perfumes
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: skstheme
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.

SKS Theme 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
--------------------------------------------- */

/* Global font application */
body, html {
	font-family: "Lato", sans-serif;
}

/* Ensure all text elements use Lato */
body * {
	font-family: inherit;
}

/* Override for headings */
h1, h2, h3 {
	font-family: "Playfair Display", serif;
}

/* Override for code elements */
code, pre, kbd, samp, var {
	font-family: "Monaco", "Consolas", "Andale Mono", "DejaVu Sans Mono", monospace;
}
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: "Lato", -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: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;
	border-radius: 3px;
	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 {
	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 {
	display: block;
	left: auto;
}

.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;
	}
}

.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: end;
	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;
}

.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;
	display: grid;
	grid-gap: 1.5em;
}

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

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Header Styles
--------------------------------------------------------------*/

/* Main Header Container */
.site-header {
	background: #fff;
	border-bottom: 1px solid #e5e5e5;
	position: sticky;
	top: 0;
	z-index: 999;
	padding: 0;
	box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

/* Header Layout - Desktop */
#masthead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1400px;
	margin: 0 auto;
	padding: 15px 30px;
	position: relative;
	min-height: 70px;
}

/* Logo/Branding */
.header-left {
	flex: 0 0 200px;
}

.site-branding {
	display: flex;
	align-items: center;
}

.site-title {
	margin: 0;
	font-family: "Playfair Display", serif;
	font-size: 2rem;
	font-weight: 700;
}

.site-title a {
	color: #111;
	text-decoration: none;
	transition: color 0.3s ease;
}

.site-title a:hover {
	color: #C9A959;
}

.custom-logo-link {
	display: block;
	max-width: 120px;
}

.custom-logo {
	height: auto;
	max-height: 60px;
	width: auto;
}

/* Main Container for Center and Right */
.header-main-container {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 40px;
}

/* Navigation - Center */
.header-center {
	flex: 1;
	display: flex;
	justify-content: center;
}

.main-navigation {
	display: block;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 35px;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	color: #333;
	text-decoration: none;
	font-family: "Lato", sans-serif;
	font-size: 0.95rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	transition: color 0.3s ease;
	padding: 5px 0;
}

.main-navigation a:hover,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
	color: #C9A959;
}

/* Dropdown Menu */
.main-navigation ul ul {
	position: absolute;
	top: 100%;
	left: 0;
	background: #fff;
	box-shadow: 0 3px 10px rgba(0,0,0,0.1);
	min-width: 200px;
	padding: 10px 0;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	flex-direction: column;
	gap: 0;
	margin-top: 10px;
}

.main-navigation li:hover > ul {
	opacity: 1;
	visibility: visible;
	margin-top: 0;
}

.main-navigation ul ul a {
	padding: 10px 20px;
	text-transform: none;
	font-size: 0.9rem;
	display: block;
}

.main-navigation ul ul a:hover {
	background: #f8f8f8;
}

/* Header Icons - Right */
.header-right {
	flex: 0 0 200px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.header-icons {
	display: flex;
	align-items: center;
	gap: 25px;
}

.header-icons a {
	color: #333;
	transition: color 0.3s ease;
	position: relative;
	display: flex;
	align-items: center;
}

.header-icons a:hover {
	color: #C9A959;
}

.header-icons svg {
	width: 22px;
	height: 22px;
}

/* Cart Count Badge */
.cart-contents {
	position: relative;
}

.cart-contents-count {
	position: absolute;
	top: -8px;
	right: -8px;
	background: #C9A959;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 600;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Mobile Menu Toggle */
.menu-toggle {
	display: none;
	background: none;
	border: none;
	padding: 10px;
	cursor: pointer;
	color: #333;
}

.menu-toggle svg {
	width: 24px;
	height: 24px;
}

.menu-toggle .icon-menu-close {
	display: none;
}

.menu-toggle.toggled .icon-menu-bars {
	display: none;
}

.menu-toggle.toggled .icon-menu-close {
	display: block;
}

/* Tablet Styles */
@media (max-width: 992px) {
	#masthead {
		padding: 15px 20px;
	}
	
	.header-left {
		flex: 0 0 150px;
	}
	
	.header-main-container {
		padding: 0 20px;
	}
	
	.header-right {
		flex: 0 0 150px;
	}
	
	.main-navigation ul {
		gap: 20px;
	}
	
	.main-navigation a {
		font-size: 0.9rem;
	}
}

/* Mobile Styles */
@media (max-width: 768px) {
	#masthead {
		padding: 12px 15px;
		display: flex;
		justify-content: space-between;
	}
	
	/* Show mobile menu toggle */
	.menu-toggle {
		display: block;
		order: 3;
	}
	
	/* Hide desktop navigation */
	.header-main-container {
		display: flex;
		position: fixed;
		top: 70px;
		left: -100%;
		width: 100%;
		height: calc(100vh - 70px);
		background: #fff;
		flex-direction: column;
		justify-content: flex-start;
		align-items: stretch;
		margin: 0;
		padding: 20px;
		transition: left 0.3s ease;
		z-index: 998;
		overflow-y: auto;
	}
	
	.header-main-container.toggled {
		left: 0;
	}
	
	/* Mobile Navigation */
	.header-center {
		order: 2;
		margin-bottom: 30px;
		flex: none;
		width: 100%;
	}
	
	.main-navigation ul {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}
	
	.main-navigation li {
		border-bottom: 1px solid #e5e5e5;
	}
	
	.main-navigation a {
		display: block;
		padding: 15px 0;
		font-size: 1rem;
	}
	
	/* Mobile dropdown */
	.main-navigation ul ul {
		position: static;
		opacity: 1;
		visibility: visible;
		box-shadow: none;
		padding: 0;
		margin: 0;
		background: #f8f8f8;
	}
	
	.main-navigation ul ul a {
		padding-left: 30px;
	}
	
	/* Header Icons in Mobile */
	.header-right {
		order: 1;
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-bottom: 1px solid #e5e5e5;
		flex: none;
		width: 100%;
		justify-content: center;
	}
	
	.header-icons {
		justify-content: center;
		gap: 30px;
	}
	
	/* Logo */
	.custom-logo-link {
		max-width: 80px;
	}
	
	.custom-logo {
		max-height: 40px;
	}
	
	.site-title {
		font-size: 1.5rem;
	}
}

/* Small Mobile */
@media (max-width: 480px) {
	#masthead {
		padding: 10px;
	}
	
	.header-main-container {
		top: 60px;
		height: calc(100vh - 60px);
	}
}

/* Body class when mobile menu is open */
body.mobile-menu-open {
	overflow: hidden;
}

/* Dropdown toggle button for mobile */
.dropdown-toggle {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	padding: 10px;
	cursor: pointer;
	color: #333;
	display: none;
}

@media (max-width: 768px) {
	.menu-item-has-children {
		position: relative;
	}
	
	.dropdown-toggle {
		display: block;
	}
	
	.dropdown-toggle.active svg {
		transform: rotate(180deg);
	}
	
	.main-navigation ul ul.show {
		display: block !important;
	}
}

/*--------------------------------------------------------------
# Global Typography Updates
--------------------------------------------------------------*/

/* Apply Lato font globally */
* {
    font-family: "Lato", sans-serif !important;
}

/* Headings - mix of Playfair and Lato */
h1, h2, h3 {
	font-family: "Playfair Display", serif;
}

h4, h5, h6 {
	font-family: "Lato", sans-serif;
	font-weight: 600;
}

/* Specific elements that should use Lato */
p, li, td, th, div, span, label, a, small, strong, em, b, i {
	font-family: "Lato", sans-serif;
}

/* Forms and inputs */
input, textarea, select, option {
	font-family: "Lato", sans-serif;
}

/* Buttons */
button, .button, .btn, input[type="submit"], input[type="button"], input[type="reset"] {
	font-family: "Lato", sans-serif;
	font-weight: 500;
}

/* WooCommerce specific elements */
.woocommerce, .woocommerce-page {
	font-family: "Lato", sans-serif;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering,
.woocommerce .woocommerce-breadcrumb,
.woocommerce .product_meta,
.woocommerce .woocommerce-product-details__short-description,
.woocommerce .woocommerce-tabs .panel,
.woocommerce .cart-collaterals,
.woocommerce .cart_totals,
.woocommerce .shop_table,
.woocommerce .form-row label,
.woocommerce .form-row input,
.woocommerce .form-row textarea,
.woocommerce .form-row select {
	font-family: "Lato", sans-serif;
}

/* WordPress specific elements */
.widget, .widget-title, .widget-content, .widget ul, .widget ol {
	font-family: "Lato", sans-serif;
}

/* Navigation and menu items */
.main-navigation a,
.menu-item a,
.sub-menu a,
.footer-navigation a {
	font-family: "Lato", sans-serif;
}

/* Comments and forms */
.comment-content,
.comment-form,
.comment-form input,
.comment-form textarea {
	font-family: "Lato", sans-serif;
}

/* Tables */
table, table th, table td {
	font-family: "Lato", sans-serif;
}

/* Lists */
ul, ol, dl {
	font-family: "Lato", sans-serif;
}

/* Blockquotes */
blockquote, blockquote p {
	font-family: "Lato", sans-serif;
}

/* Code elements */
code, pre {
	font-family: "Monaco", "Consolas", "Andale Mono", "DejaVu Sans Mono", monospace;
}

/* Additional WordPress and theme specific elements */
.site-description,
.entry-meta,
.entry-footer,
.post-navigation,
.pagination,
.breadcrumbs,
.screen-reader-text,
.skip-link,
.wp-caption,
.wp-caption-text,
.gallery-caption,
.alignleft,
.alignright,
.aligncenter,
.wp-block-quote,
.wp-block-pullquote,
.wp-block-code,
.wp-block-preformatted,
.wp-block-verse {
	font-family: "Lato", sans-serif;
}

/* Footer elements */
.site-footer,
.footer-widgets,
.footer-navigation,
.site-info {
	font-family: "Lato", sans-serif;
}

/* Sidebar elements */
.sidebar,
.widget-area,
.widget {
	font-family: "Lato", sans-serif;
}

/* Search and filter elements */
.search-form,
.search-field,
.search-submit,
.filter-form,
.sort-form {
	font-family: "Lato", sans-serif;
}

/* Alert and notification elements */
.notice,
.alert,
.message,
.error,
.success,
.info {
	font-family: "Lato", sans-serif;
}

/* Plugin and dynamic content elements */
.elementor,
.elementor-widget,
.elementor-text-editor,
.elementor-heading-title,
.elementor-button,
.elementor-form,
.elementor-field,
.elementor-field-label,
.elementor-field-input {
	font-family: "Lato", sans-serif;
}

/* ACF (Advanced Custom Fields) elements */
.acf-field,
.acf-label,
.acf-input,
.acf-field-message {
	font-family: "Lato", sans-serif;
}

/* Contact Form 7 and other form plugins */
.wpcf7,
.wpcf7-form,
.wpcf7-form-control,
.wpcf7-label,
.wpcf7-text,
.wpcf7-textarea,
.wpcf7-select,
.wpcf7-submit {
	font-family: "Lato", sans-serif;
}

/* Yoast SEO breadcrumbs */
.breadcrumbs,
.yoast-breadcrumbs,
.yoast-breadcrumb {
	font-family: "Lato", sans-serif;
}

/* Any dynamically added content */
[class*="wp-"],
[class*="elementor-"],
[class*="acf-"],
[class*="woocommerce-"] {
	font-family: "Lato", sans-serif;
}

/*--------------------------------------------------------------
# Breadcrumbs Styling
--------------------------------------------------------------*/

/* Custom breadcrumbs */
.sks-breadcrumbs {
	background: #fafafa;
	border-bottom: 1px solid #eee;
	padding: 15px 0;
	margin-bottom: 0;
}

.sks-breadcrumbs .container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 30px;
}

.sks-breadcrumbs a {
	color: #777;
	text-decoration: none;
	transition: color 0.2s ease;
	font-size: 0.95rem;
}

.sks-breadcrumbs a:hover {
	color: #111;
}

.sks-breadcrumbs .sks-bc-item {
	color: #111;
	font-size: 0.95rem;
}

.sks-breadcrumbs .sks-bc-sep {
	display: inline-block;
	margin: 0 10px;
	color: #c7c7c7;
}

/* WooCommerce default breadcrumbs fallback */
.woocommerce .woocommerce-breadcrumb {
	background: #fafafa;
	border-bottom: 1px solid #eee;
	padding: 15px 30px;
	margin: 0 0 20px;
	font-size: 0.95rem;
}

.woocommerce .woocommerce-breadcrumb a {
	color: #777;
	text-decoration: none;
	transition: color 0.2s ease;
}

.woocommerce .woocommerce-breadcrumb a:hover {
	color: #111;
}

/*--------------------------------------------------------------
# Single Product Page Styling
--------------------------------------------------------------*/

/* Main wrapper */
.sks-single-product-wrapper {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0;
}

.sks-single-product-container {
	padding: 40px 30px;
}

/* Product layout */
.single-product div.product {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: start;
}

/* Product gallery */
.single-product .woocommerce-product-gallery {
	position: relative;
}

.single-product .woocommerce-product-gallery__wrapper {
	margin: 0;
}

.single-product .woocommerce-product-gallery__image {
	border-radius: 8px;
	overflow: hidden;
}

.single-product .woocommerce-product-gallery__image img {
	width: 100%;
	height: auto;
	display: block;
}

/* Product summary */
.single-product .summary {
	padding: 0;
}

/* Brand name */
.single-product .product-brand {
	color: #777;
	font-size: 0.9rem;
	font-weight: 500;
	margin-bottom: 8px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* Product title */
.single-product .product_title {
	font-family: "Playfair Display", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #111;
	margin: 0 0 20px 0;
	line-height: 1.2;
}

/* Product price */
.single-product .price {
	font-size: 1.8rem;
	font-weight: 700;
	color: #111;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	gap: 15px;
}

.single-product .price del {
	font-size: 1.2rem;
	color: #999;
	text-decoration: line-through;
}

.single-product .price ins {
	color: #C9A959;
	text-decoration: none;
}

/* Product description */
.single-product .woocommerce-product-details__short-description {
	font-size: 1rem;
	line-height: 1.6;
	color: #555;
	margin-bottom: 30px;
}

/* Add to cart form */
.single-product form.cart {
	margin-bottom: 30px;
}

.single-product .quantity {
	margin-bottom: 20px;
}

.single-product .quantity .qty {
	width: 80px;
	padding: 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 1rem;
	text-align: center;
}

/* Buttons */
.single-product .single_add_to_cart_button {
	background: #111;
	color: #fff;
	border: 2px solid #111;
	padding: 15px 30px;
	font-size: 1rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.3s ease;
	margin-right: 15px;
}

.single-product .single_add_to_cart_button:hover {
	background: #C9A959;
	border-color: #C9A959;
}

.single-product .buy-now-button {
	background: transparent;
	color: #111;
	border: 2px solid #111;
	padding: 15px 30px;
	font-size: 1rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 4px;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-block;
}

.single-product .buy-now-button:hover {
	background: #111;
	color: #fff;
}

/* Product meta */
.single-product .product_meta {
	border-top: 1px solid #eee;
	padding-top: 30px;
	margin-top: 40px;
	font-size: 0.9rem;
	color: #777;
}

.single-product .product_meta > span {
	display: block;
	margin-bottom: 10px;
}

.single-product .product_meta a {
	color: #111;
	text-decoration: none;
}

.single-product .product_meta a:hover {
	color: #C9A959;
}

/* Tabs */
.woocommerce-tabs {
	margin-top: 60px;
}

.woocommerce-tabs ul.tabs {
	padding: 0;
	border-bottom: 2px solid #eee;
	margin-bottom: 30px;
}

.woocommerce-tabs ul.tabs li {
	background: none;
	border: none;
	margin: 0;
	padding: 0;
}

.woocommerce-tabs ul.tabs li a {
	font-family: "Lato", sans-serif;
	font-weight: 600;
	font-size: 1rem;
	color: #777;
	padding: 15px 25px;
	border-bottom: 2px solid transparent;
	transition: all 0.3s ease;
}

.woocommerce-tabs ul.tabs li.active a {
	color: #111;
	border-bottom-color: #111;
}

.woocommerce-tabs .panel {
	padding: 0;
	border: none;
	background: none;
}

.woocommerce-tabs .panel h2 {
	font-family: "Playfair Display", serif;
	font-size: 1.8rem;
	margin-bottom: 20px;
}

/* Responsive */
@media (max-width: 992px) {
	.single-product div.product {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	
	.single-product .product_title {
		font-size: 2rem;
	}
}

@media (max-width: 768px) {
	.sks-single-product-container {
		padding: 20px 15px;
	}
	
	.single-product .product_title {
		font-size: 1.8rem;
	}
	
	.single-product .price {
		font-size: 1.5rem;
	}
	
	.single-product .single_add_to_cart_button,
	.single-product .buy-now-button {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
		text-align: center;
	}
}

/*--------------------------------------------------------------
# Responsive Content Layout
--------------------------------------------------------------*/

/* Main content container */
.site-main {
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 30px;
}

@media (max-width: 992px) {
	.site-main {
		padding: 30px 20px;
	}
}

@media (max-width: 768px) {
	.site-main {
		padding: 20px 15px;
	}
}

@media (max-width: 480px) {
	.site-main {
		padding: 15px 10px;
	}
}

/* Footer responsive */
.site-footer {
	padding: 40px 30px 20px;
}

@media (max-width: 768px) {
	.site-footer {
		padding: 30px 15px 15px;
	}
}

/* Container widths */
.container, .content-area {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 30px;
}

@media (max-width: 768px) {
	.container, .content-area {
		padding: 0 15px;
	}
}

/*--------------------------------------------------------------
# Cart Page Styling
--------------------------------------------------------------*/

/* Cart container */
.sks-cart-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 30px;
}

/* Cart header */
.sks-cart-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 40px;
	border-bottom: 1px solid #eee;
	padding-bottom: 20px;
}

.sks-cart-title {
	font-family: "Playfair Display", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #111;
	margin: 0;
}

.sks-continue-shopping {
	color: #C9A959;
	text-decoration: none;
	font-weight: 500;
	transition: color 0.3s ease;
}

.sks-continue-shopping:hover {
	color: #111;
}

/* Cart content layout */
.sks-cart-content {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 60px;
	margin-bottom: 40px;
}

/* Cart items */
.sks-cart-items-list {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.sks-cart-item {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 20px;
	padding: 20px;
	border: 1px solid #eee;
	border-radius: 8px;
	background: #fff;
	position: relative;
}

.sks-cart-item-image {
	width: 120px;
	height: 120px;
	overflow: hidden;
	border-radius: 4px;
}

.sks-cart-item-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sks-cart-item-details {
	display: grid;
	grid-template-columns: 1fr auto auto auto auto;
	gap: 20px;
	align-items: center;
}

.sks-cart-item-name {
	grid-column: 1;
}

.sks-cart-item-name a {
	color: #111;
	text-decoration: none;
	font-weight: 600;
	font-size: 1.1rem;
	line-height: 1.4;
}

.sks-cart-item-name a:hover {
	color: #C9A959;
}

.sks-cart-item-price {
	grid-column: 2;
	font-weight: 600;
	color: #111;
}

.sks-cart-item-quantity {
	grid-column: 3;
}

.sks-cart-item-quantity .quantity {
	display: flex;
	align-items: center;
	border: 1px solid #ddd;
	border-radius: 4px;
	overflow: hidden;
}

/* Mobile-friendly quantity input */
@media (max-width: 768px) {
	.sks-cart-item-quantity .quantity {
		min-height: 36px;
	}
	
	.sks-cart-item-quantity .quantity button {
		min-width: 36px;
		min-height: 36px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
	.sks-cart-item-quantity .quantity input[type="number"] {
		min-height: 36px;
		-webkit-appearance: none;
		margin: 0;
	}
}

.sks-cart-item-quantity .quantity input[type="number"] {
	width: 60px;
	padding: 8px 12px;
	border: none;
	text-align: center;
	font-size: 0.9rem;
}

.sks-cart-item-quantity .quantity button {
	background: #f5f5f5;
	border: none;
	padding: 8px 12px;
	cursor: pointer;
	font-size: 1.2rem;
	transition: background 0.3s ease;
}

.sks-cart-item-quantity .quantity button:hover {
	background: #e0e0e0;
}

.sks-cart-item-total {
	grid-column: 4;
	font-weight: 700;
	font-size: 1.1rem;
	color: #111;
}

.sks-cart-item-remove {
	grid-column: 5;
}

.sks-cart-item-remove a {
	color: #999;
	text-decoration: none;
	font-size: 0.9rem;
	transition: color 0.3s ease;
}

.sks-cart-item-remove a:hover {
	color: #e74c3c;
}

/* Cart actions */
.sks-cart-actions {
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #eee;
}

.sks-coupon-section {
	display: flex;
	gap: 15px;
	margin-bottom: 20px;
}

.sks-coupon-input {
	flex: 1;
	padding: 12px 15px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 0.9rem;
}

.sks-apply-coupon {
	background: #C9A959;
	color: #fff;
	border: none;
	padding: 12px 20px;
	border-radius: 4px;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.3s ease;
}

.sks-apply-coupon:hover {
	background: #b89447;
}

.sks-update-cart {
	background: #111;
	color: #fff;
	border: none;
	padding: 12px 20px;
	border-radius: 4px;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.3s ease;
}

.sks-update-cart:hover {
	background: #333;
}

/* Cart sidebar */
.sks-cart-sidebar {
	background: #f9f9f9;
	padding: 30px;
	border-radius: 8px;
	height: fit-content;
}

/* Cart totals */
.sks-cart-totals {
	background: #fff;
	padding: 30px;
	border-radius: 8px;
	border: 1px solid #eee;
}

.sks-cart-totals-content {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.sks-subtotal-row,
.sks-coupon-row,
.sks-shipping-row,
.sks-fee-row,
.sks-tax-row,
.sks-total-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 0;
}

.sks-total-row {
	border-top: 2px solid #eee;
	padding-top: 20px;
	margin-top: 10px;
	font-size: 1.2rem;
	font-weight: 700;
}

.sks-shipping-note {
	font-size: 0.8rem;
	color: #666;
	text-align: center;
	margin: 20px 0;
}

.sks-proceed-to-checkout {
	margin-top: 20px;
}

.sks-proceed-to-checkout .checkout-button,
.sks-proceed-to-checkout .button {
	background: #111 !important;
	color: #fff !important;
	border: none !important;
	padding: 15px 30px !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	cursor: pointer !important;
	transition: background 0.3s ease !important;
	width: 100% !important;
	text-align: center !important;
	text-decoration: none !important;
	display: block !important;
}

.sks-proceed-to-checkout .checkout-button:hover,
.sks-proceed-to-checkout .button:hover {
	background: #333 !important;
}

/* Cart notes */
.sks-cart-notes {
	margin-top: 40px;
	padding: 30px;
	background: #f9f9f9;
	border-radius: 8px;
}

.sks-cart-notes h3 {
	font-family: "Playfair Display", serif;
	font-size: 1.5rem;
	font-weight: 600;
	color: #111;
	margin: 0 0 20px 0;
}

.sks-order-notes {
	width: 100%;
	min-height: 100px;
	padding: 15px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-family: "Lato", sans-serif;
	font-size: 0.9rem;
	resize: vertical;
}

/* Empty cart */
.sks-empty-cart {
	text-align: center;
	padding: 80px 20px;
}

.sks-empty-cart-icon {
	font-size: 4rem;
	margin-bottom: 20px;
}

.sks-empty-cart h2 {
	font-family: "Playfair Display", serif;
	font-size: 2rem;
	font-weight: 600;
	color: #111;
	margin: 0 0 15px 0;
}

.sks-empty-cart p {
	color: #666;
	margin: 0 0 30px 0;
	font-size: 1.1rem;
}

.sks-shop-now {
	background: #C9A959;
	color: #fff;
	text-decoration: none;
	padding: 15px 30px;
	border-radius: 4px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	transition: background 0.3s ease;
}

.sks-shop-now:hover {
	background: #b89447;
}

/* Hide default WooCommerce cart table */
.woocommerce-cart-form table.shop_table {
	display: none !important;
}

/* Responsive cart */
@media (max-width: 992px) {
	.sks-cart-content {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	
	.sks-cart-item {
		grid-template-columns: 80px 1fr;
		gap: 15px;
		padding: 15px;
	}
	
	.sks-cart-item-image {
		width: 80px;
		height: 80px;
	}
	
	.sks-cart-item-details {
		grid-template-columns: 1fr;
		gap: 8px;
	}
	
	.sks-cart-item-name,
	.sks-cart-item-price,
	.sks-cart-item-quantity,
	.sks-cart-item-total,
	.sks-cart-item-remove {
		grid-column: 1;
	}
	
	.sks-cart-item-name a {
		font-size: 1rem;
	}
	
	.sks-cart-item-price {
		font-size: 1rem;
	}
	
	.sks-cart-item-total {
		font-size: 1rem;
	}
}

@media (max-width: 768px) {
	.sks-cart-container {
		padding: 15px 10px;
	}
	
	.sks-cart-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		margin-bottom: 30px;
		padding-bottom: 15px;
	}
	
	.sks-cart-title {
		font-size: 1.8rem;
	}
	
	.sks-cart-content {
		gap: 20px;
	}
	
	.sks-cart-item {
		grid-template-columns: 70px 1fr;
		gap: 12px;
		padding: 12px;
	}
	
	.sks-cart-item-image {
		width: 70px;
		height: 70px;
	}
	
	.sks-cart-item-details {
		gap: 6px;
	}
	
	.sks-cart-item-name a {
		font-size: 0.95rem;
		line-height: 1.3;
	}
	
	.sks-cart-item-price {
		font-size: 0.9rem;
	}
	
	.sks-cart-item-total {
		font-size: 0.95rem;
		font-weight: 600;
	}
	
	.sks-cart-item-quantity .quantity input[type="number"] {
		width: 50px;
		padding: 6px 8px;
		font-size: 0.85rem;
	}
	
	.sks-cart-item-quantity .quantity button {
		padding: 6px 8px;
		font-size: 1rem;
	}
	
	.sks-cart-item-remove a {
		font-size: 0.8rem;
	}
	
	.sks-coupon-section {
		flex-direction: column;
		gap: 10px;
	}
	
	.sks-coupon-input {
		padding: 10px 12px;
		font-size: 0.85rem;
	}
	
	.sks-apply-coupon,
.sks-update-cart {
	padding: 10px 15px;
	font-size: 0.85rem;
	min-height: 44px;
}
	
	.sks-cart-sidebar {
		padding: 20px;
	}
	
	.sks-cart-totals {
		padding: 20px;
	}
	
	.sks-cart-totals-content {
		gap: 12px;
	}
	
	.sks-subtotal-row,
	.sks-coupon-row,
	.sks-shipping-row,
	.sks-fee-row,
	.sks-tax-row,
	.sks-total-row {
		padding: 8px 0;
		font-size: 0.9rem;
	}
	
	.sks-total-row {
		font-size: 1.1rem;
		padding-top: 15px;
	}
	
	.sks-shipping-note {
		font-size: 0.75rem;
		margin: 15px 0;
	}
	
	.sks-proceed-to-checkout .checkout-button,
.sks-proceed-to-checkout .button {
	padding: 12px 20px;
	font-size: 0.9rem;
	min-height: 48px;
}
	
	.sks-cart-notes {
		margin-top: 30px;
		padding: 20px;
	}
	
	.sks-cart-notes h3 {
		font-size: 1.3rem;
		margin-bottom: 15px;
	}
	
	.sks-order-notes {
		min-height: 80px;
		padding: 12px;
		font-size: 0.85rem;
	}
}

/* Extra small screens */
@media (max-width: 480px) {
	.sks-cart-container {
		padding: 10px 8px;
	}
	
	.sks-cart-title {
		font-size: 1.6rem;
	}
	
	.sks-cart-item {
		grid-template-columns: 60px 1fr;
		gap: 10px;
		padding: 10px;
	}
	
	.sks-cart-item-image {
		width: 60px;
		height: 60px;
	}
	
	.sks-cart-item-name a {
		font-size: 0.9rem;
	}
	
	.sks-cart-item-price {
		font-size: 0.85rem;
	}
	
	.sks-cart-item-total {
		font-size: 0.9rem;
	}
	
	.sks-cart-item-quantity .quantity input[type="number"] {
		width: 45px;
		padding: 5px 6px;
		font-size: 0.8rem;
	}
	
	.sks-cart-item-quantity .quantity button {
		padding: 5px 6px;
		font-size: 0.9rem;
	}
	
	.sks-cart-sidebar {
		padding: 15px;
	}
	
	.sks-cart-totals {
		padding: 15px;
	}
	
	.sks-subtotal-row,
	.sks-coupon-row,
	.sks-shipping-row,
	.sks-fee-row,
	.sks-tax-row,
	.sks-total-row {
		font-size: 0.85rem;
	}
	
	.sks-total-row {
		font-size: 1rem;
	}
	
	.sks-proceed-to-checkout .checkout-button,
	.sks-proceed-to-checkout .button {
		padding: 10px 15px;
		font-size: 0.85rem;
	}
	
	.sks-cart-notes {
		padding: 15px;
	}
	
	.sks-cart-notes h3 {
		font-size: 1.2rem;
	}
	
	.sks-order-notes {
		min-height: 70px;
		padding: 10px;
		font-size: 0.8rem;
	}
}

/* Touch-friendly improvements for mobile */
@media (max-width: 768px) {
	.sks-cart-item-remove a {
		padding: 8px 12px;
		background: #f5f5f5;
		border-radius: 4px;
		display: inline-block;
	}
	
	.sks-cart-item-remove a:hover {
		background: #e0e0e0;
	}
	
	.sks-continue-shopping {
		padding: 8px 12px;
		background: #f5f5f5;
		border-radius: 4px;
		display: inline-block;
	}
	
	.sks-continue-shopping:hover {
		background: #e0e0e0;
	}
}

/* Ultra small screens */
@media (max-width: 360px) {
	.sks-cart-container {
		padding: 8px 5px;
	}
	
	.sks-cart-title {
		font-size: 1.4rem;
	}
	
	.sks-cart-item {
		grid-template-columns: 50px 1fr;
		gap: 8px;
		padding: 8px;
	}
	
	.sks-cart-item-image {
		width: 50px;
		height: 50px;
	}
	
	.sks-cart-item-name a {
		font-size: 0.85rem;
	}
	
	.sks-cart-item-price {
		font-size: 0.8rem;
	}
	
	.sks-cart-item-total {
		font-size: 0.85rem;
	}
	
	.sks-cart-item-quantity .quantity input[type="number"] {
		width: 40px;
		padding: 4px 5px;
		font-size: 0.75rem;
	}
	
	.sks-cart-item-quantity .quantity button {
		padding: 4px 5px;
		font-size: 0.8rem;
	}
	
	.sks-cart-sidebar {
		padding: 12px;
	}
	
	.sks-cart-totals {
		padding: 12px;
	}
	
	.sks-subtotal-row,
	.sks-coupon-row,
	.sks-shipping-row,
	.sks-fee-row,
	.sks-tax-row,
	.sks-total-row {
		font-size: 0.8rem;
		padding: 6px 0;
	}
	
	.sks-total-row {
		font-size: 0.95rem;
		padding-top: 12px;
	}
	
	.sks-proceed-to-checkout .checkout-button,
	.sks-proceed-to-checkout .button {
		padding: 8px 12px;
		font-size: 0.8rem;
	}
}

/*--------------------------------------------------------------
# Checkout Page Styling
--------------------------------------------------------------*/

/* Checkout container */
.sks-checkout-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 30px;
}

/* Checkout header */
.sks-checkout-header {
	text-align: center;
	margin-bottom: 40px;
}

.sks-checkout-title {
	font-family: "Playfair Display", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #111;
	margin: 0;
}

/* Checkout content layout */
.sks-checkout-content {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 60px;
}

/* Left column - Customer details */
.sks-checkout-left {
	background: #fff;
}

.sks-customer-details {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

/* Checkout sections */
.sks-checkout-section {
	border-bottom: 1px solid #eee;
	padding-bottom: 30px;
}

.sks-section-title {
	font-family: "Playfair Display", serif;
	font-size: 1.5rem;
	font-weight: 600;
	color: #111;
	margin: 0 0 20px 0;
}

/* Contact fields */
.sks-contact-fields {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

/* Form fields styling */
.sks-checkout-container input[type="text"],
.sks-checkout-container input[type="email"],
.sks-checkout-container input[type="tel"],
.sks-checkout-container input[type="password"],
.sks-checkout-container select,
.sks-checkout-container textarea {
	width: 100%;
	padding: 12px 15px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 0.9rem;
	font-family: "Lato", sans-serif;
	background: #fff;
	color: #111;
	transition: border-color 0.3s ease;
}

.sks-checkout-container input[type="text"]:focus,
.sks-checkout-container input[type="email"]:focus,
.sks-checkout-container input[type="tel"]:focus,
.sks-checkout-container input[type="password"]:focus,
.sks-checkout-container select:focus,
.sks-checkout-container textarea:focus {
	outline: none;
	border-color: #C9A959;
}

/* Field groups */
.sks-checkout-container .form-row {
	margin-bottom: 15px;
}

.sks-checkout-container .form-row-first,
.sks-checkout-container .form-row-last {
	width: 48%;
}

.sks-checkout-container .form-row-first {
	float: left;
}

.sks-checkout-container .form-row-last {
	float: right;
}

.sks-checkout-container .form-row-wide {
	width: 100%;
	clear: both;
}

/* Labels */
.sks-checkout-container label {
	font-weight: 500;
	color: #111;
	margin-bottom: 5px;
	display: block;
}

/* Checkboxes */
.sks-checkout-container input[type="checkbox"] {
	margin-right: 8px;
}

.sks-checkout-container .checkbox-label {
	display: flex;
	align-items: center;
	font-size: 0.9rem;
	color: #666;
}

/* Login link */
.sks-checkout-container .woocommerce-form-login-toggle {
	margin-top: 10px;
}

.sks-checkout-container .woocommerce-form-login-toggle a {
	color: #C9A959;
	text-decoration: none;
	font-weight: 500;
}

.sks-checkout-container .woocommerce-form-login-toggle a:hover {
	color: #111;
}

/* Right column - Order summary */
.sks-checkout-right {
	background: #f9f9f9;
	padding: 30px;
	border-radius: 8px;
	height: fit-content;
}

.sks-order-summary {
	background: #fff;
	padding: 25px;
	border-radius: 8px;
	border: 1px solid #eee;
}

.sks-summary-title {
	font-family: "Playfair Display", serif;
	font-size: 1.3rem;
	font-weight: 600;
	color: #111;
	margin: 0 0 20px 0;
}

/* Review order */
.sks-review-order {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

/* Order products */
.sks-order-products {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.sks-order-product {
	display: flex;
	gap: 15px;
	padding: 15px 0;
	border-bottom: 1px solid #eee;
}

.sks-product-image {
	width: 60px;
	height: 60px;
	overflow: hidden;
	border-radius: 4px;
	flex-shrink: 0;
}

.sks-product-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.sks-product-details {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.sks-product-name {
	font-weight: 600;
	color: #111;
	font-size: 0.9rem;
	line-height: 1.3;
}

.sks-product-variant {
	font-size: 0.8rem;
	color: #666;
}

.sks-product-price {
	font-weight: 600;
	color: #111;
	font-size: 0.9rem;
}

/* Discount section */
.sks-discount-section {
	display: flex;
	gap: 10px;
	margin-top: 10px;
}

.sks-discount-input {
	flex: 1;
	padding: 10px 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 0.85rem;
}

.sks-apply-discount {
	background: #C9A959;
	color: #fff;
	border: none;
	padding: 10px 15px;
	border-radius: 4px;
	font-weight: 600;
	font-size: 0.85rem;
	cursor: pointer;
	transition: background 0.3s ease;
}

.sks-apply-discount:hover {
	background: #b89447;
}

/* Order totals */
.sks-order-totals {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 2px solid #eee;
}

.sks-total-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 8px 0;
	font-size: 0.9rem;
}

.sks-final-total {
	font-size: 1.1rem;
	font-weight: 700;
	color: #111;
	padding-top: 15px;
	border-top: 1px solid #eee;
	margin-top: 10px;
}

/* Payment methods */
.sks-payment-info {
	background: #f9f9f9;
	padding: 20px;
	border-radius: 4px;
}

.sks-payment-info p {
	margin: 0 0 15px 0;
	font-size: 0.9rem;
	color: #666;
}

/* Place order button */
.sks-checkout-container .place-order {
	margin-top: 30px;
}

.sks-checkout-container .place-order .button {
	background: #111;
	color: #fff;
	border: none;
	padding: 15px 30px;
	border-radius: 4px;
	font-weight: 600;
	font-size: 1rem;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	cursor: pointer;
	transition: background 0.3s ease;
	width: 100%;
	text-align: center;
}

.sks-checkout-container .place-order .button:hover {
	background: #333;
}

/* Hide default WooCommerce checkout elements */
.woocommerce-checkout-review-order-table {
	display: none !important;
}

#order_review_heading {
	display: none !important;
}

/* Responsive checkout */
@media (max-width: 992px) {
	.sks-checkout-content {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	
	.sks-checkout-right {
		order: -1;
	}
}

@media (max-width: 768px) {
	.sks-checkout-container {
		padding: 20px 15px;
	}
	
	.sks-checkout-title {
		font-size: 2rem;
	}
	
	.sks-customer-details {
		gap: 30px;
	}
	
	.sks-checkout-section {
		padding-bottom: 25px;
	}
	
	.sks-section-title {
		font-size: 1.3rem;
	}
	
	.sks-checkout-container .form-row-first,
	.sks-checkout-container .form-row-last {
		width: 100%;
		float: none;
	}
	
	.sks-checkout-right {
		padding: 20px;
	}
	
	.sks-order-summary {
		padding: 20px;
	}
	
	.sks-order-product {
		gap: 12px;
	}
	
	.sks-product-image {
		width: 50px;
		height: 50px;
	}
	
	.sks-discount-section {
		flex-direction: column;
	}
	
	.sks-apply-discount {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.sks-checkout-container {
		padding: 15px 10px;
	}
	
	.sks-checkout-title {
		font-size: 1.8rem;
	}
	
	.sks-checkout-content {
		gap: 30px;
	}
	
	.sks-customer-details {
		gap: 25px;
	}
	
	.sks-checkout-section {
		padding-bottom: 20px;
	}
	
	.sks-section-title {
		font-size: 1.2rem;
	}
	
	.sks-checkout-container input[type="text"],
	.sks-checkout-container input[type="email"],
	.sks-checkout-container input[type="tel"],
	.sks-checkout-container input[type="password"],
	.sks-checkout-container select,
	.sks-checkout-container textarea {
		padding: 10px 12px;
		font-size: 0.85rem;
	}
	
	.sks-checkout-right {
		padding: 15px;
	}
	
	.sks-order-summary {
		padding: 15px;
	}
	
	.sks-order-product {
		gap: 10px;
	}
	
	.sks-product-image {
		width: 45px;
		height: 45px;
	}
	
	.sks-product-name {
		font-size: 0.85rem;
	}
	
	.sks-product-price {
		font-size: 0.85rem;
	}
	
	.sks-total-row {
		font-size: 0.85rem;
	}
	
	.sks-final-total {
		font-size: 1rem;
	}
}

/*--------------------------------------------------------------
# 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;
}

.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;
}

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

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

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

/*
==========================================================================
 SKS PERFUMES - CUSTOM PRODUCT SLIDER STYLES
==========================================================================
*/

/* 1. Main wrapper for the entire section */
.sks-collection-wrapper {
    padding: 80px 0;
    background-color: #f9f9f9; /* A very light grey background */
}
/* A container to limit the width and center content */
.sks-collection-container {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
}

/* 2. Header with title and "View all" link */
.sks-collection-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}
.sks-collection-title {
    margin: 0;
    font-size: 32px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-family: "Playfair Display", serif; /* Assuming you'll add this font */
}
.sks-view-all-link {
    text-decoration: underline;
    color: #111;
    font-size: 16px;
    white-space: nowrap;
}
.sks-view-all-link:hover {
    text-decoration: none;
}

/* 3. Container for slider and arrows */
.sks-slider-container {
    position: relative;
    padding: 0 50px; /* Space on sides for the arrows */
}

/* 4. Swiper slider itself */
.sks-product-slider {
    overflow: visible;
}

/* 5. Product Card Styles */
.sks-product-card {
    text-align: left;
}
.sks-product-title,
.sks-product-title a {
    font-family: "Playfair Display", serif;
    font-size: 20px;
    font-weight: 400;
    margin: 15px 0 10px;
    min-height: 56px;
    color: #333;
    text-decoration: none;
}
.sks-product-card .price {
    font-size: 18px;
    font-weight: 500;
    color: #555;
}
.sks-product-card .price ins {
    color: #C9A959; /* Gold color for sale price */
    text-decoration: none;
    font-weight: bold;
}
.sks-product-card .price del {
    font-size: 14px;
    color: #999;
    margin-left: 8px;
}

/* 6. Image Wrapper and Sale Badge */
.sks-product-image-wrapper {
    position: relative;
    display: block;
}
.sks-sale-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    background-color: #000;
    color: #fff;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    z-index: 10;
}

/* 7. Buttons */
.sks-product-card a.button {
    display: inline-block;
    background-color: transparent;
    border: 1px solid #ccc;
    border-radius: 5px; /* <-- ДОБАВЛЕНО */
    color: #333;
    padding: 10px 15px;
    text-align: center;
    margin-top: 15px;
    width: 100%;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
}
.sks-product-card a.button:hover {
    background-color: #111;
    color: #fff;
    border-color: #111;
}
.sks-product-card .added_to_cart {
    display: none !important;
}

/* 8. Arrow Positioning */
.sks-slider-container .swiper-button-next,
.sks-slider-container .swiper-button-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: #000;
    color: #fff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    margin-top: -40px; /* Adjust vertical position */
}
.sks-slider-container .swiper-button-next:after,
.sks-slider-container .swiper-button-prev:after {
    font-size: 16px;
}
.sks-slider-container .swiper-button-prev { left: 0; }
.sks-slider-container .swiper-button-next { right: 0; }

/* 9. Responsive adjustments */
@media (max-width: 768px) {
    .sks-slider-container { padding: 0; }
    .sks-slider-container .swiper-button-next,
    .sks-slider-container .swiper-button-prev { display: none; }
}

/*
==========================================================================
 SKS THEME - HOMEPAGE HERO SECTION
==========================================================================
*/

.hero-section {
    position: relative;
    height: 90vh; /* Занимает 90% высоты экрана */
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    overflow: hidden;
}

.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('http://sks-perfumes.local/wp-content/uploads/2025/08/Untitled.png'); /* <<< ЗАМЕНИТЕ ЭТО! */
    background-size: cover;
    background-position: center center;
    z-index: 1;
}

/* Эффект затемнения для лучшей читаемости текста */
.hero-background::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.hero-content {
    position: relative;
    z-index: 2;
    padding: 20px;
}

.hero-title {
    font-family: "Playfair Display", serif;
    font-size: 5rem; /* 1rem = примерно 16px */
    font-weight: 500;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.hero-subtitle {
    font-size: 1.25rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2rem;
    opacity: 0.9;
}

.hero-button {
    display: inline-block;
    border: 2px solid #fff;
    color: #fff;
    border-radius: 5px;
    background-color: transparent;
    padding: 12px 30px;
    font-size: 1rem;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.hero-button:hover {
    background-color: #fff;
    color: #000;
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
    .hero-title {
        font-size: 3rem;
    }
    .hero-subtitle {
        font-size: 1rem;
    }
}

/*
==========================================================================
 SKS THEME - ABOUT PHILOSOPHY SECTION
==========================================================================
*/

.about-philosophy-section {
    padding: 80px 0;
    background-color: #fff; /* White background to contrast with the light grey slider section */
}

.about-container {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    display: flex;
    align-items: center;
    gap: 60px; /* Space between image and text */
}

.about-image,
.about-content {
    flex: 1; /* Both columns take up 50% of the width */
}

.about-image img {
    display: block;
    width: 100%;
    height: auto;
}

.about-content .section-title {
    font-family: "Playfair Display", serif;
    font-size: 3rem;
    font-weight: 500;
    margin-top: 0;
    margin-bottom: 1.5rem;
}

.about-content p {
    font-family: "Lato", sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #555;
    margin-bottom: 1.5rem;
}

.about-content .button-outline {
    display: inline-block;
    border: 2px solid #111;
	border-radius: 5px;
    color: #111;
    background-color: transparent;
    padding: 12px 30px;
    font-size: 1rem;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    margin-top: 1rem;
}

.about-content .button-outline:hover {
    background-color: #111;
    color: #fff;
}

/* Responsive adjustments for mobile */
@media (max-width: 768px) {
    .about-container {
        flex-direction: column; /* Stack columns vertically on mobile */
        gap: 40px;
    }
    .about-content {
        text-align: center;
    }
    .about-content .section-title {
        font-size: 2.5rem;
    }
}

/*
==========================================================================
 SKS THEME - CATEGORY GRID SECTION
==========================================================================
*/
.category-grid-section {
    padding: 80px 0;
    background-color: #f9f9f9;
}

.category-container {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
}

/* Общий класс для заголовков, выровненных по центру */
.section-title.text-center {
    text-align: center;
    margin-bottom: 2.5rem;
}

.category-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 колонки */
    gap: 30px;
}

.category-card {
    position: relative;
    height: 400px;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: flex-end;  /* Контент у нижнего края */
    justify-content: center; /* Горизонтально по центру */
    padding: 2.5rem;
    text-align: center;
}

.category-card:hover {
    transform: scale(1.03); /* Эффект легкого увеличения при наведении */
}

/* Затемняющий слой для читаемости */
.category-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 50%);
}

.category-card-link {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    text-decoration: none;
}


.category-card-content {
    position: absolute;
    bottom: 20px;  /* Отступ от низа */
    left: 50%;
	color: #fff;
    transform: translateX(-50%);
    text-align: center;
    width: calc(100% - 40px); /* чтобы не прилипало к краям */
    z-index: 2;
}

.category-card:hover .category-card-content {
	transform: translate(-50%, -10px); /* Легкий сдвиг контента вверх при наведении */
}

.category-card-title {
    font-family: "Playfair Display", serif;
    font-size: 2rem;
    margin-top: 0;
    margin-bottom: 1rem;
}

.category-card,
.category-card-content,
.category-card-content h3,
.category-card-content button {
    font-family: 'Lato', sans-serif !important;
}

.button-outline-white {
    display: inline-block;
    border: 2px solid #fff;
	border-radius: 5px;
    padding: 10px 20px;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 1px;
}

/* Адаптивность */
@media (max-width: 992px) {
    .category-grid {
        grid-template-columns: 1fr; /* 1 колонка на планшетах и мобильных */
    }
}

/*
==========================================================================
 SKS THEME - HEADER STYLES (v3 - Final Desktop & Mobile)
==========================================================================
*/

.site-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 2rem;
    background-color: #fff;
    border-bottom: 1px solid #eaeaea;
    position: relative; /* Необходимо для мобильного меню */
}

/* --- DESKTOP STYLES ( > 992px ) --- */

/* Главный контейнер для меню и иконок */
.header-main-container {
    flex: 1;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Три колонки шапки */
.header-left {
    flex: 1;
    display: flex;
    justify-content: flex-start;
}
.header-center {
    flex: 2; /* Даем больше места, чтобы меню точно было по центру */
    display: flex;
    justify-content: center;
}
.header-right {
    flex: 1;
    display: flex;
    justify-content: flex-end;
}

/* Кнопка-бургер на десктопе скрыта */
.menu-toggle {
    display: none;
}


/* --- ОБЩИЕ СТИЛИ (Логотип, меню, иконки) --- */

.site-branding { display: flex; align-items: center; }
.custom-logo { max-height: 40px; width: auto; }
.site-title { font-family: "Playfair Display", serif; font-size: 1.5rem; margin: 0 0 0 1rem; }
.site-title a { text-decoration: none; color: #111; }
body.has-custom-logo .site-title { clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden; }

.main-navigation ul { display: flex; list-style: none; margin: 0; padding: 0; gap: 2rem; }
.main-navigation a { text-decoration: none; color: #333; font-family: "Lato", sans-serif; text-transform: uppercase; font-size: 0.9rem; letter-spacing: 1px; padding-bottom: 5px; border-bottom: 2px solid transparent; transition: all 0.3s ease; }
.main-navigation a:hover, .main-navigation .current-menu-item > a { color: #000; border-bottom-color: #000; }

.header-icons { display: flex; align-items: center; gap: 1.5rem; }
.header-icons a { color: #111; position: relative; }
.header-icons svg { width: 22px; height: 22px; }
.cart-contents .cart-contents-count { position: absolute; top: -8px; right: -10px; background-color: #000; color: #fff; border-radius: 50%; width: 18px; height: 18px; font-size: 10px; line-height: 18px; text-align: center; font-weight: bold; }
.cart-contents .cart-contents-count:empty { display: none; }


/*
==========================================================================
 SKS THEME - MOBILE HEADER & NAVIGATION ( < 992px )
==========================================================================
*/

@media (max-width: 992px) {
    .site-header {
        flex-wrap: wrap;
    }

    /* Показываем кнопку-бургер и ставим ее справа */
    .menu-toggle {
        display: block;
    }

    /* Скрываем главный контейнер по умолчанию */
    .header-main-container {
        display: none;
        order: 10; /* Ставим в самый конец потока */
        width: 100%;
        background-color: #fff;
        position: absolute;
        top: 100%;
        left: 0;
        box-shadow: 0 4px 6px rgba(0,0,0,0.05);
        padding: 2rem;
        z-index: 999;
    }

    /* Когда меню открыто, показываем контейнер */
    .main-navigation.toggled + .header-main-container,
    .header-main-container.toggled-by-button { /* Добавляем второй класс для надежности */
        display: block;
    }
    
    /* Внутри открытого меню перестраиваем элементы */
    .header-main-container.toggled-by-button {
        flex-direction: column;
        align-items: center;
        gap: 2rem;
    }
    .header-main-container.toggled-by-button .header-center,
    .header-main-container.toggled-by-button .header-right {
        width: 100%;
        justify-content: center;
    }
    .header-main-container.toggled-by-button .header-right {
        padding-top: 2rem;
        border-top: 1px solid #eaeaea;
    }
    .header-main-container.toggled-by-button .main-navigation ul {
        flex-direction: column;
        align-items: center;
        gap: 1.5rem;
    }
    .header-main-container.toggled-by-button .main-navigation a {
        font-size: 1.2rem;
    }
    
    /* Иконки крестика и бургера */
    .icon-menu-close { display: none; }
    .menu-toggle.toggled .icon-menu-bars { display: none; }
    .menu-toggle.toggled .icon-menu-close { display: block; }
}

/*
==========================================================================
 SKS THEME - FOOTER STYLES
==========================================================================
*/

.site-footer {
    background-color: #ebebeb;
    color: #a0a0a0;
    font-family: "Lato", sans-serif;
    font-size: 0.9rem;
}

/* Верхняя часть с виджетами */
.footer-widgets-wrapper {
    padding: 60px 0;
}
.footer-widgets-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 колонки */
    gap: 40px;
}
.footer-widget-area .widget-title {
    font-family: "Playfair Display", serif;
    color: #0c0c0c;
    font-size: 1.2rem;
    margin-top: 0;
    margin-bottom: 1.5rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.footer-widget-area a {
    color: #a0a0a0;
    text-decoration: none;
}
.footer-widget-area a:hover {
    color: #727272;
}
.footer-widget-area ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.footer-widget-area ul li {
    margin-bottom: 0.8rem;
}
.footer-widget-area .custom-logo {
    max-width: 150px;
    margin-bottom: 1rem;
}

/* Нижняя часть с копирайтом */
.site-info {
    background-color: #000;
    padding: 1.5rem 0;
}
.site-info-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.footer-social-links {
    display: flex;
    gap: 1rem;
}
.footer-social-links a svg {
    width: 20px;
    height: 20px;
    fill: #a0a0a0; /* Для SVG иконок лучше использовать fill */
    transition: fill 0.3s ease;
}
.footer-social-links a:hover svg {
    fill: #fff;
}

/* Адаптивность для футера */
@media (max-width: 768px) {
    .footer-widgets-container {
        grid-template-columns: 1fr; /* 1 колонка */
    }
    .site-info-container {
        flex-direction: column;
        gap: 1rem;
    }
}

/*
==========================================================================
 SKS THEME - WOOCOMMERCE SHOP/ARCHIVE STYLES (v2 - High Specificity)
==========================================================================
*/

.woocommerce .shop-container {
    max-width: 1300px;
    margin: 4rem auto;
    padding: 0 15px;
}

/* Заголовок страницы (Shop) */
.woocommerce-products-header {
    text-align: center;
    margin-bottom: 3rem;
}
.woocommerce-products-header .page-title {
    font-family: "Playfair Display", serif;
    font-size: 3.5rem;
    margin-bottom: 1rem;
}

/* Раскладка: сайдбар + товары */
.shop-content-wrapper {
    display: grid;
    grid-template-columns: 250px 1fr; /* Сайдбар 250px, остальное - товары */
    gap: 40px;
}

/* Виджеты в сайдбаре */
.shop-sidebar .widget {
    margin-bottom: 2.5rem;
}
.shop-sidebar .widget-title {
    font-family: "Playfair Display", serif;
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}
    
/* Сортировка и кол-во товаров */
.woocommerce-result-count, .woocommerce-ordering {
    font-family: "Lato", sans-serif;
    color: #555;
    margin-bottom: 2em;
}
.woocommerce .woocommerce-ordering select {
    padding: 8px;
    border-color: #ddd;
    border-radius: 5px;
}

/* Сетка товаров (v3 - Final Grid Override) */
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin: 0;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0;
    list-style: none;
    text-align: left;
}

/* Сбрасываем стили .first и .last, которые ломают grid */
.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last {
    clear: none !important;
    margin-right: 0 !important;
}

/*
==========================================================================
 SKS THEME - WOOCOMMERCE SHOP/ARCHIVE STYLES (v3 - PerfumeDubai Style)
==========================================================================
*/

/* ... (все стили до карточки товара остаются без изменений) ... */

/* --- Стилизация карточки товара в каталоге (v3 - Новый дизайн) --- */
.woocommerce ul.products li.product {
    text-align: center;
    border: none;
    transition: transform 0.3s ease;
    padding: 15px;
    list-style: none;
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-5px);
}

/* Карточка товара */
.sks-product-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Обертка для изображения и стикера */
.sks-product-image-wrapper {
    position: relative;
    margin-bottom: 1rem;
    overflow: hidden;
}

/* Discount Badge */
.sks-discount-badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #000;
    color: #fff;
    padding: 8px 12px;
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 4px;
    z-index: 10;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Изображение */
.woocommerce ul.products li.product img {
    margin: 0 auto;
    width: 100%;
    height: auto;
    display: block;
}

/* Название товара */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: "Lato", sans-serif;
    font-size: 1.1rem;
    color: #333;
    margin: 0.8rem 0;
    font-weight: 500;
    text-transform: none;
    line-height: 1.4;
    min-height: 50px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title a:hover {
    color: #C9A959;
}

/* Рейтинг */
.sks-product-rating {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 0.8rem;
}

.sks-product-rating .star-rating {
    margin: 0;
    font-size: 0.9rem;
}

.sks-product-rating .review-count {
    font-size: 0.85rem;
    color: #666;
}

.woocommerce .star-rating {
    color: #FFC107;
}

.woocommerce .star-rating::before {
    color: #ddd;
}

.woocommerce .star-rating span::before {
    color: #FFC107;
}

/* Цена */
.sks-product-price {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-bottom: 1rem;
    min-height: 30px;
}

.sks-sale-price {
    color: #C9A959;
    font-size: 1.2rem;
    font-weight: 600;
}

.sks-regular-price {
    color: #999;
    font-size: 1rem;
    text-decoration: line-through;
}

.sks-current-price {
    color: #333;
    font-size: 1.2rem;
    font-weight: 600;
}

/* Action Buttons */
.sks-product-action {
    margin-top: auto;
}

.sks-product-action .button,
.woocommerce ul.products li.product .button {
    display: inline-block;
    background-color: transparent !important;
    color: #333 !important;
    border: 1px solid #ddd !important;
    padding: 10px 24px !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    text-transform: capitalize !important;
    transition: all 0.3s ease !important;
    cursor: pointer;
    text-decoration: none !important;
    border-radius: 3px !important;
    width: auto !important;
    font-family: "Lato", sans-serif !important;
}

.sks-product-action .button:hover,
.woocommerce ul.products li.product .button:hover {
    background-color: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
}

.sks-product-action .sks-unavailable {
    color: #999 !important;
    border-color: #e5e5e5 !important;
    cursor: not-allowed;
    opacity: 0.6;
}

.sks-product-action .sks-unavailable:hover {
    background-color: transparent !important;
    color: #999 !important;
    border-color: #e5e5e5 !important;
}

/* Hide default WooCommerce elements we're replacing */
.woocommerce ul.products li.product .onsale {
    display: none;
}

.woocommerce ul.products li.product .price {
    display: none;
}

/* Ссылка "View options" для вариативных товаров */
.woocommerce ul.products li.product.product-type-variable a.button {
    background-color: transparent !important;
}

/*
==========================================================================
 SKS THEME - WOOCOMMERCE SHOP RESPONSIVE STYLES
==========================================================================
*/

/* --- Планшеты (до 992px) --- */
@media (max-width: 992px) {
    /* Перестраиваем основную сетку в одну колонку */
    .woocommerce .shop-content-wrapper {
        grid-template-columns: 1fr;
    }

    /* Полностью скрываем десктопный сайдбар */
    .woocommerce .shop-sidebar {
        display: none !important;
    }

    /* Делаем сетку товаров в 3 колонки */
    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px;
    }
}

/* --- Маленькие планшеты (до 768px) --- */
@media (max-width: 768px) {
    /* Делаем сетку товаров в 2 колонки */
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px;
    }
}

/* --- Мобильные телефоны (до 576px) --- */
@media (max-width: 576px) {
    /* Уменьшаем отступы на маленьких экранах */
    .woocommerce .shop-container {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    /* Уменьшаем заголовок */
    .woocommerce-products-header .page-title {
        font-size: 2.5rem;
    }

    /* Делаем сетку товаров в 1 колонку */
    .woocommerce ul.products {
        grid-template-columns: 1fr !important;
    }
}

/*
==========================================================================
 SKS THEME - WOOCOMMERCE SINGLE PRODUCT STYLES (v2)
==========================================================================
*/

/* Re-arranging the single product layout */
.single-product div.product {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
        "gallery summary"
        "tabs tabs";
    gap: 50px;
    margin-top: 4rem;
    margin-bottom: 4rem;
}

.single-product .woocommerce-product-gallery {
    grid-area: gallery;
}

.single-product .summary {
    grid-area: summary;
}

.woocommerce-tabs {
    grid-area: tabs;
}

/* Typography and spacing from the example */
.single-product .product_title {
    font-family: "Playfair Display", serif;
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 1rem;
}

.single-product p.price {
    font-family: "Lato", sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    color: #C9A959;
    margin-bottom: 1.5rem;
}

.single-product .woocommerce-product-details__short-description {
    font-size: 1rem;
    line-height: 1.6;
    color: #666;
    margin-bottom: 1.5rem;
}

/* Add to cart section */
.single-product form.cart {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-bottom: 2rem;
}

.single-product .quantity {
    margin-right: 10px;
}

.single-product .quantity .qty {
    width: 70px;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    text-align: center;
}

.single-product .single_add_to_cart_button {
    background-color: #111 !important;
    color: #fff !important;
    padding: 12px 25px !important;
    border-radius: 5px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    flex-grow: 1;
}

/* Meta section */
.single-product .product_meta {
    font-size: 0.85rem;
    color: #777;
    border-top: 1px solid #eaeaea;
    padding-top: 1.5rem;
    margin-top: 1.5rem;
}

.single-product .product_meta > span {
    display: block;
    margin-bottom: 0.5rem;
}

.single-product .product_meta a {
    color: #111;
    text-decoration: none;
}

/* Tabs section */
.woocommerce-tabs ul.tabs {
    padding-left: 0 !important;
    border-bottom: 2px solid #ddd;
    margin-bottom: 2rem;
}

.woocommerce-tabs ul.tabs li {
    background: none !important;
    border: none !important;
    padding: 0 0 1rem 0 !important;
    margin-right: 2rem !important;
    border-bottom: 2px solid transparent !important;
}

.woocommerce-tabs ul.tabs li.active {
    border-bottom-color: #111 !important;
}

.woocommerce-tabs ul.tabs li a {
    font-family: "Lato", sans-serif;
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    color: #555;
}

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

.woocommerce-tabs .panel {
    padding: 0;
    border: none;
}

/* Responsive */
@media (max-width: 992px) {
    .single-product div.product {
        grid-template-columns: 1fr;
        grid-template-areas:
            "gallery"
            "summary"
            "tabs";
    }
}

@media (max-width: 576px) {
    .single-product form.cart {
        flex-direction: column;
        align-items: stretch;
    }
}

/* ==============================================================
   SKS THEME – SHOP FILTER SIDEBAR (v1)
   ==============================================================
*/
.woocommerce .shop-sidebar { border-right: 1px solid #eee; padding-right: 20px; }
.woocommerce .shop-sidebar .widget { margin-bottom: 2rem; }
.woocommerce .shop-sidebar .widget-title { font-family: "Playfair Display", serif; font-size: 1.1rem; letter-spacing: .5px; text-transform: none; margin: 0 0 1rem; color: #111; }

/* Layered nav lists (Brand / Gender) */
.woocommerce .widget_layered_nav ul { list-style: none; margin: 0; padding: 0; }
.woocommerce .widget_layered_nav ul li { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: .45rem 0; border-bottom: 1px solid #f3f3f3; }
.woocommerce .widget_layered_nav ul li a { color: #333; text-decoration: none; font-family: "Lato", sans-serif; }
.woocommerce .widget_layered_nav ul li .count { color: #999; font-size: .85rem; }
.woocommerce .widget_layered_nav .woocommerce-widget-layered-nav-list__item--chosen a { font-weight: 700; }

/* Price filter – inputs inline like screenshot */
.woocommerce .widget_price_filter .price_slider_amount { display: flex; align-items: center; gap: 10px; font-family: "Lato", sans-serif; }
.woocommerce .widget_price_filter .price_slider_amount .button { margin-left: auto; }
.woocommerce .widget_price_filter .price_slider_amount .price_label { order: 3; white-space: nowrap; }
.woocommerce .widget_price_filter .ui-slider { margin: 12px 4px 18px; }

/* Put ordering/results to the right visually */
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 1.5rem; }

/* Make sure products section has some left padding on desktop */
@media (min-width: 993px) {
  .woocommerce .shop-products { padding-left: 10px; }
}

/*
==========================================================================
 SKS THEME – BREADCRUMBS (WooCommerce)
==========================================================================
*/
/* Use our custom wrapper if present */
.sks-breadcrumbs { 
    background: #fafafa; 
    border-bottom: 1px solid #eee; 
    padding: 12px 0; 
    font-size: .95rem; 
}
.sks-breadcrumbs .container { 
    max-width: 1400px; 
    margin: 0 auto; 
    padding: 0 30px; 
}
/* Fallback: style default WooCommerce breadcrumbs too */
.woocommerce .woocommerce-breadcrumb { 
    background: #fafafa; 
    border-bottom: 1px solid #eee; 
    padding: 12px 30px; 
    margin: 0 0 20px; 
    font-size: .95rem; 
}
@media (max-width: 768px){
    .sks-breadcrumbs .container{ padding: 0 15px; }
    .woocommerce .woocommerce-breadcrumb{ padding: 10px 15px; }
}
.sks-breadcrumbs a, .woocommerce .woocommerce-breadcrumb a { 
    color: #777; 
    text-decoration: none; 
    transition: color .2s ease; 
}
.sks-breadcrumbs a:hover, .woocommerce .woocommerce-breadcrumb a:hover { color: #111; }
.sks-breadcrumbs .sks-bc-item { color: #111; }
.sks-breadcrumbs .sks-bc-sep { 
    display: inline-block; 
    margin: 0 10px; 
    color: #c7c7c7; 
}

/*
==========================================================================
 SKS THEME – STAR RATING (replace WC default that we dequeued)
==========================================================================
*/
.woocommerce .star-rating {
    position: relative;
    display: inline-block;
    overflow: hidden;
    width: 5.6em; /* 5 stars */
    height: 1em;
    line-height: 1;
    font-size: 1rem;
}
.woocommerce .star-rating:before {
    content: '★★★★★';
    color: #ddd;
    position: absolute;
    top: 0; left: 0;
}
.woocommerce .star-rating span {
    position: absolute;
    top: 0; left: 0;
    overflow: hidden;
    height: 100%;
}
.woocommerce .star-rating span:before {
    content: '★★★★★';
    color: #FFC107; /* gold */
    position: absolute;
    top: 0; left: 0;
}
/* review count color */
.woocommerce .woocommerce-review-link { color: #777; }

/*--------------------------------------------------------------
# Reviews Section Styling
--------------------------------------------------------------*/

/* Reviews container */
.woocommerce-Reviews {
	margin-top: 60px;
	padding-top: 40px;
	border-top: 1px solid #eee;
}

/* Reviews title */
.woocommerce-Reviews-title {
	font-family: "Playfair Display", serif;
	font-size: 2rem;
	font-weight: 700;
	color: #111;
	margin-bottom: 30px;
	text-decoration: underline;
	text-decoration-color: #C9A959;
	text-underline-offset: 8px;
}

/* Review form styling */
#review_form_wrapper {
	margin-top: 40px;
}

#review_form {
	max-width: 600px;
}

.comment-reply-title {
	font-family: "Playfair Display", serif;
	font-size: 1.8rem;
	font-weight: 600;
	color: #111;
	margin-bottom: 30px;
}

/* Star rating input */
.star-rating-input {
	display: flex;
	flex-direction: row-reverse;
	gap: 5px;
	margin: 15px 0;
	justify-content: flex-start;
}

.star-rating-input input[type="radio"] {
	display: none;
}

.star-rating-input .star {
	font-size: 2rem;
	color: #ddd;
	cursor: pointer;
	transition: color 0.2s ease;
	user-select: none;
}

.star-rating-input .star:hover,
.star-rating-input .star:hover ~ .star,
.star-rating-input input[type="radio"]:checked ~ .star {
	color: #FFC107;
}

/* Form fields */
.comment-form-rating {
	margin-bottom: 25px;
}

.comment-form-rating label {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	font-weight: 600;
	color: #333;
	display: block;
	margin-bottom: 10px;
}

.comment-form-author,
.comment-form-email {
	margin-bottom: 20px;
}

.comment-form-author label,
.comment-form-email label {
	font-family: "Lato", sans-serif;
	font-size: 0.9rem;
	font-weight: 600;
	color: #333;
	display: block;
	margin-bottom: 8px;
}

.comment-form-author input,
.comment-form-email input {
	width: 100%;
	padding: 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	transition: border-color 0.3s ease;
}

.comment-form-author input:focus,
.comment-form-email input:focus {
	outline: none;
	border-color: #C9A959;
}

/* Comment textarea */
.comment-form-comment {
	margin-bottom: 25px;
}

.comment-form-comment label {
	font-family: "Lato", sans-serif;
	font-size: 0.9rem;
	font-weight: 600;
	color: #333;
	display: block;
	margin-bottom: 8px;
}

.comment-form-comment textarea {
	width: 100%;
	padding: 15px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
	resize: vertical;
	min-height: 120px;
	transition: border-color 0.3s ease;
}

.comment-form-comment textarea:focus {
	outline: none;
	border-color: #C9A959;
}

/* Submit button */
#review_form .form-submit {
	margin-top: 30px;
}

#review_form .submit {
	background: #777;
	color: #fff;
	border: none;
	padding: 15px 30px;
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 4px;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

#review_form .submit:hover {
	background: #111;
}

/* Required field indicator */
.required {
	color: #C9A959;
	font-weight: bold;
}

/* No reviews message */
.woocommerce-noreviews {
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	color: #777;
	font-style: italic;
	margin-bottom: 30px;
}

/* Must log in message */
.must-log-in {
	font-family: "Lato", sans-serif;
	font-size: 0.9rem;
	color: #777;
	background: #f8f8f8;
	padding: 15px;
	border-radius: 4px;
	border-left: 4px solid #C9A959;
}

.must-log-in a {
	color: #C9A959;
	text-decoration: none;
	font-weight: 600;
}

.must-log-in a:hover {
	text-decoration: underline;
}

/* Verification required message */
.woocommerce-verification-required {
	font-family: "Lato", sans-serif;
	font-size: 0.9rem;
	color: #777;
	background: #f8f8f8;
	padding: 15px;
	border-radius: 4px;
	border-left: 4px solid #C9A959;
}

/* Responsive */
@media (max-width: 768px) {
	.woocommerce-Reviews-title {
		font-size: 1.6rem;
	}
	
	.comment-reply-title {
		font-size: 1.4rem;
	}
	
	.star-rating-input .star {
		font-size: 1.8rem;
	}
	
	#review_form {
		max-width: 100%;
	}
}

/*--------------------------------------------------------------
# Related Products Styling
--------------------------------------------------------------*/

/* Related products container */
.sks-related-products {
	margin-top: 80px;
	padding: 60px 0;
	background: #fafafa;
	border-top: 1px solid #eee;
	width: 100%;
}

.sks-related-container {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0 30px;
}

/* Related products title */
.sks-related-title {
	font-family: "Playfair Display", serif;
	font-size: 2.5rem;
	font-weight: 700;
	color: #111;
	text-align: center;
	margin-bottom: 50px;
	position: relative;
}

.sks-related-title::after {
	content: '';
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
	height: 3px;
	background: #C9A959;
}

/* Related products grid */
.sks-related-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}

/* Related product item */
.sks-related-item {
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.sks-related-item:hover {
	transform: translateY(-5px);
	box-shadow: 0 5px 20px rgba(0,0,0,0.1);
}

/* Related product image */
.sks-related-image-wrapper {
	position: relative;
	overflow: hidden;
}

.sks-related-image-link {
	display: block;
	width: 100%;
	height: 200px;
	overflow: hidden;
}

.sks-related-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.sks-related-item:hover .sks-related-image {
	transform: scale(1.05);
}

/* Related product discount badge */
.sks-related-discount {
	position: absolute;
	top: 10px;
	left: 10px;
	background: #000;
	color: #fff;
	padding: 5px 10px;
	font-size: 0.8rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	border-radius: 3px;
	z-index: 10;
}

/* Related product content */
.sks-related-content {
	padding: 20px;
}

/* Related product title */
.sks-related-product-title {
	margin: 0 0 10px 0;
	font-family: "Lato", sans-serif;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.4;
}

.sks-related-product-title a {
	color: #333;
	text-decoration: none;
	transition: color 0.3s ease;
}

.sks-related-product-title a:hover {
	color: #C9A959;
}

/* Related product price */
.sks-related-price {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 15px;
}

.sks-related-sale-price {
	color: #C9A959;
	font-size: 1.1rem;
	font-weight: 600;
}

.sks-related-regular-price {
	color: #999;
	font-size: 0.9rem;
	text-decoration: line-through;
}

.sks-related-current-price {
	color: #333;
	font-size: 1.1rem;
	font-weight: 600;
}

/* Related product action button */
.sks-related-action {
	text-align: center;
}

.sks-related-button {
	display: inline-block;
	background: transparent;
	color: #333;
	border: 1px solid #ddd;
	padding: 10px 20px;
	font-family: "Lato", sans-serif;
	font-size: 0.9rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-decoration: none;
	border-radius: 4px;
	transition: all 0.3s ease;
	cursor: pointer;
	width: 100%;
}

.sks-related-button:hover {
	background: #111;
	color: #fff;
	border-color: #111;
}

.sks-related-button.sks-unavailable {
	color: #999;
	border-color: #e5e5e5;
	cursor: not-allowed;
	opacity: 0.6;
}

.sks-related-button.sks-unavailable:hover {
	background: transparent;
	color: #999;
	border-color: #e5e5e5;
}

/* Responsive for related products */
@media (max-width: 1200px) {
	.sks-related-grid {
		grid-template-columns: repeat(3, 1fr);
		gap: 25px;
	}
}

@media (max-width: 992px) {
	.sks-related-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
	
	.sks-related-title {
		font-size: 2rem;
	}
	
	.sks-related-products {
		padding: 40px 0;
	}
}

@media (max-width: 768px) {
	.sks-related-container {
		padding: 0 15px;
	}
	
	.sks-related-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
	}
	
	.sks-related-title {
		font-size: 1.6rem;
		margin-bottom: 25px;
	}
	
	.sks-related-content {
		padding: 12px;
	}
	
	.sks-related-image-link {
		height: 120px;
	}
	
	.sks-related-product-title {
		font-size: 0.9rem;
	}
	
	.sks-related-price {
		margin-bottom: 10px;
	}
	
	.sks-related-sale-price,
	.sks-related-current-price {
		font-size: 1rem;
	}
	
	.sks-related-regular-price {
		font-size: 0.8rem;
	}
	
	.sks-related-button {
		padding: 8px 15px;
		font-size: 0.8rem;
	}
}

@media (max-width: 480px) {
	.sks-related-container {
		padding: 0 10px;
	}
	
	.sks-related-grid {
		grid-template-columns: 1fr;
		gap: 15px;
	}
	
	.sks-related-products {
		padding: 25px 0;
	}
	
	.sks-related-title {
		font-size: 1.4rem;
		margin-bottom: 20px;
	}
	
	.sks-related-image-link {
		height: 150px;
	}
	
	.sks-related-content {
		padding: 15px;
	}
	
	.sks-related-product-title {
		font-size: 1rem;
	}
	
	.sks-related-sale-price,
	.sks-related-current-price {
		font-size: 1.1rem;
	}
	
	.sks-related-button {
		padding: 10px 20px;
		font-size: 0.9rem;
	}
}

/*
==========================================================================
 SKS THEME – RELATED PRODUCTS POLISH
==========================================================================
*/
.related.products { 
    max-width: 1200px; 
    margin: 3rem auto; 
    padding: 0 15px; 
}
.related.products > h2 { 
    font-family: "Playfair Display", serif; 
    font-size: 2rem; 
    margin-bottom: 1.5rem; 
}
.related.products ul.products { 
    display: grid !important; 
    grid-template-columns: repeat(4, 1fr); 
    gap: 24px; 
    margin: 0; 
}
@media (max-width: 992px){ .related.products ul.products{ grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px){ .related.products ul.products{ grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px){ .related.products ul.products{ grid-template-columns: 1fr; } }
.related.products .onsale{ display:none; }
.related.products .price { display: block; }
.related.products a.button { 
    background: transparent; 
    border: 1px solid #ddd; 
    border-radius: 4px; 
    color: #333; 
    padding: 10px 16px; 
    text-decoration: none; 
}
.related.products a.button:hover { background:#111; color:#fff; border-color:#111; }

/* === SINGLE PRODUCT → RELATED: full-width + centered === */
.single-product div.product .related.products{
  grid-column: 1 / -1;          /* растянуть на обе колонки грида */
  width: 100%;
  max-width: 1400px;            /* ширина контейнера */
  margin: 60px auto;            /* центрирование */
  padding: 40px 30px;
  background: #f8f8f8;
  border-radius: 8px;
}

/* Заголовок по центру + золотая линия снизу */
.single-product div.product .related.products > h2{
  text-align: center;
  margin-bottom: 24px;
  position: relative;
}
.single-product div.product .related.products > h2:after{
  content: '';
  display: block;
  width: 60px;
  height: 4px;
  background: #C9A959;
  margin: 10px auto 0;
  border-radius: 2px;
}

/* Сетка карточек */
.single-product div.product .related.products ul.products{
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

/* Адаптив */
@media (max-width: 992px){
  .single-product div.product .related.products ul.products{
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 768px){
  .single-product div.product .related.products{
    padding: 24px 15px;
    margin: 40px auto;
  }
  .single-product div.product .related.products ul.products{
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 480px){
  .single-product div.product .related.products ul.products{
    grid-template-columns: 1fr;
  }
}

/* Убираем «Sale!» бейдж только внутри Related */
.single-product div.product .related.products .onsale{
  display: none !important;
}

/* Кнопки в Related */
.single-product div.product .related.products a.button{
  background: transparent;
  border: 1px solid #ddd;
  border-radius: 4px;
  color: #333;
  padding: 10px 16px;
  text-decoration: none;
  transition: all .25s ease;
}
.single-product div.product .related.products a.button:hover{
  background:#111;
  color:#fff;
  border-color:#111;
}